{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/assets/games/river-run/themes/pirates/sounds/oceanlap.ogg","webpack:///./src/assets/games/space-rescue/themes/little-witch/form-background-blur.svg","webpack:///./src/App.vue?0f16","webpack:///./src/modules/user-management/components/AnonymousContainer.vue?9fa1","webpack:///./src/assets/games/river-run/themes/speed-race/background.svg","webpack:///./src/assets/statistics/trophy-gold.svg","webpack:///./src/modules/statistics/components/StatisticsPlayerOverview.vue?7310","webpack:///./src/assets/games/Speed-race-preview.png","webpack:///./src/assets/games/space-rescue/stars/star4.png","webpack:///./src/assets/games/space-rescue/themes/desert/sprites/shadow.png","webpack:///./src/modules/layout/components/forms/FormAutocompleteSelect.vue?859d","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sprites/frog.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/Sky.png","webpack:///./src/modules/statistics/components/GlobalCountsBarForPlayer.vue?a6d3","webpack:///./src/assets/games/skyFlight-preview.png","webpack:///./src/modules/user-management/views/ForgotPasswordRequest.vue?9124","webpack:///./src/assets/games/space-rescue/fire/fire2.png","webpack:///./src/assets/games/Desert-adventure-preview.png","webpack:///./src/modules/layout/components/ToolBarLanguageSelector.vue?bea3","webpack:///./src/assets/games/space-rescue/themes/little-witch/sprites/witch.png","webpack:///./src/modules/statistics/views/DownloadCV.vue?01a6","webpack:///./src/modules/game-instance/views/GameInstanceList.vue?0ba3","webpack:///./src/modules/layout/components/Loader.vue?b100","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/car_heart.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/odometer.png","webpack:///./src/modules/kitchen-sink/components/KitchenSinkList.vue?39fa","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsent.vue?900a","webpack:///./src/assets/games/space-rescue/themes/little-witch/sprites/enemy-bullet.png","webpack:///./src/assets/games/river-run/themes/pirates/sprites/small-plants.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/CloudR.png","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/small-plants.svg","webpack:///./src/assets/games/river-run/themes/pirates/sprites/pirates-stamina-bottom.png","webpack:///./src/assets/games/river-run/themes/skyFlight/form-background-blur.svg","webpack:///./src/modules/ebook-download/views/DownloadEbook.vue?04b1","webpack:///./src/modules/kitchen-sink/components/KitchenSinkShortCuts.vue?a9b1","webpack:///./src/assets/games/space-rescue/themes/little-witch/sprites/spell.png","webpack:///./src/modules/game-instance/components/GameInstanceCustomize.vue?a3f0","webpack:///./src/modules/layout/components/DetailRow.vue?1230","webpack:///./src/modules/layout/components/ListItem.vue?0518","webpack:///./src/assets/games/space-rescue/question-background-blur.svg","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/speedRace-stamina-bottom.png","webpack:///./src/assets/layout/No_game_instance_img.svg","webpack:///./src/assets/games/little-witch-preview.png","webpack:///./src/modules/layout/components/CustomDataTable.vue?cd08","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/grassR.png","webpack:///./src/assets/games/space-rescue/themes/desert/background.svg","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sounds/shoot.ogg","webpack:///./src/assets/games/river-run/themes/pirates/sprites/grassR.png","webpack:///./src/assets/layout/Left_menu_bg.svg","webpack:///./src/modules/statistics/components/StatisticsGamesTable.vue?7c3d","webpack:///./src/assets/games/Space-rescue-preview.png","webpack:///./src/assets/games/space-rescue/form-background-blur.svg","webpack:///./src/modules/admin/AdminDashboard.vue?9174","webpack:///./src/assets/games/space-rescue/themes/desert/sprites/axe.png","webpack:///./src/assets/games/space-rescue/themes/desert/sprites/enemy-bullet.png","webpack:///./src/assets/layout/si-bg.jpg","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/CloudL.png","webpack:///./src/assets/games/space-rescue/ui/shadow.png","webpack:///./src/assets/games/river-run/themes/pirates/sprites/ship_enemy2.png","webpack:///./src/assets/games/river-run/themes/pirates/sprites/object.png","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/LittleBirds.png","webpack:///./src/modules/kitchen-sink/views/kitchen-sink.vue?983b","webpack:///./src/assets/games/river-run/themes/speed-race/form-background-blur.svg","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/flag.png","webpack:///./src/assets/games/river-run/themes/pirates/sprites/ship_heart.png","webpack:///./src/assets/games/space-rescue/themes/little-witch/sprites/crow.png","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/background.svg","webpack:///./src/modules/game-instance/components/GameInstanceProfessionAssign.vue?6c2e","webpack:///./src/assets/games/river-run/themes/skyFlight/background-menu.svg","webpack:///./src/assets/games/space-rescue/game-background-blur.svg","webpack:///./src/assets/games/space-rescue/themes/desert/sounds/shoot.ogg","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/odometerline.png","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sprites/princess.png","webpack:///./src/assets/games/river-run/themes/pirates/form-background-blur.svg","webpack:///./src/modules/game-play/GamePlay.vue?ee85","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/odometer.png","webpack:///./src/modules/kitchen-sink/components/KitchenSinkSnippet.vue?73e7","webpack:///./src/modules/layout/components/Footer.vue?e58a","webpack:///./src/assets/games/froggy-princess-preview.png","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/car_red.png","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/form-background-blur.svg","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sprites/enemy-bullet.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sounds/speed.wav","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsentGroup.vue?ea4e","webpack:///./src/modules/admin/payments/components/PaymentStatus.vue?e029","webpack:///./src/modules/layout/components/SideMenu.vue?d84d","webpack:///./src/assets/games/river-run/themes/skyFlight/sounds/crash.wav","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/stormcloud.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sounds/select_007.ogg","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sprites/shadow.png","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sprites/glitter.png","webpack:///./src/modules/payments-history/views/PaymentsHistoryList.vue?00fe","webpack:///./src/modules/game-play/components/QuestionModal.vue?45cf","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/plane_enemy2.png","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/car_green.png","webpack:///./src/assets/games/river-run/themes/speed-race/sounds/engine1.ogg","webpack:///./src/assets/games/space-rescue/themes/little-witch/sprites/shadow.png","webpack:///./src/assets/games/space-rescue/themes/desert/sprites/ship.png","webpack:///./src/modules/game-instance/components/game-customize-types/ImageCropModal.vue?e23a","webpack:///./src/assets/statistics/trophy.svg","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/grass.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/threeBirds.png","webpack:///./src/assets/layout/404.png","webpack:///./src/assets/games/river-run/themes/pirates/sprites/water.png","webpack:///./src/modules/statistics/components/StatisticsPlayersTable.vue?9488","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sprites/heart.png","webpack:///./src/modules/game-instance/views/GameInstanceCreateOrder.vue?e1e5","webpack:///./src/assets/games/space-rescue/themes/little-witch/sounds/explosion1.ogg","webpack:///./src/assets/games/river-run/themes/speed-race/question-background-blur.svg","webpack:///./src/assets/games/space-rescue/themes/desert/sounds/explosion.ogg","webpack:///./src/assets/games/river-run/themes/pirates/sounds/explosionCrunch_000.ogg","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/plane-stamina-top.png","webpack:///./src/assets/games/space-rescue/themes/desert/sounds/invaderkilled.ogg","webpack:///./src/assets/games/river-run/themes/pirates/question-background-blur.svg","webpack:///./src/assets/layout/ingamehr-logo.svg","webpack:///./src/modules/layout/components/TableItemHeaderLink.vue?a727","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/question-background-blur.svg","webpack:///./src/assets/games/river-run/themes/pirates/sprites/ship_enemy3.png","webpack:///./src/modules/professions/views/ProfessionList.vue?88de","webpack:///./src/assets/games/space-rescue/themes/little-witch/sprites/little-witch.png","webpack:///./src/assets/games/river-run/themes/skyFlight/background.svg","webpack:///./src/assets/games/river-run/themes/speed-race/sounds/explosionCrunch_000.ogg","webpack:///./src/assets/games/river-run/themes/pirates/sprites/ship.png","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sounds/killedEnemy.ogg","webpack:///./src/assets/games/space-rescue/fire/fire1.png","webpack:///./src/assets/games/space-rescue/themes/little-witch/sounds/killedEnemy.ogg","webpack:///./src/modules/user-management/views/Register.vue?0175","webpack:///./src/modules/game-play/components/GameOverModal.vue?0d8c","webpack:///./src/assets/games/river-run/themes/pirates/sprites/grassL.png","webpack:///./src/modules/layout/components/ConfirmDeleteModal.vue?da2b","webpack:///./src/modules/statistics/components/StatisticsOneGameLogsTable.vue?99b3","webpack:///./src/assets/games/space-rescue/themes/little-witch/question-background-blur.svg","webpack:///./src/modules/payments-history/components/PaymentStatus.vue?7020","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/road.png","webpack:///./src/modules/game-instance/components/game-customize-types/ImageTypeCustomize.vue?16a0","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/game-background-blur.svg","webpack:///./src/modules/statistics/components/StatisticsPlayerGamesTable.vue?db70","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/plane.png","webpack:///./src/assets/games/space-rescue/themes/desert/form-background-blur.svg","webpack:///./src/assets/games/space-rescue/themes/little-witch/background.svg","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/planeheart.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/plane_enemy1.png","webpack:///./src/modules/layout/components/TableItemHeader.vue?9239","webpack:///./src/modules/professions/components/EditableQuestionList.vue?158c","webpack:///./src/assets/games/space-rescue/ui/life.png","webpack:///./src/assets/games/space-rescue/themes/little-witch/game-background-blur.svg","webpack:///./src/assets/games/river-run/themes/pirates/sprites/ship_enemy1.png","webpack:///./src/assets/games/maze-game/line.png","webpack:///./src/modules/layout/components/NotificationHolder.vue?aeb5","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sprites/life.png","webpack:///./src/modules/layout/components/ListItemHeader.vue?1a04","webpack:///./src/assets/games/river-run/themes/pirates/sprites/rocks.png","webpack:///./src/assets/games/river-run/themes/speed-race/sounds/applause10.ogg","webpack:///./src/assets/games/river-run/themes/pirates/sounds/select_007.ogg","webpack:///./src/modules/payments-history/components/PaymentsHistoryListItem.vue?626d","webpack:///./src/modules/game-instance/components/GameSelect.vue?18f1","webpack:///./src/assets/cf-logo.svg","webpack:///./src/assets/games/space-rescue/themes/desert/sprites/spider.png","webpack:///./src/assets/games/river-run/themes/speed-race/sounds/RaceCarEngine.ogg","webpack:///./src/assets/games/space-rescue/themes/little-witch/sprites/life.png","webpack:///./src/assets/games/space-rescue/themes/desert/sprites/sand.png","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/car_white.png","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/rock.svg","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsentGroup.vue?65d6","webpack:///./src/assets/games/space-rescue/sounds/shoot.wav","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/grassL.png","webpack:///./src/modules/user-management/views/ActivateAccount.vue?6f09","webpack:///./src/assets/games/space-rescue/themes/froggy-princess/sounds/explosion.ogg","webpack:///./src/assets/games/river-run/themes/pirates/sprites/flag.png","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/odometerline.png","webpack:///./src/assets/games/river-run/themes/speed-race/sounds/select_007.ogg","webpack:///./src/services/models/cookie.model.ts","webpack:///./src/services/cookie-service.ts","webpack:///./src/plugins/vuetify.ts","webpack:///./src/store/Models/storetables.ts","webpack:///./src/store/store.ts","webpack:///./src/plugins/i18n.ts","webpack:///./src/i18n/LocaleHelper.ts","webpack:///./src/modules/layout/components/EditCardMain.vue?c615","webpack:///./src/modules/layout/components/EditCardMain.vue","webpack:///./src/modules/layout/components/EditCardMain.vue?007f","webpack:///./src/modules/layout/components/EditCardMain.vue?3f48","webpack:///./src/modules/layout/components/EditCardSection.vue?cb6f","webpack:///./src/modules/layout/components/EditCardSection.vue","webpack:///./src/modules/layout/components/EditCardSection.vue?5132","webpack:///./src/modules/layout/components/EditCardSection.vue?18a3","webpack:///./src/modules/layout/components/EmptyListContainer.vue?f130","webpack:///./src/modules/layout/components/EmptyListContainer.vue","webpack:///./src/modules/layout/components/EmptyListContainer.vue?7651","webpack:///./src/modules/layout/components/EmptyListContainer.vue?a34d","webpack:///./src/modules/layout/components/ListMenu.vue?a6c8","webpack:///./src/modules/layout/components/ListMenu.vue","webpack:///./src/modules/layout/components/ListMenu.vue?15a8","webpack:///./src/modules/layout/components/ListMenu.vue?649c","webpack:///./src/modules/layout/components/ListItemHeader.vue?cfb1","webpack:///./src/modules/layout/components/ListItemHeader.vue","webpack:///./src/modules/layout/components/ListItemHeader.vue?0c70","webpack:///./src/modules/layout/components/ListItemHeader.vue?c56b","webpack:///./src/modules/layout/components/TableItemHeader.vue?9657","webpack:///./src/modules/layout/components/TableItemHeader.vue","webpack:///./src/modules/layout/components/TableItemHeader.vue?863c","webpack:///./src/modules/layout/components/TableItemHeader.vue?a12d","webpack:///./src/modules/layout/components/forms/FormTextInput.vue?d556","webpack:///./src/modules/layout/components/forms/FormTextInput.vue","webpack:///./src/modules/layout/components/forms/FormTextInput.vue?2a5a","webpack:///./src/modules/layout/components/forms/FormTextInput.vue?4e6b","webpack:///./src/modules/layout/components/forms/FormTextInfo.vue?9d7f","webpack:///./src/modules/layout/components/forms/FormTextInfo.vue","webpack:///./src/modules/layout/components/forms/FormTextInfo.vue?fe2a","webpack:///./src/modules/layout/components/forms/FormTextInfo.vue?05ba","webpack:///./src/modules/layout/components/forms/FormAutocompleteSelect.vue?cead","webpack:///./src/modules/layout/components/forms/FormAutocompleteSelect.vue?3188","webpack:///./src/modules/layout/components/forms/FormAutocompleteSelect.vue?7d13","webpack:///./src/modules/layout/components/forms/FormAutocompleteSelect.vue?6596","webpack:///./src/modules/layout/components/forms/FormSelect.vue?e8d5","webpack:///./src/modules/layout/components/forms/FormSelect.vue","webpack:///./src/modules/layout/components/forms/FormSelect.vue?d8b2","webpack:///./src/modules/layout/components/forms/FormSelect.vue?0022","webpack:///./src/modules/layout/components/forms/FormConditionsCheckbox.vue?f338","webpack:///./src/modules/layout/components/forms/FormConditionsCheckbox.vue","webpack:///./src/modules/layout/components/forms/FormConditionsCheckbox.vue?3187","webpack:///./src/modules/layout/components/forms/FormConditionsCheckbox.vue?c97f","webpack:///./src/modules/layout/components/SkeletonLoaderDetails.vue?b802","webpack:///./src/modules/layout/components/SkeletonLoaderDetails.vue","webpack:///./src/modules/layout/components/SkeletonLoaderDetails.vue?713a","webpack:///./src/modules/layout/components/SkeletonLoaderDetails.vue?f482","webpack:///./src/modules/layout/components/IntersectMenuSection.vue?2fab","webpack:///./src/modules/layout/components/IntersectMenuSection.vue","webpack:///./src/modules/layout/components/IntersectMenuSection.vue?c51c","webpack:///./src/modules/layout/components/IntersectMenuSection.vue?13e3","webpack:///./src/modules/layout/components/ListItem.vue?4a3e","webpack:///./src/modules/layout/components/ListItem.vue","webpack:///./src/modules/layout/components/ListItem.vue?732f","webpack:///./src/modules/layout/components/ListItem.vue?7d07","webpack:///./src/modules/layout/components/TableItemLink.vue?d74d","webpack:///./src/modules/layout/components/TableItemLink.vue","webpack:///./src/modules/layout/components/TableItemLink.vue?8a7e","webpack:///./src/modules/layout/components/TableItemLink.vue?92e3","webpack:///./src/modules/layout/components/ListContainer.vue?453f","webpack:///./src/modules/layout/components/ListContainer.vue","webpack:///./src/modules/layout/components/ListContainer.vue?3a86","webpack:///./src/modules/layout/components/ListContainer.vue?53c4","webpack:///./src/modules/layout/components/forms/FormCheckbox.vue?b847","webpack:///./src/modules/layout/components/forms/FormCheckbox.vue","webpack:///./src/modules/layout/components/forms/FormCheckbox.vue?afa1","webpack:///./src/modules/layout/components/forms/FormCheckbox.vue?2094","webpack:///./src/modules/layout/components/DetailRow.vue?1f38","webpack:///./src/modules/layout/components/DetailRow.vue","webpack:///./src/modules/layout/components/DetailRow.vue?bbc6","webpack:///./src/modules/layout/components/DetailRow.vue?7e38","webpack:///./src/modules/layout/components/CustomDataTable.vue?0a4a","webpack:///./src/modules/layout/components/CustomDataTable.vue","webpack:///./src/modules/layout/components/CustomDataTable.vue?eac7","webpack:///./src/modules/layout/components/CustomDataTable.vue?6cc6","webpack:///./src/modules/layout/components/TableItemHeaderLink.vue?10a7","webpack:///./src/modules/layout/components/TableItemHeaderLink.vue","webpack:///./src/modules/layout/components/TableItemHeaderLink.vue?7cde","webpack:///./src/modules/layout/components/TableItemHeaderLink.vue?7bd7","webpack:///./src/plugins/layout.ts","webpack:///./src/App.vue?ed91","webpack:///./src/modules/layout/components/AppInitializer.vue?0fea","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsent.vue?d962","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsentGroup.vue?1b83","webpack:///./src/modules/layout/components/cookies-consent/cookies-consent.model.ts","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsentGroup.vue?bb90","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsentGroup.vue?7b0d","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsentGroup.vue?27d5","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsent.vue?ce5f","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsent.vue?db7e","webpack:///./src/modules/layout/components/cookies-consent/CookiesConsent.vue?4848","webpack:///./src/plugins/analytics-facebook.ts","webpack:///./src/modules/game-play/games/game-engine-customizable-element.ts","webpack:///./src/modules/game-play/games/game-engine-base.ts","webpack:///./src/plugins/analytics-google.ts","webpack:///./src/services/Api.ts","webpack:///./src/services/logger.ts","webpack:///./src/modules/layout/utils/string-utils.ts","webpack:///./src/modules/layout/components/fullHDsnackbar.vue?5fc3","webpack:///./src/modules/layout/components/fullHDsnackbar.vue","webpack:///./src/modules/layout/components/fullHDsnackbar.vue?9981","webpack:///./src/modules/layout/components/fullHDsnackbar.vue?7414","webpack:///./src/modules/layout/components/AppInitializer.vue","webpack:///./src/modules/layout/components/AppInitializer.vue?b551","webpack:///./src/modules/layout/components/AppInitializer.vue?a29c","webpack:///./src/modules/layout/components/NotificationHolder.vue?7cef","webpack:///./src/modules/layout/components/NotificationHolder.vue?d70a","webpack:///./src/modules/layout/components/NotificationHolder.vue?b897","webpack:///./src/modules/layout/components/NotificationHolder.vue?7f43","webpack:///./src/modules/layout/components/SideMenu.vue?819b","webpack:///./src/modules/game-instance/game-instance-router.enum.ts","webpack:///./src/modules/professions/professions-router.enum.ts","webpack:///./src/modules/payments-history/payments-history-router.enum.ts","webpack:///./src/modules/admin/admin-users-router.enum.ts","webpack:///./src/modules/layout/components/SideMenu.vue","webpack:///./src/modules/layout/components/SideMenu.vue?7300","webpack:///./src/modules/layout/components/SideMenu.vue?c429","webpack:///./src/modules/layout/components/ToolBar.vue?229f","webpack:///./src/modules/layout/components/ToolBarLanguageSelector.vue?f0d6","webpack:///./src/modules/layout/components/ToolBarLanguageSelector.vue","webpack:///./src/modules/user-management/user-management-router.enum.ts","webpack:///./src/modules/layout/components/ToolBarLanguageSelector.vue?1c76","webpack:///./src/modules/layout/components/ToolBarLanguageSelector.vue?4b5a","webpack:///./src/modules/layout/components/ToolBar.vue","webpack:///./src/modules/layout/components/ToolBar.vue?0afa","webpack:///./src/modules/layout/components/ToolBar.vue?a301","webpack:///./src/modules/layout/components/Footer.vue?65e1","webpack:///./src/modules/layout/components/Footer.vue","webpack:///./src/modules/layout/components/Footer.vue?6fcb","webpack:///./src/modules/layout/components/Footer.vue?f8ca","webpack:///./src/App.vue?ec60","webpack:///./src/App.vue?4dbd","webpack:///./src/App.vue?4195","webpack:///./src/services/countries.provider.ts","webpack:///./src/plugins/filters.ts","webpack:///./src/modules/admin/users/views/AdminUserList.vue?7250","webpack:///./src/services/notification-service.ts","webpack:///./src/services/api-service.base.ts","webpack:///./src/modules/admin/users/services/admin-user-api.service.ts","webpack:///./src/modules/admin/users/components/UserListRow.vue?4529","webpack:///./src/modules/layout/components/ConfirmDeleteModal.vue?6e91","webpack:///./src/modules/layout/components/ConfirmDeleteModal.vue","webpack:///./src/modules/layout/components/ConfirmDeleteModal.vue?056a","webpack:///./src/modules/layout/components/ConfirmDeleteModal.vue?cf3b","webpack:///./src/modules/layout/helpers/data-table-sorting.helper.ts","webpack:///./src/modules/layout/helpers/data-table-filter.helper.ts","webpack:///./src/modules/admin/users/components/UserListRow.vue","webpack:///./src/modules/admin/users/components/UserListRow.vue?7ed9","webpack:///./src/modules/admin/users/components/UserListRow.vue?9631","webpack:///./src/modules/admin/users/views/AdminUserList.vue","webpack:///./src/modules/admin/users/views/AdminUserList.vue?c3e2","webpack:///./src/modules/admin/users/views/AdminUserList.vue?f1c7","webpack:///./src/modules/admin/users/views/AdminEditPage.vue?a8cf","webpack:///./src/modules/admin/users/components/EditUser.vue?0a0f","webpack:///./src/modules/admin/users/components/EditUser.vue","webpack:///./src/modules/admin/users/components/EditUser.vue?1f04","webpack:///./src/modules/admin/users/components/EditUser.vue?f9df","webpack:///./src/modules/admin/users/views/AdminEditPage.vue","webpack:///./src/modules/admin/users/views/AdminEditPage.vue?2284","webpack:///./src/modules/admin/users/views/AdminEditPage.vue?29c0","webpack:///./src/modules/admin/users/views/AdminDetailsPage.vue?30c1","webpack:///./src/modules/admin/users/components/UserDataAdminData.vue?36f7","webpack:///./src/modules/admin/users/components/UserDataAdminData.vue","webpack:///./src/modules/admin/users/components/UserDataAdminData.vue?3c90","webpack:///./src/modules/admin/users/components/UserDataAdminData.vue?84a4","webpack:///./src/modules/admin/users/components/GameInstanceAdminData.vue?6b7c","webpack:///./src/modules/admin/users/components/GameInstanceAdminData.vue","webpack:///./src/modules/admin/users/components/GameInstanceAdminData.vue?2193","webpack:///./src/modules/admin/users/components/GameInstanceAdminData.vue?a148","webpack:///./src/modules/admin/users/components/PaymentsAdminData.vue?4f3c","webpack:///./src/modules/admin/users/components/PaymentStatusAdminData.vue?c52f","webpack:///./src/modules/admin/users/components/PaymentStatusAdminData.vue","webpack:///./src/modules/admin/users/components/PaymentStatusAdminData.vue?5df2","webpack:///./src/modules/admin/users/components/PaymentStatusAdminData.vue?8e37","webpack:///./src/modules/admin/users/components/PaymentsAdminData.vue","webpack:///./src/modules/admin/users/components/PaymentsAdminData.vue?0a9a","webpack:///./src/modules/admin/users/components/PaymentsAdminData.vue?9faf","webpack:///./src/modules/admin/users/components/ProfessionsAdminData.vue?41cd","webpack:///./src/modules/admin/users/components/ProfessionsAdminData.vue","webpack:///./src/modules/admin/users/components/ProfessionsAdminData.vue?79a6","webpack:///./src/modules/admin/users/components/ProfessionsAdminData.vue?7df2","webpack:///./src/modules/admin/users/views/AdminDetailsPage.vue","webpack:///./src/modules/admin/users/views/AdminDetailsPage.vue?7e13","webpack:///./src/modules/admin/users/views/AdminDetailsPage.vue?3419","webpack:///./src/modules/admin/AdminDashboard.vue?9b5a","webpack:///./src/modules/kitchen-sink/kitchen-sink-router.enum.ts","webpack:///./src/modules/admin/AdminDashboard.vue","webpack:///./src/modules/admin/AdminDashboard.vue?9882","webpack:///./src/modules/admin/AdminDashboard.vue?08bd","webpack:///./src/modules/admin/discounts/views/DiscountList.vue?7689","webpack:///./src/modules/admin/discounts/services/admin-discount-api.service.ts","webpack:///./src/modules/admin/discounts/components/DiscountListRow.vue?7fc2","webpack:///./src/modules/admin/discounts/components/DiscountListRow.vue","webpack:///./src/modules/admin/discounts/components/DiscountListRow.vue?f305","webpack:///./src/modules/admin/discounts/components/DiscountListRow.vue?1264","webpack:///./src/modules/admin/discounts/views/DiscountList.vue","webpack:///./src/modules/admin/discounts/views/DiscountList.vue?ce0a","webpack:///./src/modules/admin/discounts/views/DiscountList.vue?f8f1","webpack:///./src/modules/admin/discounts/views/DiscountEditPage.vue?e3da","webpack:///./src/modules/admin/discounts/components/EditDiscount.vue?dd93","webpack:///./src/modules/layout/validators/string-validators.ts","webpack:///./src/modules/admin/discounts/components/EditDiscount.vue","webpack:///./src/modules/admin/discounts/components/EditDiscount.vue?d9c5","webpack:///./src/modules/admin/discounts/components/EditDiscount.vue?0560","webpack:///./src/modules/admin/discounts/views/DiscountEditPage.vue","webpack:///./src/modules/admin/discounts/views/DiscountEditPage.vue?d156","webpack:///./src/modules/admin/discounts/views/DiscountEditPage.vue?ab6f","webpack:///./src/modules/admin/discounts/views/DiscountDetailsPage.vue?a62e","webpack:///./src/modules/admin/discounts/components/DiscountDetails.vue?547e","webpack:///./src/modules/admin/discounts/components/DiscountDetails.vue","webpack:///./src/modules/admin/discounts/components/DiscountDetails.vue?aec9","webpack:///./src/modules/admin/discounts/components/DiscountDetails.vue?b01a","webpack:///./src/modules/admin/discounts/components/PaymentsDetails.vue?85a3","webpack:///./src/modules/admin/discounts/components/PaymentStatusAdminData.vue?d994","webpack:///./src/modules/admin/discounts/components/PaymentStatusAdminData.vue","webpack:///./src/modules/admin/discounts/components/PaymentStatusAdminData.vue?f132","webpack:///./src/modules/admin/discounts/components/PaymentStatusAdminData.vue?914e","webpack:///./src/modules/admin/discounts/components/PaymentsDetails.vue","webpack:///./src/modules/admin/discounts/components/PaymentsDetails.vue?c5fb","webpack:///./src/modules/admin/discounts/components/PaymentsDetails.vue?4a31","webpack:///./src/modules/admin/discounts/views/DiscountDetailsPage.vue","webpack:///./src/modules/admin/discounts/views/DiscountDetailsPage.vue?9410","webpack:///./src/modules/admin/discounts/views/DiscountDetailsPage.vue?fba7","webpack:///./src/modules/admin/discounts/views/DiscountAddPage.vue?facf","webpack:///./src/modules/admin/discounts/components/AddDiscount.vue?3573","webpack:///./src/modules/admin/discounts/components/AddDiscount.vue","webpack:///./src/modules/admin/discounts/components/AddDiscount.vue?79e3","webpack:///./src/modules/admin/discounts/components/AddDiscount.vue?6a26","webpack:///./src/modules/admin/discounts/views/DiscountAddPage.vue","webpack:///./src/modules/admin/discounts/views/DiscountAddPage.vue?8553","webpack:///./src/modules/admin/discounts/views/DiscountAddPage.vue?5243","webpack:///./src/modules/admin/payments/views/PaymentsList.vue?5a80","webpack:///./src/modules/admin/payments/services/admin-payments-api.service.ts","webpack:///./src/modules/admin/payments/components/PaymentsListRow.vue?b01d","webpack:///./src/modules/admin/payments/components/PaymentStatus.vue?a25d","webpack:///./src/modules/admin/payments/components/PaymentStatus.vue","webpack:///./src/modules/admin/payments/components/PaymentStatus.vue?d25f","webpack:///./src/modules/admin/payments/components/PaymentStatus.vue?5d32","webpack:///./src/modules/admin/payments/components/PaymentsListRow.vue","webpack:///./src/modules/admin/payments/components/PaymentsListRow.vue?e092","webpack:///./src/modules/admin/payments/components/PaymentsListRow.vue?527d","webpack:///./src/modules/admin/payments/views/PaymentsList.vue","webpack:///./src/modules/admin/payments/views/PaymentsList.vue?b528","webpack:///./src/modules/admin/payments/views/PaymentsList.vue?a2fd","webpack:///./src/modules/admin/payments/views/PaymentsDetailsPage.vue?24d1","webpack:///./src/modules/admin/payments/components/PaymentsDetails.vue?b430","webpack:///./src/modules/admin/payments/components/PaymentDetail.vue?fe0e","webpack:///./src/modules/admin/payments/components/PaymentDetail.vue","webpack:///./src/modules/admin/payments/components/PaymentDetail.vue?ee9d","webpack:///./src/modules/admin/payments/components/PaymentDetail.vue?309f","webpack:///./src/modules/admin/payments/components/PaymentsDetails.vue","webpack:///./src/modules/admin/payments/components/PaymentsDetails.vue?af8d","webpack:///./src/modules/admin/payments/components/PaymentsDetails.vue?2543","webpack:///./src/modules/admin/payments/views/PaymentsDetailsPage.vue","webpack:///./src/modules/admin/payments/views/PaymentsDetailsPage.vue?73e6","webpack:///./src/modules/admin/payments/views/PaymentsDetailsPage.vue?6531","webpack:///./src/modules/admin/game-instances/views/AdminGameInstancesList.vue?79f9","webpack:///./src/modules/admin/game-instances/services/admin-game-instances-api.service.ts","webpack:///./src/modules/admin/game-instances/components/GameInstancesListRow.vue?4557","webpack:///./src/modules/admin/game-instances/views/AdminGameInstanceDetailsPage.vue?34fc","webpack:///./src/modules/admin/game-instances/components/GameInstanceDetails.vue?a15c","webpack:///./src/modules/admin/game-instances/components/GameInstanceDetails.vue","webpack:///./src/modules/admin/game-instances/components/GameInstanceDetails.vue?aa42","webpack:///./src/modules/admin/game-instances/components/GameInstanceDetails.vue?e436","webpack:///./src/modules/admin/game-instances/components/GameInstancePaymentData.vue?0e30","webpack:///./src/modules/admin/game-instances/components/GameInstancePaymentData.vue","webpack:///./src/modules/admin/game-instances/components/GameInstancePaymentData.vue?b579","webpack:///./src/modules/admin/game-instances/components/GameInstancePaymentData.vue?afd9","webpack:///./src/modules/admin/game-instances/views/AdminGameInstanceDetailsPage.vue","webpack:///./src/modules/admin/game-instances/views/AdminGameInstanceDetailsPage.vue?b522","webpack:///./src/modules/admin/game-instances/views/AdminGameInstanceDetailsPage.vue?7e70","webpack:///./src/modules/admin/game-instances/components/GameInstancesListRow.vue","webpack:///./src/modules/admin/game-instances/components/GameInstancesListRow.vue?cb8c","webpack:///./src/modules/admin/game-instances/components/GameInstancesListRow.vue?d814","webpack:///./src/modules/admin/game-instances/views/AdminGameInstancesList.vue","webpack:///./src/modules/admin/game-instances/views/AdminGameInstancesList.vue?0b3f","webpack:///./src/modules/admin/game-instances/views/AdminGameInstancesList.vue?dc11","webpack:///./src/modules/layout/DefaultView.vue?eccc","webpack:///./src/modules/layout/DefaultView.vue","webpack:///./src/modules/game-play/game-play-router.enum.ts","webpack:///./src/modules/statistics/statistics-router.enum.ts","webpack:///./src/modules/layout/DefaultView.vue?5beb","webpack:///./src/modules/layout/DefaultView.vue?7f48","webpack:///./src/modules/admin/admin-users-router.ts","webpack:///./src/modules/game-instance/views/GameInstanceList.vue?0393","webpack:///./src/modules/game-instance/services/game-instance-api.service.ts","webpack:///./src/modules/game-instance/components/GameInstanceListItem.vue?1fc3","webpack:///./src/modules/game-instance/models/imageBase64.ts","webpack:///./src/modules/game-instance/components/GameInstanceListItem.vue","webpack:///./src/modules/game-instance/components/GameInstanceListItem.vue?34ca","webpack:///./src/modules/game-instance/components/GameInstanceListItem.vue?3746","webpack:///./src/modules/game-instance/views/GameInstanceList.vue","webpack:///./src/modules/game-instance/views/GameInstanceList.vue?160b","webpack:///./src/modules/game-instance/views/GameInstanceList.vue?2757","webpack:///./src/modules/game-instance/views/GameInstanceCreate.vue?86f7","webpack:///./src/modules/game-instance/components/GameInstanceCustomizeForm.vue?b558","webpack:///./src/modules/game-instance/components/GameSelect.vue?3a3d","webpack:///./src/modules/game-instance/components/GameSelect.vue","webpack:///./src/modules/game-instance/components/GameSelect.vue?d0ad","webpack:///./src/modules/game-instance/components/GameSelect.vue?8b95","webpack:///./src/modules/game-instance/components/GameInstanceCustomizeForm.vue","webpack:///./src/modules/game-instance/components/GameInstanceCustomizeForm.vue?b88d","webpack:///./src/modules/game-instance/components/GameInstanceCustomizeForm.vue?015e","webpack:///./src/modules/game-instance/models/game-instance.model.ts","webpack:///./src/modules/game-instance/models/game-templates.model.ts","webpack:///./src/modules/game-play/games/customize-settings.model.ts","webpack:///./src/modules/layout/components/forms/form-helper.ts","webpack:///./src/modules/game-instance/views/GameInstanceCreate.vue","webpack:///./src/modules/game-instance/views/GameInstanceCreate.vue?7e84","webpack:///./src/modules/game-instance/views/GameInstanceCreate.vue?cc56","webpack:///./src/modules/game-instance/views/GameInstanceEdit.vue?3ba6","webpack:///./src/modules/game-instance/components/game-customize-types/ImageTypeCustomize.vue?be91","webpack:///./src/modules/game-instance/components/game-customize-types/ImageCropModal.vue?6601","webpack:///./src/modules/game-instance/components/game-customize-types/ImageCropModal.vue","webpack:///./src/modules/game-instance/components/game-customize-types/ImageCropModal.vue?d8f1","webpack:///./src/modules/game-instance/components/game-customize-types/ImageCropModal.vue?11b7","webpack:///./src/modules/game-instance/components/game-customize-types/ImageTypeCustomize.vue?0af5","webpack:///./src/modules/game-instance/components/game-customize-types/ImageTypeCustomize.vue?f708","webpack:///./src/modules/game-instance/components/game-customize-types/ImageTypeCustomize.vue?f75c","webpack:///./src/modules/game-instance/components/game-customize-types/NumberTypeCustomize.vue?019b","webpack:///./src/modules/game-instance/components/game-customize-types/NumberTypeCustomize.vue","webpack:///./src/modules/game-instance/components/game-customize-types/NumberTypeCustomize.vue?4cea","webpack:///./src/modules/game-instance/components/game-customize-types/NumberTypeCustomize.vue?1cf2","webpack:///./src/modules/game-instance/components/game-customize-types/TextTypeCustomize.vue?9540","webpack:///./src/modules/game-instance/components/game-customize-types/TextTypeCustomize.vue","webpack:///./src/modules/game-instance/components/game-customize-types/TextTypeCustomize.vue?1f34","webpack:///./src/modules/game-instance/components/game-customize-types/TextTypeCustomize.vue?6bc7","webpack:///./src/modules/game-instance/components/GameInstanceCustomize.vue?b28a","webpack:///./src/modules/game-instance/components/GameInstanceCustomize.vue","webpack:///./src/modules/game-instance/components/GameInstanceCustomize.vue?2b57","webpack:///./src/modules/game-instance/components/GameInstanceCustomize.vue?555b","webpack:///./src/modules/game-instance/components/GameInstanceProfessionAssign.vue?9eb4","webpack:///./src/modules/game-instance/components/GameInstanceProfessionAssign.vue","webpack:///./src/modules/game-instance/components/GameInstanceProfessionAssign.vue?96c8","webpack:///./src/modules/game-instance/components/GameInstanceProfessionAssign.vue?6331","webpack:///./src/modules/game-play/games/space-rescue/Global/soundManager.ts","webpack:///./src/modules/game-play/games/space-rescue/Models/Bullet.ts","webpack:///./src/modules/game-play/games/space-rescue/Models/KeySide.ts","webpack:///./src/modules/game-play/games/space-rescue/Models/BulletGroup.ts","webpack:///./src/modules/game-play/games/space-rescue/Global/SpaceRescueVariables.ts","webpack:///./src/modules/game-play/games/space-rescue/Models/shipcontroller.ts","webpack:///./src/modules/game-play/games/framework/control/errorTypes.ts","webpack:///./src/modules/game-play/games/space-rescue/Models/Enemy.ts","webpack:///./src/modules/game-play/games/space-rescue/Models/EnemyGroup.ts","webpack:///./src/modules/game-play/games/space-rescue/Models/background.ts","webpack:///./src/modules/game-play/games/space-rescue/Global/Levels.ts","webpack:///./src/modules/game-play/games/space-rescue/Global/base-controll-class.ts","webpack:///./src/modules/game-play/games/framework/helpers/textcontroller.ts","webpack:///./src/modules/game-play/games/framework/control/errorControl.ts","webpack:///./src/modules/game-play/games/framework/engines/life.ts","webpack:///./src/modules/game-play/games/framework/engines/audio.ts","webpack:///./src/modules/game-play/games/framework/engine-controller.ts","webpack:///./src/modules/game-play/games/space-rescue/space-rescue-gameclass.ts","webpack:///./src/modules/game-play/games/space-rescue/imagesbase64.ts","webpack:///./src/modules/game-play/games/space-rescue/space-rescue-engine.ts","webpack:///./src/modules/game-play/games/river-run/Models/KeySide.ts","webpack:///./src/modules/game-play/games/river-run/Global/RiverRunVariables.ts","webpack:///./src/modules/game-play/games/river-run/Models/playercontroller.ts","webpack:///./src/modules/game-play/games/river-run/Global/Levels.ts","webpack:///./src/modules/game-play/games/river-run/Models/SpawnPoint.ts","webpack:///./src/modules/game-play/games/river-run/Models/Enemy/Models/EnemyVehicle.ts","webpack:///./src/modules/game-play/games/river-run/Models/Enemy/EnemyVehicleGroup.ts","webpack:///./src/modules/game-play/games/river-run/Models/Enemy/EnemyVehicleFactory.ts","webpack:///./src/modules/game-play/games/river-run/Global/Car.ts","webpack:///./src/modules/game-play/games/river-run/Models/SpawnPointObjects.ts","webpack:///./src/modules/game-play/games/river-run/Models/ObjectsModel.ts","webpack:///./src/modules/game-play/games/river-run/Models/ObjectsGroup.ts","webpack:///./src/modules/game-play/games/river-run/Models/ObjectFactory.ts","webpack:///./src/modules/game-play/games/river-run/Global/ObjectsOutside.ts","webpack:///./src/modules/game-play/games/river-run/Global/BaseControllClass.ts","webpack:///./src/modules/game-play/games/river-run/Models/backgroundRoad.ts","webpack:///./src/modules/game-play/games/river-run/Models/backgroundBack.ts","webpack:///./src/modules/game-play/games/river-run/Global/soundManager.ts","webpack:///./src/modules/game-play/games/river-run/Global/Animations.ts","webpack:///./src/modules/game-play/games/river-run/Global/EndLevelObject.ts","webpack:///./src/modules/game-play/games/river-run/river-run-gameclass.ts","webpack:///./src/modules/game-play/games/river-run/imagesbase64.ts","webpack:///./src/modules/game-play/games/river-run/river-run-engine.ts","webpack:///./src/modules/game-play/games/maze-game/Models/KeySide.ts","webpack:///./src/modules/game-play/games/maze-game/Models/playercontroller.ts","webpack:///./src/modules/game-play/games/maze-game/Global/MazeGameVariables.ts","webpack:///./src/modules/game-play/games/maze-game/Models/WallObjectsTilesprite.ts","webpack:///./src/modules/game-play/games/maze-game/Models/WallObjectsGroup.ts","webpack:///./src/modules/game-play/games/maze-game/Models/WallObjectsFactory.ts","webpack:///./src/modules/game-play/games/maze-game/Global/Levels.ts","webpack:///./src/modules/game-play/games/maze-game/Global/BaseControllClass.ts","webpack:///./src/modules/game-play/games/maze-game/Models/textcontroller.ts","webpack:///./src/modules/game-play/games/maze-game/Models/backgroundRoad.ts","webpack:///./src/modules/game-play/games/maze-game/Models/backgroundBack.ts","webpack:///./src/modules/game-play/games/maze-game/maze-game-gameclass.ts","webpack:///./src/modules/game-play/games/maze-game/imagesbase64.ts","webpack:///./src/modules/game-play/games/maze-game/maze-game-engine.ts","webpack:///./src/modules/game-play/services/game-theme.service.ts","webpack:///./src/modules/game-play/services/game-factory.service.ts","webpack:///./src/modules/game-instance/views/GameInstanceEdit.vue","webpack:///./src/modules/game-instance/views/GameInstanceEdit.vue?3b97","webpack:///./src/modules/game-instance/views/GameInstanceEdit.vue?dd86","webpack:///./src/modules/game-instance/views/GameInstanceCreateOrder.vue?aa73","webpack:///./src/modules/game-instance/models/create-order.model.ts","webpack:///./src/modules/game-instance/components/OrderSummary.vue?9927","webpack:///./src/modules/game-instance/components/OrderSummary.vue","webpack:///./src/modules/game-instance/components/OrderSummary.vue?073f","webpack:///./src/modules/game-instance/components/OrderSummary.vue?7d2f","webpack:///./src/modules/game-instance/views/GameInstanceCreateOrder.vue","webpack:///./src/modules/game-instance/views/GameInstanceCreateOrder.vue?65e9","webpack:///./src/modules/game-instance/views/GameInstanceCreateOrder.vue?4ef0","webpack:///./src/modules/game-instance/game-instance-router.ts","webpack:///./src/modules/game-play/GameContainer.vue?2e7a","webpack:///./src/modules/game-play/services/game-api.service.ts","webpack:///./src/modules/game-play/GameMenu.vue?4fa7","webpack:///./src/modules/game-play/GameMenu.vue","webpack:///./src/modules/game-play/GameMenu.vue?2841","webpack:///./src/modules/game-play/GameMenu.vue?c568","webpack:///./src/modules/game-play/GamePlay.vue?75fe","webpack:///./src/modules/game-play/components/GameOverModal.vue?9b0c","webpack:///./src/modules/game-play/components/GameOverModal.vue","webpack:///./src/modules/game-play/components/GameOverModal.vue?da94","webpack:///./src/modules/game-play/components/GameOverModal.vue?d320","webpack:///./src/modules/game-play/components/QuestionModal.vue?a2d7","webpack:///./src/services/DelayHelper.ts","webpack:///./src/modules/game-play/components/QuestionModal.vue","webpack:///./src/modules/game-play/components/QuestionModal.vue?5226","webpack:///./src/modules/game-play/components/QuestionModal.vue?f252","webpack:///./src/modules/game-play/GamePlay.vue","webpack:///./src/modules/game-play/playableStatus.enum.ts","webpack:///./src/modules/game-play/GamePlay.vue?bbe4","webpack:///./src/modules/game-play/GamePlay.vue?9b5b","webpack:///./src/modules/layout/components/Loader.vue?b7cc","webpack:///./src/modules/layout/components/Loader.vue","webpack:///./src/modules/layout/components/Loader.vue?dcb3","webpack:///./src/modules/layout/components/Loader.vue?429d","webpack:///./src/modules/layout/components/GameIsPrivate.vue?5fd8","webpack:///./src/modules/layout/components/GameIsPrivate.vue","webpack:///./src/modules/layout/components/GameIsPrivate.vue?02c8","webpack:///./src/modules/layout/components/GameIsPrivate.vue?64f6","webpack:///./src/modules/game-play/GameContainer.vue","webpack:///./src/modules/game-play/GameContainer.vue?ab59","webpack:///./src/modules/game-play/GameContainer.vue?f553","webpack:///./src/modules/game-play/game-play-router.ts","webpack:///./src/modules/payments-history/views/PaymentsHistoryDetails.vue?e8b9","webpack:///./src/modules/payments-history/components/PaymentDetail.vue?cd05","webpack:///./src/modules/payments-history/components/PaymentDetail.vue","webpack:///./src/modules/payments-history/components/PaymentDetail.vue?a533","webpack:///./src/modules/payments-history/components/PaymentDetail.vue?41f2","webpack:///./src/modules/payments-history/components/PaymentStatus.vue?3103","webpack:///./src/modules/payments-history/components/PaymentStatus.vue","webpack:///./src/modules/payments-history/components/PaymentStatus.vue?148f","webpack:///./src/modules/payments-history/components/PaymentStatus.vue?d6a5","webpack:///./src/modules/payments-history/services/payments-api.service.ts","webpack:///./src/modules/payments-history/views/PaymentsHistoryDetails.vue","webpack:///./src/modules/payments-history/views/PaymentsHistoryDetails.vue?dc4a","webpack:///./src/modules/payments-history/views/PaymentsHistoryDetails.vue?faa8","webpack:///./src/modules/payments-history/views/PaymentsHistoryList.vue?6853","webpack:///./src/modules/payments-history/components/PaymentsHistoryListItem.vue?ca0e","webpack:///./src/modules/payments-history/components/PaymentsHistoryListItem.vue","webpack:///./src/modules/payments-history/components/PaymentsHistoryListItem.vue?4624","webpack:///./src/modules/payments-history/components/PaymentsHistoryListItem.vue?ea1a","webpack:///./src/modules/payments-history/views/PaymentsHistoryList.vue","webpack:///./src/modules/payments-history/views/PaymentsHistoryList.vue?fd2a","webpack:///./src/modules/payments-history/views/PaymentsHistoryList.vue?f885","webpack:///./src/modules/payments-history/payments-history-routes.ts","webpack:///./src/modules/professions/views/ProfessionList.vue?b61d","webpack:///./src/modules/professions/components/ProfessionListItem.vue?4df0","webpack:///./src/modules/professions/components/QuestionList.vue?97b8","webpack:///./src/modules/professions/services/question-api.service.ts","webpack:///./src/modules/professions/components/QuestionList.vue","webpack:///./src/modules/professions/components/QuestionList.vue?6468","webpack:///./src/modules/professions/components/QuestionList.vue?dff4","webpack:///./src/modules/professions/services/profession-api.service.ts","webpack:///./src/modules/professions/components/ProfessionListItem.vue","webpack:///./src/modules/professions/components/ProfessionListItem.vue?c3a5","webpack:///./src/modules/professions/components/ProfessionListItem.vue?640d","webpack:///./src/modules/professions/views/ProfessionList.vue","webpack:///./src/modules/professions/views/ProfessionList.vue?e541","webpack:///./src/modules/professions/views/ProfessionList.vue?3e1e","webpack:///./src/modules/professions/views/CreateProfession.vue?e515","webpack:///./src/modules/professions/views/CreateProfession.vue","webpack:///./src/modules/professions/views/CreateProfession.vue?5066","webpack:///./src/modules/professions/views/CreateProfession.vue?8d04","webpack:///./src/modules/professions/views/ProfessionDetails.vue?3084","webpack:///./src/modules/professions/components/EditableQuestionList.vue?1350","webpack:///./src/modules/professions/components/QuestionListItem.vue?5fc1","webpack:///./src/modules/professions/components/QuestionListItem.vue","webpack:///./src/modules/professions/components/QuestionListItem.vue?204f","webpack:///./src/modules/professions/components/QuestionListItem.vue?93c3","webpack:///./src/modules/professions/components/EditableQuestionList.vue","webpack:///./src/modules/professions/components/EditableQuestionList.vue?438c","webpack:///./src/modules/professions/components/EditableQuestionList.vue?c391","webpack:///./src/modules/professions/views/ProfessionDetails.vue","webpack:///./src/modules/professions/views/ProfessionDetails.vue?fa1b","webpack:///./src/modules/professions/views/ProfessionDetails.vue?ae61","webpack:///./src/modules/professions/views/CreateQuestion.vue?fd23","webpack:///./src/modules/professions/views/CreateQuestion.vue?ceb6","webpack:///./src/modules/professions/views/CreateQuestion.vue?70e1","webpack:///./src/modules/professions/views/CreateQuestion.vue?dc35","webpack:///./src/modules/professions/views/EditQuestion.vue?eda2","webpack:///./src/modules/professions/views/EditQuestion.vue","webpack:///./src/modules/professions/views/EditQuestion.vue?dce1","webpack:///./src/modules/professions/views/EditQuestion.vue?5c59","webpack:///./src/modules/professions/professions-router.ts","webpack:///./src/modules/statistics/views/StatisticsMain.vue?f579","webpack:///./src/modules/statistics/services/statistic-api.service.ts","webpack:///./src/modules/statistics/components/GlobalCountsBar.vue?025c","webpack:///./src/modules/statistics/components/GlobalCountsBarItem.vue?b566","webpack:///./src/modules/statistics/components/GlobalCountsBarItem.vue","webpack:///./src/modules/statistics/components/GlobalCountsBarItem.vue?88d6","webpack:///./src/modules/statistics/components/GlobalCountsBarItem.vue?5178","webpack:///./src/modules/statistics/components/GlobalCountsBar.vue","webpack:///./src/modules/statistics/components/GlobalCountsBar.vue?6a25","webpack:///./src/modules/statistics/components/GlobalCountsBar.vue?a0fe","webpack:///./src/modules/statistics/components/StatisticsPlayersTable.vue?ec1f","webpack:///./src/modules/statistics/components/StatisticsPlayersTable.vue","webpack:///./src/modules/statistics/components/StatisticsPlayersTable.vue?12a5","webpack:///./src/modules/statistics/components/StatisticsPlayersTable.vue?82a7","webpack:///./src/modules/statistics/components/StatisticsGamesTable.vue?2b66","webpack:///./src/modules/statistics/components/StatisticsGamesTable.vue","webpack:///./src/modules/statistics/components/StatisticsGamesTable.vue?bc85","webpack:///./src/modules/statistics/components/StatisticsGamesTable.vue?ead8","webpack:///./src/modules/statistics/views/StatisticsMain.vue","webpack:///./src/modules/statistics/views/StatisticsMain.vue?d7c1","webpack:///./src/modules/statistics/views/StatisticsMain.vue?27a9","webpack:///./src/modules/statistics/views/DownloadCV.vue?f520","webpack:///./src/modules/statistics/views/DownloadCV.vue","webpack:///./src/modules/statistics/views/DownloadCV.vue?51bd","webpack:///./src/modules/statistics/views/DownloadCV.vue?1d3c","webpack:///./src/modules/statistics/views/StatisticsPlayer.vue?7e14","webpack:///./src/modules/statistics/components/StatisticsPlayerTable.vue?aafe","webpack:///./src/modules/statistics/components/StatisticsPlayerTable.vue","webpack:///./src/modules/statistics/components/StatisticsPlayerTable.vue?23f1","webpack:///./src/modules/statistics/components/StatisticsPlayerTable.vue?561b","webpack:///./src/modules/statistics/components/StatisticsPlayerGamesTable.vue?d477","webpack:///./src/modules/statistics/components/GlobalCountsBarForPlayer.vue?faa0","webpack:///./src/modules/statistics/components/GlobalCountsBarForPlayer.vue","webpack:///./src/modules/statistics/components/GlobalCountsBarForPlayer.vue?094a","webpack:///./src/modules/statistics/components/GlobalCountsBarForPlayer.vue?5f33","webpack:///./src/modules/statistics/components/StatisticsPlayerGamesTable.vue","webpack:///./src/modules/statistics/components/StatisticsPlayerGamesTable.vue?67a7","webpack:///./src/modules/statistics/components/StatisticsPlayerGamesTable.vue?975f","webpack:///./src/modules/statistics/components/StatisticsPlayerOverview.vue?ef4b","webpack:///./src/modules/statistics/components/StatisticsPlayerOverview.vue","webpack:///./src/modules/statistics/components/StatisticsPlayerOverview.vue?d903","webpack:///./src/modules/statistics/components/StatisticsPlayerOverview.vue?493e","webpack:///./src/modules/statistics/views/StatisticsPlayer.vue","webpack:///./src/modules/statistics/views/StatisticsPlayer.vue?35c6","webpack:///./src/modules/statistics/views/StatisticsPlayer.vue?bf43","webpack:///./src/modules/statistics/views/StatisticsGame.vue?c061","webpack:///./src/modules/statistics/components/StatisticsOneGameTable.vue?c444","webpack:///./src/modules/statistics/components/StatisticsOneGameTable.vue","webpack:///./src/modules/statistics/components/StatisticsOneGameTable.vue?d903","webpack:///./src/modules/statistics/components/StatisticsOneGameTable.vue?c852","webpack:///./src/modules/statistics/components/StatisticsOneGameDeepTable.vue?a7e8","webpack:///./src/modules/statistics/components/StatisticsOneGameDeepTable.vue","webpack:///./src/modules/statistics/components/StatisticsOneGameDeepTable.vue?dc01","webpack:///./src/modules/statistics/components/StatisticsOneGameDeepTable.vue?c5b9","webpack:///./src/modules/statistics/components/StatisticsOneGameLogsTable.vue?d67d","webpack:///./src/modules/statistics/components/StatisticsOneGameLogsTable.vue","webpack:///./src/modules/statistics/components/StatisticsOneGameLogsTable.vue?a82a","webpack:///./src/modules/statistics/components/StatisticsOneGameLogsTable.vue?74d1","webpack:///./src/modules/statistics/views/StatisticsGame.vue","webpack:///./src/modules/statistics/views/StatisticsGame.vue?f8ec","webpack:///./src/modules/statistics/views/StatisticsGame.vue?fb7b","webpack:///./src/modules/statistics/statistic-router.ts","webpack:///./src/modules/user-management/views/Login.vue?df5f","webpack:///./src/modules/user-management/components/AnonymousContainer.vue?a473","webpack:///./src/modules/user-management/components/AnonymousContainer.vue","webpack:///./src/modules/user-management/components/AnonymousContainer.vue?69a3","webpack:///./src/modules/user-management/components/AnonymousContainer.vue?8129","webpack:///./src/modules/user-management/components/AnonymousHeader.vue?7ef1","webpack:///./src/modules/user-management/components/AnonymousHeader.vue","webpack:///./src/modules/user-management/components/AnonymousHeader.vue?acf5","webpack:///./src/modules/user-management/components/AnonymousHeader.vue?6fd2","webpack:///./src/modules/user-management/services/user-api.service.ts","webpack:///./src/modules/user-management/views/Login.vue","webpack:///./src/modules/user-management/views/Login.vue?40a5","webpack:///./src/modules/user-management/views/Login.vue?5e6c","webpack:///./src/modules/user-management/views/Register.vue?fc67","webpack:///./src/modules/user-management/views/Register.vue","webpack:///./src/modules/user-management/views/Register.vue?df0b","webpack:///./src/modules/user-management/views/Register.vue?7332","webpack:///./src/modules/user-management/views/ActivateAccount.vue?f87d","webpack:///./src/modules/user-management/views/ActivateAccount.vue","webpack:///./src/modules/user-management/views/ActivateAccount.vue?8906","webpack:///./src/modules/user-management/views/ActivateAccount.vue?e1d2","webpack:///./src/modules/user-management/views/ForgotPasswordRequest.vue?ccdf","webpack:///./src/modules/user-management/views/ForgotPasswordRequest.vue","webpack:///./src/modules/user-management/views/ForgotPasswordRequest.vue?0d19","webpack:///./src/modules/user-management/views/ForgotPasswordRequest.vue?d83d","webpack:///./src/modules/user-management/views/ForgotPasswordConfirm.vue?4c4b","webpack:///./src/modules/user-management/views/ForgotPasswordConfirm.vue","webpack:///./src/modules/user-management/views/ForgotPasswordConfirm.vue?8e86","webpack:///./src/modules/user-management/views/ForgotPasswordConfirm.vue?f401","webpack:///./src/modules/user-management/views/ChangePassword.vue?929f","webpack:///./src/modules/user-management/views/ChangePassword.vue","webpack:///./src/modules/user-management/views/ChangePassword.vue?8c5f","webpack:///./src/modules/user-management/views/ChangePassword.vue?5d64","webpack:///./src/modules/user-management/user-management-router.ts","webpack:///./src/modules/kitchen-sink/views/kitchen-sink.vue?5f9c","webpack:///./src/modules/kitchen-sink/components/KitchenSinkShortCuts.vue?b983","webpack:///./src/modules/kitchen-sink/components/KitchenSinkShortCuts.vue","webpack:///./src/modules/kitchen-sink/components/KitchenSinkShortCuts.vue?d1c3","webpack:///./src/modules/kitchen-sink/components/KitchenSinkShortCuts.vue?ce40","webpack:///./src/modules/kitchen-sink/Previews/EditCardMainPreview.vue?5eed","webpack:///./src/modules/kitchen-sink/Previews/EditCardMainPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/EditCardMainPreview.vue?9969","webpack:///./src/modules/kitchen-sink/Previews/EditCardMainPreview.vue?0467","webpack:///./src/modules/kitchen-sink/Previews/EditCardSectionPreview.vue?7849","webpack:///./src/modules/kitchen-sink/Previews/EditCardSectionPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/EditCardSectionPreview.vue?8af6","webpack:///./src/modules/kitchen-sink/Previews/EditCardSectionPreview.vue?8237","webpack:///./src/modules/kitchen-sink/Previews/EmptyListContainerPreview.vue?fc7d","webpack:///./src/modules/kitchen-sink/Previews/EmptyListContainerPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/EmptyListContainerPreview.vue?2d73","webpack:///./src/modules/kitchen-sink/Previews/EmptyListContainerPreview.vue?8967","webpack:///./src/modules/kitchen-sink/Previews/ListMenuPreview.vue?d338","webpack:///./src/modules/kitchen-sink/Previews/ListMenuPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/ListMenuPreview.vue?490e","webpack:///./src/modules/kitchen-sink/Previews/ListMenuPreview.vue?bfff","webpack:///./src/modules/kitchen-sink/Previews/ListItemHeaderPreview.vue?bf93","webpack:///./src/modules/kitchen-sink/Previews/ListItemHeaderPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/ListItemHeaderPreview.vue?29d3","webpack:///./src/modules/kitchen-sink/Previews/ListItemHeaderPreview.vue?23c0","webpack:///./src/modules/kitchen-sink/Previews/TableItemHeaderPreview.vue?d522","webpack:///./src/modules/kitchen-sink/Previews/TableItemHeaderPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/TableItemHeaderPreview.vue?4d55","webpack:///./src/modules/kitchen-sink/Previews/TableItemHeaderPreview.vue?9c37","webpack:///./src/modules/kitchen-sink/Previews/FormTextInputPreview.vue?861a","webpack:///./src/modules/kitchen-sink/Previews/FormTextInputPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/FormTextInputPreview.vue?afc8","webpack:///./src/modules/kitchen-sink/Previews/FormTextInputPreview.vue?0a60","webpack:///./src/modules/kitchen-sink/Previews/FormTextInfoPreview.vue?e42b","webpack:///./src/modules/kitchen-sink/Previews/FormTextInfoPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/FormTextInfoPreview.vue?2714","webpack:///./src/modules/kitchen-sink/Previews/FormTextInfoPreview.vue?826c","webpack:///./src/modules/kitchen-sink/Previews/FormAutocompleteSelectPreview.vue?6007","webpack:///./src/modules/kitchen-sink/Previews/FormAutocompleteSelectPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/FormAutocompleteSelectPreview.vue?3abf","webpack:///./src/modules/kitchen-sink/Previews/FormAutocompleteSelectPreview.vue?6d50","webpack:///./src/modules/kitchen-sink/Previews/FormSelectPreview.vue?0492","webpack:///./src/modules/kitchen-sink/Previews/FormSelectPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/FormSelectPreview.vue?2739","webpack:///./src/modules/kitchen-sink/Previews/FormSelectPreview.vue?5d4f","webpack:///./src/modules/kitchen-sink/Previews/FormConditionsCheckboxPreview.vue?0302","webpack:///./src/modules/kitchen-sink/Previews/FormConditionsCheckboxPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/FormConditionsCheckboxPreview.vue?b2fd","webpack:///./src/modules/kitchen-sink/Previews/FormConditionsCheckboxPreview.vue?760f","webpack:///./src/modules/kitchen-sink/Previews/SkeletonLoaderDetailsPreview.vue?b8f2","webpack:///./src/modules/kitchen-sink/Previews/SkeletonLoaderDetailsPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/SkeletonLoaderDetailsPreview.vue?1257","webpack:///./src/modules/kitchen-sink/Previews/SkeletonLoaderDetailsPreview.vue?4118","webpack:///./src/modules/kitchen-sink/Previews/IntersectMenuSectionPreview.vue?c400","webpack:///./src/modules/kitchen-sink/Previews/IntersectMenuSectionPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/IntersectMenuSectionPreview.vue?2015","webpack:///./src/modules/kitchen-sink/Previews/IntersectMenuSectionPreview.vue?c636","webpack:///./src/modules/kitchen-sink/Previews/ListContainerPreview.vue?02f4","webpack:///./src/modules/kitchen-sink/Previews/ListContainerPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/ListContainerPreview.vue?3706","webpack:///./src/modules/kitchen-sink/Previews/ListContainerPreview.vue?aefb","webpack:///./src/modules/kitchen-sink/Previews/FormCheckboxPreview.vue?79e7","webpack:///./src/modules/kitchen-sink/Previews/FormCheckboxPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/FormCheckboxPreview.vue?5645","webpack:///./src/modules/kitchen-sink/Previews/FormCheckboxPreview.vue?cd39","webpack:///./src/modules/kitchen-sink/Previews/DetailRowPreview.vue?9b0d","webpack:///./src/modules/kitchen-sink/Previews/DetailRowPreview.vue","webpack:///./src/modules/kitchen-sink/Previews/DetailRowPreview.vue?9464","webpack:///./src/modules/kitchen-sink/Previews/DetailRowPreview.vue?41da","webpack:///./src/modules/kitchen-sink/Previews/CustomDataTablePreview.vue?514f","webpack:///./src/modules/kitchen-sink/Previews/CustomDataTablePreview.vue","webpack:///./src/modules/kitchen-sink/Previews/CustomDataTablePreview.vue?fa38","webpack:///./src/modules/kitchen-sink/Previews/CustomDataTablePreview.vue?62c6","webpack:///./src/modules/kitchen-sink/models/KitchenSinkElementsList.ts","webpack:///./src/modules/kitchen-sink/components/KitchenSinkList.vue?7f0e","webpack:///./src/modules/kitchen-sink/components/KitchenSinkHtml.vue?36d5","webpack:///./src/modules/kitchen-sink/components/KitchenSinkHtml.vue","webpack:///./src/modules/kitchen-sink/components/KitchenSinkHtml.vue?655a","webpack:///./src/modules/kitchen-sink/components/KitchenSinkHtml.vue?c735","webpack:///./src/modules/kitchen-sink/components/KitchenSinkPreview.vue?e43b","webpack:///./src/modules/kitchen-sink/components/KitchenSinkPreview.vue","webpack:///./src/modules/kitchen-sink/components/KitchenSinkPreview.vue?f524","webpack:///./src/modules/kitchen-sink/components/KitchenSinkPreview.vue?155b","webpack:///./src/modules/kitchen-sink/components/KitchenSinkTypeScript.vue?d7d8","webpack:///./src/modules/kitchen-sink/components/KitchenSinkTypeScript.vue","webpack:///./src/modules/kitchen-sink/components/KitchenSinkTypeScript.vue?7501","webpack:///./src/modules/kitchen-sink/components/KitchenSinkTypeScript.vue?092b","webpack:///./src/modules/kitchen-sink/components/KitchenSinkStyle.vue?41cb","webpack:///./src/modules/kitchen-sink/components/KitchenSinkStyle.vue","webpack:///./src/modules/kitchen-sink/components/KitchenSinkStyle.vue?1b3d","webpack:///./src/modules/kitchen-sink/components/KitchenSinkStyle.vue?7e58","webpack:///./src/modules/kitchen-sink/components/KitchenSinkSnippet.vue?14c7","webpack:///./src/modules/kitchen-sink/components/KitchenSinkSnippet.vue","webpack:///./src/modules/kitchen-sink/components/KitchenSinkSnippet.vue?1725","webpack:///./src/modules/kitchen-sink/components/KitchenSinkSnippet.vue?6193","webpack:///./src/modules/kitchen-sink/components/KitchenSinkList.vue?40e8","webpack:///./src/modules/kitchen-sink/components/KitchenSinkList.vue?d6fe","webpack:///./src/modules/kitchen-sink/components/KitchenSinkList.vue?c8c7","webpack:///./src/modules/kitchen-sink/views/kitchen-sink.vue?1c8b","webpack:///./src/modules/kitchen-sink/views/kitchen-sink.vue?b97d","webpack:///./src/modules/kitchen-sink/views/kitchen-sink.vue?7528","webpack:///./src/modules/kitchen-sink/kitchen-sink-router.ts","webpack:///./src/router/index.enum.ts","webpack:///./src/modules/layout/components/NotFoundPage.vue?6569","webpack:///./src/modules/layout/components/NotFoundPage.vue","webpack:///./src/modules/layout/components/NotFoundPage.vue?1c20","webpack:///./src/modules/layout/components/NotFoundPage.vue?386e","webpack:///./src/modules/ebook-download/views/DownloadEbook.vue?4ccc","webpack:///./src/modules/ebook-download/services/ebook-api.service.ts","webpack:///./src/modules/ebook-download/views/DownloadEbook.vue","webpack:///./src/modules/ebook-download/views/DownloadEbook.vue?82fa","webpack:///./src/modules/ebook-download/views/DownloadEbook.vue?bf41","webpack:///./src/router/index.ts","webpack:///./src/main.ts","webpack:///./src/modules/user-management/views/Login.vue?053c","webpack:///./src/assets/games/space-rescue/sprites/invader.png","webpack:///./src/assets/games/river-run/themes/skyFlight/question-background-blur.svg","webpack:///./src/assets/games/river-run/themes/pirates/background.svg","webpack:///./src/assets/games/space-rescue/sounds/explosion.wav","webpack:///./src/modules/professions/components/QuestionListItem.vue?f418","webpack:///./src/modules/professions/components/ProfessionListItem.vue?73ac","webpack:///./src/assets/games/space-rescue/sounds/invaderkilled.wav","webpack:///./src/modules/game-instance/views/GameInstanceCreate.vue?f59e","webpack:///./src/modules/game-instance/components/GameInstanceListItem.vue?a61d","webpack:///./src/assets/games/pirates-preview.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/plane_enemy3.png","webpack:///./src/assets/games/space-rescue/background.svg","webpack:///./src/assets/games/space-rescue/themes/desert/sprites/life.png","webpack:///./src/assets/games/space-rescue/themes/desert/question-background-blur.svg","webpack:///./src/modules/layout/components/GameIsPrivate.vue?a03f","webpack:///./src/assets/games/space-rescue/themes/little-witch/sounds/shoot.ogg","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/speedRace-stamina-top.png","webpack:///./src/modules/statistics/components/GlobalCountsBar.vue?a042","webpack:///./src/modules/statistics/components/GlobalCountsBarItem.vue?71fb","webpack:///./src/assets/games/river-run/themes/speed-race/sounds/rollover3.ogg","webpack:///./src/assets/images/cf_ppl1.png","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/oil.png","webpack:///./src/modules/game-play/GameMenu.vue?1d1c","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/car.png","webpack:///./src/modules/game-instance/views/GameInstanceEdit.vue?e0ee","webpack:///./src/modules/user-management/components/AnonymousHeader.vue?7661","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/flag.png","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/car_yellow.png","webpack:///./src/modules/professions/views/CreateQuestion.vue?1bb0","webpack:///./src/assets/games/river-run/themes/pirates/sprites/pirates-stamina-top.png","webpack:///./src/assets/games/river-run/themes/pirates/sprites/odometerline.png","webpack:///./src/modules/layout/components/ToolBar.vue?d601","webpack:///./src/assets/games/river-run/themes/pirates/sprites/odometer.png","webpack:///./src/assets/games/space-rescue/sprites/space-ship.png","webpack:///./src/assets/games/river-run/themes/skyFlight/sprites/plane-stamina-bottom.png","webpack:///./src/modules/game-play/GameContainer.vue?17ed","webpack:///./src/assets/games/river-run/themes/speed-race/sprites/small-plants.png","webpack:///./src/assets/games/space-rescue/themes/desert/game-background-blur.svg"],"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","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","map","webpackContext","req","id","webpackContextResolve","e","Error","code","keys","resolve","languageCode","googleAnalyticsAccepted","facebookPixelAccepted","wasCookieBannerShown","internalTraffic","cookie","getJSON","CookieService","cookieName","this","getCookieWithDefault","setCookie","domain","getCookieDomain","set","sameSite","expires","getCookie","newModel","i18n","locale","undefined","hostName","location","hostname","substring","lastIndexOf","startsWith","use","theme","themes","light","primary","secondary","background","blue","idTable","storeVersion","storeLoaded","sizeCheckEnabled","sideMenuOpen","defaultTableSize","user","token","rememberedEmail","intersectedComponent","appVersion","language","isInternalTraffic","consentBannerViewState","playerInputModelGameInstance","tables","PPUrl","breadcrumbData","existingStore","localStorage","getItem","parsedStore","JSON","parse","loadCookieData","console","info","saveState","storeModel","serialized","stringify","setItem","model","filter","find","x","state","response","email","input","vuetify","framework","lang","current","setCookieProperty","accepted","isAdmin","Locales","store","storedLanguage","getLanguageCode","cookieLanguage","browserLanguage","localeKey","substr","values","includes","log","EN","messages","en","DE","de","PL","pl","ES","es","FR","fr","IT","it","PT","pt","RU","ru","NL","nl","defaultLocale","getLocale","fallbackLocale","missing","vm","warn","translate","_vm","_h","$createElement","_c","_self","attrs","staticClass","_v","_s","title","_t","staticRenderFns","default","component","VCard","VCardTitle","VCol","VContainer","VDivider","VRow","_e","on","$event","show","directives","rawName","expression","expanded","type","Boolean","VBtn","VCardActions","VCardText","VExpandTransition","VIcon","VSpacer","text","routeName","menuIsShowed","scopedSlots","_u","fn","ref","_g","_b","disabled","VMenu","hover","class","btnHover","routeTo","icon","subTitle","VHover","checkIsBoolean","callback","$$v","useCheckBox","VCheckbox","label","rules","updateValue","$emit","VTextField","_f","currency","items","itemText","itemValue","VAutocomplete","VSelect","link","newTabFlag","linkText","newTab","String","VSkeletonLoader","entries","invoker","isIntersected","setIntersected","Intersect","labelIcon","linkIcon","VSubheader","$t","search","headers","customSearch","tableSize","itemsPerPageText","itemsPerPageAllText","pageText","_l","header","staticStyle","activeFilters","$set","uniq","item","active","domProps","toggleAll","clearAll","row","initFilters","getTableSize","setTables","a","seen","columnFilters","forEach","f","h","columnFilter","getColumnFilter","col","VDataTable","VList","VListItem","VListItemAction","VListItemContent","VListItemGroup","VListItemTitle","TableItemHeaderLink","$route","meta","technicalView","allowAnonymous","showSnackbarHD","consentBannerState","proxy","preventDefault","setConsentBannerState","acceptAll","groupName","toggleDetailsVisibility","save","translationKey","group","cookieElement","consentName","readonly","$sanitize","elements","acceptedState","VSwitch","firstLoad","essentialCookies","statisticsCookies","cookieGroups","analyticsConsent","pixelConsent","isAnalyticsConsentAccepted","isPixelConsentAccepted","setGoogleAnalyticsAcceptedFlag","setFacebookPixelAcceptedFlag","reload","newState","components","CookiesConsentGroup","VBottomSheet","VSheet","FacebookPixelEvent","initialized","eventType","options","facebookPixelEnabled","orderNumber","orderDetails","discountValue","priceInfo","netPriceAfterDiscount","netPrice","content_ids","contents","quantity","coupon","discountCode","discount","tax","vatAmount","finalPrice","order","AnalyticsHelper","getPurchaseOptions","GameCustomizableElementType","GameTriggerType","AnalyticsEvent","isCustomByUser","width","heigth","position","element","GameCustomizableElement","Image","minLength","maxLength","Text","maxSize","minSize","Number","Color","base","additional","filteredDefault","some","merged","concat","askQuestion","gameOverDialog","saveGameLog","customizedElements","defaultElements","getCustomziableTypes","themedElements","overridenElements","customElements","baseElements","mergeWithOverride","mapTriggerToAnalyticsEvent","trigger","GameStart","gameStart","GameOver","gameOver","NewLevel","levelUp","getAnalyticsEventParamsBase","transaction_id","item_id","price","getAnalyticsEventParams","getPurchaseEventParams","analyticsBootstrapped","app","$gtag","event","Currency","InvoiceType","firstRun","setUpInterceptors","getToken","Promise","instance","interceptors","request","config","$Progress","start","finish","error","baseUrl","jsonParseReviver","cancelToken","url_","replace","options_","method","url","transformOptions","then","transformedOptions_","catch","_error","isAxiosError","_response","processGetDiscountList","status","_headers","k","_responseText","result200","resultData200","Array","isArray","fromJS","result400","resultData400","throwException","inputModel","content_","processUpdateDiscount","encodeURIComponent","processGetDiscount","processGetPaymentOrdersList","isActive","processAddDiscount","processGetGameTemplatesForCreateDropdown","processGetGameInstancesByUser","gameInstanceId","processGetGameInstanceById","processCreateGameInstance","processUpdateGameInstance","processDeleteGameInstance","processGetAssignableProfessions","processGetGameInstancesList","processGetGameInstance","processGetPaymentOrdersForGameInstance","processGetGameInstancePrivate","processGetGameInstancePublic","processCreatePlayerInstance","professionId","playerInstanceId","processGetQuestionByProfession","processAddPlayerInstanceAnswer","processAddPlayerInstanceLog","sendEmail","processAddPlayerInstanceDetails","processSubmitContactForm","processSubmitEbookForm","responseType","processDownloadEbook","contentDisposition","fileNameMatch","exec","fileName","Blob","processGetPaymentsList","processGetPayment","payInputModel","processPay","processShowSummary","processCreateEmptyPurchase","updateNotification","processUpdateOrder","processCancelPayment","defaultCountryCode","processGetInitialOrderData","countryCode","processVerifyDiscount","processGetPriceInfo","vatNumber","processVerifyVatNumber","processGetOrders","orderId","processGetOrder","processGetInvoice","processGetProfessionsOfCurrentUser","processGetQuestionsForProfession","processCreateProfession","processGetProfession","processUpdateProfession","processDeleteProfession","processCreateQuestion","questionId","processGetQuestion","processUpdateQuestion","processDeleteQuestion","processGetConfiguration","processGetInstanceGlobalStatistics","processGetInstanceGlobalStatisticsForPlayer","processGetInstancePlayersStatistics","playerEmail","processGetInstancePlayersCV","instanceId","processGetInstanceGameCV","processGetInstancePlayersCVById","processGetInstanceGameStatistics","processExportPlayersStatistics","localTimeOffset","processExportGamesStatistics","processGetInstancePlayerStatisticsCSV","processGetInstanceGameStatisticsCSVByPlayer","processGetInstanceOneGameLogsStatisticsCSV","processGetInstanceOneGameAnswerStatisticsCSV","processGetInstanceGameStatisticsByPlayer","processGetInstanceOneGameStatistics","processGetInstancePlayerStatistics","processGetPlayerProfile","processUpdatePlayerProfile","processGetUsersList","processUpdateDataUser","processDeleteUser","processGetUser","processGetUserData","processGetPaymentOrders","processAuthenticate","processRegister","activationCode","processActivate","processForgotPasswordRequest","processForgotPasswordConfirmation","processChangePassword","processUpdateLanguage","_data","DiscountAdminDto","init","DiscountAdminUpdateInputModel","userId","offerTitle","createdAt","parseZone","toString","updatedAt","paymentStatus","isInvoiceCreated","gameInstanceTitle","invoiceCode","companyName","buyerIdentifier","toISOString","toJSON","OrderListItemAdminDataDto","vat","vatFractionalNumber","invoiceType","PriceInfo","PaymentStatus","GameType","GameTemplateDto","Environment","gameTemplateId","gameTemplate","isPublic","validUntil","playableFrom","playableTo","assignedProfessions","settings","lastPaymentBaseData","GameInstanceDto","isPaymentActive","activePaymentStatus","PaymentBaseData","GameInstanceCreateInputModel","gameId","GameInstanceUpdateInputModel","GameInstanceDeleteInputModel","displayTitle","isGlobal","questions","AssignableProfessionDto","children","AssignableProfessionQuestionDto","isCorrect","AssignableProfessionAnswerDto","instanceTitle","gameTitle","ownerId","owner","createdDate","isDeleted","AdminGameInstanceListItemDto","AdminGameInstanceDto","professions","termsAndConditionsUrl","timePerQuestion","RuntimeGameInstanceDto","RuntimeProfessionOptionDto","PlayerInstanceDto","PlayerInstanceInputModel","isCorrectAnswer","PlayerInstanceAnswerDto","answeredQuestionId","answeredQuestion","answer","PlayerInstanceAnswerInputModel","PlayerInstanceLogDto","score","logTrigger","PlayerInstanceLogInputModel","cv","PlayerInstanceDetailsInputModel","address","titleEng","titlePl","PaymentsAdminDto","city","postCode","street","AddressDto","PayInputModel","RecipientDataInputModel","GameInstanceRecipientDataInputModel","Address","purchaseId","purchaseNumber","CreateEmptyPurchaseDto","CreateEmptyPurchaseInputModel","invoiceRecipient","newValidUntil","GetInitialOrderDataDto","InvoiceRecipientDto","VerifyDiscountResultDto","GetPriceInfoDto","gameInstanceDeleted","OrderListItemDto","OrderDetailsDto","InvoiceDto","ProfessionDto","questionText","questionAnswers","QuestionDto","answerText","QuestionAnswerDto","displayName","copiedProfessionId","ProfessionCreateInputModel","ProfessionUpdateInputModel","ProfessionDeleteInputModel","answers","QuestionCreateInputModel","QuestionAnswerInputModel","QuestionUpdateInputModel","QuestionDeleteInputModel","version","googleAnalyticsId","facebookPixelId","environmentName","ppUrl","ConfigurationDto","mails","games","finishedGames","playedMoreThanOnce","percentOfGoodAnswers","InstanceGlobalStatisticsDto","selectedProfessions","totalPlayTime","duration","format","trim","InstanceGlobalStatisticsForPlayerDto","playedProfession","isFavorite","rating","startedGames","averageTimeForGame","totalTimeForGames","addedCV","InstancePlayersStatisticsDto","PlayerInstanceDetailsDto","profession","startingTime","playingTime","totalAnswers","correctAnswers","InstanceGameStatisticsDto","addedCv","InstancePlayerGameStatisticsDto","playerInstanceAnswers","playerInstanceLogs","InstanceOneGameStatisticDto","dateTimeLog","PlayerInstanceAnswersDto","PlayerInstanceLogsDto","InstancePlayerStatisticsDto","nicknames","notes","hasCV","PlayerProfileDto","PlayerProfileUpdateInputModel","AdminUserListItemDto","AdminUserUpdateInputModel","AdminUserDeleteUserInputModel","lastLoginDate","AdminUserDataDto","playerInstancesAmmount","purchasesAmmount","professionsAmmount","GameInstanceAdminDataDto","GameTemplateAdminDataDto","questionsCount","playerInstancesCount","ProfessionAdminDataDto","AuthenticateResponse","firstName","lastName","UserDto","password","AuthenticateRequest","UserRegisterInputModel","newPassword","ForgotPasswordConfirmationInputModel","oldPassword","ChangePasswordInputModel","message","isApiException","obj","isEnabled","change","immediate","VSnackbar","boostrappingInProgress","pixelBootstrapped","configuration","Development","isSizeChekcEnabled","innerWidth","innerHeight","fetchConfiguration","setAppVersion","setPPUrl","setupGoogleAnalytics","setupFacebookPixel","googleAnalyticsEnabled","canEnable","canEnableGoogleAnalytics","boostrapGoogleAnalytics","params","send_page_view","Production","isNullOrWhiteSpace","canEnableFacebookPixel","initFacebookPixel","trackWithFacebookPixel","pageView","client","handleResponse","getConfiguration","isStoreLoaded","CookiesConsent","FullHDSnackbar","props","VAlert","GameInstanceRoute","ProfessionsRoute","PaymentsHistoryRoute","AdminUsersRoute","subMenu","sub","gameInstanceList","professionList","paymentsHistoryList","adminDashboard","VListItemIcon","VListItemSubtitle","VNavigationDrawer","toggleMenu","getCrumbs","currentUser","changePassword","logOut","elevation","color","getFlagClass","getLanguage","$i18n","changeLanguage","langs","customFlagCode","apiService","setLanguage","isLoggedIn","updateLanguage","UserManagementRoute","to","href","breadcrumbs","toggleSideMenu","$router","logOutUser","login","crumbsFn","getBreadcrumb","crumbs","ToolBarLanguageSelector","VAppBar","VAppBarNavIcon","VBreadcrumbs","VToolbarTitle","VToolbar","year","Date","getFullYear","VFooter","extend","SideMenu","ToolBar","NotificationHolder","AppInitializer","Footer","VApp","VMain","excludedCountries","country","countryList","mapCountries","install","Vue","isValid","parsed","local","PLN","EUR","USD","formatter","Intl","NumberFormat","style","minimumFractionDigits","maximumFractionDigits","getCountry","native","loading","usersList","userDeleted","notify","warning","getUsersList","userList","HandleError","updateDataUser","deleteUser","getUser","getUserData","getGameInstancesByUser","getPaymentOrders","getProfessionsOfCurrentUser","customFilter","adminUsersRoute","adminDetails","adminEdit","showDeleteConfirmation","dialog","confirmTitle","cancelDelete","translationTextGroup","customText","confirm","deleteButtonLabel","cancel","translationGroup","deleteButtonLabelKey","VDialog","value1","value2","isDesc","stringCollator","Collator","toLocaleLowerCase","compare","DataTableSortingHelper","compareByDefault","isBefore","asSeconds","sortBy","sortDesc","customSorters","formatted","$options","filters","formatDateTime","plan","isAfter","combined","toCurrency","toDeleteId","closeMenus","success","filterByString","filterByDate","align","sort","compareByString","compareByDate","sortable","ConfirmDeleteModal","VSimpleCheckbox","getUsers","setBreadcrumb","GetUsersList","userGetList","exact","UserListRow","userData","submitting","userAdmin","userInstance","form","$refs","validate","editInstance","EditUser","VForm","userDetailsData","userGameInstancesData","userProfessionData","userPaymentData","headersGames","adminGameInstanceDetails","license","expired","searchPayments","headersPayments","customSort","paymentsDetails","statusIconColor","statusIcon","canBeCancelled","singleExpand","index","sorters","b","sortA","sortB","sortByDefault","PaymentStatusAdminData","professionsRoute","professionDetails","hash","adminApiService","gameInstance","paymentInstance","proffesionInstance","UserDataAdminData","GameInstanceAdminData","PaymentsAdminData","ProfessionsAdminData","KitchenSinkRoute","goto","discountsList","paymentsList","gameInstances","kitchenSink","route","VItem","VItemGroup","addDiscount","discountList","getDiscountList","updateDiscount","getDiscount","getPaymentOrdersList","discountDetails","discountEdit","getDiscounts","GetDiscountList","discountGetList","discountAdd","DiscountListRow","discountData","required","emailCheck","test","min","max","minNumber","maxNumber","EditDiscount","discountDetailsData","paymentsDetailsData","numerPayments","compareByPriceInfo","getPayments","paymentsInstance","DiscountDetails","PaymentsDetails","addDiscountData","addInstance","AddDiscount","clientInvoice","getPaymentsList","getPayment","getInvoice","downloadInvoice","cancelOrder","downloadFile","linkSource","downloadLink","document","createElement","download","body","appendChild","click","removeChild","filterByPriceInfo","GetPaymentsList","paymentsGetList","PaymentsListRow","paymentDetails","getOrderTitle","discountValueFormatted","finalPriceWithVatInfo","newPrice","PaymentDetail","gameInstancesList","getGameInstancesList","getGameInstance","getPaymentOrdersForGameInstance","gameInstanceData","gameInstancePaymentData","gameInstanceDetailsData","GameInstanceDetails","GameInstancePaymentData","filterByValid","AdminGameInstanceDetailsPage","getGameInstances","gameInstancesGetList","GameInstancesListRow","GamePlayRoute","StatisticsRoute","adminUsersRoutes","path","breadCrumb","AdminDetailsPage","gameInstanceRoute","gameInstanceCreate","paymentClient","getGameInstanceById","gameList","getGameTemplatesForCreateDropdown","gameTemplatesList","createGameInstance","updateGameInstance","deleteGameInstance","gameInstancId","getAssignableProfessions","getInitialOrderData","createEmptyPurchase","showSummary","verifyDiscount","pay","getPriceInfo","gamePlayRoute","gameContainer","gameTemplateName","gameInstanceEdit","statisticsRoute","statisticsMain","nativeOn","stopPropagation","createGameLink","copyToClipboard","loadingEmbed","HTMLEmbed","embedHTMLCopy","gameInstanceCreateOrder","disableNewOrders","copyGameLink","deleteInstance","baner1","navigator","clipboard","writeText","imageToBase64","embed","file","reject","fetch","blob","y","reader","FileReader","readAsDataURL","onload","gameLink","origin","lastPaymentData","VTab","VTabItem","VTabs","VTextarea","localeCompare","gIndex","findIndex","g","ListItem","ListContainer","GameInstanceListItem","instanceSettings","gameTemplates","submit","getTitle","timeProps","isPremium","onGameSelected","game","selectedGame","selectGame","getGamePreview","getSelectedGameTemplate","DesertAdventure","SpaceRescue","LittleWitch","FroggyPrincess","Pirates","SpeedRace","SkyFlight","VImg","modal","edit","convertTime","GameSelect","isPlayableFrom","isPlayableTo","localPlayableTo","toDate","localPlayableFrom","gameMainSettings","gameCustomizableElements","subtitle","logo","logoLink","professionQuestion","formHeader","emailLabel","nameLabel","termsLink","termsAgreementText","termsLinkText","startBtnLabel","instructionText","answerLimitFlag","answerLimitTime","gameOverTitle","gameOverDescription","gameOverCV","gameOverEmailCV","gameOverNameLabel","gamerOverScoreLabel","gamerOverCVLabel","gamerOverCVUploadLabel","gamerOverCVUploadFileLabel","gamerOverCVButton","gamerOverBackButton","view","$nextTick","el","$el","querySelector","$vuetify","goTo","scrollToNextError","addGameInstance","instance_id","instance_title","template_id","template_title","GameInstanceCustomizeForm","setting","getComponent","tag","selectedGameTemplate","saveAndPlay","openHtmlInput","onUpload","uploadBtnLabel","onClear","height","showCrop","tmpImage","confirmedCrop","cancelCrop","image","aspectRatio","zoomIn","zoomOut","cropper","cropperElement","relativeZoom","croppedImage","getCroppedCanvas","toDataURL","VueCropper","inputValue","target","files","onloadend","size","htmlInput","ImageCropModal","emitInput","VSlider","customizeSettings","maxLength200","maxLength100","answerLimitTimeLocal","setAnswerLimitTime","menuCustomize","expand","questionCustomize","gameOverCustomize","unassignProfession","notSelectedProfessions","selectedProfession","selectProfession","apiservice","indexOf","filtered","VExpansionPanel","VExpansionPanelContent","VExpansionPanelHeader","VExpansionPanels","VProgressCircular","VTreeview","shootName","shoot","killEnemyName","killEnemy","explosionName","explosion","KeySide","offsetToDestroyTop","offsetToDestroyBottom","scene","canvas","angle","speed","reset","setActive","setVisible","setVelocityY","displayWidth","displayHeight","sound","add","play","time","delta","Phaser","Physics","Arcade","Sprite","bulletTexture","bulletWidth","bulletHeight","physics","world","createMultiple","frameQuantity","visible","classType","getChildren","val","killBullet","bullet","getFirstDead","fire","Group","shipSpriteName","enemySpriteName","enemyBgSpriteName","starsSpriteName","bulletSpriteName","enemyBulletSpriteName","heartSpriteName","LivesName","errorTypes","maxspeed","playerBorderMax","playerBorderMin","widthPlayer","heightPlayer","existing","bullets","playerAnimation","tweens","targets","ease","repeat","yoyo","side","right","velocity","setVelocityX","from","left","stop","killTweensOf","speedY","speedX","isDestroyed","textures","enemyBg","sprite","setOrigin","registry","events","changeSpeed","parameter","setDepth","rowPos","colPos","destroy","alpha","completeDelay","onComplete","emiterEvent","bgWidth","bgHeigth","leftSideOffset","upSideOffset","downSideOffsetCollision","redZoneStartOffset","rightOrLeft","enemyHeight","enemyWidth","enemyBgHeight","enemyBgWidth","countX","countY","setToAll","emit","each","val2","destroyAll","xCount","yCount","deleteObject","q","w","enemy","collideWorldBounds","betweenSpaceMultiplier","createEnemy","rowCount","colCount","validShooterIds","getValidShootingEnemyIds","randomShooterId","Math","floor","random","fireBullet","validShooters","validShooterIdInColumn","getValidShootingEnemyIdInColumn","column","colEnemies","defaultKey","addEvent","delay","loop","Between","stars","activateStars","setTint","Display","RandomRGB","level","backgroundSpeed","enemyCountX","enemyCountY","enemySpeedX","enemySpeedY","speedUpEnemy","enemyCanShoot","enemyBulletSpeed","lives","levels","enemySpeedBarier","playerPozX","playerPozY","life","playerSpeed","playerMaxSpeed","enemySpeedMultiplicator","textFont","fontSize","font","textFontStart","fontStartSize","depth","depthBox","boxwidth","boxheight","enemyDestroyedText","textColor","setShadow","textShadowColor","levelText","pointsText","isEnd","temp","startText","announcementColor","setText","pionts","enemyDestroyed","maxEnemy","distance","kilometers","round","errorType","errorMessage","showNotofocation","createNotificationError","spriteName","maxLife","customziableTypes","getCustomData","createGroup","heartData","createConsoleError","getType","Add","tempImage","entity","Get","getTotalUsed","lastLife","getLast","Update","audioNamespaceClass","overridenSounds","arrayNames","getVariableName","arrayPath","getVariablePath","totalProps","tempPath","load","audio","isPlaying","currentScene","CustomziableTypes","textController","centerText","updateTimePoints","updateTimeDistance","initialize","Create","addAudio","emptyPool","haveMoreLife","showTextLostLife","playAudio","checkAudioStatus","lostLife","createText","Undefined","arcade","debug","gravity","lastSpeedBoost","blockKey","killedEnemy","points","setFPS","setBoundsCollision","allSprites","allText","addBase64","shootSound","killEnemySound","explosionSound","textControllerReplay","liveData","baseControllClass","shipData","bulletData","ship","starsData","Events","EventEmitter","underCollisionEnemy","endGameDialog","enemyData","enemyBgData","enemyBulletData","enemys","overlap","pause","makeQuestion","keyboard","pointer","createLifeSystem","respondAnswer","cursorKeys","createCursorKeys","isGamePaused","isShootingEnabled","noEnemyBulletsAreOnScreen","bulletSpeed","fireRandomBullet","deltaTime","isDown","move","checkAllEnemy","checkAllEnemyAreKiled","updateBackgroun","updatePlayersScoreUI","totalUsed","checkLevelReturn","sendSpeedUpNotification","nextLevel","lastSpeed","Actions","IncY","iterate","alien","killAndHide","destroyObject","textToShow","isNextLevel","getLength","createEnemys","lastLevel","levelMultiplier","multiplier","destroyElements","processCollider","b1","b2","answerPoolEmpty","LiveLost","lifeLost","LiveSaved","resume","Scene","enemyBullet","heart","gameConfig","CANVAS","parent","transparent","backgroundColor","disableWebAudio","getCustomizedElements","Game","CreateImage","CreateText","CreateNumber","playerSpriteName","enemy1SpriteName","enemy2SpriteName","enemy3SpriteName","object1SpriteName","roadSpriteName","bgBackSpriteNameLeft","bgBackSpriteNameRight","treeSpriteName","person1","endLevelObj","odometer","odometerLine","staminaBottom","staminaTop","staminaColor","speedOnX","maxspeedOnX","speedOnY","maxspeedOnY","playerBorderMaxOnX","playerBorderMinOnX","playerBorderMaxOnY","playerBorderMinOnY","speedBackMax","brakeStamina","heightSound","speedBack","slowDown","staminaBlockade","soundObjects","rectangle","isLeftPressed","isRightPressed","isUpPressed","up","isDownPressed","down","moveLeft","moveRight","resetHorizontalMovement","moveUp","moveDown","resetVerticalMovement","animaionTiltPlayer","tiltAngle","arrayCars","arrayObjects","spawnTime","distanceToNextLevel","odometerSpeed","position1","position2","position3","position4","unlockRoad","emiterBack","isObject","objectSpeed","stopAllObjects","firstSpeed","firstSpeedObject","passingSound","unlockBack","stopAll","backToOldSpeed","unlockAll","objectChangeSpeed","rotate","setTexture","objectSpeedInside","back","increaseSizeSprite","spriteNameVehicle","vehicleSpeed","addSprite","setSize","setFirstSpeed","vehicle","shouldRotate","lineChoose","arraySpawn","numberFreeLines","spawnPointnew","currentSpawn","addToSpawnPoint","findInx","blockLine","line","emiter","blockSpawn","speedVehicle","speedObject","factoryVehicle","Build","endLevelPosition","firstSpeedChange","setBodySize","spawnPoint","createObjects","defaultSpawnTime","objectsSpawnTime","backgroundWidth","backgroundHeigth","backgroundBackWidth","backgroundBackHeigth","playerSpeedOnX","playerMaxSpeedOnX","playerSpeedOnY","playerMaxSpeedOnY","playerWidth","playerHeigth","flagSpawn","showOdometer","turnOnSoundPassing","flagHeight","flagWidth","rotateSprite","objects1Data","enemy1Data","enemy2Data","enemy3Data","widthBg","heightBg","backgroundName","GameObjects","TileSprite","widthCenter","heightCenter","passingName","nextLevelName","engineName","passingObjects","nextLevelObjects","engine","boostName","boost","player","spriteWidth","spriteHeigth","speedBackground","peopleOrObjects","playTime","backgroundBack","allSpritesImages","randomObjects","distanceToPass","stopSpawn","speedIncrease","defaultSpeed","defaultLowestSpeed","speedDecrease","backToOldOnce","speedUpOdometerAnimation","currentSpeed","maxBoostSpeed","minBoostSpeed","playOnce","changeRespawnStateBoost","waitForStartGame","createAudioSystem","allColors","backgroundRoad","endLevelObject","createOverlapsPlayer","odometerData","odometerSet","getMaxSpeedLevel","createStaminaBar","changeSpeedNextLevel","removeAllEvents","staminaTopData","brakeStaminaBarDefaultRect","Geom","Rectangle","staminaColorCorrectType","parseInt","brakeStaminaBar","graphics","fillStyle","fillRoundedRect","animateOilSpin","respawnObjectEvent","remove","loadAudioSystem","respawnEvent","getSpawnTime","createRespawnEvent","createRespawnEventObjects","handlePlayerMovementInput","speedIncreaseAll","createObject","nextLevelIncrease","speedIncreaseBack","currentKeySides","areLeftAndRightPressedAtTheSameTime","areUpAndDownPressedAtTheSameTime","noCursorKeysDown","lastKeySide","checkAnimationSpeed","staminaBarSetScale","scaleX","tilePositionY","speedDecreaseDelta","getMaxSpeedBgLevel","speedIncreaseDelta","setSpeed","speedMax","numberMax","randomNumber","CreateVehicle","CreateObject","eventInit","twoEvent","removeEvent","clearPendingEvents","spawnCount","enemy1","enemy2","enemy3","object1","people1","tree","road","bgBackLeft","bgBackRight","CreateColor","wallSpriteName","BgBackSpriteName","source","deleteObjects","startPoint","speedLine","leftGrassLaneWidth","numberOfDivisions","maxNumberOfHoles","roadWidth","divisionWidth","divisionsArray","createArrayOfDivisions","turnOffRandomDivisions","createAndActivateWallsInDivisions","division","startPosition","createWall","divisions","divisionsToBeTurnedOff","getRandomDivisions","len","taken","RangeError","wall","createTileSprite","timeToNextLevel","wallFactory","sec","createLevelEvent","createLives","textObj","createOverlapWall","cursorKeysIsDown","timeTextUpdate","liveLost","levelEvent","tempDelay","lineEvent","getFirstAlive","BgBack","getDesertTheme","getSpaceTheme","getLittleWitchTheme","getFroggyPrincessTheme","getPiratesTheme","getSpeedRaceTheme","MazeGame","getSkyFlightTheme","desertBackground","styles","desertBackgroundGame","desertBackgroundForm","desertBackgroundQuestion","desertShip","desertEnemy","desertStar","desertBullet","desertEnemyBullet","desertShadow","desertLife","witchBackground","witchBackgroundGame","witchBackgroundForm","witchBackgroundQuestion","witchShip","witchEnemy","witchStar","witchBullet","witchEnemyBullet","witchShadow","witchLife","princessBackground","princessBackgroundGame","princessBackgroundForm","princessBackgroundQuestion","princessShip","princessEnemy","princessStar","princessBullet","princessEnemyBullet","princessShadow","princessLife","spaceRescueBackground","spaceRescueBackgroundGame","spaceRescueBackgroundForm","spaceRescueBackgroundQuestion","piratesBackground","piratesBackgroundForm","piratesBackgroundQuestion","piratesEnemy1","piratesEnemy2","piratesEnemy3","piratesPlayer","piratesPeople1","piratesHeart","piratesTree","piratesObject1","piratesWater","piratesGrassLeft","piratesGrassRight","piratesOdometer","piratesOdometerLine","piratesEndLevelObj","piratesStaminaBottom","piratesStaminaTop","speedRaceBackground","speedRaceBackgroundForm","speedRaceBackgroundQuestion","speedRaceEnemy1","speedRaceEnemy2","speedRaceEnemy3","speedRacePlayer","speedRacePeople1","speedRaceHeart","speedRaceTree","speedRaceObject1","speedRaceRoad","speedRaceGrassLeft","speedRaceGrassRight","speedRaceOdometer","speedRaceOdometerLine","speedRaceEndLevelObj","speedRaceStaminaBottom","speedRaceStaminaTop","skyFlightBackground","skyFlightBackgroundMenu","skyFlightEnemy1","skyFlightEnemy2","skyFlightEnemy3","skyFlightPlayer","skyFlightPeople1","skyFlightHeart","skyFlightTree","skyFlightObject1","skyFlightSky","skyFlightCloudLeft","skyFlightCloudRight","skyFlightOdometer","skyFlightOdometerLine","skyFlightEndLevelObj","skyFlightStaminaBottom","skyFlightStaminaTop","skyFlightBackgroundForm","skyFlightBackgroundQuestion","getTheme","empty","getEngine","resetCustomizeElements","getCustomizableElements","filteredCustom","nonEmptyElements","gameInstanceSave","saveResult","routeData","open","gameCustomize","instanceCustomize","expandAll","isSameOrAfter","getCustomizedElementsToSave","utc","GameInstanceProfessionAssign","GameInstanceCustomize","ImageTypeCustomize","TextTypeCustomize","NumberTypeCustomize","displaySummary","isLoadingData","planType","serviceName","countries","invoiceRecipientFormData","validationRules","postCodePl","addressRules","nipValidationRules","countryCodeForVatNumber","currencies","isDiscountSet","isVerifyingDiscount","verifyDiscountCode","vatInfo","vatInfoLabel","privacyPolicyChecked","termsAndConditionChecked","summaryLoading","goToSummary","goToEdit","dataDto","resultDto","invoiceRecipientValidationRules","addressValidationRules","paymentCreated","goBack","isCreatingNewOrder","getPayButtonLabel","paymentsApi","redirectUri","sendBeginCheckoutAnalyticsEvent","assign","beginCheckout","initiateCheckout","zipCodePl","nip","stringUtils","countriesProvider","createEmptyPurchaseInputModel","sendSelectItemAnalyticsEvent","updateVatInfo","Polish","updatePriceAndVatInfo","setDiscount","invoiceRecipientForm","sendAddPaymentInfoAnalyticsEvent","addPaymentInfo","selectItem","validUntilDate","viewModel","OrderSummary","gameInstanceRoutes","playableToString","checkIfPlayable","gameIsNotPublic","playableFromString","gameType","loadGame","playing","oldPlayerModel","onRelaunchGame","onStartGame","fontFamily","getGameInstancePrivate","getGameInstancePublic","createPlayerInstance","getQuestionByProfession","decode","question","addPlayerInstanceAnswer","addPlayerInstanceLog","addPlayerInstanceDetails","gameSettings","job","playerModel","_q","composing","checked","_i","$$a","$$el","$$c","$$i","setUpPlayerModel","preloadGameImages","playerModalSaved","getPlayerInstance","getSavedProfession","preloadCustomizableElements","imageElements","img","src","startGame","setPlayerInstance","validateEmail","playerName","loadingCV","wrongFileInput","newGame","saveCV","timeForQuestion","answerLimit","testMode","acceptAnswer","displayed","onClearClicked","cvPendingConvert","waitingTime","onerror","onabort","cvToBase64","VFileInput","currentQuestion","ongoingAnswer","loadingNextQuestion","possibleAnswer","mouseSelectAnswer","selected","choosenAnswer","timeLeft","timeLeftBarWidth","ms","setTimeout","answerQuestion","nextQuestion","waitForTimeUp","waitForQuestionLoad","showQuestion","answeredCorrectly","correctAnswer","incorrectAnswer","player_instance_id","profession_id","question_id","question_text","player_answer","currentIndex","nextIndex","nextId","keyHandler","removeEventListener","previousAnswer","nextAnswer","resetTimers","timeLeftInterval","setInterval","timeLeftIntervalBar","timeLeftTimeout","addEventListener","clearInterval","clearTimeout","customizableElements","sendGoogleAnalyticsGameEvent","base64","playerDetails","gameOverModal","questionModal","game_instance_id","game_type","GameOverModal","QuestionModal","PlayableStatus","playableStatus","playable","bgMenu","tooEarly","tooLate","GameIsPrivate","GameMenu","FlipCountdown","GamePlay","Loader","gamePlayRoutes","isCancelling","isCancelled","displayCancelOrderModal","requestOrderCancellation","hideConfirmationModal","getOrders","getOrder","cancelPayment","loadData","purchase","getPaymentOptions","purchaseFailed","isSuccess","orders","showConfirmationModal","orderToCancel","paymentsHistoryRoute","paymentsHistoryDetails","reloadList","PaymentsHistoryListItem","paymentsHistoryRoutes","redirect","query","createProfession","professionDeleted","deleteDialog","professionClient","questionClient","getQuestionsForProfession","createQuestion","created","getQuestion","updateQuestion","updated","deleteQuestion","deleted","getProfession","updateProfession","deleteProfession","apiClient","questionDialog","QuestionList","ProfessionListItem","areTemplatesAvailable","copyFromTemplate","professionTemplates","templateSelectorLabel","selectedTemplate","questionApiService","fetchProfessionTemplates","getDefaultSelectedTemplate","addProfession","profession_name","createDefaultQuestion","isPredefined","isViewOnly","onQuestionDeleted","onQuestionEdit","questionHover","isReadOnly","editQuestion","questionListLength","closeDialogs","getProfessionById","QuestionListItem","professionResult","EditableQuestionList","maxLength120","addAnswer","deleteAnswer","addAnother","createOne","maxLength80","resetForm","atLeastOneAnswerIsCorrect","addQuestion","newAnswer","VLayout","VSimpleTable","readQuestion","professionsRoutes","globalInfo","playerListInfos","exporting","loadingCVButton","exportCsv","downloadCV","playerstatistic","gamesListInfos","gameStatistics","getInstanceGlobalStatistics","getInstanceGlobalStatisticsForPlayer","getInstancePlayersStatistics","getInstanceGameStatistics","exportGamesStatistics","exportPlayersStatistics","getInstancePlayerStatisticsCSV","getInstanceGameStatisticsCSVByPlayer","getInstanceOneGameLogsStatisticsCSV","getInstanceOneGameAnswerStatisticsCSV","getInstancePlayersCV","InstanceId","getInstancePlayersCVById","getInstanceGameCV","playerProfession","getInstanceGameStatisticsByPlayer","getInstancePlayerStatistics","getInstanceOneGameStatistics","getPlayerProfile","updatePlayerProfile","GlobalCountsBarItem","emitExportCsv","selectedEmails","localLoading","tablesSize","goToPlayerStatistic","formatDuration","oldValue","asMilliseconds","join","compareByDuration","VChip","goToGameStatistic","getColor","availableColors","takenColors","pop","isDescending","globalStats","playersStats","gamesStats","statisticsPlayer","statisticsGame","timeDifference","getTimezoneOffset","exportGameStatistics","downloadBlob","filename","URL","createObjectURL","split","gameName","GlobalCountsBar","StatisticsPlayersTable","StatisticsGamesTable","cvId","gameid","service","activate","playerProfile","updateRating","updateIsFavorite","updateNotes","playerGamesListInfos","globalPlayerInfo","exportCsvGame","downloadCVGame","emitDownloadCv","GlobalCountsBarForPlayer","avatarColor","avatarIconColor","nicknamesTooltip","emailMessage","professionsTooltip","customToolbar","cancelNotes","showEditor","showDeleteModal","showExpandButton","clearNotes","list","indent","isTextClamped","newRating","clientHeight","scrollHeight","emailMessageBody","VueEditor","VAvatar","VRating","VTooltip","GamesListInfos","globalInfos","win","write","UpdatePlayerProfile","profileUpdateModel","updatedPlayerProfile","StatisticsPlayerTable","StatisticsPlayerGamesTable","StatisticsPlayerOverview","generalListInfos","achieviedLevel","gameInfos","exportCsvAnswer","exportCsvLogs","translateTrigger","eventTime","questionNumber","calculateTimeForLastEvent","calculate1to1Answers","diff","data1","data2","VTimeline","VTimelineItem","GetInstanceOneGameAnswerStatisticsCSV","StatisticsOneGameTable","StatisticsOneGameDeepTable","StatisticsOneGameLogsTable","statisticRoutes","slot","userEmail","_k","keyCode","userManagementRoute","register","forgotPasswordRequest","description","authenticate","activationId","forgotPasswordConfirmation","logInUser","AnonymousContainer","AnonymousHeader","userModel","passwordRegex","conditionsAgree","hidePassword","registeredUser","signUp","completeRegistration","rememberEmail","forgetPasswordRequest","resetPasswordCode","forgetPasswordConfirm","passwordChanged","userManagementRoutes","activateAccount","forgotPasswordConfirm","ForgotPasswordConfirm","navigationList","getId","num","handleResize","collapsible","column1","column2","checkboxValue","number","elementsList","navigation","html","typescript","snippet","preview","tab","htmltemplate","typescripttemplate","stylestemplate","KitchenSinkHtml","KitchenSinkPreview","KitchenSinkTypeScript","KitchenSinkSnippet","KitchenSinkStyle","VTabsItems","sinkItemList","KitchenSinkShortCuts","KitchenSinkList","Route","kitchenSinkRoutes","backRouterDestination","backButtonText","linkId","downloadEbook","routes","notFound","router","scrollBehavior","savedPosition","selector","behavior","beforeEach","next","redirectedFrom","setInternalTrafficFlag","vuePlugin","productionTip","failedColor","bootstrap","render","App","$mount"],"mappings":"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3CC,EAAOD,QAAU,IAA0B,8B,gDCA3CC,EAAOD,QAAU,IAA0B,8B,qBCA3CC,EAAOD,QAAU,kU,qBCAjBC,EAAOD,QAAU,0kF,kCCAjB,W,uBCAAC,EAAOD,QAAU,IAA0B,2B,wBCA3CC,EAAOD,QAAU,IAA0B,0B,qBCA3CC,EAAOD,QAAU,IAA0B,+B,uBCA3CC,EAAOD,QAAU,IAA0B,wB,uBCA3CC,EAAOD,QAAU,IAA0B,0B,2DCA3C,W,qECAAC,EAAOD,QAAU,0R,kCCAjB,W,uBCAAC,EAAOD,QAAU,IAA0B,iC,uBCA3CC,EAAOD,QAAU,IAA0B,6C,gDCA3CC,EAAOD,QAAU,IAA0B,gC,uBCA3CC,EAAOD,QAAU,IAA0B,0C,8CCA3CC,EAAOD,QAAU,8gB,gDCAjBC,EAAOD,QAAU,IAA0B,oC,uBCA3CC,EAAOD,QAAU,IAA0B,6C,uBCA3CC,EAAOD,QAAU,IAA0B,kC,oCCA3C,W,qBCAAC,EAAOD,QAAU,IAA0B,6C,4CCA3CC,EAAOD,QAAU,IAA0B,gC,oCCA3C,W,qBCAAC,EAAOD,QAAU,00K,gGCAjBC,EAAOD,QAAU,IAA0B,+B,uBCA3CC,EAAOD,QAAU,IAA0B,0C,gDCA3CC,EAAOD,QAAU,IAA0B,yB,uBCA3CC,EAAOD,QAAU,IAA0B,kC,8CCA3CC,EAAOD,QAAU,k6G,uBCAjBC,EAAOD,QAAU,IAA0B,kC,oCCA3C,W,yDCAA,W,uBCAAC,EAAOD,QAAU,IAA0B,2B,oCCA3C,W,oCCAA,W,uBCAAC,EAAOD,QAAU,IAA0B,6C,oCCA3C,W,uBCAAC,EAAOD,QAAU,IAA0B,yB,oCCA3C,W,gDCAAC,EAAOD,QAAU,IAA0B,yC,oCCA3C,W,8CCAAC,EAAOD,QAAU,IAA0B,0B,qBCA3CC,EAAOD,QAAU,IAA0B,yC,qBCA3CC,EAAOD,QAAU,IAA0B,+B,mBCA3CC,EAAOD,QAAU,0rC,qBCAjBC,EAAOD,QAAU,IAA0B,iC,kCCA3C,W,kCCAA,W,mBCAAC,EAAOD,QAAU,shD,qBCAjBC,EAAOD,QAAU,IAA0B,yC,qBCA3CC,EAAOD,QAAU,IAA0B,gC,qBCA3CC,EAAOD,QAAU,IAA0B,yB,kCCA3C,W,mBCAA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","file":"js/app.ec97dbb9.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 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// 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\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 \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([2,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","module.exports = __webpack_public_path__ + \"media/oceanlap.3d37d44d.ogg\";","module.exports = __webpack_public_path__ + \"img/form-background-blur.8b5b6540.svg\";","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnonymousContainer.vue?vue&type=style&index=0&id=2835cce4&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/background.b9713d40.svg\";","module.exports = __webpack_public_path__ + \"img/trophy-gold.2c3bcebb.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayerOverview.vue?vue&type=style&index=0&id=2bb9800e&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/Speed-race-preview.077f4214.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAZNJREFUOE+1kz1rVUEQht93Z9dzTWNlQAwhiGgpfoAgKAg21uH+EUnrH7BIJ9iJhc1tFBEkCCIoaVNIIogRDAlJDFHwpjjcc3ZeWcgN5ppEITjdsswzO/PMEscMHjMfRwIGg8HVlNIayY3DCu0DSCrn0yS/lYSc86y7z6WU5nq9nnW73TGS/d9ho4CzTdNMpJRqAIuSXrj7MzN70rbtrRjjGoDPJJsh5I8WJF3LOU+aWV/SfUlvQggLOefGzJYAfCWpQwHlQtIdAOcl3dut+BjARwBLJP3AFiTddPdLAM4BOEnyoqTrAPohhPfuvglgR9KimX0guVBAey1Imnb3KyGEC5LKIM9ImpJUk1wG8EPSSgjhC4B3JN/uAwyfJekEgLsAxiXNAPjk7k/NbIXk/KjOUQuhbdvbJCsz25b0QNJrd58nOZZzXq6qqsxiL0YBpwBM1nX9s9PprEt6XlSa2SNJl8tqAFgl+f0ojRWAQVGVc34o6WWM8dWunXEAW3/VOKQ3TXMjxli8lwU6MP7vZ/qXn/oLlsrMEeOV+tAAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJoAAACWCAYAAAAmPZFsAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABxSURBVHhe7cEBDQAAAMKg909tDjcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4VQNplQABseIPMgAAAABJRU5ErkJggg==\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormAutocompleteSelect.vue?vue&type=style&index=0&lang=css&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAZCAYAAAAmNZ4aAAAABHNCSVQICAgIfAhkiAAABNJJREFUSEvVlmtsFFUUx/9n9jGzD2gpbWm3Fi2+Gt3oIkQbH1AhjYkksooS/NT6CBgjoUhS+NbdVAgxAUvAT6KSJqgkJEUKJlIJGGNsInQrSRPlVaxh+y4tne3OzszOMTPbbh/bUmo/eZNJ7px77vndc+7/3hnCPBszbwRwCsAQgAAR/T05BDOvBXBxzGaO/zETgubDZeZNAEI3btzw79q1Sz98+PCl4uLiD8aDM/MrAPZ3d3cHKisrceDAgUt+v7+aiH6dzpkveEckEqlvaGhAWVkZNmzYAK/XW05EP5uBmbkSwDFZltHY2IjW1lbIshw8evTo9wsGNzU11e/duxctLS1WrJqzNceOXz5+y+yvXfFSIOh/I7g5sNkaMxcXiUSCqqouHGxmfObMGezesxunfzuLQ60H0XH3ZjqhksUrsOOZj/HmmtdRV1eHzs7OhWWcX5f/cPj5uurSpaUfmRRZieHDL7ZDyRmB02tPg1VZhzS4CA3bv7JsLFBw3VNr/lvGBfsK8gRV2D/am3h3pFOxApKNkPukFzZRyNBnMmGg78qIZXe4ha3eVeJ3/bv7U4axdl/i8oUKG4koOJ8TMNnXAFd31XYd+n+Ai8KFBwHaAqBwfMW6ksTwzficBcha4YJdsuGeGfvCvreJ+VlLEMTXo7Xdn5t9X8gXIULA7CeGNcQHNBgaI96nzgl25TnhynN86VpCR26H+toySl0YLtwkMGpAZIHBuM5k7IvWdn89Djah8u0ElEFtTmDagfn4kkc97VKBczQtKqa+aCj6DfnCvo3E/AmI/JMjMnMviLYqg9pnYC4Z7VHnAeVRMJ3LLnWd9uSJ2wB6bjw2gzsA2klFYR/fK4XBP2UodzRw8v4SJcE8QrZo3kr3q8z2EwQ8PtPMDDAbDPOZ3Ab/iiFxR5+bTICYZUdOqSfDl4iss58u+fSM4/0qhjumKtbQDLAxN1da6oA73zmj4t3LnFi83DU7ONaTwNC1tBYsx0XLJWixJJSB2YVlAh0eG0Z7Vct3ehOcBM8y0YRfTwrG+1QULqgcvhnfY+goNVds6JwBdmbZrRKa16MmJxHrSkyJa2ZjjiWGNKh3ZxeDXRJa81d7Q9HanqZU0ddLlRCo2pllDwg2mlG9YrYd3iLJApjbYeog1qXCtdQBj0+05ozf4zNuCqMFjHqcj58wxyd2e730HgQyvzzWZQFmGYSTk4N4fBKyS9zLQVhn6AZ6IyNY8pgbYpYDsR6lbejqqAyiF2cB1+On+M60uKzOy46nYbdlA6gCqCo1yLfQrJRMD2Kde+DUdDADoegvAy0A7Zk0ZzWIvGPvJ6EnQ7igtk9kXCF9a/4wpHimI3sBaoPBWzCsRHEZKVW9gEW5ZbmvOb32T/W44etvl5FV4oaU4+hPqskjvb/3HsF5DOAt2DAgPQABP4AoF2BpDH4aglKDH9GV+Vk095tQBQNVsNEt6HoAF7TUn2KFuAMslCOph2C3T9y9BleB8JD1NCvvYJ30oDXXSiQZBGzlKXDyIsgWQnN85VRwhbgNLPhhGPUA6RngcuQCkhdQukGOiRtJ0zohwgmby4lz8X+wCg4sdjxhsSStAzpS5bZDhioW4Hzi6lTwGhRDFCU0J67hEYgoca1GT7wNVxCbUTALMP4LlXEPTJfQwy8AAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"img/Sky.b6234df1.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalCountsBarForPlayer.vue?vue&type=style&index=0&id=7b80fa05&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/skyFlight-preview.152ff0cd.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ForgotPasswordRequest.vue?vue&type=style&index=0&id=8c698204&scoped=true&lang=css&\"","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"img/Desert-adventure-preview.ce7ec621.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToolBarLanguageSelector.vue?vue&type=style&index=0&id=730f753a&scoped=true&lang=css&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAAwCAYAAABe6Vn9AAAABHNCSVQICAgIfAhkiAAAB1RJREFUaEPtmX9MVWUYx59zf3IvhvwSxR9bGxiGYU5wGNBkiZkiNt10qTdXkS1YBYJmZWNO/0jAGG4FhrAFUkLNf3DWYLblJktS28zWWJu3tOKnkIr3B/fX2573nvd4zr334DlwkeZ6N3bOfd/3vOf5vN/ned73PXDwiBXuEeOB/4FCKLpPocrVCvtNqdtUFFoIAFVaremZhOjUMWaFQR+5AO/dbvsgAeLB+/6RK6MAcFZk6bTBTRYIYS4DcBGpj2+5m7RgzaKgaSX+Go7j4FJv4zUEdbltfwfAhR1sskD9Oq1p1oZVNbMADZcZhRDoB45c54DLYcAIJ1Itd0r+FeJhtUBRAIB/f27KqveDTAwEHIddyAUgMI/juGRmQ0d30XneDcOqklqg9wHgbQ2ni81fdczo8Y6PebwOnw+IAw31eMZBrzNFmiJiDEAQlwwCBzeYQhSML5d7m2bz7hdWldQCHUyMW5G7csnu1W63Y+zKb40/Dt3+1QsAS3k7o2KjkjU5aeWRYm9gIGLXw/aO7iIaZuF0O7WDCUCXek+c7x/5aRwAOgGghjeqzGiI2ZkQ/aRr+WILzXB+i/0xJFYIf5/pLsbJYNkvLK6nGighOjUnLWnH0mvWtp+H/vnlewD4KGCGBWhWL6fQdCQItUBlALAaANJ5Y1EZpg6zv2F58mupi+Zm8IlbXiGmXECCkFuoFSmoFkiJu5NN2fWSfnIK8fXJl3ubhkXrU35iXHqseID+kStpSmNtWoAKsuuEbDZRDIVan7D/yiWvI4BQ1CSPaQFSpVDA+oQUUdEGF15bzxYaONC4CPgMM6EQ8/0qtQoxACaJOVKPANDw1S68zOLrbUr8PZwKuRLj0nvv2G7Oy0s/NEfJOsRAGAB7ZqDPbsf7jgtvmpUqc3+JUIKtrI+QDALXGxYrckowAOE1hCDIpBbecCpEmKsF7ggepATwAAyoo7uIKgQA/w2F1CrxTk03A6AUeZmtCIKxg9dhZQ7i7xUOhViwmi35TTQ7ycVEoBIMJH1xgzlx/mPUoLPnt8OazNZJ2xYOIPLq5gY77rRNptnU9wf6hAn33/AuhQAZTzRDdIyWVn/XY6H9M1KaYXa0UDdjQEIafWNbCwORADBXqTyx1n7j1mGz3uiVGH+ux0L7azRGs81mA5MJoTh0OTBGaGHciXtXdV40FYVs6zNrqc16fYTfdl6J2pPrJDGBXvj7cAU9CwKA0Mb5YySoOBz+jfrG3LaHChS0Z2PZyWq1Bhpqtw5X4FSHBJAL+jWZreKJkZyx5J6ZkkIhBqUGW61WiRJMITkj5OodDjcF2pjbrjh9TwVIbsaGEICHEmwtL/zG/taRi4JC+atPCW0eD3Hjj87uHfpQcGqy3lSA5CYWQe8FApW+3Al6gw92H+6hz72Q0xLqeUnsneux0D78uqTIVkWdVLjKBwBwIJRCCISlpKabXgkmB0L87+c4gpmNLwn8dYil9ZlU6MPE2BVrlyXtzKhv32zeV3gOqpvyqH0MCFXCUnzkB5b16G+nw23fmNuOtyxeMCmq3gKFW6GDC+Iz8tJTCrNrT66jEHgVAzEZMCMyBVgdJgFRAgiM0Yd+fEC7bBsyPwGtVgfHWp83l1i68CoHhPVBUJNJ1eKQCLdCwtr0IIXcnnH7tz2l5i3PfSpJBA4bTXiAbWp3CTQcVQS8kq6kIOs4NRAVKrV0Qa2MQtgHvxUEHtfFLsnfK1pQ2XNhB2IGUoVEQCWWLrt0/gh4vE5UAgqyjgdNFmsDgJkFYgoZIrTgcnqpUqGSgkiJiVRS7UVqFJLLMuIZDNrfsSxXYumkrlhceVGixvpnm80FWfVybayvYpWUAAkHuJbP35ME8K5XjuDsszp8Ke0rdiFDhAaqG/PMgQurOFU3HMilKrJFNyCNq4JSBFRdVU73WFqtTrLX8ni8NCW9u/+oPzXxZVN2vWRXnZJltTv5I4E+wgv5W0fN7N9KeHXatdB5OtYeqs025oEX89oCjyP4ppCqTQQkKNP+ZQU1dWDQJTF8fqKBAm596RBtLy4upi/WaoyQv21UgMKD3ZlT8QKwVkdgw9YRieux9lBtp5ujgoDq6upCQk0IVFW5lxqs0/qPxz5CJAppOI4Cerz0ZAl9/R6hvWD7LYnBa7O+GMe9js9H/J1VlNJSuiZJSm0tPVwG2T8REKn5eL9kkIXzjZLff/Xhv4ful7LyysCZ1CenxNz8rCU/yeFwj/5x/XbsnqKuq24XyVbBc098yhU9h5vYoESlxOWg5uh+OvMaDdCrj/2jhABVqGxvpdgV2W4Zm05FxxjTnlo2R8dxnPbunXHNtavDTp+PPK4CSC7Dhcy6EwGxge593VYB/QMuID7iTpxrdGu0AMPDbh1owBAfp2cxFOob9CoAeBoAmJuh62gAwP8xYhqKoiyH7zWbzVxjQ7lpYJB+eoP4WD3s2VvvHBkZ8Z8HVK7o08BCh1QCJCgVwpfZF04cS9H2frpA2LhKgFhfVb483YbLjf8vNH7wT4jytUYAAAAASUVORK5CYII=\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DownloadCV.vue?vue&type=style&index=0&id=324ea252&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceList.vue?vue&type=style&index=0&id=35d45f6a&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&id=5cc119b4&scoped=true&lang=css&\"","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"img/odometer.965ad8aa.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkList.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CookiesConsent.vue?vue&type=style&index=0&lang=css&\"","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"img/small-plants.8d8c22c4.png\";","module.exports = __webpack_public_path__ + \"img/CloudR.7c048950.png\";","module.exports = __webpack_public_path__ + \"img/small-plants.316543a3.svg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAYCAYAAAAYuwRKAAAABHNCSVQICAgIfAhkiAAAAh1JREFUaEPtmz9Lw0AYxt+7xEitf9siKrh2sO2gn8DJTaVWh4J+BlE/g27qB9BNwUlF3To5Oungn6GrIFKsFUxFa3LnvZFKQV1KuCH3BkICSe7hed4fl4O8YdCyZWZnV7hlL0nO0sBYvPUanVMCfyYgZZ0JWRa+t3d7crLdvIfhycjkdCqZcErS4uMUHyXQbgLMF1fV58bUw/nZUwBWbq5wGUAlRAXe3nel+35tfXr1dgXoOcMS6OvKiXhXESyeRbiujw4n2Fg+v8ptexOhkpWXZQLKMChCtCtGUhsIl/C8NZYpFC4ZV7OV+7bBa+4F+B8AfgNs8EKUpKGim4AixXIArE4AnLl6u9elEFcsOz/v4kJdPj4XcbayG68qA4IquiCE78xT0xA4PeB32HE2lDgAXNBnFxYkSvH7ygwe7UYtfGUaMfIJeM5A4FGMDp7ikcCKfMn1GCSw9ORsnAqBZVzJ9RgmsPTkbJwKgWVcyfUYJrD05GycCoFlXMn1GCaw9ORsnAqBZVzJ9RgmsPTkbJwKgWVcyfUY/gssV0nTR2g9+UdS5ddHaIA6tc1EstQ6Tf3TNkONfjqLEG0tOZxalzbPBY1+aPWn2e+7NXlHtSbfUCdptCEI1V1/PCtjsSJChU1+t4eqNRkF8GeKgaRTCjpJaaME2kwAoapVW36maI6Dr0UF16La07igb3N8esysBOoKqLLa9++Oj7ea1r8A4FcxcKp38o8AAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"img/form-background-blur.7d37892a.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DownloadEbook.vue?vue&type=style&index=0&id=1fc4489c&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkShortCuts.vue?vue&type=style&index=0&id=520db318&scoped=true&lang=css&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAAqCAYAAAD8pHgAAAAABHNCSVQICAgIfAhkiAAABLxJREFUaEPtl99uG0UUxr/ZnThOakiipJAmkYiQKoKgkcgFLRekRbT3cOG8Alc8Q5Rn4Ipn2Au4b0XaCqkFiYq/IqUSCpBCaRL6Byexndk96NvOWNNlE9vYjkyVlVbr9e7Ont9+53xnRuEZ29QzxoNjoH5X9FihY4WO+At0nHIiEiqlEgCSF7uIqCiKgqWlpfgo2DoCYrAANIABAHsHBDwEYB+AUUrlQncT9D8BWRAXB8eYAnAPAJXyt4DXVlZWNpaXlxswvQTrFMg9/5KF2cgAzQAg1C/2/xSqb4BylEnjA8DAqdIagIoNvmSMmdNa/w6AoE6hnirVlkIeEJ/z9zEA86wTW09kYt2wvr4F8MACEcbtPVGqZSC6mU0fVycOiCnFwC/a4yWr0GULeMUenRNKFEUol8tBFEVJt92vJSAqo5SCiAwDOAkgrFarcbFYrNoUky+M+XAYGDmj9RyBvjNmbRd4dFbrj6yaJQBFPguAFr4JYLfbNdUUKKduaNHTAE4ZY0pa6+EbdTO3LbgwBinOFwYYNIGqfybYnQqD62d1wNraMcbsaK3/AHDXpuSiVfNaq0YhIhfsR7iaZ/ftAPkpxjQbsXUz/oNJFh6LnCtBxqfDsMAX3Y3jegVq+3mlbr6mg1sAtr+qx6WKyM75Qc1gmIIEYk1dA3DeD1REZnl+pWrS46WhgRSg20AEIRjThjsDeh/ACzuCqZrI6NCTWQP2RIIBwcPnQkWXuw/gk89rRhIgWRzUq6tVs8jf7xZTOG55QOd+3U8mf4qTrx2QhUohlVLrWZXaVYhA3B0Qg3jvCZBM1QWjRQtUFQkKCg9PqAbQp1YJ1k+8WjVvWyDXm65e3ttP0ymjxiSAm37wTr1OgLLpRqBRY8y81npizZiFvwVvllQwNhmoQQZ1L5Ha4zh+MBKqL+e0Zspt0cJv1MyZOpBk004p1QC6WNTpl2fAhwXvq9O4L6+wMjf6/Ybq0BTYSGkMdK7SLZO8shkni+OhGnw1DFNT+DGOq9ux1E6GwfUFHdy2bli5XY+n/xLZfGtQf2brKO1Lvim0CtENoBNML9tvOF4dAK1bfWOSD4YDjJwOgtO8cCdJ7lRM8uiNgv7YFn6xXq8XCoXUM9iA70dRtFMul/8F1OwjH3a91RpyRqDX19dldnbW1RHVYlNlmr1j1UuL29YLZwurAGoWguesIRoHxyQYz59S6CiA0pS2huCbAmG4TwB43QZKSG77cRwHYRh+b+uHwTsAB9VYR7Xah5rBtqqQD+TbNs2BQG5y+jMbqH0p0/NlAG5y6sOkqng11LV5XbtAvkq+UmlfAMBZgBuTAZ+y/9O1Uru2EFSmMbezjtaVxV87QFmVUqCtra1wYmKCjse5masNlxkc/0UAv2WAnlLnSIH4skOWDYSibdEUUrfLKMTAaeM0BTqir0pPlhFNFXKf+iCojY0NPTMzw+B8mMZj1hWdo/nroZ6sXlsGaqKUS8fseA0V+m6BlwFyAHkgvik0lOrLJfgB6ee3hjyF/Os9SbPDAmjWt9LrmUVfO0Dpvd1qonnBtlVD2QEOAcv9ML0E8ftES6r8X27qSKF+hDwG6kdVOna5foY6Trl+VsefvvR7nC3H9w8VpBSDC8RLfAAAAABJRU5ErkJggg==\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCustomize.vue?vue&type=style&index=0&id=03fd4b49&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DetailRow.vue?vue&type=style&index=0&id=39d72464&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListItem.vue?vue&type=style&index=0&id=665a4218&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/question-background-blur.ad39195d.svg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAYCAYAAAAYuwRKAAAABHNCSVQICAgIfAhkiAAAAZhJREFUaEPtmzFOw0AQRWc2pMKHSNLgICAFR6CgAXEPIiQqKhSFEjoQBwGJlpIuFCAK0+QSLKVn2LWyFhVylIyQku8ikazNt+flyd5ihml2dLa2TxxvXBJzHk5l6Ty+QaABAU+qBZFcTYuPp7ie40c3371ndsMGAVgCAn8TEL2dfr6fc/Wkcu0HJfomkWshfgE7EJiXABMfsqNheFJtkpbH3Mn3Jo55X0VGkGpenFj/m0CUyzm6ENVX7vUHX3FPVYoeABMILELAlZRxmx9Dho9ihbcgEcRaBCl+mwi0HD9Xm3eIBSmWSQBiLZMmsmoCEAsymBCAWCZYEQqx4IAJAYhlghWhEAsOmBCAWCZYEQqx4IAJAYhlghWhEAsOmBCAWCZYEQqx4IAJgVqsbn/gY3MWuhtMOK9VaGqbiU2jaPRbq7/ettjU6Keqk7o1OVzShy7SGyr5TVrkbW8B6atGYCbVaagrq1qTY4FhmOIuDFOcrVqxqOcfCKRhinTpXr5zJOTGHMa/qoZ4HCDQkEDcU4XXX+FIxmn86wcGyq+ZQCYBcQAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"img/No_game_instance_img.ed61c110.svg\";","module.exports = __webpack_public_path__ + \"img/little-witch-preview.4135fc37.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDataTable.vue?vue&type=style&index=0&id=5269aadc&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/grassR.4711aee0.png\";","module.exports = __webpack_public_path__ + \"img/background.dbb4b284.svg\";","module.exports = __webpack_public_path__ + \"media/shoot.51bdd5e9.ogg\";","module.exports = __webpack_public_path__ + \"img/grassR.fdb3bca2.png\";","module.exports = __webpack_public_path__ + \"img/Left_menu_bg.adde5184.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsGamesTable.vue?vue&type=style&index=0&id=67188d98&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/Space-rescue-preview.5e7d88ef.png\";","module.exports = __webpack_public_path__ + \"img/form-background-blur.a0874389.svg\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminDashboard.vue?vue&type=style&index=0&id=62c1b688&scoped=true&lang=css&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAUCAYAAAC9BQwsAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAKTSURBVDhPjZLNTxNBGMbfmd2yWwuLlS9biEBqW4wUjJSPxCDYUPWisZp418R/wEQTTwZOajxw8ejFEyGoV7UaEWKCByEERbHbgIEC/aJ0t93S3e2u07LBEIn0d5mZJ+8zzzsfFJRBo+24aWho6E1Lc7PMh8Pfi1pZRp/PN9ze0XnL2919A0BfDoVC85jsZnU6HGeNmn/o6+31O5yuB2qhANHNKPJfvPysyW6zUYFA4GGX1/vC4/H0qIocozFe4aoqawZ6To+ylVb96rXrYxaLxayoCiCEwelyVciyLKHh4ZElTddciUQSbHYbpLe3I/FYjOfM1IC9xQ21dXVGNkCBpG6nUpDNZubQo8dPlJ2dHJ3JZsFubwSO44yyg1mPRMBkoiWs65qMMQVtbaf+a5LzeUgmk6BpWrFlBkuStMiyLKiqapT8RRQEEIR0aV7s6MvMDOi6Doosr1HkghrO9ff7fi0tAaYoIAcHhmFgfm52Yfbz27rJj5Oj4fDycxNNsy63u5UYUTwWfY3Ic9TevXefFwWxOhaPQwUxFRRl/tXE+GC7symo6fpmcPrrlWIqeYYTHZ1nbq+sLL+kxExGojBa7enrC8hyHpGDRyfGxy6sRtZj1mquFWN0U9XQU1KnCWImHeL5yXgiESv9HJ7nFzCCKE3Rg9NTnwKLP34uFHWGYfWTzQ134lvi+1Ra+F3UDoS0XW1MS5A1c+m8N9vlcY8Y0h7YGEtENjZ3r9CArPNCNjdVZTH7DWmPfcaD0Ap6kKs0d5P0o4ZU4lDjWnQrmMvLlJmt8BlSiUONCKFvJpraaGo4tq/dwxPXN/RUOvtBUQt+q9VqqGUYi6QzuWB9TZXjCMu0GlKZRlF6JyuFLZrC9bsKwB8a4RXIcNlJNgAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"img/enemy-bullet.d0c9dbc5.png\";","module.exports = __webpack_public_path__ + \"img/si-bg.d529be2b.jpg\";","module.exports = __webpack_public_path__ + \"img/CloudL.b541e8ed.png\";","module.exports = __webpack_public_path__ + \"img/shadow.74b99b46.png\";","module.exports = __webpack_public_path__ + \"img/ship_enemy2.9ed0dd74.png\";","module.exports = __webpack_public_path__ + \"img/object.ed39c594.png\";","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn-bd\": \"9686\",\n\t\"./bn-bd.js\": \"9686\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"25548\",\n\t\"./bs.js\": \"25548\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-in\": \"ec2e\",\n\t\"./en-in.js\": \"ec2e\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./en-sg\": \"b7e9\",\n\t\"./en-sg.js\": \"b7e9\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-mx\": \"b5b7\",\n\t\"./es-mx.js\": \"b5b7\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fil\": \"d69a\",\n\t\"./fil.js\": \"d69a\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-deva\": \"aaf2\",\n\t\"./gom-deva.js\": \"aaf2\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./oc-lnc\": \"167b\",\n\t\"./oc-lnc.js\": \"167b\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tk\": \"5aff\",\n\t\"./tk.js\": \"5aff\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-mo\": \"3a6c\",\n\t\"./zh-mo.js\": \"3a6c\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\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 = \"4678\";","module.exports = __webpack_public_path__ + \"img/LittleBirds.f511b549.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kitchen-sink.vue?vue&type=style&index=0&lang=css&\"","module.exports = __webpack_public_path__ + \"img/form-background-blur.0e3c5489.svg\";","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAABHNCSVQICAgIfAhkiAAABUxJREFUSEvll1tslEUUx/8z323v2+22wNI2IJSCrYIJIYqSiEbQRks0cSHRIDyRQFKJhgcTY9wYn9RoYgWNMZEHQ6JNjIpAAROqJooxCA8GFAptahEL7bbbve9+3xwz025d2y5s8dF5nO/M/M7/3GaXocrV2d5sdR3ryxMRY4xRlccqmrFqLti7ZeVKkXNaHC4MjfTL4YB+IdZ9vlDN2Uo2twTv7WhZ59h4FwwNjMEvCKcZ6DNGdEhG4HbhNwU///iq+4mhB0RmyGdaREAqZ6NoO9+A6KThq+t6p/vH7O3AK4KnoMdB5GsMe7Ai4lfQ4fEc/hrPIl8UF4nY8Xof33c7YZ8TvHfLnZuEoM8ltCnsQWtTjRLlCEI6byOZLeLStSSyRbuPwL7I1EdeOXiwNzcf5bPACuqIwwCspjovWhuD6r6xdB5CEPxuE4II8WR+El6wE4yxb8P1kW2xecD/Ba4EHZnIIZ7Kw9A5LJ2jLuBW8Ezexq+D48gWHOlbT7g+8lS18GlwZ8eqB0lQDwNc5eEtQUth9Lp01PpMmLoGzjgyBRu/XIkrJ+YDV+DOJ9rWkLA/Ygx3N4Y9VttUTmdC3aaGkM9UPjDpoaFD41zlfb5wtnPjUpfbpW/WOH+v1mc13XNHSKmROb2R+KdeyqHlRWRoGixDm4anc3aOmDjEBe25WZ8rxbs3L39SN7SPa7xWTXPEjxqPifF0HhPZIoq2QCVoIl1UoW6o9cJj6cr+bH8c2bzTD8IHdfdG3o7FelUOZi4mZ+/uR5vbdF17w9C19kjIjcZaD1ymhtFkDkSEgMeYdXBcQifzqsLeGPZC1ziGx7Oq2nNFp4cRe73r6G8/zDXbleJYbKN+/aehbZzxHaaubWpZHEBdwAJnDI5wVBuVvwpSqcxraUmwpWtYWONGwRbov55Sg0aQeLXryMXX5lRc2ty1a61hDk3sAfgel6m1tET8qPVbMDUuB4VSLle50vILNc4Q9JoIeS0MJ7K4MJSA7dCgY9s7Dxy/fGpWqMs3YtFW80ZKvMU4PeYy+IrVS0LqIkFCDgrMVDrzMpkemW/Z479fTeBqPDNORC8WtPSnHx7+M1NuP2tyvRBd7y6kx97kTDzrNvWatcvCkL2bLzoYHElPK680Hmt9FsIBF64MJ9E/nILtiK8dlnvu/SODYzcFy4/7tq/25kbzXzGGh2VFl+CymK7GpeOEqcjP4vvdBhYE3MgUbZydHCzfpzKFrQd7B4bVwalV8XWKRVt9oxmnB8AD5XAZ8pFEDgVHqEdj5tI5Q0PYq4rs3EAcmaw9IBzasf/Epe9uqbhkIOHxrHOMCBskfM3SkOpXWeXJXBHZvF2a09N3ypZaHPJAgFRPJ7PFCSJ6ev/RSyerBqtWK4O7DA3LFvkQ9JjwWvpklafySr10Qja0ZXCEfJPdcObKKMZShSFuO+3XgpcvdHdDvSaq9ysVyYxq942knS8BLDcNvqTOb6k+rw+4oHOuQu4IofIulbqnRui5gTGkcsUJIUT0wLG+E/NSPN3nHWs9hki+zAnrOecPcQ4sDLrgNnUsCLpU1cj8mjqXUwtj6QLO/5GQafmZwXmp62jfqfIJVpXiElz+xLU5e4QJbOScPcMIXk3jQQmT04tzpuBFh5DO2dIXuf3JBs/qnVu7u6fDXHWoy0MUjUa1ZWNnfGmd3wdGLWBaB4AgY2gjgs0YSxBRkAhjjPPTdesWbZ/roZiX4pn10NneHBAF3SgWsqbhN++S3zVbXHN0HuEOKJxv6I31VnidqimuKmykANXU0Sg0Wb23+sfxnxRX4VBFk/8f+G/DhaQ9BCNfjwAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAECAYAAACHtL/sAAAABHNCSVQICAgIfAhkiAAAADhJREFUGFdjZEAFDUhcZDZIGKscI1QDTBJdEbI4NgMaQAaAJNBtQ7cRGx8sBnMBmk/gXGwuQ1ELAFfZCYXqJUxfAAAAAElFTkSuQmCC\"","module.exports = __webpack_public_path__ + \"img/background.2519ec1a.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceProfessionAssign.vue?vue&type=style&index=0&id=3be666ab&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/background-menu.b0dc2fe6.svg\";","module.exports = __webpack_public_path__ + \"img/game-background-blur.04db68de.svg\";","module.exports = __webpack_public_path__ + \"media/shoot.fe3f5c09.ogg\";","module.exports = __webpack_public_path__ + \"img/odometerline.eb4b8d91.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAA7CAYAAAAenliRAAAABHNCSVQICAgIfAhkiAAAA6hJREFUWEftWU1oE0EUflML/lzcVoQmFyNFEQONoBZES6OexKZNKYqH/qyHeq4eFClqVQT1IOLFQy9bFBSldm0q9qKmVBGKYFMpiFJIL22g0O7JH9SMzIRZJ9nZn6y7TQLdS2bfvN395nvfvHkzQeDyWuqWByKj6hXR4xhgYlHTosW8GhXjzPuWBMiKLIfCqtrDA8EAUQRAR/1lMki7djYt0F8MkEYACu+fBZjPaFqeje93xMhSpxyNjKlvzNgrBOImXJULhI2eD4WIEUG4LAVcNCMlARKQpLsAEEEAEgDs4YXpdLZxAnbPSECSkgigmf8oz4gTMK6BrMiyBH9QhHwknBghjFAm2OUWCABMz8ba++h71uFUjaJoltOXn6rDcsDJoB37dCiL1DfVEj+89aGSXANSWYwQbVRVQTPGEGpIqDKJn18amYnFFYQgnc3CBNOKntCCkjQAAHRZ9xpAoZpZiADg6oKmke9C5QLhRqMPVMSglZ8njJQcCAMw9fS1zkTvg++0PdSUVzNRW8/kEP0d7Nqo+zeeOFIol+I14juQla7TdFELJ0bIlDWdtj4BUWZj7bR8REFJwsVM2b033+v0njp2nbaf3KFrZN518lyK3j9+eUm33+84StuNO77pNjbAygWyv+eiYfRWhuUP1/TuR+pm7xhZA1JIe334l26q3XfZNCosJCwcvKMnYi0bIFNfN+mDG99yj7Z/Hqo1MNP2vNOULU8Y8RMIrQeG5booAMrbOoiG5C0QPNGhZGgR7bge6d/9zIBr/dvlvNCwe7NwsRd8Pn+ANYtf9FYNCIPI72sirS90FkSCZJ2FzBC7yOaIkbIDQk6Hfmdz5UDDqCojgG2k3fvuFcU6deuHgaXxbuOOsO3MbG5dubBB9x88mFt9Z1rjQ+RUCbKQNFTxohnCb8K9BOJoy8kD8gvIp1j8bBWgj/y3LA9qeCDpTNpA2o25OWrrr683ZlaL0IjYrzwg/FQWjciJjQmXZzBUF6KPOmZk1YGYnRj5AQRjPB8KbKfiMzDiJrMWZlhyL8rE3Bpjvtb8T2b1Hciu2//2ME7EaOfDGCF5JIthuroa0jWKYh8av4BYZlbRiZFfQByfGLEZIhKcVfFjVxix/tTocXOx8kdXZQNEFBKrQkckUteFEc9ISYAEJYmeJDbExqIIIfrXmJU2rEpGnhkrRlgfxjg5k2jJVfHsfMSuPvUyNLyomXDLD4hdVvS7X2fE7w/ZvR+RjGrntBr9fwHB8OtOM228rgAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"img/form-background-blur.7d37892a.svg\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GamePlay.vue?vue&type=style&index=0&id=4f5bc410&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/odometer.6a8bee17.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkSnippet.vue?vue&type=style&index=0&id=6d8bbc3c&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=style&index=0&id=617bfa75&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/froggy-princess-preview.17979986.png\";","module.exports = __webpack_public_path__ + \"img/car_red.b3e2a230.png\";","module.exports = __webpack_public_path__ + \"img/form-background-blur.cdf2e80a.svg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAUCAYAAACEYr13AAAABHNCSVQICAgIfAhkiAAAAP9JREFUOE9jZKAQMJKqX9Mp7D9Mz/V9qxhxGuDj4wNWuGXLFrgamOYp85aCzchJimbAawA2zYun9zF8ZBdHGIDNJpCsqqrq/9u3b4MtQLaZ/+dLVANg/gFpgLFBGkF8FllDeBDBbMZpALpBIENgNoM0gwDI6SADQCA2swhMw8PgPxCABYAAZLu6ujrD3W9cDKAAg2kCGQAKOKyxANJ069YtBlNTUwYJCQmwGpABuAAoCuEuMDExgfsfJAgzAMS+efMm2AyQi5D5IDbIm2BTKDYAZAhFXgAZQHEgwgILlh5IjkayExLVkjJ6fIMMJioz4UooFGdnXAYTXaDgTMNoEgAxY8OVY5BmkwAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"media/speed.3e9c756b.wav\";","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CookiesConsentGroup.vue?vue&type=style&index=1&lang=css&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatus.vue?vue&type=style&index=0&id=2760a69e&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SideMenu.vue?vue&type=style&index=0&id=2c3fb04e&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"media/crash.9984670d.wav\";","module.exports = __webpack_public_path__ + \"img/stormcloud.3e5eb137.png\";","module.exports = __webpack_public_path__ + \"media/select_007.3b73f3cd.ogg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJoAAACWCAYAAAAmPZFsAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABxSURBVHhe7cEBDQAAAMKg909tDjcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4VQNplQABseIPMgAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAmCAYAAACoPemuAAAABHNCSVQICAgIfAhkiAAAAMhJREFUWEftljEOgzAMRYkEA2XsfehpuAf36GnKfRjbDu1QYckLy+cnlhqhnyWDjfP98gGnJmit7/u8lbr2k+2lK5UW8OerFRbVoNcJIyZh0QTYerpKEWMJsPnymIixBNj8bI+hnzaKI6HnE7bv+Pl52Bw2dLe65rFwYaVecEGXdjSIr+9iey4515OqFYbejqPx8Ks8ejDKq0YYsgCKo0bP/x1DBNh4NjH2IDZfwkSMJcDmy2MixhJg8+WxvxErnSb2wsOuMlrYD10FXCVcN1Q0AAAAAElFTkSuQmCC\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsHistoryList.vue?vue&type=style&index=0&id=724d51f8&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuestionModal.vue?vue&type=style&index=0&id=9378928e&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/plane_enemy2.fcf55672.png\";","module.exports = __webpack_public_path__ + \"img/car_green.a8dbac96.png\";","module.exports = __webpack_public_path__ + \"media/engine1.8797cdb1.ogg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJoAAACWCAYAAAAmPZFsAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABxSURBVHhe7cEBDQAAAMKg909tDjcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4VQNplQABseIPMgAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,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\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageCropModal.vue?vue&type=style&index=0&id=b34b2740&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/trophy.9d70c14b.svg\";","module.exports = __webpack_public_path__ + \"img/grass.f5543be6.png\";","module.exports = __webpack_public_path__ + \"img/threeBirds.3bfd5dc6.png\";","module.exports = __webpack_public_path__ + \"img/404.f8e0adee.png\";","module.exports = __webpack_public_path__ + \"img/water.9a6ba371.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayersTable.vue?vue&type=style&index=0&id=2d3dc46c&scoped=true&lang=css&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAABHNCSVQICAgIfAhkiAAAAHVJREFUKFNjZGBgYGhlMP0PotFBNcNpRmziYEGQpjwjLxT5See2wfnomhlhtqBrgukAacaqCZcGkEZsNoJtwqcJm40EnYesCcQGORVnQGALNZhT4ZpAioh1JmWaiLUF5CLyAoLsICcrcvGFHNZkRFaCJSdrAACUrVT1XMyijQAAAABJRU5ErkJggg==\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCreateOrder.vue?vue&type=style&index=0&id=5cb58dc2&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"media/explosion1.aa45cd01.ogg\";","module.exports = __webpack_public_path__ + \"img/question-background-blur.13a1a2b4.svg\";","module.exports = __webpack_public_path__ + \"media/explosion.f18500be.ogg\";","module.exports = __webpack_public_path__ + \"media/explosionCrunch_000.e99cd340.ogg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAYCAYAAAAYuwRKAAAABHNCSVQICAgIfAhkiAAAAS1JREFUaEPt2LEKglAUgGFvU1Eg7g4R0QtFSw/Z0NBDBC5BW1vRUkMiFA1ih6YSynPMu9jvFHi84sePt3IBBwIeBJyHNVkSgYCwiMCLAGF5YWVRwqIBLwKE5YWVRT+GVRTFSHhCiBCoENg7587lmW9hzWV4AisCFQIrCWtNWHTStABhNS3Kek8Bc1hTuWj4gpfI5wOYCJQETrIVpr9shQtZYAMrAhoBy5d3wtKIMvMU+BbWTM6PX5yW8sba4oaARoA/SDVKzJgFCMtMxgUagdphxXHcy7Koq7kJM+0VSNPbNQh2d/WvwiqKKBqFg0HYr5rjfLsF8rxzOR4Tiev9qP3GIqx2B6N9OsLSSjFnEmg8LNPdGf47gdpb4d9J8cAmAcIycTGsFSAsrRRzJoEHVbhHGTxtnXAAAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"media/invaderkilled.f625fdf3.ogg\";","module.exports = __webpack_public_path__ + \"img/question-background-blur.403a4469.svg\";","module.exports = __webpack_public_path__ + \"img/ingamehr-logo.b3069841.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemHeaderLink.vue?vue&type=style&index=0&id=64bf595c&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/question-background-blur.e8c7be69.svg\";","module.exports = __webpack_public_path__ + \"img/ship_enemy3.13364295.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionList.vue?vue&type=style&index=0&id=fcb98150&scoped=true&lang=css&\"","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"img/background.64a910f5.svg\";","module.exports = __webpack_public_path__ + \"media/explosionCrunch_000.6f6b09b1.ogg\";","module.exports = __webpack_public_path__ + \"img/ship.280110bd.png\";","module.exports = __webpack_public_path__ + \"media/killedEnemy.f007e368.ogg\";","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"media/killedEnemy.aa45cd01.ogg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Register.vue?vue&type=style&index=0&id=13980d64&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameOverModal.vue?vue&type=style&index=0&id=7caafb16&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/grassL.459ac137.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmDeleteModal.vue?vue&type=style&index=0&id=277ec36e&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsOneGameLogsTable.vue?vue&type=style&index=0&id=2c631e8b&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/question-background-blur.12391fb3.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatus.vue?vue&type=style&index=0&id=74009b09&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/road.6e0d0387.png\";","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageTypeCustomize.vue?vue&type=style&index=0&lang=css&\"","module.exports = __webpack_public_path__ + \"img/game-background-blur.400edf4a.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayerGamesTable.vue?vue&type=style&index=0&id=74b97a34&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/plane.620030fc.png\";","module.exports = __webpack_public_path__ + \"img/form-background-blur.8b5b6540.svg\";","module.exports = __webpack_public_path__ + \"img/background.73ec1415.svg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAbCAYAAABr/T8RAAAABHNCSVQICAgIfAhkiAAAAy9JREFUSEu9Vr1v00AUf8/nRKKtQlgAkVZ1JGjDRPgLSBeYEK06ICEkwobEQDvACgx0qtTytbDQ/AUURpamMDHRrUmFiCsS8TH0Y6DQ5uzHOzt2ndC0tlE5yTrbd+/93u993DuEfxgrGVFExNqZulyMqgajCnj7FSghvlTfGsAIg5ej6IoFXEtDeqdP1AAwrcCQ6OZQw5o7dOBqv/6AQe57QP+FcSdbBW5LmT37DcxDZVzJaBOI2kwQZLguI4csskAlI0zO5EEg4uAiT7Saa1hGFLZOXkQR8DO5BapkGX4xV5eFKHr2BF7JQB5RP+opklKuevGrZvQlNvWcw9aRZruJSsMNq3gQMBngVoAJG23ATtL06gu9ly7nU8XbIOursP5kypmdQfSJgU53gCrwhxxjleVdB4PmJegLvGEsYbr17rvaSxpj6StgyiUsP7yHtWsXweJtv1sk99LOS2WNYIklSkMNNe8OHxQxrVMzy4zNNuBqRsyx9Teyn7d2pZ4+Anw25X/bNsEOf22zq202ZodnyajbbalCm7xlgYM/39O0Pp7oSZQ4Inn21CKzLXjK2hgnBrIzA++WfSCcugdQer6fF/21nxbBFhvyiw2RAUOSRPYRDbUekHdTX2D6L2D1o5LRZ49Pv7jTN37dWf9x6yrIt2/YEQiCKSRVMvFI8iP4VfCc0Nx/njfUu/KICo0yQnkm4Pj54bo11uZqb3H5JBhCiALLFLgJGFypeU4FP8tD0e+6iTZtaeVVlYSqY2UMClFzNrsl5M42fScNKwH3lYOYKY2KAnCQm8jaBuF4sIOFAlbKqv2C64+ZB2sY6DW7brQbwaahF9hAVUbAGX3Mq+E9Xd1NSaVfL7OVFzrWD6xhBp9n8Cts8IhXw5GA21qhf07bk7mGPbtf3LmODYmJGotMJs2mvze8q0+JUdDwlR9fRgvbh6Uhio67zd3LQmhgtw/r68EYI8nznSdV2KwPDawU+i2xpT1OHw5UQFgbObNbx6orQZuc0U7HiTMiMQ7eLOP24ViM1UGi6TrfLp0z5HGuISfisI1UTh6AuigQCSO5ZZWzG25TjzMiuToOQDeZP9n5TStronaEAAAAAElFTkSuQmCC\"","module.exports = __webpack_public_path__ + \"img/plane_enemy1.f691caaf.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemHeader.vue?vue&type=style&index=0&id=1bd44403&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableQuestionList.vue?vue&type=style&index=0&id=a798e0dc&scoped=true&lang=css&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADYAAABbCAYAAAA4L3ZZAAAABHNCSVQICAgIfAhkiAAABDJJREFUeF7tWUtS20AQfSNKZBm7bJwtnABzA7gB3ICcAFjGXsRZGJY4JwicINwAcgLMCSDL8CmbZawwnRpZSgmVZPWMRDRQow2U1TPdr1/Pm56RwBt9xBvFBQfstTHrGHOMWZIBV4qWEMEOwzHGTpUlho4xS4hgh+EYY6fKEkPHmCVEsMNwjLFTZYmhY8wSIthhOMbYqbLE0DFmCRHsMBxj7FRZYugYs4QIdhiOMXaqKjIcTCaNd3/kHgGPRN5Fv9Mc60xtFWNHk8mqDNAQeDomiIYAuhGYx5nvrQ6azSkXnDXAhrcP3wBsq8AF0HgGgHAzW/Y2Xh2ww7uHfRCOF7BxNfO9TSuAqTXCCWR4e78rIBRbuY8Q3tanleYFtwwj1nXMebbD20kXkOcAHfQ77ZP0qFgYJNHPIlBqLIE+Zs2zMBm8UPlWMah4nSSDUoDUTH4gzxPCsHByInzpf2gN+BHMLbXEIw5MlVj8f9KhH2BVMZVc/KqMlI0kTOcs4oYLaj43/eh12psvBkytBUCEC1yAxpEcr4EwCd0LJdNhot4ngyBgqoDGfzUD1BaNeH4WY5wFrhkwx9wYFKsUXyOoQmB1gFIlG/jeGmerMFLFw/v7bUjxnVMzldt4tNNrt8/KzJu5xpTi+TM5FkIpGU0BEbU4NKVQ3UQXoLApFUK1P+H79TKBxGNN9qwsv7nikZT2ooBVnyeA3SK74vd00eu0w+2h7MNSxUVOKl6HpZQwGWcFwCZdAXlZNsNViYbWPpYXdLp9KgvOpNnN82nMWNWgogBPCVgPfG/rxeS+KPsKWBUlmOWHgHFZcCUYKz5HFSVnwfvSImIjsNKgCluqrIyqCxf1+29guhxIdaqtZGOOfD0K3+t+ajZvSrAdDtViLHnhAuAs8L2D5UCOoiPJXulgDK4ASqvi8PZhJIBnwRPwtd9p7avJK9moK+gRtfexzMAFDnorrVE8GRPcFQROMm+l/jewvD0r3bAWnAhOCd4o8HHjz+S+EPicLiOCt6F741uqFMNuP5DX0V3G47zDx0l8yXJ0N9kk8dQQS0tjCqQ6bqQF5bTXaf1rkvP2wKo6e7Z4hIGTHKkjDGFpX2U97gySnb3aWD3f26FADiAQHmtIopG+ZYrmUxc7zx7TG6ks1rRUMT3B8NfDIKOknrGT5TRnHKzoFVXAmZlPCUoWsLy1aAWw+ZcReZn+gMBZJ2osBfLaylJMC4q6CCXQiHMVncNYYQnrNADGayxiLNycAe9ER6YzSrhSUGxV1MkUxzYl91e9Tiv+wMcZzrIxZow1e45RAlglnXzlcm8KLt4XdT/m6firhTGdAE1tHTDTzNU1zjFWV+ZN/TrGTDNX1zjHWF2ZN/XrGDPNXF3jHGN1Zd7Ur2PMNHN1jXOM1ZV5U7+OMdPM1TXOMVZX5k39OsZMM1fXuDfL2F8DMtNrs6mOpAAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"img/game-background-blur.7479638b.svg\";","module.exports = __webpack_public_path__ + \"img/ship_enemy1.410ec202.png\";","module.exports = __webpack_public_path__ + \"img/line.c075eb2b.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotificationHolder.vue?vue&type=style&index=1&lang=css&\"","module.exports = \"data:image/png;base64,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\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListItemHeader.vue?vue&type=style&index=0&id=ff2a4b14&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/rocks.6224434c.png\";","module.exports = __webpack_public_path__ + \"media/applause10.0e462cf1.ogg\";","module.exports = __webpack_public_path__ + \"media/select_007.3b73f3cd.ogg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsHistoryListItem.vue?vue&type=style&index=0&id=933b61cc&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameSelect.vue?vue&type=style&index=0&id=26c450c9&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/cf-logo.31328f66.svg\";","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"media/RaceCarEngine.78c720cb.ogg\";","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAABHNCSVQICAgIfAhkiAAAAhVJREFUKFNtUs9rE0EUfq+JsBVDNgXrj8O2mnppkUL/gggWBC9WqAcVPFc9uLVik0Ozq+KmFrobsT2IXgRzaA+pqHgoWj1IEerN6KVN7Z4KSnYiMTuh2TyZxVk8OKfhzffe973vGwQAoNpq0m80jVbQMdVDJxP+z8okxtGmNumiljo2xgROHpQXb7usFp+ue/m7sw5n3xxlI8/YwEVUA57QH31yHceJsChYsGe0TqvjSYA9A9LjDvze7sDuxiQcHHkCGHsGif7zePzSTsTUdF/YUgKtnVNh+BrxRst68PjdRP7ePFL1eZ9sEAT6ndcM/VpFUz4bdRxdrof7ESU7Abe6dl4WMH3BjZT8szcSry3A+vUu6D1h4ZDpho1bSxpUSzocHbb9xEhkRkRARBp8NUA84oEBu7tnyJ2+PUXWmc0UZMrEvq/g7MKaZ80VVWh59z+Wpq4iEdm5XO7GzK3Lfcr+I9NAXsH/8SUcoKQGdagu25IVBo1f8H4MkPwtDbvTbuhefF8BoJll/VdA3SwRnF5CRGRUyWtSpln84KHvvlrkwV5OBCjcw1MrLBwQi1m5N70T1tzDMB+RoxgkDMOg7S9Kp2QOwkHgu/OgHL4pmEJzZI5xMDFyKg6mWFzXdWbPnFV5gxd40M6GCoiSiFiXSkLqMNRMmQDAAABTTJdysm/TzLIsR9YFPvpPf4NV/ycHMmWQdYH7A/xnOGaXGBSmAAAAAElFTkSuQmCC\"","module.exports = __webpack_public_path__ + \"img/car_white.d1a45367.png\";","module.exports = __webpack_public_path__ + \"img/rock.9f7da4de.svg\";","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CookiesConsentGroup.vue?vue&type=style&index=0&id=6b92c5aa&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"media/shoot.11e5f155.wav\";","module.exports = __webpack_public_path__ + \"img/grassL.d9c3248f.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivateAccount.vue?vue&type=style&index=0&id=de609e52&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"media/explosion.7f1f8b03.ogg\";","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"img/odometerline.724301f3.png\";","module.exports = __webpack_public_path__ + \"media/select_007.3b73f3cd.ogg\";","export class CookieModel {\r\n constructor(\r\n public languageCode: string,\r\n /**\r\n * Flag indicating that the user has accepted the google analytics consent.\r\n *\r\n * If undefined or false, then the tracking events cannot be sent to google analytics.\r\n */\r\n public googleAnalyticsAccepted: boolean,\r\n /**\r\n * Flag indicating that the user has accepted the facebook pixel consent.\r\n *\r\n * If undefined or false, then the tracking events cannot be sent to facebook pixel.\r\n */\r\n public facebookPixelAccepted: boolean,\r\n /**\r\n * Flag indicating whether the cookie banner was shown or not.\r\n *\r\n * If undefined or false, then the cookie banner is displayed on application init\r\n */\r\n public wasCookieBannerShown: boolean,\r\n /**\r\n * Flag indicating that the user who is visiting the page is from the company.\r\n *\r\n * If true, then the google analytics are disabled.\r\n */\r\n public internalTraffic: boolean | undefined\r\n ) {}\r\n}\r\n","import { i18n } from '@/plugins/i18n';\r\nimport Cookies from 'js-cookie';\r\nimport { CookieModel } from './models/cookie.model';\r\n\r\nexport default class CookieService {\r\n public static cookieName = 'settings';\r\n\r\n public static getCookie(): CookieModel | undefined {\r\n const cookie = Cookies.getJSON(CookieService.cookieName) as CookieModel;\r\n return cookie;\r\n }\r\n\r\n public static setCookieProperty(key: T, value: CookieModel[T]): void {\r\n const cookie = this.getCookieWithDefault();\r\n cookie[key] = value;\r\n this.setCookie(cookie);\r\n }\r\n\r\n private static setCookie(cookie: CookieModel) {\r\n const domain = this.getCookieDomain();\r\n Cookies.set(CookieService.cookieName, cookie, { domain: domain, sameSite: 'strict', expires: 365 });\r\n }\r\n\r\n private static getCookieWithDefault(): CookieModel {\r\n const cookie = this.getCookie();\r\n if (!cookie) {\r\n const newModel = new CookieModel(i18n.locale, false, false, false, undefined);\r\n return newModel;\r\n }\r\n\r\n return cookie;\r\n }\r\n\r\n private static getCookieDomain() {\r\n const hostName = window.location.hostname;\r\n const domain = hostName.substring(hostName.lastIndexOf('.', hostName.lastIndexOf('.') - 1) + 1);\r\n\r\n return hostName.startsWith(domain) ? domain : `.${domain}`;\r\n }\r\n}\r\n","import Vue from 'vue';\r\nimport Vuetify from 'vuetify/lib';\r\nimport DatetimePicker from 'vuetify-datetime-picker';\r\n// (Optional) import 'vuetify-datetime-picker/src/stylus/main.styl'\r\n\r\nVue.use(Vuetify);\r\nVue.use(DatetimePicker);\r\n\r\nexport default new Vuetify({\r\n theme: {\r\n themes: {\r\n light: {\r\n primary: '#30ccdd',\r\n secondary: '#e85c39',\r\n background: '#e0e0e0',\r\n blue: '#1AABBC'\r\n }\r\n }\r\n }\r\n});\r\n","export default class StoreTables {\r\n \r\n idTable: string | undefined;\r\n value: number | null | undefined;\r\n constructor(idTable: string, value: number){\r\n this.idTable = idTable;\r\n this.value = value;\r\n }\r\n}\r\n","import { ConsentBannerViewState } from '@/modules/layout/components/cookies-consent/cookies-consent.model';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport vuetify from '@/plugins/vuetify';\r\nimport { AuthenticateResponse, PlayerInstanceInputModel, UserDto } from '@/services/Api';\r\nimport CookieService from '@/services/cookie-service';\r\nimport { action, autorun, computed, extendObservable, observable } from 'mobx';\r\nimport StoreTables from './Models/storetables';\r\nimport BreadcrumbData from './Models/breadcrumb-data';\r\n\r\nexport default class Store {\r\n private storeVersion = 'v1';\r\n private storeLoaded = false;\r\n\r\n constructor() {\r\n autorun(async () => {\r\n if (!this.storeLoaded) {\r\n const existingStore = localStorage.getItem('store');\r\n\r\n if (existingStore) {\r\n const parsedStore = JSON.parse(existingStore) as Store;\r\n this.loadCookieData(parsedStore);\r\n parsedStore.storeLoaded = false;\r\n\r\n if (parsedStore.storeVersion !== this.storeVersion) {\r\n console.info('invalid store version, resetting consent');\r\n parsedStore.consentBannerViewState = undefined;\r\n parsedStore.storeVersion = this.storeVersion;\r\n }\r\n\r\n extendObservable(this, parsedStore);\r\n } else {\r\n this.loadCookieData(this);\r\n }\r\n\r\n if (!this.consentBannerViewState) {\r\n this.consentBannerViewState = 'generalConsent';\r\n }\r\n\r\n this.storeLoaded = true;\r\n }\r\n\r\n this.saveState();\r\n });\r\n }\r\n\r\n loadCookieData(storeModel: Store) {\r\n const cookie = CookieService.getCookie();\r\n if (cookie) {\r\n storeModel.language = cookie.languageCode;\r\n // always override these values on init\r\n storeModel.isInternalTraffic = cookie?.internalTraffic === true ? true : undefined;\r\n storeModel.googleAnalyticsAccepted = cookie?.googleAnalyticsAccepted === true;\r\n storeModel.facebookPixelAccepted = cookie?.facebookPixelAccepted === true;\r\n storeModel.consentBannerViewState = cookie?.wasCookieBannerShown === true ? 'hidden' : 'generalConsent';\r\n }\r\n }\r\n\r\n saveState() {\r\n const serialized = JSON.stringify(this);\r\n localStorage.setItem('store', serialized);\r\n }\r\n\r\n @action setPlayerInstance(model: PlayerInstanceInputModel) {\r\n this.playerInputModelGameInstance = model;\r\n this.saveState();\r\n }\r\n @computed get getPlayerInstance() {\r\n return this.playerInputModelGameInstance;\r\n }\r\n\r\n @action setTables(idTable: string, value: number) {\r\n this.tables = this.tables.filter(e => e.idTable != idTable);\r\n this.tables.push(new StoreTables(idTable, value));\r\n this.saveState();\r\n }\r\n\r\n @computed getTableSize(idTable: string) {\r\n const value = this.tables.find(x => x.idTable == idTable)?.value;\r\n return value ? value : this.defaultTableSize;\r\n }\r\n @observable sizeCheckEnabled = true;\r\n @observable sideMenuOpen = true;\r\n @observable defaultTableSize = 5;\r\n @observable user?: UserDto = undefined;\r\n @observable token?: string = undefined;\r\n @observable rememberedEmail?: string = undefined;\r\n @observable intersectedComponent?: string = undefined;\r\n @observable appVersion?: string = undefined;\r\n @observable language?: string = undefined;\r\n @observable isInternalTraffic?: boolean = undefined;\r\n @observable googleAnalyticsAccepted?: boolean = undefined;\r\n @observable facebookPixelAccepted?: boolean = undefined;\r\n @observable consentBannerViewState?: ConsentBannerViewState = undefined;\r\n @observable playerInputModelGameInstance?: PlayerInstanceInputModel = undefined;\r\n @observable tables: StoreTables[] = [];\r\n @observable PPUrl?: string = undefined;\r\n @observable breadcrumbData?: () => BreadcrumbData[] = undefined;\r\n\r\n @computed get googleAnalyticsEnabled(): boolean {\r\n if (this.isInternalTraffic === true) return false;\r\n return this.googleAnalyticsAccepted === true;\r\n }\r\n\r\n @computed get facebookPixelEnabled(): boolean {\r\n if (this.isInternalTraffic === true) return false;\r\n return this.facebookPixelAccepted === true;\r\n }\r\n\r\n @computed get consentBannerState() {\r\n return this.consentBannerViewState;\r\n }\r\n\r\n @computed get isMenuOpen() {\r\n return this.sideMenuOpen;\r\n }\r\n @computed get isSizeChekcEnabled() {\r\n return this.sizeCheckEnabled;\r\n }\r\n\r\n @computed get isAdmin() {\r\n return this.user?.isAdmin ?? false;\r\n }\r\n\r\n @computed get isLoggedIn(): boolean {\r\n if (this.user && this.token) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n @computed isIntersected(id: string): boolean {\r\n if (this.intersectedComponent === id) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n @computed isStoreLoaded(): boolean {\r\n return this.storeLoaded;\r\n }\r\n\r\n @computed getBreadcrumb(): (() => BreadcrumbData[]) | undefined {\r\n return this.breadcrumbData;\r\n }\r\n\r\n @action setConsentBannerState(state: ConsentBannerViewState) {\r\n this.consentBannerViewState = state;\r\n this.saveState();\r\n }\r\n\r\n @action toggleSideMenu() {\r\n this.sideMenuOpen = !this.sideMenuOpen;\r\n this.saveState();\r\n }\r\n\r\n @action logInUser(response: AuthenticateResponse) {\r\n this.user = response.user as UserDto;\r\n this.token = response.token as string;\r\n this.saveState();\r\n }\r\n\r\n @action logOutUser() {\r\n this.user = undefined;\r\n this.token = undefined;\r\n this.saveState();\r\n }\r\n\r\n @action rememberEmail(email: string) {\r\n this.rememberedEmail = email;\r\n this.saveState();\r\n }\r\n\r\n @action setIntersected(id: string) {\r\n this.intersectedComponent = id;\r\n }\r\n\r\n @action setAppVersion(appVersion: string | undefined | null) {\r\n this.appVersion = appVersion == null ? undefined : appVersion;\r\n this.saveState();\r\n }\r\n\r\n @action setPPUrl(input: string | undefined | null) {\r\n this.PPUrl = input == null ? undefined : input;\r\n this.saveState();\r\n }\r\n\r\n @computed get getLanguageCode() {\r\n return this.language;\r\n }\r\n\r\n @action setLanguage(code: string) {\r\n this.language = code;\r\n this.saveState();\r\n i18n.locale = code;\r\n vuetify.framework.lang.current = code;\r\n CookieService.setCookieProperty('languageCode', code);\r\n }\r\n\r\n @action setGoogleAnalyticsAcceptedFlag(accepted: boolean): void {\r\n this.googleAnalyticsAccepted = accepted;\r\n this.saveState();\r\n CookieService.setCookieProperty('googleAnalyticsAccepted', accepted);\r\n }\r\n @action setFacebookPixelAcceptedFlag(accepted: boolean): void {\r\n this.facebookPixelAccepted = accepted;\r\n this.saveState();\r\n CookieService.setCookieProperty('facebookPixelAccepted', accepted);\r\n }\r\n\r\n @action setInternalTrafficFlag(): void {\r\n this.isInternalTraffic = true;\r\n this.saveState();\r\n CookieService.setCookieProperty('internalTraffic', true);\r\n }\r\n\r\n @action setBreadcrumb(breadcrumbData: () => BreadcrumbData[]) {\r\n this.breadcrumbData = breadcrumbData;\r\n this.saveState();\r\n }\r\n}\r\nexport const store = new Store();\r\n","import de from '@/i18n/de.json';\r\nimport en from '@/i18n/en.json';\r\nimport es from '@/i18n/es.json';\r\nimport fr from '@/i18n/fr.json';\r\nimport it from '@/i18n/it.json';\r\nimport LocaleHelper from '@/i18n/LocaleHelper';\r\nimport nl from '@/i18n/nl.json';\r\nimport pl from '@/i18n/pl.json';\r\nimport pt from '@/i18n/pt.json';\r\nimport ru from '@/i18n/ru.json';\r\nimport Vue from 'vue';\r\nimport VueI18n from 'vue-i18n';\r\n\r\nexport enum Locales {\r\n EN = 'en',\r\n DE = 'de',\r\n PL = 'pl',\r\n ES = 'es',\r\n FR = 'fr',\r\n IT = 'it',\r\n PT = 'pt',\r\n RU = 'ru',\r\n NL = 'nl'\r\n}\r\n\r\nexport const messages = {\r\n [Locales.EN]: en,\r\n [Locales.DE]: de,\r\n [Locales.PL]: pl,\r\n [Locales.ES]: es,\r\n [Locales.FR]: fr,\r\n [Locales.IT]: it,\r\n [Locales.PT]: pt,\r\n [Locales.RU]: ru,\r\n [Locales.NL]: nl\r\n};\r\n\r\nexport const defaultLocale = Locales.EN;\r\n\r\nVue.use(VueI18n);\r\nconst i18n = new VueI18n({\r\n messages,\r\n locale: LocaleHelper.getLocale(),\r\n fallbackLocale: defaultLocale,\r\n\r\n missing(locale, key, vm) {\r\n console.warn('Locale is missing: ', locale, key, vm);\r\n return key;\r\n }\r\n});\r\n\r\nconst translate = (key: string, values?: VueI18n.Values): any => (!key ? '' : i18n.t(key, values));\r\n\r\nexport { i18n, translate };\r\n","import { Locales } from '@/plugins/i18n';\r\nimport CookieService from '@/services/cookie-service';\r\nimport { store } from '@/store/store';\r\nimport { getUserLocale } from 'get-user-locale';\r\n\r\nexport default class LocaleHelper {\r\n public static getLocale(): string | undefined {\r\n const storedLanguage = store.getLanguageCode;\r\n if (storedLanguage) {\r\n return storedLanguage;\r\n }\r\n const cookieLanguage = CookieService.getCookie();\r\n if (cookieLanguage && cookieLanguage.languageCode) {\r\n return cookieLanguage.languageCode;\r\n }\r\n const browserLanguage = getUserLocale();\r\n if (browserLanguage?.length >= 2) {\r\n const localeKey = browserLanguage.substr(0, 2);\r\n if (Object.values(Locales).includes(localeKey as Locales)) {\r\n return localeKey;\r\n }\r\n console.log('browserLanguage not supported', browserLanguage);\r\n }\r\n\r\n console.log('Default: ', Locales.EN);\r\n return Locales.EN;\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-col',[_c('v-card',{staticClass:\"mx-0 px-7\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-title',{staticClass:\"blue--text\"},[_vm._v(_vm._s(_vm.title))]),_c('v-divider'),_vm._t(\"default\")],2)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class EditCardMain extends Vue {\r\n @Prop({ default: '$MainCardTitle' }) title!: string;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCardMain.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCardMain.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditCardMain.vue?vue&type=template&id=a9d76250&scoped=true&\"\nimport script from \"./EditCardMain.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditCardMain.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a9d76250\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VCardTitle,VCol,VContainer,VDivider,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-divider'),_c('v-card-actions',[(_vm.title.length !== 0)?_c('v-card-text',{staticClass:\"text-uppercase text--disabled\"},[_vm._v(_vm._s(_vm.title))]):_vm._e(),_c('v-spacer'),(_vm.collapsible)?_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.show = !_vm.show}}},[_c('v-icon',[_vm._v(_vm._s(_vm.show ? 'mdi-chevron-up' : 'mdi-chevron-down'))])],1):_vm._e()],1),_c('v-card-text',[_c('v-expand-transition',[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.show),expression:\"show\"}]},[_vm._t(\"default\")],2)])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class EditCardSection extends Vue {\r\n @Prop({ default: '' }) title!: string;\r\n @Prop({ type: Boolean, default: true }) expanded!: boolean;\r\n @Prop({ type: Boolean, default: false }) collapsible!: boolean;\r\n show = true;\r\n\r\n mounted() {\r\n this.show = this.expanded;\r\n }\r\n\r\n public expand(){\r\n this.show = true;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCardSection.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCardSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditCardSection.vue?vue&type=template&id=251ef102&scoped=true&\"\nimport script from \"./EditCardSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditCardSection.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"251ef102\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VExpandTransition } from 'vuetify/lib/components/transitions';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCardActions,VCardText,VDivider,VExpandTransition,VIcon,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-col',{staticClass:\"d-flex justify-center\"},[_c('v-col',{attrs:{\"sm\":\"5\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex justify-center py-10\",attrs:{\"sm\":\"12\"}},[(_vm.text && _vm.routeName)?_c('v-btn',{attrs:{\"to\":{ name: _vm.routeName },\"large\":\"\",\"dark\":\"\",\"color\":\"green\"}},[_vm._v(\" \"+_vm._s(_vm.text)+\" \")]):_vm._e()],1),_c('v-col',{staticClass:\"d-flex justify-center\",attrs:{\"sm\":\"12\"}},[_c('img',{attrs:{\"src\":require(\"@/assets/layout/No_game_instance_img.svg\")}})])],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class EmptyListContainer extends Vue {\r\n @Prop() text: string | undefined;\r\n @Prop() routeName: string | undefined;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyListContainer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyListContainer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EmptyListContainer.vue?vue&type=template&id=2906c5ce&scoped=true&\"\nimport script from \"./EmptyListContainer.vue?vue&type=script&lang=ts&\"\nexport * from \"./EmptyListContainer.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2906c5ce\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VContainer,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-col',{staticClass:\"mr-2\",attrs:{\"cols\":\"auto\"}},[_c('v-menu',{attrs:{\"offset-y\":\"\",\"left\":\"\",\"value\":_vm.menuIsShowed,\"min-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({attrs:{\"icon\":\"\",\"disabled\":_vm.disabled},on:{\"click\":function($event){_vm.menuIsShowed = 'trucy'}}},'v-btn',attrs,false),on),[_c('v-icon',[_vm._v(\"mdi-dots-vertical\")])],1)]}}])},[_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class ListMenu extends Vue {\r\n @Prop() disabled!: boolean;\r\n\r\n private menuIsShowed = null;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListMenu.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ListMenu.vue?vue&type=template&id=14d4a45c&scoped=true&\"\nimport script from \"./ListMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./ListMenu.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"14d4a45c\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\ninstallComponents(component, {VBtn,VCol,VIcon,VMenu})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-col',[_c('v-row',{attrs:{\"no-gutters\":\"\",\"dense\":\"\"}},[_c('v-col',{staticClass:\"d-inline-flex\"},[_c('v-hover',{scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar hover = ref.hover;\nreturn [_c('v-card',{staticClass:\"title-card\",class:{ btnHover: hover },attrs:{\"elevation\":\"0\",\"to\":_vm.routeTo}},[_c('v-card-text',{staticClass:\"pa-0 d-inline-flex\"},[_c('p',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.title),expression:\"title\"}],staticClass:\"pa-0 ma-0 title text-break text-truncate\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('v-icon',{staticClass:\"ml-1\",attrs:{\"small\":\"\",\"color\":\"#A8BFC2\"}},[_vm._v(_vm._s(_vm.icon))])],1)],1)]}}])})],1)],1),_c('v-row',{attrs:{\"no-gutters\":\"\",\"dense\":\"\"}},[_c('v-col',[_c('p',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.subTitle),expression:\"subTitle\"}],staticClass:\"ma-0 sub-title text-truncate\"},[_vm._v(_vm._s(_vm.subTitle))])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class ListItemHeader extends Vue {\r\n @Prop() public title?: string;\r\n @Prop() public subTitle?: string;\r\n @Prop() public routeTo?: any;\r\n @Prop({ default: 'mdi-pencil' }) public icon?: string;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListItemHeader.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListItemHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ListItemHeader.vue?vue&type=template&id=ff2a4b14&scoped=true&\"\nimport script from \"./ListItemHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./ListItemHeader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ListItemHeader.vue?vue&type=style&index=0&id=ff2a4b14&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ff2a4b14\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VHover } from 'vuetify/lib/components/VHover';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VCardText,VCol,VHover,VIcon,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-col',[_c('v-row',{attrs:{\"no-gutters\":\"\",\"dense\":\"\"}},[_c('v-col',{attrs:{\"to\":_vm.routeTo}},[(_vm.useCheckBox)?_c('p',{staticClass:\"pa-0 ma-0 title text-truncate\"},[(_vm.checkIsBoolean())?_c('v-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(_vm.title),callback:function ($$v) {_vm.title=$$v},expression:\"title\"}}):_vm._e()],1):_c('p',{staticClass:\"pa-0 ma-0 title text-truncate\"},[_vm._v(_vm._s(_vm.title))])])],1),_c('v-row',{attrs:{\"no-gutters\":\"\",\"dense\":\"\"}},[_c('v-col',[_c('p',{staticClass:\"ma-0 sub-title text-truncate\"},[_vm._v(_vm._s(_vm.subTitle))])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class TableItemHeader extends Vue {\r\n @Prop() public title!: any;\r\n @Prop() public subTitle?: string;\r\n @Prop() public routeTo?: any;\r\n\r\n @Prop({ default: false }) readonly useCheckBox!: boolean;\r\n\r\n checkIsBoolean(): boolean {\r\n if (this.useCheckBox && typeof this.title === typeof this.useCheckBox) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemHeader.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TableItemHeader.vue?vue&type=template&id=1bd44403&scoped=true&\"\nimport script from \"./TableItemHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./TableItemHeader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TableItemHeader.vue?vue&type=style&index=0&id=1bd44403&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1bd44403\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCheckbox,VCol,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(_vm._s(_vm.label))]),_vm._t(\"default\",[_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"value\":_vm.value,\"rules\":_vm.rules,\"disabled\":_vm.disabled},on:{\"input\":_vm.updateValue}})],1)])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormTextInput extends Vue {\r\n @Prop({ default: 'Label Text' }) label!: string;\r\n @Prop({ type: Boolean, default: false }) disabled!: boolean;\r\n @Prop() value!: string;\r\n @Prop() rules!: object[];\r\n\r\n updateValue(value: string) {\r\n this.$emit('input', value);\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextInput.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTextInput.vue?vue&type=template&id=7e86edbf&scoped=true&\"\nimport script from \"./FormTextInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormTextInput.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7e86edbf\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(_vm._s(_vm.label))]),_vm._t(\"default\",[(_vm.currency)?_c('v-col',{attrs:{\"cols\":\"5\"}},[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.value,_vm.currency))+\" \")]):_c('v-col',{attrs:{\"cols\":\"5\"}},[_vm._v(_vm._s(_vm.value)+\" \")])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormTextInfo extends Vue {\r\n @Prop({ default: null }) currency!: string;\r\n @Prop() label!: string;\r\n @Prop() value!: any;\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextInfo.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextInfo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTextInfo.vue?vue&type=template&id=729d84a4&scoped=true&\"\nimport script from \"./FormTextInfo.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormTextInfo.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"729d84a4\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(\" \"+_vm._s(_vm.label)+\" \")]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"outlined\":\"\",\"auto-select-first\":\"\",\"hide-details\":\"auto\",\"value\":_vm.value,\"items\":_vm.items,\"item-text\":_vm.itemText,\"item-value\":_vm.itemValue},on:{\"input\":_vm.updateValue}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormAutocompleteSelect extends Vue {\r\n @Prop() value!: string;\r\n @Prop() label!: string;\r\n @Prop() items!: string[];\r\n @Prop() itemText!: string;\r\n @Prop() itemValue!: string;\r\n\r\n updateValue(value: string) {\r\n this.$emit('input', value);\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormAutocompleteSelect.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormAutocompleteSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormAutocompleteSelect.vue?vue&type=template&id=802aa6fc&\"\nimport script from \"./FormAutocompleteSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormAutocompleteSelect.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FormAutocompleteSelect.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAutocomplete,VCol,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(_vm._s(_vm.label))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"outlined\":\"\",\"hide-details\":\"auto\",\"value\":_vm.value,\"items\":_vm.items,\"item-text\":_vm.itemText,\"item-value\":_vm.itemValue,\"disabled\":_vm.disabled},on:{\"input\":_vm.updateValue}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormSelect extends Vue {\r\n @Prop() value!: string;\r\n @Prop() label!: string;\r\n @Prop() items!: string[];\r\n @Prop() itemText!: string;\r\n @Prop() itemValue!: string;\r\n @Prop({ type: Boolean, default: false }) disabled!: boolean;\r\n\r\n updateValue(value: string) {\r\n this.$emit('input', value);\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSelect.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormSelect.vue?vue&type=template&id=470e8ddc&scoped=true&\"\nimport script from \"./FormSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormSelect.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"470e8ddc\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\ninstallComponents(component, {VCol,VRow,VSelect})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"align\":\"center\",\"dense\":\"\"}},[_c('v-col',{staticClass:\"d-flex justify-center\",attrs:{\"cols\":\"1\"}},[_c('v-checkbox',{staticClass:\"ma-0 pa-0\",attrs:{\"value\":_vm.value,\"input-value\":_vm.value,\"hide-details\":\"auto\",\"disabled\":_vm.disabled},on:{\"change\":_vm.updateValue}})],1),_c('v-col',[_vm._v(\" \"+_vm._s(_vm.label)+\" \"),_c('a',{attrs:{\"href\":_vm.link,\"target\":_vm.newTabFlag}},[_vm._v(_vm._s(_vm.linkText))])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormConditionsCheckbox extends Vue {\r\n @Prop({ type: Boolean, default: false }) value!: boolean;\r\n @Prop({ type: Boolean, default: false }) newTab!: boolean;\r\n @Prop({ type: Boolean, default: false }) disabled!: boolean;\r\n @Prop({ type: String, default: 'http://www.google.pl' }) link!: string;\r\n @Prop({ type: String, default: 'Privacy Policy' }) linkText!: string;\r\n @Prop({ type: String, default: 'I agree to the' }) label!: string;\r\n\r\n public get newTabFlag() {\r\n return this.newTab ? '_blank' : '_self';\r\n }\r\n\r\n updateValue(value: boolean) {\r\n this.$emit('input', value);\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormConditionsCheckbox.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormConditionsCheckbox.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormConditionsCheckbox.vue?vue&type=template&id=0fa0a0ca&scoped=true&\"\nimport script from \"./FormConditionsCheckbox.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormConditionsCheckbox.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0fa0a0ca\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCheckbox,VCol,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-skeleton-loader',{staticClass:\"mt-5\",attrs:{\"type\":\"list-item,image,image\"}}),_c('v-skeleton-loader',{staticClass:\"mt-5\",attrs:{\"type\":\"list-item,image,image\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class SkeletonLoaderDetails extends Vue {}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SkeletonLoaderDetails.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SkeletonLoaderDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SkeletonLoaderDetails.vue?vue&type=template&id=c95798ea&scoped=true&\"\nimport script from \"./SkeletonLoaderDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./SkeletonLoaderDetails.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c95798ea\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\ninstallComponents(component, {VSkeletonLoader})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"intersect\",rawName:\"v-intersect\",value:(_vm.onIntersect),expression:\"onIntersect\"}],staticClass:\"intersect-container\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class IntersectMenuSection extends Vue {\r\n @Prop({ default: '' }) id!: string;\r\n onIntersect(entries: any[], invoker: any, isIntersected: boolean) {\r\n if (isIntersected) {\r\n store.setIntersected(this.id);\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IntersectMenuSection.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IntersectMenuSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./IntersectMenuSection.vue?vue&type=template&id=0eb69e7b&scoped=true&\"\nimport script from \"./IntersectMenuSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./IntersectMenuSection.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0eb69e7b\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installDirectives from \"!../../../../node_modules/vuetify-loader/lib/runtime/installDirectives.js\"\nimport Intersect from 'vuetify/lib/directives/intersect'\ninstallDirectives(component, {Intersect})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"item-container ma-3\",attrs:{\"align\":\"center\"}},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class ListItem extends Vue {}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ListItem.vue?vue&type=template&id=665a4218&scoped=true&\"\nimport script from \"./ListItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./ListItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ListItem.vue?vue&type=style&index=0&id=665a4218&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"665a4218\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-btn',{staticClass:\"pa-0 ma-0 text-lowercase body-2\",attrs:{\"to\":_vm.routeTo,\"user\":\"\",\"text\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.value)+\" \"),_c('v-icon',{staticClass:\"mx-2\",attrs:{\"color\":\"grey\",\"small\":\"\"}},[_vm._v(_vm._s(_vm.icon))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class TableItemLink extends Vue {\r\n @Prop() public value?: string;\r\n @Prop() public routeTo?: any;\r\n @Prop({ default: 'mdi-open-in-new' }) public icon?: string;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemLink.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemLink.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TableItemLink.vue?vue&type=template&id=135ee7d8&scoped=true&\"\nimport script from \"./TableItemLink.vue?vue&type=script&lang=ts&\"\nexport * from \"./TableItemLink.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"135ee7d8\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VBtn,VIcon})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\",\"pa-0\":\"\"}},[_c('v-card',{staticClass:\"pa-2\",attrs:{\"elevation\":\"1\"}},[_c('v-row',{staticClass:\"ma-3\"},[_vm._t(\"header\")],2),_vm._t(\"items\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n@Component\r\nexport default class ListContainer extends Vue {}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListContainer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListContainer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ListContainer.vue?vue&type=template&id=6c5078d1&scoped=true&\"\nimport script from \"./ListContainer.vue?vue&type=script&lang=ts&\"\nexport * from \"./ListContainer.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6c5078d1\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VContainer,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(_vm._s(_vm.label))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-checkbox',{staticClass:\"ma-0 pa-0\",attrs:{\"value\":_vm.value,\"input-value\":_vm.value,\"hide-details\":\"auto\",\"disabled\":_vm.disabled},on:{\"change\":_vm.updateValue}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormCheckbox extends Vue {\r\n @Prop({ type: Boolean, default: false }) value!: boolean;\r\n @Prop({ type: Boolean, default: false }) disabled!: boolean;\r\n @Prop({ type: String, default: 'I agree to the' }) label!: string;\r\n\r\n updateValue(value: boolean) {\r\n this.$emit('input', value);\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormCheckbox.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormCheckbox.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormCheckbox.vue?vue&type=template&id=26d758da&scoped=true&\"\nimport script from \"./FormCheckbox.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormCheckbox.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"26d758da\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCheckbox,VCol,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',[_c('v-col',{attrs:{\"cols\":\"4\",\"lg\":\"2\"}},[_c('v-subheader',[(_vm.labelIcon)?_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\"}},[_vm._v(_vm._s(_vm.labelIcon)+\" \")]):_vm._e(),_vm._v(\" \"+_vm._s(_vm.label)+\" \")],1)],1),_c('v-col',{attrs:{\"cols\":\"8\",\"lg\":\"3\"}},[(_vm.checkIsBoolean())?_c('v-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}}):(_vm.routeTo)?_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-hover',{scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar hover = ref.hover;\nreturn [_c('v-card',{class:{ btnHover: hover },attrs:{\"elevation\":\"0\",\"to\":_vm.routeTo}},[_c('v-card-text',{staticClass:\"text-body-1 d-inline-flex\"},[_vm._v(\" \"+_vm._s(_vm.value)+\" \"),_c('v-icon',{staticClass:\"ml-1\",attrs:{\"small\":\"\",\"color\":\"#A8BFC2\"}},[_vm._v(_vm._s(_vm.linkIcon))])],1)],1)]}}])})],1):_c('v-text-field',{attrs:{\"value\":_vm.value,\"readonly\":\"\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class DetailRow extends Vue {\r\n @Prop() readonly labelIcon!: string;\r\n @Prop({ default: 'mdi-open-in-new' }) readonly linkIcon!: string;\r\n @Prop() readonly label!: string;\r\n @Prop() readonly value!: any;\r\n @Prop() public routeTo?: any;\r\n @Prop({ default: false }) readonly useCheckBox!: boolean;\r\n checkIsBoolean(): boolean {\r\n if (this.useCheckBox && typeof this.value === typeof this.useCheckBox) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DetailRow.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DetailRow.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DetailRow.vue?vue&type=template&id=39d72464&scoped=true&\"\nimport script from \"./DetailRow.vue?vue&type=script&lang=ts&\"\nexport * from \"./DetailRow.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DetailRow.vue?vue&type=style&index=0&id=39d72464&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"39d72464\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VHover } from 'vuetify/lib/components/VHover';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSubheader } from 'vuetify/lib/components/VSubheader';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardText,VCheckbox,VCol,VHover,VIcon,VRow,VSubheader,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',[(_vm.customSearch)?_c('v-card-title',[_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.AdminPanel.GameInstances.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1):_vm._e(),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.items,\"search\":_vm.search,\"custom-filter\":_vm.customSearch,\"items-per-page\":_vm.tableSize,\"footer-props\":{\n itemsPerPageText: _vm.$t('dataIterator.rowsPerPageText'),\n itemsPerPageAllText: _vm.$t('dataIterator.AllText'),\n pageText: _vm.$t('dataIterator.pageText')\n }},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([_vm._l((_vm.columnFilters),function(filter){return {key:(\"header.\" + (filter.value)),fn:function(ref){\n var header = ref.header;\nreturn [_c('div',{key:filter.value,staticClass:\"header-text mr-2\"},[_vm._v(_vm._s(header.text))]),_c('div',{key:filter.value + 'key',staticClass:\"filter-icon\"},[_c('v-menu',{staticStyle:{\"position\":\"absolute\",\"right\":\"0\"},attrs:{\"close-on-content-click\":false,\"nudge-width\":200,\"offset-y\":\"\",\"transition\":\"slide-y-transition\",\"left\":\"\",\"fixed\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\n var on = ref.on;\n var attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({attrs:{\"color\":\"indigo\",\"icon\":\"\",\"x-small\":\"\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\",\"color\":'default'}},[_vm._v(\"> mdi-filter-variant \")])],1)]}}],null,true)},[_c('v-list',{staticClass:\"pa-0\",attrs:{\"flat\":\"\",\"dense\":\"\"}},[_c('v-list-item-group',{staticClass:\"py-2\",attrs:{\"multiple\":\"\"},model:{value:(_vm.activeFilters[header.value]),callback:function ($$v) {_vm.$set(_vm.activeFilters, header.value, $$v)},expression:\"activeFilters[header.value]\"}},[_vm._l((_vm.uniq(filter.items)),function(item){return [_c('v-list-item',{key:(\"\" + item),attrs:{\"value\":item,\"ripple\":false},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var active = ref.active;\nreturn [_c('v-list-item-action',[_c('v-checkbox',{attrs:{\"input-value\":active,\"true-value\":item,\"color\":\"primary\",\"ripple\":false,\"dense\":\"\"}})],1),_c('v-list-item-content',[_c('v-list-item-title',{domProps:{\"textContent\":_vm._s(item)}})],1)]}}],null,true)})]})],2),_c('v-divider'),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-btn',{attrs:{\"text\":\"\",\"block\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.toggleAll(header.value)}}},[_vm._v(\"Toggle all\")])],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-btn',{attrs:{\"text\":\"\",\"block\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.clearAll(header.value)}}},[_vm._v(\"Clear all\")])],1)],1)],1)],1)],1)]}}}),{key:\"item\",fn:function(row){return [_vm._t(\"item\",null,{\"item\":row.item})]}}],null,true)})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport { store } from '@/store/store';\r\n@Component\r\nexport default class CustomDataTable extends Vue {\r\n @Prop() id!: string;\r\n @Prop() headers: any;\r\n @Prop() items: any;\r\n @Prop() customSearch: any;\r\n @Prop() columnFilters!: any[];\r\n\r\n private activeFilters: any = {};\r\n private search = '';\r\n private tableSize = 10;\r\n\r\n created() {\r\n this.initFilters();\r\n }\r\n mounted() {\r\n this.tableSize = store.getTableSize(this.id);\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables(this.id, this.tableSize);\r\n }\r\n\r\n private uniq(a: any) {\r\n const seen: any = {};\r\n return a.filter(function(item: any) {\r\n return Object.prototype.hasOwnProperty.call(seen, item) ? false : (seen[item] = true);\r\n });\r\n }\r\n\r\n private initFilters() {\r\n this.columnFilters.forEach(f => {\r\n this.$set(this.activeFilters, f.value, this.uniq(f.items));\r\n });\r\n this.headers.forEach((h: any) => {\r\n if (this.activeFilters[h.value]) {\r\n const columnFilter = this.getColumnFilter(h.value);\r\n if (columnFilter.filter) {\r\n this.$set(h, 'filter', (value: any, search: any, item: any) => {\r\n return columnFilter.filter(value, search, item, this.activeFilters);\r\n });\r\n } else {\r\n this.$set(h, 'filter', (value: any) => {\r\n return this.activeFilters[h.value].includes(value);\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n private toggleAll(col: string) {\r\n this.$set(this.activeFilters, col, this.uniq(this.columnFilters.find(f => f.value === col).items));\r\n }\r\n\r\n private clearAll(col: string) {\r\n this.$set(this.activeFilters, col, []);\r\n }\r\n\r\n private getColumnFilter(col: string) {\r\n return this.columnFilters.find(f => f.value === col);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDataTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDataTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CustomDataTable.vue?vue&type=template&id=5269aadc&scoped=true&\"\nimport script from \"./CustomDataTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./CustomDataTable.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CustomDataTable.vue?vue&type=style&index=0&id=5269aadc&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5269aadc\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemAction } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemGroup } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardTitle,VCheckbox,VCol,VDataTable,VDivider,VIcon,VList,VListItem,VListItemAction,VListItemContent,VListItemGroup,VListItemTitle,VMenu,VRow,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-col',[_c('v-row',{attrs:{\"no-gutters\":\"\",\"dense\":\"\"}},[_c('v-col',[_c('v-btn',{staticClass:\"pa-0 ma-0 title\",attrs:{\"to\":_vm.routeTo,\"user\":\"\",\"text\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.title)+\" \"),_c('v-icon',{staticClass:\"mx-2\",attrs:{\"color\":\"grey\",\"small\":\"\"}},[_vm._v(_vm._s(_vm.icon))])],1)],1)],1),_c('v-row',{attrs:{\"no-gutters\":\"\",\"dense\":\"\"}},[_c('v-col',[_c('p',{staticClass:\"ma-0 sub-title text-truncate\"},[_vm._v(_vm._s(_vm.subTitle))])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class ListItemHeader extends Vue {\r\n @Prop() public title?: string;\r\n @Prop() public subTitle?: string;\r\n @Prop() public routeTo?: any;\r\n @Prop({ default: 'mdi-pencil' }) public icon?: string;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemHeaderLink.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemHeaderLink.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TableItemHeaderLink.vue?vue&type=template&id=64bf595c&scoped=true&\"\nimport script from \"./TableItemHeaderLink.vue?vue&type=script&lang=ts&\"\nexport * from \"./TableItemHeaderLink.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TableItemHeaderLink.vue?vue&type=style&index=0&id=64bf595c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"64bf595c\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VIcon,VRow})\n","import Vue from 'vue';\r\nimport EditCardMain from '@/modules/layout/components/EditCardMain.vue';\r\nimport EditCardSection from '@/modules/layout/components/EditCardSection.vue';\r\nimport EmptyListContainer from '@/modules/layout/components/EmptyListContainer.vue';\r\nimport ListMenu from '@/modules/layout/components/ListMenu.vue';\r\nimport ListItemHeader from '@/modules/layout/components/ListItemHeader.vue';\r\nimport TableItemHeader from '@/modules/layout/components/TableItemHeader.vue';\r\nimport FormTextInput from '@/modules/layout/components/forms/FormTextInput.vue';\r\nimport FormTextInfo from '@/modules/layout/components/forms/FormTextInfo.vue';\r\nimport FormAutocompleteSelect from '@/modules/layout/components/forms/FormAutocompleteSelect.vue';\r\nimport FormSelect from '@/modules/layout/components/forms/FormSelect.vue';\r\nimport FormConditionsCheckbox from '@/modules/layout/components/forms/FormConditionsCheckbox.vue';\r\nimport SkeletonLoaderDetails from '@/modules/layout/components/SkeletonLoaderDetails.vue';\r\nimport IntersectMenuSection from '@/modules/layout/components/IntersectMenuSection.vue';\r\nimport ListItem from '@/modules/layout/components/ListItem.vue';\r\nimport TableItemLink from '@/modules/layout/components/TableItemLink.vue';\r\nimport ListContainer from '@/modules/layout/components/ListContainer.vue';\r\nimport FormCheckbox from '@/modules/layout/components/forms/FormCheckbox.vue';\r\nimport DetailRow from '@/modules/layout/components/DetailRow.vue';\r\nimport CustomDataTable from '@/modules/layout/components/CustomDataTable.vue';\r\nimport TableItemHeaderLink from '@/modules/layout/components/TableItemHeaderLink.vue';\r\n\r\nVue.component('edit-card-main', EditCardMain);\r\nVue.component('edit-card-section', EditCardSection);\r\nVue.component('empty-list-container', EmptyListContainer);\r\nVue.component('list-menu', ListMenu);\r\nVue.component('list-item-header', ListItemHeader);\r\nVue.component('table-item-header', TableItemHeader);\r\nVue.component('form-text-input', FormTextInput);\r\nVue.component('form-text-info', FormTextInfo);\r\nVue.component('form-autocomplete-select', FormAutocompleteSelect);\r\nVue.component('form-select', FormSelect);\r\nVue.component('form-conditions-checkbox', FormConditionsCheckbox);\r\nVue.component('skeleton-loader-details', SkeletonLoaderDetails);\r\nVue.component('intersect-menu-section', IntersectMenuSection);\r\nVue.component('list-container', ListContainer);\r\nVue.component('list-item', ListItem);\r\nVue.component('table-item-link', TableItemLink);\r\nVue.component('form-checkbox', FormCheckbox);\r\nVue.component('detail-row', DetailRow);\r\nVue.component('custom-data-table', CustomDataTable);\r\nVue.component('table-item-header-link', TableItemHeaderLink);\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',[_c('div',{attrs:{\"id\":\"scroll-anchor\"}}),(!_vm.$route.meta.technicalView)?_c('AppInitializer'):_vm._e(),(!_vm.$route.meta.allowAnonymous)?[_c('SideMenu'),_c('ToolBar'),_c('v-main',{staticClass:\"main-logged-in\"},[_c('router-view')],1),_c('Footer')]:[_c('transition',[_c('keep-alive',[_c('router-view')],1)],1)],_c('NotificationHolder'),_c('vue-progress-bar')],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isStoreLoaded)?_c('CookiesConsent'):_vm._e(),_c('FullHDSnackbar',{attrs:{\"showSnackbarHD\":_vm.showSnackbarHD}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-bottom-sheet',{attrs:{\"value\":_vm.store.consentBannerState !== 'hidden',\"persistent\":\"\",\"content-class\":\"cookies-consent\"}},[_c('v-sheet',{attrs:{\"elevation\":\"0\"}},[(_vm.store.consentBannerState === 'generalConsent')?_c('v-card',{attrs:{\"elevation\":\"0\"}},[_c('v-card-title',[_vm._v(_vm._s(_vm.$t('CookiesConsent.GeneralConsent.Title')))]),_c('v-card-text',{staticClass:\"text-justify\"},[_c('i18n',{attrs:{\"path\":\"CookiesConsent.GeneralConsent.Content.Text\"},scopedSlots:_vm._u([{key:\"privacyPolicyLink\",fn:function(){return [_c('a',{attrs:{\"href\":\"https://ingame.hr/privacypolicy/\",\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.$t('CookiesConsent.GeneralConsent.Content.PrivacyPolicy')))])]},proxy:true},{key:\"privacySettingsLink\",fn:function(){return [_c('a',{attrs:{\"href\":\"\"},on:{\"click\":function($event){$event.preventDefault();return _vm.store.setConsentBannerState('privacySettings')}}},[_vm._v(_vm._s(_vm.$t('CookiesConsent.GeneralConsent.Content.CookieSettings')))])]},proxy:true}],null,false,3168801780)})],1),_c('v-card-actions',[_c('v-btn',{staticClass:\"text-capitalize\",attrs:{\"color\":\"green\",\"dark\":\"\",\"elevation\":\"0\"},on:{\"click\":function($event){return _vm.acceptAll()}}},[_vm._v(\" \"+_vm._s(_vm.$t('CookiesConsent.AcceptButton'))+\" \")]),_c('v-btn',{staticClass:\"btn-cancel text-capitalize\",attrs:{\"elevation\":\"0\"},on:{\"click\":function($event){return _vm.store.setConsentBannerState('privacySettings')}}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Details'))+\" \")])],1)],1):(_vm.store.consentBannerState === 'privacySettings')?_c('v-card',{attrs:{\"elevation\":\"0\"}},[_c('v-card-title',[_vm._v(_vm._s(_vm.$t('CookiesConsent.PrivacySettings.Title')))]),_c('v-card-text',[_vm._v(\" \"+_vm._s(_vm.$t('CookiesConsent.PrivacySettings.SubTitle'))+\" \"),_c('v-divider',{staticClass:\"mt-4\"}),_c('div',{staticClass:\"group-container scrollable\"},_vm._l((_vm.cookieGroups),function(item){return _c('div',{key:item.groupName},[_c('CookiesConsentGroup',{attrs:{\"group\":item},on:{\"toggleDetailsVisibility\":function($event){return _vm.toggleDetailsVisibility(item)}}}),_c('v-divider')],1)}),0)],1),_c('v-card-actions',[_c('v-btn',{staticClass:\"text-capitalize\",attrs:{\"color\":\"green\",\"elevation\":\"0\",\"dark\":\"\"},on:{\"click\":function($event){return _vm.save()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Save'))+\" \")])],1)],1):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"0\"}},[_c('v-card-text',[_c('div',{staticClass:\"d-flex\"},[_c('div',{staticClass:\"d-flex flex-column\"},[_c('span',{staticClass:\"cookie-consent-header\"},[_vm._v(_vm._s(_vm.$t((_vm.translationKey + \".Title\"))))]),_c('span',[_vm._v(\" \"+_vm._s(_vm.$t((_vm.translationKey + \".SubTitle\")))+\" \"),_c('a',{attrs:{\"href\":\"\"},on:{\"click\":function($event){$event.preventDefault();return _vm.$emit('toggleDetailsVisibility')}}},[_vm._v(_vm._s(_vm.$t( _vm.group.expanded ? 'CookiesConsent.PrivacySettings.HideDetails' : 'CookiesConsent.PrivacySettings.LearnMore' )))])])]),_c('div',{staticClass:\"d-flex align-center ml-auto\"},[(_vm.group.readonly)?_c('span',{staticClass:\"mx-4 text-right\"},[_vm._v(_vm._s(_vm.$t('CookiesConsent.PrivacySettings.AlwaysActive')))]):_c('v-switch',{staticClass:\"ma-2 ml-4 pa-0\",attrs:{\"dense\":\"\",\"hide-details\":\"\"},model:{value:(_vm.group.accepted),callback:function ($$v) {_vm.$set(_vm.group, \"accepted\", $$v)},expression:\"group.accepted\"}})],1)]),_c('v-expand-transition',[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.group.expanded),expression:\"group.expanded\"}]},[_c('div',{staticStyle:{\"height\":\"16px\"}}),_c('div',{staticClass:\"cookie-content scrollable\"},_vm._l((_vm.group.elements),function(cookieElement){return _c('div',{key:cookieElement.consentName},[_c('v-checkbox',{staticClass:\"ma-0 pa-0 my-4\",attrs:{\"label\":_vm.$t((_vm.translationKey + \".\" + (cookieElement.consentName) + \".Name\")),\"disabled\":_vm.group.readonly,\"dense\":\"\",\"hide-details\":\"\"},model:{value:(cookieElement.accepted),callback:function ($$v) {_vm.$set(cookieElement, \"accepted\", $$v)},expression:\"cookieElement.accepted\"}}),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$sanitize(_vm.$t((_vm.translationKey + \".\" + (cookieElement.consentName) + \".Description\"))))}})],1)}),0)])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export type ConsentBannerViewState = 'hidden' | 'generalConsent' | 'privacySettings';\r\n\r\nexport class ConsentViewModel {\r\n public accepted = true;\r\n\r\n constructor(\r\n /**\r\n * consentName is also the key from translations\r\n */\r\n public consentName: string\r\n ) {}\r\n}\r\n\r\nexport class ConsentGroupViewModel {\r\n public expanded = false;\r\n\r\n public get accepted(): boolean {\r\n return this.acceptedState;\r\n }\r\n\r\n public set accepted(value: boolean) {\r\n this.acceptedState = value;\r\n this.elements.forEach(i => (i.accepted = value));\r\n }\r\n\r\n private acceptedState = true;\r\n\r\n constructor(\r\n /**\r\n * groupName is also the key from translations\r\n */\r\n public groupName: string,\r\n public readonly readonly: boolean,\r\n public elements: ConsentViewModel[]\r\n ) {}\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { ConsentGroupViewModel } from './cookies-consent.model';\r\n\r\n@Component\r\nexport default class CookiesConsentGroup extends Vue {\r\n @Prop({ default: () => new ConsentGroupViewModel('None', true, []) }) public group!: ConsentGroupViewModel;\r\n\r\n public get translationKey(): string {\r\n return `CookiesConsent.PrivacySettings.${this.group.groupName}`;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CookiesConsentGroup.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CookiesConsentGroup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CookiesConsentGroup.vue?vue&type=template&id=6b92c5aa&scoped=true&\"\nimport script from \"./CookiesConsentGroup.vue?vue&type=script&lang=ts&\"\nexport * from \"./CookiesConsentGroup.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CookiesConsentGroup.vue?vue&type=style&index=0&id=6b92c5aa&scoped=true&lang=css&\"\nimport style1 from \"./CookiesConsentGroup.vue?vue&type=style&index=1&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6b92c5aa\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VExpandTransition } from 'vuetify/lib/components/transitions';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\ninstallComponents(component, {VCard,VCardText,VCheckbox,VExpandTransition,VSwitch})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport CookiesConsentGroup from '@/modules/layout/components/cookies-consent/CookiesConsentGroup.vue';\r\nimport CookieService from '@/services/cookie-service';\r\nimport { store } from '@/store/store';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { ConsentGroupViewModel, ConsentViewModel } from './cookies-consent.model';\r\n\r\n@Component({ components: { CookiesConsentGroup } })\r\nexport default class CookiesConsent extends Vue {\r\n public store = store;\r\n private firstLoad = true;\r\n public essentialCookies = new ConsentGroupViewModel('Essential', true, [\r\n new ConsentViewModel('SessionCookieConsent'),\r\n new ConsentViewModel('SettingsCookieConsent'),\r\n new ConsentViewModel('ARRAfinityCookieConsent')\r\n ]);\r\n\r\n public statisticsCookies = new ConsentGroupViewModel('Statistics', false, [\r\n new ConsentViewModel('GoogleAnalyticsConsent'),\r\n new ConsentViewModel('FacebookPixelConsent')\r\n ]);\r\n\r\n public cookieGroups: ConsentGroupViewModel[] = [];\r\n\r\n public mounted(): void {\r\n this.cookieGroups = [this.essentialCookies, this.statisticsCookies];\r\n }\r\n\r\n public get isOpen(): boolean {\r\n return this.store.consentBannerState !== 'hidden';\r\n }\r\n\r\n public acceptAll(): void {\r\n this.essentialCookies.accepted = true;\r\n this.statisticsCookies.accepted = true;\r\n\r\n this.save();\r\n }\r\n\r\n public save(): void {\r\n const analyticsConsent = this.statisticsCookies.elements.find(i => i.consentName === 'GoogleAnalyticsConsent');\r\n const pixelConsent = this.statisticsCookies.elements.find(i => i.consentName === 'FacebookPixelConsent');\r\n\r\n const isAnalyticsConsentAccepted = analyticsConsent != null && analyticsConsent.accepted;\r\n const isPixelConsentAccepted = pixelConsent != null && pixelConsent.accepted;\r\n this.store.setGoogleAnalyticsAcceptedFlag(isAnalyticsConsentAccepted);\r\n this.store.setFacebookPixelAcceptedFlag(isPixelConsentAccepted);\r\n\r\n CookieService.setCookieProperty('wasCookieBannerShown', true);\r\n this.store.setConsentBannerState('hidden');\r\n // This needs to stay, because there is no other simple way to disable pixel when it was activated.\r\n window.location.reload();\r\n }\r\n\r\n public toggleDetailsVisibility(item: ConsentGroupViewModel): void {\r\n const newState = !item.expanded;\r\n this.cookieGroups.forEach(i => (i.expanded = false));\r\n item.expanded = newState;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CookiesConsent.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CookiesConsent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CookiesConsent.vue?vue&type=template&id=22d6ec51&\"\nimport script from \"./CookiesConsent.vue?vue&type=script&lang=ts&\"\nexport * from \"./CookiesConsent.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CookiesConsent.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBottomSheet } from 'vuetify/lib/components/VBottomSheet';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VSheet } from 'vuetify/lib/components/VSheet';\ninstallComponents(component, {VBottomSheet,VBtn,VCard,VCardActions,VCardText,VCardTitle,VDivider,VSheet})\n","import { init, track } from 'fbq';\r\nimport { OrderDetails } from '@/modules/game-instance/models/create-order.model';\r\nimport { OrderDetailsDto } from '@/services/Api';\r\nimport { store } from '@/store/store';\r\nexport class AnalyticsHelper {\r\n private static initialized = false;\r\n public static initFacebookPixel(id: string) {\r\n init(id);\r\n this.initialized = true;\r\n }\r\n\r\n public static trackWithFacebookPixel(eventType: FacebookPixelEvent, options?: any) {\r\n if (!this.initialized || !store.facebookPixelEnabled) {\r\n return;\r\n }\r\n track(eventType, options);\r\n }\r\n\r\n public static getPurchaseOptions(orderNumber: string | null | undefined, orderDetails: OrderDetails){\r\n let discountValue: number | undefined = undefined;\r\n\r\n if (orderDetails?.priceInfo?.netPriceAfterDiscount != null) {\r\n const result = orderDetails.priceInfo.netPrice - orderDetails.priceInfo.netPriceAfterDiscount;\r\n if (result > 0) discountValue = result;\r\n }\r\n \r\n return {\r\n content_ids: [orderNumber],\r\n contents: [\r\n {\r\n id: 'per_game_premium_service',\r\n quantity: 1,\r\n coupon: orderDetails?.discountCode == null ? undefined : orderDetails.discountCode,\r\n discount: discountValue == null ? undefined : discountValue, // this is amount, not percent value\r\n tax: orderDetails?.priceInfo?.vatAmount == null ? undefined : orderDetails.priceInfo.vatAmount\r\n }\r\n ],\r\n currency: orderDetails?.priceInfo?.currency,\r\n value: orderDetails?.priceInfo?.finalPrice\r\n }\r\n }\r\n\r\n public static getPaymentOptions(order: OrderDetailsDto){\r\n return AnalyticsHelper.getPurchaseOptions(order.orderNumber, {\r\n discountCode: null,\r\n priceInfo: order.priceInfo\r\n } as OrderDetails);\r\n }\r\n}\r\n\r\nexport enum FacebookPixelEvent {\r\n pageView = 'PageView',\r\n completeRegistration = 'CompleteRegistration',\r\n addPaymentInfo = 'AddPaymentInfo',\r\n initiateCheckout = 'InitiateCheckout',\r\n purchase = 'Purchase',\r\n}\r\n","export enum GameCustomizableElementType {\r\n Text,\r\n Number,\r\n Image,\r\n Color,\r\n}\r\n\r\nexport class GameCustomizableElement {\r\n private constructor(public name: string, public value: string | number, public type: GameCustomizableElementType) {}\r\n public width!: number;\r\n public heigth!: number;\r\n public maxSize!: number;\r\n public minSize!: number;\r\n public isCustomByUser = true;\r\n public position!: number;\r\n\r\n public static CreateImage(name: string, value: string, width: number, heigth: number, isCustomByUser = true, position = 0): GameCustomizableElement {\r\n const element = new GameCustomizableElement(name, value, GameCustomizableElementType.Image);\r\n element.width = width;\r\n element.heigth = heigth;\r\n element.isCustomByUser = isCustomByUser;\r\n element.position = position;\r\n return element;\r\n }\r\n public static CreateText(name: string, value: string, minLength: number, maxLength: number, isCustomByUser = true, position = 0): GameCustomizableElement {\r\n const element = new GameCustomizableElement(name, value, GameCustomizableElementType.Text);\r\n element.maxSize = maxLength;\r\n element.minSize = minLength;\r\n element.isCustomByUser = isCustomByUser;\r\n element.position = position;\r\n return element;\r\n }\r\n public static CreateNumber(name: string, value: number, minSize: number, maxSize: number, isCustomByUser = true, position = 0): GameCustomizableElement {\r\n const element = new GameCustomizableElement(name, value, GameCustomizableElementType.Number);\r\n element.maxSize = maxSize;\r\n element.minSize = minSize;\r\n element.isCustomByUser = isCustomByUser;\r\n element.position = position;\r\n return element;\r\n }\r\n public static CreateColor(name: string, value: number, isCustomByUser = false, position = 0): GameCustomizableElement {\r\n const element = new GameCustomizableElement(name, value, GameCustomizableElementType.Color);\r\n element.isCustomByUser = isCustomByUser;\r\n element.position = position;\r\n return element;\r\n }\r\n\r\n public static mergeWithOverride(\r\n base: GameCustomizableElement[],\r\n additional: GameCustomizableElement[]\r\n ): GameCustomizableElement[] {\r\n const filteredDefault = base.filter(d => !additional.some(e => e.name === d.name));\r\n const merged = filteredDefault.concat(additional);\r\n\r\n return merged;\r\n }\r\n}\r\n","import 'phaser';\r\nimport { GameTheme } from '../models/game-theme';\r\nimport { GameCustomizableElement } from './game-engine-customizable-element';\r\nabstract class GameEngineBase {\r\n constructor(\r\n // Display next question modal\r\n protected askQuestion: () => void,\r\n // Display Game Over Modal\r\n protected gameOverDialog: (score: number) => void,\r\n // Send game log\r\n protected saveGameLog: (score: number, trigger: GameTriggerType) => void,\r\n // Customized elements\r\n protected customizedElements: GameCustomizableElement[],\r\n // Game Theme\r\n protected theme: GameTheme | undefined\r\n ) {}\r\n\r\n abstract initialize(): void;\r\n // Called by the GamePlay with the response if the choosen answer was correct\r\n abstract acceptAnswer(isCorrectAnswer: boolean, answerPoolEmpty: boolean): void;\r\n\r\n abstract getCustomziableTypes(): GameCustomizableElement[];\r\n\r\n protected getCustomizedElements(): GameCustomizableElement[] {\r\n const defaultElements = this.getCustomziableTypes();\r\n const themedElements = this.theme?.overridenElements ?? [];\r\n const customElements = this.customizedElements ?? [];\r\n\r\n const baseElements = GameCustomizableElement.mergeWithOverride(defaultElements, themedElements);\r\n const elements = GameCustomizableElement.mergeWithOverride(baseElements, customElements);\r\n\r\n return elements;\r\n }\r\n}\r\nenum GameTriggerType {\r\n GameOver = 'game over',\r\n GameStart = 'game start',\r\n NewLevel = 'new level',\r\n LiveSaved = 'live saved',\r\n LiveLost = 'live lost'\r\n}\r\n\r\n//Configuration game\r\nexport { GameEngineBase, GameTriggerType };\r\n","import { app } from '@/main';\r\nimport { OrderDetails } from '@/modules/game-instance/models/create-order.model';\r\nimport { GameTriggerType } from '@/modules/game-play/games/game-engine-base';\r\nimport { OrderDetailsDto } from '@/services/Api';\r\nimport { store } from '@/store/store';\r\n\r\n/**\r\n * Events reference: https://developers.google.com/gtagjs/reference/ga4-events\r\n *\r\n * Some events are from existing events reference and some events are custom ones.\r\n */\r\nexport enum AnalyticsEvent {\r\n gameStart = 'game_start',\r\n gameOver = 'game_over',\r\n levelUp = 'level_up',\r\n correctAnswer = 'correct_answer',\r\n incorrectAnswer = 'incorrect_answer',\r\n addGameInstance = 'add_game_instance',\r\n updateGameInstance = 'update_game_instance',\r\n addProfession = 'add_profession',\r\n updateProfession = 'update_profession',\r\n addQuestion = 'add_question',\r\n updateQuestion = 'update_question',\r\n login = 'login',\r\n signUp = 'sign_up',\r\n /**\r\n * Cart button clicked (user goes into the order form)\r\n */\r\n selectItem = 'select_item',\r\n /**\r\n * User went to the payment form summary\r\n */\r\n addPaymentInfo = 'add_payment_info',\r\n /**\r\n * User clicked Pay button (redirect to PayU)\r\n */\r\n beginCheckout = 'begin_checkout',\r\n /**\r\n * User comes back from PayU (successful payment)\r\n */\r\n purchase = 'purchase',\r\n /**\r\n * User comes back from PayU (failed payment)\r\n */\r\n purchaseFailed = 'purchase_failed'\r\n}\r\n\r\nexport function mapTriggerToAnalyticsEvent(trigger: GameTriggerType): AnalyticsEvent | null {\r\n switch (trigger) {\r\n case GameTriggerType.GameStart:\r\n return AnalyticsEvent.gameStart;\r\n case GameTriggerType.GameOver:\r\n return AnalyticsEvent.gameOver;\r\n case GameTriggerType.NewLevel:\r\n return AnalyticsEvent.levelUp;\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexport function getAnalyticsEventParamsBase(orderNumber: string | null | undefined, orderDetails: OrderDetails): any {\r\n let discountValue: number | undefined = undefined;\r\n\r\n if (orderDetails?.priceInfo?.netPriceAfterDiscount != null) {\r\n const result = orderDetails.priceInfo.netPrice - orderDetails.priceInfo.netPriceAfterDiscount;\r\n if (result > 0) discountValue = result;\r\n }\r\n\r\n return {\r\n transaction_id: orderNumber,\r\n items: [\r\n {\r\n item_id: 'per_game_premium_service',\r\n quantity: 1,\r\n coupon: orderDetails?.discountCode == null ? undefined : orderDetails.discountCode,\r\n discount: discountValue == null ? undefined : discountValue, // this is amount, not percent value\r\n currency: orderDetails?.priceInfo?.currency,\r\n price: orderDetails?.priceInfo?.finalPrice == null ? undefined : orderDetails.priceInfo.finalPrice,\r\n tax: orderDetails?.priceInfo?.vatAmount == null ? undefined : orderDetails.priceInfo.vatAmount\r\n }\r\n ]\r\n };\r\n}\r\n\r\nexport function getAnalyticsEventParams(orderNumber: string | null | undefined, orderDetails: OrderDetails): any {\r\n return {\r\n ...getAnalyticsEventParamsBase(orderNumber, orderDetails),\r\n coupon: orderDetails?.discountCode == null ? undefined : orderDetails.discountCode,\r\n currency: orderDetails?.priceInfo?.currency,\r\n value: orderDetails?.priceInfo?.finalPrice == null ? undefined : orderDetails.priceInfo.finalPrice,\r\n tax: orderDetails?.priceInfo?.vatAmount == null ? undefined : orderDetails.priceInfo.vatAmount\r\n };\r\n}\r\n\r\nexport function getPurchaseEventParams(order: OrderDetailsDto): any {\r\n return getAnalyticsEventParams(order.orderNumber, {\r\n discountCode: null,\r\n priceInfo: order.priceInfo\r\n } as OrderDetails);\r\n}\r\n\r\nexport default class AnalyticsGoogleHelper {\r\n public static analyticsBootstrapped = false;\r\n\r\n public static event(eventType: AnalyticsEvent, data?: any): void {\r\n if (this.analyticsBootstrapped) {\r\n app.$gtag.event(eventType, data);\r\n }\r\n }\r\n}\r\n","/* tslint:disable */\r\n/* eslint-disable */\r\n//----------------------\r\n// \r\n// Generated using the NSwag toolchain v13.9.2.0 (NJsonSchema v10.3.1.0 (Newtonsoft.Json v12.0.0.0)) (http://NSwag.org)\r\n// \r\n//----------------------\r\n// ReSharper disable InconsistentNaming\r\n\r\nimport axios, { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, CancelToken } from 'axios';\r\nimport moment from 'moment';\r\nimport 'moment-duration-format';\r\nimport { store } from '@/store/store';\r\nimport { Vue } from 'vue-property-decorator';\r\nimport { app } from '@/main';\r\nexport class ClientBase {\r\n private firstRun = true;\r\n constructor() {}\r\n\r\n protected transformOptions(options: any) {\r\n this.setUpInterceptors();\r\n const token = this.getToken();\r\n if (token) {\r\n options.headers['Authorization'] = 'bearer ' + token;\r\n }\r\n const language = store.getLanguageCode;\r\n if (language) {\r\n options.headers['Accept-Language'] = language;\r\n }\r\n return Promise.resolve(options);\r\n }\r\n private getToken(): string | undefined {\r\n return store.token;\r\n }\r\n private setUpInterceptors(): void {\r\n if (!this.firstRun) {\r\n return;\r\n }\r\n const instance = (this as any).instance as AxiosInstance;\r\n instance.interceptors.request.use(config => {\r\n app.$Progress.start();\r\n return config;\r\n });\r\n instance.interceptors.response.use(\r\n response => {\r\n app.$Progress.finish();\r\n return response;\r\n },\r\n error => {\r\n app.$Progress.finish();\r\n throw error;\r\n }\r\n );\r\n\r\n this.firstRun = false;\r\n }\r\n}\r\n\r\nexport class DiscountAdminClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getDiscountList( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetDiscountList\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetDiscountList(_response);\r\n });\r\n }\r\n\r\n protected processGetDiscountList(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(DiscountAdminDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n updateDiscount(inputModel: DiscountAdminUpdateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/UpdateDiscount\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"PUT\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processUpdateDiscount(_response);\r\n });\r\n }\r\n\r\n protected processUpdateDiscount(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = DiscountAdminDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getDiscount(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetDiscount?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetDiscount(_response);\r\n });\r\n }\r\n\r\n protected processGetDiscount(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = DiscountAdminDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getPaymentOrdersList(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetPaymentOrdersList?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetPaymentOrdersList(_response);\r\n });\r\n }\r\n\r\n protected processGetPaymentOrdersList(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrderListItemAdminDataDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n addDiscount(id: string | undefined, email: string | null | undefined, code: string | null | undefined, discount: number | undefined, isActive: boolean | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/AddDiscount?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (email !== undefined && email !== null)\r\n url_ += \"Email=\" + encodeURIComponent(\"\" + email) + \"&\";\r\n if (code !== undefined && code !== null)\r\n url_ += \"Code=\" + encodeURIComponent(\"\" + code) + \"&\";\r\n if (discount === null)\r\n throw new Error(\"The parameter 'discount' cannot be null.\");\r\n else if (discount !== undefined)\r\n url_ += \"Discount=\" + encodeURIComponent(\"\" + discount) + \"&\";\r\n if (isActive === null)\r\n throw new Error(\"The parameter 'isActive' cannot be null.\");\r\n else if (isActive !== undefined)\r\n url_ += \"IsActive=\" + encodeURIComponent(\"\" + isActive) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processAddDiscount(_response);\r\n });\r\n }\r\n\r\n protected processAddDiscount(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = DiscountAdminDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class GameClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getGameTemplatesForCreateDropdown( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Game/GetGameTemplatesForCreateDropdown\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetGameTemplatesForCreateDropdown(_response);\r\n });\r\n }\r\n\r\n protected processGetGameTemplatesForCreateDropdown(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(GameTemplateDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getGameInstancesByUser( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Game/GetGameInstancesByUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetGameInstancesByUser(_response);\r\n });\r\n }\r\n\r\n protected processGetGameInstancesByUser(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(GameInstanceDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getGameInstanceById(gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Game/GetGameInstanceById?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetGameInstanceById(_response);\r\n });\r\n }\r\n\r\n protected processGetGameInstanceById(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = GameInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n createGameInstance(inputModel: GameInstanceCreateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Game/CreateGameInstance\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processCreateGameInstance(_response);\r\n });\r\n }\r\n\r\n protected processCreateGameInstance(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = GameInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n updateGameInstance(inputModel: GameInstanceUpdateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Game/UpdateGameInstance\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processUpdateGameInstance(_response);\r\n });\r\n }\r\n\r\n protected processUpdateGameInstance(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = GameInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n deleteGameInstance(inputModel: GameInstanceDeleteInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Game/DeleteGameInstance\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processDeleteGameInstance(_response);\r\n });\r\n }\r\n\r\n protected processDeleteGameInstance(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = GameInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getAssignableProfessions(gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Game/GetAssignableProfessions?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetAssignableProfessions(_response);\r\n });\r\n }\r\n\r\n protected processGetAssignableProfessions(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(AssignableProfessionDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class GameInstanceAdminClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getGameInstancesList( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetGameInstancesList\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetGameInstancesList(_response);\r\n });\r\n }\r\n\r\n protected processGetGameInstancesList(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(AdminGameInstanceListItemDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getGameInstance(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetGameInstance?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetGameInstance(_response);\r\n });\r\n }\r\n\r\n protected processGetGameInstance(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = AdminGameInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getPaymentOrdersForGameInstance(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetPaymentOrdersForGameInstance?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetPaymentOrdersForGameInstance(_response);\r\n });\r\n }\r\n\r\n protected processGetPaymentOrdersForGameInstance(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrderListItemAdminDataDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class GameRuntimeClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getGameInstancePrivate(gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GameRuntime/GetGameInstancePrivate?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"gameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetGameInstancePrivate(_response);\r\n });\r\n }\r\n\r\n protected processGetGameInstancePrivate(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = RuntimeGameInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getGameInstancePublic(gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GameRuntime/GetGameInstancePublic?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"gameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetGameInstancePublic(_response);\r\n });\r\n }\r\n\r\n protected processGetGameInstancePublic(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = RuntimeGameInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n createPlayerInstance(inputModel: PlayerInstanceInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GameRuntime/CreatePlayerInstance\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processCreatePlayerInstance(_response);\r\n });\r\n }\r\n\r\n protected processCreatePlayerInstance(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getQuestionByProfession(professionId: string | undefined, playerInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GameRuntime/GetQuestionByProfession?\";\r\n if (professionId === null)\r\n throw new Error(\"The parameter 'professionId' cannot be null.\");\r\n else if (professionId !== undefined)\r\n url_ += \"ProfessionId=\" + encodeURIComponent(\"\" + professionId) + \"&\";\r\n if (playerInstanceId === null)\r\n throw new Error(\"The parameter 'playerInstanceId' cannot be null.\");\r\n else if (playerInstanceId !== undefined)\r\n url_ += \"PlayerInstanceId=\" + encodeURIComponent(\"\" + playerInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetQuestionByProfession(_response);\r\n });\r\n }\r\n\r\n protected processGetQuestionByProfession(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n addPlayerInstanceAnswer(inputModel: PlayerInstanceAnswerInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GameRuntime/AddPlayerInstanceAnswer\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processAddPlayerInstanceAnswer(_response);\r\n });\r\n }\r\n\r\n protected processAddPlayerInstanceAnswer(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerInstanceAnswerDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n addPlayerInstanceLog(inputModel: PlayerInstanceLogInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GameRuntime/AddPlayerInstanceLog\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processAddPlayerInstanceLog(_response);\r\n });\r\n }\r\n\r\n protected processAddPlayerInstanceLog(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerInstanceLogDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n addPlayerInstanceDetails(inputModel: PlayerInstanceDetailsInputModel, sendEmail: boolean | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GameRuntime/AddPlayerInstanceDetails?\";\r\n if (sendEmail === null)\r\n throw new Error(\"The parameter 'sendEmail' cannot be null.\");\r\n else if (sendEmail !== undefined)\r\n url_ += \"sendEmail=\" + encodeURIComponent(\"\" + sendEmail) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processAddPlayerInstanceDetails(_response);\r\n });\r\n }\r\n\r\n protected processAddPlayerInstanceDetails(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerInstanceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class LandingPageClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n submitContactForm(inputModel: SubmitContactFormInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/LandingPage/SubmitContactForm\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processSubmitContactForm(_response);\r\n });\r\n }\r\n\r\n protected processSubmitContactForm(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n submitEbookForm(inputModel: SubmitEmailFormInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/LandingPage/SubmitEbookForm\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processSubmitEbookForm(_response);\r\n });\r\n }\r\n\r\n protected processSubmitEbookForm(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n downloadEbook(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/LandingPage/DownloadEbook?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n responseType: \"blob\",\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/octet-stream\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processDownloadEbook(_response);\r\n });\r\n }\r\n\r\n protected processDownloadEbook(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\r\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, { fileName: fileName, status: status, data: new Blob([response.data]), headers: _headers }));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class PaymentsAdminClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getPaymentsList( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetPaymentsList\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetPaymentsList(_response);\r\n });\r\n }\r\n\r\n protected processGetPaymentsList(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(PaymentsAdminDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getPayment(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetPayment?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetPayment(_response);\r\n });\r\n }\r\n\r\n protected processGetPayment(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PaymentsAdminDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class PaymentsClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n pay(payInputModel: PayInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/Pay\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(payInputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processPay(_response);\r\n });\r\n }\r\n\r\n protected processPay(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n showSummary(inputModel: GameInstanceRecipientDataInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/ShowSummary\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processShowSummary(_response);\r\n });\r\n }\r\n\r\n protected processShowSummary(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n createEmptyPurchase(inputModel: CreateEmptyPurchaseInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/CreateEmptyPurchase\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processCreateEmptyPurchase(_response);\r\n });\r\n }\r\n\r\n protected processCreateEmptyPurchase(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = CreateEmptyPurchaseDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n updateOrder(updateNotification: PayUUpdateNotification , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/UpdateOrder\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(updateNotification);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processUpdateOrder(_response);\r\n });\r\n }\r\n\r\n protected processUpdateOrder(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n cancelPayment(orderNumber: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/CancelPayment?\";\r\n if (orderNumber !== undefined && orderNumber !== null)\r\n url_ += \"OrderNumber=\" + encodeURIComponent(\"\" + orderNumber) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processCancelPayment(_response);\r\n });\r\n }\r\n\r\n protected processCancelPayment(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInitialOrderData(gameInstanceId: string | undefined, defaultCountryCode: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/GetInitialOrderData?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (defaultCountryCode !== undefined && defaultCountryCode !== null)\r\n url_ += \"DefaultCountryCode=\" + encodeURIComponent(\"\" + defaultCountryCode) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInitialOrderData(_response);\r\n });\r\n }\r\n\r\n protected processGetInitialOrderData(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = GetInitialOrderDataDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n verifyDiscount(code: string | null | undefined, currency: Currency | undefined, countryCode: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/VerifyDiscount?\";\r\n if (code !== undefined && code !== null)\r\n url_ += \"Code=\" + encodeURIComponent(\"\" + code) + \"&\";\r\n if (currency === null)\r\n throw new Error(\"The parameter 'currency' cannot be null.\");\r\n else if (currency !== undefined)\r\n url_ += \"Currency=\" + encodeURIComponent(\"\" + currency) + \"&\";\r\n if (countryCode !== undefined && countryCode !== null)\r\n url_ += \"CountryCode=\" + encodeURIComponent(\"\" + countryCode) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processVerifyDiscount(_response);\r\n });\r\n }\r\n\r\n protected processVerifyDiscount(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = VerifyDiscountResultDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getPriceInfo(netPrice: number | undefined, countryCode: string | null | undefined, discount: number | null | undefined, currency: Currency | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/GetPriceInfo?\";\r\n if (netPrice === null)\r\n throw new Error(\"The parameter 'netPrice' cannot be null.\");\r\n else if (netPrice !== undefined)\r\n url_ += \"NetPrice=\" + encodeURIComponent(\"\" + netPrice) + \"&\";\r\n if (countryCode !== undefined && countryCode !== null)\r\n url_ += \"CountryCode=\" + encodeURIComponent(\"\" + countryCode) + \"&\";\r\n if (discount !== undefined && discount !== null)\r\n url_ += \"Discount=\" + encodeURIComponent(\"\" + discount) + \"&\";\r\n if (currency === null)\r\n throw new Error(\"The parameter 'currency' cannot be null.\");\r\n else if (currency !== undefined)\r\n url_ += \"Currency=\" + encodeURIComponent(\"\" + currency) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetPriceInfo(_response);\r\n });\r\n }\r\n\r\n protected processGetPriceInfo(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = GetPriceInfoDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n /**\r\n * @param vatNumber (optional) VAT Numbers, which trigger different responses.\r\n These codes works only when the payments are disabled (fake payments)\r\n \r\n 100 = Valid request with Valid VAT Number\r\n 200 = Valid request with an Invalid VAT Number\r\n 201 = Error : INVALID_INPUT\r\n 202 = Error : INVALID_REQUESTER_INFO\r\n 300 = Error : SERVICE_UNAVAILABLE\r\n 301 = Error : MS_UNAVAILABLE\r\n 302 = Error : TIMEOUT\r\n 400 = Error : VAT_BLOCKED\r\n 401 = Error : IP_BLOCKED\r\n 500 = Error : GLOBAL_MAX_CONCURRENT_REQ\r\n 501 = Error : GLOBAL_MAX_CONCURRENT_REQ_TIME\r\n 600 = Error : MS_MAX_CONCURRENT_REQ\r\n 601 = Error : MS_MAX_CONCURRENT_REQ_TIME\r\n \r\n For all the other cases, The web service will responds with a \"SERVICE_UNAVAILABLE\" error.\r\n * @param countryCode (optional) Supported country codes\r\n \r\n AT = Austria\r\n BE = Belgium\r\n BG = Bulgaria\r\n CY = Cyprus\r\n CZ = Czech Republic\r\n DE = Germany\r\n DK = Denmark\r\n EE = Estonia\r\n EL = Greece\r\n ES = Spain\r\n FI = Finland\r\n FR = France \r\n HR = Croatia\r\n HU = Hungary\r\n IE = Ireland\r\n IT = Italy\r\n LT = Lithuania\r\n LU = Luxembourg\r\n LV = Latvia\r\n MT = Malta\r\n NL = The Netherlands\r\n PL = Poland\r\n PT = Portugal\r\n RO = Romania\r\n SE = Sweden\r\n SI = Slovenia\r\n SK = Slovakia\r\n XI = Northern Ireland\r\n */\r\n verifyVatNumber(vatNumber: string | null | undefined, countryCode: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/VerifyVatNumber?\";\r\n if (vatNumber !== undefined && vatNumber !== null)\r\n url_ += \"VatNumber=\" + encodeURIComponent(\"\" + vatNumber) + \"&\";\r\n if (countryCode !== undefined && countryCode !== null)\r\n url_ += \"CountryCode=\" + encodeURIComponent(\"\" + countryCode) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processVerifyVatNumber(_response);\r\n });\r\n }\r\n\r\n protected processVerifyVatNumber(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getOrders( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/GetOrders\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetOrders(_response);\r\n });\r\n }\r\n\r\n protected processGetOrders(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrderListItemDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getOrder(orderId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/GetOrder?\";\r\n if (orderId === null)\r\n throw new Error(\"The parameter 'orderId' cannot be null.\");\r\n else if (orderId !== undefined)\r\n url_ += \"orderId=\" + encodeURIComponent(\"\" + orderId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetOrder(_response);\r\n });\r\n }\r\n\r\n protected processGetOrder(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = OrderDetailsDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInvoice(orderId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Payments/GetInvoice?\";\r\n if (orderId === null)\r\n throw new Error(\"The parameter 'orderId' cannot be null.\");\r\n else if (orderId !== undefined)\r\n url_ += \"orderId=\" + encodeURIComponent(\"\" + orderId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInvoice(_response);\r\n });\r\n }\r\n\r\n protected processGetInvoice(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = InvoiceDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class ProfessionClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getProfessionsOfCurrentUser( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Profession/GetProfessionsOfCurrentUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetProfessionsOfCurrentUser(_response);\r\n });\r\n }\r\n\r\n protected processGetProfessionsOfCurrentUser(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ProfessionDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getQuestionsForProfession(professionId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Profession/GetQuestionsForProfession?\";\r\n if (professionId === null)\r\n throw new Error(\"The parameter 'professionId' cannot be null.\");\r\n else if (professionId !== undefined)\r\n url_ += \"ProfessionId=\" + encodeURIComponent(\"\" + professionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetQuestionsForProfession(_response);\r\n });\r\n }\r\n\r\n protected processGetQuestionsForProfession(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(QuestionDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n createProfession(inputModel: ProfessionCreateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Profession/CreateProfession\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processCreateProfession(_response);\r\n });\r\n }\r\n\r\n protected processCreateProfession(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = ProfessionDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getProfession(professionId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Profession/GetProfession?\";\r\n if (professionId === null)\r\n throw new Error(\"The parameter 'professionId' cannot be null.\");\r\n else if (professionId !== undefined)\r\n url_ += \"ProfessionId=\" + encodeURIComponent(\"\" + professionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetProfession(_response);\r\n });\r\n }\r\n\r\n protected processGetProfession(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = ProfessionDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n updateProfession(inputModel: ProfessionUpdateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Profession/UpdateProfession\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"PUT\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processUpdateProfession(_response);\r\n });\r\n }\r\n\r\n protected processUpdateProfession(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = ProfessionDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n deleteProfession(inputModel: ProfessionDeleteInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Profession/DeleteProfession\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"DELETE\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processDeleteProfession(_response);\r\n });\r\n }\r\n\r\n protected processDeleteProfession(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = ProfessionDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class QuestionClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n createQuestion(inputModel: QuestionCreateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Question/CreateQuestion\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processCreateQuestion(_response);\r\n });\r\n }\r\n\r\n protected processCreateQuestion(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = QuestionDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getQuestion(questionId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Question/GetQuestion?\";\r\n if (questionId === null)\r\n throw new Error(\"The parameter 'questionId' cannot be null.\");\r\n else if (questionId !== undefined)\r\n url_ += \"QuestionId=\" + encodeURIComponent(\"\" + questionId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetQuestion(_response);\r\n });\r\n }\r\n\r\n protected processGetQuestion(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = QuestionDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n updateQuestion(inputModel: QuestionUpdateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Question/UpdateQuestion\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"PUT\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processUpdateQuestion(_response);\r\n });\r\n }\r\n\r\n protected processUpdateQuestion(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = QuestionDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n deleteQuestion(inputModel: QuestionDeleteInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Question/DeleteQuestion\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"DELETE\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processDeleteQuestion(_response);\r\n });\r\n }\r\n\r\n protected processDeleteQuestion(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = QuestionDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class SettingsClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getConfiguration( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Settings/GetConfiguration\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetConfiguration(_response);\r\n });\r\n }\r\n\r\n protected processGetConfiguration(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = ConfigurationDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class StatisticsClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getInstanceGlobalStatistics(gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceGlobalStatistics?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceGlobalStatistics(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceGlobalStatistics(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = InstanceGlobalStatisticsDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstanceGlobalStatisticsForPlayer(gameInstanceId: string | undefined, email: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceGlobalStatisticsForPlayer?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (email !== undefined && email !== null)\r\n url_ += \"Email=\" + encodeURIComponent(\"\" + email) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceGlobalStatisticsForPlayer(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceGlobalStatisticsForPlayer(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = InstanceGlobalStatisticsForPlayerDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstancePlayersStatistics(gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstancePlayersStatistics?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstancePlayersStatistics(_response);\r\n });\r\n }\r\n\r\n protected processGetInstancePlayersStatistics(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(InstancePlayersStatisticsDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstancePlayersCV(gameInstanceId: string | undefined, playerEmail: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstancePlayersCV?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (playerEmail !== undefined && playerEmail !== null)\r\n url_ += \"playerEmail=\" + encodeURIComponent(\"\" + playerEmail) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstancePlayersCV(_response);\r\n });\r\n }\r\n\r\n protected processGetInstancePlayersCV(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerInstanceDetailsDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstanceGameCV(gameInstanceId: string | undefined, instanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceGameCV?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (instanceId === null)\r\n throw new Error(\"The parameter 'instanceId' cannot be null.\");\r\n else if (instanceId !== undefined)\r\n url_ += \"instanceId=\" + encodeURIComponent(\"\" + instanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceGameCV(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceGameCV(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerInstanceDetailsDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstancePlayersCVById(instanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstancePlayersCVById?\";\r\n if (instanceId === null)\r\n throw new Error(\"The parameter 'instanceId' cannot be null.\");\r\n else if (instanceId !== undefined)\r\n url_ += \"InstanceId=\" + encodeURIComponent(\"\" + instanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstancePlayersCVById(_response);\r\n });\r\n }\r\n\r\n protected processGetInstancePlayersCVById(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerInstanceDetailsDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstanceGameStatistics(gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceGameStatistics?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceGameStatistics(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceGameStatistics(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(InstanceGameStatisticsDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n exportPlayersStatistics(gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/ExportPlayersStatistics?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n responseType: \"blob\",\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/octet-stream\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processExportPlayersStatistics(_response);\r\n });\r\n }\r\n\r\n protected processExportPlayersStatistics(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\r\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, { fileName: fileName, status: status, data: new Blob([response.data]), headers: _headers }));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n exportGamesStatistics(gameInstanceId: string | undefined, localTimeOffset: number | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/ExportGamesStatistics?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (localTimeOffset === null)\r\n throw new Error(\"The parameter 'localTimeOffset' cannot be null.\");\r\n else if (localTimeOffset !== undefined)\r\n url_ += \"LocalTimeOffset=\" + encodeURIComponent(\"\" + localTimeOffset) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n responseType: \"blob\",\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/octet-stream\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processExportGamesStatistics(_response);\r\n });\r\n }\r\n\r\n protected processExportGamesStatistics(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\r\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, { fileName: fileName, status: status, data: new Blob([response.data]), headers: _headers }));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstancePlayerStatisticsCSV(gameInstanceId: string | undefined, email: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstancePlayerStatisticsCSV?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (email !== undefined && email !== null)\r\n url_ += \"Email=\" + encodeURIComponent(\"\" + email) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n responseType: \"blob\",\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/octet-stream\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstancePlayerStatisticsCSV(_response);\r\n });\r\n }\r\n\r\n protected processGetInstancePlayerStatisticsCSV(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\r\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, { fileName: fileName, status: status, data: new Blob([response.data]), headers: _headers }));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstanceGameStatisticsCSVByPlayer(gameInstanceId: string | undefined, professionId: string | null | undefined, email: string | null | undefined, localTimeOffset: number | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceGameStatisticsCSVByPlayer?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (professionId !== undefined && professionId !== null)\r\n url_ += \"ProfessionId=\" + encodeURIComponent(\"\" + professionId) + \"&\";\r\n if (email !== undefined && email !== null)\r\n url_ += \"Email=\" + encodeURIComponent(\"\" + email) + \"&\";\r\n if (localTimeOffset === null)\r\n throw new Error(\"The parameter 'localTimeOffset' cannot be null.\");\r\n else if (localTimeOffset !== undefined)\r\n url_ += \"LocalTimeOffset=\" + encodeURIComponent(\"\" + localTimeOffset) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n responseType: \"blob\",\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/octet-stream\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceGameStatisticsCSVByPlayer(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceGameStatisticsCSVByPlayer(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\r\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, { fileName: fileName, status: status, data: new Blob([response.data]), headers: _headers }));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstanceOneGameLogsStatisticsCSV(gameInstanceId: string | undefined, instanceId: string | undefined, localTimeOffset: number | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceOneGameLogsStatisticsCSV?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (instanceId === null)\r\n throw new Error(\"The parameter 'instanceId' cannot be null.\");\r\n else if (instanceId !== undefined)\r\n url_ += \"InstanceId=\" + encodeURIComponent(\"\" + instanceId) + \"&\";\r\n if (localTimeOffset === null)\r\n throw new Error(\"The parameter 'localTimeOffset' cannot be null.\");\r\n else if (localTimeOffset !== undefined)\r\n url_ += \"LocalTimeOffset=\" + encodeURIComponent(\"\" + localTimeOffset) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n responseType: \"blob\",\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/octet-stream\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceOneGameLogsStatisticsCSV(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceOneGameLogsStatisticsCSV(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\r\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, { fileName: fileName, status: status, data: new Blob([response.data]), headers: _headers }));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstanceOneGameAnswerStatisticsCSV(gameInstanceId: string | undefined, instanceId: string | undefined, localTimeOffset: number | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceOneGameAnswerStatisticsCSV?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (instanceId === null)\r\n throw new Error(\"The parameter 'instanceId' cannot be null.\");\r\n else if (instanceId !== undefined)\r\n url_ += \"InstanceId=\" + encodeURIComponent(\"\" + instanceId) + \"&\";\r\n if (localTimeOffset === null)\r\n throw new Error(\"The parameter 'localTimeOffset' cannot be null.\");\r\n else if (localTimeOffset !== undefined)\r\n url_ += \"LocalTimeOffset=\" + encodeURIComponent(\"\" + localTimeOffset) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n responseType: \"blob\",\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/octet-stream\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceOneGameAnswerStatisticsCSV(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceOneGameAnswerStatisticsCSV(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\r\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, { fileName: fileName, status: status, data: new Blob([response.data]), headers: _headers }));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstanceGameStatisticsByPlayer(gameInstanceId: string | undefined, professionId: string | null | undefined, email: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceGameStatisticsByPlayer?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (professionId !== undefined && professionId !== null)\r\n url_ += \"ProfessionId=\" + encodeURIComponent(\"\" + professionId) + \"&\";\r\n if (email !== undefined && email !== null)\r\n url_ += \"Email=\" + encodeURIComponent(\"\" + email) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceGameStatisticsByPlayer(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceGameStatisticsByPlayer(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(InstancePlayerGameStatisticsDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstanceOneGameStatistics(gameInstanceId: string | undefined, instanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstanceOneGameStatistics?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (instanceId === null)\r\n throw new Error(\"The parameter 'instanceId' cannot be null.\");\r\n else if (instanceId !== undefined)\r\n url_ += \"instanceId=\" + encodeURIComponent(\"\" + instanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstanceOneGameStatistics(_response);\r\n });\r\n }\r\n\r\n protected processGetInstanceOneGameStatistics(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = InstanceOneGameStatisticDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getInstancePlayerStatistics(gameInstanceId: string | undefined, email: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetInstancePlayerStatistics?\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n if (email !== undefined && email !== null)\r\n url_ += \"Email=\" + encodeURIComponent(\"\" + email) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetInstancePlayerStatistics(_response);\r\n });\r\n }\r\n\r\n protected processGetInstancePlayerStatistics(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(InstancePlayerStatisticsDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getPlayerProfile(email: string | null | undefined, gameInstanceId: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/GetPlayerProfile?\";\r\n if (email !== undefined && email !== null)\r\n url_ += \"Email=\" + encodeURIComponent(\"\" + email) + \"&\";\r\n if (gameInstanceId === null)\r\n throw new Error(\"The parameter 'gameInstanceId' cannot be null.\");\r\n else if (gameInstanceId !== undefined)\r\n url_ += \"GameInstanceId=\" + encodeURIComponent(\"\" + gameInstanceId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetPlayerProfile(_response);\r\n });\r\n }\r\n\r\n protected processGetPlayerProfile(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerProfileDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n updatePlayerProfile(inputModel: PlayerProfileUpdateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/Statistics/UpdatePlayerProfile\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"PUT\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processUpdatePlayerProfile(_response);\r\n });\r\n }\r\n\r\n protected processUpdatePlayerProfile(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = PlayerProfileDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class UserAdminClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n getUsersList( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetUsersList\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetUsersList(_response);\r\n });\r\n }\r\n\r\n protected processGetUsersList(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(AdminUserListItemDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n updateDataUser(inputModel: AdminUserUpdateInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/UpdateDataUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"PUT\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processUpdateDataUser(_response);\r\n });\r\n }\r\n\r\n protected processUpdateDataUser(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = AdminUserListItemDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n deleteUser(inputModel: AdminUserDeleteUserInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/DeleteUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"DELETE\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processDeleteUser(_response);\r\n });\r\n }\r\n\r\n protected processDeleteUser(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = AdminUserListItemDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getUser(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetUser?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetUser(_response);\r\n });\r\n }\r\n\r\n protected processGetUser(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = AdminUserListItemDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getUserData(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetUserData?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetUserData(_response);\r\n });\r\n }\r\n\r\n protected processGetUserData(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = AdminUserDataDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getPaymentOrders(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetPaymentOrders?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetPaymentOrders(_response);\r\n });\r\n }\r\n\r\n protected processGetPaymentOrders(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OrderListItemAdminDataDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getGameInstancesByUser(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetGameInstancesByUser?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetGameInstancesByUser(_response);\r\n });\r\n }\r\n\r\n protected processGetGameInstancesByUser(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(GameInstanceAdminDataDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n getProfessionsOfCurrentUser(id: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/GetProfessionsOfCurrentUser?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"GET\",\r\n url: url_,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processGetProfessionsOfCurrentUser(_response);\r\n });\r\n }\r\n\r\n protected processGetProfessionsOfCurrentUser(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ProfessionAdminDataDto.fromJS(item));\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class UserClient extends ClientBase {\r\n private instance: AxiosInstance;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, instance?: AxiosInstance) {\r\n super();\r\n this.instance = instance ? instance : axios.create();\r\n this.baseUrl = baseUrl !== undefined && baseUrl !== null ? baseUrl : \"\";\r\n }\r\n\r\n authenticate(model: AuthenticateRequest , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/User/Authenticate\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(model);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processAuthenticate(_response);\r\n });\r\n }\r\n\r\n protected processAuthenticate(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = AuthenticateResponse.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n register(inputModel: UserRegisterInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/User/Register\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processRegister(_response);\r\n });\r\n }\r\n\r\n protected processRegister(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n let result200: any = null;\r\n let resultData200 = _responseText;\r\n result200 = UserDto.fromJS(resultData200);\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, result200));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n activate(activationCode: string | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/User/Activate?\";\r\n if (activationCode === null)\r\n throw new Error(\"The parameter 'activationCode' cannot be null.\");\r\n else if (activationCode !== undefined)\r\n url_ += \"activationCode=\" + encodeURIComponent(\"\" + activationCode) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processActivate(_response);\r\n });\r\n }\r\n\r\n protected processActivate(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n forgotPasswordRequest(email: string | null | undefined , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/User/ForgotPasswordRequest?\";\r\n if (email !== undefined && email !== null)\r\n url_ += \"email=\" + encodeURIComponent(\"\" + email) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processForgotPasswordRequest(_response);\r\n });\r\n }\r\n\r\n protected processForgotPasswordRequest(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n forgotPasswordConfirmation(inputModel: ForgotPasswordConfirmationInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/User/ForgotPasswordConfirmation\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processForgotPasswordConfirmation(_response);\r\n });\r\n }\r\n\r\n protected processForgotPasswordConfirmation(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n changePassword(inputModel: ChangePasswordInputModel , cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/User/ChangePassword\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(inputModel);\r\n\r\n let options_ = {\r\n data: content_,\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processChangePassword(_response);\r\n });\r\n }\r\n\r\n protected processChangePassword(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n\r\n updateLanguage( cancelToken?: CancelToken | undefined): Promise> {\r\n let url_ = this.baseUrl + \"/User/UpdateLanguage\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ = {\r\n method: \"POST\",\r\n url: url_,\r\n headers: {\r\n },\r\n cancelToken\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.instance.request(transformedOptions_);\r\n }).catch((_error: any) => {\r\n if (isAxiosError(_error) && _error.response) {\r\n return _error.response;\r\n } else {\r\n throw _error;\r\n }\r\n }).then((_response: AxiosResponse) => {\r\n return this.processUpdateLanguage(_response);\r\n });\r\n }\r\n\r\n protected processUpdateLanguage(response: AxiosResponse): Promise> {\r\n const status = response.status;\r\n let _headers: any = {};\r\n if (response.headers && typeof response.headers === \"object\") {\r\n for (let k in response.headers) {\r\n if (response.headers.hasOwnProperty(k)) {\r\n _headers[k] = response.headers[k];\r\n }\r\n }\r\n }\r\n if (status === 200) {\r\n const _responseText = response.data;\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n } else if (status === 400) {\r\n const _responseText = response.data;\r\n let result400: any = null;\r\n let resultData400 = _responseText;\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n return throwException(\"A server side error occurred.\", status, _responseText, _headers, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n const _responseText = response.data;\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }\r\n return Promise.resolve>(new SwaggerResponse(status, _headers, null));\r\n }\r\n}\r\n\r\nexport class DiscountAdminDto implements IDiscountAdminDto {\r\n id!: string;\r\n email?: string | null;\r\n code!: string;\r\n discount!: number;\r\n isActive!: boolean;\r\n\r\n constructor(data?: IDiscountAdminDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.code = _data[\"code\"] !== undefined ? _data[\"code\"] : null;\r\n this.discount = _data[\"discount\"] !== undefined ? _data[\"discount\"] : null;\r\n this.isActive = _data[\"isActive\"] !== undefined ? _data[\"isActive\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DiscountAdminDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DiscountAdminDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"code\"] = this.code !== undefined ? this.code : null;\r\n data[\"discount\"] = this.discount !== undefined ? this.discount : null;\r\n data[\"isActive\"] = this.isActive !== undefined ? this.isActive : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IDiscountAdminDto {\r\n id: string;\r\n email?: string | null;\r\n code: string;\r\n discount: number;\r\n isActive: boolean;\r\n}\r\n\r\nexport class DiscountAdminUpdateInputModel implements IDiscountAdminUpdateInputModel {\r\n id!: string;\r\n email?: string | null;\r\n code!: string;\r\n discount!: number;\r\n isActive!: boolean;\r\n\r\n constructor(data?: IDiscountAdminUpdateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.code = _data[\"code\"] !== undefined ? _data[\"code\"] : null;\r\n this.discount = _data[\"discount\"] !== undefined ? _data[\"discount\"] : null;\r\n this.isActive = _data[\"isActive\"] !== undefined ? _data[\"isActive\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DiscountAdminUpdateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DiscountAdminUpdateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"code\"] = this.code !== undefined ? this.code : null;\r\n data[\"discount\"] = this.discount !== undefined ? this.discount : null;\r\n data[\"isActive\"] = this.isActive !== undefined ? this.isActive : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IDiscountAdminUpdateInputModel {\r\n id: string;\r\n email?: string | null;\r\n code: string;\r\n discount: number;\r\n isActive: boolean;\r\n}\r\n\r\nexport class OrderListItemAdminDataDto implements IOrderListItemAdminDataDto {\r\n id!: string;\r\n userId?: string | null;\r\n orderNumber?: string | null;\r\n offerTitle?: string | null;\r\n createdAt?: moment.Moment | null;\r\n updatedAt?: moment.Moment | null;\r\n priceInfo?: PriceInfo | null;\r\n paymentStatus!: PaymentStatus;\r\n isInvoiceCreated!: boolean;\r\n gameInstanceId!: string;\r\n gameInstanceTitle?: string | null;\r\n invoiceCode?: string | null;\r\n companyName?: string | null;\r\n buyerIdentifier?: string | null;\r\n email?: string | null;\r\n\r\n constructor(data?: IOrderListItemAdminDataDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.userId = _data[\"userId\"] !== undefined ? _data[\"userId\"] : null;\r\n this.orderNumber = _data[\"orderNumber\"] !== undefined ? _data[\"orderNumber\"] : null;\r\n this.offerTitle = _data[\"offerTitle\"] !== undefined ? _data[\"offerTitle\"] : null;\r\n this.createdAt = _data[\"createdAt\"] ? moment.parseZone(_data[\"createdAt\"].toString()) : null;\r\n this.updatedAt = _data[\"updatedAt\"] ? moment.parseZone(_data[\"updatedAt\"].toString()) : null;\r\n this.priceInfo = _data[\"priceInfo\"] ? PriceInfo.fromJS(_data[\"priceInfo\"]) : null;\r\n this.paymentStatus = _data[\"paymentStatus\"] !== undefined ? _data[\"paymentStatus\"] : null;\r\n this.isInvoiceCreated = _data[\"isInvoiceCreated\"] !== undefined ? _data[\"isInvoiceCreated\"] : null;\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n this.gameInstanceTitle = _data[\"gameInstanceTitle\"] !== undefined ? _data[\"gameInstanceTitle\"] : null;\r\n this.invoiceCode = _data[\"invoiceCode\"] !== undefined ? _data[\"invoiceCode\"] : null;\r\n this.companyName = _data[\"companyName\"] !== undefined ? _data[\"companyName\"] : null;\r\n this.buyerIdentifier = _data[\"buyerIdentifier\"] !== undefined ? _data[\"buyerIdentifier\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderListItemAdminDataDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderListItemAdminDataDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"userId\"] = this.userId !== undefined ? this.userId : null;\r\n data[\"orderNumber\"] = this.orderNumber !== undefined ? this.orderNumber : null;\r\n data[\"offerTitle\"] = this.offerTitle !== undefined ? this.offerTitle : null;\r\n data[\"createdAt\"] = this.createdAt ? this.createdAt.toISOString(true) : null;\r\n data[\"updatedAt\"] = this.updatedAt ? this.updatedAt.toISOString(true) : null;\r\n data[\"priceInfo\"] = this.priceInfo ? this.priceInfo.toJSON() : null;\r\n data[\"paymentStatus\"] = this.paymentStatus !== undefined ? this.paymentStatus : null;\r\n data[\"isInvoiceCreated\"] = this.isInvoiceCreated !== undefined ? this.isInvoiceCreated : null;\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n data[\"gameInstanceTitle\"] = this.gameInstanceTitle !== undefined ? this.gameInstanceTitle : null;\r\n data[\"invoiceCode\"] = this.invoiceCode !== undefined ? this.invoiceCode : null;\r\n data[\"companyName\"] = this.companyName !== undefined ? this.companyName : null;\r\n data[\"buyerIdentifier\"] = this.buyerIdentifier !== undefined ? this.buyerIdentifier : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IOrderListItemAdminDataDto {\r\n id: string;\r\n userId?: string | null;\r\n orderNumber?: string | null;\r\n offerTitle?: string | null;\r\n createdAt?: moment.Moment | null;\r\n updatedAt?: moment.Moment | null;\r\n priceInfo?: PriceInfo | null;\r\n paymentStatus: PaymentStatus;\r\n isInvoiceCreated: boolean;\r\n gameInstanceId: string;\r\n gameInstanceTitle?: string | null;\r\n invoiceCode?: string | null;\r\n companyName?: string | null;\r\n buyerIdentifier?: string | null;\r\n email?: string | null;\r\n}\r\n\r\nexport class PriceInfo implements IPriceInfo {\r\n netPrice!: number;\r\n discountValue?: number | null;\r\n netPriceAfterDiscount!: number;\r\n vat!: number;\r\n vatFractionalNumber!: number;\r\n vatAmount!: number;\r\n finalPrice!: number;\r\n currency!: Currency;\r\n invoiceType!: InvoiceType;\r\n\r\n constructor(data?: IPriceInfo) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.netPrice = _data[\"netPrice\"] !== undefined ? _data[\"netPrice\"] : null;\r\n this.discountValue = _data[\"discountValue\"] !== undefined ? _data[\"discountValue\"] : null;\r\n this.netPriceAfterDiscount = _data[\"netPriceAfterDiscount\"] !== undefined ? _data[\"netPriceAfterDiscount\"] : null;\r\n this.vat = _data[\"vat\"] !== undefined ? _data[\"vat\"] : null;\r\n this.vatFractionalNumber = _data[\"vatFractionalNumber\"] !== undefined ? _data[\"vatFractionalNumber\"] : null;\r\n this.vatAmount = _data[\"vatAmount\"] !== undefined ? _data[\"vatAmount\"] : null;\r\n this.finalPrice = _data[\"finalPrice\"] !== undefined ? _data[\"finalPrice\"] : null;\r\n this.currency = _data[\"currency\"] !== undefined ? _data[\"currency\"] : null;\r\n this.invoiceType = _data[\"invoiceType\"] !== undefined ? _data[\"invoiceType\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PriceInfo {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PriceInfo();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"netPrice\"] = this.netPrice !== undefined ? this.netPrice : null;\r\n data[\"discountValue\"] = this.discountValue !== undefined ? this.discountValue : null;\r\n data[\"netPriceAfterDiscount\"] = this.netPriceAfterDiscount !== undefined ? this.netPriceAfterDiscount : null;\r\n data[\"vat\"] = this.vat !== undefined ? this.vat : null;\r\n data[\"vatFractionalNumber\"] = this.vatFractionalNumber !== undefined ? this.vatFractionalNumber : null;\r\n data[\"vatAmount\"] = this.vatAmount !== undefined ? this.vatAmount : null;\r\n data[\"finalPrice\"] = this.finalPrice !== undefined ? this.finalPrice : null;\r\n data[\"currency\"] = this.currency !== undefined ? this.currency : null;\r\n data[\"invoiceType\"] = this.invoiceType !== undefined ? this.invoiceType : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPriceInfo {\r\n netPrice: number;\r\n discountValue?: number | null;\r\n netPriceAfterDiscount: number;\r\n vat: number;\r\n vatFractionalNumber: number;\r\n vatAmount: number;\r\n finalPrice: number;\r\n currency: Currency;\r\n invoiceType: InvoiceType;\r\n}\r\n\r\nexport enum Currency {\r\n PLN = \"PLN\",\r\n USD = \"USD\",\r\n EUR = \"EUR\",\r\n}\r\n\r\nexport enum InvoiceType {\r\n Polish = \"Polish\",\r\n EuropeanUnion = \"EuropeanUnion\",\r\n Other = \"Other\",\r\n}\r\n\r\nexport enum PaymentStatus {\r\n New = \"New\",\r\n Pending = \"Pending\",\r\n WaitingForConfirmation = \"WaitingForConfirmation\",\r\n Completed = \"Completed\",\r\n Canceled = \"Canceled\",\r\n Rejected = \"Rejected\",\r\n}\r\n\r\nexport class GameTemplateDto implements IGameTemplateDto {\r\n id!: string;\r\n title?: string | null;\r\n type!: GameType;\r\n\r\n constructor(data?: IGameTemplateDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.type = _data[\"type\"] !== undefined ? _data[\"type\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GameTemplateDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GameTemplateDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"type\"] = this.type !== undefined ? this.type : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGameTemplateDto {\r\n id: string;\r\n title?: string | null;\r\n type: GameType;\r\n}\r\n\r\nexport enum GameType {\r\n Undefined = \"Undefined\",\r\n SpaceRescue = \"SpaceRescue\",\r\n DesertAdventure = \"DesertAdventure\",\r\n LittleWitch = \"LittleWitch\",\r\n FroggyPrincess = \"FroggyPrincess\",\r\n SpeedRace = \"SpeedRace\",\r\n Pirates = \"Pirates\",\r\n SkyFlight = \"SkyFlight\",\r\n MazeGame = \"MazeGame\",\r\n}\r\n\r\nexport class GameInstanceDto implements IGameInstanceDto {\r\n id!: string;\r\n title?: string | null;\r\n userId!: string;\r\n url?: string | null;\r\n gameTemplateId!: string;\r\n gameTemplate?: GameTemplateDto | null;\r\n isPublic!: boolean;\r\n validUntil?: moment.Moment | null;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n assignedProfessions?: string[] | null;\r\n settings?: string | null;\r\n lastPaymentBaseData?: PaymentBaseData | null;\r\n\r\n constructor(data?: IGameInstanceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.userId = _data[\"userId\"] !== undefined ? _data[\"userId\"] : null;\r\n this.url = _data[\"url\"] !== undefined ? _data[\"url\"] : null;\r\n this.gameTemplateId = _data[\"gameTemplateId\"] !== undefined ? _data[\"gameTemplateId\"] : null;\r\n this.gameTemplate = _data[\"gameTemplate\"] ? GameTemplateDto.fromJS(_data[\"gameTemplate\"]) : null;\r\n this.isPublic = _data[\"isPublic\"] !== undefined ? _data[\"isPublic\"] : null;\r\n this.validUntil = _data[\"validUntil\"] ? moment.parseZone(_data[\"validUntil\"].toString()) : null;\r\n this.playableFrom = _data[\"playableFrom\"] ? moment.parseZone(_data[\"playableFrom\"].toString()) : null;\r\n this.playableTo = _data[\"playableTo\"] ? moment.parseZone(_data[\"playableTo\"].toString()) : null;\r\n if (Array.isArray(_data[\"assignedProfessions\"])) {\r\n this.assignedProfessions = [] as any;\r\n for (let item of _data[\"assignedProfessions\"])\r\n this.assignedProfessions!.push(item);\r\n }\r\n this.settings = _data[\"settings\"] !== undefined ? _data[\"settings\"] : null;\r\n this.lastPaymentBaseData = _data[\"lastPaymentBaseData\"] ? PaymentBaseData.fromJS(_data[\"lastPaymentBaseData\"]) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GameInstanceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GameInstanceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"userId\"] = this.userId !== undefined ? this.userId : null;\r\n data[\"url\"] = this.url !== undefined ? this.url : null;\r\n data[\"gameTemplateId\"] = this.gameTemplateId !== undefined ? this.gameTemplateId : null;\r\n data[\"gameTemplate\"] = this.gameTemplate ? this.gameTemplate.toJSON() : null;\r\n data[\"isPublic\"] = this.isPublic !== undefined ? this.isPublic : null;\r\n data[\"validUntil\"] = this.validUntil ? this.validUntil.toISOString(true) : null;\r\n data[\"playableFrom\"] = this.playableFrom ? this.playableFrom.toISOString(true) : null;\r\n data[\"playableTo\"] = this.playableTo ? this.playableTo.toISOString(true) : null;\r\n if (Array.isArray(this.assignedProfessions)) {\r\n data[\"assignedProfessions\"] = [];\r\n for (let item of this.assignedProfessions)\r\n data[\"assignedProfessions\"].push(item);\r\n }\r\n data[\"settings\"] = this.settings !== undefined ? this.settings : null;\r\n data[\"lastPaymentBaseData\"] = this.lastPaymentBaseData ? this.lastPaymentBaseData.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGameInstanceDto {\r\n id: string;\r\n title?: string | null;\r\n userId: string;\r\n url?: string | null;\r\n gameTemplateId: string;\r\n gameTemplate?: GameTemplateDto | null;\r\n isPublic: boolean;\r\n validUntil?: moment.Moment | null;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n assignedProfessions?: string[] | null;\r\n settings?: string | null;\r\n lastPaymentBaseData?: PaymentBaseData | null;\r\n}\r\n\r\nexport class PaymentBaseData implements IPaymentBaseData {\r\n isPaymentActive!: boolean;\r\n activePaymentStatus?: PaymentStatus | null;\r\n\r\n constructor(data?: IPaymentBaseData) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isPaymentActive = _data[\"isPaymentActive\"] !== undefined ? _data[\"isPaymentActive\"] : null;\r\n this.activePaymentStatus = _data[\"activePaymentStatus\"] !== undefined ? _data[\"activePaymentStatus\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PaymentBaseData {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PaymentBaseData();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isPaymentActive\"] = this.isPaymentActive !== undefined ? this.isPaymentActive : null;\r\n data[\"activePaymentStatus\"] = this.activePaymentStatus !== undefined ? this.activePaymentStatus : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPaymentBaseData {\r\n isPaymentActive: boolean;\r\n activePaymentStatus?: PaymentStatus | null;\r\n}\r\n\r\nexport class GameInstanceCreateInputModel implements IGameInstanceCreateInputModel {\r\n title!: string;\r\n gameTemplateId!: string;\r\n validUntil?: moment.Moment | null;\r\n isPublic!: boolean;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n settings?: string | null;\r\n\r\n constructor(data?: IGameInstanceCreateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.gameTemplateId = _data[\"gameTemplateId\"] !== undefined ? _data[\"gameTemplateId\"] : null;\r\n this.validUntil = _data[\"validUntil\"] ? moment.parseZone(_data[\"validUntil\"].toString()) : null;\r\n this.isPublic = _data[\"isPublic\"] !== undefined ? _data[\"isPublic\"] : null;\r\n this.playableFrom = _data[\"playableFrom\"] ? moment.parseZone(_data[\"playableFrom\"].toString()) : null;\r\n this.playableTo = _data[\"playableTo\"] ? moment.parseZone(_data[\"playableTo\"].toString()) : null;\r\n this.settings = _data[\"settings\"] !== undefined ? _data[\"settings\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GameInstanceCreateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GameInstanceCreateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"gameTemplateId\"] = this.gameTemplateId !== undefined ? this.gameTemplateId : null;\r\n data[\"validUntil\"] = this.validUntil ? this.validUntil.toISOString(true) : null;\r\n data[\"isPublic\"] = this.isPublic !== undefined ? this.isPublic : null;\r\n data[\"playableFrom\"] = this.playableFrom ? this.playableFrom.toISOString(true) : null;\r\n data[\"playableTo\"] = this.playableTo ? this.playableTo.toISOString(true) : null;\r\n data[\"settings\"] = this.settings !== undefined ? this.settings : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGameInstanceCreateInputModel {\r\n title: string;\r\n gameTemplateId: string;\r\n validUntil?: moment.Moment | null;\r\n isPublic: boolean;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n settings?: string | null;\r\n}\r\n\r\nexport class GameInstanceUpdateInputModel implements IGameInstanceUpdateInputModel {\r\n gameId!: string;\r\n title!: string;\r\n gameTemplateId!: string;\r\n validUntil?: moment.Moment | null;\r\n isPublic!: boolean;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n assignedProfessions?: string[] | null;\r\n settings?: string | null;\r\n\r\n constructor(data?: IGameInstanceUpdateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gameId = _data[\"gameId\"] !== undefined ? _data[\"gameId\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.gameTemplateId = _data[\"gameTemplateId\"] !== undefined ? _data[\"gameTemplateId\"] : null;\r\n this.validUntil = _data[\"validUntil\"] ? moment.parseZone(_data[\"validUntil\"].toString()) : null;\r\n this.isPublic = _data[\"isPublic\"] !== undefined ? _data[\"isPublic\"] : null;\r\n this.playableFrom = _data[\"playableFrom\"] ? moment.parseZone(_data[\"playableFrom\"].toString()) : null;\r\n this.playableTo = _data[\"playableTo\"] ? moment.parseZone(_data[\"playableTo\"].toString()) : null;\r\n if (Array.isArray(_data[\"assignedProfessions\"])) {\r\n this.assignedProfessions = [] as any;\r\n for (let item of _data[\"assignedProfessions\"])\r\n this.assignedProfessions!.push(item);\r\n }\r\n this.settings = _data[\"settings\"] !== undefined ? _data[\"settings\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GameInstanceUpdateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GameInstanceUpdateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameId\"] = this.gameId !== undefined ? this.gameId : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"gameTemplateId\"] = this.gameTemplateId !== undefined ? this.gameTemplateId : null;\r\n data[\"validUntil\"] = this.validUntil ? this.validUntil.toISOString(true) : null;\r\n data[\"isPublic\"] = this.isPublic !== undefined ? this.isPublic : null;\r\n data[\"playableFrom\"] = this.playableFrom ? this.playableFrom.toISOString(true) : null;\r\n data[\"playableTo\"] = this.playableTo ? this.playableTo.toISOString(true) : null;\r\n if (Array.isArray(this.assignedProfessions)) {\r\n data[\"assignedProfessions\"] = [];\r\n for (let item of this.assignedProfessions)\r\n data[\"assignedProfessions\"].push(item);\r\n }\r\n data[\"settings\"] = this.settings !== undefined ? this.settings : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGameInstanceUpdateInputModel {\r\n gameId: string;\r\n title: string;\r\n gameTemplateId: string;\r\n validUntil?: moment.Moment | null;\r\n isPublic: boolean;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n assignedProfessions?: string[] | null;\r\n settings?: string | null;\r\n}\r\n\r\nexport class GameInstanceDeleteInputModel implements IGameInstanceDeleteInputModel {\r\n gameId!: string;\r\n\r\n constructor(data?: IGameInstanceDeleteInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gameId = _data[\"gameId\"] !== undefined ? _data[\"gameId\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GameInstanceDeleteInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GameInstanceDeleteInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameId\"] = this.gameId !== undefined ? this.gameId : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGameInstanceDeleteInputModel {\r\n gameId: string;\r\n}\r\n\r\nexport class AssignableProfessionDto implements IAssignableProfessionDto {\r\n id!: string;\r\n title?: string | null;\r\n displayTitle?: string | null;\r\n isGlobal!: boolean;\r\n questions?: AssignableProfessionQuestionDto[] | null;\r\n\r\n constructor(data?: IAssignableProfessionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.displayTitle = _data[\"displayTitle\"] !== undefined ? _data[\"displayTitle\"] : null;\r\n this.isGlobal = _data[\"isGlobal\"] !== undefined ? _data[\"isGlobal\"] : null;\r\n if (Array.isArray(_data[\"questions\"])) {\r\n this.questions = [] as any;\r\n for (let item of _data[\"questions\"])\r\n this.questions!.push(AssignableProfessionQuestionDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): AssignableProfessionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AssignableProfessionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"displayTitle\"] = this.displayTitle !== undefined ? this.displayTitle : null;\r\n data[\"isGlobal\"] = this.isGlobal !== undefined ? this.isGlobal : null;\r\n if (Array.isArray(this.questions)) {\r\n data[\"questions\"] = [];\r\n for (let item of this.questions)\r\n data[\"questions\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAssignableProfessionDto {\r\n id: string;\r\n title?: string | null;\r\n displayTitle?: string | null;\r\n isGlobal: boolean;\r\n questions?: AssignableProfessionQuestionDto[] | null;\r\n}\r\n\r\nexport class AssignableProfessionQuestionDto implements IAssignableProfessionQuestionDto {\r\n id!: string;\r\n name?: string | null;\r\n children?: AssignableProfessionAnswerDto[] | null;\r\n\r\n constructor(data?: IAssignableProfessionQuestionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.name = _data[\"name\"] !== undefined ? _data[\"name\"] : null;\r\n if (Array.isArray(_data[\"children\"])) {\r\n this.children = [] as any;\r\n for (let item of _data[\"children\"])\r\n this.children!.push(AssignableProfessionAnswerDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): AssignableProfessionQuestionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AssignableProfessionQuestionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"name\"] = this.name !== undefined ? this.name : null;\r\n if (Array.isArray(this.children)) {\r\n data[\"children\"] = [];\r\n for (let item of this.children)\r\n data[\"children\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAssignableProfessionQuestionDto {\r\n id: string;\r\n name?: string | null;\r\n children?: AssignableProfessionAnswerDto[] | null;\r\n}\r\n\r\nexport class AssignableProfessionAnswerDto implements IAssignableProfessionAnswerDto {\r\n id!: string;\r\n name?: string | null;\r\n isCorrect!: boolean;\r\n\r\n constructor(data?: IAssignableProfessionAnswerDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.name = _data[\"name\"] !== undefined ? _data[\"name\"] : null;\r\n this.isCorrect = _data[\"isCorrect\"] !== undefined ? _data[\"isCorrect\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AssignableProfessionAnswerDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AssignableProfessionAnswerDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"name\"] = this.name !== undefined ? this.name : null;\r\n data[\"isCorrect\"] = this.isCorrect !== undefined ? this.isCorrect : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAssignableProfessionAnswerDto {\r\n id: string;\r\n name?: string | null;\r\n isCorrect: boolean;\r\n}\r\n\r\nexport class AdminGameInstanceListItemDto implements IAdminGameInstanceListItemDto {\r\n id!: string;\r\n instanceTitle?: string | null;\r\n gameTitle?: string | null;\r\n ownerId?: string | null;\r\n owner?: string | null;\r\n validUntil?: moment.Moment | null;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n createdDate?: moment.Moment | null;\r\n isDeleted!: boolean;\r\n\r\n constructor(data?: IAdminGameInstanceListItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.instanceTitle = _data[\"instanceTitle\"] !== undefined ? _data[\"instanceTitle\"] : null;\r\n this.gameTitle = _data[\"gameTitle\"] !== undefined ? _data[\"gameTitle\"] : null;\r\n this.ownerId = _data[\"ownerId\"] !== undefined ? _data[\"ownerId\"] : null;\r\n this.owner = _data[\"owner\"] !== undefined ? _data[\"owner\"] : null;\r\n this.validUntil = _data[\"validUntil\"] ? moment.parseZone(_data[\"validUntil\"].toString()) : null;\r\n this.playableFrom = _data[\"playableFrom\"] ? moment.parseZone(_data[\"playableFrom\"].toString()) : null;\r\n this.playableTo = _data[\"playableTo\"] ? moment.parseZone(_data[\"playableTo\"].toString()) : null;\r\n this.createdDate = _data[\"createdDate\"] ? moment.parseZone(_data[\"createdDate\"].toString()) : null;\r\n this.isDeleted = _data[\"isDeleted\"] !== undefined ? _data[\"isDeleted\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AdminGameInstanceListItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AdminGameInstanceListItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"instanceTitle\"] = this.instanceTitle !== undefined ? this.instanceTitle : null;\r\n data[\"gameTitle\"] = this.gameTitle !== undefined ? this.gameTitle : null;\r\n data[\"ownerId\"] = this.ownerId !== undefined ? this.ownerId : null;\r\n data[\"owner\"] = this.owner !== undefined ? this.owner : null;\r\n data[\"validUntil\"] = this.validUntil ? this.validUntil.toISOString(true) : null;\r\n data[\"playableFrom\"] = this.playableFrom ? this.playableFrom.toISOString(true) : null;\r\n data[\"playableTo\"] = this.playableTo ? this.playableTo.toISOString(true) : null;\r\n data[\"createdDate\"] = this.createdDate ? this.createdDate.toISOString(true) : null;\r\n data[\"isDeleted\"] = this.isDeleted !== undefined ? this.isDeleted : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAdminGameInstanceListItemDto {\r\n id: string;\r\n instanceTitle?: string | null;\r\n gameTitle?: string | null;\r\n ownerId?: string | null;\r\n owner?: string | null;\r\n validUntil?: moment.Moment | null;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n createdDate?: moment.Moment | null;\r\n isDeleted: boolean;\r\n}\r\n\r\nexport class AdminGameInstanceDto implements IAdminGameInstanceDto {\r\n id!: string;\r\n title?: string | null;\r\n gameTitle?: string | null;\r\n ownerId?: string | null;\r\n owner?: string | null;\r\n validUntil?: moment.Moment | null;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n createdDate?: moment.Moment | null;\r\n isPublic!: boolean;\r\n\r\n constructor(data?: IAdminGameInstanceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.gameTitle = _data[\"gameTitle\"] !== undefined ? _data[\"gameTitle\"] : null;\r\n this.ownerId = _data[\"ownerId\"] !== undefined ? _data[\"ownerId\"] : null;\r\n this.owner = _data[\"owner\"] !== undefined ? _data[\"owner\"] : null;\r\n this.validUntil = _data[\"validUntil\"] ? moment.parseZone(_data[\"validUntil\"].toString()) : null;\r\n this.playableFrom = _data[\"playableFrom\"] ? moment.parseZone(_data[\"playableFrom\"].toString()) : null;\r\n this.playableTo = _data[\"playableTo\"] ? moment.parseZone(_data[\"playableTo\"].toString()) : null;\r\n this.createdDate = _data[\"createdDate\"] ? moment.parseZone(_data[\"createdDate\"].toString()) : null;\r\n this.isPublic = _data[\"isPublic\"] !== undefined ? _data[\"isPublic\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AdminGameInstanceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AdminGameInstanceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"gameTitle\"] = this.gameTitle !== undefined ? this.gameTitle : null;\r\n data[\"ownerId\"] = this.ownerId !== undefined ? this.ownerId : null;\r\n data[\"owner\"] = this.owner !== undefined ? this.owner : null;\r\n data[\"validUntil\"] = this.validUntil ? this.validUntil.toISOString(true) : null;\r\n data[\"playableFrom\"] = this.playableFrom ? this.playableFrom.toISOString(true) : null;\r\n data[\"playableTo\"] = this.playableTo ? this.playableTo.toISOString(true) : null;\r\n data[\"createdDate\"] = this.createdDate ? this.createdDate.toISOString(true) : null;\r\n data[\"isPublic\"] = this.isPublic !== undefined ? this.isPublic : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAdminGameInstanceDto {\r\n id: string;\r\n title?: string | null;\r\n gameTitle?: string | null;\r\n ownerId?: string | null;\r\n owner?: string | null;\r\n validUntil?: moment.Moment | null;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n createdDate?: moment.Moment | null;\r\n isPublic: boolean;\r\n}\r\n\r\nexport class RuntimeGameInstanceDto implements IRuntimeGameInstanceDto {\r\n gameInstanceId!: string;\r\n type!: GameType;\r\n settings?: string | null;\r\n professions?: RuntimeProfessionOptionDto[] | null;\r\n termsAndConditionsUrl?: string | null;\r\n timePerQuestion!: number;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n\r\n constructor(data?: IRuntimeGameInstanceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n this.type = _data[\"type\"] !== undefined ? _data[\"type\"] : null;\r\n this.settings = _data[\"settings\"] !== undefined ? _data[\"settings\"] : null;\r\n if (Array.isArray(_data[\"professions\"])) {\r\n this.professions = [] as any;\r\n for (let item of _data[\"professions\"])\r\n this.professions!.push(RuntimeProfessionOptionDto.fromJS(item));\r\n }\r\n this.termsAndConditionsUrl = _data[\"termsAndConditionsUrl\"] !== undefined ? _data[\"termsAndConditionsUrl\"] : null;\r\n this.timePerQuestion = _data[\"timePerQuestion\"] !== undefined ? _data[\"timePerQuestion\"] : null;\r\n this.playableFrom = _data[\"playableFrom\"] ? moment.parseZone(_data[\"playableFrom\"].toString()) : null;\r\n this.playableTo = _data[\"playableTo\"] ? moment.parseZone(_data[\"playableTo\"].toString()) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): RuntimeGameInstanceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RuntimeGameInstanceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n data[\"type\"] = this.type !== undefined ? this.type : null;\r\n data[\"settings\"] = this.settings !== undefined ? this.settings : null;\r\n if (Array.isArray(this.professions)) {\r\n data[\"professions\"] = [];\r\n for (let item of this.professions)\r\n data[\"professions\"].push(item.toJSON());\r\n }\r\n data[\"termsAndConditionsUrl\"] = this.termsAndConditionsUrl !== undefined ? this.termsAndConditionsUrl : null;\r\n data[\"timePerQuestion\"] = this.timePerQuestion !== undefined ? this.timePerQuestion : null;\r\n data[\"playableFrom\"] = this.playableFrom ? this.playableFrom.toISOString(true) : null;\r\n data[\"playableTo\"] = this.playableTo ? this.playableTo.toISOString(true) : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IRuntimeGameInstanceDto {\r\n gameInstanceId: string;\r\n type: GameType;\r\n settings?: string | null;\r\n professions?: RuntimeProfessionOptionDto[] | null;\r\n termsAndConditionsUrl?: string | null;\r\n timePerQuestion: number;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n}\r\n\r\nexport class RuntimeProfessionOptionDto implements IRuntimeProfessionOptionDto {\r\n id!: string;\r\n name?: string | null;\r\n\r\n constructor(data?: IRuntimeProfessionOptionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.name = _data[\"name\"] !== undefined ? _data[\"name\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): RuntimeProfessionOptionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RuntimeProfessionOptionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"name\"] = this.name !== undefined ? this.name : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IRuntimeProfessionOptionDto {\r\n id: string;\r\n name?: string | null;\r\n}\r\n\r\nexport class PlayerInstanceDto implements IPlayerInstanceDto {\r\n id!: string;\r\n\r\n constructor(data?: IPlayerInstanceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceDto {\r\n id: string;\r\n}\r\n\r\nexport class PlayerInstanceInputModel implements IPlayerInstanceInputModel {\r\n email!: string;\r\n name!: string;\r\n professionId!: string;\r\n gameInstanceId!: string;\r\n\r\n constructor(data?: IPlayerInstanceInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.name = _data[\"name\"] !== undefined ? _data[\"name\"] : null;\r\n this.professionId = _data[\"professionId\"] !== undefined ? _data[\"professionId\"] : null;\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"name\"] = this.name !== undefined ? this.name : null;\r\n data[\"professionId\"] = this.professionId !== undefined ? this.professionId : null;\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceInputModel {\r\n email: string;\r\n name: string;\r\n professionId: string;\r\n gameInstanceId: string;\r\n}\r\n\r\nexport class PlayerInstanceAnswerDto implements IPlayerInstanceAnswerDto {\r\n id!: string;\r\n isCorrectAnswer!: boolean;\r\n\r\n constructor(data?: IPlayerInstanceAnswerDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.isCorrectAnswer = _data[\"isCorrectAnswer\"] !== undefined ? _data[\"isCorrectAnswer\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceAnswerDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceAnswerDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"isCorrectAnswer\"] = this.isCorrectAnswer !== undefined ? this.isCorrectAnswer : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceAnswerDto {\r\n id: string;\r\n isCorrectAnswer: boolean;\r\n}\r\n\r\nexport class PlayerInstanceAnswerInputModel implements IPlayerInstanceAnswerInputModel {\r\n playerInstanceId!: string;\r\n answeredQuestionId!: string;\r\n answeredQuestion?: string | null;\r\n answer?: string | null;\r\n isCorrectAnswer!: boolean;\r\n\r\n constructor(data?: IPlayerInstanceAnswerInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.playerInstanceId = _data[\"playerInstanceId\"] !== undefined ? _data[\"playerInstanceId\"] : null;\r\n this.answeredQuestionId = _data[\"answeredQuestionId\"] !== undefined ? _data[\"answeredQuestionId\"] : null;\r\n this.answeredQuestion = _data[\"answeredQuestion\"] !== undefined ? _data[\"answeredQuestion\"] : null;\r\n this.answer = _data[\"answer\"] !== undefined ? _data[\"answer\"] : null;\r\n this.isCorrectAnswer = _data[\"isCorrectAnswer\"] !== undefined ? _data[\"isCorrectAnswer\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceAnswerInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceAnswerInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"playerInstanceId\"] = this.playerInstanceId !== undefined ? this.playerInstanceId : null;\r\n data[\"answeredQuestionId\"] = this.answeredQuestionId !== undefined ? this.answeredQuestionId : null;\r\n data[\"answeredQuestion\"] = this.answeredQuestion !== undefined ? this.answeredQuestion : null;\r\n data[\"answer\"] = this.answer !== undefined ? this.answer : null;\r\n data[\"isCorrectAnswer\"] = this.isCorrectAnswer !== undefined ? this.isCorrectAnswer : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceAnswerInputModel {\r\n playerInstanceId: string;\r\n answeredQuestionId: string;\r\n answeredQuestion?: string | null;\r\n answer?: string | null;\r\n isCorrectAnswer: boolean;\r\n}\r\n\r\nexport class PlayerInstanceLogDto implements IPlayerInstanceLogDto {\r\n id!: string;\r\n\r\n constructor(data?: IPlayerInstanceLogDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceLogDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceLogDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceLogDto {\r\n id: string;\r\n}\r\n\r\nexport class PlayerInstanceLogInputModel implements IPlayerInstanceLogInputModel {\r\n score!: number;\r\n playerInstanceId!: string;\r\n logTrigger?: string | null;\r\n\r\n constructor(data?: IPlayerInstanceLogInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.score = _data[\"score\"] !== undefined ? _data[\"score\"] : null;\r\n this.playerInstanceId = _data[\"playerInstanceId\"] !== undefined ? _data[\"playerInstanceId\"] : null;\r\n this.logTrigger = _data[\"logTrigger\"] !== undefined ? _data[\"logTrigger\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceLogInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceLogInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"score\"] = this.score !== undefined ? this.score : null;\r\n data[\"playerInstanceId\"] = this.playerInstanceId !== undefined ? this.playerInstanceId : null;\r\n data[\"logTrigger\"] = this.logTrigger !== undefined ? this.logTrigger : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceLogInputModel {\r\n score: number;\r\n playerInstanceId: string;\r\n logTrigger?: string | null;\r\n}\r\n\r\nexport class PlayerInstanceDetailsInputModel implements IPlayerInstanceDetailsInputModel {\r\n playerInstanceId!: string;\r\n cv?: string | null;\r\n\r\n constructor(data?: IPlayerInstanceDetailsInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.playerInstanceId = _data[\"playerInstanceId\"] !== undefined ? _data[\"playerInstanceId\"] : null;\r\n this.cv = _data[\"cv\"] !== undefined ? _data[\"cv\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceDetailsInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceDetailsInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"playerInstanceId\"] = this.playerInstanceId !== undefined ? this.playerInstanceId : null;\r\n data[\"cv\"] = this.cv !== undefined ? this.cv : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceDetailsInputModel {\r\n playerInstanceId: string;\r\n cv?: string | null;\r\n}\r\n\r\nexport class EmailMessageBase implements IEmailMessageBase {\r\n to?: string | null;\r\n languageCode?: string | null;\r\n subjectParam?: string | null;\r\n\r\n constructor(data?: IEmailMessageBase) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.to = _data[\"to\"] !== undefined ? _data[\"to\"] : null;\r\n this.languageCode = _data[\"languageCode\"] !== undefined ? _data[\"languageCode\"] : null;\r\n this.subjectParam = _data[\"subjectParam\"] !== undefined ? _data[\"subjectParam\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): EmailMessageBase {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EmailMessageBase();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"to\"] = this.to !== undefined ? this.to : null;\r\n data[\"languageCode\"] = this.languageCode !== undefined ? this.languageCode : null;\r\n data[\"subjectParam\"] = this.subjectParam !== undefined ? this.subjectParam : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IEmailMessageBase {\r\n to?: string | null;\r\n languageCode?: string | null;\r\n subjectParam?: string | null;\r\n}\r\n\r\nexport class SubmitContactFormInputModel extends EmailMessageBase implements ISubmitContactFormInputModel {\r\n userName?: string | null;\r\n userEmail?: string | null;\r\n userSubject?: string | null;\r\n userMessage?: string | null;\r\n\r\n constructor(data?: ISubmitContactFormInputModel) {\r\n super(data);\r\n }\r\n\r\n init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.userName = _data[\"userName\"] !== undefined ? _data[\"userName\"] : null;\r\n this.userEmail = _data[\"userEmail\"] !== undefined ? _data[\"userEmail\"] : null;\r\n this.userSubject = _data[\"userSubject\"] !== undefined ? _data[\"userSubject\"] : null;\r\n this.userMessage = _data[\"userMessage\"] !== undefined ? _data[\"userMessage\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): SubmitContactFormInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SubmitContactFormInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"userName\"] = this.userName !== undefined ? this.userName : null;\r\n data[\"userEmail\"] = this.userEmail !== undefined ? this.userEmail : null;\r\n data[\"userSubject\"] = this.userSubject !== undefined ? this.userSubject : null;\r\n data[\"userMessage\"] = this.userMessage !== undefined ? this.userMessage : null;\r\n super.toJSON(data);\r\n return data; \r\n }\r\n}\r\n\r\nexport interface ISubmitContactFormInputModel extends IEmailMessageBase {\r\n userName?: string | null;\r\n userEmail?: string | null;\r\n userSubject?: string | null;\r\n userMessage?: string | null;\r\n}\r\n\r\nexport class SubmitEmailFormInputModel extends EmailMessageBase implements ISubmitEmailFormInputModel {\r\n email?: string | null;\r\n\r\n constructor(data?: ISubmitEmailFormInputModel) {\r\n super(data);\r\n }\r\n\r\n init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): SubmitEmailFormInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SubmitEmailFormInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n super.toJSON(data);\r\n return data; \r\n }\r\n}\r\n\r\nexport interface ISubmitEmailFormInputModel extends IEmailMessageBase {\r\n email?: string | null;\r\n}\r\n\r\nexport class PaymentsAdminDto implements IPaymentsAdminDto {\r\n id!: string;\r\n userId?: string | null;\r\n orderNumber?: string | null;\r\n offerTitle?: string | null;\r\n createdAt?: moment.Moment | null;\r\n updatedAt?: moment.Moment | null;\r\n priceInfo?: PriceInfo | null;\r\n paymentStatus!: PaymentStatus;\r\n isInvoiceCreated!: boolean;\r\n gameInstanceId!: string;\r\n gameInstanceTitle?: string | null;\r\n invoiceCode?: string | null;\r\n companyName?: string | null;\r\n vatNumber?: string | null;\r\n buyerIdentifier?: string | null;\r\n email?: string | null;\r\n address?: AddressDto | null;\r\n titleEng?: string | null;\r\n titlePl?: string | null;\r\n\r\n constructor(data?: IPaymentsAdminDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.userId = _data[\"userId\"] !== undefined ? _data[\"userId\"] : null;\r\n this.orderNumber = _data[\"orderNumber\"] !== undefined ? _data[\"orderNumber\"] : null;\r\n this.offerTitle = _data[\"offerTitle\"] !== undefined ? _data[\"offerTitle\"] : null;\r\n this.createdAt = _data[\"createdAt\"] ? moment.parseZone(_data[\"createdAt\"].toString()) : null;\r\n this.updatedAt = _data[\"updatedAt\"] ? moment.parseZone(_data[\"updatedAt\"].toString()) : null;\r\n this.priceInfo = _data[\"priceInfo\"] ? PriceInfo.fromJS(_data[\"priceInfo\"]) : null;\r\n this.paymentStatus = _data[\"paymentStatus\"] !== undefined ? _data[\"paymentStatus\"] : null;\r\n this.isInvoiceCreated = _data[\"isInvoiceCreated\"] !== undefined ? _data[\"isInvoiceCreated\"] : null;\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n this.gameInstanceTitle = _data[\"gameInstanceTitle\"] !== undefined ? _data[\"gameInstanceTitle\"] : null;\r\n this.invoiceCode = _data[\"invoiceCode\"] !== undefined ? _data[\"invoiceCode\"] : null;\r\n this.companyName = _data[\"companyName\"] !== undefined ? _data[\"companyName\"] : null;\r\n this.vatNumber = _data[\"vatNumber\"] !== undefined ? _data[\"vatNumber\"] : null;\r\n this.buyerIdentifier = _data[\"buyerIdentifier\"] !== undefined ? _data[\"buyerIdentifier\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.address = _data[\"address\"] ? AddressDto.fromJS(_data[\"address\"]) : null;\r\n this.titleEng = _data[\"titleEng\"] !== undefined ? _data[\"titleEng\"] : null;\r\n this.titlePl = _data[\"titlePl\"] !== undefined ? _data[\"titlePl\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PaymentsAdminDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PaymentsAdminDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"userId\"] = this.userId !== undefined ? this.userId : null;\r\n data[\"orderNumber\"] = this.orderNumber !== undefined ? this.orderNumber : null;\r\n data[\"offerTitle\"] = this.offerTitle !== undefined ? this.offerTitle : null;\r\n data[\"createdAt\"] = this.createdAt ? this.createdAt.toISOString(true) : null;\r\n data[\"updatedAt\"] = this.updatedAt ? this.updatedAt.toISOString(true) : null;\r\n data[\"priceInfo\"] = this.priceInfo ? this.priceInfo.toJSON() : null;\r\n data[\"paymentStatus\"] = this.paymentStatus !== undefined ? this.paymentStatus : null;\r\n data[\"isInvoiceCreated\"] = this.isInvoiceCreated !== undefined ? this.isInvoiceCreated : null;\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n data[\"gameInstanceTitle\"] = this.gameInstanceTitle !== undefined ? this.gameInstanceTitle : null;\r\n data[\"invoiceCode\"] = this.invoiceCode !== undefined ? this.invoiceCode : null;\r\n data[\"companyName\"] = this.companyName !== undefined ? this.companyName : null;\r\n data[\"vatNumber\"] = this.vatNumber !== undefined ? this.vatNumber : null;\r\n data[\"buyerIdentifier\"] = this.buyerIdentifier !== undefined ? this.buyerIdentifier : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"address\"] = this.address ? this.address.toJSON() : null;\r\n data[\"titleEng\"] = this.titleEng !== undefined ? this.titleEng : null;\r\n data[\"titlePl\"] = this.titlePl !== undefined ? this.titlePl : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPaymentsAdminDto {\r\n id: string;\r\n userId?: string | null;\r\n orderNumber?: string | null;\r\n offerTitle?: string | null;\r\n createdAt?: moment.Moment | null;\r\n updatedAt?: moment.Moment | null;\r\n priceInfo?: PriceInfo | null;\r\n paymentStatus: PaymentStatus;\r\n isInvoiceCreated: boolean;\r\n gameInstanceId: string;\r\n gameInstanceTitle?: string | null;\r\n invoiceCode?: string | null;\r\n companyName?: string | null;\r\n vatNumber?: string | null;\r\n buyerIdentifier?: string | null;\r\n email?: string | null;\r\n address?: AddressDto | null;\r\n titleEng?: string | null;\r\n titlePl?: string | null;\r\n}\r\n\r\nexport class AddressDto implements IAddressDto {\r\n countryCode!: string;\r\n city?: string | null;\r\n postCode?: string | null;\r\n street?: string | null;\r\n\r\n constructor(data?: IAddressDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.countryCode = _data[\"countryCode\"] !== undefined ? _data[\"countryCode\"] : null;\r\n this.city = _data[\"city\"] !== undefined ? _data[\"city\"] : null;\r\n this.postCode = _data[\"postCode\"] !== undefined ? _data[\"postCode\"] : null;\r\n this.street = _data[\"street\"] !== undefined ? _data[\"street\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AddressDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AddressDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"countryCode\"] = this.countryCode !== undefined ? this.countryCode : null;\r\n data[\"city\"] = this.city !== undefined ? this.city : null;\r\n data[\"postCode\"] = this.postCode !== undefined ? this.postCode : null;\r\n data[\"street\"] = this.street !== undefined ? this.street : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAddressDto {\r\n countryCode: string;\r\n city?: string | null;\r\n postCode?: string | null;\r\n street?: string | null;\r\n}\r\n\r\nexport class PayInputModel implements IPayInputModel {\r\n gameInstanceId!: string;\r\n orderNumber?: string | null;\r\n\r\n constructor(data?: IPayInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n this.orderNumber = _data[\"orderNumber\"] !== undefined ? _data[\"orderNumber\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PayInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PayInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n data[\"orderNumber\"] = this.orderNumber !== undefined ? this.orderNumber : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPayInputModel {\r\n gameInstanceId: string;\r\n orderNumber?: string | null;\r\n}\r\n\r\nexport class RecipientDataInputModel implements IRecipientDataInputModel {\r\n orderNumber!: string;\r\n currency!: Currency;\r\n discountCode?: string | null;\r\n companyName?: string | null;\r\n vatNumber?: string | null;\r\n address!: Address;\r\n\r\n constructor(data?: IRecipientDataInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.address = new Address();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.orderNumber = _data[\"orderNumber\"] !== undefined ? _data[\"orderNumber\"] : null;\r\n this.currency = _data[\"currency\"] !== undefined ? _data[\"currency\"] : null;\r\n this.discountCode = _data[\"discountCode\"] !== undefined ? _data[\"discountCode\"] : null;\r\n this.companyName = _data[\"companyName\"] !== undefined ? _data[\"companyName\"] : null;\r\n this.vatNumber = _data[\"vatNumber\"] !== undefined ? _data[\"vatNumber\"] : null;\r\n this.address = _data[\"address\"] ? Address.fromJS(_data[\"address\"]) : new Address();\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecipientDataInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecipientDataInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"orderNumber\"] = this.orderNumber !== undefined ? this.orderNumber : null;\r\n data[\"currency\"] = this.currency !== undefined ? this.currency : null;\r\n data[\"discountCode\"] = this.discountCode !== undefined ? this.discountCode : null;\r\n data[\"companyName\"] = this.companyName !== undefined ? this.companyName : null;\r\n data[\"vatNumber\"] = this.vatNumber !== undefined ? this.vatNumber : null;\r\n data[\"address\"] = this.address ? this.address.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IRecipientDataInputModel {\r\n orderNumber: string;\r\n currency: Currency;\r\n discountCode?: string | null;\r\n companyName?: string | null;\r\n vatNumber?: string | null;\r\n address: Address;\r\n}\r\n\r\nexport class GameInstanceRecipientDataInputModel extends RecipientDataInputModel implements IGameInstanceRecipientDataInputModel {\r\n gameInstanceId!: string;\r\n\r\n constructor(data?: IGameInstanceRecipientDataInputModel) {\r\n super(data);\r\n }\r\n\r\n init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GameInstanceRecipientDataInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GameInstanceRecipientDataInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n super.toJSON(data);\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGameInstanceRecipientDataInputModel extends IRecipientDataInputModel {\r\n gameInstanceId: string;\r\n}\r\n\r\nexport class Address implements IAddress {\r\n countryCode!: string;\r\n city?: string | null;\r\n postCode?: string | null;\r\n street?: string | null;\r\n\r\n constructor(data?: IAddress) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.countryCode = _data[\"countryCode\"] !== undefined ? _data[\"countryCode\"] : null;\r\n this.city = _data[\"city\"] !== undefined ? _data[\"city\"] : null;\r\n this.postCode = _data[\"postCode\"] !== undefined ? _data[\"postCode\"] : null;\r\n this.street = _data[\"street\"] !== undefined ? _data[\"street\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): Address {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Address();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"countryCode\"] = this.countryCode !== undefined ? this.countryCode : null;\r\n data[\"city\"] = this.city !== undefined ? this.city : null;\r\n data[\"postCode\"] = this.postCode !== undefined ? this.postCode : null;\r\n data[\"street\"] = this.street !== undefined ? this.street : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAddress {\r\n countryCode: string;\r\n city?: string | null;\r\n postCode?: string | null;\r\n street?: string | null;\r\n}\r\n\r\nexport class CreateEmptyPurchaseDto implements ICreateEmptyPurchaseDto {\r\n purchaseId!: string;\r\n purchaseNumber?: string | null;\r\n\r\n constructor(data?: ICreateEmptyPurchaseDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.purchaseId = _data[\"purchaseId\"] !== undefined ? _data[\"purchaseId\"] : null;\r\n this.purchaseNumber = _data[\"purchaseNumber\"] !== undefined ? _data[\"purchaseNumber\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateEmptyPurchaseDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateEmptyPurchaseDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"purchaseId\"] = this.purchaseId !== undefined ? this.purchaseId : null;\r\n data[\"purchaseNumber\"] = this.purchaseNumber !== undefined ? this.purchaseNumber : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface ICreateEmptyPurchaseDto {\r\n purchaseId: string;\r\n purchaseNumber?: string | null;\r\n}\r\n\r\nexport class CreateEmptyPurchaseInputModel implements ICreateEmptyPurchaseInputModel {\r\n gameInstanceId!: string;\r\n\r\n constructor(data?: ICreateEmptyPurchaseInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): CreateEmptyPurchaseInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateEmptyPurchaseInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface ICreateEmptyPurchaseInputModel {\r\n gameInstanceId: string;\r\n}\r\n\r\nexport class PayUUpdateNotification implements IPayUUpdateNotification {\r\n order?: PayUOrderExtended | null;\r\n\r\n constructor(data?: IPayUUpdateNotification) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.order = _data[\"order\"] ? PayUOrderExtended.fromJS(_data[\"order\"]) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PayUUpdateNotification {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PayUUpdateNotification();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"order\"] = this.order ? this.order.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPayUUpdateNotification {\r\n order?: PayUOrderExtended | null;\r\n}\r\n\r\nexport class PayUOrder implements IPayUOrder {\r\n /** Identyfikator zamówienia w systemie sprzedawcy */\r\n extOrderId?: string | null;\r\n /** Adres pod który będą przesyłane powiadomienia */\r\n notifyUrl?: string | null;\r\n /** Adres IP płacącego, np. \"123.123.123.123\" (uwaga: adres \"0.0.0.0\" nie jest dopuszczalny). */\r\n customerIp?: string | null;\r\n /** Identyfikator punktu płatności na którym zostanie wykonana płatność\t */\r\n merchantPosId?: string | null;\r\n /** Czas w trakcie którego możliwe jest dokończenie zamówienia w sekundach. */\r\n validityTime?: number | null;\r\n /** Opis zamówienia (wymagany) */\r\n description?: string | null;\r\n /** Dodatkowy opis zamówienia. (niewymagany) */\r\n additionalDescription?: string | null;\r\n /** Waluta zamówienia w standardzie ISO 4217, np. \"PLN\". */\r\n currencyCode?: string | null;\r\n /** Całkowity koszt zamówienia w groszach (np. 1000 to 10,00 EUR). Dotyczy również walut bez groszy (tj. 1000 to 10 HUF). */\r\n totalAmount?: string | null;\r\n /** Adres na jaki będzie przekierowany płatnik po zakończeniu procesu płatności */\r\n continueUrl?: string | null;\r\n /** Sekcja przechowująca dane kupującego. */\r\n buyer?: PayUBuyer | null;\r\n /** Sekcja zawiera dane o produktach. */\r\n products?: PayUOrderProduct[] | null;\r\n settings?: PayUOrderSettings | null;\r\n\r\n constructor(data?: IPayUOrder) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.extOrderId = _data[\"extOrderId\"] !== undefined ? _data[\"extOrderId\"] : null;\r\n this.notifyUrl = _data[\"notifyUrl\"] !== undefined ? _data[\"notifyUrl\"] : null;\r\n this.customerIp = _data[\"customerIp\"] !== undefined ? _data[\"customerIp\"] : null;\r\n this.merchantPosId = _data[\"merchantPosId\"] !== undefined ? _data[\"merchantPosId\"] : null;\r\n this.validityTime = _data[\"validityTime\"] !== undefined ? _data[\"validityTime\"] : null;\r\n this.description = _data[\"description\"] !== undefined ? _data[\"description\"] : null;\r\n this.additionalDescription = _data[\"additionalDescription\"] !== undefined ? _data[\"additionalDescription\"] : null;\r\n this.currencyCode = _data[\"currencyCode\"] !== undefined ? _data[\"currencyCode\"] : null;\r\n this.totalAmount = _data[\"totalAmount\"] !== undefined ? _data[\"totalAmount\"] : null;\r\n this.continueUrl = _data[\"continueUrl\"] !== undefined ? _data[\"continueUrl\"] : null;\r\n this.buyer = _data[\"buyer\"] ? PayUBuyer.fromJS(_data[\"buyer\"]) : null;\r\n if (Array.isArray(_data[\"products\"])) {\r\n this.products = [] as any;\r\n for (let item of _data[\"products\"])\r\n this.products!.push(PayUOrderProduct.fromJS(item));\r\n }\r\n this.settings = _data[\"settings\"] ? PayUOrderSettings.fromJS(_data[\"settings\"]) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PayUOrder {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PayUOrder();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"extOrderId\"] = this.extOrderId !== undefined ? this.extOrderId : null;\r\n data[\"notifyUrl\"] = this.notifyUrl !== undefined ? this.notifyUrl : null;\r\n data[\"customerIp\"] = this.customerIp !== undefined ? this.customerIp : null;\r\n data[\"merchantPosId\"] = this.merchantPosId !== undefined ? this.merchantPosId : null;\r\n data[\"validityTime\"] = this.validityTime !== undefined ? this.validityTime : null;\r\n data[\"description\"] = this.description !== undefined ? this.description : null;\r\n data[\"additionalDescription\"] = this.additionalDescription !== undefined ? this.additionalDescription : null;\r\n data[\"currencyCode\"] = this.currencyCode !== undefined ? this.currencyCode : null;\r\n data[\"totalAmount\"] = this.totalAmount !== undefined ? this.totalAmount : null;\r\n data[\"continueUrl\"] = this.continueUrl !== undefined ? this.continueUrl : null;\r\n data[\"buyer\"] = this.buyer ? this.buyer.toJSON() : null;\r\n if (Array.isArray(this.products)) {\r\n data[\"products\"] = [];\r\n for (let item of this.products)\r\n data[\"products\"].push(item.toJSON());\r\n }\r\n data[\"settings\"] = this.settings ? this.settings.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPayUOrder {\r\n /** Identyfikator zamówienia w systemie sprzedawcy */\r\n extOrderId?: string | null;\r\n /** Adres pod który będą przesyłane powiadomienia */\r\n notifyUrl?: string | null;\r\n /** Adres IP płacącego, np. \"123.123.123.123\" (uwaga: adres \"0.0.0.0\" nie jest dopuszczalny). */\r\n customerIp?: string | null;\r\n /** Identyfikator punktu płatności na którym zostanie wykonana płatność\t */\r\n merchantPosId?: string | null;\r\n /** Czas w trakcie którego możliwe jest dokończenie zamówienia w sekundach. */\r\n validityTime?: number | null;\r\n /** Opis zamówienia (wymagany) */\r\n description?: string | null;\r\n /** Dodatkowy opis zamówienia. (niewymagany) */\r\n additionalDescription?: string | null;\r\n /** Waluta zamówienia w standardzie ISO 4217, np. \"PLN\". */\r\n currencyCode?: string | null;\r\n /** Całkowity koszt zamówienia w groszach (np. 1000 to 10,00 EUR). Dotyczy również walut bez groszy (tj. 1000 to 10 HUF). */\r\n totalAmount?: string | null;\r\n /** Adres na jaki będzie przekierowany płatnik po zakończeniu procesu płatności */\r\n continueUrl?: string | null;\r\n /** Sekcja przechowująca dane kupującego. */\r\n buyer?: PayUBuyer | null;\r\n /** Sekcja zawiera dane o produktach. */\r\n products?: PayUOrderProduct[] | null;\r\n settings?: PayUOrderSettings | null;\r\n}\r\n\r\nexport class PayUOrderExtended extends PayUOrder implements IPayUOrderExtended {\r\n orderId?: string | null;\r\n status?: string | null;\r\n orderCreateDate?: moment.Moment | null;\r\n\r\n constructor(data?: IPayUOrderExtended) {\r\n super(data);\r\n }\r\n\r\n init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.orderId = _data[\"orderId\"] !== undefined ? _data[\"orderId\"] : null;\r\n this.status = _data[\"status\"] !== undefined ? _data[\"status\"] : null;\r\n this.orderCreateDate = _data[\"orderCreateDate\"] ? moment.parseZone(_data[\"orderCreateDate\"].toString()) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PayUOrderExtended {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PayUOrderExtended();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"orderId\"] = this.orderId !== undefined ? this.orderId : null;\r\n data[\"status\"] = this.status !== undefined ? this.status : null;\r\n data[\"orderCreateDate\"] = this.orderCreateDate ? this.orderCreateDate.toISOString(true) : null;\r\n super.toJSON(data);\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPayUOrderExtended extends IPayUOrder {\r\n orderId?: string | null;\r\n status?: string | null;\r\n orderCreateDate?: moment.Moment | null;\r\n}\r\n\r\nexport class PayUBuyer implements IPayUBuyer {\r\n email?: string | null;\r\n /** Kod języka zgodnie z ISO-639-1 - określa język strony płatniczej oraz język wiadomości e-mail wysyłanych przez PayU do płatnika - https://developers.payu.com/pl/overview.html#languages */\r\n language?: string | null;\r\n\r\n constructor(data?: IPayUBuyer) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.language = _data[\"language\"] !== undefined ? _data[\"language\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PayUBuyer {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PayUBuyer();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"language\"] = this.language !== undefined ? this.language : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPayUBuyer {\r\n email?: string | null;\r\n /** Kod języka zgodnie z ISO-639-1 - określa język strony płatniczej oraz język wiadomości e-mail wysyłanych przez PayU do płatnika - https://developers.payu.com/pl/overview.html#languages */\r\n language?: string | null;\r\n}\r\n\r\nexport class PayUOrderProduct implements IPayUOrderProduct {\r\n name?: string | null;\r\n unitPrice?: string | null;\r\n quantity?: string | null;\r\n\r\n constructor(data?: IPayUOrderProduct) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"] !== undefined ? _data[\"name\"] : null;\r\n this.unitPrice = _data[\"unitPrice\"] !== undefined ? _data[\"unitPrice\"] : null;\r\n this.quantity = _data[\"quantity\"] !== undefined ? _data[\"quantity\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PayUOrderProduct {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PayUOrderProduct();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name !== undefined ? this.name : null;\r\n data[\"unitPrice\"] = this.unitPrice !== undefined ? this.unitPrice : null;\r\n data[\"quantity\"] = this.quantity !== undefined ? this.quantity : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPayUOrderProduct {\r\n name?: string | null;\r\n unitPrice?: string | null;\r\n quantity?: string | null;\r\n}\r\n\r\nexport class PayUOrderSettings implements IPayUOrderSettings {\r\n invoiceDisabled!: boolean;\r\n\r\n constructor(data?: IPayUOrderSettings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.invoiceDisabled = _data[\"invoiceDisabled\"] !== undefined ? _data[\"invoiceDisabled\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PayUOrderSettings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PayUOrderSettings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"invoiceDisabled\"] = this.invoiceDisabled !== undefined ? this.invoiceDisabled : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPayUOrderSettings {\r\n invoiceDisabled: boolean;\r\n}\r\n\r\nexport class GetInitialOrderDataDto implements IGetInitialOrderDataDto {\r\n gameInstanceId!: string;\r\n priceInfo!: PriceInfo;\r\n invoiceRecipient!: InvoiceRecipientDto;\r\n newValidUntil?: moment.Moment | null;\r\n\r\n constructor(data?: IGetInitialOrderDataDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.priceInfo = new PriceInfo();\r\n this.invoiceRecipient = new InvoiceRecipientDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n this.priceInfo = _data[\"priceInfo\"] ? PriceInfo.fromJS(_data[\"priceInfo\"]) : new PriceInfo();\r\n this.invoiceRecipient = _data[\"invoiceRecipient\"] ? InvoiceRecipientDto.fromJS(_data[\"invoiceRecipient\"]) : new InvoiceRecipientDto();\r\n this.newValidUntil = _data[\"newValidUntil\"] ? moment.parseZone(_data[\"newValidUntil\"].toString()) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetInitialOrderDataDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetInitialOrderDataDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n data[\"priceInfo\"] = this.priceInfo ? this.priceInfo.toJSON() : null;\r\n data[\"invoiceRecipient\"] = this.invoiceRecipient ? this.invoiceRecipient.toJSON() : null;\r\n data[\"newValidUntil\"] = this.newValidUntil ? this.newValidUntil.toISOString(true) : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGetInitialOrderDataDto {\r\n gameInstanceId: string;\r\n priceInfo: PriceInfo;\r\n invoiceRecipient: InvoiceRecipientDto;\r\n newValidUntil?: moment.Moment | null;\r\n}\r\n\r\nexport class InvoiceRecipientDto implements IInvoiceRecipientDto {\r\n companyName!: string;\r\n vatNumber?: string | null;\r\n address!: AddressDto;\r\n\r\n constructor(data?: IInvoiceRecipientDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.address = new AddressDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.companyName = _data[\"companyName\"] !== undefined ? _data[\"companyName\"] : null;\r\n this.vatNumber = _data[\"vatNumber\"] !== undefined ? _data[\"vatNumber\"] : null;\r\n this.address = _data[\"address\"] ? AddressDto.fromJS(_data[\"address\"]) : new AddressDto();\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceRecipientDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceRecipientDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"companyName\"] = this.companyName !== undefined ? this.companyName : null;\r\n data[\"vatNumber\"] = this.vatNumber !== undefined ? this.vatNumber : null;\r\n data[\"address\"] = this.address ? this.address.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInvoiceRecipientDto {\r\n companyName: string;\r\n vatNumber?: string | null;\r\n address: AddressDto;\r\n}\r\n\r\nexport class VerifyDiscountResultDto implements IVerifyDiscountResultDto {\r\n code!: string;\r\n value!: number;\r\n priceInfo?: PriceInfo | null;\r\n\r\n constructor(data?: IVerifyDiscountResultDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.code = _data[\"code\"] !== undefined ? _data[\"code\"] : null;\r\n this.value = _data[\"value\"] !== undefined ? _data[\"value\"] : null;\r\n this.priceInfo = _data[\"priceInfo\"] ? PriceInfo.fromJS(_data[\"priceInfo\"]) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): VerifyDiscountResultDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new VerifyDiscountResultDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"code\"] = this.code !== undefined ? this.code : null;\r\n data[\"value\"] = this.value !== undefined ? this.value : null;\r\n data[\"priceInfo\"] = this.priceInfo ? this.priceInfo.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IVerifyDiscountResultDto {\r\n code: string;\r\n value: number;\r\n priceInfo?: PriceInfo | null;\r\n}\r\n\r\nexport class GetPriceInfoDto implements IGetPriceInfoDto {\r\n priceInfo?: PriceInfo | null;\r\n\r\n constructor(data?: IGetPriceInfoDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.priceInfo = _data[\"priceInfo\"] ? PriceInfo.fromJS(_data[\"priceInfo\"]) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetPriceInfoDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetPriceInfoDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"priceInfo\"] = this.priceInfo ? this.priceInfo.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGetPriceInfoDto {\r\n priceInfo?: PriceInfo | null;\r\n}\r\n\r\nexport class OrderListItemDto implements IOrderListItemDto {\r\n id!: string;\r\n orderNumber?: string | null;\r\n offerTitle?: string | null;\r\n createdAt?: moment.Moment | null;\r\n updatedAt?: moment.Moment | null;\r\n priceInfo?: PriceInfo | null;\r\n status!: PaymentStatus;\r\n isInvoiceCreated!: boolean;\r\n gameInstanceId!: string;\r\n gameInstanceTitle?: string | null;\r\n gameInstanceDeleted!: boolean;\r\n\r\n constructor(data?: IOrderListItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.orderNumber = _data[\"orderNumber\"] !== undefined ? _data[\"orderNumber\"] : null;\r\n this.offerTitle = _data[\"offerTitle\"] !== undefined ? _data[\"offerTitle\"] : null;\r\n this.createdAt = _data[\"createdAt\"] ? moment.parseZone(_data[\"createdAt\"].toString()) : null;\r\n this.updatedAt = _data[\"updatedAt\"] ? moment.parseZone(_data[\"updatedAt\"].toString()) : null;\r\n this.priceInfo = _data[\"priceInfo\"] ? PriceInfo.fromJS(_data[\"priceInfo\"]) : null;\r\n this.status = _data[\"status\"] !== undefined ? _data[\"status\"] : null;\r\n this.isInvoiceCreated = _data[\"isInvoiceCreated\"] !== undefined ? _data[\"isInvoiceCreated\"] : null;\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n this.gameInstanceTitle = _data[\"gameInstanceTitle\"] !== undefined ? _data[\"gameInstanceTitle\"] : null;\r\n this.gameInstanceDeleted = _data[\"gameInstanceDeleted\"] !== undefined ? _data[\"gameInstanceDeleted\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderListItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderListItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"orderNumber\"] = this.orderNumber !== undefined ? this.orderNumber : null;\r\n data[\"offerTitle\"] = this.offerTitle !== undefined ? this.offerTitle : null;\r\n data[\"createdAt\"] = this.createdAt ? this.createdAt.toISOString(true) : null;\r\n data[\"updatedAt\"] = this.updatedAt ? this.updatedAt.toISOString(true) : null;\r\n data[\"priceInfo\"] = this.priceInfo ? this.priceInfo.toJSON() : null;\r\n data[\"status\"] = this.status !== undefined ? this.status : null;\r\n data[\"isInvoiceCreated\"] = this.isInvoiceCreated !== undefined ? this.isInvoiceCreated : null;\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n data[\"gameInstanceTitle\"] = this.gameInstanceTitle !== undefined ? this.gameInstanceTitle : null;\r\n data[\"gameInstanceDeleted\"] = this.gameInstanceDeleted !== undefined ? this.gameInstanceDeleted : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IOrderListItemDto {\r\n id: string;\r\n orderNumber?: string | null;\r\n offerTitle?: string | null;\r\n createdAt?: moment.Moment | null;\r\n updatedAt?: moment.Moment | null;\r\n priceInfo?: PriceInfo | null;\r\n status: PaymentStatus;\r\n isInvoiceCreated: boolean;\r\n gameInstanceId: string;\r\n gameInstanceTitle?: string | null;\r\n gameInstanceDeleted: boolean;\r\n}\r\n\r\nexport class OrderDetailsDto implements IOrderDetailsDto {\r\n id!: string;\r\n orderNumber?: string | null;\r\n offerTitle?: string | null;\r\n createdAt?: moment.Moment | null;\r\n updatedAt?: moment.Moment | null;\r\n priceInfo?: PriceInfo | null;\r\n status!: PaymentStatus;\r\n isInvoiceCreated!: boolean;\r\n gameInstanceId!: string;\r\n gameInstanceTitle?: string | null;\r\n companyName?: string | null;\r\n vatNumber?: string | null;\r\n address?: AddressDto | null;\r\n gameInstanceDeleted!: boolean;\r\n titleEng?: string | null;\r\n titlePl?: string | null;\r\n\r\n constructor(data?: IOrderDetailsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.orderNumber = _data[\"orderNumber\"] !== undefined ? _data[\"orderNumber\"] : null;\r\n this.offerTitle = _data[\"offerTitle\"] !== undefined ? _data[\"offerTitle\"] : null;\r\n this.createdAt = _data[\"createdAt\"] ? moment.parseZone(_data[\"createdAt\"].toString()) : null;\r\n this.updatedAt = _data[\"updatedAt\"] ? moment.parseZone(_data[\"updatedAt\"].toString()) : null;\r\n this.priceInfo = _data[\"priceInfo\"] ? PriceInfo.fromJS(_data[\"priceInfo\"]) : null;\r\n this.status = _data[\"status\"] !== undefined ? _data[\"status\"] : null;\r\n this.isInvoiceCreated = _data[\"isInvoiceCreated\"] !== undefined ? _data[\"isInvoiceCreated\"] : null;\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n this.gameInstanceTitle = _data[\"gameInstanceTitle\"] !== undefined ? _data[\"gameInstanceTitle\"] : null;\r\n this.companyName = _data[\"companyName\"] !== undefined ? _data[\"companyName\"] : null;\r\n this.vatNumber = _data[\"vatNumber\"] !== undefined ? _data[\"vatNumber\"] : null;\r\n this.address = _data[\"address\"] ? AddressDto.fromJS(_data[\"address\"]) : null;\r\n this.gameInstanceDeleted = _data[\"gameInstanceDeleted\"] !== undefined ? _data[\"gameInstanceDeleted\"] : null;\r\n this.titleEng = _data[\"titleEng\"] !== undefined ? _data[\"titleEng\"] : null;\r\n this.titlePl = _data[\"titlePl\"] !== undefined ? _data[\"titlePl\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderDetailsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderDetailsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"orderNumber\"] = this.orderNumber !== undefined ? this.orderNumber : null;\r\n data[\"offerTitle\"] = this.offerTitle !== undefined ? this.offerTitle : null;\r\n data[\"createdAt\"] = this.createdAt ? this.createdAt.toISOString(true) : null;\r\n data[\"updatedAt\"] = this.updatedAt ? this.updatedAt.toISOString(true) : null;\r\n data[\"priceInfo\"] = this.priceInfo ? this.priceInfo.toJSON() : null;\r\n data[\"status\"] = this.status !== undefined ? this.status : null;\r\n data[\"isInvoiceCreated\"] = this.isInvoiceCreated !== undefined ? this.isInvoiceCreated : null;\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n data[\"gameInstanceTitle\"] = this.gameInstanceTitle !== undefined ? this.gameInstanceTitle : null;\r\n data[\"companyName\"] = this.companyName !== undefined ? this.companyName : null;\r\n data[\"vatNumber\"] = this.vatNumber !== undefined ? this.vatNumber : null;\r\n data[\"address\"] = this.address ? this.address.toJSON() : null;\r\n data[\"gameInstanceDeleted\"] = this.gameInstanceDeleted !== undefined ? this.gameInstanceDeleted : null;\r\n data[\"titleEng\"] = this.titleEng !== undefined ? this.titleEng : null;\r\n data[\"titlePl\"] = this.titlePl !== undefined ? this.titlePl : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IOrderDetailsDto {\r\n id: string;\r\n orderNumber?: string | null;\r\n offerTitle?: string | null;\r\n createdAt?: moment.Moment | null;\r\n updatedAt?: moment.Moment | null;\r\n priceInfo?: PriceInfo | null;\r\n status: PaymentStatus;\r\n isInvoiceCreated: boolean;\r\n gameInstanceId: string;\r\n gameInstanceTitle?: string | null;\r\n companyName?: string | null;\r\n vatNumber?: string | null;\r\n address?: AddressDto | null;\r\n gameInstanceDeleted: boolean;\r\n titleEng?: string | null;\r\n titlePl?: string | null;\r\n}\r\n\r\nexport class InvoiceDto implements IInvoiceDto {\r\n value?: string | null;\r\n fileName?: string | null;\r\n\r\n constructor(data?: IInvoiceDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.value = _data[\"value\"] !== undefined ? _data[\"value\"] : null;\r\n this.fileName = _data[\"fileName\"] !== undefined ? _data[\"fileName\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"value\"] = this.value !== undefined ? this.value : null;\r\n data[\"fileName\"] = this.fileName !== undefined ? this.fileName : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInvoiceDto {\r\n value?: string | null;\r\n fileName?: string | null;\r\n}\r\n\r\nexport class ProfessionDto implements IProfessionDto {\r\n id!: string;\r\n title?: string | null;\r\n displayTitle?: string | null;\r\n isGlobal!: boolean;\r\n userId?: string | null;\r\n questions?: QuestionDto[] | null;\r\n\r\n constructor(data?: IProfessionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.displayTitle = _data[\"displayTitle\"] !== undefined ? _data[\"displayTitle\"] : null;\r\n this.isGlobal = _data[\"isGlobal\"] !== undefined ? _data[\"isGlobal\"] : null;\r\n this.userId = _data[\"userId\"] !== undefined ? _data[\"userId\"] : null;\r\n if (Array.isArray(_data[\"questions\"])) {\r\n this.questions = [] as any;\r\n for (let item of _data[\"questions\"])\r\n this.questions!.push(QuestionDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProfessionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProfessionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"displayTitle\"] = this.displayTitle !== undefined ? this.displayTitle : null;\r\n data[\"isGlobal\"] = this.isGlobal !== undefined ? this.isGlobal : null;\r\n data[\"userId\"] = this.userId !== undefined ? this.userId : null;\r\n if (Array.isArray(this.questions)) {\r\n data[\"questions\"] = [];\r\n for (let item of this.questions)\r\n data[\"questions\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IProfessionDto {\r\n id: string;\r\n title?: string | null;\r\n displayTitle?: string | null;\r\n isGlobal: boolean;\r\n userId?: string | null;\r\n questions?: QuestionDto[] | null;\r\n}\r\n\r\nexport class QuestionDto implements IQuestionDto {\r\n id!: string;\r\n questionText?: string | null;\r\n questionAnswers?: QuestionAnswerDto[] | null;\r\n\r\n constructor(data?: IQuestionDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.questionText = _data[\"questionText\"] !== undefined ? _data[\"questionText\"] : null;\r\n if (Array.isArray(_data[\"questionAnswers\"])) {\r\n this.questionAnswers = [] as any;\r\n for (let item of _data[\"questionAnswers\"])\r\n this.questionAnswers!.push(QuestionAnswerDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): QuestionDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new QuestionDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"questionText\"] = this.questionText !== undefined ? this.questionText : null;\r\n if (Array.isArray(this.questionAnswers)) {\r\n data[\"questionAnswers\"] = [];\r\n for (let item of this.questionAnswers)\r\n data[\"questionAnswers\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IQuestionDto {\r\n id: string;\r\n questionText?: string | null;\r\n questionAnswers?: QuestionAnswerDto[] | null;\r\n}\r\n\r\nexport class QuestionAnswerDto implements IQuestionAnswerDto {\r\n id!: string;\r\n answerText?: string | null;\r\n isCorrect!: boolean;\r\n\r\n constructor(data?: IQuestionAnswerDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.answerText = _data[\"answerText\"] !== undefined ? _data[\"answerText\"] : null;\r\n this.isCorrect = _data[\"isCorrect\"] !== undefined ? _data[\"isCorrect\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): QuestionAnswerDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new QuestionAnswerDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"answerText\"] = this.answerText !== undefined ? this.answerText : null;\r\n data[\"isCorrect\"] = this.isCorrect !== undefined ? this.isCorrect : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IQuestionAnswerDto {\r\n id: string;\r\n answerText?: string | null;\r\n isCorrect: boolean;\r\n}\r\n\r\nexport class ProfessionCreateInputModel implements IProfessionCreateInputModel {\r\n name!: string;\r\n displayName!: string;\r\n copiedProfessionId?: string | null;\r\n\r\n constructor(data?: IProfessionCreateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"] !== undefined ? _data[\"name\"] : null;\r\n this.displayName = _data[\"displayName\"] !== undefined ? _data[\"displayName\"] : null;\r\n this.copiedProfessionId = _data[\"copiedProfessionId\"] !== undefined ? _data[\"copiedProfessionId\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProfessionCreateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProfessionCreateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name !== undefined ? this.name : null;\r\n data[\"displayName\"] = this.displayName !== undefined ? this.displayName : null;\r\n data[\"copiedProfessionId\"] = this.copiedProfessionId !== undefined ? this.copiedProfessionId : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IProfessionCreateInputModel {\r\n name: string;\r\n displayName: string;\r\n copiedProfessionId?: string | null;\r\n}\r\n\r\nexport class ProfessionUpdateInputModel implements IProfessionUpdateInputModel {\r\n professionId!: string;\r\n name!: string;\r\n displayName!: string;\r\n\r\n constructor(data?: IProfessionUpdateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.professionId = _data[\"professionId\"] !== undefined ? _data[\"professionId\"] : null;\r\n this.name = _data[\"name\"] !== undefined ? _data[\"name\"] : null;\r\n this.displayName = _data[\"displayName\"] !== undefined ? _data[\"displayName\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProfessionUpdateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProfessionUpdateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"professionId\"] = this.professionId !== undefined ? this.professionId : null;\r\n data[\"name\"] = this.name !== undefined ? this.name : null;\r\n data[\"displayName\"] = this.displayName !== undefined ? this.displayName : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IProfessionUpdateInputModel {\r\n professionId: string;\r\n name: string;\r\n displayName: string;\r\n}\r\n\r\nexport class ProfessionDeleteInputModel implements IProfessionDeleteInputModel {\r\n professionId!: string;\r\n\r\n constructor(data?: IProfessionDeleteInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.professionId = _data[\"professionId\"] !== undefined ? _data[\"professionId\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProfessionDeleteInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProfessionDeleteInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"professionId\"] = this.professionId !== undefined ? this.professionId : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IProfessionDeleteInputModel {\r\n professionId: string;\r\n}\r\n\r\nexport class QuestionCreateInputModel implements IQuestionCreateInputModel {\r\n professionId!: string;\r\n questionText!: string;\r\n answers!: QuestionAnswerInputModel[];\r\n\r\n constructor(data?: IQuestionCreateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.answers = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.professionId = _data[\"professionId\"] !== undefined ? _data[\"professionId\"] : null;\r\n this.questionText = _data[\"questionText\"] !== undefined ? _data[\"questionText\"] : null;\r\n if (Array.isArray(_data[\"answers\"])) {\r\n this.answers = [] as any;\r\n for (let item of _data[\"answers\"])\r\n this.answers!.push(QuestionAnswerInputModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): QuestionCreateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new QuestionCreateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"professionId\"] = this.professionId !== undefined ? this.professionId : null;\r\n data[\"questionText\"] = this.questionText !== undefined ? this.questionText : null;\r\n if (Array.isArray(this.answers)) {\r\n data[\"answers\"] = [];\r\n for (let item of this.answers)\r\n data[\"answers\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IQuestionCreateInputModel {\r\n professionId: string;\r\n questionText: string;\r\n answers: QuestionAnswerInputModel[];\r\n}\r\n\r\nexport class QuestionAnswerInputModel implements IQuestionAnswerInputModel {\r\n answerText!: string;\r\n isCorrect!: boolean;\r\n\r\n constructor(data?: IQuestionAnswerInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.answerText = _data[\"answerText\"] !== undefined ? _data[\"answerText\"] : null;\r\n this.isCorrect = _data[\"isCorrect\"] !== undefined ? _data[\"isCorrect\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): QuestionAnswerInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new QuestionAnswerInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"answerText\"] = this.answerText !== undefined ? this.answerText : null;\r\n data[\"isCorrect\"] = this.isCorrect !== undefined ? this.isCorrect : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IQuestionAnswerInputModel {\r\n answerText: string;\r\n isCorrect: boolean;\r\n}\r\n\r\nexport class QuestionUpdateInputModel implements IQuestionUpdateInputModel {\r\n questionId!: string;\r\n questionText!: string;\r\n answers!: QuestionAnswerInputModel[];\r\n\r\n constructor(data?: IQuestionUpdateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.answers = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.questionId = _data[\"questionId\"] !== undefined ? _data[\"questionId\"] : null;\r\n this.questionText = _data[\"questionText\"] !== undefined ? _data[\"questionText\"] : null;\r\n if (Array.isArray(_data[\"answers\"])) {\r\n this.answers = [] as any;\r\n for (let item of _data[\"answers\"])\r\n this.answers!.push(QuestionAnswerInputModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): QuestionUpdateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new QuestionUpdateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"questionId\"] = this.questionId !== undefined ? this.questionId : null;\r\n data[\"questionText\"] = this.questionText !== undefined ? this.questionText : null;\r\n if (Array.isArray(this.answers)) {\r\n data[\"answers\"] = [];\r\n for (let item of this.answers)\r\n data[\"answers\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IQuestionUpdateInputModel {\r\n questionId: string;\r\n questionText: string;\r\n answers: QuestionAnswerInputModel[];\r\n}\r\n\r\nexport class QuestionDeleteInputModel implements IQuestionDeleteInputModel {\r\n questionId!: string;\r\n\r\n constructor(data?: IQuestionDeleteInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.questionId = _data[\"questionId\"] !== undefined ? _data[\"questionId\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): QuestionDeleteInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new QuestionDeleteInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"questionId\"] = this.questionId !== undefined ? this.questionId : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IQuestionDeleteInputModel {\r\n questionId: string;\r\n}\r\n\r\nexport class ConfigurationDto implements IConfigurationDto {\r\n version?: string | null;\r\n googleAnalyticsId?: string | null;\r\n facebookPixelId?: string | null;\r\n environmentName!: Environment;\r\n ppUrl?: string | null;\r\n\r\n constructor(data?: IConfigurationDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.version = _data[\"version\"] !== undefined ? _data[\"version\"] : null;\r\n this.googleAnalyticsId = _data[\"googleAnalyticsId\"] !== undefined ? _data[\"googleAnalyticsId\"] : null;\r\n this.facebookPixelId = _data[\"facebookPixelId\"] !== undefined ? _data[\"facebookPixelId\"] : null;\r\n this.environmentName = _data[\"environmentName\"] !== undefined ? _data[\"environmentName\"] : null;\r\n this.ppUrl = _data[\"ppUrl\"] !== undefined ? _data[\"ppUrl\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConfigurationDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConfigurationDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"version\"] = this.version !== undefined ? this.version : null;\r\n data[\"googleAnalyticsId\"] = this.googleAnalyticsId !== undefined ? this.googleAnalyticsId : null;\r\n data[\"facebookPixelId\"] = this.facebookPixelId !== undefined ? this.facebookPixelId : null;\r\n data[\"environmentName\"] = this.environmentName !== undefined ? this.environmentName : null;\r\n data[\"ppUrl\"] = this.ppUrl !== undefined ? this.ppUrl : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IConfigurationDto {\r\n version?: string | null;\r\n googleAnalyticsId?: string | null;\r\n facebookPixelId?: string | null;\r\n environmentName: Environment;\r\n ppUrl?: string | null;\r\n}\r\n\r\nexport enum Environment {\r\n Development = \"Development\",\r\n Production = \"Production\",\r\n}\r\n\r\nexport class InstanceGlobalStatisticsDto implements IInstanceGlobalStatisticsDto {\r\n gameInstanceTitle?: string | null;\r\n mails!: number;\r\n games!: number;\r\n finishedGames?: string | null;\r\n playedMoreThanOnce?: string | null;\r\n percentOfGoodAnswers?: string | null;\r\n\r\n constructor(data?: IInstanceGlobalStatisticsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gameInstanceTitle = _data[\"gameInstanceTitle\"] !== undefined ? _data[\"gameInstanceTitle\"] : null;\r\n this.mails = _data[\"mails\"] !== undefined ? _data[\"mails\"] : null;\r\n this.games = _data[\"games\"] !== undefined ? _data[\"games\"] : null;\r\n this.finishedGames = _data[\"finishedGames\"] !== undefined ? _data[\"finishedGames\"] : null;\r\n this.playedMoreThanOnce = _data[\"playedMoreThanOnce\"] !== undefined ? _data[\"playedMoreThanOnce\"] : null;\r\n this.percentOfGoodAnswers = _data[\"percentOfGoodAnswers\"] !== undefined ? _data[\"percentOfGoodAnswers\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InstanceGlobalStatisticsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InstanceGlobalStatisticsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameInstanceTitle\"] = this.gameInstanceTitle !== undefined ? this.gameInstanceTitle : null;\r\n data[\"mails\"] = this.mails !== undefined ? this.mails : null;\r\n data[\"games\"] = this.games !== undefined ? this.games : null;\r\n data[\"finishedGames\"] = this.finishedGames !== undefined ? this.finishedGames : null;\r\n data[\"playedMoreThanOnce\"] = this.playedMoreThanOnce !== undefined ? this.playedMoreThanOnce : null;\r\n data[\"percentOfGoodAnswers\"] = this.percentOfGoodAnswers !== undefined ? this.percentOfGoodAnswers : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInstanceGlobalStatisticsDto {\r\n gameInstanceTitle?: string | null;\r\n mails: number;\r\n games: number;\r\n finishedGames?: string | null;\r\n playedMoreThanOnce?: string | null;\r\n percentOfGoodAnswers?: string | null;\r\n}\r\n\r\nexport class InstanceGlobalStatisticsForPlayerDto implements IInstanceGlobalStatisticsForPlayerDto {\r\n selectedProfessions!: number;\r\n games!: number;\r\n finishedGames?: string | null;\r\n totalPlayTime!: moment.Duration;\r\n percentOfGoodAnswers?: string | null;\r\n\r\n constructor(data?: IInstanceGlobalStatisticsForPlayerDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.selectedProfessions = _data[\"selectedProfessions\"] !== undefined ? _data[\"selectedProfessions\"] : null;\r\n this.games = _data[\"games\"] !== undefined ? _data[\"games\"] : null;\r\n this.finishedGames = _data[\"finishedGames\"] !== undefined ? _data[\"finishedGames\"] : null;\r\n this.totalPlayTime = _data[\"totalPlayTime\"] ? moment.duration(_data[\"totalPlayTime\"].toString()) : null;\r\n this.percentOfGoodAnswers = _data[\"percentOfGoodAnswers\"] !== undefined ? _data[\"percentOfGoodAnswers\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InstanceGlobalStatisticsForPlayerDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InstanceGlobalStatisticsForPlayerDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"selectedProfessions\"] = this.selectedProfessions !== undefined ? this.selectedProfessions : null;\r\n data[\"games\"] = this.games !== undefined ? this.games : null;\r\n data[\"finishedGames\"] = this.finishedGames !== undefined ? this.finishedGames : null;\r\n data[\"totalPlayTime\"] = this.totalPlayTime ? this.totalPlayTime.format('d.hh:mm:ss.SS', { trim: false }) : null;\r\n data[\"percentOfGoodAnswers\"] = this.percentOfGoodAnswers !== undefined ? this.percentOfGoodAnswers : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInstanceGlobalStatisticsForPlayerDto {\r\n selectedProfessions: number;\r\n games: number;\r\n finishedGames?: string | null;\r\n totalPlayTime: moment.Duration;\r\n percentOfGoodAnswers?: string | null;\r\n}\r\n\r\nexport class InstancePlayersStatisticsDto implements IInstancePlayersStatisticsDto {\r\n email?: string | null;\r\n playedProfession?: string[] | null;\r\n isFavorite!: boolean;\r\n rating!: number;\r\n startedGames!: number;\r\n finishedGames!: number;\r\n averageTimeForGame!: moment.Duration;\r\n totalTimeForGames!: moment.Duration;\r\n percentOfGoodAnswers?: string | null;\r\n addedCV!: boolean;\r\n\r\n constructor(data?: IInstancePlayersStatisticsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n if (Array.isArray(_data[\"playedProfession\"])) {\r\n this.playedProfession = [] as any;\r\n for (let item of _data[\"playedProfession\"])\r\n this.playedProfession!.push(item);\r\n }\r\n this.isFavorite = _data[\"isFavorite\"] !== undefined ? _data[\"isFavorite\"] : null;\r\n this.rating = _data[\"rating\"] !== undefined ? _data[\"rating\"] : null;\r\n this.startedGames = _data[\"startedGames\"] !== undefined ? _data[\"startedGames\"] : null;\r\n this.finishedGames = _data[\"finishedGames\"] !== undefined ? _data[\"finishedGames\"] : null;\r\n this.averageTimeForGame = _data[\"averageTimeForGame\"] ? moment.duration(_data[\"averageTimeForGame\"].toString()) : null;\r\n this.totalTimeForGames = _data[\"totalTimeForGames\"] ? moment.duration(_data[\"totalTimeForGames\"].toString()) : null;\r\n this.percentOfGoodAnswers = _data[\"percentOfGoodAnswers\"] !== undefined ? _data[\"percentOfGoodAnswers\"] : null;\r\n this.addedCV = _data[\"addedCV\"] !== undefined ? _data[\"addedCV\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InstancePlayersStatisticsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InstancePlayersStatisticsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n if (Array.isArray(this.playedProfession)) {\r\n data[\"playedProfession\"] = [];\r\n for (let item of this.playedProfession)\r\n data[\"playedProfession\"].push(item);\r\n }\r\n data[\"isFavorite\"] = this.isFavorite !== undefined ? this.isFavorite : null;\r\n data[\"rating\"] = this.rating !== undefined ? this.rating : null;\r\n data[\"startedGames\"] = this.startedGames !== undefined ? this.startedGames : null;\r\n data[\"finishedGames\"] = this.finishedGames !== undefined ? this.finishedGames : null;\r\n data[\"averageTimeForGame\"] = this.averageTimeForGame ? this.averageTimeForGame.format('d.hh:mm:ss.SS', { trim: false }) : null;\r\n data[\"totalTimeForGames\"] = this.totalTimeForGames ? this.totalTimeForGames.format('d.hh:mm:ss.SS', { trim: false }) : null;\r\n data[\"percentOfGoodAnswers\"] = this.percentOfGoodAnswers !== undefined ? this.percentOfGoodAnswers : null;\r\n data[\"addedCV\"] = this.addedCV !== undefined ? this.addedCV : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInstancePlayersStatisticsDto {\r\n email?: string | null;\r\n playedProfession?: string[] | null;\r\n isFavorite: boolean;\r\n rating: number;\r\n startedGames: number;\r\n finishedGames: number;\r\n averageTimeForGame: moment.Duration;\r\n totalTimeForGames: moment.Duration;\r\n percentOfGoodAnswers?: string | null;\r\n addedCV: boolean;\r\n}\r\n\r\nexport class PlayerInstanceDetailsDto implements IPlayerInstanceDetailsDto {\r\n playerInstanceId!: string;\r\n cv?: string | null;\r\n email?: string | null;\r\n\r\n constructor(data?: IPlayerInstanceDetailsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.playerInstanceId = _data[\"playerInstanceId\"] !== undefined ? _data[\"playerInstanceId\"] : null;\r\n this.cv = _data[\"cv\"] !== undefined ? _data[\"cv\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceDetailsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceDetailsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"playerInstanceId\"] = this.playerInstanceId !== undefined ? this.playerInstanceId : null;\r\n data[\"cv\"] = this.cv !== undefined ? this.cv : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceDetailsDto {\r\n playerInstanceId: string;\r\n cv?: string | null;\r\n email?: string | null;\r\n}\r\n\r\nexport class InstanceGameStatisticsDto implements IInstanceGameStatisticsDto {\r\n id!: string;\r\n gameInstanceTitle?: string | null;\r\n email?: string | null;\r\n profession?: string | null;\r\n startingTime?: moment.Moment | null;\r\n playingTime?: moment.Duration | null;\r\n totalAnswers!: number;\r\n correctAnswers!: number;\r\n score!: number;\r\n\r\n constructor(data?: IInstanceGameStatisticsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.gameInstanceTitle = _data[\"gameInstanceTitle\"] !== undefined ? _data[\"gameInstanceTitle\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.profession = _data[\"profession\"] !== undefined ? _data[\"profession\"] : null;\r\n this.startingTime = _data[\"startingTime\"] ? moment.parseZone(_data[\"startingTime\"].toString()) : null;\r\n this.playingTime = _data[\"playingTime\"] ? moment.duration(_data[\"playingTime\"].toString()) : null;\r\n this.totalAnswers = _data[\"totalAnswers\"] !== undefined ? _data[\"totalAnswers\"] : null;\r\n this.correctAnswers = _data[\"correctAnswers\"] !== undefined ? _data[\"correctAnswers\"] : null;\r\n this.score = _data[\"score\"] !== undefined ? _data[\"score\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InstanceGameStatisticsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InstanceGameStatisticsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"gameInstanceTitle\"] = this.gameInstanceTitle !== undefined ? this.gameInstanceTitle : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"profession\"] = this.profession !== undefined ? this.profession : null;\r\n data[\"startingTime\"] = this.startingTime ? this.startingTime.toISOString(true) : null;\r\n data[\"playingTime\"] = this.playingTime ? this.playingTime.format('d.hh:mm:ss.SS', { trim: false }) : null;\r\n data[\"totalAnswers\"] = this.totalAnswers !== undefined ? this.totalAnswers : null;\r\n data[\"correctAnswers\"] = this.correctAnswers !== undefined ? this.correctAnswers : null;\r\n data[\"score\"] = this.score !== undefined ? this.score : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInstanceGameStatisticsDto {\r\n id: string;\r\n gameInstanceTitle?: string | null;\r\n email?: string | null;\r\n profession?: string | null;\r\n startingTime?: moment.Moment | null;\r\n playingTime?: moment.Duration | null;\r\n totalAnswers: number;\r\n correctAnswers: number;\r\n score: number;\r\n}\r\n\r\nexport class InstancePlayerGameStatisticsDto implements IInstancePlayerGameStatisticsDto {\r\n id!: string;\r\n email?: string | null;\r\n profession?: string | null;\r\n startingTime?: moment.Moment | null;\r\n playingTime?: moment.Duration | null;\r\n totalAnswers!: number;\r\n correctAnswers!: number;\r\n score!: number;\r\n addedCv!: boolean;\r\n\r\n constructor(data?: IInstancePlayerGameStatisticsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.profession = _data[\"profession\"] !== undefined ? _data[\"profession\"] : null;\r\n this.startingTime = _data[\"startingTime\"] ? moment.parseZone(_data[\"startingTime\"].toString()) : null;\r\n this.playingTime = _data[\"playingTime\"] ? moment.duration(_data[\"playingTime\"].toString()) : null;\r\n this.totalAnswers = _data[\"totalAnswers\"] !== undefined ? _data[\"totalAnswers\"] : null;\r\n this.correctAnswers = _data[\"correctAnswers\"] !== undefined ? _data[\"correctAnswers\"] : null;\r\n this.score = _data[\"score\"] !== undefined ? _data[\"score\"] : null;\r\n this.addedCv = _data[\"addedCv\"] !== undefined ? _data[\"addedCv\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InstancePlayerGameStatisticsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InstancePlayerGameStatisticsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"profession\"] = this.profession !== undefined ? this.profession : null;\r\n data[\"startingTime\"] = this.startingTime ? this.startingTime.toISOString(true) : null;\r\n data[\"playingTime\"] = this.playingTime ? this.playingTime.format('d.hh:mm:ss.SS', { trim: false }) : null;\r\n data[\"totalAnswers\"] = this.totalAnswers !== undefined ? this.totalAnswers : null;\r\n data[\"correctAnswers\"] = this.correctAnswers !== undefined ? this.correctAnswers : null;\r\n data[\"score\"] = this.score !== undefined ? this.score : null;\r\n data[\"addedCv\"] = this.addedCv !== undefined ? this.addedCv : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInstancePlayerGameStatisticsDto {\r\n id: string;\r\n email?: string | null;\r\n profession?: string | null;\r\n startingTime?: moment.Moment | null;\r\n playingTime?: moment.Duration | null;\r\n totalAnswers: number;\r\n correctAnswers: number;\r\n score: number;\r\n addedCv: boolean;\r\n}\r\n\r\nexport class InstanceOneGameStatisticDto implements IInstanceOneGameStatisticDto {\r\n id!: string;\r\n gameInstanceTitle?: string | null;\r\n email?: string | null;\r\n profession?: string | null;\r\n startingTime?: moment.Moment | null;\r\n playingTime?: moment.Duration | null;\r\n totalAnswers!: number;\r\n correctAnswers!: number;\r\n score!: number;\r\n playerInstanceAnswers?: PlayerInstanceAnswersDto[] | null;\r\n playerInstanceLogs?: PlayerInstanceLogsDto[] | null;\r\n\r\n constructor(data?: IInstanceOneGameStatisticDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.gameInstanceTitle = _data[\"gameInstanceTitle\"] !== undefined ? _data[\"gameInstanceTitle\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.profession = _data[\"profession\"] !== undefined ? _data[\"profession\"] : null;\r\n this.startingTime = _data[\"startingTime\"] ? moment.parseZone(_data[\"startingTime\"].toString()) : null;\r\n this.playingTime = _data[\"playingTime\"] ? moment.duration(_data[\"playingTime\"].toString()) : null;\r\n this.totalAnswers = _data[\"totalAnswers\"] !== undefined ? _data[\"totalAnswers\"] : null;\r\n this.correctAnswers = _data[\"correctAnswers\"] !== undefined ? _data[\"correctAnswers\"] : null;\r\n this.score = _data[\"score\"] !== undefined ? _data[\"score\"] : null;\r\n if (Array.isArray(_data[\"playerInstanceAnswers\"])) {\r\n this.playerInstanceAnswers = [] as any;\r\n for (let item of _data[\"playerInstanceAnswers\"])\r\n this.playerInstanceAnswers!.push(PlayerInstanceAnswersDto.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"playerInstanceLogs\"])) {\r\n this.playerInstanceLogs = [] as any;\r\n for (let item of _data[\"playerInstanceLogs\"])\r\n this.playerInstanceLogs!.push(PlayerInstanceLogsDto.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): InstanceOneGameStatisticDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InstanceOneGameStatisticDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"gameInstanceTitle\"] = this.gameInstanceTitle !== undefined ? this.gameInstanceTitle : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"profession\"] = this.profession !== undefined ? this.profession : null;\r\n data[\"startingTime\"] = this.startingTime ? this.startingTime.toISOString(true) : null;\r\n data[\"playingTime\"] = this.playingTime ? this.playingTime.format('d.hh:mm:ss.SS', { trim: false }) : null;\r\n data[\"totalAnswers\"] = this.totalAnswers !== undefined ? this.totalAnswers : null;\r\n data[\"correctAnswers\"] = this.correctAnswers !== undefined ? this.correctAnswers : null;\r\n data[\"score\"] = this.score !== undefined ? this.score : null;\r\n if (Array.isArray(this.playerInstanceAnswers)) {\r\n data[\"playerInstanceAnswers\"] = [];\r\n for (let item of this.playerInstanceAnswers)\r\n data[\"playerInstanceAnswers\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.playerInstanceLogs)) {\r\n data[\"playerInstanceLogs\"] = [];\r\n for (let item of this.playerInstanceLogs)\r\n data[\"playerInstanceLogs\"].push(item.toJSON());\r\n }\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInstanceOneGameStatisticDto {\r\n id: string;\r\n gameInstanceTitle?: string | null;\r\n email?: string | null;\r\n profession?: string | null;\r\n startingTime?: moment.Moment | null;\r\n playingTime?: moment.Duration | null;\r\n totalAnswers: number;\r\n correctAnswers: number;\r\n score: number;\r\n playerInstanceAnswers?: PlayerInstanceAnswersDto[] | null;\r\n playerInstanceLogs?: PlayerInstanceLogsDto[] | null;\r\n}\r\n\r\nexport class PlayerInstanceAnswersDto implements IPlayerInstanceAnswersDto {\r\n id!: string;\r\n playerInstanceId!: string;\r\n answeredQuestionId!: string;\r\n answeredQuestion?: string | null;\r\n answer?: string | null;\r\n isCorrectAnswer!: boolean;\r\n dateTimeLog?: moment.Moment | null;\r\n\r\n constructor(data?: IPlayerInstanceAnswersDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.playerInstanceId = _data[\"playerInstanceId\"] !== undefined ? _data[\"playerInstanceId\"] : null;\r\n this.answeredQuestionId = _data[\"answeredQuestionId\"] !== undefined ? _data[\"answeredQuestionId\"] : null;\r\n this.answeredQuestion = _data[\"answeredQuestion\"] !== undefined ? _data[\"answeredQuestion\"] : null;\r\n this.answer = _data[\"answer\"] !== undefined ? _data[\"answer\"] : null;\r\n this.isCorrectAnswer = _data[\"isCorrectAnswer\"] !== undefined ? _data[\"isCorrectAnswer\"] : null;\r\n this.dateTimeLog = _data[\"dateTimeLog\"] ? moment.parseZone(_data[\"dateTimeLog\"].toString()) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceAnswersDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceAnswersDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"playerInstanceId\"] = this.playerInstanceId !== undefined ? this.playerInstanceId : null;\r\n data[\"answeredQuestionId\"] = this.answeredQuestionId !== undefined ? this.answeredQuestionId : null;\r\n data[\"answeredQuestion\"] = this.answeredQuestion !== undefined ? this.answeredQuestion : null;\r\n data[\"answer\"] = this.answer !== undefined ? this.answer : null;\r\n data[\"isCorrectAnswer\"] = this.isCorrectAnswer !== undefined ? this.isCorrectAnswer : null;\r\n data[\"dateTimeLog\"] = this.dateTimeLog ? this.dateTimeLog.toISOString(true) : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceAnswersDto {\r\n id: string;\r\n playerInstanceId: string;\r\n answeredQuestionId: string;\r\n answeredQuestion?: string | null;\r\n answer?: string | null;\r\n isCorrectAnswer: boolean;\r\n dateTimeLog?: moment.Moment | null;\r\n}\r\n\r\nexport class PlayerInstanceLogsDto implements IPlayerInstanceLogsDto {\r\n id!: string;\r\n playerInstanceId!: string;\r\n logTrigger?: string | null;\r\n score!: number;\r\n dateTimeLog?: moment.Moment | null;\r\n\r\n constructor(data?: IPlayerInstanceLogsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.playerInstanceId = _data[\"playerInstanceId\"] !== undefined ? _data[\"playerInstanceId\"] : null;\r\n this.logTrigger = _data[\"logTrigger\"] !== undefined ? _data[\"logTrigger\"] : null;\r\n this.score = _data[\"score\"] !== undefined ? _data[\"score\"] : null;\r\n this.dateTimeLog = _data[\"dateTimeLog\"] ? moment.parseZone(_data[\"dateTimeLog\"].toString()) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerInstanceLogsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerInstanceLogsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"playerInstanceId\"] = this.playerInstanceId !== undefined ? this.playerInstanceId : null;\r\n data[\"logTrigger\"] = this.logTrigger !== undefined ? this.logTrigger : null;\r\n data[\"score\"] = this.score !== undefined ? this.score : null;\r\n data[\"dateTimeLog\"] = this.dateTimeLog ? this.dateTimeLog.toISOString(true) : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerInstanceLogsDto {\r\n id: string;\r\n playerInstanceId: string;\r\n logTrigger?: string | null;\r\n score: number;\r\n dateTimeLog?: moment.Moment | null;\r\n}\r\n\r\nexport class InstancePlayerStatisticsDto implements IInstancePlayerStatisticsDto {\r\n email?: string | null;\r\n profession?: string | null;\r\n playedProfession?: string[] | null;\r\n startedGames!: number;\r\n finishedGames!: number;\r\n averageTimeForGame!: moment.Duration;\r\n totalTimeForGames!: moment.Duration;\r\n percentOfGoodAnswers?: string | null;\r\n addedCV!: boolean;\r\n\r\n constructor(data?: IInstancePlayerStatisticsDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.profession = _data[\"profession\"] !== undefined ? _data[\"profession\"] : null;\r\n if (Array.isArray(_data[\"playedProfession\"])) {\r\n this.playedProfession = [] as any;\r\n for (let item of _data[\"playedProfession\"])\r\n this.playedProfession!.push(item);\r\n }\r\n this.startedGames = _data[\"startedGames\"] !== undefined ? _data[\"startedGames\"] : null;\r\n this.finishedGames = _data[\"finishedGames\"] !== undefined ? _data[\"finishedGames\"] : null;\r\n this.averageTimeForGame = _data[\"averageTimeForGame\"] ? moment.duration(_data[\"averageTimeForGame\"].toString()) : null;\r\n this.totalTimeForGames = _data[\"totalTimeForGames\"] ? moment.duration(_data[\"totalTimeForGames\"].toString()) : null;\r\n this.percentOfGoodAnswers = _data[\"percentOfGoodAnswers\"] !== undefined ? _data[\"percentOfGoodAnswers\"] : null;\r\n this.addedCV = _data[\"addedCV\"] !== undefined ? _data[\"addedCV\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InstancePlayerStatisticsDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InstancePlayerStatisticsDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"profession\"] = this.profession !== undefined ? this.profession : null;\r\n if (Array.isArray(this.playedProfession)) {\r\n data[\"playedProfession\"] = [];\r\n for (let item of this.playedProfession)\r\n data[\"playedProfession\"].push(item);\r\n }\r\n data[\"startedGames\"] = this.startedGames !== undefined ? this.startedGames : null;\r\n data[\"finishedGames\"] = this.finishedGames !== undefined ? this.finishedGames : null;\r\n data[\"averageTimeForGame\"] = this.averageTimeForGame ? this.averageTimeForGame.format('d.hh:mm:ss.SS', { trim: false }) : null;\r\n data[\"totalTimeForGames\"] = this.totalTimeForGames ? this.totalTimeForGames.format('d.hh:mm:ss.SS', { trim: false }) : null;\r\n data[\"percentOfGoodAnswers\"] = this.percentOfGoodAnswers !== undefined ? this.percentOfGoodAnswers : null;\r\n data[\"addedCV\"] = this.addedCV !== undefined ? this.addedCV : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IInstancePlayerStatisticsDto {\r\n email?: string | null;\r\n profession?: string | null;\r\n playedProfession?: string[] | null;\r\n startedGames: number;\r\n finishedGames: number;\r\n averageTimeForGame: moment.Duration;\r\n totalTimeForGames: moment.Duration;\r\n percentOfGoodAnswers?: string | null;\r\n addedCV: boolean;\r\n}\r\n\r\nexport class PlayerProfileDto implements IPlayerProfileDto {\r\n email?: string | null;\r\n gameInstanceTitle?: string | null;\r\n nicknames?: string[] | null;\r\n professions?: string[] | null;\r\n rating!: number;\r\n isFavorite!: boolean;\r\n notes?: string | null;\r\n hasCV!: boolean;\r\n\r\n constructor(data?: IPlayerProfileDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.gameInstanceTitle = _data[\"gameInstanceTitle\"] !== undefined ? _data[\"gameInstanceTitle\"] : null;\r\n if (Array.isArray(_data[\"nicknames\"])) {\r\n this.nicknames = [] as any;\r\n for (let item of _data[\"nicknames\"])\r\n this.nicknames!.push(item);\r\n }\r\n if (Array.isArray(_data[\"professions\"])) {\r\n this.professions = [] as any;\r\n for (let item of _data[\"professions\"])\r\n this.professions!.push(item);\r\n }\r\n this.rating = _data[\"rating\"] !== undefined ? _data[\"rating\"] : null;\r\n this.isFavorite = _data[\"isFavorite\"] !== undefined ? _data[\"isFavorite\"] : null;\r\n this.notes = _data[\"notes\"] !== undefined ? _data[\"notes\"] : null;\r\n this.hasCV = _data[\"hasCV\"] !== undefined ? _data[\"hasCV\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerProfileDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerProfileDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"gameInstanceTitle\"] = this.gameInstanceTitle !== undefined ? this.gameInstanceTitle : null;\r\n if (Array.isArray(this.nicknames)) {\r\n data[\"nicknames\"] = [];\r\n for (let item of this.nicknames)\r\n data[\"nicknames\"].push(item);\r\n }\r\n if (Array.isArray(this.professions)) {\r\n data[\"professions\"] = [];\r\n for (let item of this.professions)\r\n data[\"professions\"].push(item);\r\n }\r\n data[\"rating\"] = this.rating !== undefined ? this.rating : null;\r\n data[\"isFavorite\"] = this.isFavorite !== undefined ? this.isFavorite : null;\r\n data[\"notes\"] = this.notes !== undefined ? this.notes : null;\r\n data[\"hasCV\"] = this.hasCV !== undefined ? this.hasCV : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerProfileDto {\r\n email?: string | null;\r\n gameInstanceTitle?: string | null;\r\n nicknames?: string[] | null;\r\n professions?: string[] | null;\r\n rating: number;\r\n isFavorite: boolean;\r\n notes?: string | null;\r\n hasCV: boolean;\r\n}\r\n\r\nexport class PlayerProfileUpdateInputModel implements IPlayerProfileUpdateInputModel {\r\n gameInstanceId!: string;\r\n email!: string;\r\n rating!: number;\r\n isFavorite!: boolean;\r\n notes?: string | null;\r\n\r\n constructor(data?: IPlayerProfileUpdateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gameInstanceId = _data[\"gameInstanceId\"] !== undefined ? _data[\"gameInstanceId\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.rating = _data[\"rating\"] !== undefined ? _data[\"rating\"] : null;\r\n this.isFavorite = _data[\"isFavorite\"] !== undefined ? _data[\"isFavorite\"] : null;\r\n this.notes = _data[\"notes\"] !== undefined ? _data[\"notes\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PlayerProfileUpdateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PlayerProfileUpdateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gameInstanceId\"] = this.gameInstanceId !== undefined ? this.gameInstanceId : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"rating\"] = this.rating !== undefined ? this.rating : null;\r\n data[\"isFavorite\"] = this.isFavorite !== undefined ? this.isFavorite : null;\r\n data[\"notes\"] = this.notes !== undefined ? this.notes : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IPlayerProfileUpdateInputModel {\r\n gameInstanceId: string;\r\n email: string;\r\n rating: number;\r\n isFavorite: boolean;\r\n notes?: string | null;\r\n}\r\n\r\nexport class AdminUserListItemDto implements IAdminUserListItemDto {\r\n id!: string;\r\n email?: string | null;\r\n isAdmin!: boolean;\r\n active!: boolean;\r\n isDeleted!: boolean;\r\n createdDate!: moment.Moment;\r\n buyerIdentifier?: string | null;\r\n\r\n constructor(data?: IAdminUserListItemDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.isAdmin = _data[\"isAdmin\"] !== undefined ? _data[\"isAdmin\"] : null;\r\n this.active = _data[\"active\"] !== undefined ? _data[\"active\"] : null;\r\n this.isDeleted = _data[\"isDeleted\"] !== undefined ? _data[\"isDeleted\"] : null;\r\n this.createdDate = _data[\"createdDate\"] ? moment.parseZone(_data[\"createdDate\"].toString()) : null;\r\n this.buyerIdentifier = _data[\"buyerIdentifier\"] !== undefined ? _data[\"buyerIdentifier\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AdminUserListItemDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AdminUserListItemDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"isAdmin\"] = this.isAdmin !== undefined ? this.isAdmin : null;\r\n data[\"active\"] = this.active !== undefined ? this.active : null;\r\n data[\"isDeleted\"] = this.isDeleted !== undefined ? this.isDeleted : null;\r\n data[\"createdDate\"] = this.createdDate ? this.createdDate.toISOString(true) : null;\r\n data[\"buyerIdentifier\"] = this.buyerIdentifier !== undefined ? this.buyerIdentifier : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAdminUserListItemDto {\r\n id: string;\r\n email?: string | null;\r\n isAdmin: boolean;\r\n active: boolean;\r\n isDeleted: boolean;\r\n createdDate: moment.Moment;\r\n buyerIdentifier?: string | null;\r\n}\r\n\r\nexport class AdminUserUpdateInputModel implements IAdminUserUpdateInputModel {\r\n id!: string;\r\n email?: string | null;\r\n isAdmin!: boolean;\r\n active!: boolean;\r\n\r\n constructor(data?: IAdminUserUpdateInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.isAdmin = _data[\"isAdmin\"] !== undefined ? _data[\"isAdmin\"] : null;\r\n this.active = _data[\"active\"] !== undefined ? _data[\"active\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AdminUserUpdateInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AdminUserUpdateInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"isAdmin\"] = this.isAdmin !== undefined ? this.isAdmin : null;\r\n data[\"active\"] = this.active !== undefined ? this.active : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAdminUserUpdateInputModel {\r\n id: string;\r\n email?: string | null;\r\n isAdmin: boolean;\r\n active: boolean;\r\n}\r\n\r\nexport class AdminUserDeleteUserInputModel implements IAdminUserDeleteUserInputModel {\r\n id!: string;\r\n\r\n constructor(data?: IAdminUserDeleteUserInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AdminUserDeleteUserInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AdminUserDeleteUserInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAdminUserDeleteUserInputModel {\r\n id: string;\r\n}\r\n\r\nexport class AdminUserDataDto implements IAdminUserDataDto {\r\n id!: string;\r\n email?: string | null;\r\n active!: boolean;\r\n companyName?: string | null;\r\n vatNumber?: string | null;\r\n createdDate!: moment.Moment;\r\n lastLoginDate?: moment.Moment | null;\r\n buyerIdentifier?: string | null;\r\n address?: Address | null;\r\n\r\n constructor(data?: IAdminUserDataDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.active = _data[\"active\"] !== undefined ? _data[\"active\"] : null;\r\n this.companyName = _data[\"companyName\"] !== undefined ? _data[\"companyName\"] : null;\r\n this.vatNumber = _data[\"vatNumber\"] !== undefined ? _data[\"vatNumber\"] : null;\r\n this.createdDate = _data[\"createdDate\"] ? moment.parseZone(_data[\"createdDate\"].toString()) : null;\r\n this.lastLoginDate = _data[\"lastLoginDate\"] ? moment.parseZone(_data[\"lastLoginDate\"].toString()) : null;\r\n this.buyerIdentifier = _data[\"buyerIdentifier\"] !== undefined ? _data[\"buyerIdentifier\"] : null;\r\n this.address = _data[\"address\"] ? Address.fromJS(_data[\"address\"]) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AdminUserDataDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AdminUserDataDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"active\"] = this.active !== undefined ? this.active : null;\r\n data[\"companyName\"] = this.companyName !== undefined ? this.companyName : null;\r\n data[\"vatNumber\"] = this.vatNumber !== undefined ? this.vatNumber : null;\r\n data[\"createdDate\"] = this.createdDate ? this.createdDate.toISOString(true) : null;\r\n data[\"lastLoginDate\"] = this.lastLoginDate ? this.lastLoginDate.toISOString(true) : null;\r\n data[\"buyerIdentifier\"] = this.buyerIdentifier !== undefined ? this.buyerIdentifier : null;\r\n data[\"address\"] = this.address ? this.address.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAdminUserDataDto {\r\n id: string;\r\n email?: string | null;\r\n active: boolean;\r\n companyName?: string | null;\r\n vatNumber?: string | null;\r\n createdDate: moment.Moment;\r\n lastLoginDate?: moment.Moment | null;\r\n buyerIdentifier?: string | null;\r\n address?: Address | null;\r\n}\r\n\r\nexport class GameInstanceAdminDataDto implements IGameInstanceAdminDataDto {\r\n id!: string;\r\n title?: string | null;\r\n userId!: string;\r\n url?: string | null;\r\n gameTemplate?: GameTemplateAdminDataDto | null;\r\n isPublic!: boolean;\r\n isDeleted!: boolean;\r\n validUntil?: moment.Moment | null;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n assignedProfessions?: string[] | null;\r\n settings?: string | null;\r\n lastPaymentBaseData?: PaymentBaseData | null;\r\n playerInstancesAmmount!: number;\r\n purchasesAmmount!: number;\r\n professionsAmmount!: number;\r\n\r\n constructor(data?: IGameInstanceAdminDataDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.userId = _data[\"userId\"] !== undefined ? _data[\"userId\"] : null;\r\n this.url = _data[\"url\"] !== undefined ? _data[\"url\"] : null;\r\n this.gameTemplate = _data[\"gameTemplate\"] ? GameTemplateAdminDataDto.fromJS(_data[\"gameTemplate\"]) : null;\r\n this.isPublic = _data[\"isPublic\"] !== undefined ? _data[\"isPublic\"] : null;\r\n this.isDeleted = _data[\"isDeleted\"] !== undefined ? _data[\"isDeleted\"] : null;\r\n this.validUntil = _data[\"validUntil\"] ? moment.parseZone(_data[\"validUntil\"].toString()) : null;\r\n this.playableFrom = _data[\"playableFrom\"] ? moment.parseZone(_data[\"playableFrom\"].toString()) : null;\r\n this.playableTo = _data[\"playableTo\"] ? moment.parseZone(_data[\"playableTo\"].toString()) : null;\r\n if (Array.isArray(_data[\"assignedProfessions\"])) {\r\n this.assignedProfessions = [] as any;\r\n for (let item of _data[\"assignedProfessions\"])\r\n this.assignedProfessions!.push(item);\r\n }\r\n this.settings = _data[\"settings\"] !== undefined ? _data[\"settings\"] : null;\r\n this.lastPaymentBaseData = _data[\"lastPaymentBaseData\"] ? PaymentBaseData.fromJS(_data[\"lastPaymentBaseData\"]) : null;\r\n this.playerInstancesAmmount = _data[\"playerInstancesAmmount\"] !== undefined ? _data[\"playerInstancesAmmount\"] : null;\r\n this.purchasesAmmount = _data[\"purchasesAmmount\"] !== undefined ? _data[\"purchasesAmmount\"] : null;\r\n this.professionsAmmount = _data[\"professionsAmmount\"] !== undefined ? _data[\"professionsAmmount\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GameInstanceAdminDataDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GameInstanceAdminDataDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"userId\"] = this.userId !== undefined ? this.userId : null;\r\n data[\"url\"] = this.url !== undefined ? this.url : null;\r\n data[\"gameTemplate\"] = this.gameTemplate ? this.gameTemplate.toJSON() : null;\r\n data[\"isPublic\"] = this.isPublic !== undefined ? this.isPublic : null;\r\n data[\"isDeleted\"] = this.isDeleted !== undefined ? this.isDeleted : null;\r\n data[\"validUntil\"] = this.validUntil ? this.validUntil.toISOString(true) : null;\r\n data[\"playableFrom\"] = this.playableFrom ? this.playableFrom.toISOString(true) : null;\r\n data[\"playableTo\"] = this.playableTo ? this.playableTo.toISOString(true) : null;\r\n if (Array.isArray(this.assignedProfessions)) {\r\n data[\"assignedProfessions\"] = [];\r\n for (let item of this.assignedProfessions)\r\n data[\"assignedProfessions\"].push(item);\r\n }\r\n data[\"settings\"] = this.settings !== undefined ? this.settings : null;\r\n data[\"lastPaymentBaseData\"] = this.lastPaymentBaseData ? this.lastPaymentBaseData.toJSON() : null;\r\n data[\"playerInstancesAmmount\"] = this.playerInstancesAmmount !== undefined ? this.playerInstancesAmmount : null;\r\n data[\"purchasesAmmount\"] = this.purchasesAmmount !== undefined ? this.purchasesAmmount : null;\r\n data[\"professionsAmmount\"] = this.professionsAmmount !== undefined ? this.professionsAmmount : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGameInstanceAdminDataDto {\r\n id: string;\r\n title?: string | null;\r\n userId: string;\r\n url?: string | null;\r\n gameTemplate?: GameTemplateAdminDataDto | null;\r\n isPublic: boolean;\r\n isDeleted: boolean;\r\n validUntil?: moment.Moment | null;\r\n playableFrom?: moment.Moment | null;\r\n playableTo?: moment.Moment | null;\r\n assignedProfessions?: string[] | null;\r\n settings?: string | null;\r\n lastPaymentBaseData?: PaymentBaseData | null;\r\n playerInstancesAmmount: number;\r\n purchasesAmmount: number;\r\n professionsAmmount: number;\r\n}\r\n\r\nexport class GameTemplateAdminDataDto implements IGameTemplateAdminDataDto {\r\n id!: string;\r\n title?: string | null;\r\n type!: GameType;\r\n\r\n constructor(data?: IGameTemplateAdminDataDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.type = _data[\"type\"] !== undefined ? _data[\"type\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GameTemplateAdminDataDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GameTemplateAdminDataDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"type\"] = this.type !== undefined ? this.type : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IGameTemplateAdminDataDto {\r\n id: string;\r\n title?: string | null;\r\n type: GameType;\r\n}\r\n\r\nexport class ProfessionAdminDataDto implements IProfessionAdminDataDto {\r\n id!: string;\r\n userId?: string | null;\r\n title?: string | null;\r\n displayTitle?: string | null;\r\n isGlobal!: boolean;\r\n isDeleted!: boolean;\r\n questionsCount!: number;\r\n playerInstancesCount!: number;\r\n\r\n constructor(data?: IProfessionAdminDataDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.userId = _data[\"userId\"] !== undefined ? _data[\"userId\"] : null;\r\n this.title = _data[\"title\"] !== undefined ? _data[\"title\"] : null;\r\n this.displayTitle = _data[\"displayTitle\"] !== undefined ? _data[\"displayTitle\"] : null;\r\n this.isGlobal = _data[\"isGlobal\"] !== undefined ? _data[\"isGlobal\"] : null;\r\n this.isDeleted = _data[\"isDeleted\"] !== undefined ? _data[\"isDeleted\"] : null;\r\n this.questionsCount = _data[\"questionsCount\"] !== undefined ? _data[\"questionsCount\"] : null;\r\n this.playerInstancesCount = _data[\"playerInstancesCount\"] !== undefined ? _data[\"playerInstancesCount\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ProfessionAdminDataDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ProfessionAdminDataDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"userId\"] = this.userId !== undefined ? this.userId : null;\r\n data[\"title\"] = this.title !== undefined ? this.title : null;\r\n data[\"displayTitle\"] = this.displayTitle !== undefined ? this.displayTitle : null;\r\n data[\"isGlobal\"] = this.isGlobal !== undefined ? this.isGlobal : null;\r\n data[\"isDeleted\"] = this.isDeleted !== undefined ? this.isDeleted : null;\r\n data[\"questionsCount\"] = this.questionsCount !== undefined ? this.questionsCount : null;\r\n data[\"playerInstancesCount\"] = this.playerInstancesCount !== undefined ? this.playerInstancesCount : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IProfessionAdminDataDto {\r\n id: string;\r\n userId?: string | null;\r\n title?: string | null;\r\n displayTitle?: string | null;\r\n isGlobal: boolean;\r\n isDeleted: boolean;\r\n questionsCount: number;\r\n playerInstancesCount: number;\r\n}\r\n\r\nexport class AuthenticateResponse implements IAuthenticateResponse {\r\n token?: string | null;\r\n user?: UserDto | null;\r\n\r\n constructor(data?: IAuthenticateResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.token = _data[\"token\"] !== undefined ? _data[\"token\"] : null;\r\n this.user = _data[\"user\"] ? UserDto.fromJS(_data[\"user\"]) : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AuthenticateResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AuthenticateResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"token\"] = this.token !== undefined ? this.token : null;\r\n data[\"user\"] = this.user ? this.user.toJSON() : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAuthenticateResponse {\r\n token?: string | null;\r\n user?: UserDto | null;\r\n}\r\n\r\nexport class UserDto implements IUserDto {\r\n id!: string;\r\n email?: string | null;\r\n firstName?: string | null;\r\n lastName?: string | null;\r\n isAdmin!: boolean;\r\n\r\n constructor(data?: IUserDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"] !== undefined ? _data[\"id\"] : null;\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.firstName = _data[\"firstName\"] !== undefined ? _data[\"firstName\"] : null;\r\n this.lastName = _data[\"lastName\"] !== undefined ? _data[\"lastName\"] : null;\r\n this.isAdmin = _data[\"isAdmin\"] !== undefined ? _data[\"isAdmin\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id !== undefined ? this.id : null;\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"firstName\"] = this.firstName !== undefined ? this.firstName : null;\r\n data[\"lastName\"] = this.lastName !== undefined ? this.lastName : null;\r\n data[\"isAdmin\"] = this.isAdmin !== undefined ? this.isAdmin : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IUserDto {\r\n id: string;\r\n email?: string | null;\r\n firstName?: string | null;\r\n lastName?: string | null;\r\n isAdmin: boolean;\r\n}\r\n\r\nexport class AuthenticateRequest implements IAuthenticateRequest {\r\n email!: string;\r\n password!: string;\r\n\r\n constructor(data?: IAuthenticateRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.password = _data[\"password\"] !== undefined ? _data[\"password\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AuthenticateRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AuthenticateRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"password\"] = this.password !== undefined ? this.password : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IAuthenticateRequest {\r\n email: string;\r\n password: string;\r\n}\r\n\r\nexport class UserRegisterInputModel implements IUserRegisterInputModel {\r\n email!: string;\r\n password!: string;\r\n\r\n constructor(data?: IUserRegisterInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.email = _data[\"email\"] !== undefined ? _data[\"email\"] : null;\r\n this.password = _data[\"password\"] !== undefined ? _data[\"password\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserRegisterInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserRegisterInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"email\"] = this.email !== undefined ? this.email : null;\r\n data[\"password\"] = this.password !== undefined ? this.password : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IUserRegisterInputModel {\r\n email: string;\r\n password: string;\r\n}\r\n\r\nexport class ForgotPasswordConfirmationInputModel implements IForgotPasswordConfirmationInputModel {\r\n code!: string;\r\n newPassword!: string;\r\n\r\n constructor(data?: IForgotPasswordConfirmationInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.code = _data[\"code\"] !== undefined ? _data[\"code\"] : null;\r\n this.newPassword = _data[\"newPassword\"] !== undefined ? _data[\"newPassword\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ForgotPasswordConfirmationInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ForgotPasswordConfirmationInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"code\"] = this.code !== undefined ? this.code : null;\r\n data[\"newPassword\"] = this.newPassword !== undefined ? this.newPassword : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IForgotPasswordConfirmationInputModel {\r\n code: string;\r\n newPassword: string;\r\n}\r\n\r\nexport class ChangePasswordInputModel implements IChangePasswordInputModel {\r\n oldPassword!: string;\r\n newPassword!: string;\r\n\r\n constructor(data?: IChangePasswordInputModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.oldPassword = _data[\"oldPassword\"] !== undefined ? _data[\"oldPassword\"] : null;\r\n this.newPassword = _data[\"newPassword\"] !== undefined ? _data[\"newPassword\"] : null;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChangePasswordInputModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChangePasswordInputModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"oldPassword\"] = this.oldPassword !== undefined ? this.oldPassword : null;\r\n data[\"newPassword\"] = this.newPassword !== undefined ? this.newPassword : null;\r\n return data; \r\n }\r\n}\r\n\r\nexport interface IChangePasswordInputModel {\r\n oldPassword: string;\r\n newPassword: string;\r\n}\r\n\r\nexport class SwaggerResponse {\r\n status: number;\r\n headers: { [key: string]: any; };\r\n result: TResult;\r\n\r\n constructor(status: number, headers: { [key: string]: any; }, result: TResult)\r\n {\r\n this.status = status;\r\n this.headers = headers;\r\n this.result = result;\r\n }\r\n}\r\n\r\nexport interface FileResponse {\r\n data: Blob;\r\n status: number;\r\n fileName?: string;\r\n headers?: { [name: string]: any };\r\n}\r\n\r\nexport class ApiException extends Error {\r\n message: string;\r\n status: number;\r\n response: string;\r\n headers: { [key: string]: any; };\r\n result: any;\r\n\r\n constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {\r\n super();\r\n\r\n this.message = message;\r\n this.status = status;\r\n this.response = response;\r\n this.headers = headers;\r\n this.result = result;\r\n }\r\n\r\n protected isApiException = true;\r\n\r\n static isApiException(obj: any): obj is ApiException {\r\n return obj.isApiException === true;\r\n }\r\n}\r\n\r\nfunction throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): any {\r\n throw new ApiException(message, status, response, headers, result);\r\n}\r\n\r\nfunction isAxiosError(obj: any | undefined): obj is AxiosError {\r\n return obj && obj.isAxiosError === true;\r\n}","export class Logger {\r\n public static isEnabled = false;\r\n\r\n public static log(...messages: any[]): void {\r\n if (this.isEnabled) {\r\n console.log(...messages);\r\n }\r\n }\r\n\r\n public static warn(...messages: any[]): void {\r\n if (this.isEnabled) {\r\n console.warn(...messages);\r\n }\r\n }\r\n\r\n public static error(...messages: any[]): void {\r\n if (this.isEnabled) {\r\n console.error(...messages);\r\n }\r\n }\r\n}\r\n","export class StringUtils {\r\n public static isNullOrWhiteSpace(value: string | undefined | null): boolean {\r\n if (value === undefined || value === null) return true;\r\n if (typeof value !== 'string') return true;\r\n\r\n return value.trim().length <= 0;\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-snackbar',{scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"color\":\"pink\",\"text\":\"\"},on:{\"click\":function($event){_vm.show = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Layout.Modals.OnlyHD'))+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FullHDSnackbar extends Vue {\r\n @Prop() showSnackbarHD!: boolean;\r\n show = false;\r\n attrs = false;\r\n change(value: boolean) {\r\n this.show = value;\r\n }\r\n @Watch('showSnackbarHD', { immediate: true })\r\n public onShowSnackbarHDChange(value: boolean) {\r\n this.change(value);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fullHDsnackbar.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fullHDsnackbar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./fullHDsnackbar.vue?vue&type=template&id=2b761090&scoped=true&\"\nimport script from \"./fullHDsnackbar.vue?vue&type=script&lang=ts&\"\nexport * from \"./fullHDsnackbar.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2b761090\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\ninstallComponents(component, {VBtn,VSnackbar})\n","\n\n\n\n\n\n\n\r\nimport CookiesConsent from '@/modules/layout/components/cookies-consent/CookiesConsent.vue';\r\nimport { AnalyticsHelper, FacebookPixelEvent } from '@/plugins/analytics-facebook';\r\nimport AnalyticsGoogleHelper from '@/plugins/analytics-google';\r\nimport { ConfigurationDto, Environment, SettingsClient, SwaggerResponse } from '@/services/Api';\r\nimport { Logger } from '@/services/logger';\r\nimport { store } from '@/store/store';\r\nimport { reaction } from 'mobx';\r\nimport { bootstrap, optIn, optOut, setOptions } from 'vue-gtag';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { StringUtils } from '../utils/string-utils';\r\nimport FullHDSnackbar from './fullHDsnackbar.vue';\r\n\r\n@Component({ components: { CookiesConsent, FullHDSnackbar } })\r\nexport default class AppInitializer extends Vue {\r\n private boostrappingInProgress = false;\r\n private pixelBootstrapped = false;\r\n showSnackbarHD = false;\r\n private configuration = new ConfigurationDto({\r\n version: null,\r\n googleAnalyticsId: null,\r\n facebookPixelId: null,\r\n environmentName: Environment.Development,\r\n ppUrl: ''\r\n });\r\n\r\n public mounted(): void {\r\n if (store.isSizeChekcEnabled) {\r\n window.innerWidth < 1366 || window.innerHeight < 768\r\n ? (this.showSnackbarHD = true)\r\n : (this.showSnackbarHD = false);\r\n }\r\n\r\n this.fetchConfiguration().then(config => {\r\n this.configuration = config;\r\n\r\n store.setAppVersion(config.version);\r\n store.setPPUrl(config.ppUrl);\r\n Logger.isEnabled = config.environmentName === Environment.Development;\r\n\r\n this.setupGoogleAnalytics();\r\n this.setupFacebookPixel();\r\n });\r\n\r\n reaction(\r\n () => store.googleAnalyticsEnabled,\r\n () => this.setupGoogleAnalytics()\r\n );\r\n\r\n reaction(\r\n () => store.facebookPixelEnabled,\r\n () => this.setupFacebookPixel()\r\n );\r\n }\r\n get isStoreLoaded() {\r\n return store.isStoreLoaded();\r\n }\r\n\r\n private setupGoogleAnalytics(): void {\r\n if (this.boostrappingInProgress) return;\r\n\r\n const canEnable = this.canEnableGoogleAnalytics();\r\n if (canEnable && !AnalyticsGoogleHelper.analyticsBootstrapped) {\r\n this.boostrapGoogleAnalytics();\r\n } else if (AnalyticsGoogleHelper.analyticsBootstrapped) {\r\n if (canEnable) optIn();\r\n else optOut();\r\n }\r\n }\r\n\r\n private boostrapGoogleAnalytics(): void {\r\n const id = this.configuration.googleAnalyticsId as string;\r\n this.boostrappingInProgress = true;\r\n\r\n setOptions({\r\n config: {\r\n id: id,\r\n params: {\r\n // The google analytics script is automatically sending page_view events, but for SPAs (Single Page Applications)\r\n // page_view events should be sent manually - https://developers.google.com/analytics/devguides/collection/gtagjs/pages#manual_pageviews\r\n // Setting send_page_view to false will not trigger the first hit on the page.\r\n // The vue-gtag library is using the router to send the page_view events.\r\n send_page_view: false\r\n // debug_mode: true\r\n }\r\n }\r\n });\r\n\r\n bootstrap()\r\n .then(() => {\r\n Logger.log('Google Analytics has been bootstrapped');\r\n AnalyticsGoogleHelper.analyticsBootstrapped = true;\r\n this.boostrappingInProgress = false;\r\n })\r\n .catch(error => {\r\n Logger.error('Error while bootstrapping Google Analytics', error);\r\n AnalyticsGoogleHelper.analyticsBootstrapped = false;\r\n this.boostrappingInProgress = false;\r\n });\r\n }\r\n\r\n private canEnableGoogleAnalytics(): boolean {\r\n return (\r\n this.configuration.environmentName === Environment.Production &&\r\n StringUtils.isNullOrWhiteSpace(this.configuration.googleAnalyticsId) === false &&\r\n store.googleAnalyticsEnabled === true\r\n );\r\n }\r\n\r\n private setupFacebookPixel(): void {\r\n if (this.pixelBootstrapped) return;\r\n\r\n if (this.canEnableFacebookPixel()) {\r\n AnalyticsHelper.initFacebookPixel(this.configuration.facebookPixelId as string);\r\n AnalyticsHelper.trackWithFacebookPixel(FacebookPixelEvent.pageView);\r\n this.pixelBootstrapped = true;\r\n }\r\n }\r\n\r\n private canEnableFacebookPixel(): boolean {\r\n return (\r\n this.configuration.environmentName === Environment.Production &&\r\n StringUtils.isNullOrWhiteSpace(this.configuration.facebookPixelId) === false &&\r\n store.facebookPixelEnabled === true\r\n );\r\n }\r\n\r\n private fetchConfiguration(): Promise {\r\n const client = new SettingsClient();\r\n\r\n const handleResponse = (response: SwaggerResponse | null) =>\r\n response?.status === 200 ? response.result : this.configuration;\r\n\r\n return new Promise(resolve => {\r\n client\r\n .getConfiguration()\r\n .catch(error => error)\r\n .then(response => resolve(handleResponse(response)));\r\n });\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppInitializer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppInitializer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AppInitializer.vue?vue&type=template&id=30ba32cb&\"\nimport script from \"./AppInitializer.vue?vue&type=script&lang=ts&\"\nexport * from \"./AppInitializer.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('notifications',{staticClass:\"ml-3\",attrs:{\"group\":\"main\",\"position\":\"bottom left\",\"width\":\"450px\"},scopedSlots:_vm._u([{key:\"body\",fn:function(props){return [_c('v-alert',{attrs:{\"type\":props.item.type,\"dismissible\":\"\"}},[_vm._v(_vm._s(props.item.text))])]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class NotificationHolder extends Vue {}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotificationHolder.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotificationHolder.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./NotificationHolder.vue?vue&type=template&id=71d5cec0&scoped=true&\"\nimport script from \"./NotificationHolder.vue?vue&type=script&lang=ts&\"\nexport * from \"./NotificationHolder.vue?vue&type=script&lang=ts&\"\nimport style1 from \"./NotificationHolder.vue?vue&type=style&index=1&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"71d5cec0\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\ninstallComponents(component, {VAlert})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-navigation-drawer',{attrs:{\"fixed\":\"\",\"app\":\"\",\"src\":require(\"@/assets/layout/Left_menu_bg.svg\")},model:{value:(_vm.store.sideMenuOpen),callback:function ($$v) {_vm.$set(_vm.store, \"sideMenuOpen\", $$v)},expression:\"store.sideMenuOpen\"}},[_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',{staticClass:\"title title-logo\"},[_c('router-link',{attrs:{\"to\":\"/\"}},[_c('img',{attrs:{\"src\":require(\"@/assets/layout/ingamehr-logo.svg\")}})])],1),_c('v-list-item-subtitle')],1)],1),_c('v-divider'),_c('v-list',{attrs:{\"dense\":\"\",\"nav\":\"\"}},_vm._l((_vm.items),function(item){return _c('v-list-item',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t(item.title)),expression:\"$t(item.title)\"}],key:item.title,class:item.routeName,attrs:{\"link\":\"\",\"to\":{ name: item.routeName },\"disabled\":item.disabled,\"exact-path\":\"\"}},[_c('v-list-item-icon',[_c('v-icon',{attrs:{\"color\":\"primary\"}},[_vm._v(_vm._s(item.icon))])],1),_c('v-list-item-content',[(item.title.length > 25)?_c('v-list-item-title',_vm._g(_vm._b({staticClass:\"mt-1\",attrs:{\"color\":\"primary\"}},'v-list-item-title',_vm.attrs,false),_vm.on),[_vm._v(_vm._s(_vm.$t(item.title))+\" \")]):_c('v-list-item-title',_vm._g(_vm._b({staticClass:\"mt-1\",attrs:{\"color\":\"primary\"}},'v-list-item-title',_vm.attrs,false),_vm.on),[_vm._v(_vm._s(_vm.$t(item.title)))]),_vm._l((item.items),function(subMenu){return _c('div',{key:subMenu.routeName},[(_vm.$route.name === subMenu.routeName)?_c('div',{staticClass:\"ml-6 sub-menu-holder\"},_vm._l((subMenu.items),function(sub){return _c('div',{key:sub.id,staticClass:\"my-2\",class:{ active: _vm.store.isIntersected(sub.id) }},[_vm._v(\" \"+_vm._s(_vm.$t(sub.title))+\" \")])}),0):_vm._e()])})],2)],1)}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export enum GameInstanceRoute {\r\n gameInstanceList = 'Game Instance List',\r\n gameInstanceCreate = 'Game Instance Create',\r\n gameInstanceCreateOrder = 'Game Instance Create Order',\r\n gameInstanceEdit = 'Game Instance Edit'\r\n}\r\n","export enum ProfessionsRoute {\r\n professionList = 'Profession List',\r\n createProfession = 'Create Profession',\r\n professionDetails = 'Profession Details',\r\n createQuestion = 'Create Question',\r\n editQuestion = 'Edit Question'\r\n}\r\n","export enum PaymentsHistoryRoute {\r\n paymentsHistoryList = 'Payments History List',\r\n paymentsHistoryDetails = 'Payments History Details'\r\n}\r\n","export enum AdminUsersRoute {\r\n adminDashboard = 'Admin Dashboard',\r\n userAdmin = 'User Admin',\r\n adminEdit = 'Admin Edit',\r\n adminDetails = 'Admin Details',\r\n discountsList = 'Discounts List',\r\n discountEdit = 'Discount Edit',\r\n discountDetails = 'Discount Details',\r\n discountAdd = 'Discount Add',\r\n paymentsList = 'Payments List',\r\n paymentsDetails = 'Payments Details',\r\n gameInstances = 'Game Instances',\r\n adminGameInstanceDetails = 'Admin Game Instance Details'\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { MenuItem } from './MenuItem';\r\nimport { store } from '@/store/store';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\nimport { PaymentsHistoryRoute } from '@/modules/payments-history/payments-history-router.enum';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\n\r\n@Component\r\nexport default class SideMenu extends Vue {\r\n store = store;\r\n attrs = false;\r\n on = false;\r\n items: MenuItem[] = [\r\n {\r\n title: 'Layout.Menu.GameInstances',\r\n icon: 'mdi-gamepad-variant-outline',\r\n routeName: GameInstanceRoute.gameInstanceList,\r\n disabled: false\r\n },\r\n {\r\n title: 'Layout.Menu.Professions',\r\n icon: 'mdi-professional-hexagon',\r\n routeName: ProfessionsRoute.professionList,\r\n disabled: false\r\n },\r\n {\r\n title: 'Layout.Menu.PaymentsHistory',\r\n icon: 'mdi-receipt',\r\n routeName: PaymentsHistoryRoute.paymentsHistoryList,\r\n disabled: false\r\n }\r\n ];\r\n mounted() {\r\n if (this.store.isAdmin) {\r\n this.items.push({\r\n title: 'Layout.Menu.AdminDashboard',\r\n icon: 'mdi-account-supervisor',\r\n routeName: AdminUsersRoute.adminDashboard,\r\n disabled: false\r\n });\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SideMenu.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SideMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SideMenu.vue?vue&type=template&id=2c3fb04e&scoped=true&\"\nimport script from \"./SideMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./SideMenu.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SideMenu.vue?vue&type=style&index=0&id=2c3fb04e&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c3fb04e\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemSubtitle } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VNavigationDrawer } from 'vuetify/lib/components/VNavigationDrawer';\ninstallComponents(component, {VDivider,VIcon,VList,VListItem,VListItemContent,VListItemIcon,VListItemSubtitle,VListItemTitle,VNavigationDrawer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app-bar',{attrs:{\"app\":\"\",\"color\":\"#1AABBC\"}},[_c('v-app-bar-nav-icon',{staticClass:\"toolBar-btn\",attrs:{\"color\":\"white\"},on:{\"click\":_vm.toggleMenu}}),_c('v-breadcrumbs',{staticClass:\"bread-crumbs\",attrs:{\"items\":_vm.getCrumbs()}}),_c('v-toolbar-title'),_c('v-spacer'),_c('ToolBarLanguageSelector'),_c('v-menu',{attrs:{\"offset-y\":\"\",\"left\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({staticClass:\"user-btn\",attrs:{\"icon\":\"\",\"color\":\"white\"}},'v-btn',attrs,false),on),[_c('v-icon',[_vm._v(\"mdi-account-outline\")])],1)]}}])},[_c('v-list',[_c('v-list-item',[_c('v-list-item-title',{staticClass:\"current-user-title\"},[_vm._v(_vm._s(_vm.currentUser()))])],1),_c('v-divider'),_c('v-list-item',{staticClass:\"change-password-btn\",on:{\"click\":_vm.changePassword}},[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Layout.Toolbar.ChangePassword')))])],1),_c('v-list-item',{staticClass:\"logout-btn\",on:{\"click\":_vm.logOut}},[_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Layout.Toolbar.Logout')))])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-menu',{attrs:{\"offset-y\":\"\",\"left\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({staticClass:\"mr-2 pa-0 flag-btn\",attrs:{\"icon\":\"\",\"elevation\":_vm.elevation,\"color\":_vm.color,\"width\":\"48\",\"height\":\"48\"}},'v-btn',attrs,false),on),[_c('span',{staticClass:\"flag-icon toolbar-flag-icon\",class:_vm.getFlagClass(_vm.getLanguage(_vm.$i18n.locale))})])]}}])},[_c('v-list',_vm._l((_vm.langs),function(lang){return _c('v-list-item',{key:lang.code,on:{\"click\":function($event){return _vm.changeLanguage(lang.code)}}},[_c('v-list-item-title',[_c('div',{staticClass:\"d-inline-flex\"},[_c('span',{staticClass:\"flag-icon\",class:_vm.getFlagClass(lang)}),_c('div',{staticClass:\"ml-1\"},[_vm._v(_vm._s(lang.title))])])])],1)}),1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Locales } from '@/plugins/i18n';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { store } from '@/store/store';\r\nimport 'flag-icon-css/css/flag-icon.css';\r\nimport { UserClient } from '@/services/Api';\r\n\r\n@Component\r\nexport default class ToolBarLanguageSelector extends Vue {\r\n @Prop({ default: 'transparent' }) color?: string;\r\n @Prop({ default: '2' }) elevation?: string;\r\n langs = [\r\n { code: Locales.EN, title: 'English', customFlagCode: 'gb' },\r\n { code: Locales.DE, title: 'Deutsch' },\r\n { code: Locales.PL, title: 'Polski' },\r\n { code: Locales.ES, title: 'Español' },\r\n { code: Locales.PT, title: 'Português' },\r\n { code: Locales.FR, title: 'Français' },\r\n { code: Locales.IT, title: 'Italiano' },\r\n { code: Locales.RU, title: 'русский' },\r\n { code: Locales.NL, title: 'Nederlands' }\r\n ];\r\n apiService = new UserClient();\r\n\r\n changeLanguage(lang: string) {\r\n store.setLanguage(lang);\r\n if (store.isLoggedIn) {\r\n this.apiService.updateLanguage();\r\n }\r\n }\r\n getLanguage(code: string) {\r\n const language = this.langs.find(l => l.code === code);\r\n return language;\r\n }\r\n getFlagClass(lang: any) {\r\n if (lang.customFlagCode) {\r\n return 'flag-icon-' + lang.customFlagCode;\r\n }\r\n return 'flag-icon-' + lang.code;\r\n }\r\n}\r\n","export enum UserManagementRoute {\r\n login = 'Login',\r\n register = 'Register',\r\n activateAccount = 'Activate Account',\r\n forgotPasswordRequest = 'Forgot Password Request',\r\n forgotPasswordConfirm = 'Forgot Password Confirm',\r\n changePassword = 'Change Password'\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToolBarLanguageSelector.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToolBarLanguageSelector.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ToolBarLanguageSelector.vue?vue&type=template&id=730f753a&scoped=true&\"\nimport script from \"./ToolBarLanguageSelector.vue?vue&type=script&lang=ts&\"\nexport * from \"./ToolBarLanguageSelector.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ToolBarLanguageSelector.vue?vue&type=style&index=0&id=730f753a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"730f753a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\ninstallComponents(component, {VBtn,VList,VListItem,VListItemTitle,VMenu})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { store } from '@/store/store';\r\nimport ToolBarLanguageSelector from './ToolBarLanguageSelector.vue';\r\nimport { UserManagementRoute } from '@/modules/user-management/user-management-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\n\r\n@Component({ components: { ToolBarLanguageSelector } })\r\nexport default class ToolBar extends Vue {\r\n store = store;\r\n items = [\r\n {\r\n text: 'Dashboard',\r\n disabled: false,\r\n to: { name: UserManagementRoute.changePassword }\r\n },\r\n {\r\n text: 'Link 1',\r\n disabled: false,\r\n to: { name: UserManagementRoute.changePassword }\r\n },\r\n {\r\n text: 'Link 2',\r\n disabled: true,\r\n href: 'breadcrumbs_link_2'\r\n }\r\n ];\r\n breadcrumbs: BreadcrumbData[] = [];\r\n\r\n toggleMenu() {\r\n store.toggleSideMenu();\r\n }\r\n\r\n changePassword() {\r\n this.$router.push({ name: UserManagementRoute.changePassword });\r\n }\r\n\r\n logOut() {\r\n store.logOutUser();\r\n this.$router.push({ name: UserManagementRoute.login });\r\n }\r\n\r\n currentUser() {\r\n return store.user?.email;\r\n }\r\n getCrumbs() {\r\n const crumbsFn = store.getBreadcrumb();\r\n if (!crumbsFn) {\r\n return [];\r\n }\r\n const crumbs = crumbsFn();\r\n return crumbs;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToolBar.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToolBar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ToolBar.vue?vue&type=template&id=7fab7837&scoped=true&\"\nimport script from \"./ToolBar.vue?vue&type=script&lang=ts&\"\nexport * from \"./ToolBar.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ToolBar.vue?vue&type=style&index=0&id=7fab7837&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7fab7837\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAppBar } from 'vuetify/lib/components/VAppBar';\nimport { VAppBarNavIcon } from 'vuetify/lib/components/VAppBar';\nimport { VBreadcrumbs } from 'vuetify/lib/components/VBreadcrumbs';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAppBar,VAppBarNavIcon,VBreadcrumbs,VBtn,VDivider,VIcon,VList,VListItem,VListItemTitle,VMenu,VSpacer,VToolbarTitle})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-footer',{attrs:{\"app\":\"\",\"inset\":\"\",\"absolute\":\"\",\"color\":\"white\"}},[_c('div',[_vm._v(\"© \"),_c('a',{attrs:{\"href\":\"https://www.codefusion.pl\"}},[_vm._v(\"CODEFUSION Sp. z o.o.\")]),_vm._v(\" \"+_vm._s(_vm.year))]),(_vm.displayAppVersion)?_c('div',{staticClass:\"app-version\"},[_vm._v(\"(InGame HR v\"+_vm._s(_vm.store.appVersion)+\")\")]):_vm._e(),_c('div',{staticClass:\"ml-auto\"},[_c('a',{attrs:{\"href\":\"\"},on:{\"click\":function($event){$event.preventDefault();return _vm.store.setConsentBannerState('privacySettings')}}},[_vm._v(\" \"+_vm._s(_vm.$t('CookiesConsent.CookiePreferences'))+\" \")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { store } from '@/store/store';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { StringUtils } from '../utils/string-utils';\r\n\r\n@Component\r\nexport default class Footer extends Vue {\r\n public store = store;\r\n\r\n public get year(): number {\r\n return new Date().getFullYear();\r\n }\r\n\r\n public get displayAppVersion(): boolean {\r\n return StringUtils.isNullOrWhiteSpace(this.store.appVersion) === false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Footer.vue?vue&type=template&id=617bfa75&scoped=true&\"\nimport script from \"./Footer.vue?vue&type=script&lang=ts&\"\nexport * from \"./Footer.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Footer.vue?vue&type=style&index=0&id=617bfa75&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"617bfa75\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFooter } from 'vuetify/lib/components/VFooter';\ninstallComponents(component, {VFooter})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport AppInitializer from '@/modules/layout/components/AppInitializer.vue';\r\nimport NotificationHolder from '@/modules/layout/components/NotificationHolder.vue';\r\nimport SideMenu from '@/modules/layout/components/SideMenu.vue';\r\nimport ToolBar from '@/modules/layout/components/ToolBar.vue';\r\nimport Footer from '@/modules/layout/components/Footer.vue';\r\nimport Vue from 'vue';\r\n\r\nexport default Vue.extend({\r\n name: 'App',\r\n components: { SideMenu, ToolBar, NotificationHolder, AppInitializer, Footer }\r\n});\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--14-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--14-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--14-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--14-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=7c2fe2b8&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VApp } from 'vuetify/lib/components/VApp';\nimport { VMain } from 'vuetify/lib/components/VMain';\ninstallComponents(component, {VApp,VMain})\n","import { Country, countries as allCountries } from 'countries-list';\r\n\r\nconst excludedCountries = ['BV', 'EH', 'GS', 'HM', 'TF', 'AQ'];\r\n\r\nexport interface CountryViewModel extends Country {\r\n code: string;\r\n}\r\n\r\nexport class CountriesProvider {\r\n public static get countries(): CountryViewModel[] {\r\n if (this.countryList == null) this.countryList = this.mapCountries();\r\n\r\n return this.countryList;\r\n }\r\n\r\n private static countryList: CountryViewModel[] | undefined;\r\n\r\n public static getCountry(code: string): CountryViewModel | null {\r\n const country = (allCountries as any)[code];\r\n if (country == null) return null;\r\n\r\n return {\r\n code: code,\r\n ...country\r\n };\r\n }\r\n\r\n private static mapCountries(): CountryViewModel[] {\r\n const result: CountryViewModel[] = [];\r\n Object.keys(allCountries).forEach(key => {\r\n if (excludedCountries.includes(key)) return;\r\n if (Object.prototype.hasOwnProperty.call(allCountries, key)) {\r\n result.push({\r\n code: key,\r\n ...(allCountries as any)[key]\r\n });\r\n }\r\n });\r\n\r\n return result;\r\n }\r\n}\r\n","import { Currency } from '@/services/Api';\r\nimport { CountriesProvider } from '@/services/countries.provider';\r\nimport moment from 'moment';\r\nimport { Moment } from 'moment';\r\nimport { VueConstructor } from 'vue/types/umd';\r\n\r\nexport default {\r\n install(Vue: VueConstructor) {\r\n Vue.filter('formatDateTime', function someFormatFunc1(value: Moment) {\r\n if (!value || !moment(value).isValid()) {\r\n return '-';\r\n }\r\n const parsed = moment(value).local();\r\n return parsed.format('YYYY-MM-DD HH:mm');\r\n });\r\n Vue.filter('formatDate', function someFormatFunc1(value: Moment) {\r\n if (!value || !moment(value).isValid()) {\r\n return '-';\r\n }\r\n\r\n const parsed = moment(value).local();\r\n return parsed.format('YYYY-MM-DD');\r\n });\r\n Vue.filter('formatHours', function someFormatFunc1(value: Moment) {\r\n if (!value || !moment(value).isValid()) {\r\n return '-';\r\n }\r\n\r\n const parsed = moment(value).local();\r\n return parsed.format('HH:mm');\r\n });\r\n Vue.filter('formatNormal', function someFormatFunc1(value: Moment) {\r\n if (!value || !moment(value).isValid()) {\r\n return '-';\r\n }\r\n\r\n const parsed = moment(value).local();\r\n return parsed.format('HH:mm:ss');\r\n });\r\n Vue.filter('toCurrency', (value: any, currency: Currency) => {\r\n if (typeof value !== 'number') return value;\r\n let locale: string;\r\n\r\n switch (currency) {\r\n case Currency.PLN:\r\n locale = 'pl-PL';\r\n break;\r\n case Currency.EUR:\r\n locale = 'de-DE';\r\n break;\r\n case Currency.USD:\r\n locale = 'en-US';\r\n break;\r\n }\r\n\r\n const formatter = new Intl.NumberFormat(locale, {\r\n style: 'currency',\r\n currency: currency,\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2\r\n });\r\n return formatter.format(value);\r\n });\r\n Vue.filter('toCountryName', (value: string) => {\r\n const country = CountriesProvider.getCountry(value);\r\n\r\n return country?.native ?? '-';\r\n });\r\n Vue.filter('formatNumber', (value: number) => {\r\n const formatter = new Intl.NumberFormat('en-GB', { minimumFractionDigits: 1 });\r\n return formatter.format(value);\r\n });\r\n }\r\n};\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[(_vm.loading)?[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"item-key\":\"name\",\"loading\":\"\",\"loading-text\":\"Loading... Please wait\"}})]:_vm._e(),(!_vm.loading)?_c('UserListRow',{attrs:{\"data\":_vm.usersList},on:{\"user-deleted\":_vm.userDeleted}}):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Vue } from 'vue-property-decorator';\r\n\r\nexport default class NotificationService {\r\n public static info(message: string): void {\r\n Vue.notify({\r\n group: 'main',\r\n type: 'info',\r\n text: message,\r\n duration: 6000\r\n });\r\n }\r\n public static error(message: string): void {\r\n Vue.notify({\r\n group: 'main',\r\n type: 'error',\r\n text: message,\r\n duration: 6000\r\n });\r\n }\r\n public static warning(message: string): void {\r\n Vue.notify({\r\n group: 'main',\r\n type: 'warning',\r\n text: message,\r\n duration: 6000\r\n });\r\n }\r\n public static success(message: string): void {\r\n Vue.notify({\r\n group: 'main',\r\n type: 'success',\r\n text: message,\r\n duration: 6000\r\n });\r\n }\r\n}\r\n","import { SwaggerResponse } from './Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { store } from '@/store/store';\r\nimport router from '@/router';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { UserManagementRoute } from '@/modules/user-management/user-management-router.enum';\r\n\r\nexport default abstract class ApiServiceBase {\r\n protected HandleError(error: SwaggerResponse) {\r\n if (error?.status == 404) {\r\n NotificationService.error(translate('Errors.CannotConnect'));\r\n return;\r\n } else if (error?.status == 401) {\r\n NotificationService.warning(translate('Warnings.TokenExpired'));\r\n store.logOutUser();\r\n router.push({ name: UserManagementRoute.login });\r\n return;\r\n } else if (error?.status == 403) {\r\n NotificationService.warning(translate('Warnings.InsufficientPermissions'));\r\n router.push({ name: GameInstanceRoute.gameInstanceList });\r\n return;\r\n }\r\n\r\n if ((error.result as any).title) {\r\n NotificationService.error((error.result as any).title);\r\n return;\r\n }\r\n\r\n NotificationService.error(translate(error.result));\r\n }\r\n}\r\n","import {\r\n AdminUserListItemDto, AdminUserDataDto, AdminUserUpdateInputModel, UserAdminClient, AdminUserDeleteUserInputModel,\r\n GameInstanceAdminDataDto, OrderListItemAdminDataDto,ProfessionAdminDataDto\r\n} from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class AdminUserApiService extends ApiServiceBase {\r\n private client = new UserAdminClient();\r\n public async GetUsersList(): Promise {\r\n try {\r\n const userList = await this.client.getUsersList();\r\n return userList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async updateDataUser(inputModel: AdminUserUpdateInputModel): Promise {\r\n try {\r\n const userList = await this.client.updateDataUser(inputModel);\r\n return userList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async deleteUser(inputModel: AdminUserDeleteUserInputModel): Promise {\r\n try {\r\n const userList = await this.client.deleteUser(inputModel);\r\n return userList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getUser(inputModel: string): Promise {\r\n try {\r\n const user = await this.client.getUser(inputModel);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getUserData(inputModel: string): Promise {\r\n try {\r\n const user = await this.client.getUserData(inputModel);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getGameInstancesByUser(inputModel: string): Promise {\r\n try {\r\n const user = await this.client.getGameInstancesByUser(inputModel);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getPaymentOrders(inputModel: string): Promise {\r\n try {\r\n const user = await this.client.getPaymentOrders(inputModel);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getProfessionsOfCurrentUser(inputModel: string): Promise {\r\n try {\r\n const user = await this.client.getProfessionsOfCurrentUser(inputModel);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',[_c('v-card-title',[_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.AdminPanel.UserList.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"custom-filter\":_vm.customFilter,\"items-per-page\":_vm.tableSize},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-link',{attrs:{\"value\":row.item.email,\"routeTo\":{ name: _vm.adminUsersRoute.adminDetails, params: { id: row.item.id } }}})],1),_c('td',[_vm._v(_vm._s(row.item.buyerIdentifier))]),_c('td',[_c('v-simple-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(row.item.isAdmin),callback:function ($$v) {_vm.$set(row.item, \"isAdmin\", $$v)},expression:\"row.item.isAdmin\"}})],1),_c('td',[_c('v-simple-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(row.item.active),callback:function ($$v) {_vm.$set(row.item, \"active\", $$v)},expression:\"row.item.active\"}})],1),_c('td',[_c('v-simple-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(row.item.isDeleted),callback:function ($$v) {_vm.$set(row.item, \"isDeleted\", $$v)},expression:\"row.item.isDeleted\"}})],1),_c('td',[_vm._v(_vm._s(_vm._f(\"formatDateTime\")(row.item.createdDate)))]),_c('td',[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"dense\":\"\",\"justify\":\"space-around\",\"align\":\"center\"}},[_c('list-menu',[_c('v-list',[_c('v-list-item',{attrs:{\"to\":{\n name: _vm.adminUsersRoute.adminEdit,\n params: {\n id: row.item.id\n }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-pencil\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.Edit')))])],1),_c('v-list-item',{attrs:{\"to\":{\n name: _vm.adminUsersRoute.adminDetails,\n params: {\n id: row.item.id\n }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-text\")])],1),_c('v-list-item-title',[_vm._v(_vm._s('Details'))])],1),(!row.item.isDeleted)?_c('v-list-item',{on:{\"click\":function($event){return _vm.showDeleteConfirmation(row.item.id, row.item.email)}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-delete\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.Delete')))])],1):_vm._e()],1)],1)],1)],1)],1)]),_c('ConfirmDeleteModal',{attrs:{\"show\":_vm.dialog,\"customText\":_vm.confirmTitle},on:{\"confirm\":function($event){return _vm.deleteUser()},\"cancel\":function($event){return _vm.cancelDelete()}}})]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-dialog',{attrs:{\"persistent\":\"\",\"max-width\":\"400\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',{staticClass:\"delete-modal\"},[_c('v-card-title',{staticClass:\"headline\"},[_c('div',{staticClass:\"header-icon white--text\"},[_c('v-icon',{staticClass:\"header-icon-text white--text\"},[_vm._v(\"mdi-delete-outline\")])],1)]),_c('v-card-text',[_c('div',{staticClass:\"modal-container\"},[_c('div',{staticClass:\"background-wrapper text-container\"},[_c('p',{staticClass:\"mt-11\"},[_vm._v(_vm._s(_vm.$t((\"Layout.Modals.\" + _vm.translationTextGroup + \".Text\"))))]),_c('p',{staticClass:\"special\"},[_vm._v(_vm._s(_vm.customText))]),_c('p',[_vm._v(_vm._s(_vm.$t((\"Layout.Modals.\" + _vm.translationTextGroup + \".SubText\"))))])])])]),_c('v-card-actions',[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-btn',{staticClass:\"delete-modal-delete-btn\",attrs:{\"block\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.confirm()}}},[_c('v-icon',[_vm._v(\"mdi-delete-outline\")]),_vm._v(\" \"+_vm._s(_vm.$t(_vm.deleteButtonLabel))+\" \")],1)],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-btn',{staticClass:\"btn-cancel\",attrs:{\"block\":\"\",\"text\":\"\"},on:{\"click\":function($event){return _vm.cancel()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Cancel'))+\" \")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { StringUtils } from '../utils/string-utils';\r\n\r\n@Component\r\nexport default class ConfirmDeleteModal extends Vue {\r\n @Prop() show = false;\r\n @Prop() customText!: string;\r\n @Prop() translationGroup: string | undefined;\r\n @Prop() deleteButtonLabelKey: string | undefined;\r\n\r\n public get translationTextGroup(): string {\r\n return this.translationGroup === undefined ? 'ConfirmDelete' : this.translationGroup;\r\n }\r\n public get deleteButtonLabel(): string {\r\n return this.deleteButtonLabelKey === undefined ? 'Buttons.Delete' : this.deleteButtonLabelKey;\r\n }\r\n\r\n private confirm() {\r\n this.$emit('confirm');\r\n }\r\n private cancel() {\r\n this.$emit('cancel');\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmDeleteModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmDeleteModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ConfirmDeleteModal.vue?vue&type=template&id=277ec36e&scoped=true&\"\nimport script from \"./ConfirmDeleteModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ConfirmDeleteModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ConfirmDeleteModal.vue?vue&type=style&index=0&id=277ec36e&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"277ec36e\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VDialog,VIcon})\n","import { app } from '@/main';\r\nimport { PriceInfo } from '@/services/Api';\r\nimport { Duration, Moment } from 'moment';\r\nimport { sortItems } from 'vuetify/lib/util/helpers';\r\n\r\nexport default class DataTableSortingHelper {\r\n //Use when '>' and '<' operators give satisfying results\r\n public static compareByDefault(value1: any, value2: any, isDesc: boolean) {\r\n if (value1 === null && value2 === null) {\r\n return 0;\r\n }\r\n if (isDesc) {\r\n return value1 > value2 ? -1 : 1;\r\n } else {\r\n return value2 > value1 ? -1 : 1;\r\n }\r\n }\r\n public static compareByString(value1: string, value2: string, isDesc: boolean, locale: string) {\r\n const stringCollator = new Intl.Collator();\r\n if (value1 === null && value2 === null) {\r\n return 0;\r\n }\r\n\r\n if (isDesc) {\r\n [value1, value2] = [value2, value1];\r\n }\r\n [value1, value2] = [value1, value2].map(s =>\r\n (s || '')\r\n .toString()\r\n .toLocaleLowerCase()\r\n .trim()\r\n );\r\n\r\n if (value1 !== value2) {\r\n return stringCollator.compare(value1, value2);\r\n }\r\n return 0;\r\n }\r\n public static compareByPriceInfo(value1: PriceInfo, value2: PriceInfo) {\r\n if (value1 === null && value2 === null) {\r\n return 0;\r\n }\r\n\r\n return DataTableSortingHelper.compareByDefault(value1.finalPrice, value2.finalPrice, false);\r\n }\r\n public static compareByDate(value1: Moment | undefined | null, value2: Moment | undefined | null, isDesc: boolean) {\r\n if (value1 && value2) {\r\n if (!isDesc) {\r\n return value1.isBefore(value2) ? -1 : 1;\r\n } else {\r\n return value2.isBefore(value1) ? -1 : 1;\r\n }\r\n } else if (!value1 && value2) {\r\n if (!isDesc) {\r\n return -1;\r\n } else {\r\n return 1;\r\n }\r\n } else if (!value2 && value1) {\r\n if (!isDesc) {\r\n return 1;\r\n } else {\r\n return -1;\r\n }\r\n } else {\r\n return -1;\r\n }\r\n }\r\n\r\n public static compareByDuration(value1: Duration, value2: Duration, isDesc: boolean) {\r\n return DataTableSortingHelper.compareByDefault(value1.asSeconds(), value2.asSeconds(), isDesc);\r\n }\r\n\r\n public static sortByDefault(items: any[], sortBy: string[], sortDesc: boolean[], locale: any, customSorters?: any) {\r\n return sortItems(items, sortBy, sortDesc, locale, customSorters);\r\n }\r\n}\r\n","import { app } from '@/main';\r\nimport { PriceInfo } from '@/services/Api';\r\nimport moment from 'moment';\r\nimport { Moment } from 'moment';\r\n\r\nexport default class DataTableFilterHelper {\r\n public static filterByDate(value: Moment | null | undefined, search: string) {\r\n if (value) {\r\n const formatted = app.$options.filters?.formatDateTime(value) as string;\r\n return formatted?.includes(search);\r\n }\r\n return false;\r\n }\r\n\r\n public static filterByValid(value: Moment | null | undefined, search: string) {\r\n if (value) {\r\n const formatted = app.$options.filters?.formatDateTime(value) as string;\r\n const plan = value.isAfter(moment()) ? 'Per Game' : 'Basic';\r\n const combined = formatted + ' ' + plan;\r\n\r\n return combined.toLocaleLowerCase().includes(search.toLocaleLowerCase());\r\n }\r\n return 'basic'.includes(search.toLocaleLowerCase());\r\n }\r\n\r\n public static filterByString(value: string | null | undefined, search: string) {\r\n if (value) {\r\n const formatted = value.toLocaleLowerCase();\r\n return formatted?.includes(search.toLocaleLowerCase());\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public static filterByPriceInfo(value: PriceInfo | null | undefined, search: string) {\r\n if (value) {\r\n const currency = app.$options.filters?.toCurrency(value.finalPrice, value.currency);\r\n\r\n return currency?.includes(search.toLocaleLowerCase());\r\n }\r\n\r\n return false;\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport { AdminUserDeleteUserInputModel, AdminUserListItemDto } from '@/services/Api';\r\nimport AdminUserApiService from '../services/admin-user-api.service';\r\nimport ConfirmDeleteModal from '@/modules/layout/components/ConfirmDeleteModal.vue';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { Moment } from 'moment';\r\nimport DataTableFilterHelper from '@/modules/layout/helpers/data-table-filter.helper';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\n\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: { ConfirmDeleteModal }\r\n})\r\nexport default class UserListRow extends Vue {\r\n @Prop() readonly data!: AdminUserListItemDto[];\r\n confirmTitle = '';\r\n private apiService = new AdminUserApiService();\r\n private search = '';\r\n private tableSize = 10;\r\n private toDeleteId = '';\r\n public adminUsersRoute = AdminUsersRoute;\r\n dialog = false;\r\n get headers() {\r\n return [\r\n {\r\n text: this.$t('Modules.AdminPanel.UserList.Email'),\r\n align: 'start',\r\n value: 'email',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserList.BuyerIdentifier'),\r\n value: 'buyerIdentifier',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserList.IsAdmin'),\r\n value: 'isAdmin',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserList.Active'),\r\n value: 'active',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserList.Deleted'),\r\n value: 'isDeleted',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserList.CreateDate'),\r\n value: 'createdDate',\r\n sort: DataTableSortingHelper.compareByDate\r\n },\r\n { value: 'button', sortable: false }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n this.tableSize = store.getTableSize('Admin-users');\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables('Admin-users', this.tableSize);\r\n }\r\n showDeleteConfirmation(id: string, email: string) {\r\n this.dialog = true;\r\n this.toDeleteId = id;\r\n this.confirmTitle = email;\r\n }\r\n cancelDelete() {\r\n this.dialog = false;\r\n this.toDeleteId = '';\r\n this.confirmTitle = '';\r\n this.closeMenus();\r\n }\r\n closeMenus() {\r\n this.toDeleteId = '';\r\n this.confirmTitle = '';\r\n this.dialog = false;\r\n }\r\n async deleteUser() {\r\n const result = await this.apiService.deleteUser(\r\n new AdminUserDeleteUserInputModel({\r\n id: this.toDeleteId\r\n })\r\n );\r\n if (result) {\r\n this.$emit('user-deleted');\r\n this.closeMenus();\r\n NotificationService.success(translate('Modules.AdminPanel.UserList.Notifications.SuccessDelete'));\r\n }\r\n }\r\n\r\n customFilter(value: any, search: string | null, item: AdminUserListItemDto) {\r\n if (!search) {\r\n return true;\r\n }\r\n\r\n return (\r\n DataTableFilterHelper.filterByString(item.email ?? '', search) ||\r\n DataTableFilterHelper.filterByString(item.buyerIdentifier ?? '', search) ||\r\n DataTableFilterHelper.filterByDate(item.createdDate, search)\r\n );\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListRow.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserListRow.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserListRow.vue?vue&type=template&id=3c1ea9b2&\"\nimport script from \"./UserListRow.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserListRow.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSimpleCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardTitle,VCol,VDataTable,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VSimpleCheckbox,VSpacer,VTextField})\n","\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport AdminUserApiService from '../services/admin-user-api.service';\r\nimport { AdminUserListItemDto } from '@/services/Api';\r\nimport UserListRow from '../components/UserListRow.vue';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { AdminUsersRoute } from '../../admin-users-router.enum';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: { UserListRow }\r\n})\r\nexport default class AdminUserList extends Vue {\r\n private apiService = new AdminUserApiService();\r\n private usersList!: AdminUserListItemDto[];\r\n private loading = true;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.UserAdmin'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n await this.getUsers();\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n async userDeleted() {\r\n this.loading = true;\r\n await this.getUsers();\r\n this.loading = false;\r\n }\r\n async getUsers() {\r\n const userGetList = await this.apiService.GetUsersList();\r\n if (userGetList) {\r\n this.usersList = userGetList;\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminUserList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminUserList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminUserList.vue?vue&type=template&id=4ceff30c&scoped=true&\"\nimport script from \"./AdminUserList.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminUserList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4ceff30c\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\ninstallComponents(component, {VContainer,VDataTable})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\"},[(_vm.loading)?[_c('v-text-field',{attrs:{\"color\":\"success\",\"loading\":\"\",\"disabled\":\"\"}})]:_vm._e(),(!_vm.loading)?_c('EditUser',{attrs:{\"data\":_vm.userData}}):_vm._e(),_c('v-card-text',[_c('v-row',{staticClass:\"mt-3\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"11\",\"offset\":\"1\"}},[_c('div',{staticClass:\"text-right\"},[_c('v-btn',{attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.save}},[_vm._v(_vm._s(_vm.$t('Buttons.Save')))]),_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Cancel')))])],1)])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[_c('v-row',[_c('v-col',{staticClass:\"cf-view-title\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.EditPageHeader')))])],1),_c('v-row',[_c('v-col',[_c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.EditPageBasic')))]),_c('v-divider'),_c('v-card-text',[_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.EditPagaUserEmail')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.data.email),callback:function ($$v) {_vm.$set(_vm.data, \"email\", $$v)},expression:\"data.email\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.UserList.EditPagaUserAdmin')))]),_c('v-col',{staticClass:\"d-inline-flex\",attrs:{\"cols\":\"1\"}},[_c('v-switch',{model:{value:(_vm.data.isAdmin),callback:function ($$v) {_vm.$set(_vm.data, \"isAdmin\", $$v)},expression:\"data.isAdmin\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.UserList.EditPagaUserActive')))]),_c('v-col',{staticClass:\"d-inline-flex\",attrs:{\"cols\":\"1\"}},[_c('v-switch',{model:{value:(_vm.data.active),callback:function ($$v) {_vm.$set(_vm.data, \"active\", $$v)},expression:\"data.active\"}})],1)],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { AdminUserUpdateInputModel } from '@/services/Api';\r\n@Component\r\nexport default class EditUser extends Vue {\r\n @Prop() readonly data!: AdminUserUpdateInputModel;\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditUser.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditUser.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditUser.vue?vue&type=template&id=d83ab8fc&\"\nimport script from \"./EditUser.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditUser.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardText,VCol,VContainer,VDivider,VRow,VSwitch,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport EditUser from '../components/EditUser.vue';\r\nimport AdminUserApiService from '../services/admin-user-api.service';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { AdminUserUpdateInputModel } from '@/services/Api';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: {\r\n EditUser\r\n }\r\n})\r\nexport default class AdminEditPage extends Vue {\r\n private apiService = new AdminUserApiService();\r\n private loading = true;\r\n userData!: AdminUserUpdateInputModel;\r\n private submitting = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.UserAdmin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminEdit }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Edit'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n private cancel() {\r\n this.$router.push({ name: AdminUsersRoute.userAdmin });\r\n }\r\n async mounted() {\r\n const userInstance = await this.apiService.getUser(this.$route.params.id);\r\n if (userInstance) {\r\n this.userData = new AdminUserUpdateInputModel({\r\n id: userInstance.id,\r\n email: userInstance.email,\r\n isAdmin: userInstance.isAdmin,\r\n active: userInstance.active\r\n });\r\n } else {\r\n await this.$router.push({ name: AdminUsersRoute.userAdmin });\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n async save() {\r\n if (this.submitting) return;\r\n this.submitting = true;\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n this.submitting = false;\r\n return;\r\n }\r\n if (this.userData.email == null) {\r\n NotificationService.error(\"Email can't be empty\");\r\n }\r\n\r\n const editInstance = await this.apiService.updateDataUser(this.userData);\r\n\r\n if (editInstance) {\r\n await this.$router.push({ name: AdminUsersRoute.userAdmin });\r\n this.submitting = false;\r\n NotificationService.success(translate('Modules.AdminPanel.UserList.Success.UserEdited'));\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminEditPage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminEditPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminEditPage.vue?vue&type=template&id=53caa950&scoped=true&\"\nimport script from \"./AdminEditPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminEditPage.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"53caa950\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCardText,VCol,VForm,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\"},[(_vm.loading)?[_c('v-text-field',{attrs:{\"color\":\"success\",\"loading\":\"\",\"disabled\":\"\"}})]:_vm._e(),(!_vm.loading)?[_c('v-container',[_c('v-row',[_c('v-col',{staticClass:\"cf-view-title\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.Details')))])],1),_c('v-row',[_c('v-col',[_c('UserDataAdminData',{attrs:{\"userDetailsData\":_vm.userDetailsData}})],1)],1),_c('v-row',[_c('v-col',[_c('GameInstanceAdminData',{attrs:{\"userGameInstancesData\":_vm.userGameInstancesData}})],1)],1),_c('v-row',[_c('v-col',[_c('ProfessionsAdminData',{attrs:{\"userProfessionData\":_vm.userProfessionData}})],1)],1),_c('v-row',[_c('v-col',[_c('PaymentsAdminData',{attrs:{\"userPaymentData\":_vm.userPaymentData}})],1)],1)],1)]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserDetails.UserData')))]),_c('v-divider'),_c('v-card-text',[_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.Email'),\"value\":_vm.userDetailsData.email}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.Active'),\"value\":_vm.userDetailsData.active,\"useCheckBox\":true}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.VatNumber'),\"value\":_vm.userDetailsData.vatNumber}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.CreateDate'),\"value\":_vm._f(\"formatDateTime\")(_vm.userDetailsData.createdDate)}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.LastLoginDate'),\"value\":_vm._f(\"formatDateTime\")(_vm.userDetailsData.lastLoginDate)}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.BuyerIdentifier'),\"value\":_vm.userDetailsData.buyerIdentifier}}),(_vm.userDetailsData.address != null)?_c('span',[_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.Address'),\"value\":_vm.userDetailsData.address.city +\n ' ' +\n _vm.$t('Modules.AdminPanel.UserDetails.Street') +\n ' ' +\n _vm.userDetailsData.address.street}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.PostCode'),\"value\":_vm.userDetailsData.address.postCode}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.UserDetails.Country'),\"value\":_vm._f(\"toCountryName\")(_vm.userDetailsData.address.countryCode)}})],1):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { AdminUserDataDto } from '@/services/Api';\r\nimport { translate } from '@/plugins/i18n';\r\n@Component\r\nexport default class AdminEditPage extends Vue {\r\n @Prop() userDetailsData!: AdminUserDataDto;\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserDataAdminData.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserDataAdminData.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserDataAdminData.vue?vue&type=template&id=364ef84d&scoped=true&\"\nimport script from \"./UserDataAdminData.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserDataAdminData.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"364ef84d\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\ninstallComponents(component, {VCard,VCardText,VDivider})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.GamesOwned')))]),_c('v-card-text',[_c('v-container',{staticClass:\"align-content-start\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"headers\":_vm.headersGames,\"items\":_vm.userGameInstancesData,\"items-per-page\":_vm.tableSize},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-header-link',{attrs:{\"title\":row.item.title,\"subTitle\":row.item.id,\"routeTo\":{\n name: _vm.adminUsersRoute.adminGameInstanceDetails,\n params: { gameInstanceId: row.item.id }\n },\"icon\":'mdi-open-in-new'}})],1),_c('td',[_c('div',{staticClass:\"icon\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":_vm.license(row.item.validUntil).color}},[_vm._v(_vm._s(_vm.license(row.item.validUntil).icon))])],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(_vm._s(_vm.license(row.item.validUntil).text))]),(row.item.validUntil && !_vm.expired(row.item.validUntil))?_c('div',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.GameInstance.ListItem.ValidUntilTooltip')),expression:\"$t('Modules.GameInstance.ListItem.ValidUntilTooltip')\"}],staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(row.item.validUntil))+\" \")]):_vm._e()]),_c('td',[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":_vm.status(row.item.isPublic).color}},[_vm._v(_vm._s(_vm.status(row.item.isPublic).icon))]),_vm._v(\" \"+_vm._s(_vm.status(row.item.isPublic).text)+\" \")],1),_c('td',[_c('v-row',[_c('v-col',{staticClass:\"itemGrid\",attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"icon\"},[(!row.item.validUntil)?_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"grey\"}},[_vm._v(\"mdi-lock\")]):_c('div',[_c('v-icon',{staticClass:\"mr-1\",attrs:{\"size\":\"20px\",\"color\":row.item.playableFrom ? 'green' : ''}},[_vm._v(\"mdi-calendar-check\")])],1)],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(row.item.playableFrom))+\" \")]),_c('div',{staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatHours\")(row.item.playableFrom))+\" \")])]),_c('v-col',{staticClass:\"itemGrid\",attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"icon\"},[(!row.item.validUntil)?_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"grey\"}},[_vm._v(\"mdi-lock\")]):_c('div',[_c('v-icon',{staticClass:\"mr-1\",attrs:{\"size\":\"20px\",\"color\":row.item.playableTo ? 'green' : ''}},[_vm._v(\"mdi-calendar-remove\")])],1)],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(row.item.playableTo))+\" \")]),_c('div',{staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatHours\")(row.item.playableTo))+\" \")])])],1)],1),_c('td',[_vm._v(\" \"+_vm._s(row.item.playerInstancesAmmount)+\" \")]),_c('td',[_vm._v(\" \"+_vm._s(row.item.professionsAmmount)+\" \")]),_c('td',[_vm._v(\" \"+_vm._s(row.item.purchasesAmmount)+\" \")]),_c('td',[_c('v-simple-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(row.item.isDeleted),callback:function ($$v) {_vm.$set(row.item, \"isDeleted\", $$v)},expression:\"row.item.isDeleted\"}})],1)])]}}])})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n\r\nimport { GameInstanceAdminDataDto } from '@/services/Api';\r\n\r\nimport { Moment } from 'moment';\r\nimport moment from 'moment';\r\nimport { store } from '@/store/store';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\n\r\n@Component({\r\n components: {}\r\n})\r\nexport default class GameInstanceAdminData extends Vue {\r\n @Prop() userGameInstancesData!: GameInstanceAdminDataDto[] | undefined;\r\n private tableSize = 5;\r\n public adminUsersRoute = AdminUsersRoute;\r\n get headersGames() {\r\n return [\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.GameTitle'),\r\n value: 'title',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.Plan'),\r\n value: 'validUntil',\r\n sort: DataTableSortingHelper.compareByDate\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.Status'),\r\n value: 'isPublic',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.TimePeriod'), value: 'createdDate', sortable: false },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.Players'),\r\n value: 'playerInstancesAmmount',\r\n sort: DataTableSortingHelper.compareByDefault\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.Professions'),\r\n value: 'professionsAmmount',\r\n sort: DataTableSortingHelper.compareByDefault\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.Purchases'),\r\n value: 'purchasesAmmount',\r\n sort: DataTableSortingHelper.compareByDefault\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.IsDeleted'),\r\n value: 'isDeleted',\r\n sort: DataTableSortingHelper.compareByString\r\n }\r\n ];\r\n }\r\n async mounted() {\r\n this.tableSize = store.getTableSize('Admin-user-game-instances');\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables('Admin-user-game-instances', this.tableSize);\r\n }\r\n expired(validUntil: Moment) {\r\n return validUntil.isBefore(moment());\r\n }\r\n\r\n license(validUntil: Moment) {\r\n if (validUntil && validUntil.isAfter(moment())) {\r\n const result = {\r\n text: 'Per Game',\r\n icon: 'mdi-crown',\r\n color: '#D8A243'\r\n };\r\n return result;\r\n }\r\n const result = {\r\n text: 'Basic',\r\n icon: 'mdi-lock',\r\n color: 'grey'\r\n };\r\n return result;\r\n }\r\n status(isPublic: boolean) {\r\n if (isPublic) {\r\n const result = {\r\n text: 'Public',\r\n icon: 'mdi-earth',\r\n color: 'blue'\r\n };\r\n return result;\r\n }\r\n const result = {\r\n text: 'Non-public',\r\n icon: 'mdi-earth-off',\r\n color: 'grey'\r\n };\r\n return result;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceAdminData.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceAdminData.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceAdminData.vue?vue&type=template&id=08284dda&scoped=true&\"\nimport script from \"./GameInstanceAdminData.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceAdminData.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"08284dda\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSimpleCheckbox } from 'vuetify/lib/components/VCheckbox';\ninstallComponents(component, {VCard,VCardText,VCol,VContainer,VDataTable,VIcon,VRow,VSimpleCheckbox})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-title',[_c('v-row',[_c('v-col',[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserDetails.Payments')))])],1),_c('v-col',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.AdminPanel.UserList.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchPayments),callback:function ($$v) {_vm.searchPayments=$$v},expression:\"searchPayments\"}})],1)],1)],1),_c('v-divider'),_c('v-card-text',[_c('v-container',{staticClass:\"align-content-start\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"headers\":_vm.headersPayments,\"items\":_vm.userPaymentData,\"search\":_vm.searchPayments,\"custom-sort\":_vm.customSort,\"items-per-page\":_vm.tableSize},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-header-link',{attrs:{\"title\":row.item.offerTitle,\"subTitle\":row.item.orderNumber,\"routeTo\":{ name: _vm.adminUsersRoute.paymentsDetails, params: { id: row.item.id } },\"icon\":'mdi-open-in-new'}})],1),_c('td',[_c('table-item-header-link',{attrs:{\"title\":row.item.gameInstanceTitle,\"subTitle\":row.item.gameInstanceId,\"routeTo\":{\n name: _vm.adminUsersRoute.adminGameInstanceDetails,\n params: { gameInstanceId: row.item.gameInstanceId }\n },\"icon\":'mdi-open-in-new'}})],1),_c('td',[_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(row.item.createdAt))+\" \")])]),_c('td',[(row.item.priceInfo !== null)?_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(row.item.priceInfo.finalPrice,row.item.priceInfo.currency))+\" \")]):_vm._e()]),_c('td',[_c('table-item-header',{attrs:{\"title\":row.item.isInvoiceCreated,\"useCheckBox\":true}})],1),_c('td',[_c('PaymentStatusAdminData',{attrs:{\"status\":row.item.paymentStatus,\"updatedAt\":row.item.updatedAt}})],1)])]}}])})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"size\":\"20px\",\"color\":_vm.statusIconColor}},[_vm._v(_vm._s(_vm.statusIcon))]),_c('div',{staticClass:\"d-flex flex-column\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.status)+\" \")]),(_vm.updatedAt !== undefined && _vm.updatedAt !== null)?_c('div',{staticClass:\"text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(_vm.updatedAt))+\" \")]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { OrderListItemAdminDataDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class PaymentStatusAdminData extends Vue {\r\n @Prop() public status!: any;\r\n @Prop() public updatedAt!: any;\r\n\r\n public statusIcon = 'mdi-help-circle';\r\n public statusIconColor = 'blue-grey';\r\n public canBeCancelled = false;\r\n\r\n public mounted(): void {\r\n switch (this.status) {\r\n case 'New':\r\n case 'WaitingForConfirmation':\r\n this.canBeCancelled = true;\r\n break;\r\n case 'Pending':\r\n this.statusIcon = 'mdi-clock';\r\n this.statusIconColor = 'blue';\r\n this.canBeCancelled = true;\r\n break;\r\n case 'Completed':\r\n this.statusIcon = 'mdi-check-circle';\r\n this.statusIconColor = 'green';\r\n break;\r\n case 'Canceled':\r\n this.statusIcon = 'mdi-close-circle';\r\n this.statusIconColor = 'orange';\r\n break;\r\n case 'Rejected':\r\n this.statusIcon = 'mdi-thumb-down';\r\n this.statusIconColor = 'red';\r\n break;\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatusAdminData.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatusAdminData.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentStatusAdminData.vue?vue&type=template&id=5e567666&scoped=true&\"\nimport script from \"./PaymentStatusAdminData.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentStatusAdminData.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5e567666\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VIcon})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n\r\nimport PaymentStatusAdminData from '@/modules/admin/users/components/PaymentStatusAdminData.vue';\r\nimport { OrderListItemAdminDataDto } from '@/services/Api';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\nimport { store } from '@/store/store';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\n@Component({\r\n components: {\r\n PaymentStatusAdminData\r\n }\r\n})\r\nexport default class AdminEditPage extends Vue {\r\n @Prop() userPaymentData!: OrderListItemAdminDataDto[] | undefined;\r\n\r\n private expanded: [] = [];\r\n private singleExpand = false;\r\n private searchPayments = '';\r\n private tableSize = 5;\r\n public adminUsersRoute = AdminUsersRoute;\r\n get headersPayments() {\r\n return [\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Order'), value: 'offerTitle', align: 'start' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Product'), value: 'gameInstanceTitle' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.OrderDate'), value: 'createdAt' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Price'), value: 'finalPrice' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.InvoiceCreated'), value: 'isInvoiceCreated' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Status'), value: 'status' }\r\n ];\r\n }\r\n async mounted() {\r\n this.tableSize = store.getTableSize('Admin-user-payments');\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables('Admin-user-payments', this.tableSize);\r\n }\r\n customSort(items: any[], index: string[], isDesc: boolean[], locale: any, sorters: any) {\r\n if (index[0] === 'offerTitle') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(a.orderNumber ?? '', b.orderNumber ?? '', isDesc[0], locale);\r\n });\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(a.offerTitle ?? '', b.offerTitle ?? '', isDesc[0], locale);\r\n });\r\n } else if (index[0] === 'buyeridentifier') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(\r\n a.buyerIdentifier ?? '',\r\n b.buyerIdentifier ?? '',\r\n isDesc[0],\r\n locale\r\n );\r\n });\r\n } else if (index[0] === 'createdAt') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByDate(a.createdAt, b.createdAt, isDesc[0]);\r\n });\r\n } else if (index[0] === 'finalPrice') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n const sortA = a.priceInfo ? a.priceInfo.finalPrice : '';\r\n const sortB = b.priceInfo ? b.priceInfo.finalPrice : '';\r\n return DataTableSortingHelper.compareByDefault(sortA ?? '', sortB ?? '', isDesc[0]);\r\n });\r\n } else if (index[0] === 'status') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByDate(a.updatedAt, b.updatedAt, isDesc[0]);\r\n });\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(a.paymentStatus ?? '', b.paymentStatus ?? '', isDesc[0], locale);\r\n });\r\n } else {\r\n items = DataTableSortingHelper.sortByDefault(items, index, isDesc, locale, sorters);\r\n }\r\n return items;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsAdminData.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsAdminData.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsAdminData.vue?vue&type=template&id=76c8386a&scoped=true&\"\nimport script from \"./PaymentsAdminData.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsAdminData.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"76c8386a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDivider,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserDetails.Professions')))]),_c('v-card-text',[_c('v-container',{staticClass:\"align-content-start\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"headers\":_vm.headersGames,\"items\":_vm.userProfessionData,\"items-per-page\":_vm.tableSize},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-header',{attrs:{\"title\":row.item.displayTitle,\"subTitle\":row.item.title}})],1),_c('td',[(row.item.isGlobal)?_c('div',[_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.Professions.Predefined')),expression:\"$t('Modules.Professions.Predefined')\"}],attrs:{\"color\":\"primary\"}},[_vm._v(\" mdi-earth\")])],1):_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.Hyphen'))+\" \")])]),_c('td',[_vm._v(\" \"+_vm._s(row.item.questionsCount)+\" \")]),_c('td',[_vm._v(\" \"+_vm._s(row.item.playerInstancesCount)+\" \")]),_c('td',[_c('v-simple-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(row.item.isDeleted),callback:function ($$v) {_vm.$set(row.item, \"isDeleted\", $$v)},expression:\"row.item.isDeleted\"}})],1),_c('td',[(row.item.isGlobal)?_c('v-btn',{staticClass:\"mx-auto questions-btn\",attrs:{\"rounded\":\"\",\"small\":\"\",\"elevation\":\"0\",\"to\":{\n name: _vm.professionsRoute.professionDetails,\n params: { id: _vm.id },\n hash: '#questions'\n }}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-eye\")]),_vm._v(\" { $t('Buttons.Show') }} \")],1):_vm._e()],1)])]}}])})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\nimport { ProfessionAdminDataDto } from '@/services/Api';\r\nimport { store } from '@/store/store';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\n@Component({\r\n components: {}\r\n})\r\nexport default class ProfessionsAdminData extends Vue {\r\n @Prop() userProfessionData!: ProfessionAdminDataDto[] | undefined;\r\n\r\n private tableSize = 5;\r\n public professionsRoute = ProfessionsRoute;\r\n get headersGames() {\r\n return [\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Professions'), value: 'displayTitle' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Status'), value: 'isGlobal' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Questions'), value: 'questionsCount' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Players'), value: 'playerInstancesCount' },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.IsDeleted'), value: 'isDeleted' }\r\n ];\r\n }\r\n async mounted() {\r\n this.tableSize = store.getTableSize('Admin-user-professions');\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables('Admin-user-professions', this.tableSize);\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionsAdminData.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionsAdminData.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProfessionsAdminData.vue?vue&type=template&id=26cc452c&scoped=true&\"\nimport script from \"./ProfessionsAdminData.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProfessionsAdminData.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"26cc452c\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSimpleCheckbox } from 'vuetify/lib/components/VCheckbox';\ninstallComponents(component, {VBtn,VCard,VCardText,VCol,VContainer,VDataTable,VIcon,VRow,VSimpleCheckbox})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport AdminUserApiService from '../services/admin-user-api.service';\r\nimport UserDataAdminData from '@/modules/admin/users/components/UserDataAdminData.vue';\r\nimport GameInstanceAdminData from '@/modules/admin/users/components/GameInstanceAdminData.vue';\r\nimport PaymentsAdminData from '@/modules/admin/users/components/PaymentsAdminData.vue';\r\nimport ProfessionsAdminData from '@/modules/admin/users/components/ProfessionsAdminData.vue';\r\n\r\nimport {\r\n AdminUserDataDto,\r\n OrderListItemAdminDataDto,\r\n GameInstanceAdminDataDto,\r\n ProfessionAdminDataDto\r\n} from '@/services/Api';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { AdminUsersRoute } from '../../admin-users-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: {\r\n UserDataAdminData,\r\n GameInstanceAdminData,\r\n PaymentsAdminData,\r\n ProfessionsAdminData\r\n }\r\n})\r\nexport default class AdminEditPage extends Vue {\r\n private adminApiService = new AdminUserApiService();\r\n private loading = true;\r\n private userDetailsData!: AdminUserDataDto | undefined;\r\n private userGameInstancesData!: GameInstanceAdminDataDto[] | undefined;\r\n private userPaymentData!: OrderListItemAdminDataDto[] | undefined;\r\n private userProfessionData!: ProfessionAdminDataDto[] | undefined;\r\n private submitting = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.UserAdmin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.userAdmin }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Details'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n const userInstance: AdminUserDataDto | undefined = await this.adminApiService.getUserData(this.$route.params.id);\r\n if (userInstance) {\r\n this.userDetailsData = userInstance;\r\n }\r\n const gameInstance: GameInstanceAdminDataDto[] | undefined = await this.adminApiService.getGameInstancesByUser(\r\n this.$route.params.id\r\n );\r\n if (userInstance) {\r\n this.userGameInstancesData = gameInstance;\r\n }\r\n const paymentInstance: OrderListItemAdminDataDto[] | undefined = await this.adminApiService.getPaymentOrders(\r\n this.$route.params.id\r\n );\r\n if (userInstance) {\r\n this.userPaymentData = paymentInstance;\r\n }\r\n const proffesionInstance:\r\n | ProfessionAdminDataDto[]\r\n | undefined = await this.adminApiService.getProfessionsOfCurrentUser(this.$route.params.id);\r\n if (userInstance) {\r\n this.userProfessionData = proffesionInstance;\r\n }\r\n\r\n store.setBreadcrumb(this.breadcrumbData);\r\n\r\n this.loading = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminDetailsPage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminDetailsPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminDetailsPage.vue?vue&type=template&id=22eab5d4&scoped=true&\"\nimport script from \"./AdminDetailsPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminDetailsPage.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"22eab5d4\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VContainer,VForm,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-container',{staticClass:\"fill-height\",attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-col',[_c('v-item-group',[_c('v-row',_vm._l((_vm.items),function(item){return _c('v-col',{key:item.routeName,attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_c('v-item',[_c('v-card',{staticClass:\"d-flex align-center justify-center\",attrs:{\"color\":'primary',\"dark\":\"\",\"height\":\"200\",\"width\":\"100%\"},on:{\"click\":function($event){return _vm.goto(item.routeName)}}},[_c('div',{staticClass:\"ma-4 text\"},[_vm._v(\" \"+_vm._s(_vm.$t(item.title))+\" \"),_c('v-icon',{attrs:{\"size\":\"32\"}},[_vm._v(_vm._s(item.icon))])],1)])],1)],1)}),1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export enum KitchenSinkRoute {\r\n kitchenSink = 'Kitchen Sink'\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { MenuItem } from '@/modules/layout/components/MenuItem';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport { KitchenSinkRoute } from '@/modules/kitchen-sink/kitchen-sink-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class AdminDashboard extends Vue {\r\n items: MenuItem[] = [\r\n {\r\n title: 'Modules.AdminPanel.Dashboard.Discounts',\r\n icon: 'mdi-sale',\r\n routeName: AdminUsersRoute.discountsList,\r\n disabled: false\r\n },\r\n {\r\n title: 'Modules.AdminPanel.Dashboard.Users',\r\n icon: 'mdi-account-supervisor',\r\n routeName: AdminUsersRoute.userAdmin,\r\n disabled: false\r\n },\r\n {\r\n title: 'Modules.AdminPanel.Dashboard.Payments',\r\n icon: 'mdi-currency-usd',\r\n routeName: AdminUsersRoute.paymentsList,\r\n disabled: false\r\n },\r\n {\r\n title: 'Modules.AdminPanel.Dashboard.GameInstances',\r\n icon: 'mdi-gamepad-variant-outline',\r\n routeName: AdminUsersRoute.gameInstances,\r\n disabled: false\r\n },\r\n\r\n {\r\n title: 'Modules.AdminPanel.Dashboard.KitchenSink',\r\n icon: 'mdi-book-open',\r\n routeName: KitchenSinkRoute.kitchenSink,\r\n disabled: false\r\n }\r\n ];\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n mounted() {\r\n store.setBreadcrumb(this.breadcrumbData);\r\n }\r\n\r\n goto(route: string) {\r\n this.$router.push({ name: route });\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminDashboard.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminDashboard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminDashboard.vue?vue&type=template&id=62c1b688&scoped=true&\"\nimport script from \"./AdminDashboard.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminDashboard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AdminDashboard.vue?vue&type=style&index=0&id=62c1b688&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"62c1b688\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VItem } from 'vuetify/lib/components/VItemGroup';\nimport { VItemGroup } from 'vuetify/lib/components/VItemGroup';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VCol,VContainer,VIcon,VItem,VItemGroup,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[(_vm.loading)?[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"item-key\":\"name\",\"loading\":\"\",\"loading-text\":\"Loading... Please wait\"}})]:_vm._e(),_c('v-card-text',[_c('v-row',{staticClass:\"mt-3\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"11\",\"offset\":\"1\"}},[_c('div',{staticClass:\"text-right\"},[_c('v-btn',{attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.addDiscount}},[_vm._v(_vm._s(_vm.$t('Buttons.Add')))])],1)])],1)],1),(!_vm.loading)?_c('DiscountListRow',{attrs:{\"data\":_vm.discountList}}):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\r\n DiscountAdminDto,\r\n DiscountAdminUpdateInputModel,\r\n DiscountAdminClient,\r\n OrderListItemAdminDataDto\r\n} from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class DiscountApiService extends ApiServiceBase {\r\n private client = new DiscountAdminClient();\r\n public async GetDiscountList(): Promise {\r\n try {\r\n const discountList = await this.client.getDiscountList();\r\n return discountList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async updateDiscount(inputModel: DiscountAdminUpdateInputModel): Promise {\r\n try {\r\n const discountList = await this.client.updateDiscount(inputModel);\r\n return discountList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getDiscount(inputModel: string): Promise {\r\n try {\r\n const user = await this.client.getDiscount(inputModel);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getPayments(inputModel: string): Promise {\r\n try {\r\n const user = await this.client.getPaymentOrdersList(inputModel);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async addDiscountData(inputModel: DiscountAdminDto): Promise {\r\n try {\r\n const user = await this.client.addDiscount(\r\n '',\r\n inputModel.email,\r\n inputModel.code,\r\n inputModel.discount,\r\n inputModel.isActive\r\n );\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',[_c('v-card-title',[_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.AdminPanel.UserList.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"custom-filter\":_vm.customFilter,\"items-per-page\":_vm.tableSize},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-link',{attrs:{\"value\":row.item.code,\"routeTo\":{ name: _vm.adminUsersRoute.discountDetails, params: { id: row.item.id } }}})],1),_c('td',[_vm._v(\" \"+_vm._s(row.item.email)+\" \")]),_c('td',[_vm._v(_vm._s(row.item.discount)+\" %\")]),_c('td',[_c('v-simple-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(row.item.isActive),callback:function ($$v) {_vm.$set(row.item, \"isActive\", $$v)},expression:\"row.item.isActive\"}})],1),_c('td',[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"dense\":\"\",\"justify\":\"space-around\",\"align\":\"center\"}},[_c('list-menu',[_c('v-list',[_c('v-list-item',{attrs:{\"to\":{\n name: _vm.adminUsersRoute.discountEdit,\n params: {\n id: row.item.id\n }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-pencil\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.Edit')))])],1),_c('v-list-item',{attrs:{\"to\":{\n name: _vm.adminUsersRoute.discountDetails,\n params: {\n id: row.item.id\n }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-text\")])],1),_c('v-list-item-title',[_vm._v(_vm._s('Details'))])],1)],1)],1)],1)],1)],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport DiscountApiService from '../services/admin-discount-api.service';\r\nimport { DiscountAdminDto } from '@/services/Api';\r\nimport DataTableFilterHelper from '@/modules/layout/helpers/data-table-filter.helper';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\nimport { store } from '@/store/store';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\n@Component({})\r\nexport default class DiscountListRow extends Vue {\r\n @Prop() readonly data!: DiscountAdminDto[];\r\n confirmTitle = '';\r\n private apiService = new DiscountApiService();\r\n private search = '';\r\n private tableSize = 10;\r\n public adminUsersRoute = AdminUsersRoute;\r\n dialog = false;\r\n get headers() {\r\n return [\r\n {\r\n text: this.$t('Modules.AdminPanel.Discounts.Code'),\r\n align: 'start',\r\n value: 'code',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.Discounts.email'),\r\n value: 'email',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.Discounts.discount'),\r\n value: 'discount',\r\n sort: DataTableSortingHelper.compareByDefault\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.Discounts.Active'),\r\n value: 'isActive',\r\n sort: DataTableSortingHelper.compareByDefault\r\n },\r\n { value: 'button', sortable: false }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n this.tableSize = store.getTableSize('Admin-discounts');\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables('Admin-discounts', this.tableSize);\r\n }\r\n closeMenus() {\r\n this.confirmTitle = '';\r\n this.dialog = false;\r\n }\r\n customFilter(value: any, search: string | null, item: DiscountAdminDto) {\r\n if (!search) {\r\n return true;\r\n }\r\n\r\n return (\r\n DataTableFilterHelper.filterByString(item.code, search) ||\r\n DataTableFilterHelper.filterByString(item.email, search) ||\r\n DataTableFilterHelper.filterByString(item.discount.toString(), search)\r\n );\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountListRow.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountListRow.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DiscountListRow.vue?vue&type=template&id=5dd2568d&\"\nimport script from \"./DiscountListRow.vue?vue&type=script&lang=ts&\"\nexport * from \"./DiscountListRow.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSimpleCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardTitle,VCol,VDataTable,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VSimpleCheckbox,VSpacer,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { DiscountAdminDto } from '@/services/Api';\r\nimport DiscountApiService from '../services/admin-discount-api.service';\r\nimport DiscountListRow from '../components/DiscountListRow.vue';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: { DiscountListRow }\r\n})\r\nexport default class DiscountList extends Vue {\r\n private apiService = new DiscountApiService();\r\n private discountList!: DiscountAdminDto[];\r\n private loading = true;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Discounts'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n async mounted() {\r\n await this.getDiscounts();\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n async getDiscounts() {\r\n const discountGetList = await this.apiService.GetDiscountList();\r\n if (discountGetList) {\r\n this.discountList = discountGetList;\r\n }\r\n }\r\n addDiscount() {\r\n this.$router.push({ name: AdminUsersRoute.discountAdd });\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DiscountList.vue?vue&type=template&id=4257a84f&scoped=true&\"\nimport script from \"./DiscountList.vue?vue&type=script&lang=ts&\"\nexport * from \"./DiscountList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4257a84f\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCardText,VCol,VContainer,VDataTable,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\"},[(_vm.loading)?[_c('v-text-field',{attrs:{\"color\":\"success\",\"loading\":\"\",\"disabled\":\"\"}})]:_vm._e(),(!_vm.loading)?_c('EditDiscount',{attrs:{\"data\":_vm.discountData}}):_vm._e(),_c('v-card-text',[_c('v-row',{staticClass:\"mt-3\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"11\",\"offset\":\"1\"}},[_c('div',{staticClass:\"text-right\"},[_c('v-btn',{attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.save}},[_vm._v(_vm._s(_vm.$t('Buttons.Save')))]),_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Cancel')))])],1)])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[_c('v-row',[_c('v-col',{staticClass:\"cf-view-title\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.EditPage')))])],1),_c('v-row',[_c('v-col',[_c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.EditPageBasic')))]),_c('v-divider'),_c('v-card-text',[_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.Code')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"label\":_vm.$t('Modules.AdminPanel.Discounts.Code'),\"rules\":[_vm.rules.required],\"required\":\"\"},model:{value:(_vm.data.code),callback:function ($$v) {_vm.$set(_vm.data, \"code\", $$v)},expression:\"data.code\"}})],1)],1),_c('v-row',{staticClass:\"py-4\",attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.discount')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"label\":_vm.$t('Modules.AdminPanel.Discounts.discount'),\"rules\":[_vm.rules.minLength, _vm.rules.maxLength],\"required\":\"\"},model:{value:(_vm.data.discount),callback:function ($$v) {_vm.$set(_vm.data, \"discount\", $$v)},expression:\"data.discount\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.email')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"label\":_vm.$t('Modules.AdminPanel.Discounts.email'),\"rules\":[_vm.rules.required, _vm.rules.emailCheck]},model:{value:(_vm.data.email),callback:function ($$v) {_vm.$set(_vm.data, \"email\", $$v)},expression:\"data.email\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.Active')))]),_c('v-col',{staticClass:\"d-inline-flex\",attrs:{\"cols\":\"1\"}},[_c('v-switch',{model:{value:(_vm.data.isActive),callback:function ($$v) {_vm.$set(_vm.data, \"isActive\", $$v)},expression:\"data.isActive\"}})],1)],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { translate } from '@/plugins/i18n';\r\n\r\nexport default class StringValidators {\r\n public static required(value: string): boolean | string {\r\n return !!value || translate('Modules.Validation.Required');\r\n }\r\n\r\n public static minLength(value: string, length: number): boolean | string {\r\n return value?.length >= length || translate('Modules.Validation.MinLength', { minLength: length });\r\n }\r\n\r\n public static maxLength(value: string, length: number): boolean | string {\r\n return value?.length <= length || translate('Modules.Validation.MaxLength', { maxLength: length });\r\n }\r\n\r\n public static email(value: string): boolean | string {\r\n return (\r\n (!!value && /^\\S+@\\S+$/.test(value)) || translate('Modules.Validation.Email')\r\n );\r\n }\r\n public static zipCodePl(value: string): boolean | string {\r\n return (\r\n (!!value && /^[0-9]{2}-[0-9]{3}$/.test(value)) || translate('Modules.Validation.ZipCodePl')\r\n );\r\n }\r\n public static minNumber(value: number, min: number): boolean | string {\r\n return value >= min || translate('Modules.Validation.MinNumber', { min });\r\n }\r\n public static maxNumber(value: number, max: number): boolean | string {\r\n return value <= max || translate('Modules.Validation.MaxNumber', { max });\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { DiscountAdminUpdateInputModel } from '@/services/Api';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { translate } from '@/plugins/i18n';\r\n@Component\r\nexport default class EditDiscount extends Vue {\r\n @Prop() readonly data!: DiscountAdminUpdateInputModel;\r\n rules = {\r\n required: StringValidators.required,\r\n emailCheck: (model: string) => {\r\n if (model) return /.+@.+/.test(model) || translate('Modules.Validation.Email');\r\n else return false;\r\n },\r\n minLength: (model: number) => StringValidators.minNumber(model, 1),\r\n maxLength: (model: number) => StringValidators.maxNumber(model, 100)\r\n };\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditDiscount.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditDiscount.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditDiscount.vue?vue&type=template&id=083ba04d&\"\nimport script from \"./EditDiscount.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditDiscount.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardText,VCol,VContainer,VDivider,VRow,VSwitch,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport EditDiscount from '../components/EditDiscount.vue';\r\nimport DiscountApiService from '../services/admin-discount-api.service';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { DiscountAdminUpdateInputModel } from '@/services/Api';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: {\r\n EditDiscount\r\n }\r\n})\r\nexport default class DiscountEditPage extends Vue {\r\n private apiService = new DiscountApiService();\r\n private loading = true;\r\n discountData!: DiscountAdminUpdateInputModel;\r\n private submitting = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Discounts'),\r\n exact: true,\r\n to: { name: AdminUsersRoute.discountsList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Edit'),\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n private cancel() {\r\n this.$router.push({ name: AdminUsersRoute.discountsList });\r\n }\r\n async mounted() {\r\n const userInstance = await this.apiService.getDiscount(this.$route.params.id);\r\n if (userInstance) {\r\n this.discountData = new DiscountAdminUpdateInputModel({\r\n id: userInstance.id,\r\n code: userInstance.code,\r\n email: userInstance.email,\r\n discount: userInstance.discount,\r\n isActive: userInstance.isActive\r\n });\r\n } else {\r\n await this.$router.push({ name: AdminUsersRoute.discountsList });\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n async save() {\r\n if (this.submitting) return;\r\n this.submitting = true;\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n this.submitting = false;\r\n return;\r\n }\r\n\r\n const editInstance = await this.apiService.updateDiscount(this.discountData);\r\n\r\n if (editInstance) {\r\n await this.$router.push({ name: AdminUsersRoute.discountsList });\r\n NotificationService.success(translate('Modules.AdminPanel.Discounts.Success.DiscountEdited'));\r\n }\r\n this.submitting = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountEditPage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountEditPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DiscountEditPage.vue?vue&type=template&id=ee17b7f4&scoped=true&\"\nimport script from \"./DiscountEditPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./DiscountEditPage.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ee17b7f4\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCardText,VCol,VForm,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\"},[(_vm.loading)?[_c('v-text-field',{attrs:{\"color\":\"success\",\"loading\":\"\",\"disabled\":\"\"}})]:_vm._e(),(!_vm.loading)?[_c('v-container',[_c('v-row',[_c('v-col',{staticClass:\"cf-view-title\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.Details')))])],1),_c('v-row',[_c('v-col',[_c('DiscountDetails',{attrs:{\"discountDetailsData\":_vm.discountDetailsData,\"numerPayments\":_vm.paymentsDetailsData.length}})],1)],1),_c('v-row',[_c('v-col',[_c('PaymentsDetails',{attrs:{\"userPaymentData\":_vm.paymentsDetailsData}})],1)],1)],1),_c('v-card-text',[_c('v-row',{staticClass:\"mt-3\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"11\",\"offset\":\"1\"}},[_c('div',{staticClass:\"text-right\"},[_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Back')))])],1)])],1)],1)]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.EditPageBasic')))]),_c('v-divider'),_c('v-card-text',[_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.Code')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"readonly\":\"\"},model:{value:(_vm.discountDetailsData.code),callback:function ($$v) {_vm.$set(_vm.discountDetailsData, \"code\", $$v)},expression:\"discountDetailsData.code\"}})],1)],1),_c('v-row',{staticClass:\"py-4\",attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.email')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"readonly\":\"\"},model:{value:(_vm.discountDetailsData.email),callback:function ($$v) {_vm.$set(_vm.discountDetailsData, \"email\", $$v)},expression:\"discountDetailsData.email\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.discount')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"readonly\":\"\"},model:{value:(_vm.discountDetailsData.discount),callback:function ($$v) {_vm.$set(_vm.discountDetailsData, \"discount\", $$v)},expression:\"discountDetailsData.discount\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.Active')))]),_c('v-col',{staticClass:\"d-inline-flex\",attrs:{\"cols\":\"1\"}},[_c('v-switch',{attrs:{\"readonly\":\"\"},model:{value:(_vm.discountDetailsData.IsActive),callback:function ($$v) {_vm.$set(_vm.discountDetailsData, \"IsActive\", $$v)},expression:\"discountDetailsData.IsActive\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.numerPayments')))]),_c('v-col',{staticClass:\"d-inline-flex\",attrs:{\"cols\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.numerPayments)+\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.times')))])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { DiscountAdminDto } from '@/services/Api';\r\n@Component\r\nexport default class DiscountDetails extends Vue {\r\n @Prop() discountDetailsData!: DiscountAdminDto;\r\n @Prop() numerPayments!: number;\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountDetails.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DiscountDetails.vue?vue&type=template&id=2ab858e0&scoped=true&\"\nimport script from \"./DiscountDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./DiscountDetails.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2ab858e0\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardText,VCol,VDivider,VRow,VSwitch,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-title',[_c('v-row',[_c('v-col',[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserDetails.Payments')))])],1),_c('v-col',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.AdminPanel.UserList.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchPayments),callback:function ($$v) {_vm.searchPayments=$$v},expression:\"searchPayments\"}})],1)],1)],1),_c('v-divider'),_c('v-card-text',[_c('v-container',{staticClass:\"align-content-start\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"headers\":_vm.headersPayments,\"items\":_vm.userPaymentData,\"search\":_vm.searchPayments,\"custom-sort\":_vm.customSort,\"items-per-page\":_vm.tableSize},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-header',{attrs:{\"title\":row.item.offerTitle,\"subTitle\":row.item.orderNumber}})],1),_c('td',[_c('table-item-header',{attrs:{\"title\":_vm.$t('Modules.AdminPanel.UserDetails.BuyerIdentifier'),\"subTitle\":row.item.buyerIdentifier}})],1),_c('td',[_c('table-item-header',{attrs:{\"title\":row.item.gameInstanceTitle,\"subTitle\":row.item.gameInstanceId}})],1),_c('td',[_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(row.item.createdAt))+\" \")])]),_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(row.item.priceInfo.finalPrice,row.item.priceInfo.currency))+\" \")]),_c('td',[_c('table-item-header',{attrs:{\"title\":row.item.isInvoiceCreated,\"useCheckBox\":true}})],1),_c('td',[_c('PaymentStatusAdminData',{attrs:{\"status\":row.item.paymentStatus,\"updatedAt\":row.item.updatedAt}})],1)])]}}])})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"size\":\"20px\",\"color\":_vm.statusIconColor}},[_vm._v(_vm._s(_vm.statusIcon))]),_c('div',{staticClass:\"d-flex flex-column\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.status)+\" \")]),(_vm.updatedAt !== undefined && _vm.updatedAt !== null)?_c('div',{staticClass:\"text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(_vm.updatedAt))+\" \")]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class PaymentStatusAdminData extends Vue {\r\n @Prop() public status!: any;\r\n @Prop() public updatedAt!: any;\r\n\r\n public statusIcon = 'mdi-help-circle';\r\n public statusIconColor = 'blue-grey';\r\n public canBeCancelled = false;\r\n\r\n public mounted(): void {\r\n switch (status) {\r\n case 'New':\r\n case 'WaitingForConfirmation':\r\n this.canBeCancelled = true;\r\n break;\r\n case 'Pending':\r\n this.statusIcon = 'mdi-clock';\r\n this.statusIconColor = 'blue';\r\n this.canBeCancelled = true;\r\n break;\r\n case 'Completed':\r\n this.statusIcon = 'mdi-check-circle';\r\n this.statusIconColor = 'green';\r\n break;\r\n case 'Canceled':\r\n this.statusIcon = 'mdi-close-circle';\r\n this.statusIconColor = 'orange';\r\n break;\r\n case 'Rejected':\r\n this.statusIcon = 'mdi-thumb-down';\r\n this.statusIconColor = 'red';\r\n break;\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatusAdminData.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatusAdminData.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentStatusAdminData.vue?vue&type=template&id=df08c922&scoped=true&\"\nimport script from \"./PaymentStatusAdminData.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentStatusAdminData.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"df08c922\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VIcon})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n\r\nimport PaymentStatusAdminData from '@/modules/admin/discounts/components/PaymentStatusAdminData.vue';\r\nimport { OrderListItemAdminDataDto } from '@/services/Api';\r\nimport { store } from '@/store/store';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\n@Component({\r\n components: {\r\n PaymentStatusAdminData\r\n }\r\n})\r\nexport default class PaymentsDetails extends Vue {\r\n @Prop() userPaymentData!: OrderListItemAdminDataDto[];\r\n private searchPayments = '';\r\n private tableSize = 5;\r\n get headersPayments() {\r\n return [\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.Order'),\r\n value: 'orderNumber',\r\n align: 'start',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.BuyerIdentifier'),\r\n value: 'buyerIdentifier',\r\n align: 'start',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.Product'),\r\n value: 'gameInstanceTitle',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.OrderDate'),\r\n value: 'createdAt',\r\n sort: DataTableSortingHelper.compareByDate\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.Price'),\r\n value: 'priceInfo',\r\n sort: DataTableSortingHelper.compareByPriceInfo\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.UserDetails.InvoiceCreated'),\r\n value: 'isInvoiceCreated',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n { text: this.$t('Modules.AdminPanel.UserDetails.Status'), value: 'status' }\r\n ];\r\n }\r\n async mounted() {\r\n this.tableSize = store.getTableSize('Admin-discount-payments');\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables('Admin-discount-payments', this.tableSize);\r\n }\r\n customSort(items: any[], index: string[], isDesc: boolean[], locale: any, sorters: any) {\r\n if (index[0] === 'status') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByDate(a.updatedAt, b.updatedAt, isDesc[0]);\r\n });\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(a.paymentStatus ?? '', b.paymentStatus ?? '', isDesc[0], locale);\r\n });\r\n } else {\r\n items = DataTableSortingHelper.sortByDefault(items, index, isDesc, locale, sorters);\r\n }\r\n return items;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsDetails.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsDetails.vue?vue&type=template&id=4d741550&scoped=true&\"\nimport script from \"./PaymentsDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsDetails.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4d741550\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDivider,VRow,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport DiscountApiService from '../services/admin-discount-api.service';\r\nimport DiscountDetails from '@/modules/admin/discounts/components/DiscountDetails.vue';\r\nimport PaymentsDetails from '@/modules/admin/discounts/components/PaymentsDetails.vue';\r\nimport { DiscountAdminDto, OrderListItemAdminDataDto } from '@/services/Api';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: {\r\n DiscountDetails,\r\n PaymentsDetails\r\n }\r\n})\r\nexport default class DiscountDetailsPage extends Vue {\r\n private adminApiService = new DiscountApiService();\r\n private loading = true;\r\n private discountDetailsData!: DiscountAdminDto;\r\n private paymentsDetailsData!: OrderListItemAdminDataDto[];\r\n private submitting = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Discounts'),\r\n exact: true,\r\n to: { name: AdminUsersRoute.discountsList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Details'),\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n await this.getDiscount();\r\n await this.getPayments();\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n private cancel() {\r\n this.$router.push({ name: AdminUsersRoute.discountsList });\r\n }\r\n async getDiscount() {\r\n const userInstance: DiscountAdminDto | undefined = await this.adminApiService.getDiscount(this.$route.params.id);\r\n if (userInstance) {\r\n this.discountDetailsData = userInstance;\r\n }\r\n }\r\n async getPayments() {\r\n const paymentsInstance: OrderListItemAdminDataDto[] | undefined = await this.adminApiService.getPayments(\r\n this.$route.params.id\r\n );\r\n if (paymentsInstance) {\r\n this.paymentsDetailsData = paymentsInstance;\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountDetailsPage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountDetailsPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DiscountDetailsPage.vue?vue&type=template&id=fc6e4c76&scoped=true&\"\nimport script from \"./DiscountDetailsPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./DiscountDetailsPage.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fc6e4c76\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCardText,VCol,VContainer,VForm,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\"},[(_vm.loading)?[_c('v-text-field',{attrs:{\"color\":\"success\",\"loading\":\"\",\"disabled\":\"\"}})]:_vm._e(),(!_vm.loading)?_c('AddDiscount',{attrs:{\"data\":_vm.discountData}}):_vm._e(),_c('v-card-text',[_c('v-row',{staticClass:\"mt-3\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"11\",\"offset\":\"1\"}},[_c('div',{staticClass:\"text-right\"},[_c('v-btn',{attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.save}},[_vm._v(_vm._s(_vm.$t('Buttons.Save')))]),_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Cancel')))])],1)])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[_c('v-row',[_c('v-col',{staticClass:\"cf-view-title\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.AddPage')))])],1),_c('v-row',[_c('v-col',[_c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.EditPageBasic')))]),_c('v-divider'),_c('v-card-text',[_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.Discounts.Code')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"label\":_vm.$t('Modules.AdminPanel.Discounts.Code'),\"rules\":[_vm.rules.required],\"required\":\"\"},model:{value:(_vm.data.code),callback:function ($$v) {_vm.$set(_vm.data, \"code\", $$v)},expression:\"data.code\"}})],1)],1),_c('v-row',{staticClass:\"py-4\",attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.discount')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"label\":_vm.$t('Modules.AdminPanel.Discounts.discount'),\"rules\":[_vm.rules.minLength, _vm.rules.maxLength],\"required\":\"\"},model:{value:(_vm.data.discount),callback:function ($$v) {_vm.$set(_vm.data, \"discount\", $$v)},expression:\"data.discount\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.email')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"label\":_vm.$t('Modules.AdminPanel.Discounts.email'),\"rules\":[_vm.rules.emailCheck]},model:{value:(_vm.data.email),callback:function ($$v) {_vm.$set(_vm.data, \"email\", $$v)},expression:\"data.email\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Discounts.Active')))]),_c('v-col',{staticClass:\"d-inline-flex\",attrs:{\"cols\":\"1\"}},[_c('v-switch',{model:{value:(_vm.data.isActive),callback:function ($$v) {_vm.$set(_vm.data, \"isActive\", $$v)},expression:\"data.isActive\"}})],1)],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { DiscountAdminDto } from '@/services/Api';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { translate } from '@/plugins/i18n';\r\n@Component\r\nexport default class EditDiscount extends Vue {\r\n @Prop() readonly data!: DiscountAdminDto;\r\n rules = {\r\n required: StringValidators.required,\r\n emailCheck: (model: string) => {\r\n if (model) return /.+@.+/.test(model) || translate('Modules.Validation.Email');\r\n else return false;\r\n },\r\n minLength: (model: number) => StringValidators.minNumber(model, 1),\r\n maxLength: (model: number) => StringValidators.maxNumber(model, 100)\r\n };\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddDiscount.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddDiscount.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddDiscount.vue?vue&type=template&id=5aee5081&\"\nimport script from \"./AddDiscount.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddDiscount.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardText,VCol,VContainer,VDivider,VRow,VSwitch,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport AddDiscount from '../components/AddDiscount.vue';\r\nimport DiscountApiService from '../services/admin-discount-api.service';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { DiscountAdminDto } from '@/services/Api';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: {\r\n AddDiscount\r\n }\r\n})\r\nexport default class DiscountAddPage extends Vue {\r\n private apiService = new DiscountApiService();\r\n private loading = true;\r\n discountData!: DiscountAdminDto;\r\n private submitting = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Discounts'),\r\n exact: true,\r\n to: { name: AdminUsersRoute.discountsList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Create'),\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n private cancel() {\r\n this.$router.push({ name: AdminUsersRoute.discountsList });\r\n }\r\n async mounted() {\r\n this.discountData = new DiscountAdminDto();\r\n this.loading = false;\r\n }\r\n async save() {\r\n if (this.submitting) return;\r\n this.submitting = true;\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n this.submitting = false;\r\n return;\r\n }\r\n const addInstance = await this.apiService.addDiscountData(this.discountData);\r\n\r\n if (addInstance) {\r\n await this.$router.push({ name: AdminUsersRoute.discountsList });\r\n NotificationService.success(translate('Modules.AdminPanel.Discounts.Success.DiscountAdded'));\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.submitting = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountAddPage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DiscountAddPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DiscountAddPage.vue?vue&type=template&id=ae562348&scoped=true&\"\nimport script from \"./DiscountAddPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./DiscountAddPage.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ae562348\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCardText,VCol,VForm,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[(_vm.loading)?[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"item-key\":\"name\",\"loading\":\"\",\"loading-text\":\"Loading... Please wait\"}})]:_vm._e(),(!_vm.loading)?_c('PaymentsListRow',{attrs:{\"data\":_vm.paymentsList}}):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\r\n PaymentsAdminClient,\r\n PaymentsAdminDto,\r\n PaymentsClient\r\n } from '@/services/Api';\r\n import ApiServiceBase from '@/services/api-service.base';\r\n \r\n export default class PaymentsApiService extends ApiServiceBase {\r\n private client = new PaymentsAdminClient();\r\n private clientInvoice = new PaymentsClient();\r\n public async GetPaymentsList(): Promise {\r\n try {\r\n const discountList = await this.client.getPaymentsList();\r\n return discountList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n \r\n public async getPayment(inputModel: string): Promise {\r\n try {\r\n const user = await this.client.getPayment(inputModel);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInvoice(id: string) {\r\n try {\r\n const response = await this.clientInvoice.getInvoice(id);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n }\r\n ","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-title',[_c('v-row',[_c('v-col',[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserDetails.Payments')))])],1),_c('v-col',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.AdminPanel.UserList.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchPayments),callback:function ($$v) {_vm.searchPayments=$$v},expression:\"searchPayments\"}})],1)],1)],1),_c('v-divider'),_c('v-card-text',[_c('v-container',{staticClass:\"align-content-start\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"headers\":_vm.headersPayments,\"items\":_vm.data,\"search\":_vm.searchPayments,\"custom-filter\":_vm.customFilter,\"custom-sort\":_vm.customSort,\"items-per-page\":_vm.tableSize},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-header-link',{attrs:{\"title\":row.item.offerTitle + ' (' + row.item.gameInstanceTitle + ')',\"subTitle\":row.item.orderNumber,\"routeTo\":{ name: _vm.adminUsersRoute.paymentsDetails, params: { id: row.item.id } },\"icon\":'mdi-open-in-new'}})],1),_c('td',[_c('div',[_vm._v(\" \"+_vm._s(row.item.buyerIdentifier)+\" \")])]),_c('td',[_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(row.item.createdAt))+\" \")])]),_c('td',[(row.item.priceInfo !== null)?_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(row.item.priceInfo.finalPrice,row.item.priceInfo.currency))+\" \")]):_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.AdminPanel.Payments.NotEnd'))+\" \")])]),_c('td',[_c('PaymentStatus',{attrs:{\"order\":row.item}})],1),_c('td',[_c('v-col',{staticClass:\"d-none d-xl-flex\"},[_c('v-btn',{attrs:{\"rounded\":\"\",\"small\":\"\",\"elevation\":\"0\",\"disabled\":row.item.isInvoiceCreated === false || row.item.priceInfo.discountValue === 100},on:{\"click\":function($event){return _vm.downloadInvoice(row.item.id)}}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-download\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.Invoice'))+\" \")],1)],1)],1),_c('td',[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"dense\":\"\",\"justify\":\"space-around\",\"align\":\"center\"}},[_c('list-menu',[_c('v-list',[_c('v-list-item',{attrs:{\"to\":{\n name: _vm.adminUsersRoute.paymentsDetails,\n params: {\n id: row.item.id\n }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-text\")])],1),_c('v-list-item-title',[_vm._v(_vm._s('Details'))])],1)],1)],1)],1)],1)],1)])]}}])})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"size\":\"20px\",\"color\":_vm.statusIconColor}},[_vm._v(_vm._s(_vm.statusIcon))]),_c('div',{staticClass:\"d-flex flex-column\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.$t((\"PaymentsStatus.\" + (_vm.order.paymentStatus))))+\" \"),(_vm.canBeCancelled)?_c('v-btn',{staticClass:\"cancel-btn\",attrs:{\"icon\":\"\",\"small\":\"\",\"loading\":_vm.loading,\"disabled\":_vm.disabled},on:{\"click\":_vm.cancelOrder}},[_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.PaymentsHistory.CancelOrderTooltip')),expression:\"$t('Modules.PaymentsHistory.CancelOrderTooltip')\"}],attrs:{\"small\":\"\",\"color\":\"red\"}},[_vm._v(\"mdi-cancel\")])],1):_vm._e()],1),(_vm.order.updatedAt !== undefined && _vm.order.updatedAt !== null)?_c('div',{staticClass:\"text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(_vm.order.updatedAt))+\" \")]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { PaymentsAdminDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class PaymentStatus extends Vue {\r\n @Prop() public order!: PaymentsAdminDto;\r\n @Prop() public loading?: boolean;\r\n @Prop() public disabled?: boolean;\r\n\r\n public statusIcon = 'mdi-help-circle';\r\n public statusIconColor = 'blue-grey';\r\n public canBeCancelled = false;\r\n\r\n public mounted(): void {\r\n switch (this.order.paymentStatus) {\r\n case 'New':\r\n case 'WaitingForConfirmation':\r\n this.canBeCancelled = true;\r\n break;\r\n case 'Pending':\r\n this.statusIcon = 'mdi-clock';\r\n this.statusIconColor = 'blue';\r\n this.canBeCancelled = true;\r\n break;\r\n case 'Completed':\r\n this.statusIcon = 'mdi-check-circle';\r\n this.statusIconColor = 'green';\r\n break;\r\n case 'Canceled':\r\n this.statusIcon = 'mdi-close-circle';\r\n this.statusIconColor = 'orange';\r\n break;\r\n case 'Rejected':\r\n this.statusIcon = 'mdi-thumb-down';\r\n this.statusIconColor = 'red';\r\n break;\r\n }\r\n }\r\n\r\n public cancelOrder() {\r\n return this.$emit('cancelOrder');\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatus.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatus.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentStatus.vue?vue&type=template&id=2760a69e&scoped=true&\"\nimport script from \"./PaymentStatus.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentStatus.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PaymentStatus.vue?vue&type=style&index=0&id=2760a69e&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2760a69e\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VBtn,VIcon})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport PaymentStatus from '@/modules/admin/payments/components/PaymentStatus.vue';\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport PaymentsApiService from '../services/admin-payments-api.service';\r\nimport { PaymentsAdminDto } from '@/services/Api';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\nimport { store } from '@/store/store';\r\nimport DataTableFilterHelper from '@/modules/layout/helpers/data-table-filter.helper';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\n\r\n@Component({\r\n components: {\r\n PaymentStatus\r\n }\r\n})\r\nexport default class PaymentsListRow extends Vue {\r\n @Prop() readonly data!: PaymentsAdminDto[];\r\n confirmTitle = '';\r\n private apiService = new PaymentsApiService();\r\n private searchPayments = '';\r\n private tableSize = 10;\r\n public adminUsersRoute = AdminUsersRoute;\r\n get headersPayments() {\r\n return [\r\n {\r\n text: this.$t('Modules.PaymentsHistory.Order'),\r\n value: 'gameInstanceTitle',\r\n align: 'start',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.Payments.Buyeridentifier'),\r\n value: 'buyerIdentifier',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.PaymentsHistory.Details.OrderDate'),\r\n value: 'createdAt',\r\n sort: DataTableSortingHelper.compareByDate\r\n },\r\n {\r\n text: this.$t('Modules.PaymentsHistory.Price'),\r\n value: 'priceInfo',\r\n sort: DataTableSortingHelper.compareByPriceInfo\r\n },\r\n {\r\n text: this.$t('Modules.PaymentsHistory.Status'),\r\n value: 'status'\r\n },\r\n { value: 'button', sortable: false },\r\n { value: 'button', sortable: false }\r\n ];\r\n }\r\n async mounted() {\r\n this.tableSize = store.getTableSize('Admin-payments');\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables('Admin-payments', this.tableSize);\r\n }\r\n async downloadInvoice(order: string) {\r\n let response = null;\r\n response = await this.apiService.getInvoice(order);\r\n\r\n this.downloadFile(response?.value as string, response?.fileName as string);\r\n }\r\n downloadFile(value?: string, fileName?: string) {\r\n const linkSource = 'data:application/pdf;base64,' + value;\r\n const downloadLink = document.createElement('a');\r\n downloadLink.type = 'application/pdf';\r\n downloadLink.href = linkSource;\r\n downloadLink.download = fileName ?? 'default.pdf';\r\n\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n document.body.removeChild(downloadLink);\r\n }\r\n\r\n customSort(items: any[], index: string[], isDesc: boolean[], locale: any, sorters: any) {\r\n if (index[0] === 'status') {\r\n items.sort((a: PaymentsAdminDto, b: PaymentsAdminDto) => {\r\n return DataTableSortingHelper.compareByDate(a.updatedAt, b.updatedAt, isDesc[0]);\r\n });\r\n items.sort((a: PaymentsAdminDto, b: PaymentsAdminDto) => {\r\n return DataTableSortingHelper.compareByString(a.paymentStatus ?? '', b.paymentStatus ?? '', isDesc[0], locale);\r\n });\r\n } else {\r\n items = DataTableSortingHelper.sortByDefault(items, index, isDesc, locale, sorters);\r\n }\r\n return items;\r\n }\r\n\r\n customFilter(value: any, search: string | null, item: PaymentsAdminDto) {\r\n if (!search) {\r\n return true;\r\n }\r\n\r\n return (\r\n DataTableFilterHelper.filterByString(item.gameInstanceTitle + '(' + item.offerTitle + ')', search) ||\r\n DataTableFilterHelper.filterByString(item.orderNumber ?? '', search) ||\r\n DataTableFilterHelper.filterByString(item.buyerIdentifier ?? '', search) ||\r\n DataTableFilterHelper.filterByString(item.paymentStatus ?? '', search) ||\r\n DataTableFilterHelper.filterByPriceInfo(item.priceInfo, search) ||\r\n DataTableFilterHelper.filterByDate(item.createdAt, search)\r\n );\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsListRow.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsListRow.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsListRow.vue?vue&type=template&id=e9d60f1a&\"\nimport script from \"./PaymentsListRow.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsListRow.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDivider,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VTextField})\n","\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { AdminUserUpdateInputModel, PaymentsAdminDto } from '@/services/Api';\r\nimport PaymentsApiService from '../services/admin-payments-api.service';\r\nimport PaymentsListRow from '../components/PaymentsListRow.vue';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { AdminUsersRoute } from '../../admin-users-router.enum';\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: { PaymentsListRow }\r\n})\r\nexport default class PaymentsList extends Vue {\r\n private apiService = new PaymentsApiService();\r\n private paymentsList!: PaymentsAdminDto[];\r\n private loading = true;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.PaymentsAdmin'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n await this.getPayments();\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n async getPayments() {\r\n const paymentsGetList = await this.apiService.GetPaymentsList();\r\n if (paymentsGetList) {\r\n this.paymentsList = paymentsGetList;\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsList.vue?vue&type=template&id=a990e916&scoped=true&\"\nimport script from \"./PaymentsList.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a990e916\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\ninstallComponents(component, {VContainer,VDataTable})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[(_vm.loading)?[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"item-key\":\"name\",\"loading\":\"\",\"loading-text\":\"Loading... Please wait\"}})]:_vm._e(),(!_vm.loading)?_c('PaymentsDetails',{attrs:{\"order\":_vm.paymentDetails}}):_vm._e(),_c('v-card-text',[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"11\",\"offset\":\"1\"}},[_c('div',{staticClass:\"text-right\"},[_c('v-btn',{staticClass:\"py-n8 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Back')))])],1)])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(!_vm.loading && _vm.order)?[_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.PaymentsHistory.Details.DetailsHeader')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.PaymentsHistory.Details.DetailsSubHeader')}},[_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.OrderPlan'),\"value\":_vm.order.offerTitle}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.OrderService'),\"value\":_vm.getOrderTitle}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.OrderNumber'),\"value\":_vm.order.orderNumber}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.OrderDate'),\"value\":_vm._f(\"formatDateTime\")(_vm.order.createdAt)}}),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"4\",\"lg\":\"2\"}},[_c('v-subheader',[_vm._v(_vm._s(_vm.$t('Modules.PaymentsHistory.Status')))])],1),_c('v-col',{staticClass:\"d-flex align-center\",attrs:{\"cols\":\"8\",\"lg\":\"3\"}},[_c('PaymentStatus',{attrs:{\"order\":_vm.order},on:{\"cancelOrder\":function($event){return _vm.cancelOrder()}}})],1)],1),(_vm.order.priceInfo !== null)?_c('div',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"4\",\"lg\":\"2\"}},[_c('v-subheader',[_vm._v(_vm._s(_vm.$t('Modules.PaymentsHistory.Invoice')))])],1),_c('v-col',{staticClass:\"d-flex align-center\",attrs:{\"cols\":\"8\",\"lg\":\"3\"}},[_c('v-btn',{attrs:{\"rounded\":\"\",\"small\":\"\",\"block\":\"\",\"elevation\":\"0\",\"disabled\":_vm.order.isInvoiceCreated === false || _vm.order.priceInfo.discountValue === 100},on:{\"click\":function($event){return _vm.downloadInvoice(_vm.order.id)}}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-download\")]),_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Download'))+\" \")],1)],1)],1),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.NetPrice'),\"value\":_vm.order.priceInfo.netPrice,\"currency\":_vm.order.priceInfo.currency}}),(_vm.order.priceInfo.discountValue >= 1)?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.Discount'),\"value\":_vm.discountValueFormatted}}):_vm._e(),(_vm.order.priceInfo.discountValue >= 1)?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.NetPriceAfterDiscount'),\"value\":_vm.order.priceInfo.netPriceAfterDiscount,\"currency\":_vm.order.priceInfo.currency}}):_vm._e(),_c('v-row',{staticClass:\"my-2\",attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"text-h6 font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Order.Billing.TotalPriceLabel'))+\" \")]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('span',{staticClass:\"mr-1 text-h6 blue--text\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.order.priceInfo.finalPrice,_vm.order.priceInfo.currency))+\" \")]),(_vm.order.address.countryCode === 'PL')?_c('span',{staticClass:\"text--disabled\"},[_vm._v(_vm._s(_vm.finalPriceWithVatInfo))]):_vm._e()])],1)],1):_vm._e()],1)],1),_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.PaymentsHistory.Details.BuyerHeader')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.PaymentsHistory.Details.AddressSubHeader')}},[_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.Payments.Email'),\"value\":_vm.order.email,\"routeTo\":{ name: _vm.adminUsersRoute.adminDetails, params: { id: _vm.order.userId } }}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.Payments.Buyeridentifier'),\"value\":_vm.order.buyerIdentifier}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressCountry'),\"value\":_vm._f(\"toCountryName\")(_vm.order.address.countryCode)}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressCompany'),\"value\":_vm.order.companyName}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressZip'),\"value\":_vm.order.address.postCode}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressCity'),\"value\":_vm.order.address.city}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressStreet'),\"value\":_vm.order.address.street}}),(_vm.order.vatNumber)?_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressVatNumber'),\"value\":_vm.order.vatNumber}}):_vm._e()],1)],1)]:(_vm.loading)?[_c('skeleton-loader-details')]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',[_c('v-col',{attrs:{\"cols\":\"4\",\"lg\":\"2\"}},[_c('v-subheader',[_vm._v(_vm._s(_vm.label))])],1),_c('v-col',{attrs:{\"cols\":\"8\",\"lg\":\"3\"}},[_c('v-text-field',{attrs:{\"value\":_vm.value,\"readonly\":\"\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class PaymentDetail extends Vue {\r\n @Prop() readonly label!: string;\r\n @Prop() readonly value!: string;\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentDetail.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentDetail.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentDetail.vue?vue&type=template&id=75be33e0&scoped=true&\"\nimport script from \"./PaymentDetail.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentDetail.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"75be33e0\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSubheader } from 'vuetify/lib/components/VSubheader';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VRow,VSubheader,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport PaymentsApiService from '../services/admin-payments-api.service';\r\nimport { PaymentsAdminDto } from '@/services/Api';\r\nimport PaymentDetail from '../components/PaymentDetail.vue';\r\nimport PaymentStatus from '../components/PaymentStatus.vue';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\n@Component({\r\n components: {\r\n PaymentDetail,\r\n PaymentStatus\r\n }\r\n})\r\nexport default class PaymentsDetails extends Vue {\r\n @Prop() readonly order!: PaymentsAdminDto;\r\n confirmTitle = '';\r\n private apiService = new PaymentsApiService();\r\n loading = true;\r\n private searchPayments = '';\r\n public adminUsersRoute = AdminUsersRoute;\r\n mounted() {\r\n this.loading = false;\r\n }\r\n async downloadInvoice(order: string) {\r\n let response = null;\r\n response = await this.apiService.getInvoice(order);\r\n\r\n this.downloadFile(response?.value as string, response?.fileName as string);\r\n }\r\n downloadFile(value?: string, fileName?: string) {\r\n const linkSource = 'data:application/pdf;base64,' + value;\r\n const downloadLink = document.createElement('a');\r\n downloadLink.type = 'application/pdf';\r\n downloadLink.href = linkSource;\r\n downloadLink.download = fileName ?? 'default.pdf';\r\n\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n document.body.removeChild(downloadLink);\r\n }\r\n get getOrderTitle() {\r\n return this.$i18n.locale === 'pl' ? this.order?.titlePl : this.order?.titleEng;\r\n }\r\n get finalPriceWithVatInfo() {\r\n const newPrice = this.$options.filters?.toCurrency(this.order?.priceInfo?.netPriceAfterDiscount, 'PLN');\r\n return `(${newPrice} + 23% VAT)`;\r\n }\r\n get discountValueFormatted() {\r\n return `${this.order?.priceInfo?.discountValue} %`;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsDetails.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsDetails.vue?vue&type=template&id=4325b1b0&\"\nimport script from \"./PaymentsDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsDetails.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSubheader } from 'vuetify/lib/components/VSubheader';\ninstallComponents(component, {VBtn,VCol,VContainer,VIcon,VRow,VSubheader})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { PaymentsAdminDto } from '@/services/Api';\r\nimport PaymentsApiService from '../services/admin-payments-api.service';\r\nimport PaymentsDetails from '../components/PaymentsDetails.vue';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: { PaymentsDetails }\r\n})\r\nexport default class PaymentsDetailsPage extends Vue {\r\n private apiService = new PaymentsApiService();\r\n private paymentDetails!: PaymentsAdminDto;\r\n private loading = true;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.PaymentsAdmin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.paymentsList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Details'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n async mounted() {\r\n await this.getPayment();\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n async getPayment() {\r\n const paymentDetails = await this.apiService.getPayment(this.$route.params.id);\r\n if (paymentDetails) {\r\n this.paymentDetails = paymentDetails;\r\n }\r\n }\r\n private cancel() {\r\n this.$router.push({ name: AdminUsersRoute.paymentsList });\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsDetailsPage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsDetailsPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsDetailsPage.vue?vue&type=template&id=101684e8&scoped=true&\"\nimport script from \"./PaymentsDetailsPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsDetailsPage.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"101684e8\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCardText,VCol,VContainer,VDataTable,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',[(_vm.loading)?[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"item-key\":\"name\",\"loading\":\"\",\"loading-text\":\"Loading... Please wait\"}})]:_vm._e(),(!_vm.loading)?_c('GameInstancesListRow',{attrs:{\"data\":_vm.gameInstancesList}}):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { GameInstanceAdminClient, AdminGameInstanceListItemDto, AdminGameInstanceDto, OrderListItemAdminDataDto } from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class AdminGameInstancesApiService extends ApiServiceBase {\r\n private client = new GameInstanceAdminClient();\r\n public async getGameInstancesList(): Promise {\r\n try {\r\n const gameInstancesList = await this.client.getGameInstancesList();\r\n return gameInstancesList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getGameInstance(inputModel: string): Promise {\r\n try {\r\n const gameInstance = await this.client.getGameInstance(inputModel);\r\n return gameInstance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n\r\n }\r\n public async getPaymentOrdersForGameInstance(inputModel: string): Promise {\r\n try {\r\n const paymentInstance = await this.client.getPaymentOrdersForGameInstance(inputModel);\r\n return paymentInstance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',[_c('custom-data-table',{attrs:{\"id\":'Admin-game-instances-payments',\"headers\":_vm.headers,\"items\":_vm.data,\"customSearch\":_vm.customFilter,\"columnFilters\":_vm.filters},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-header-link',{attrs:{\"title\":row.item.instanceTitle + ' (' + row.item.gameTitle + ')',\"subTitle\":row.item.id,\"routeTo\":{ name: _vm.adminUsersRoute.adminGameInstanceDetails, params: { gameInstanceId: row.item.id } },\"icon\":'mdi-open-in-new'}})],1),_c('td',[_c('div',{staticClass:\"icon\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":_vm.license(row.item.validUntil).color}},[_vm._v(_vm._s(_vm.license(row.item.validUntil).icon))])],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(_vm._s(_vm.license(row.item.validUntil).text))]),(row.item.validUntil && !_vm.expired(row.item.validUntil))?_c('div',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.GameInstance.ListItem.ValidUntilTooltip')),expression:\"$t('Modules.GameInstance.ListItem.ValidUntilTooltip')\"}],staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(row.item.validUntil))+\" \")]):_vm._e()]),_c('td',[_c('v-row',[_c('v-col',{staticClass:\"itemGrid\",attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"icon\"},[(!row.item.validUntil)?_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"grey\"}},[_vm._v(\"mdi-lock\")]):_c('div',[_c('v-icon',{staticClass:\"mr-1\",attrs:{\"size\":\"20px\",\"color\":row.item.playableFrom ? 'green' : ''}},[_vm._v(\"mdi-calendar-check\")])],1)],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(row.item.playableFrom))+\" \")]),_c('div',{staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatHours\")(row.item.playableFrom))+\" \")])]),_c('v-col',{staticClass:\"itemGrid\",attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"icon\"},[(!row.item.validUntil)?_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"grey\"}},[_vm._v(\"mdi-lock\")]):_c('div',[_c('v-icon',{staticClass:\"mr-1\",attrs:{\"size\":\"20px\",\"color\":row.item.playableTo ? 'green' : ''}},[_vm._v(\"mdi-calendar-remove\")])],1)],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(row.item.playableTo))+\" \")]),_c('div',{staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatHours\")(row.item.playableTo))+\" \")])])],1)],1),_c('td',[_c('table-item-link',{attrs:{\"value\":row.item.owner,\"routeTo\":{ name: _vm.adminUsersRoute.adminDetails, params: { id: row.item.ownerId } }}})],1),_c('td',[_vm._v(_vm._s(_vm._f(\"formatDateTime\")(row.item.createdDate)))]),_c('td',[_c('v-simple-checkbox',{attrs:{\"disabled\":\"\"},model:{value:(row.item.isDeleted),callback:function ($$v) {_vm.$set(row.item, \"isDeleted\", $$v)},expression:\"row.item.isDeleted\"}})],1),_c('td',[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"dense\":\"\",\"justify\":\"space-around\",\"align\":\"center\"}},[_c('list-menu',[_c('v-list',[_c('v-list-item',{attrs:{\"to\":{\n name: _vm.adminUsersRoute.adminGameInstanceDetails,\n params: {\n gameInstanceId: row.item.id\n }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-text\")])],1),_c('v-list-item-title',[_vm._v(_vm._s('Details'))])],1)],1)],1)],1)],1)],1)])]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-form',{ref:\"form\"},[(_vm.loading)?[_c('v-text-field',{attrs:{\"color\":\"success\",\"loading\":\"\",\"disabled\":\"\"}})]:_vm._e(),(!_vm.loading)?[_c('v-container',[_c('v-row',[_c('v-col',{staticClass:\"cf-view-title\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.UserList.Details')))])],1),_c('v-row',[_c('v-col',[_c('GameInstanceDetails',{attrs:{\"gameInstanceDetailsData\":_vm.gameInstanceData}})],1)],1),_c('v-row',[_c('v-col',[_c('GameInstancePaymentData',{attrs:{\"gameInstancePaymentData\":_vm.gameInstancePaymentData}})],1)],1)],1)]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.GameInstanceDetails.GameInstanceDetailsSubheader')))]),_c('v-divider'),_c('v-card-text',[_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Create.GameTitleInputLabel'),\"value\":_vm.gameInstanceDetailsData.title}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Create.Game'),\"value\":_vm.gameInstanceDetailsData.gameTitle}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.AdminPanel.GameInstanceDetails.Owner'),\"value\":_vm.gameInstanceDetailsData.owner,\"routeTo\":{ name: _vm.adminUsersRoute.adminDetails, params: { id: _vm.gameInstanceDetailsData.ownerId } }}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Create.PlayableFromLabel'),\"value\":_vm._f(\"formatDateTime\")(_vm.gameInstanceDetailsData.playableFrom)}}),_c('detail-row',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Create.PlayableToLabel'),\"value\":_vm._f(\"formatDateTime\")(_vm.gameInstanceDetailsData.playableTo)}}),_c('detail-row',{attrs:{\"labelIcon\":'mdi-earth',\"label\":_vm.$t('Modules.AdminPanel.GameInstanceDetails.Public'),\"value\":_vm.gameInstanceDetailsData.isPublic,\"useCheckBox\":true}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { AdminGameInstanceDto } from '@/services/Api';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\n\r\n@Component\r\nexport default class GameInstanceDetails extends Vue {\r\n @Prop() gameInstanceDetailsData!: AdminGameInstanceDto;\r\n\r\n public adminUsersRoute = AdminUsersRoute;\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceDetails.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceDetails.vue?vue&type=template&id=4c11487a&scoped=true&\"\nimport script from \"./GameInstanceDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceDetails.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4c11487a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\ninstallComponents(component, {VCard,VCardText,VDivider})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"mx-auto\",attrs:{\"height\":\"auto\",\"color\":\"white\",\"elevation\":\"2\"}},[_c('v-card-title',[_c('v-row',[_c('v-col',[_c('v-card-text',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.AdminPanel.GameInstanceDetails.Payments')))])],1),_c('v-col',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.AdminPanel.GameInstanceDetails.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchPayments),callback:function ($$v) {_vm.searchPayments=$$v},expression:\"searchPayments\"}})],1)],1)],1),_c('v-divider'),_c('v-card-text',[_c('v-container',{staticClass:\"align-content-start\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"headers\":_vm.headersPayments,\"items\":_vm.gameInstancePaymentData,\"search\":_vm.searchPayments,\"custom-sort\":_vm.customSort,\"items-per-page\":_vm.tableSize},on:{\"update:itemsPerPage\":function($event){_vm.tableSize=$event},\"update:items-per-page\":function($event){_vm.tableSize=$event}},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_c('table-item-header-link',{attrs:{\"title\":row.item.offerTitle,\"subTitle\":row.item.orderNumber,\"routeTo\":{ name: _vm.adminUsersRoute.paymentsDetails, params: { id: row.item.id } },\"icon\":'mdi-open-in-new'}})],1),_c('td',[_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(row.item.createdAt))+\" \")])]),_c('td',[(row.item.priceInfo !== null)?_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(row.item.priceInfo.finalPrice,row.item.priceInfo.currency))+\" \")]):_vm._e()]),_c('td',[_c('table-item-header',{attrs:{\"title\":row.item.isInvoiceCreated,\"useCheckBox\":true}})],1),_c('td',[_c('PaymentStatusAdminData',{attrs:{\"status\":row.item.paymentStatus,\"updatedAt\":row.item.updatedAt}})],1)])]}}])})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator';\r\n\r\nimport PaymentStatusAdminData from '@/modules/admin/users/components/PaymentStatusAdminData.vue';\r\nimport { OrderListItemAdminDataDto } from '@/services/Api';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\nimport { store } from '@/store/store';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\n@Component({\r\n components: {\r\n PaymentStatusAdminData\r\n }\r\n})\r\nexport default class GameInstancePaymentData extends Vue {\r\n @Prop() gameInstancePaymentData!: OrderListItemAdminDataDto[] | undefined;\r\n\r\n private expanded: [] = [];\r\n private singleExpand = false;\r\n private searchPayments = '';\r\n private tableSize = 10;\r\n public adminUsersRoute = AdminUsersRoute;\r\n get headersPayments() {\r\n return [\r\n { text: this.$t('Modules.AdminPanel.GameInstanceDetails.Order'), value: 'offerTitle', align: 'start' },\r\n { text: this.$t('Modules.AdminPanel.GameInstanceDetails.OrderDate'), value: 'createdAt' },\r\n { text: this.$t('Modules.AdminPanel.GameInstanceDetails.Price'), value: 'finalPrice' },\r\n { text: this.$t('Modules.AdminPanel.GameInstanceDetails.InvoiceCreated'), value: 'isInvoiceCreated' },\r\n { text: this.$t('Modules.AdminPanel.GameInstanceDetails.Status'), value: 'status' }\r\n ];\r\n }\r\n async mounted() {\r\n this.tableSize = store.getTableSize('Admin-game-instances');\r\n }\r\n @Watch('tableSize')\r\n onPropertyChanged(value: number) {\r\n this.tableSize = value;\r\n store.setTables('Admin-game-instances', this.tableSize);\r\n }\r\n customSort(items: any[], index: string[], isDesc: boolean[], locale: any, sorters: any) {\r\n if (index[0] === 'offerTitle') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(a.orderNumber ?? '', b.orderNumber ?? '', isDesc[0], locale);\r\n });\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(a.offerTitle ?? '', b.offerTitle ?? '', isDesc[0], locale);\r\n });\r\n } else if (index[0] === 'buyeridentifier') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(\r\n a.buyerIdentifier ?? '',\r\n b.buyerIdentifier ?? '',\r\n isDesc[0],\r\n locale\r\n );\r\n });\r\n } else if (index[0] === 'createdAt') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n console.log('sortPrice');\r\n return DataTableSortingHelper.compareByDate(a.createdAt, b.createdAt, isDesc[0]);\r\n });\r\n } else if (index[0] === 'finalPrice') {\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n console.log('sortPrice');\r\n const sortA = a.priceInfo ? a.priceInfo.finalPrice : '';\r\n const sortB = b.priceInfo ? b.priceInfo.finalPrice : '';\r\n return DataTableSortingHelper.compareByDefault(sortA ?? '', sortB ?? '', isDesc[0]);\r\n });\r\n } else if (index[0] === 'status') {\r\n console.log('sortStatus');\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByDate(a.updatedAt, b.updatedAt, isDesc[0]);\r\n });\r\n items.sort((a: OrderListItemAdminDataDto, b: OrderListItemAdminDataDto) => {\r\n return DataTableSortingHelper.compareByString(a.paymentStatus ?? '', b.paymentStatus ?? '', isDesc[0], locale);\r\n });\r\n } else {\r\n items = DataTableSortingHelper.sortByDefault(items, index, isDesc, locale, sorters);\r\n }\r\n return items;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstancePaymentData.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstancePaymentData.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstancePaymentData.vue?vue&type=template&id=26e4fdca&scoped=true&\"\nimport script from \"./GameInstancePaymentData.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstancePaymentData.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"26e4fdca\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCard,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDivider,VRow,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport AdminGameInstancesApiService from '../services/admin-game-instances-api.service';\r\nimport GameInstanceDetails from '@/modules/admin/game-instances/components/GameInstanceDetails.vue';\r\nimport GameInstancePaymentData from '@/modules/admin/game-instances/components/GameInstancePaymentData.vue';\r\n\r\nimport { AdminGameInstanceDto, OrderListItemAdminDataDto } from '@/services/Api';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { AdminUsersRoute } from '../../admin-users-router.enum';\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: {\r\n GameInstanceDetails,\r\n GameInstancePaymentData\r\n }\r\n})\r\nexport default class AdminGameInstanceDetails extends Vue {\r\n @Prop() readonly gameInstanceId!: string;\r\n private adminApiService = new AdminGameInstancesApiService();\r\n private loading = true;\r\n private gameInstanceData!: AdminGameInstanceDto | undefined;\r\n private gameInstancePaymentData!: OrderListItemAdminDataDto[] | undefined;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.GameInstancesAdmin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.gameInstances }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Details'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n const gameInstance: AdminGameInstanceDto | undefined = await this.adminApiService.getGameInstance(\r\n this.gameInstanceId\r\n );\r\n if (gameInstance) {\r\n this.gameInstanceData = gameInstance;\r\n }\r\n const paymentInstance:\r\n | OrderListItemAdminDataDto[]\r\n | undefined = await this.adminApiService.getPaymentOrdersForGameInstance(this.gameInstanceId);\r\n if (paymentInstance) {\r\n this.gameInstancePaymentData = paymentInstance;\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminGameInstanceDetailsPage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminGameInstanceDetailsPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminGameInstanceDetailsPage.vue?vue&type=template&id=41aba8be&scoped=true&\"\nimport script from \"./AdminGameInstanceDetailsPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminGameInstanceDetailsPage.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"41aba8be\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VContainer,VForm,VRow,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { AdminGameInstanceListItemDto } from '@/services/Api';\r\nimport AdminGameInstanceDetailsPage from '@/modules/admin/game-instances/views/AdminGameInstanceDetailsPage.vue';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\n\r\nimport { Moment } from 'moment';\r\nimport moment from 'moment';\r\nimport DataTableFilterHelper from '@/modules/layout/helpers/data-table-filter.helper';\r\nimport { AdminUsersRoute } from '@/modules/admin/admin-users-router.enum';\r\nimport { translate } from '@/plugins/i18n';\r\n@Component({\r\n components: { AdminGameInstanceDetailsPage }\r\n})\r\nexport default class GameInstancesListRow extends Vue {\r\n @Prop() readonly data!: AdminGameInstanceListItemDto[];\r\n private search = '';\r\n private tableSize = 10;\r\n public adminUsersRoute = AdminUsersRoute;\r\n get headers() {\r\n return [\r\n {\r\n text: this.$t('Modules.AdminPanel.GameInstances.Title'),\r\n align: 'start',\r\n value: 'instanceTitle',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.GameInstances.Plan'),\r\n value: 'validUntil',\r\n sort: DataTableSortingHelper.compareByDate\r\n },\r\n { text: this.$t('Modules.AdminPanel.GameInstances.TimePeriod'), value: 'timePeriod', sortable: false },\r\n {\r\n text: this.$t('Modules.AdminPanel.GameInstances.Owner'),\r\n value: 'owner',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.GameInstances.CreatedDate'),\r\n value: 'createdDate',\r\n sort: DataTableSortingHelper.compareByDate\r\n },\r\n {\r\n text: this.$t('Modules.AdminPanel.GameInstances.IsDeleted'),\r\n value: 'isDeleted',\r\n sort: DataTableSortingHelper.compareByString\r\n },\r\n { value: 'button', sortable: false }\r\n ];\r\n }\r\n get filters() {\r\n return [\r\n { value: 'owner', items: this.data.map(d => d.owner) },\r\n { value: 'isDeleted', items: this.data.map(d => d.isDeleted) },\r\n {\r\n value: 'validUntil',\r\n items: ['Basic', 'Per Game'],\r\n filter: (value: any, search: any, item: any, activeFilters: any) => {\r\n return activeFilters.validUntil.includes(this.license(value).text);\r\n }\r\n }\r\n ];\r\n }\r\n expired(validUntil: Moment) {\r\n return validUntil.isBefore(moment());\r\n }\r\n license(validUntil: Moment | null | undefined) {\r\n if (validUntil && validUntil.isAfter(moment())) {\r\n const result = {\r\n text: 'Per Game',\r\n icon: 'mdi-crown',\r\n color: '#D8A243'\r\n };\r\n return result;\r\n }\r\n const result = {\r\n text: 'Basic',\r\n icon: 'mdi-lock',\r\n color: 'grey'\r\n };\r\n return result;\r\n }\r\n\r\n customFilter(value: any, search: string | null, item: AdminGameInstanceListItemDto) {\r\n if (!search) {\r\n return true;\r\n }\r\n\r\n return (\r\n DataTableFilterHelper.filterByString(item.instanceTitle, search) ||\r\n DataTableFilterHelper.filterByString(item.gameTitle, search) ||\r\n DataTableFilterHelper.filterByString(item.owner, search) ||\r\n DataTableFilterHelper.filterByString(item.id, search) ||\r\n DataTableFilterHelper.filterByValid(item.validUntil, search) ||\r\n DataTableFilterHelper.filterByDate(item.playableTo, search) ||\r\n DataTableFilterHelper.filterByDate(item.playableFrom, search) ||\r\n DataTableFilterHelper.filterByDate(item.createdDate, search)\r\n );\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstancesListRow.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstancesListRow.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstancesListRow.vue?vue&type=template&id=3aa02f35&scoped=true&\"\nimport script from \"./GameInstancesListRow.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstancesListRow.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3aa02f35\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSimpleCheckbox } from 'vuetify/lib/components/VCheckbox';\ninstallComponents(component, {VCard,VCol,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VSimpleCheckbox})\n","\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { AdminGameInstanceListItemDto } from '@/services/Api';\r\nimport AdminGameInstancesApiService from '../services/admin-game-instances-api.service';\r\nimport GameInstancesListRow from '../components/GameInstancesListRow.vue';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { AdminUsersRoute } from '../../admin-users-router.enum';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: { GameInstancesListRow }\r\n})\r\nexport default class AdminGameInstancesList extends Vue {\r\n private apiService = new AdminGameInstancesApiService();\r\n private gameInstancesList!: AdminGameInstanceListItemDto[];\r\n private loading = true;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Admin'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: AdminUsersRoute.adminDashboard }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.GameInstancesAdmin'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n async mounted() {\r\n await this.getGameInstances();\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n async getGameInstances() {\r\n const gameInstancesGetList = await this.apiService.getGameInstancesList();\r\n if (gameInstancesGetList) {\r\n this.gameInstancesList = gameInstancesGetList;\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminGameInstancesList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminGameInstancesList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminGameInstancesList.vue?vue&type=template&id=7a6d47cb&scoped=true&\"\nimport script from \"./AdminGameInstancesList.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminGameInstancesList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7a6d47cb\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\ninstallComponents(component, {VContainer,VDataTable})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('router-view')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class DefaultView extends Vue {}\r\n","export enum GamePlayRoute {\r\n gameContainer = 'Game Container'\r\n}\r\n","export enum StatisticsRoute {\r\n statisticsMain = 'Statistics Main',\r\n statisticsPlayer = 'Statistics Player',\r\n statisticsGame = 'Statisitics Game',\r\n downloadCV = 'Download CV'\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DefaultView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DefaultView.vue?vue&type=template&id=3663fd57&\"\nimport script from \"./DefaultView.vue?vue&type=script&lang=ts&\"\nexport * from \"./DefaultView.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { RouteConfig } from 'vue-router';\r\nimport AdminUserList from '@/modules/admin/users/views/AdminUserList.vue';\r\nimport AdminEditPage from '@/modules/admin/users/views/AdminEditPage.vue';\r\nimport AdminDetailsPage from '@/modules/admin/users/views/AdminDetailsPage.vue';\r\nimport AdminDashboard from '@/modules/admin/AdminDashboard.vue';\r\nimport DiscountList from '@/modules/admin/discounts/views/DiscountList.vue';\r\nimport DiscountEditPage from '@/modules/admin/discounts/views/DiscountEditPage.vue';\r\nimport DiscountDetailsPage from '@/modules/admin/discounts/views/DiscountDetailsPage.vue';\r\nimport DiscountAddPage from '@/modules/admin/discounts/views/DiscountAddPage.vue';\r\nimport PaymentsList from '@/modules/admin/payments/views/PaymentsList.vue';\r\nimport PaymentsDetailsPage from '@/modules/admin/payments/views/PaymentsDetailsPage.vue';\r\nimport AdminGameInstancesList from '@/modules/admin/game-instances/views/AdminGameInstancesList.vue';\r\nimport AdminGameInstanceDetailsPage from '@/modules/admin/game-instances/views/AdminGameInstanceDetailsPage.vue';\r\nimport DefaultView from '@/modules/layout/DefaultView.vue';\r\nimport { AdminUsersRoute } from './admin-users-router.enum';\r\n\r\nexport const adminUsersRoutes: Array = [\r\n {\r\n path: '/admin',\r\n component: DefaultView,\r\n meta: { breadCrumb: 'Layout.Toolbar.Routes.Admin' },\r\n children: [\r\n {\r\n path: '',\r\n name: AdminUsersRoute.adminDashboard,\r\n component: AdminDashboard\r\n },\r\n {\r\n path: '/admin/users',\r\n component: DefaultView,\r\n meta: { allowAnonymous: false },\r\n children: [\r\n {\r\n path: '',\r\n name: AdminUsersRoute.userAdmin,\r\n component: AdminUserList\r\n },\r\n {\r\n path: ':id',\r\n name: AdminUsersRoute.adminEdit,\r\n component: AdminEditPage,\r\n meta: { allowAnonymous: false }\r\n },\r\n {\r\n path: 'details=:id',\r\n name: AdminUsersRoute.adminDetails,\r\n component: AdminDetailsPage,\r\n meta: { allowAnonymous: false }\r\n }\r\n ]\r\n },\r\n {\r\n path: '/admin/discounts',\r\n component: DefaultView,\r\n meta: { allowAnonymous: false },\r\n children: [\r\n {\r\n path: '',\r\n name: AdminUsersRoute.discountsList,\r\n component: DiscountList\r\n },\r\n {\r\n path: ':id',\r\n name: AdminUsersRoute.discountEdit,\r\n component: DiscountEditPage,\r\n meta: { allowAnonymous: false }\r\n },\r\n {\r\n path: 'etails=:id',\r\n name: AdminUsersRoute.discountDetails,\r\n component: DiscountDetailsPage,\r\n meta: { allowAnonymous: false }\r\n },\r\n {\r\n path: 'add',\r\n name: AdminUsersRoute.discountAdd,\r\n component: DiscountAddPage,\r\n meta: { allowAnonymous: false }\r\n }\r\n ]\r\n },\r\n {\r\n path: '/admin/payments',\r\n component: DefaultView,\r\n meta: { allowAnonymous: false },\r\n children: [\r\n {\r\n path: '',\r\n name: AdminUsersRoute.paymentsList,\r\n component: PaymentsList\r\n },\r\n {\r\n path: ':id',\r\n name: AdminUsersRoute.paymentsDetails,\r\n component: PaymentsDetailsPage,\r\n meta: { allowAnonymous: false }\r\n }\r\n ]\r\n },\r\n {\r\n path: '/admin/game-instances',\r\n component: DefaultView,\r\n meta: { allowAnonymous: false },\r\n children: [\r\n {\r\n path: '',\r\n name: AdminUsersRoute.gameInstances,\r\n component: AdminGameInstancesList\r\n },\r\n {\r\n path: ':gameInstanceId',\r\n name: AdminUsersRoute.adminGameInstanceDetails,\r\n props: true,\r\n component: AdminGameInstanceDetailsPage,\r\n meta: { allowAnonymous: false }\r\n }\r\n ]\r\n }\r\n ]\r\n }\r\n];\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"fill-height game-instance-list-container\",attrs:{\"fluid\":\"\"}},[(_vm.loading)?_c('v-skeleton-loader',{staticClass:\"mx-auto\",attrs:{\"type\":\"list-item@6\"}}):_vm._e(),(_vm.gameInstances && !_vm.gameInstances.length && !_vm.loading)?_c('empty-list-container',{staticClass:\"text-uppercase\",attrs:{\"routeName\":_vm.gameInstanceRoute.gameInstanceCreate,\"text\":_vm.$t('Buttons.Add')}}):_vm._e(),(_vm.gameInstances && _vm.gameInstances.length && !_vm.loading)?_c('v-container',{staticClass:\"fill-height align-content-start\",attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-col',{staticClass:\"text-right\"},[_c('v-btn',{staticClass:\"text-uppercase\",attrs:{\"to\":{ name: _vm.gameInstanceRoute.gameInstanceCreate },\"large\":\"\",\"dark\":\"\",\"color\":\"green\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Add'))+\" \")])],1)],1),_c('ListContainer',{scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('v-col',{staticClass:\" activeGamesHeader\",attrs:{\"cols\":\"3\"}},[_c('div',{staticClass:\"ml-2\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.List.Headers.GameTitle'))+\" \")])]),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.List.Headers.Plan'))+\" \")]),_c('v-col',{attrs:{\"cols\":\"3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.List.Headers.Status'))+\" \")]),_c('v-col',{attrs:{\"cols\":\"6\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.List.Headers.TimePeriod'))+\" \")])],1)],1),_c('v-spacer')]},proxy:true},{key:\"items\",fn:function(){return _vm._l((_vm.gameInstances),function(item){return _c('ListItem',{key:item.id},[_c('GameInstanceListItem',{attrs:{\"game-instance-id\":item.id,\"game-instance-title\":item.title,\"game-template-name\":item.gameTemplate.title,\"is-public\":item.isPublic,\"validUntil\":item.validUntil,\"playableFrom\":item.playableFrom,\"playableTo\":item.playableTo,\"lastPaymentData\":item.lastPaymentBaseData},on:{\"game-instance-deleted\":_vm.gameInstanceDeleted}})],1)})},proxy:true}],null,false,3709983637)})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\r\n GameClient,\r\n GameInstanceDto,\r\n GameTemplateDto,\r\n GameInstanceCreateInputModel,\r\n GameInstanceUpdateInputModel,\r\n GameInstanceDeleteInputModel,\r\n AssignableProfessionDto,\r\n PaymentsClient,\r\n Currency,\r\n GetInitialOrderDataDto,\r\n VerifyDiscountResultDto,\r\n GetPriceInfoDto,\r\n CreateEmptyPurchaseDto,\r\n CreateEmptyPurchaseInputModel,\r\n GameInstanceRecipientDataInputModel,\r\n PayInputModel\r\n} from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class GameApiService extends ApiServiceBase {\r\n private client = new GameClient();\r\n private paymentClient = new PaymentsClient();\r\n\r\n public async getGameInstanceById(gameInstanceId: string): Promise {\r\n try {\r\n const gameList = await this.client.getGameInstanceById(gameInstanceId);\r\n return gameList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getGameInstancesByUser(): Promise {\r\n try {\r\n const gameList = await this.client.getGameInstancesByUser();\r\n return gameList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getGameTemplatesForCreateDropdown(): Promise {\r\n try {\r\n const gameTemplatesList = await this.client.getGameTemplatesForCreateDropdown();\r\n return gameTemplatesList.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async createGameInstance(inputModel: GameInstanceCreateInputModel): Promise {\r\n try {\r\n const gameInstance = await this.client.createGameInstance(inputModel);\r\n return gameInstance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async updateGameInstance(inputModel: GameInstanceUpdateInputModel): Promise {\r\n try {\r\n const gameInstance = await this.client.updateGameInstance(inputModel);\r\n return gameInstance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async deleteGameInstance(inputModel: GameInstanceDeleteInputModel): Promise {\r\n try {\r\n const gameInstance = await this.client.deleteGameInstance(inputModel);\r\n return gameInstance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getAssignableProfessions(gameInstancId: string): Promise {\r\n try {\r\n const professions = await this.client.getAssignableProfessions(gameInstancId);\r\n return professions.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getInitialOrderData(\r\n gameInstanceId: string,\r\n defaultCountryCode: string\r\n ): Promise {\r\n try {\r\n const response = await this.paymentClient.getInitialOrderData(gameInstanceId, defaultCountryCode);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async createEmptyPurchase(\r\n inputModel: CreateEmptyPurchaseInputModel\r\n ): Promise {\r\n try {\r\n const response = await this.paymentClient.createEmptyPurchase(inputModel);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async showSummary(inputModel: GameInstanceRecipientDataInputModel): Promise {\r\n try {\r\n const response = await this.paymentClient.showSummary(inputModel);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async verifyDiscountCode(\r\n code: string,\r\n currency: Currency,\r\n countryCode: string\r\n ): Promise {\r\n try {\r\n const response = await this.paymentClient.verifyDiscount(code, currency, countryCode);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async pay(payInputModel: PayInputModel): Promise {\r\n try {\r\n const response = await this.paymentClient.pay(payInputModel);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getPriceInfo(\r\n netPrice: number,\r\n countryCode: string,\r\n currency: Currency,\r\n discount?: number\r\n ): Promise {\r\n try {\r\n const response = await this.paymentClient.getPriceInfo(netPrice, countryCode, discount, currency);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"pa-0 ma-0\",attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex justify-center align-center\",attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"play-btn\",attrs:{\"color\":\"blue\",\"fab\":\"\",\"x-small\":\"\",\"dark\":\"\",\"elevation\":\"2\",\"to\":{\n name: _vm.gamePlayRoute.gameContainer,\n params: { id: _vm.gameInstanceId }\n },\"target\":\"_blank\"}},[_c('v-icon',[_vm._v(\"mdi-play\")])],1)],1),_c('list-item-header',{attrs:{\"title\":_vm.gameInstanceTitle,\"subTitle\":_vm.gameTemplateName,\"routeTo\":{\n name: _vm.gameInstanceRoute.gameInstanceEdit,\n params: { gameInstanceId: _vm.gameInstanceId }\n }}})],1)],1),_c('v-col',{staticClass:\"text--disabled\",attrs:{\"cols\":\"6\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"itemGrid\"},[_c('div',{staticClass:\"icon\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":_vm.license.color}},[_vm._v(_vm._s(_vm.license.icon))])],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(_vm._s(_vm.license.text))]),(_vm.validUntil && !_vm.expired)?_c('div',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.GameInstance.ListItem.ValidUntilTooltip')),expression:\"$t('Modules.GameInstance.ListItem.ValidUntilTooltip')\"}],staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(_vm.validUntil))+\" \")]):_vm._e()]),_c('v-col',{staticClass:\"d-flex align-center\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":_vm.status.color}},[_vm._v(_vm._s(_vm.status.icon))]),_vm._v(_vm._s(_vm.status.text))],1),_c('v-col',{staticClass:\"itemGrid\"},[_c('div',{staticClass:\"icon\"},[(!_vm.validUntil)?_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"grey\"}},[_vm._v(\"mdi-lock\")]):_c('div',[_c('v-icon',{staticClass:\"mr-1\",attrs:{\"size\":\"20px\",\"color\":_vm.playableFrom ? 'green' : ''}},[_vm._v(\"mdi-calendar-check\")])],1)],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(_vm.playableFrom))+\" \")]),_c('div',{staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatHours\")(_vm.playableFrom))+\" \")])]),_c('v-col',{staticClass:\"itemGrid\"},[_c('div',{staticClass:\"icon\"},[(!_vm.validUntil)?_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"grey\"}},[_vm._v(\"mdi-lock\")]):_c('div',[_c('v-icon',{staticClass:\"mr-1\",attrs:{\"size\":\"20px\",\"color\":_vm.playableTo ? 'green' : ''}},[_vm._v(\"mdi-calendar-remove\")])],1)],1),_c('div',{staticClass:\"up\"}),_c('div',{staticClass:\"mid\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDate\")(_vm.playableTo))+\" \")]),_c('div',{staticClass:\"down text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatHours\")(_vm.playableTo))+\" \")])])],1)],1),_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"dense\":\"\",\"justify\":\"space-around\",\"align\":\"center\"}},[_c('v-col',{staticClass:\"d-none d-xl-flex\",attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"game-instance-statistics-btn\",attrs:{\"rounded\":\"\",\"small\":\"\",\"elevation\":\"0\",\"to\":{\n name: _vm.statisticsRoute.statisticsMain,\n params: { gameInstanceId: _vm.gameInstanceId }\n }}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-chart-bar\")]),_vm._v(_vm._s(_vm.$t('Modules.GameInstance.ListItem.StatisticsLabel')))],1)],1),_c('v-col',{staticClass:\"d-none d-xl-flex\",attrs:{\"cols\":\"auto\",\"align-self\":\"center\"}},[_c('v-menu',{attrs:{\"offset-y\":\"\",\"left\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\n var on = ref.on;\n var attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({attrs:{\"rounded\":\"\",\"small\":\"\",\"elevation\":\"0\"}},'v-btn',attrs,false),on),[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-share-variant\")]),_vm._v(_vm._s(_vm.$t('Modules.GameInstance.ListItem.ShareLabel')))],1)]}}])},[_c('v-list',{nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('v-list-item',{staticClass:\"d-none d-xl-flex\"},[_c('v-list-item-title',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.ListItem.ShareGame')))])],1),(_vm.status.text == 'Non-public')?_c('v-alert',{staticClass:\"d-none d-xl-flex\",attrs:{\"type\":\"warning\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.ListItem.PrivateGame'))+\" \")]):_vm._e(),_c('v-list-item',{staticClass:\"d-none d-xl-flex\"},[[_c('v-tabs',{attrs:{\"fixed-tabs\":\"\"}},[_c('v-tab',{attrs:{\"href\":\"#Copy\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.ListItem.ShareLinkLabel'))+\" \")]),_c('v-tab-item',{key:\"Copy\",attrs:{\"id\":\"Copy\"}},[[_c('v-card',{staticClass:\"pa-2 mb-2\",attrs:{\"outlined\":\"\",\"color\":\"#f6f8f9\",\"width\":\"450px\"}},[_c('v-card-text',[_c('p',{staticClass:\"font-weight-medium\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.ListItem.ShareLinkDescription'))+\" \")]),_c('p',{staticClass:\"font-weight-medium\",staticStyle:{\"color\":\"#1aabbc\"}},[_vm._v(_vm._s(_vm.createGameLink()))])]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"text-uppercase\",attrs:{\"elevation\":\"2\",\"medium\":\"\",\"dark\":\"\",\"color\":\"green\"},on:{\"click\":function($event){_vm.copyToClipboard(_vm.createGameLink())}}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"white\",\"small\":\"\"}},[_vm._v(\"mdi-content-copy\")]),_vm._v(\" \"+_vm._s(_vm.$t('Buttons.CopyLink'))+\" \")],1)],1)],1)]],2),_c('v-tab',{staticClass:\"text-uppercase\",attrs:{\"href\":\"#HTML\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.ListItem.ShareHTMLLabel'))+\" \")]),_c('v-tab-item',{key:\"HTML\",attrs:{\"id\":\"HTML\"}},[[_c('v-card',{staticClass:\"pa-2 mb-2\",attrs:{\"outlined\":\"\",\"color\":\"#f6f8f9\",\"width\":\"450px\"}},[_c('v-card-text',[_c('p',{staticClass:\"font-weight-medium\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.ListItem.ShareHTMLDescription'))+\" \")]),(!_vm.loadingEmbed)?_c('v-textarea',{staticClass:\"pa-4 scrollable\",attrs:{\"background-color\":\"white\",\"value\":_vm.HTMLEmbed,\"width\":\"100%\",\"no-resize\":\"\",\"readonly\":\"\",\"max-height\":\"100px;\"}}):_vm._e()],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"text-uppercase\",attrs:{\"elevation\":\"2\",\"medium\":\"\",\"dark\":\"\",\"color\":\"green\"},on:{\"click\":_vm.embedHTMLCopy}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"white\",\"small\":\"\"}},[_vm._v(\"mdi-content-copy\")]),_vm._v(\" \"+_vm._s(_vm.$t('Buttons.CopyLink'))+\" \")],1)],1)],1)]],2)],1)]],2)],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"auto\",\"align-self\":\"center\"}},[_c('div',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.newOrderButtonTooltip),expression:\"newOrderButtonTooltip\"}]},[_c('v-btn',{staticClass:\"btn-cart\",attrs:{\"to\":{\n name: _vm.gameInstanceRoute.gameInstanceCreateOrder,\n params: { gameInstanceId: _vm.gameInstanceId }\n },\"fab\":\"\",\"color\":\"success\",\"id\":\"createOrderButton\",\"disabled\":_vm.disableNewOrders}},[_c('v-icon',{staticClass:\"text-left\",attrs:{\"dark\":\"\"}},[_vm._v(\" mdi-cart-plus\")])],1)],1)]),_c('list-menu',[_c('v-list',[_c('v-list-item',{staticClass:\"gameinstance-list-edit-btn\",attrs:{\"to\":{\n name: _vm.gameInstanceRoute.gameInstanceEdit,\n params: { gameInstanceId: _vm.gameInstanceId }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-pencil\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Buttons.Edit')))])],1),_c('v-list-item',{attrs:{\"to\":{\n name: _vm.statisticsRoute.statisticsMain,\n params: { gameInstanceId: _vm.gameInstanceId }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-chart-bar\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.ListItem.StatisticsLabel')))])],1),_c('v-list-item',{staticClass:\"gameinstance-list-link-btn\",on:{\"click\":_vm.copyGameLink}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-content-copy\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.ListItem.LinkLabel'))+\" \")])],1),_c('v-list-item',{staticClass:\"deleteBtn game-instance-delete-btn\",on:{\"click\":function($event){return _vm.showDeleteConfirmation()}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-delete\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Buttons.Delete'))+\" \")])],1)],1)],1)],1)],1),_c('ConfirmDeleteModal',{attrs:{\"show\":_vm.dialog,\"customText\":_vm.gameInstanceTitle},on:{\"confirm\":function($event){return _vm.deleteInstance()},\"cancel\":function($event){return _vm.cancelDelete()}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nexport class ShareImagesBase64 {\r\n public static readonly baner1 = require('@/assets/images/cf_ppl1.png');\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport GameApiService from '@/modules/game-instance/services/game-instance-api.service';\r\nimport { GameInstanceDeleteInputModel, PaymentBaseData } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { ShareImagesBase64 } from '../models/imageBase64';\r\nimport ConfirmDeleteModal from '@/modules/layout/components/ConfirmDeleteModal.vue';\r\nimport { Moment } from 'moment';\r\nimport moment from 'moment';\r\nimport { values } from 'node_modules/mobx/dist/internal';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { GamePlayRoute } from '@/modules/game-play/game-play-router.enum';\r\nimport { StatisticsRoute } from '@/modules/statistics/statistics-router.enum';\r\n@Component({\r\n components: { ConfirmDeleteModal }\r\n})\r\nexport default class GameInstanceListItem extends Vue {\r\n dialog = false;\r\n @Prop() gameInstanceId!: string;\r\n @Prop({ default: 'Financial Operations Analyst' }) gameInstanceTitle!: string;\r\n @Prop({ default: 'Galaxy Rescue' }) gameTemplateName!: string;\r\n @Prop({ default: false }) isPublic!: boolean;\r\n @Prop() Url!: string;\r\n @Prop() playableFrom!: Moment;\r\n @Prop() playableTo!: Moment;\r\n @Prop() validUntil!: Moment;\r\n @Prop() lastPaymentData!: PaymentBaseData;\r\n apiService = new GameApiService();\r\n HTMLEmbed: string | ArrayBuffer | undefined = '';\r\n loadingEmbed = true;\r\n public gameInstanceRoute = GameInstanceRoute;\r\n public gamePlayRoute = GamePlayRoute;\r\n public statisticsRoute = StatisticsRoute;\r\n get disableNewOrders(): boolean {\r\n return this.lastPaymentData != null && this.lastPaymentData.isPaymentActive;\r\n }\r\n\r\n get newOrderButtonTooltip(): string | null {\r\n return this.disableNewOrders ? translate('Modules.GameInstance.NewOrderDisabledTooltip') : null;\r\n }\r\n\r\n get expired() {\r\n return this.validUntil.isBefore(moment());\r\n }\r\n get license() {\r\n if (this.validUntil && this.validUntil.isAfter(moment())) {\r\n const result = {\r\n text: 'Per Game',\r\n icon: 'mdi-crown',\r\n color: '#D8A243'\r\n };\r\n return result;\r\n }\r\n const result = {\r\n text: 'Basic',\r\n icon: 'mdi-lock',\r\n color: 'grey'\r\n };\r\n return result;\r\n }\r\n get status() {\r\n if (this.isPublic) {\r\n const result = {\r\n text: 'Public',\r\n icon: 'mdi-earth',\r\n color: 'blue'\r\n };\r\n return result;\r\n }\r\n const result = {\r\n text: 'Non-public',\r\n icon: 'mdi-earth-off',\r\n color: 'grey'\r\n };\r\n return result;\r\n }\r\n\r\n async deleteInstance() {\r\n const result = await this.apiService.deleteGameInstance(\r\n new GameInstanceDeleteInputModel({\r\n gameId: this.gameInstanceId\r\n })\r\n );\r\n if (result) {\r\n this.closeMenus();\r\n this.$emit('game-instance-deleted', this.gameInstanceId);\r\n NotificationService.success(translate('Modules.GameInstance.Notifications.Success.GameDeleted'));\r\n }\r\n }\r\n copyToClipboard(value: string) {\r\n if (value) {\r\n navigator.clipboard.writeText(value);\r\n NotificationService.success(translate('Modules.GameInstance.Notifications.Success.CopyLink'));\r\n } else {\r\n NotificationService.error(translate('Modules.GameInstance.Notifications.Error.CopyEmpty'));\r\n }\r\n }\r\n async mounted() {\r\n this.HTMLEmbed += \"Apply by playing\";\r\n\r\n this.loadingEmbed = false;\r\n }\r\n cancelDelete() {\r\n this.dialog = false;\r\n this.closeMenus();\r\n }\r\n async generateHTMLEmbed() {\r\n return await this.imageToBase64(ShareImagesBase64.baner1);\r\n }\r\n closeMenus() {\r\n this.dialog = false;\r\n }\r\n showDeleteConfirmation() {\r\n this.dialog = true;\r\n }\r\n async embedHTMLCopy() {\r\n let embed = '';\r\n embed += \"Apply by playing\";\r\n navigator.clipboard.writeText(embed);\r\n NotificationService.success(translate('Modules.GameInstance.Notifications.Success.CopyLink'));\r\n }\r\n\r\n imageToBase64(file: string): Promise {\r\n const data = new Promise((resolve, reject) => {\r\n const blob = fetch(file).then(r => {\r\n r.blob().then(y => {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(y);\r\n reader.onload = () => {\r\n resolve(reader.result);\r\n };\r\n });\r\n });\r\n });\r\n\r\n return data;\r\n }\r\n copyGameLink() {\r\n const gameLink = document.location.origin + '/play=' + this.gameInstanceId;\r\n navigator.clipboard.writeText(gameLink);\r\n NotificationService.success(translate('Modules.GameInstance.ListItem.LinkCopiedMsg'));\r\n }\r\n createGameLink() {\r\n return document.location.origin + '/play=' + this.gameInstanceId;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceListItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceListItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceListItem.vue?vue&type=template&id=360f9a7b&scoped=true&\"\nimport script from \"./GameInstanceListItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceListItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameInstanceListItem.vue?vue&type=style&index=0&id=360f9a7b&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"360f9a7b\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\ninstallComponents(component, {VAlert,VBtn,VCard,VCardActions,VCardText,VCol,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VMenu,VRow,VSpacer,VTab,VTabItem,VTabs,VTextarea})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { GameInstanceDto } from '@/services/Api';\r\nimport UserApiService from '../services/game-instance-api.service';\r\nimport GameInstanceListItem from '@/modules/game-instance/components/GameInstanceListItem.vue';\r\nimport ListContainer from '@/modules/layout/components/ListContainer.vue';\r\nimport ListItem from '@/modules/layout/components/ListItem.vue';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { store } from '@/store/store';\r\n@Component({\r\n components: { ListItem, ListContainer, GameInstanceListItem }\r\n})\r\nexport default class GameInstanceList extends Vue {\r\n apiService = new UserApiService();\r\n private gameInstances: Array = [];\r\n private loading = true;\r\n public gameInstanceRoute = GameInstanceRoute;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Games'),\r\n to: { name: GameInstanceRoute.gameInstanceList }\r\n }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n this.loading = true;\r\n\r\n const result = await this.apiService.getGameInstancesByUser();\r\n\r\n if (result) {\r\n this.gameInstances = result;\r\n this.gameInstances.sort(function(a, b) {\r\n if (a.title && b.title) {\r\n return a.title.localeCompare(b.title);\r\n }\r\n return -1;\r\n });\r\n\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n }\r\n\r\n gameInstanceDeleted(gameInstanceId: string) {\r\n const gIndex = this.gameInstances.findIndex(g => g.id === gameInstanceId);\r\n this.gameInstances.splice(gIndex, 1);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceList.vue?vue&type=template&id=35d45f6a&scoped=true&\"\nimport script from \"./GameInstanceList.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameInstanceList.vue?vue&type=style&index=0&id=35d45f6a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"35d45f6a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VContainer,VRow,VSkeletonLoader,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(_vm.instanceSettings && _vm.gameTemplates.games)?_c('v-form',{ref:\"form\"},[_c('game-instance-customize-form',{attrs:{\"instanceSettings\":_vm.instanceSettings,\"gameTemplates\":_vm.gameTemplates}})],1):_vm._e(),_c('div',{staticClass:\"save-btn-holder\"},[_c('v-btn',{staticClass:\"white--text float-right create-btn\",attrs:{\"elevation\":\"2\",\"color\":\"green\",\"width\":\"200\",\"loading\":_vm.loading},on:{\"click\":_vm.submit}},[_vm._v(_vm._s(_vm.$t('Buttons.Save'))+\" \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Create.BasicDataTitle')}},[_c('edit-card-section',{attrs:{\"title\":_vm.getTitle()}},[_c('v-card-text',[_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Create.GameTitleInputLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"name\":\"game-title-input\",\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.instanceSettings.gameTitle),callback:function ($$v) {_vm.$set(_vm.instanceSettings, \"gameTitle\", $$v)},expression:\"instanceSettings.gameTitle\"}})],1)],1),(_vm.edit)?_c('div',[_c('v-row',{staticClass:\"mb-n4\",attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Create.PlayableFromLabel')))]),_c('v-col',{staticClass:\"playable-from\",attrs:{\"cols\":\"2\"}},[_c('v-datetime-picker',{attrs:{\"time-picker-props\":_vm.timeProps},scopedSlots:_vm._u([{key:\"dateIcon\",fn:function(){return [_c('v-icon',{staticClass:\"calendar-tab\"},[_vm._v(\"mdi-calendar-range\")])]},proxy:true},{key:\"timeIcon\",fn:function(){return [_c('v-icon',[_vm._v(\"mdi-clock\")])]},proxy:true}],null,false,4232442414),model:{value:(_vm.instanceSettings.localPlayableFrom),callback:function ($$v) {_vm.$set(_vm.instanceSettings, \"localPlayableFrom\", $$v)},expression:\"instanceSettings.localPlayableFrom\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Create.PlayableToLabel')))]),_c('v-col',{staticClass:\"playable-to\",attrs:{\"cols\":\"2\"}},[_c('v-datetime-picker',{attrs:{\"time-picker-props\":_vm.timeProps},scopedSlots:_vm._u([{key:\"dateIcon\",fn:function(){return [_c('v-icon',{staticClass:\"calendar-tab\"},[_vm._v(\"mdi-calendar-range\")])]},proxy:true},{key:\"timeIcon\",fn:function(){return [_c('v-icon',[_vm._v(\"mdi-clock\")])]},proxy:true}],null,false,4232442414),model:{value:(_vm.instanceSettings.localPlayableTo),callback:function ($$v) {_vm.$set(_vm.instanceSettings, \"localPlayableTo\", $$v)},expression:\"instanceSettings.localPlayableTo\"}})],1)],1),(!_vm.instanceSettings.isPremium)?_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"d-flex justify-end\",attrs:{\"cols\":\"auto\"}},[_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"#E85C39\"}},[_vm._v(\"mdi-lock\")])],1),_c('v-col',[_c('v-divider')],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('div',{staticClass:\"d-inline-flex flex-column\"},[_c('v-btn',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.GameInstance.Create.UpgradeTooltip')),expression:\"$t('Modules.GameInstance.Create.UpgradeTooltip')\"}],attrs:{\"rounded\":\"\",\"dense\":\"\",\"small\":\"\",\"depressed\":\"\",\"disabled\":_vm.isPaymentActive,\"to\":{\n name: _vm.gameInstanceRoute.gameInstanceCreateOrder,\n params: { gameInstanceId: _vm.instanceSettings.gameInstanceId }\n }}},[_c('v-icon',{attrs:{\"left\":\"\",\"color\":\"#E85C39\",\"small\":\"\"}},[_vm._v(\"mdi-key\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Create.UpgradeButton'))+\" \")],1),(_vm.isPaymentActive && _vm.paymentStatus != null)?_c('div',{staticClass:\"text-caption text-caption align-self-center\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Create.OrderStatus'))+\" \"+_vm._s(_vm.paymentStatus)+\" \")]):_vm._e()],1)])],1):_vm._e(),_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"small\":\"\"}},[_vm._v(\"mdi-earth\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Create.PublicLabel')))],1),_c('v-col',{staticClass:\"d-inline-flex\",attrs:{\"cols\":\"1\"}},[_c('v-switch',{attrs:{\"disabled\":!_vm.instanceSettings.isPremium},model:{value:(_vm.instanceSettings.isPublic),callback:function ($$v) {_vm.$set(_vm.instanceSettings, \"isPublic\", $$v)},expression:\"instanceSettings.isPublic\"}}),(!_vm.instanceSettings.isPublic)?_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.GameInstance.Create.PublicWarning')),expression:\"$t('Modules.GameInstance.Create.PublicWarning')\"}],staticClass:\"secondary--text\"},[_vm._v(\"mdi-alert-circle\")]):_vm._e()],1)],1)],1):_vm._e()],1)],1)],1),_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Create.GameCardTitle')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Create.GameCardInfo')}},[_c('v-card-text',[_c('GameSelect',{attrs:{\"gameTemplates\":_vm.gameTemplates},on:{\"game-selected\":_vm.onGameSelected}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"game-template-container\"},[_c('v-col',{staticClass:\"d-inline-flex flex-row flex-wrap justify-space-around\",attrs:{\"cols\":\"10\",\"offset\":\"1\"}},[_vm._l((_vm.gameTemplates.games),function(game){return _c('div',{key:game.id,staticClass:\"pa-2 item-holder\",class:{ active: _vm.selectedGame === game },on:{\"click\":function($event){return _vm.selectGame(game)}}},[_c('v-img',{staticClass:\"text-right pa-2 flex-grow-0\",attrs:{\"src\":_vm.getGamePreview(game.type),\"height\":\"250\",\"width\":\"250\"}}),_c('p',{staticClass:\"my-4 game-title\"},[_vm._v(_vm._s(game.title))]),_c('p',[_vm._v(\" \"+_vm._s(_vm.$t((\"Modules.GameInstance.GameDescriptions.\" + (game.type))))+\" \")])],1)}),(false)?_c('div',{staticClass:\"hidden-descriptions-playground\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.GameDescriptions.SpaceRescue'))+\" \"+_vm._s(_vm.$t('Modules.GameInstance.GameDescriptions.DesertAdventure'))+\" \"+_vm._s(_vm.$t('Modules.GameInstance.GameDescriptions.LittleWitch'))+\" \"+_vm._s(_vm.$t('Modules.GameInstance.GameDescriptions.FroggyPrincess'))+\" \"+_vm._s(_vm.$t('Modules.GameInstance.GameDescriptions.SpeedRace'))+\" \"+_vm._s(_vm.$t('Modules.GameInstance.GameDescriptions.Pirates'))+\" \"+_vm._s(_vm.$t('Modules.GameInstance.GameDescriptions.MazeGame'))+\" \")]):_vm._e()],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { GameTemplateDto, GameType } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { GameTemplatesModel } from '../models/game-templates.model';\r\n\r\n@Component\r\nexport default class GameSelect extends Vue {\r\n @Prop() gameTemplates!: GameTemplatesModel;\r\n selectedGame?: GameTemplateDto = new GameTemplateDto();\r\n\r\n mounted() {\r\n this.selectedGame = this.gameTemplates.getSelectedGameTemplate();\r\n }\r\n\r\n public selectGame(game: GameTemplateDto) {\r\n if (this.selectedGame !== game) {\r\n this.selectedGame = game;\r\n this.gameTemplates.selectedGame = game.id;\r\n this.$emit('game-selected', game.id);\r\n }\r\n }\r\n\r\n public getGamePreview(type: GameType): string {\r\n switch (type) {\r\n case GameType.DesertAdventure:\r\n return require('@/assets/games/Desert-adventure-preview.png');\r\n case GameType.SpaceRescue:\r\n return require('@/assets/games/Space-rescue-preview.png');\r\n case GameType.LittleWitch:\r\n return require('@/assets/games/little-witch-preview.png');\r\n case GameType.FroggyPrincess:\r\n return require('@/assets/games/froggy-princess-preview.png');\r\n case GameType.Pirates:\r\n return require('@/assets/games/pirates-preview.png');\r\n case GameType.SpeedRace:\r\n return require('@/assets/games/Speed-race-preview.png');\r\n case GameType.SkyFlight:\r\n return require('@/assets/games/skyFlight-preview.png');\r\n default:\r\n return require('@/assets/games/Speed-race-preview.png');\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameSelect.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameSelect.vue?vue&type=template&id=26c450c9&scoped=true&\"\nimport script from \"./GameSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameSelect.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameSelect.vue?vue&type=style&index=0&id=26c450c9&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"26c450c9\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VImg,VRow})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { GameTemplatesModel } from '../models/game-templates.model';\r\nimport { GameInstanceModel } from '../models/game-instance.model';\r\nimport { translate } from '@/plugins/i18n';\r\nimport GameSelect from './GameSelect.vue';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\n\r\n@Component({ components: { GameSelect } })\r\nexport default class GameInstanceCustomizeForm extends Vue {\r\n @Prop() instanceSettings!: GameInstanceModel;\r\n @Prop() gameTemplates!: GameTemplatesModel;\r\n @Prop({ type: Boolean, default: false }) edit?: boolean;\r\n modal = false;\r\n public gameInstanceRoute = GameInstanceRoute;\r\n rules = {\r\n required: StringValidators.required,\r\n minLength: (model: string) => StringValidators.minLength(model, 3),\r\n maxLength: (model: string) => StringValidators.maxLength(model, 30)\r\n };\r\n timeProps: any = {\r\n format: '24h'\r\n };\r\n getTitle() {\r\n if (this.edit) {\r\n return this.$t('Modules.GameInstance.Create.BasicDataInfoEdit');\r\n } else {\r\n return this.$t('Modules.GameInstance.Create.BasicDataInfo');\r\n }\r\n }\r\n public get isPaymentActive(): boolean {\r\n return this.instanceSettings?.lastPaymentData?.isPaymentActive === true;\r\n }\r\n\r\n public get paymentStatus(): string | null {\r\n const status = this.instanceSettings?.lastPaymentData?.activePaymentStatus;\r\n return status != null ? translate(`PaymentsStatus.${status}`) : null;\r\n }\r\n\r\n public onGameSelected(gameId: string) {\r\n this.$emit('game-selected', gameId);\r\n }\r\n\r\n @Watch('instanceSettings.localPlayableFrom')\r\n @Watch('instanceSettings.localPlayableTo')\r\n localChange() {\r\n this.instanceSettings.convertTime();\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCustomizeForm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCustomizeForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceCustomizeForm.vue?vue&type=template&id=49e596e7&scoped=true&\"\nimport script from \"./GameInstanceCustomizeForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceCustomizeForm.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"49e596e7\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCardText,VCol,VDivider,VIcon,VRow,VSwitch,VTextField})\n","import { GameInstanceDto, PaymentBaseData } from '@/services/Api';\r\nimport moment, { Moment } from 'moment';\r\n\r\nexport class GameInstanceModel {\r\n public gameTitle!: string;\r\n public validUntil!: string;\r\n public isPremium!: boolean;\r\n public isPublic!: boolean;\r\n public playableFrom?: Moment;\r\n public localPlayableFrom?: Date;\r\n public isPlayableFrom!: boolean;\r\n public playableTo?: Moment;\r\n public localPlayableTo?: Date;\r\n public isPlayableTo!: boolean;\r\n public assignedProfessions!: string[];\r\n public gameInstanceId!: string;\r\n public gameMainSettings: string;\r\n public lastPaymentData?: PaymentBaseData | null;\r\n\r\n constructor(model: GameInstanceDto) {\r\n this.gameInstanceId = model.id;\r\n this.gameTitle = model.title as string;\r\n this.validUntil = model.validUntil ? model.validUntil.local().format('YYYY-MM-DD') : '';\r\n this.isPublic = model.isPublic;\r\n\r\n this.isPlayableFrom = model.playableFrom ? true : false;\r\n this.isPlayableTo = model.playableTo ? true : false;\r\n\r\n if (this.isPlayableTo) {\r\n this.playableTo = model.playableTo as Moment;\r\n this.localPlayableTo = moment(model.playableTo)\r\n .local()\r\n .toDate();\r\n }\r\n if (this.isPlayableFrom) {\r\n this.playableFrom = model.playableFrom as Moment;\r\n this.localPlayableFrom = moment(model.playableFrom)\r\n .local()\r\n .toDate();\r\n }\r\n this.assignedProfessions = model.assignedProfessions ?? [];\r\n\r\n if (this.validUntil && moment(this.validUntil).isAfter(moment())) {\r\n this.isPremium = true;\r\n } else {\r\n this.isPremium = false;\r\n }\r\n this.gameMainSettings = model.settings as string;\r\n\r\n this.lastPaymentData = model.lastPaymentBaseData;\r\n }\r\n\r\n public convertTime() {\r\n if (this.localPlayableFrom && moment(this.localPlayableFrom).isValid()) {\r\n this.playableFrom = moment(this.localPlayableFrom);\r\n } else {\r\n this.playableFrom = undefined;\r\n }\r\n if (this.localPlayableTo && moment(this.localPlayableTo).isValid()) {\r\n this.playableTo = moment(this.localPlayableTo);\r\n } else {\r\n this.playableTo = undefined;\r\n }\r\n }\r\n}\r\n","import { GameTemplateDto } from '@/services/Api';\r\n\r\nexport class GameTemplatesModel {\r\n public games?: Array;\r\n public selectedGame!: string;\r\n\r\n constructor(model: Array) {\r\n this.games = model;\r\n this.selectedGame = this.games[0].id;\r\n }\r\n\r\n public getSelectedGameTemplate(): GameTemplateDto | undefined {\r\n return this.games?.find(g => g.id === this.selectedGame);\r\n }\r\n}\r\n","import { GameCustomizableElement } from '@/modules/game-play/games/game-engine-customizable-element';\r\nimport { i18n } from '@/plugins/i18n';\r\n\r\nexport class GameMainSettingsModel {\r\n public title!: string;\r\n public subtitle!: string;\r\n public logo!: string;\r\n public logoLink!: string;\r\n public professionQuestion!: string;\r\n public formHeader!: string;\r\n public emailLabel!: string;\r\n public nameLabel!: string;\r\n public termsLink!: string;\r\n public termsLinkText!: string;\r\n public termsAgreementText!: string;\r\n public startBtnLabel!: string;\r\n public instructionText!: string;\r\n public answerLimitFlag!: boolean;\r\n public answerLimitTime!: number;\r\n public gameCustomizableElements: GameCustomizableElement[] = [];\r\n public gameOverTitle!: string;\r\n public gameOverDescription!: string;\r\n public gameOverCV!: boolean;\r\n public gameOverEmailCV!: boolean;\r\n public gameOverNameLabel!: string;\r\n public gamerOverScoreLabel!: string;\r\n public gamerOverCVLabel!: string;\r\n public gamerOverCVUploadLabel!: string;\r\n public gamerOverCVUploadFileLabel!: string;\r\n public gamerOverCVButton!: string;\r\n public gamerOverBackButton!: string;\r\n \r\n constructor() {\r\n this.title = i18n.t('Modules.Runtime.Menu.Header').toString();\r\n this.subtitle = i18n.t('Modules.Runtime.Menu.HeaderSub').toString();\r\n this.logo = require('@/assets/cf-logo.svg');\r\n this.logoLink = 'https://www.codefusion.pl/';\r\n this.professionQuestion = i18n.t('Modules.Runtime.Menu.JobHeader').toString();\r\n this.formHeader = i18n.t('Modules.Runtime.Menu.FormHeader').toString();\r\n this.emailLabel = i18n.t('Modules.Runtime.Menu.EmailLabel').toString();\r\n this.nameLabel = i18n.t('Modules.Runtime.Menu.NameLabel').toString();\r\n this.termsLink = 'https://ingame.hr/termsandconditions/';\r\n this.termsAgreementText = i18n.t('Modules.Runtime.Menu.RodoConsent').toString();\r\n this.termsLinkText = i18n.t('Modules.Runtime.Menu.TermsConsditions').toString();\r\n this.startBtnLabel = i18n.t('Modules.Runtime.Menu.StartBtn').toString();\r\n this.instructionText = i18n.t('Modules.Runtime.Game.Modal.QuestionInfo').toString();\r\n this.answerLimitFlag = true;\r\n this.answerLimitTime = 15;\r\n this.gameCustomizableElements = [];\r\n this.gameOverTitle = 'GAME OVER';\r\n this.gameOverDescription = i18n.t('Modules.Runtime.Game.Modal.GameOverInfo').toString();\r\n this.gameOverCV = true;\r\n this.gameOverEmailCV = false;\r\n this.gameOverNameLabel = i18n.t('Modules.Runtime.Game.Modal.Name').toString();\r\n this.gamerOverScoreLabel = i18n.t('Modules.Runtime.Game.Modal.Score').toString();\r\n this.gamerOverCVLabel = i18n.t('Modules.Runtime.Game.Modal.AddCV').toString();\r\n this.gamerOverCVUploadLabel = i18n.t('Modules.Runtime.Game.Modal.UploadCV').toString();\r\n this.gamerOverCVUploadFileLabel = i18n.t('Modules.Runtime.Game.Modal.InsertCV').toString();\r\n this.gamerOverCVButton = i18n.t('Modules.Runtime.Game.Modal.CVButton').toString();\r\n this.gamerOverBackButton = i18n.t('Modules.Runtime.Game.Modal.BackBtn').toString();\r\n }\r\n}\r\n","import { Vue } from 'vue-property-decorator';\r\n\r\nexport default class FormHelper {\r\n public static scrollToNextError(view: Vue) {\r\n view.$nextTick(() => {\r\n const el = view.$el.querySelector('.v-input.error--text');\r\n if (el) {\r\n view.$vuetify.goTo(el as HTMLElement);\r\n }\r\n return;\r\n });\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport GameInstanceCustomizeForm from '@/modules/game-instance/components/GameInstanceCustomizeForm.vue';\r\nimport { GameInstanceModel } from '@/modules/game-instance/models/game-instance.model';\r\nimport { GameTemplatesModel } from '@/modules/game-instance/models/game-templates.model';\r\nimport { GameMainSettingsModel } from '@/modules/game-play/games/customize-settings.model';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { GameInstanceCreateInputModel, GameInstanceDto } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport UserApiService from '../services/game-instance-api.service';\r\nimport FormHelper from '@/modules/layout/components/forms/form-helper';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: { GameInstanceCustomizeForm }\r\n})\r\nexport default class GameInstanceCreate extends Vue {\r\n public instanceSettings: GameInstanceModel = {} as GameInstanceModel;\r\n public gameTemplates: GameTemplatesModel = {} as GameTemplatesModel;\r\n private loading = false;\r\n rules = {\r\n required: StringValidators.required\r\n };\r\n apiService = new UserApiService();\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Games'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: GameInstanceRoute.gameInstanceList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Create'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n this.instanceSettings = new GameInstanceModel({} as GameInstanceDto);\r\n this.instanceSettings.isPublic = false;\r\n const games = await this.apiService.getGameTemplatesForCreateDropdown();\r\n if (games) {\r\n this.gameTemplates = new GameTemplatesModel(games);\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n }\r\n\r\n async submit() {\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n FormHelper.scrollToNextError(this);\r\n return;\r\n }\r\n this.loading = true;\r\n\r\n const result = await this.apiService.createGameInstance(\r\n new GameInstanceCreateInputModel({\r\n gameTemplateId: this.gameTemplates.selectedGame,\r\n title: this.instanceSettings.gameTitle,\r\n isPublic: this.instanceSettings.isPublic,\r\n validUntil: null,\r\n settings: JSON.stringify(new GameMainSettingsModel())\r\n })\r\n );\r\n\r\n if (result) {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.addGameInstance, {\r\n instance_id: result.id,\r\n instance_title: result.title,\r\n template_id: result.gameTemplateId,\r\n template_title: result.gameTemplate?.title\r\n });\r\n\r\n await this.$router.push({\r\n name: GameInstanceRoute.gameInstanceEdit,\r\n params: { gameInstanceId: result.id }\r\n });\r\n }\r\n\r\n this.loading = false;\r\n NotificationService.success(i18n.t('Modules.GameInstance.Notifications.Success.GameCreated').toString());\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCreate.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCreate.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceCreate.vue?vue&type=template&id=d29f5b0a&scoped=true&\"\nimport script from \"./GameInstanceCreate.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceCreate.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameInstanceCreate.vue?vue&type=style&index=0&id=d29f5b0a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d29f5b0a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\ninstallComponents(component, {VBtn,VContainer,VForm})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(_vm.loading)?[_c('skeleton-loader-details')]:_c('v-form',{ref:\"form\"},[_c('v-row',{staticClass:\"pl-3\"},[_c('v-col',{staticClass:\"cf-view-title edit-game-instance-title\"},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Create.Title')))])],1),(_vm.instanceSettings)?_c('game-instance-customize-form',{attrs:{\"instanceSettings\":_vm.instanceSettings,\"gameTemplates\":_vm.gameTemplates,\"edit\":\"\"},on:{\"game-selected\":_vm.onGameSelected}}):_vm._e(),_c('game-instance-profession-assign',{attrs:{\"instanceSettings\":_vm.instanceSettings,\"gameInstanceId\":_vm.gameInstanceId}}),_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Edit.BrandingSectionTitle')}},[_c('game-instance-customize',{ref:\"instanceCustomize\",attrs:{\"customizeSettings\":_vm.gameMainSettings}}),(_vm.gameCustomizableElements)?_c('edit-card-section',{ref:\"gameCustomize\",attrs:{\"title\":_vm.$t('Modules.GameInstance.Customize.GameTypeCustomize.Label'),\"collapsible\":\"\",\"expanded\":false}},_vm._l((_vm.gameCustomizableElements),function(setting){return _c('div',{key:setting.name},[(setting.isCustomByUser || setting.isCustomByUser == undefined)?_c(_vm.getComponent(setting.type),_vm._b({key:setting.name,tag:\"component\",staticClass:\"mt-4\"},'component',{ item: setting, type: _vm.selectedGameTemplate },false)):_vm._e()],1)}),0):_vm._e()],1)],1),_c('div',{staticClass:\"save-btn-holder\"},[_c('v-btn',{staticClass:\"white--text float-right save-btn\",attrs:{\"elevation\":\"2\",\"color\":\"green\",\"width\":\"200\",\"loading\":_vm.submitting},on:{\"click\":_vm.submit}},[_vm._v(_vm._s(_vm.$t('Buttons.Save'))+\" \")]),_c('v-btn',{staticClass:\" white--text mr-2 float-right save-and-play-btn d-none d-lg-block\",attrs:{\"elevation\":\"2\",\"color\":\"green\",\"width\":\"200\",\"loading\":_vm.submitting},on:{\"click\":_vm.saveAndPlay}},[_vm._v(_vm._s(_vm.$t('Buttons.SaveAndPlay'))+\" \")])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t((\"Modules.GameInstance.Customize.Game.\" + _vm.type + \".\" + (_vm.item.name))))+\" (\"+_vm._s(this.item.width)+\"x\"+_vm._s(this.item.heigth)+\")\")]),_c('v-col',{staticClass:\"d-flex justify-space-between\",attrs:{\"cols\":\"5\"}},[_c('v-btn',{ref:\"uploadBtn\",on:{\"click\":_vm.openHtmlInput}},[_c('input',{ref:\"htmlInput\",attrs:{\"type\":\"file\",\"accept\":\"image/*\"},on:{\"change\":_vm.onUpload}}),_vm._v(\" \"+_vm._s(_vm.uploadBtnLabel)+\" \")]),(_vm.item.value != '')?_c('v-btn',{attrs:{\"color\":\"warning\",\"right\":\"\"},on:{\"click\":_vm.onClear}},[_vm._v(_vm._s(_vm.$t('Buttons.Reset')))]):_vm._e()],1)],1),(_vm.item.value != '')?_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.LogoPreview')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('img',{staticClass:\"img-holder\",style:({ height: _vm.item.heigth + 'px', width: _vm.item.width + 'px' }),attrs:{\"src\":_vm.item.value}})])],1):_vm._e(),_c('v-divider'),_c('ImageCropModal',{ref:\"cropModal\",attrs:{\"show\":_vm.showCrop,\"image\":_vm.tmpImage,\"heigth\":_vm.item.heigth,\"width\":_vm.item.width},on:{\"confirm\":_vm.confirmedCrop,\"cancel\":_vm.cancelCrop}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-dialog',{attrs:{\"persistent\":\"\",\"max-width\":\"400\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Customize.CropImage'))+\" \")]),_c('v-card-text',[_c('div',{staticClass:\"cropper-holder\"},[_c('vue-cropper',{ref:\"cropperElement\",attrs:{\"src\":_vm.image,\"alt\":\"Source Image\",\"dragMode\":'move',\"cropBoxResizable\":false,\"aspectRatio\":_vm.aspectRatio}}),_c('div',{staticClass:\"zoom-btn-holder d-flex flex-column ma-1\"},[_c('v-btn',{attrs:{\"color\":\"primary\",\"bottom\":\"\",\"right\":\"\",\"small\":\"\",\"fab\":\"\"},on:{\"click\":_vm.zoomIn}},[_c('v-icon',[_vm._v(\"mdi-plus\")])],1),_c('v-btn',{attrs:{\"color\":\"secondary\",\"bottom\":\"\",\"right\":\"\",\"small\":\"\",\"fab\":\"\"},on:{\"click\":_vm.zoomOut}},[_c('v-icon',[_vm._v(\"mdi-minus\")])],1)],1)],1)]),_c('v-card-actions',[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-btn',{staticClass:\"white--text\",attrs:{\"block\":\"\",\"color\":\"green\"},on:{\"click\":function($event){return _vm.confirm()}}},[_c('v-icon',[_vm._v(\"mdi-check\")]),_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Confirm'))+\" \")],1)],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-btn',{staticClass:\"btn-cancel\",attrs:{\"block\":\"\",\"text\":\"\"},on:{\"click\":function($event){return _vm.cancel()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Cancel'))+\" \")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport VueCropper, { VueCropperMethods } from 'vue-cropperjs';\r\nimport 'cropperjs/dist/cropper.css';\r\n\r\n@Component({ components: { VueCropper } })\r\nexport default class ImageCropModal extends Vue {\r\n @Prop() show!: boolean;\r\n @Prop() image!: string;\r\n @Prop() heigth!: number;\r\n @Prop() width!: number;\r\n get aspectRatio() {\r\n return this.width / this.heigth;\r\n }\r\n private zoomIn() {\r\n const cropper = (this.$refs.cropperElement as any) as VueCropperMethods;\r\n cropper.relativeZoom(0.1);\r\n }\r\n private zoomOut() {\r\n const cropper = (this.$refs.cropperElement as any) as VueCropperMethods;\r\n cropper.relativeZoom(-0.1);\r\n }\r\n private confirm() {\r\n const cropper = (this.$refs.cropperElement as any) as VueCropperMethods;\r\n const croppedImage = cropper.getCroppedCanvas({ width: this.width, height: this.heigth });\r\n const image = croppedImage.toDataURL();\r\n this.$emit('confirm', image);\r\n }\r\n private cancel() {\r\n this.$emit('cancel');\r\n }\r\n @Watch('image')\r\n imageChanged() {\r\n const cropper = (this.$refs.cropperElement as any) as VueCropperMethods;\r\n if (cropper) {\r\n cropper.replace(this.image);\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageCropModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageCropModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ImageCropModal.vue?vue&type=template&id=b34b2740&scoped=true&\"\nimport script from \"./ImageCropModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ImageCropModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ImageCropModal.vue?vue&type=style&index=0&id=b34b2740&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b34b2740\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VDialog,VIcon})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { GameCustomizableElement } from '@/modules/game-play/games/game-engine-customizable-element';\r\nimport { translate } from '@/plugins/i18n';\r\nimport NotificationService from '@/services/notification-service';\r\nimport ImageCropModal from './ImageCropModal.vue';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { GameType } from '@/services/Api';\r\n\r\n@Component({ components: { ImageCropModal } })\r\nexport default class ImageTypeCustomize extends Vue {\r\n @Prop() readonly item!: GameCustomizableElement;\r\n @Prop() readonly type!: GameType;\r\n inputValue = '';\r\n showCrop = false;\r\n tmpImage = '';\r\n mounted() {\r\n this.inputValue = this.item.value as string;\r\n }\r\n onUpload(event: any) {\r\n const file = event.target.files[0];\r\n\r\n const reader = new FileReader();\r\n reader.onloadend = () => {\r\n this.tmpImage = reader.result?.toString() ?? '';\r\n this.showCrop = true;\r\n };\r\n if (file.size > 5242880) {\r\n NotificationService.error(translate('Modules.GameInstance.Customize.Menu.FileSizeError'));\r\n return;\r\n }\r\n reader.readAsDataURL(file);\r\n }\r\n\r\n confirmedCrop(image: string) {\r\n console.log('confirmedCrop', image);\r\n this.item.value = image;\r\n this.cancelCrop();\r\n }\r\n cancelCrop() {\r\n this.showCrop = false;\r\n this.tmpImage = '';\r\n }\r\n\r\n onClear() {\r\n this.item.value = '';\r\n }\r\n openHtmlInput() {\r\n const element: HTMLElement = this.$refs.htmlInput as HTMLElement;\r\n element.click();\r\n }\r\n get uploadBtnLabel() {\r\n if (this.item.value == '') {\r\n return translate('Buttons.UploadImage');\r\n } else {\r\n return translate('Buttons.ChangeImage');\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageTypeCustomize.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageTypeCustomize.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ImageTypeCustomize.vue?vue&type=template&id=5f19d6df&\"\nimport script from \"./ImageTypeCustomize.vue?vue&type=script&lang=ts&\"\nexport * from \"./ImageTypeCustomize.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ImageTypeCustomize.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VDivider,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t((\"Modules.GameInstance.Customize.Game.\" + _vm.type + \".\" + (_vm.item.name)))))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-slider',{staticClass:\"align-center\",attrs:{\"max\":_vm.item.maxSize,\"min\":_vm.item.minSize,\"thumb-label\":\"always\",\"hide-details\":\"\",\"rules\":[_vm.rules.minNumber, _vm.rules.maxNumber]},on:{\"input\":_vm.emitInput},model:{value:(_vm.item.value),callback:function ($$v) {_vm.$set(_vm.item, \"value\", $$v)},expression:\"item.value\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { GameCustomizableElement } from '@/modules/game-play/games/game-engine-customizable-element';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { GameType } from '@/services/Api';\r\n@Component\r\nexport default class NumberTypeCustomize extends Vue {\r\n @Prop() readonly item!: GameCustomizableElement;\r\n @Prop() readonly type!: GameType;\r\n inputValue = 0;\r\n rules = {\r\n minNumber: (model: number) => StringValidators.minNumber(model, this.item.minSize),\r\n maxNumber: (model: number) => StringValidators.maxNumber(model, this.item.maxSize)\r\n };\r\n\r\n mounted() {\r\n this.inputValue = this.item.value as number;\r\n }\r\n\r\n emitInput(value: string) {\r\n this.item.value = value;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NumberTypeCustomize.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NumberTypeCustomize.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./NumberTypeCustomize.vue?vue&type=template&id=d9fed258&\"\nimport script from \"./NumberTypeCustomize.vue?vue&type=script&lang=ts&\"\nexport * from \"./NumberTypeCustomize.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSlider } from 'vuetify/lib/components/VSlider';\ninstallComponents(component, {VCol,VRow,VSlider})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t((\"Modules.GameInstance.Customize.Game.\" + _vm.type + \".\" + (_vm.item.name)))))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"value\":_vm.inputValue,\"rules\":[_vm.rules.minLength, _vm.rules.maxLength]},on:{\"input\":_vm.emitInput}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { GameCustomizableElement } from '@/modules/game-play/games/game-engine-customizable-element';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { GameType } from '@/services/Api';\r\n@Component\r\nexport default class TextTypeCustomize extends Vue {\r\n @Prop() readonly item!: GameCustomizableElement;\r\n @Prop() readonly type!: GameType;\r\n inputValue = '';\r\n rules = {\r\n minLength: (model: string) => StringValidators.minLength(model, this.item.minSize),\r\n maxLength: (model: string) => StringValidators.maxLength(model, this.item.maxSize)\r\n };\r\n\r\n mounted() {\r\n this.inputValue = this.item.value as string;\r\n }\r\n\r\n emitInput(value: string) {\r\n this.item.value = value;\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextTypeCustomize.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextTypeCustomize.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TextTypeCustomize.vue?vue&type=template&id=a858df0c&\"\nimport script from \"./TextTypeCustomize.vue?vue&type=script&lang=ts&\"\nexport * from \"./TextTypeCustomize.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('edit-card-section',{ref:\"menuCustomize\",attrs:{\"title\":_vm.$t('Modules.GameInstance.Customize.Menu.Label'),\"collapsible\":\"\"}},[_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.Title')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.title),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"title\", $$v)},expression:\"customizeSettings.title\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.Subtitle')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-textarea',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.subtitle),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"subtitle\", $$v)},expression:\"customizeSettings.subtitle\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.Logo')))]),_c('v-col',{staticClass:\"d-flex justify-space-between\",attrs:{\"cols\":\"5\"}},[_c('v-btn',{ref:\"uploadBtn\",on:{\"click\":_vm.openHtmlInput}},[_c('input',{ref:\"htmlInput\",attrs:{\"type\":\"file\",\"accept\":\"image/*\"},on:{\"change\":_vm.onUpload}}),_vm._v(\" \"+_vm._s(_vm.uploadBtnLabel)+\" \")]),(_vm.customizeSettings.logo != '')?_c('v-btn',{attrs:{\"color\":\"warning\",\"right\":\"\"},on:{\"click\":_vm.onClear}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Reset'))+\" \")]):_vm._e()],1)],1),(_vm.customizeSettings.logo != '')?_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.LogoPreview')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('div',{staticClass:\"logo-holder ma-2 pa-1\"},[_c('img',{attrs:{\"src\":_vm.customizeSettings.logo,\"width\":\"100%\"}})])])],1):_vm._e(),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.LogoLink')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required]},model:{value:(_vm.customizeSettings.logoLink),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"logoLink\", $$v)},expression:\"customizeSettings.logoLink\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.ProfessionQuestion')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.professionQuestion),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"professionQuestion\", $$v)},expression:\"customizeSettings.professionQuestion\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.FormHeader')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.formHeader),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"formHeader\", $$v)},expression:\"customizeSettings.formHeader\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.Emaillabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.emailLabel),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"emailLabel\", $$v)},expression:\"customizeSettings.emailLabel\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.NameLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.nameLabel),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"nameLabel\", $$v)},expression:\"customizeSettings.nameLabel\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.TermAndConditionsAgreementText')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-textarea',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength200]},model:{value:(_vm.customizeSettings.termsAgreementText),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"termsAgreementText\", $$v)},expression:\"customizeSettings.termsAgreementText\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.TermsAndConditionsLinkText')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.termsLinkText),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"termsLinkText\", $$v)},expression:\"customizeSettings.termsLinkText\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.TermsAndConditionsLinkLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.termsLink),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"termsLink\", $$v)},expression:\"customizeSettings.termsLink\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Menu.StartBtnLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength]},model:{value:(_vm.customizeSettings.startBtnLabel),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"startBtnLabel\", $$v)},expression:\"customizeSettings.startBtnLabel\"}})],1)],1)],1),_c('edit-card-section',{ref:\"questionCustomize\",attrs:{\"title\":_vm.$t('Modules.GameInstance.Customize.Question.Label'),\"collapsible\":\"\",\"expanded\":false}},[_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Question.InstructionTextLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.maxLength100]},model:{value:(_vm.customizeSettings.instructionText),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"instructionText\", $$v)},expression:\"customizeSettings.instructionText\"}})],1)],1),_c('v-row',{staticClass:\"mb-4\",attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Question.TimerCheckboxLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-checkbox',{attrs:{\"value\":_vm.customizeSettings.answerLimitFlag},model:{value:(_vm.customizeSettings.answerLimitFlag),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"answerLimitFlag\", $$v)},expression:\"customizeSettings.answerLimitFlag\"}})],1)],1),_c('v-expand-transition',[_c('v-row',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.customizeSettings.answerLimitFlag),expression:\"customizeSettings.answerLimitFlag\"}],attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.Question.SetSecondsLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-slider',{staticClass:\"align-center\",attrs:{\"value\":_vm.answerLimitTimeLocal,\"max\":\"100\",\"min\":\"2\",\"thumb-label\":\"always\",\"hide-details\":\"\"},on:{\"input\":_vm.setAnswerLimitTime}})],1)],1)],1)],1),_c('edit-card-section',{ref:\"gameOverCustomize\",attrs:{\"title\":_vm.$t('Modules.GameInstance.Customize.GameOver.Label'),\"collapsible\":\"\",\"expanded\":false}},[_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.Title')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.maxLength]},model:{value:(_vm.customizeSettings.gameOverTitle),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gameOverTitle\", $$v)},expression:\"customizeSettings.gameOverTitle\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.NameLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength],\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.customizeSettings.gameOverNameLabel),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gameOverNameLabel\", $$v)},expression:\"customizeSettings.gameOverNameLabel\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.ScoreLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength],\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.customizeSettings.gamerOverScoreLabel),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gamerOverScoreLabel\", $$v)},expression:\"customizeSettings.gamerOverScoreLabel\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.ShowCV')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-switch',{model:{value:(_vm.customizeSettings.gameOverCV),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gameOverCV\", $$v)},expression:\"customizeSettings.gameOverCV\"}})],1)],1),(_vm.customizeSettings.gameOverCV)?_c('div',[_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.CVLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength],\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.customizeSettings.gamerOverCVLabel),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gamerOverCVLabel\", $$v)},expression:\"customizeSettings.gamerOverCVLabel\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.CVUploadFileLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength],\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.customizeSettings.gamerOverCVUploadLabel),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gamerOverCVUploadLabel\", $$v)},expression:\"customizeSettings.gamerOverCVUploadLabel\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.CVUploadFileLabelInside')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength],\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.customizeSettings.gamerOverCVUploadFileLabel),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gamerOverCVUploadFileLabel\", $$v)},expression:\"customizeSettings.gamerOverCVUploadFileLabel\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.Description')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.maxLength100]},model:{value:(_vm.customizeSettings.gameOverDescription),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gameOverDescription\", $$v)},expression:\"customizeSettings.gameOverDescription\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.BackButton')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":[_vm.rules.maxLength100]},model:{value:(_vm.customizeSettings.gamerOverBackButton),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gamerOverBackButton\", $$v)},expression:\"customizeSettings.gamerOverBackButton\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.CVButton')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-text-field',{attrs:{\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.maxLength],\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.customizeSettings.gamerOverCVButton),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gamerOverCVButton\", $$v)},expression:\"customizeSettings.gamerOverCVButton\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"1\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Customize.GameOver.SendEmailCV')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('v-switch',{model:{value:(_vm.customizeSettings.gameOverEmailCV),callback:function ($$v) {_vm.$set(_vm.customizeSettings, \"gameOverEmailCV\", $$v)},expression:\"customizeSettings.gameOverEmailCV\"}})],1)],1)],1):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport GameInstanceCustomizeForm from '@/modules/game-instance/components/GameInstanceCustomizeForm.vue';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { GameMainSettingsModel } from '@/modules/game-play/games/customize-settings.model';\r\nimport EditCardSection from '@/modules/layout/components/EditCardSection.vue';\r\n\r\n@Component({\r\n components: { GameInstanceCustomizeForm }\r\n})\r\nexport default class GameInstanceCustomize extends Vue {\r\n @Prop() readonly customizeSettings!: GameMainSettingsModel;\r\n answerLimitTimeLocal = this.customizeSettings.answerLimitTime;\r\n submitting = false;\r\n rules = {\r\n required: StringValidators.required,\r\n minLength: (model: string) => StringValidators.minLength(model, 3),\r\n maxLength: (model: string) => StringValidators.maxLength(model, 50),\r\n maxLength100: (model: string) => StringValidators.maxLength(model, 100),\r\n maxLength200: (model: string) => StringValidators.maxLength(model, 200)\r\n };\r\n setAnswerLimitTime(value: number) {\r\n this.customizeSettings.answerLimitTime = value;\r\n }\r\n @Watch('customizeSettings.answerLimitFlag')\r\n setLimitless() {\r\n if (this.customizeSettings.answerLimitFlag === null) {\r\n this.customizeSettings.answerLimitTime = 0;\r\n } else {\r\n this.customizeSettings.answerLimitTime = 15;\r\n this.answerLimitTimeLocal = 15;\r\n }\r\n }\r\n onUpload(event: any) {\r\n const file = event.target.files[0];\r\n\r\n const reader = new FileReader();\r\n reader.onloadend = () => {\r\n this.customizeSettings.logo = reader.result!.toString();\r\n };\r\n if (file.size > 5242880) {\r\n NotificationService.error(translate('Modules.GameInstance.Customize.Menu.FileSizeError'));\r\n return;\r\n }\r\n reader.readAsDataURL(file);\r\n }\r\n onClear() {\r\n this.customizeSettings.logo = require('@/assets/cf-logo.svg');\r\n }\r\n openHtmlInput() {\r\n const element: HTMLElement = this.$refs.htmlInput as HTMLElement;\r\n element.click();\r\n }\r\n get uploadBtnLabel() {\r\n if (this.customizeSettings.logo == '') {\r\n return translate('Modules.GameInstance.Customize.Menu.LogoUploadButton');\r\n } else {\r\n return translate('Modules.GameInstance.Customize.Menu.LogoChangeButton');\r\n }\r\n }\r\n public expandAll() {\r\n (this.$refs.menuCustomize as EditCardSection)?.expand();\r\n (this.$refs.questionCustomize as EditCardSection)?.expand();\r\n (this.$refs.gameOverCustomize as EditCardSection)?.expand();\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCustomize.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCustomize.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceCustomize.vue?vue&type=template&id=03fd4b49&scoped=true&\"\nimport script from \"./GameInstanceCustomize.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceCustomize.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameInstanceCustomize.vue?vue&type=style&index=0&id=03fd4b49&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"03fd4b49\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VExpandTransition } from 'vuetify/lib/components/transitions';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSlider } from 'vuetify/lib/components/VSlider';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\ninstallComponents(component, {VBtn,VCheckbox,VCol,VExpandTransition,VRow,VSlider,VSwitch,VTextField,VTextarea})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Create.ProfessionCardTitle')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Create.ProfessionCardInfo')}},[(!_vm.loading)?_c('v-card-text',[_c('v-row',[_c('v-col',{staticClass:\"pl-0 pr-2\",attrs:{\"cols\":\"12\",\"lg\":\"7\",\"offset-lg\":\"1\"}},[_c('v-expansion-panels',{staticClass:\"game-edit-profession-list\",attrs:{\"focusable\":\"\"}},_vm._l((_vm.selectedProfessions()),function(profession){return _c('v-expansion-panel',{key:profession.id},[_c('v-expansion-panel-header',{staticClass:\"py-0 px-6\"},[_c('v-row',{attrs:{\"align\":\"center\"}},[_vm._v(\" \"+_vm._s(profession.displayTitle)+\" \"),(profession.isGlobal)?_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.Professions.Predefined')),expression:\"$t('Modules.Professions.Predefined')\"}],staticClass:\"ml-2\",attrs:{\"color\":\"primary\"}},[_vm._v(\"mdi-earth\")]):_vm._e(),_c('v-spacer'),_c('v-btn',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Buttons.Remove')),expression:\"$t('Buttons.Remove')\"}],staticClass:\"float-right mr-2\",attrs:{\"icon\":\"\",\"elevation\":\"0\",\"color\":\"#e8594f\"},on:{\"click\":function($event){return _vm.unassignProfession(profession.id)}}},[_c('v-icon',[_vm._v(\"mdi-delete-outline\")])],1)],1)],1),_c('v-expansion-panel-content',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-treeview',{attrs:{\"shaped\":\"\",\"hoverable\":\"\",\"open-on-click\":\"\",\"items\":profession.questions},scopedSlots:_vm._u([{key:\"prepend\",fn:function(ref){\nvar item = ref.item;\nreturn [(!item.children)?_c('v-icon',{domProps:{\"textContent\":_vm._s(\n (\"\" + (item.isCorrect\n ? 'mdi-checkbox-marked-circle-outline'\n : 'mdi-checkbox-blank-circle-outline'))\n )}}):_vm._e()]}}],null,true)})],1)],1)],1)}),1)],1)],1),_c('v-row',[_c('v-col',{staticClass:\"pl-0 pr-2 mt-1\",attrs:{\"cols\":\"12\",\"lg\":\"7\",\"offset-lg\":\"1\"}},[_c('v-row',[_c('v-col',[_c('v-autocomplete',{staticClass:\"game-edit-profession-select-input\",attrs:{\"items\":_vm.notSelectedProfessions(),\"item-text\":\"displayTitle\",\"solo\":\"\",\"item-value\":\"id\",\"placeholder\":_vm.$t('Modules.GameInstance.ProfessionSelectPlaceholder')},model:{value:(_vm.selectedProfession),callback:function ($$v) {_vm.selectedProfession=$$v},expression:\"selectedProfession\"}})],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"add-pro-btn white--text\",attrs:{\"color\":\"green\",\"elevation\":\"2\",\"disabled\":!_vm.notSelectedProfessions() || !_vm.notSelectedProfessions().length},on:{\"click\":function($event){return _vm.selectProfession()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Add'))+\" \")])],1)],1)],1)],1)],1):_vm._e()],1),(_vm.loading)?_c('v-card-text',{attrs:{\"align\":\"center\",\"justify\":\"center\"}},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"primary\"}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { AssignableProfessionDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { GameInstanceModel } from '../models/game-instance.model';\r\nimport GameApiService from '../services/game-instance-api.service';\r\n\r\n@Component\r\nexport default class GameInstanceProfessionAssign extends Vue {\r\n @Prop() readonly instanceSettings!: GameInstanceModel;\r\n @Prop() readonly gameInstanceId!: string;\r\n\r\n public loading = false;\r\n public professions?: AssignableProfessionDto[];\r\n public selectedProfession = '';\r\n private apiservice = new GameApiService();\r\n\r\n async mounted() {\r\n this.loading = true;\r\n\r\n const result = await this.apiservice.getAssignableProfessions(this.gameInstanceId);\r\n\r\n this.professions = result;\r\n if (this.instanceSettings.assignedProfessions.length == 0 && this.professions) {\r\n this.instanceSettings.assignedProfessions.push(this.professions[0].id);\r\n }\r\n this.instanceSettings.assignedProfessions = this.instanceSettings.assignedProfessions.filter(p =>\r\n this.professions?.some(e => e.id === p)\r\n );\r\n this.loading = false;\r\n }\r\n unassignProfession(professionId: string) {\r\n const index = this.instanceSettings.assignedProfessions?.indexOf(professionId);\r\n if (index >= 0) {\r\n this.instanceSettings.assignedProfessions?.splice(index, 1);\r\n }\r\n }\r\n selectedProfessions() {\r\n const filtered = this.professions?.filter(p => this.instanceSettings.assignedProfessions?.some(a => a === p.id));\r\n\r\n return filtered;\r\n }\r\n notSelectedProfessions() {\r\n const filtered = this.professions?.filter(\r\n p => this.instanceSettings.assignedProfessions?.some(a => a === p.id) === false\r\n );\r\n\r\n return filtered;\r\n }\r\n selectProfession() {\r\n if (!this.selectedProfession) {\r\n return;\r\n }\r\n const professionId = this.selectedProfession;\r\n const index = this.instanceSettings.assignedProfessions?.indexOf(professionId);\r\n if (index < 0) {\r\n this.instanceSettings.assignedProfessions?.push(professionId);\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceProfessionAssign.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceProfessionAssign.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceProfessionAssign.vue?vue&type=template&id=3be666ab&scoped=true&\"\nimport script from \"./GameInstanceProfessionAssign.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceProfessionAssign.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameInstanceProfessionAssign.vue?vue&type=style&index=0&id=3be666ab&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3be666ab\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VExpansionPanel } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelContent } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelHeader } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanels } from 'vuetify/lib/components/VExpansionPanel';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTreeview } from 'vuetify/lib/components/VTreeview';\ninstallComponents(component, {VAutocomplete,VBtn,VCardText,VCol,VExpansionPanel,VExpansionPanelContent,VExpansionPanelHeader,VExpansionPanels,VIcon,VProgressCircular,VRow,VSpacer,VTreeview})\n","export class SoundManager {\r\n static readonly shootName = 'shoot';\r\n static readonly shoot = require('@/assets/games/space-rescue/sounds/shoot.wav');\r\n static readonly killEnemyName = 'killEnemy';\r\n static readonly killEnemy = require('@/assets/games/space-rescue/sounds/invaderkilled.wav');\r\n static readonly explosionName = 'explosion';\r\n static readonly explosion = require('@/assets/games/space-rescue/sounds/explosion.wav');\r\n}\r\n","import { SoundManager } from '../Global/soundManager';\r\nexport class Bullet extends Phaser.Physics.Arcade.Sprite {\r\n readonly offsetToDestroyTop: number = -32;\r\n readonly offsetToDestroyBottom: number = this.scene.game.canvas.height + 32;\r\n\r\n fire(x: number, y: number, width: number, height: number, angle: number, speed: number) {\r\n this.body.reset(x, y);\r\n this.setActive(true);\r\n this.setVisible(true);\r\n this.setVelocityY(speed);\r\n this.displayWidth = width;\r\n this.displayHeight = height;\r\n this.angle = angle;\r\n\r\n this.scene.sound.add(SoundManager.shootName).play();\r\n }\r\n\r\n preUpdate(time: number, delta: number) {\r\n super.preUpdate(time, delta);\r\n\r\n if (this.y <= this.offsetToDestroyTop || this.y >= this.offsetToDestroyBottom) {\r\n this.setActive(false);\r\n this.setVisible(false);\r\n }\r\n }\r\n killBullet() {\r\n this.setActive(false);\r\n this.setVisible(false);\r\n this.body.reset(this.scene.game.canvas.width, 0);\r\n }\r\n}\r\n","export enum KeySide {\r\n left,\r\n right,\r\n stop\r\n}\r\n","import { Bullet } from '../Models/Bullet';\r\nimport { SoundManager } from '../Global/soundManager';\r\nexport class BulletGroup extends Phaser.Physics.Arcade.Group {\r\n bulletWidth: number;\r\n bulletHeight: number;\r\n\r\n constructor(scene: Phaser.Scene, bulletTexture: any, bulletWidth: number, bulletHeight: number) {\r\n super(scene.physics.world, scene);\r\n this.createMultiple({\r\n frameQuantity: 10,\r\n key: bulletTexture,\r\n active: false,\r\n visible: false,\r\n classType: Bullet\r\n });\r\n this.bulletWidth = bulletWidth;\r\n this.bulletHeight = bulletHeight;\r\n }\r\n deleteObject() {\r\n this.getChildren().forEach(function(value) {\r\n const val = value as Bullet;\r\n val.killBullet();\r\n });\r\n }\r\n fireBullet(x: number, y: number, angle: number, speed: number) {\r\n const bullet = this.getFirstDead(false);\r\n if (bullet) {\r\n bullet.fire(x, y, this.bulletWidth, this.bulletHeight, angle, speed);\r\n this.scene.sound.add(SoundManager.shootName).play();\r\n }\r\n }\r\n}\r\n","export class SpaceRescueVariables {\r\n static readonly shipSpriteName = '__SHIP';\r\n static readonly enemySpriteName = '__ENEMY';\r\n static readonly enemyBgSpriteName = '__ENEMYBG';\r\n static readonly starsSpriteName = '__STARS';\r\n static readonly bulletSpriteName = '__BULLET';\r\n static readonly enemyBulletSpriteName = '__ENEMYBULLET';\r\n static readonly heartSpriteName = '__HEART';\r\n static readonly LivesName = 'LivesNumber';\r\n}\r\n","import { BulletGroup } from './BulletGroup';\r\nimport { KeySide } from '../Models/KeySide';\r\nimport { SpaceRescueVariables } from '../Global/SpaceRescueVariables';\r\nimport { GameTheme } from '@/modules/game-play/models/game-theme';\r\nexport class Ship extends Phaser.Physics.Arcade.Sprite {\r\n bullets: BulletGroup;\r\n speed: number;\r\n maxspeed: number;\r\n texturess!: Phaser.Textures.Texture;\r\n playerBorderMax!: number;\r\n playerBorderMin!: number;\r\n constructor(\r\n scene: Phaser.Scene,\r\n x: number,\r\n y: number,\r\n speed: number,\r\n maxspeed: number,\r\n playerBorderMax: number,\r\n playerBorderMin: number,\r\n widthPlayer: number,\r\n heightPlayer: number,\r\n bulletWidth: number,\r\n bulletHeight: number,\r\n theme?: GameTheme\r\n ) {\r\n super(scene, x, y, SpaceRescueVariables.shipSpriteName);\r\n scene.physics.add.existing(this);\r\n this.speed = speed;\r\n this.maxspeed = speed;\r\n this.bullets = new BulletGroup(scene, SpaceRescueVariables.bulletSpriteName, bulletWidth, bulletHeight);\r\n scene.add.existing(this);\r\n this.displayHeight = heightPlayer;\r\n this.displayWidth = widthPlayer;\r\n if (theme?.playerAnimation) {\r\n scene.tweens.add({\r\n targets: this,\r\n y: this.y - 10,\r\n ease: 'Linear',\r\n duration: 500,\r\n repeat: -1,\r\n yoyo: true\r\n });\r\n }\r\n\r\n this.playerBorderMax = playerBorderMax;\r\n this.playerBorderMin = playerBorderMin;\r\n }\r\n\r\n //Move player with animation\r\n move(side: KeySide, delta: number) {\r\n switch (side) {\r\n case KeySide.right:\r\n if (this.body.x <= this.playerBorderMax) {\r\n if (this.body.velocity.x <= this.maxspeed) {\r\n this.setVelocityX((this.speed * delta));\r\n this.scene.tweens.add({\r\n targets: this,\r\n angle: { from: 0, to: 15 },\r\n ease: 'Linear',\r\n duration: 300\r\n });\r\n }\r\n } else {\r\n this.angle = 0;\r\n this.body.velocity.x = 0;\r\n }\r\n\r\n break;\r\n case KeySide.left:\r\n if (this.body.x >= this.playerBorderMin) {\r\n if (this.body.velocity.x >= -this.maxspeed) {\r\n this.setVelocityX((-this.speed * delta));\r\n this.scene.tweens.add({\r\n targets: this,\r\n angle: { from: 0, to: -15 },\r\n ease: 'Linear',\r\n duration: 300\r\n });\r\n }\r\n } else {\r\n this.angle = 0;\r\n this.body.velocity.x = 0;\r\n }\r\n\r\n break;\r\n case KeySide.stop:\r\n this.scene.tweens.killTweensOf(this);\r\n\r\n this.angle = 0;\r\n this.body.velocity.x = 0;\r\n break;\r\n }\r\n }\r\n}\r\n","export enum errorTypes {\r\n Create = 'Create',\r\n Update = 'Update',\r\n Undefined = 'Undefined',\r\n Add = 'Add',\r\n Get = 'Get'\r\n}\r\n","import { SpaceRescueVariables } from '../Global/SpaceRescueVariables';\r\nexport class Enemy extends Phaser.Physics.Arcade.Sprite {\r\n speedY: number;\r\n speedX: number;\r\n isDestroyed: boolean;\r\n enemyBg: any;\r\n rowPos!: number;\r\n colPos!: number;\r\n\r\n constructor(scene: Phaser.Scene, x: number, y: number) {\r\n super(scene, x, y, SpaceRescueVariables.enemySpriteName);\r\n this.speedY = 60;\r\n this.speedX = 120;\r\n scene.tweens.add({\r\n targets: this,\r\n ease: 'Linear',\r\n duration: 500,\r\n repeat: -1,\r\n yoyo: true,\r\n angle: { from: -10, to: 10 }\r\n });\r\n this.isDestroyed = false;\r\n if (scene.textures.get(SpaceRescueVariables.enemyBgSpriteName)) {\r\n this.enemyBg = this.scene.add.sprite(x, y, SpaceRescueVariables.enemyBgSpriteName);\r\n }\r\n this.enemyBg.setOrigin(0.5);\r\n this.scene.registry.events.on('speedUpEnemy', this.changeSpeed, this);\r\n }\r\n changeSpeed(parameter: any) {\r\n if (this.body) {\r\n this.speedX = this.speedX * parameter.speed;\r\n this.setVelocityX(this.speedX);\r\n }\r\n }\r\n createEnemy(x: number, y: number, row: number, col: number) {\r\n this.body.reset(x, y);\r\n this.setActive(true);\r\n this.setVisible(true);\r\n this.setVelocityY(this.speedY);\r\n if (this.speedX >= 0) {\r\n this.setVelocityX(this.speedX);\r\n } else {\r\n this.setVelocityX(this.speedX * -1);\r\n }\r\n this.setDepth(1);\r\n this.rowPos = row;\r\n this.colPos = col;\r\n }\r\n\r\n preUpdate(time: number, delta: number) {\r\n super.preUpdate(time, delta);\r\n this.enemyBg.x = this.body.x + 20;\r\n this.enemyBg.y = this.body.y + 20;\r\n if (this.y >= this.scene.game.canvas.height + 30) {\r\n this.setActive(false);\r\n this.setVisible(false);\r\n }\r\n }\r\n destroyAll() {\r\n this.enemyBg.destroy();\r\n this.destroy();\r\n }\r\n destroyObject() {\r\n if (this.isDestroyed) {\r\n return;\r\n }\r\n this.isDestroyed = true;\r\n this.scene.tweens.add({\r\n targets: this,\r\n ease: 'Linear',\r\n duration: 50,\r\n alpha: { from: 1, to: 0 },\r\n completeDelay: 50,\r\n onComplete: () => {\r\n this.enemyBg.destroy();\r\n this.destroy();\r\n }\r\n });\r\n }\r\n}\r\n","import { Enemy } from './Enemy';\r\nimport { SpaceRescueVariables } from '../Global/SpaceRescueVariables';\r\nimport { BulletGroup } from './BulletGroup';\r\nexport class EnemyGroup extends Phaser.Physics.Arcade.Group {\r\n bullets: BulletGroup;\r\n rightOrLeft: boolean;\r\n emiterEvent: any;\r\n enemyWidth!: number;\r\n enemyHeight!: number;\r\n enemyBgWidth!: number;\r\n enemyBgHeight!: number;\r\n rowCount!: number;\r\n colCount!: number;\r\n\r\n readonly leftSideOffset: number = 150;\r\n readonly upSideOffset: number = 150;\r\n readonly downSideOffsetCollision: number = 50;\r\n readonly redZoneStartOffset = 420; // The red zone is the zone where enemies can't shoot anymore, because they're too close to the player\r\n\r\n constructor(scene: Phaser.Scene, emiterEvent: any, width: number, height: number, bgWidth: number, bgHeigth: number, bulletWidth: number, bulletHeight: number) {\r\n super(scene.physics.world, scene);\r\n this.rightOrLeft = true;\r\n this.emiterEvent = emiterEvent;\r\n this.enemyHeight = height;\r\n this.enemyWidth = width;\r\n this.enemyBgHeight = bgHeigth;\r\n this.enemyBgWidth = bgWidth;\r\n this.bullets = new BulletGroup(scene, SpaceRescueVariables.enemyBulletSpriteName, bulletWidth, bulletHeight);\r\n }\r\n start(countX: number, countY: number) {\r\n this.createMultiple({\r\n quantity: countX * countY,\r\n key: SpaceRescueVariables.enemySpriteName,\r\n active: false,\r\n visible: false,\r\n classType: Enemy\r\n });\r\n }\r\n checkAllEnemy() {\r\n this.getChildren().forEach(value => {\r\n const val = value as Enemy;\r\n if (val.x >= this.scene.game.canvas.width - this.enemyWidth && this.rightOrLeft) {\r\n this.rightOrLeft = false;\r\n this.setToAll();\r\n } else if (val.x <= this.enemyWidth && !this.rightOrLeft) {\r\n this.rightOrLeft = true;\r\n this.setToAll();\r\n }\r\n if (val.y >= this.scene.game.canvas.height - this.downSideOffsetCollision) {\r\n this.emiterEvent.emit('UnderCollisionEnemy');\r\n }\r\n });\r\n }\r\n\r\n deleteObject() {\r\n this.children.each(val => {\r\n const val2 = val as Enemy;\r\n val2.destroyAll();\r\n });\r\n }\r\n setToAll() {\r\n this.getChildren().forEach(function(value) {\r\n const val = value as Enemy;\r\n val.speedX = val.speedX * -1;\r\n val.setVelocityX(val.speedX);\r\n });\r\n }\r\n\r\n createEnemys(xCount: number, yCount: number, speedX?: number, speedY?: number) {\r\n this.deleteObject();\r\n this.start(xCount, yCount);\r\n for (let q = 0; q < yCount; q++) {\r\n for (let w = 0; w < xCount; w++) {\r\n const enemy = this.getFirstDead(false);\r\n enemy.body.collideWorldBounds = true;\r\n enemy.displayHeight = this.enemyHeight;\r\n enemy.displayWidth = this.enemyWidth;\r\n enemy.enemyBg.displayHeight = this.enemyBgHeight;\r\n enemy.enemyBg.displayWidth = this.enemyBgWidth;\r\n if (speedX != undefined) {\r\n enemy.speedX = speedX;\r\n }\r\n if (speedY != undefined) {\r\n enemy.speedY = speedY;\r\n }\r\n this.rightOrLeft = true;\r\n if (enemy.speedX <= 0) {\r\n enemy.speedX *= -1;\r\n }\r\n // 1.3 value is responsible for free space between enemys\r\n const betweenSpaceMultiplier = 1.3;\r\n if (w <= (xCount - 1) / 2) {\r\n enemy.createEnemy(\r\n this.enemyWidth * w * betweenSpaceMultiplier + this.leftSideOffset,\r\n this.enemyHeight * q * betweenSpaceMultiplier + this.upSideOffset,\r\n q, w\r\n );\r\n } else if (w > (xCount - 1) / 2) {\r\n enemy.createEnemy(\r\n this.enemyWidth * w * betweenSpaceMultiplier + this.leftSideOffset,\r\n this.enemyHeight * q * betweenSpaceMultiplier + this.upSideOffset,\r\n q, w\r\n );\r\n } else {\r\n enemy.createEnemy(\r\n this.enemyWidth * w * betweenSpaceMultiplier + this.leftSideOffset,\r\n this.enemyHeight * q * betweenSpaceMultiplier + this.upSideOffset,\r\n q, w\r\n );\r\n }\r\n }\r\n }\r\n this.rowCount = yCount;\r\n this.colCount = xCount;\r\n }\r\n\r\n fireRandomBullet(speed: number): void {\r\n const validShooterIds = this.getValidShootingEnemyIds();\r\n\r\n if(validShooterIds.length > 0) {\r\n const randomShooterId = validShooterIds[Math.floor(Math.random() * validShooterIds.length)];\r\n const enemy = this.getChildren()[randomShooterId] as Enemy;\r\n this.bullets.fireBullet(enemy.x, enemy.y + enemy.height / 2, -90, speed);\r\n }\r\n }\r\n\r\n getValidShootingEnemyIds(): Array {\r\n const validShooters = new Array(); \r\n\r\n for (let x = 0; x < this.colCount; x++) {\r\n const validShooterIdInColumn = this.getValidShootingEnemyIdInColumn(x);\r\n\r\n if (validShooterIdInColumn != -1) {\r\n validShooters.push(validShooterIdInColumn);\r\n } \r\n }\r\n\r\n return validShooters;\r\n }\r\n\r\n getValidShootingEnemyIdInColumn(column: number): number {\r\n const colEnemies = this.getChildren().filter(object => (object as Enemy).colPos == column);\r\n\r\n for (let y = this.rowCount - 1; y >= 0; y--) {\r\n const enemy = colEnemies[y] as Enemy;\r\n\r\n if (enemy != undefined && !enemy.isDestroyed) { // Is valid enemy object && Is enemy alive\r\n if (enemy.y >= this.redZoneStartOffset) { // Is enemy in red zone\r\n return -1; // Ignore whole column\r\n } else {\r\n return this.getChildren().indexOf(enemy);\r\n } \r\n } \r\n }\r\n\r\n return -1;\r\n }\r\n}\r\n","export class Background extends Phaser.Physics.Arcade.Group {\r\n constructor(scene: Phaser.Scene, width: number, height: number) {\r\n super(scene.physics.world, scene);\r\n this.scene = scene;\r\n this.group = this.scene.add.group({\r\n defaultKey: '__STARS',\r\n maxSize: 100\r\n });\r\n this.scene.time.addEvent({\r\n delay: 200,\r\n loop: true,\r\n callback: () => {\r\n // Random position above screen\r\n const x = Phaser.Math.Between(0, this.scene.game.canvas.width);\r\n const y = Phaser.Math.Between(-64, 0);\r\n\r\n // Find first inactive sprite in group or add new sprite, and set position\r\n const stars = this.group.get(x, y);\r\n\r\n // None free or already at maximum amount of sprites in group\r\n if (!stars) return;\r\n\r\n this.activateStars(stars, width, height);\r\n }\r\n });\r\n }\r\n activateStars(stars: any, width: number, height: number) {\r\n stars\r\n .setActive(true)\r\n .setVisible(true)\r\n .setTint(Phaser.Display.Color.RandomRGB().color);\r\n stars.displayHeight = height;\r\n stars.displayWidth = width;\r\n }\r\n scene: Phaser.Scene;\r\n group: any;\r\n}\r\n","export class Levels {\r\n constructor(\r\n level: number,\r\n backgroundSpeed: number,\r\n enemyCountX: number,\r\n enemyCountY: number,\r\n enemySpeedX: number,\r\n enemySpeedY: number,\r\n speedUpEnemy: boolean,\r\n enemyCanShoot: boolean,\r\n enemyBulletSpeed = 250\r\n ) {\r\n this.level = level;\r\n this.backgroundSpeed = backgroundSpeed;\r\n this.enemyCountX = enemyCountX;\r\n this.enemyCountY = enemyCountY;\r\n this.enemySpeedX = enemySpeedX;\r\n this.enemySpeedY = enemySpeedY;\r\n this.speedUpEnemy = speedUpEnemy;\r\n this.enemyCanShoot = enemyCanShoot;\r\n this.enemyBulletSpeed = enemyBulletSpeed;\r\n }\r\n level!: number;\r\n backgroundSpeed!: number;\r\n enemyCountX!: number;\r\n enemyCountY!: number;\r\n enemySpeedX!: number;\r\n enemySpeedY!: number;\r\n speedUpEnemy!: boolean;\r\n enemyCanShoot!: boolean;\r\n enemyBulletSpeed!: number;\r\n}\r\n","import { Levels } from './Levels';\r\n//Class responsible for base game values\r\nexport class Base {\r\n constructor(lives: number) {\r\n this.values(lives);\r\n }\r\n backgroundSpeed!: number;\r\n playerPozX!: number;\r\n playerPozY!: number;\r\n playerSpeed!: number;\r\n playerMaxSpeed!: number;\r\n playerBorderMax!: number;\r\n playerBorderMin!: number;\r\n life!: number;\r\n levels: Array = [];\r\n enemySpeedMultiplicator!: number;\r\n enemySpeedBarier = [[7,1.3],[4,1.6]];\r\n values(lives: number) {\r\n this.backgroundSpeed = 6;\r\n this.playerPozX = 400;\r\n this.playerPozY = 575;\r\n this.life = lives;\r\n this.playerSpeed = 35;\r\n this.playerMaxSpeed = 1000;\r\n this.playerBorderMax = 755;\r\n this.playerBorderMin = 5;\r\n \r\n //Level #1\r\n this.levels.push(new Levels(1, 6, 4, 1, 100, 10, false, false));\r\n //Level #2\r\n this.levels.push(new Levels(2, 8, 8, 2, 150, 20, false, false));\r\n //Level #3\r\n this.levels.push(new Levels(3, 8, 3, 5, 170, 40, false, false));\r\n //Level #4\r\n this.levels.push(new Levels(4, 8, 7, 3, 300, 30, false, true, 250));\r\n //Level #5\r\n this.levels.push(new Levels(5, 14, 7, 4, 220, 40, true, true, 250));\r\n //Level #6\r\n this.levels.push(new Levels(6, 15, 8, 5, 220, 20, true, true, 300));\r\n //Level #7\r\n this.levels.push(new Levels(7, 16, 8, 5, 240, 30,true, true, 300));\r\n //Level #8\r\n this.levels.push(new Levels(8, 16, 8, 5, 320, 30, true, true, 350));\r\n //Level #9\r\n this.levels.push(new Levels(9, 17, 9, 5, 260, 35,true, true, 350));\r\n //Level #10\r\n this.levels.push(new Levels(10, 18, 10, 4, 300, 35, true, true, 400));\r\n //Level #11\r\n this.levels.push(new Levels(11, 18, 10, 5, 310, 36, true, true, 400));\r\n //Level #12\r\n this.levels.push(new Levels(12, 20, 10, 5, 320, 38, true, true, 400));\r\n //Level #13\r\n this.levels.push(new Levels(13, 24, 10, 5, 330, 40, true, true, 400));\r\n //Level #14\r\n this.levels.push(new Levels(14, 24, 10, 5, 340, 45, true, true, 500));\r\n //Level #15\r\n this.levels.push(new Levels(15, 24, 10, 5, 350, 50, true, true, 500));\r\n \r\n this.enemySpeedMultiplicator = 0.1;\r\n }\r\n}\r\n","import { GameTheme } from '@/modules/game-play/models/game-theme';\r\nimport { translate } from '@/plugins/i18n';\r\nexport class TextController {\r\n constructor(scene: Phaser.Scene, theme?: GameTheme) {\r\n this.theme = theme;\r\n this.scene = scene;\r\n this.textFont = `${theme?.fontSize ?? '20px'} ${theme?.font ?? 'Play'}`;\r\n this.textFontStart = `${theme?.fontStartSize ?? '80px'} ${theme?.font ?? 'VT323'}`;\r\n this.depth = 4;\r\n this.depthBox = 2;\r\n this.boxwidth = 500;\r\n this.boxheight = 400;\r\n this.enemyDestroyedText = this.scene.add.text(250, 15, '', {\r\n font: this.textFont,\r\n color: this.theme?.textColor ?? '#ffffff'\r\n });\r\n this.enemyDestroyedText = this.enemyDestroyedText.setShadow(0, 0, this.theme?.textShadowColor ?? '#21ecf3', 4);\r\n this.levelText = this.scene.add.text(450, 15, '', {\r\n font: this.textFont,\r\n color: this.theme?.textColor ?? '#ffffff'\r\n });\r\n console.log('levelText', this.theme?.textColor);\r\n\r\n this.levelText = this.levelText.setShadow(0, 0, this.theme?.textShadowColor ?? '#21ecf3', 4);\r\n this.pointsText = this.scene.add.text(575, 15, '', {\r\n font: this.textFont,\r\n color: this.theme?.textColor ?? '#ffffff'\r\n });\r\n this.pointsText = this.pointsText.setShadow(0, 0, this.theme?.textShadowColor ?? '#21ecf3', 4);\r\n this.start = this.scene.add.text(575, 400, '', { font: this.textFont, color: this.theme?.textColor ?? '#ffffff' });\r\n this.start = this.start.setShadow(0, 0, this.theme?.textShadowColor ?? '#21ecf3', 4);\r\n }\r\n\r\n theme?: GameTheme;\r\n textFont: string;\r\n textFontStart: string;\r\n scene: Phaser.Scene;\r\n depth: number;\r\n depthBox: number;\r\n pauseText!: Phaser.GameObjects.Text;\r\n pauseBox!: Phaser.GameObjects.GameObject;\r\n boxwidth: number;\r\n boxheight: number;\r\n enemyDestroyedText: Phaser.GameObjects.Text;\r\n levelText: Phaser.GameObjects.Text;\r\n pointsText: Phaser.GameObjects.Text;\r\n start: Phaser.GameObjects.Text;\r\n\r\n //Run text in center screen and then start physic\r\n centerText(text: string | undefined, isEnd: boolean) {\r\n if (text == undefined) {\r\n return;\r\n }\r\n const temp = text;\r\n const startText = this.scene.add\r\n .text(this.scene.game.canvas.width / 2, this.scene.game.canvas.height / 2, '', {\r\n font: this.textFontStart,\r\n color: this.theme?.announcementColor ?? '#ffffffaa'\r\n })\r\n .setOrigin(0.5);\r\n startText.setText(temp).setDepth(this.depth);\r\n this.scene.tweens.add({\r\n targets: startText,\r\n ease: 'Linear',\r\n duration: 700,\r\n alpha: { from: 0, to: 1 },\r\n y: { from: this.scene.game.canvas.height / 2 + 50, to: this.scene.game.canvas.height / 2 - 50 },\r\n completeDelay: 20,\r\n onComplete: () => {\r\n this.scene.tweens.add({\r\n targets: startText,\r\n ease: 'Linear',\r\n duration: 700,\r\n alpha: { from: 1, to: 0 },\r\n y: { from: this.scene.game.canvas.height / 2 - 50, to: this.scene.game.canvas.height / 2 - 150 },\r\n completeDelay: 20,\r\n onComplete: () => {\r\n\r\n if (isEnd) {\r\n this.scene.registry.events.emit('endGameDialog');\r\n } else {\r\n startText.destroy();\r\n this.scene.registry.events.emit('unlockAll');\r\n this.scene.registry.events.emit('backToOldSpeed');\r\n this.scene.registry.events.emit('textControllerReplay');\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n //Menu Update\r\n updateTimePoints(pionts: number, level: number, enemyDestroyed: number, maxEnemy: number) {\r\n this.enemyDestroyedText.setText(translate('Modules.Runtime.Game.Score') + pionts);\r\n this.levelText.setText(translate('Modules.Runtime.Game.Level') + level);\r\n this.pointsText.setText(translate('Modules.Runtime.Game.EnemiesKilled') + enemyDestroyed + '/' + maxEnemy);\r\n }\r\n\r\n //Menu Update\r\n updateTimeDistance(pionts: number, level: number, distance: number) {\r\n this.enemyDestroyedText.setText(translate('Modules.Runtime.Game.Score') + pionts).depth = 10;\r\n this.levelText.setText(translate('Modules.Runtime.Game.Level') + level).depth = 10;\r\n const kilometers: number = Math.round(distance * 10) / 10;\r\n this.pointsText.setText(translate('Modules.Runtime.Game.Distance') + ' ' + kilometers + ' km').depth = 10;\r\n }\r\n}\r\n","import { errorTypes } from './errorTypes';\r\nimport NotificationService from '@/services/notification-service';\r\nexport class ErrorControl {\r\n static createConsoleError(errorType: errorTypes, errorMessage: string, showNotofocation: boolean) {\r\n if (showNotofocation) {\r\n this.createNotificationError(errorType, errorMessage);\r\n } else {\r\n console.error('Error ' + errorType + ': ' + errorMessage);\r\n }\r\n }\r\n static createNotificationError(errorType: errorTypes, errorMessage: string) {\r\n NotificationService.error('Error ' + errorType + ': ' + errorMessage);\r\n }\r\n static getType() {\r\n return errorTypes;\r\n }\r\n}\r\n","import { GameCustomizableElement } from '@/modules/game-play/games/game-engine-customizable-element';\r\nimport { ErrorControl } from '../control/errorControl';\r\nexport class LifeSystem {\r\n protected static heartData: any;\r\n protected static lives: Phaser.GameObjects.Group;\r\n\r\n static initialize(\r\n scene: Phaser.Scene,\r\n spriteName: string,\r\n maxLife: number,\r\n customziableTypes?: GameCustomizableElement[]\r\n ) {\r\n this.getCustomData(spriteName, customziableTypes);\r\n this.createGroup(scene, spriteName, maxLife);\r\n\r\n //add to group live images on certain positin and scale\r\n if (this.heartData != undefined) {\r\n for (let q = 0; q < maxLife; q++) {\r\n const tempImage = scene.add.image(40 * q + 30, 25, spriteName).setDepth(1);\r\n tempImage.displayHeight = this.heartData.heigth;\r\n tempImage.displayWidth = this.heartData.width;\r\n this.lives.add(tempImage);\r\n }\r\n } else {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Add, 'group live', false);\r\n return false;\r\n }\r\n return true;\r\n }\r\n static getCustomData(spriteName: string, customziableTypes?: GameCustomizableElement[]) {\r\n //Get all data\r\n if (customziableTypes) {\r\n this.heartData = customziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == spriteName) {\r\n return entity;\r\n }\r\n });\r\n if (!this.heartData) {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Get, 'heartData', true);\r\n }\r\n } else {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Get, 'Custom data', true);\r\n }\r\n return true;\r\n }\r\n\r\n static createGroup(scene: Phaser.Scene, spriteName: string, maxLife: number) {\r\n //create group, set it max vlaue and default key image\r\n this.lives = scene.add.group({\r\n defaultKey: spriteName,\r\n active: true,\r\n maxSize: maxLife\r\n });\r\n }\r\n static haveMoreLife() {\r\n if (this.lives.getTotalUsed() - 1 <= 0) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n static lostLife() {\r\n const lastLife = this.lives.getLast(true);\r\n if (lastLife != null) {\r\n lastLife.destroy();\r\n } else {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Update, 'Cant destroy life', true);\r\n }\r\n }\r\n}\r\n","import { GameCustomizableElement } from '@/modules/game-play/games/game-engine-customizable-element';\r\nimport { ErrorControl } from '../control/errorControl';\r\nexport class AudioSystem {\r\n static initialize(scene: Phaser.Scene, audioNamespaceClass: any, overridenSounds?: { [id: string]: string }) {\r\n if (!overridenSounds) {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Get, 'overridenSounds', false);\r\n return false;\r\n }\r\n const arrayNames = audioNamespaceClass.getVariableName();\r\n const arrayPath = audioNamespaceClass.getVariablePath();\r\n const totalProps = Object.keys(overridenSounds).length;\r\n for (let q = 0; q <= totalProps; q++) {\r\n const tempPath = arrayPath[q];\r\n scene.load.audio(arrayNames[q], overridenSounds[arrayNames[q]] ?? tempPath);\r\n }\r\n return true;\r\n }\r\n static addAudio(scene: Phaser.Scene, audioNamespaceClass: any, overridenSounds?: { [id: string]: string }) {\r\n if (!overridenSounds) {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Get, 'overridenSounds', false);\r\n return false;\r\n }\r\n const arrayNames = audioNamespaceClass.getVariableName();\r\n const totalProps = Object.keys(overridenSounds).length;\r\n for (let q = 0; q <= totalProps; q++) {\r\n scene.sound.add(arrayNames[q]);\r\n }\r\n return true;\r\n }\r\n static playAudio(scene: Phaser.Scene, name: string) {\r\n const audio = scene.sound.get(name);\r\n if (!audio) {\r\n return false;\r\n }\r\n if (!audio.isPlaying) {\r\n audio.play();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n static checkAudioStatus(scene: Phaser.Scene, name: string) {\r\n const audio = scene.sound.get(name);\r\n if (!audio) {\r\n return false;\r\n }\r\n if (audio.isPlaying) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n","import { TextController } from '@/modules/game-play/games/framework/helpers/textcontroller';\r\nimport { LifeSystem } from '@/modules/game-play/games/framework/engines/life';\r\nimport { AudioSystem } from '@/modules/game-play/games/framework/engines/audio';\r\nimport { GameTheme } from '@/modules/game-play/models/game-theme';\r\nimport { ErrorControl } from '@/modules/game-play/games/framework/control/errorControl';\r\nimport {\r\n GameCustomizableElement,\r\n GameCustomizableElementType\r\n} from '@/modules/game-play/games/game-engine-customizable-element';\r\n\r\nexport class EngineController {\r\n protected static textController: TextController;\r\n protected static currentScene: Phaser.Scene;\r\n protected static theme?: GameTheme;\r\n protected static CustomziableTypes?: GameCustomizableElement[];\r\n protected static audioNamespaceClass?: Class;\r\n\r\n static initialize(scene: Phaser.Scene, theme?: GameTheme, customziableTypes?: GameCustomizableElement[]): void {\r\n this.currentScene = scene;\r\n this.theme = theme;\r\n this.CustomziableTypes = customziableTypes;\r\n this.textController = new TextController(this.currentScene, this.theme);\r\n }\r\n\r\n static createText(text: string | undefined, isEnd: boolean) {\r\n this.textController.centerText(text, isEnd);\r\n }\r\n\r\n static updateTimePoints(pionts: number, level: number, enemyDestroyed: number, maxEnemy: number) {\r\n this.textController.updateTimePoints(pionts, level, enemyDestroyed, maxEnemy);\r\n }\r\n\r\n static updateTimeDistance(pionts: number, level: number, distance: number) {\r\n this.textController.updateTimeDistance(pionts, level, distance);\r\n }\r\n static createAudioSystem(audioNamespaceClass: any) {\r\n const result = AudioSystem.initialize(this.currentScene, audioNamespaceClass, this.theme?.overridenSounds);\r\n if (!result) {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Create, 'Audio system', true);\r\n }\r\n this.audioNamespaceClass = audioNamespaceClass;\r\n }\r\n static loadAudioSystem() {\r\n const result = AudioSystem.addAudio(this.currentScene, this.audioNamespaceClass, this.theme?.overridenSounds);\r\n if (!result) {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Create, 'load Audio System', true);\r\n }\r\n }\r\n static createLifeSystem(spriteName: string, maxLife: number) {\r\n const result = LifeSystem.initialize(this.currentScene, spriteName, maxLife, this.CustomziableTypes);\r\n if (!result) {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Create, 'life system', true);\r\n }\r\n }\r\n\r\n static lifeLost(emptyPool: boolean) {\r\n const result = LifeSystem.haveMoreLife();\r\n //True if continue game\r\n this.showTextLostLife(result, emptyPool);\r\n return result;\r\n }\r\n\r\n static playAudio(name: string) {\r\n const result = AudioSystem.playAudio(this.currentScene, name);\r\n if (!result) {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Get, 'Audio doesnt exist', true);\r\n }\r\n }\r\n\r\n static isPlaying(name: string) {\r\n const result = AudioSystem.checkAudioStatus(this.currentScene, name);\r\n return result;\r\n }\r\n\r\n static showTextLostLife(status: boolean, emptyPool: boolean) {\r\n if (this.CustomziableTypes) {\r\n LifeSystem.lostLife();\r\n let text: string | undefined = '';\r\n if (!emptyPool) {\r\n text = this.CustomziableTypes.find((val: { name: string }) => val.name == 'AnswerTextWrong')?.value.toString();\r\n } else {\r\n text = this.CustomziableTypes.find((val: { name: string }) => val.name == 'NoMoreQuestions')?.value.toString();\r\n }\r\n this.createText(text, status);\r\n return true;\r\n } else {\r\n ErrorControl.createConsoleError(ErrorControl.getType().Undefined, 'CustomTypes', false);\r\n return false;\r\n }\r\n }\r\n}\r\n","import 'phaser';\r\nimport { GameTriggerType } from '../game-engine-base';\r\nimport { Ship } from './Models/shipcontroller';\r\nimport { KeySide } from './Models/KeySide';\r\nimport { EnemyGroup } from './Models/EnemyGroup';\r\nimport { Background } from './Models/background';\r\nimport { Base } from './Global/base-controll-class';\r\nimport { SoundManager } from './Global/soundManager';\r\nimport { SpaceRescueVariables } from './Global/SpaceRescueVariables';\r\nimport { GameCustomizableElement, GameCustomizableElementType } from '../game-engine-customizable-element';\r\nimport { GameTheme } from '../../models/game-theme';\r\nimport { EngineController } from '@/modules/game-play/games/framework/engine-controller';\r\nimport { Enemy } from './Models/Enemy';\r\n\r\n//Game Main class\r\nexport class GameScene extends Phaser.Scene {\r\n constructor(\r\n protected askQuestion: () => void,\r\n protected gameOverDialog: (score: number) => void,\r\n protected saveGameLog: (score: number, trigger: GameTriggerType) => void,\r\n getCustomziableTypes: GameCustomizableElement[],\r\n protected theme?: GameTheme\r\n ) {\r\n super({\r\n key: 'Game',\r\n physics: {\r\n default: 'arcade',\r\n arcade: {\r\n debug: false,\r\n gravity: { y: 0 }\r\n }\r\n }\r\n });\r\n this.getCustomziableTypes = getCustomziableTypes;\r\n }\r\n\r\n getCustomziableTypes: any;\r\n level!: number;\r\n ship!: Ship;\r\n baseControllClass!: Base;\r\n background!: Background;\r\n enemys!: EnemyGroup;\r\n image: any;\r\n emiterEvent: any;\r\n lives!: Phaser.GameObjects.Group;\r\n killedEnemy!: number;\r\n points!: number;\r\n lastSpeedBoost = 0;\r\n allSprites!: GameCustomizableElement[];\r\n allText!: GameCustomizableElement[];\r\n cursorKeys!: any;\r\n deltaTime!: number;\r\n blockKey = false;\r\n\r\n //Init all parametrs\r\n init(params: any): void {\r\n this.killedEnemy = 0;\r\n this.points = 0;\r\n this.level = 1;\r\n }\r\n\r\n //Load all texture before launch game\r\n preload() {\r\n //Inicializate Game Framework\r\n EngineController.initialize(this, this.theme, this.getCustomziableTypes);\r\n\r\n this.physics.world.setFPS(60);\r\n this.physics.world.setBoundsCollision();\r\n\r\n this.allSprites = this.getCustomziableTypes.filter(\r\n (entity: { type: GameCustomizableElementType }) => entity.type == GameCustomizableElementType.Image\r\n );\r\n this.allText = this.getCustomziableTypes.filter(\r\n (entity: { type: GameCustomizableElementType }) => entity.type == GameCustomizableElementType.Text\r\n );\r\n\r\n //Load all sprite texture\r\n\r\n this.allSprites.forEach(element => {\r\n if (element.value != null || element.value != '') {\r\n this.textures.addBase64(element.name, element.value);\r\n }\r\n });\r\n\r\n //Load audio by AudioManager class\r\n const shootSound = this.theme?.overridenSounds[SoundManager.shootName] ?? SoundManager.shoot;\r\n const killEnemySound = this.theme?.overridenSounds[SoundManager.killEnemyName] ?? SoundManager.killEnemy;\r\n const explosionSound = this.theme?.overridenSounds[SoundManager.explosionName] ?? SoundManager.explosion;\r\n this.load.audio(SoundManager.shootName, shootSound);\r\n this.load.audio(SoundManager.killEnemyName, killEnemySound);\r\n this.load.audio(SoundManager.explosionName, explosionSound);\r\n\r\n //Load scene data\r\n this.data.set('pause', false);\r\n }\r\n\r\n //Main function scene to create GameObjects\r\n create() {\r\n this.registry.events.on('textControllerReplay', this.textControllerReplay, this);\r\n //initialize base class\r\n const liveData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == SpaceRescueVariables.LivesName) {\r\n return entity;\r\n }\r\n });\r\n this.baseControllClass = new Base(liveData.value);\r\n\r\n //create ship and asigns it position and speed\r\n const shipData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == SpaceRescueVariables.shipSpriteName) {\r\n return entity;\r\n }\r\n });\r\n\r\n //Get all data abount Bullet\r\n const bulletData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == SpaceRescueVariables.bulletSpriteName) {\r\n return entity;\r\n }\r\n });\r\n this.ship = new Ship(\r\n this,\r\n this.baseControllClass.playerPozX,\r\n this.baseControllClass.playerPozY,\r\n this.baseControllClass.playerSpeed,\r\n this.baseControllClass.playerMaxSpeed,\r\n this.baseControllClass.playerBorderMax,\r\n this.baseControllClass.playerBorderMin,\r\n shipData.width,\r\n shipData.heigth,\r\n bulletData.width,\r\n bulletData.heigth,\r\n this.theme\r\n );\r\n\r\n //create bacgroun for this scene\r\n const starsData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == SpaceRescueVariables.starsSpriteName) {\r\n return entity;\r\n }\r\n });\r\n this.background = new Background(this, starsData.width, starsData.heigth);\r\n\r\n //initialize emiter used on scene\r\n this.emiterEvent = new Phaser.Events.EventEmitter();\r\n\r\n //sets behavior if UnderCollisionEnemy string is emited\r\n this.emiterEvent.on('UnderCollisionEnemy', this.underCollisionEnemy, this);\r\n\r\n //Event on end\r\n this.registry.events.on('endGameDialog', this.endGameDialog, this);\r\n\r\n //initialize enemy class with scen and emiter used by it\r\n const enemyData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == SpaceRescueVariables.enemySpriteName) {\r\n return entity;\r\n }\r\n });\r\n const enemyBgData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == SpaceRescueVariables.enemyBgSpriteName) {\r\n return entity;\r\n }\r\n });\r\n const enemyBulletData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == SpaceRescueVariables.enemyBulletSpriteName) {\r\n return entity;\r\n }\r\n });\r\n this.enemys = new EnemyGroup(\r\n this,\r\n this.emiterEvent,\r\n enemyData.width,\r\n enemyData.heigth,\r\n enemyBgData.width,\r\n enemyBgData.heigth,\r\n enemyBulletData.width,\r\n enemyBulletData.heigth\r\n );\r\n\r\n //create enemys\r\n this.createEnemy();\r\n\r\n //Collider player with enemy\r\n this.physics.add.overlap(this.ship, this.enemys, (bullet: any, enemy: any) => {\r\n if (!this.data.get('pause')) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.makeQuestion();\r\n this.sound.add(SoundManager.explosionName).play();\r\n }\r\n });\r\n\r\n //Add event to fire bullets on SPACE\r\n this.input.keyboard.on('keydown-SPACE', (pointer: any) => {\r\n if (!this.data.get('pause')) {\r\n this.ship.bullets.fireBullet(this.ship.x, this.ship.y - 25, 90, -300);\r\n }\r\n });\r\n\r\n EngineController.createLifeSystem(SpaceRescueVariables.heartSpriteName, this.baseControllClass.life);\r\n\r\n //Show text on start\r\n this.physics.pause();\r\n this.data.set('pause', true);\r\n EngineController.createText(\r\n this.allText.find((val: { name: string }) => val.name == 'StartText')?.value.toString(),\r\n false\r\n );\r\n\r\n // Check the Registry and hit our callback every time the 'score' value is updated\r\n this.registry.events.on('AnswerEvent', this.respondAnswer, this);\r\n\r\n this.cursorKeys = this.input.keyboard.createCursorKeys();\r\n\r\n this.saveGameLog(1, GameTriggerType.GameStart);\r\n\r\n //Create time\r\n this.time.addEvent({\r\n delay: 1000,\r\n loop: true,\r\n callback: () => {\r\n const isGamePaused: boolean = this.data.get('pause');\r\n const isShootingEnabled = this.baseControllClass.levels[this.level - 1].enemyCanShoot;\r\n const noEnemyBulletsAreOnScreen = this.enemys.bullets.getChildren().find(object => object.active) == undefined;\r\n \r\n if(!isGamePaused && isShootingEnabled && noEnemyBulletsAreOnScreen) {\r\n const bulletSpeed = this.baseControllClass.levels[this.level - 1].enemyBulletSpeed;\r\n this.enemys.fireRandomBullet(bulletSpeed);\r\n } \r\n }\r\n });\r\n }\r\n\r\n //Crate and dipaly lives\r\n createLives(): void {\r\n //Get all data\r\n const heartData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == SpaceRescueVariables.heartSpriteName) {\r\n return entity;\r\n }\r\n });\r\n\r\n //create group, set it max vlaue and default key image\r\n this.lives = this.add.group({\r\n defaultKey: SpaceRescueVariables.heartSpriteName,\r\n active: true,\r\n maxSize: this.baseControllClass.life\r\n });\r\n\r\n //add to group live images on certain positin and scale\r\n for (let q = 0; q < this.baseControllClass.life; q++) {\r\n const tempImage = this.add.image(40 * q + 30, 25, SpaceRescueVariables.heartSpriteName);\r\n tempImage.displayHeight = heartData.heigth;\r\n tempImage.displayWidth = heartData.width;\r\n this.lives.add(tempImage);\r\n }\r\n }\r\n\r\n //Update function scene\r\n update(time: number, delta: number): void {\r\n this.deltaTime = delta;\r\n\r\n //check if game is paused\r\n if (!this.data.get('pause')) {\r\n this.points += 5;\r\n //gets keys presed by player\r\n\r\n //Manage keyboard and player movement\r\n if (this.cursorKeys.left.isDown && !this.blockKey) {\r\n this.ship.move(KeySide.left, delta);\r\n this.blockKey = true;\r\n } else if (this.cursorKeys.right.isDown && !this.blockKey) {\r\n this.ship.move(KeySide.right, delta);\r\n this.blockKey = true;\r\n } else if (!this.blockKey) {\r\n this.ship.move(KeySide.stop, delta);\r\n this.blockKey = true;\r\n } else {\r\n this.blockKey = false;\r\n }\r\n\r\n //check if enemy hit the screen border\r\n this.enemys.checkAllEnemy();\r\n\r\n //Check all enemys are killed\r\n this.checkAllEnemyAreKiled();\r\n }\r\n\r\n //Background Controller\r\n this.updateBackgroun();\r\n\r\n //Update bar\r\n this.updatePlayersScoreUI();\r\n }\r\n\r\n //Check all enemys are killed\r\n checkAllEnemyAreKiled(): void {\r\n const totalUsed = this.enemys.getTotalUsed();\r\n\r\n if (totalUsed == 0 && !this.data.get('pause')) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.level += 1;\r\n this.nextLevel(this.allText.find((val: { name: string }) => val.name == 'NextLevel')?.value.toString() + \" \" + this.level,true);\r\n } else {\r\n if (this.checkLevelReturn()) {\r\n if (this.baseControllClass.levels[this.level - 1].speedUpEnemy) {\r\n this.sendSpeedUpNotification();\r\n }\r\n } else {\r\n if (this.baseControllClass.levels[this.baseControllClass.levels.length - 1].speedUpEnemy) {\r\n this.sendSpeedUpNotification();\r\n }\r\n }\r\n }\r\n }\r\n sendSpeedUpNotification() {\r\n const totalUsed = this.enemys.getTotalUsed();\r\n let lastSpeed = 0;\r\n this.baseControllClass.enemySpeedBarier.forEach(val => {\r\n if (totalUsed <= val[0]) {\r\n lastSpeed = val[1];\r\n }\r\n });\r\n if (lastSpeed > this.lastSpeedBoost) {\r\n this.registry.events.emit('speedUpEnemy', { speed: lastSpeed });\r\n this.lastSpeedBoost = lastSpeed;\r\n }\r\n }\r\n //Background Controller\r\n updateBackgroun(): void {\r\n if (this.checkLevelReturn()) {\r\n Phaser.Actions.IncY(\r\n this.background.group.getChildren(),\r\n this.baseControllClass.levels[this.level - 1].backgroundSpeed\r\n );\r\n } else {\r\n Phaser.Actions.IncY(\r\n this.background.group.getChildren(),\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed\r\n );\r\n }\r\n this.background.group.children.iterate((alien: any) => {\r\n if (alien.y > this.game.canvas.height) {\r\n this.background.group.killAndHide(alien);\r\n }\r\n });\r\n }\r\n\r\n //Update bar\r\n updatePlayersScoreUI(): void {\r\n if (this.checkLevelReturn()) {\r\n EngineController.updateTimePoints(\r\n this.points,\r\n this.level,\r\n this.killedEnemy,\r\n this.baseControllClass.levels[this.level - 1].enemyCountX *\r\n this.baseControllClass.levels[this.level - 1].enemyCountY\r\n );\r\n } else {\r\n EngineController.updateTimePoints(\r\n this.points,\r\n this.level,\r\n this.killedEnemy,\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].enemyCountX *\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].enemyCountY\r\n );\r\n }\r\n }\r\n\r\n //Destroy Gameobjects in collision bullet with enemy\r\n destroyElements(bullet: any, enemy: any) {\r\n if (!this.data.get('pause')) {\r\n enemy.destroyObject();\r\n bullet.killBullet();\r\n this.sound.add(SoundManager.explosionName).play();\r\n }\r\n }\r\n\r\n //Process callback from collision bullet with enemy\r\n processCollider() {\r\n if (!this.data.get('pause')) {\r\n this.points += 200;\r\n this.killedEnemy += 1;\r\n }\r\n }\r\n\r\n //Runs if enemy and player colides\r\n underCollisionEnemy() {\r\n if (!this.data.get('pause')) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.makeQuestion();\r\n }\r\n }\r\n\r\n //Set new level after question or player destroyed all enemys\r\n nextLevel(textToShow: string | undefined, isNextLevel: boolean) {\r\n //pause game\r\n this.data.set('pause', true);\r\n\r\n this.ship.move(KeySide.stop, 0);\r\n if(isNextLevel){\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.NewLevel);\r\n }\r\n //pause game phisic\r\n this.physics.pause();\r\n this.killedEnemy = 0;\r\n this.ship.bullets.deleteObject();\r\n this.enemys.bullets.deleteObject();\r\n this.createEnemy();\r\n if (textToShow != '') {\r\n EngineController.createText(textToShow, false);\r\n }\r\n }\r\n\r\n //check if we dont overstep baseControllClass array\r\n checkLevelReturn() {\r\n if (this.level - 1 <= this.baseControllClass.levels.length - 1) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n //Create new enemys and sets thiers basic vlaues\r\n createEnemy() {\r\n if (this.enemys.getLength() != 0) {\r\n this.enemys.deleteObject();\r\n }\r\n this.lastSpeedBoost = 0;\r\n //check if we are in boundaries of baseControllClass array if not it gets last itme in array and use it\r\n if (this.checkLevelReturn()) {\r\n this.enemys.createEnemys(\r\n this.baseControllClass.levels[this.level - 1].enemyCountX,\r\n this.baseControllClass.levels[this.level - 1].enemyCountY,\r\n this.baseControllClass.levels[this.level - 1].enemySpeedX,\r\n this.baseControllClass.levels[this.level - 1].enemySpeedY\r\n );\r\n } else {\r\n const lastLevel = this.baseControllClass.levels[this.baseControllClass.levels.length - 1];\r\n const levelMultiplier = this.level - this.baseControllClass.levels.length;\r\n const multiplier = 1 + this.baseControllClass.enemySpeedMultiplicator * levelMultiplier;\r\n\r\n this.enemys.createEnemys(\r\n lastLevel.enemyCountX,\r\n lastLevel.enemyCountY,\r\n lastLevel.enemySpeedX * multiplier,\r\n lastLevel.enemySpeedY * multiplier\r\n );\r\n }\r\n\r\n //Collider bullets with enemy\r\n this.physics.add.overlap(this.ship.bullets, this.enemys, this.destroyElements, this.processCollider, this);\r\n\r\n //Collider bullets with player\r\n this.physics.add.overlap(this.enemys.bullets, this.ship, undefined, this.underCollisionEnemy, this);\r\n\r\n //Collider player bullets with enemy bullets\r\n this.physics.add.overlap(this.ship.bullets, this.enemys.bullets, (b1: any, b2: any) => {\r\n b1.killBullet();\r\n b2.killBullet();\r\n });\r\n }\r\n\r\n //Respond answer from server\r\n respondAnswer(data: boolean, answerPoolEmpty: boolean) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n if (answerPoolEmpty) {\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.LiveLost);\r\n if (EngineController.lifeLost(true)) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n }\r\n this.nextLevel('',false);\r\n } else {\r\n switch (data) {\r\n case true:\r\n this.points += 500;\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.LiveSaved);\r\n this.nextLevel(\r\n this.allText.find((val: { name: string }) => val.name == 'AnswerTextCorrect')?.value.toString(),false\r\n );\r\n break;\r\n case false:\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.LiveLost);\r\n if (EngineController.lifeLost(false)) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n break;\r\n }\r\n this.nextLevel(this.allText.find((val: { name: string }) => val.name == 'AnswerTextWrong')?.value.toString(),false);\r\n break;\r\n }\r\n }\r\n }\r\n\r\n //Mark Question\r\n makeQuestion() {\r\n //this.registry.set(\"answer\",-1);\r\n this.physics.pause();\r\n this.data.set('pause', true);\r\n this.askQuestion();\r\n }\r\n\r\n endGameDialog() {\r\n this.gameOverDialog(this.points);\r\n this.scene.pause();\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.GameOver);\r\n this.game.destroy(true, false);\r\n }\r\n textControllerReplay() {\r\n this.physics.resume();\r\n this.data.set('pause', false);\r\n }\r\n}\r\n","export class ImagesBase64 {\r\n static readonly ship = require('@/assets/games/space-rescue/sprites/space-ship.png');\r\n static readonly enemy = require('@/assets/games/space-rescue/sprites/invader.png');\r\n static readonly stars = require('@/assets/games/space-rescue/stars/star4.png');\r\n static readonly bullet = require('@/assets/games/space-rescue/fire/fire1.png');\r\n static readonly enemyBullet = require('@/assets/games/space-rescue/fire/fire2.png');\r\n static readonly heart = require('@/assets/games/space-rescue/ui/life.png');\r\n\r\n static readonly enemyBg = require('@/assets/games/space-rescue/ui/shadow.png');\r\n}\r\n","import { GameEngineBase } from '../game-engine-base';\r\nimport 'phaser';\r\nimport { GameScene } from './space-rescue-gameclass';\r\nimport { ImagesBase64 } from './imagesbase64';\r\nimport { SpaceRescueVariables } from './Global/SpaceRescueVariables';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { GameCustomizableElement } from '../game-engine-customizable-element';\r\n\r\nexport class SpaceRescueEngine extends GameEngineBase {\r\n game!: Phaser.Game;\r\n private gameConfig!: Phaser.Types.Core.GameConfig;\r\n\r\n initialize(): void {\r\n this.gameConfig = {\r\n title: 'Space Rescue',\r\n width: 800,\r\n height: 600,\r\n type: Phaser.CANVAS,\r\n parent: 'game-window',\r\n transparent: true,\r\n backgroundColor: '#000000',\r\n physics: {\r\n default: 'arcade',\r\n arcade: {\r\n debug: false,\r\n gravity: { y: 0 }\r\n }\r\n },\r\n audio: {\r\n disableWebAudio: true\r\n },\r\n\r\n scene: [\r\n new GameScene(this.askQuestion, this.gameOverDialog, this.saveGameLog, this.getCustomizedElements(), this.theme)\r\n ]\r\n };\r\n this.game = new Phaser.Game(this.gameConfig);\r\n console.log('initialize SpaceRescueEngine');\r\n }\r\n\r\n getCustomziableTypes(): GameCustomizableElement[] {\r\n return [\r\n /**\r\n * Create text, number\r\n * @param {string} name\r\n * @param {string} value - translate value\r\n * @param {number} minLength - min lenght\r\n * @param {number} maxLength - max lenght\r\n * @param {bool} isCustomByUser - should be custom by user in menu website \r\n * @param {number} position - position in menu website \r\n */\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.shipSpriteName, ImagesBase64.ship, 34, 48,true,7),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.enemySpriteName, ImagesBase64.enemy, 40, 40,true,8),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.starsSpriteName, ImagesBase64.stars, 15, 15,false),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.bulletSpriteName, ImagesBase64.bullet, 20, 15,true,10),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.enemyBulletSpriteName, ImagesBase64.enemyBullet, 30, 20,true,11),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.heartSpriteName, ImagesBase64.heart, 30, 35,true,9),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.enemyBgSpriteName, ImagesBase64.enemyBg, 150, 150,false),\r\n GameCustomizableElement.CreateText('AnswerTextCorrect', translate('Modules.Runtime.Game.CorrectAnswer'), 2, 20,true,1),\r\n GameCustomizableElement.CreateText('AnswerTextWrong', translate('Modules.Runtime.Game.WrongAnswer'), 2, 20,true,2),\r\n GameCustomizableElement.CreateText('StartText', translate('Modules.Runtime.Game.StartGame'), 2, 30,true,5),\r\n GameCustomizableElement.CreateText('NoMoreQuestions', translate('Modules.Runtime.Game.NoMoreQuestions'), 2, 40,true,4),\r\n GameCustomizableElement.CreateNumber(SpaceRescueVariables.LivesName, 5, 1, 5,true,3),\r\n GameCustomizableElement.CreateText('NextLevel', translate('Modules.Runtime.Game.Level'), 2, 20,true,6)\r\n ];\r\n }\r\n\r\n //Accept answere, outside class runs it\r\n acceptAnswer(isCorrectAnswer: boolean, answerPoolEmpty: boolean): void {\r\n this.game.registry.events.emit('AnswerEvent', isCorrectAnswer, answerPoolEmpty);\r\n }\r\n}\r\n","export enum KeySide {\r\n up = 1 << 0,\r\n down = 1 << 1,\r\n left = 1 << 2,\r\n right = 1 << 3,\r\n stop = 1 << 4,\r\n block = 1 << 5\r\n }\r\n ","export class RiverRunVariables {\r\n static readonly playerSpriteName = '__PLAYER';\r\n static readonly enemy1SpriteName = '__ENEMY1';\r\n static readonly enemy2SpriteName = '__ENEMY2';\r\n static readonly enemy3SpriteName = '__ENEMY3';\r\n static readonly object1SpriteName = '__OBJ1';\r\n static readonly roadSpriteName = '__ROAD';\r\n static readonly bgBackSpriteNameLeft = '__BG2Left';\r\n static readonly bgBackSpriteNameRight = '__BG2Right';\r\n static readonly treeSpriteName = '__TREE';\r\n static readonly heartSpriteName = '__HEART';\r\n static readonly LivesName = 'LivesNumber';\r\n static readonly person1 = '__PERSON1';\r\n static readonly endLevelObj = '__ENDLEVELOBJ';\r\n static readonly odometer = '__ODOMETER';\r\n static readonly odometerLine = '__ODOMETERLINE';\r\n static readonly staminaBottom = '__STAMINABOTTOM';\r\n static readonly staminaTop = '__STAMINATOP';\r\n static readonly staminaColor = '__STAMINACOLOR';\r\n}\r\n","import { KeySide } from '../Models/KeySide';\r\nimport { RiverRunVariables } from '../Global/RiverRunVariables';\r\nexport class Player extends Phaser.Physics.Arcade.Sprite {\r\n speedOnX: number;\r\n maxspeedOnX: number;\r\n speedOnY: number;\r\n maxspeedOnY: number;\r\n texturess!: Phaser.Textures.Texture;\r\n playerBorderMaxOnX!: number;\r\n playerBorderMinOnX!: number;\r\n playerBorderMaxOnY!: number;\r\n playerBorderMinOnY!: number;\r\n speedBackMax = 100;\r\n brakeStamina = 100;\r\n soundObjects: Phaser.GameObjects.Rectangle;\r\n heightSound = 40;\r\n speedBack = false;\r\n slowDown = false;\r\n staminaBlockade = false;\r\n constructor(\r\n scene: Phaser.Scene,\r\n x: number,\r\n y: number,\r\n speedOnX: number,\r\n maxspeedOnX: number,\r\n speedOnY: number,\r\n maxspeedOnY: number,\r\n playerBorderMaxOnX: number,\r\n playerBorderMinOnX: number,\r\n playerBorderMaxOnY: number,\r\n playerBorderMinOnY: number,\r\n widthPlayer: number,\r\n heightPlayer: number\r\n ) {\r\n super(scene, x, y, RiverRunVariables.playerSpriteName);\r\n scene.physics.add.existing(this);\r\n this.speedOnX = speedOnX;\r\n this.maxspeedOnX = maxspeedOnX;\r\n this.speedOnY = speedOnY;\r\n this.maxspeedOnY = maxspeedOnY;\r\n scene.add.existing(this);\r\n this.displayHeight = heightPlayer;\r\n this.displayWidth = widthPlayer;\r\n\r\n this.playerBorderMaxOnX = playerBorderMaxOnX;\r\n this.playerBorderMinOnX = playerBorderMinOnX;\r\n this.playerBorderMaxOnY = playerBorderMaxOnY;\r\n this.playerBorderMinOnY = playerBorderMinOnY;\r\n\r\n this.soundObjects = this.scene.add.rectangle(\r\n x,\r\n y - this.heightSound,\r\n widthPlayer + widthPlayer * 1.5,\r\n this.heightSound / 10\r\n );\r\n this.scene.physics.add.existing(this.soundObjects);\r\n }\r\n preUpdate() {\r\n this.soundObjects.x = this.x;\r\n this.soundObjects.y = this.y - this.heightSound;\r\n }\r\n // Move player with animation\r\n move(side: KeySide, delta: number) {\r\n const isLeftPressed = (side & KeySide.left) === KeySide.left;\r\n const isRightPressed = (side & KeySide.right) === KeySide.right;\r\n const isUpPressed = (side & KeySide.up) === KeySide.up;\r\n const isDownPressed = (side & KeySide.down) === KeySide.down;\r\n // Handle Left / Right movement\r\n if (isLeftPressed) {\r\n this.moveLeft(delta);\r\n } else if (isRightPressed) {\r\n this.moveRight(delta);\r\n } else {\r\n // Neither LEFT, nor RIGHT is pressed\r\n this.resetHorizontalMovement();\r\n }\r\n // Handle Up / Down movement\r\n if (isUpPressed) {\r\n this.moveUp(delta);\r\n } else if (isDownPressed) {\r\n this.moveDown(delta);\r\n } else {\r\n // Neither UP, nor DOWN is pressed\r\n this.resetVerticalMovement();\r\n }\r\n }\r\n\r\n private moveLeft(delta: number): void {\r\n if (this.body.x >= this.playerBorderMinOnX) {\r\n // NOT touching left border of player area\r\n if (this.body.velocity.x >= -this.maxspeedOnX) {\r\n this.body.velocity.x -= this.speedOnX * delta;\r\n this.animaionTiltPlayer(KeySide.left);\r\n }\r\n } else {\r\n // Touching left border of player area\r\n this.resetHorizontalMovement();\r\n }\r\n }\r\n private moveRight(delta: number): void {\r\n if (this.body.x <= this.playerBorderMaxOnX) {\r\n // NOT touching right border of player area\r\n if (this.body.velocity.x <= this.maxspeedOnX) {\r\n this.body.velocity.x += this.speedOnX * delta;\r\n this.animaionTiltPlayer(KeySide.right);\r\n }\r\n } else {\r\n // Touching right border of player area\r\n this.resetHorizontalMovement();\r\n }\r\n }\r\n private moveUp(delta: number): void {\r\n if (this.body.y >= this.playerBorderMinOnY) {\r\n // NOT touching top border of player area\r\n this.speedBack = false;\r\n\r\n if (this.body.velocity.y >= -this.maxspeedOnY) {\r\n this.body.velocity.y -= this.speedOnY * delta;\r\n }\r\n } else {\r\n // Touching top border of player area\r\n this.body.velocity.y = 0;\r\n this.speedBack = true;\r\n }\r\n }\r\n private moveDown(delta: number): void {\r\n if (this.body.y < this.playerBorderMaxOnY) {\r\n // NOT touching bottom border of player area\r\n if (this.body.velocity.y <= this.maxspeedOnY) {\r\n this.body.velocity.y += this.speedOnY * delta;\r\n }\r\n } else {\r\n // Touching bottom border of player area\r\n this.body.velocity.y = 0;\r\n this.slowDown = this.brakeStamina > 0;\r\n }\r\n }\r\n private resetHorizontalMovement(): void {\r\n this.angle = 0;\r\n this.body.velocity.x = 0;\r\n }\r\n private resetVerticalMovement(): void {\r\n this.body.velocity.y = 0;\r\n this.speedBack = false;\r\n this.slowDown = false;\r\n }\r\n private animaionTiltPlayer(side: KeySide): void {\r\n let tiltAngle = 0;\r\n\r\n if (side === KeySide.left) {\r\n tiltAngle = -15;\r\n } else if (side === KeySide.right) {\r\n tiltAngle = 15;\r\n }\r\n\r\n this.scene.tweens.add({\r\n targets: this,\r\n angle: { from: 0, to: tiltAngle },\r\n ease: 'Linear',\r\n duration: 300\r\n });\r\n }\r\n}\r\n","import { Car } from './Car';\r\nimport { ObjectsOutside } from './ObjectsOutside';\r\nexport class Levels {\r\n constructor(\r\n level: number,\r\n backgroundSpeed: number,\r\n arrayCars: Array,\r\n arrayObjects: Array,\r\n spawnTime: Array,\r\n distanceToNextLevel: number,\r\n odometerSpeed: number\r\n ) {\r\n this.level = level;\r\n this.backgroundSpeed = backgroundSpeed;\r\n this.arrayCars = arrayCars;\r\n this.arrayObjects = arrayObjects;\r\n this.spawnTime = spawnTime;\r\n this.distanceToNextLevel = distanceToNextLevel;\r\n this.odometerSpeed = odometerSpeed;\r\n }\r\n level!: number;\r\n backgroundSpeed!: number;\r\n arrayCars!: Array;\r\n arrayObjects!: Array;\r\n spawnTime!: Array;\r\n distanceToNextLevel!: number;\r\n odometerSpeed!: number;\r\n}\r\n","export class SpawnPoint {\r\n static readonly position1 = 220;\r\n static readonly position2 = 340;\r\n static readonly position3 = 460;\r\n static readonly position4 = 580;\r\n}\r\n","import IEnemyVerhicle from '../IEnemyVehicle';\r\nimport { SpawnPoint } from '../../../Models/SpawnPoint';\r\n//import Base from \"../../ ../Global/BaseControllClass\"\r\nexport class EnemyVehicle extends Phaser.Physics.Arcade.Sprite implements IEnemyVerhicle {\r\n isDestroyed: boolean;\r\n unlockRoad = false;\r\n emiterBack = new Phaser.Events.EventEmitter();\r\n isObject = false;\r\n objectSpeed = 5;\r\n stopAllObjects = false;\r\n firstSpeed = 5;\r\n firstSpeedObject = 5;\r\n passingSound = false;\r\n constructor(scene: Phaser.Scene, x: number, y: number) {\r\n super(scene, x, y, '');\r\n this.isDestroyed = false;\r\n this.unlockRoad = false;\r\n this.emiterBack.on('emiterBack', this.unlockBack, this);\r\n this.scene.registry.events.on('stopAll', this.stopAll, this);\r\n this.scene.registry.events.on('backToOldSpeed', this.backToOldSpeed, this);\r\n this.scene.registry.events.on('changeSpeed', this.changeSpeed, this);\r\n this.scene.registry.events.on('unlockAll', this.unlockAll, this);\r\n this.scene.registry.events.on('deleteEnemy', this.destroyAll, this);\r\n this.scene.registry.events.on('objectChangeSpeed', this.objectChangeSpeed, this);\r\n }\r\n objectChangeSpeed(parameter: any){\r\n if(this.isObject && this.body != undefined){\r\n this.setVelocityY(0);\r\n this.firstSpeedObject = parameter.speed;\r\n this.objectSpeed = parameter.speed;\r\n }\r\n }\r\n backToOldSpeed() {\r\n if (this.body != undefined) {\r\n if (this.isObject) {\r\n this.objectSpeed = this.firstSpeedObject;\r\n this.setVelocityY(0);\r\n } else {\r\n this.setVelocityY(this.firstSpeed);\r\n }\r\n }\r\n }\r\n setFirstSpeed(speed: number) {\r\n this.firstSpeed = speed;\r\n }\r\n unlockBack() {\r\n this.unlockRoad = true;\r\n }\r\n addSprite(name: string, width: number, heigth: number, rotate: boolean) {\r\n this.setTexture(name).angle = 0;\r\n if (rotate) {\r\n this.setTexture(name).angle = 180;\r\n }\r\n this.unlockRoad = false;\r\n }\r\n createEnemy(x: number, objectSpeedInside: number) {\r\n this.body.reset(x, -50);\r\n this.setActive(true);\r\n this.setVisible(true);\r\n this.unlockRoad = false;\r\n this.passingSound = false;\r\n if (objectSpeedInside != 0) {\r\n this.isObject = true;\r\n this.objectSpeed = objectSpeedInside;\r\n this.firstSpeedObject = objectSpeedInside;\r\n this.setDepth(0.6);\r\n }else{\r\n this.setDepth(1);\r\n }\r\n }\r\n changeSpeed(parameter: any) {\r\n this.objectSpeed = (parameter.speed / 100) * 3;\r\n if (this.body != undefined) {\r\n if (parameter.back) {\r\n this.setVelocityY(parameter.speed * 1.6);\r\n } else {\r\n if(this.isObject){\r\n this.setVelocityY(parameter.speed * 2);\r\n }else{\r\n this.setVelocityY(parameter.speed * 2 + this.firstSpeed);\r\n }\r\n \r\n }\r\n }\r\n }\r\n preUpdate(time: number, delta: number) {\r\n super.preUpdate(time, delta);\r\n if (!this.unlockRoad && this.y >= this.scene.game.canvas.height * 0.55) {\r\n if (this.x - 20 <= SpawnPoint.position1 && this.x + 20 >= SpawnPoint.position1) {\r\n this.scene.registry.events.emit('unlockRoad', 0, this.emiterBack);\r\n } else if (this.x - 20 <= SpawnPoint.position2 && this.x + 20 >= SpawnPoint.position2) {\r\n this.scene.registry.events.emit('unlockRoad', 1, this.emiterBack);\r\n } else if (this.x - 20 <= SpawnPoint.position3 && this.x + 20 >= SpawnPoint.position3) {\r\n this.scene.registry.events.emit('unlockRoad', 2, this.emiterBack);\r\n } else if (this.x - 20 <= SpawnPoint.position4 && this.x + 20 >= SpawnPoint.position4) {\r\n this.scene.registry.events.emit('unlockRoad', 3, this.emiterBack);\r\n }\r\n }\r\n if (this.y >= this.scene.game.canvas.height + 50) {\r\n this.setActive(false);\r\n this.setVisible(false);\r\n this.body.reset(0, -50);\r\n }\r\n if (this.isObject && !this.stopAllObjects) {\r\n this.y += this.objectSpeed;\r\n }\r\n }\r\n\r\n destroyAll() {\r\n this.destroy();\r\n this.unlockRoad = false;\r\n }\r\n\r\n stopAll() {\r\n this.stopAllObjects = true;\r\n }\r\n\r\n unlockAll() {\r\n this.stopAllObjects = false;\r\n }\r\n\r\n destroyObject() {\r\n if (this.isDestroyed) {\r\n return;\r\n }\r\n this.unlockRoad = false;\r\n this.isDestroyed = true;\r\n this.scene.tweens.add({\r\n targets: this,\r\n ease: 'Linear',\r\n duration: 50,\r\n alpha: { from: 1, to: 0 },\r\n completeDelay: 50,\r\n onComplete: () => {\r\n this.destroy();\r\n }\r\n });\r\n }\r\n}\r\n","import { EnemyVehicle } from './Models/EnemyVehicle';\r\nexport class EnemyVehicleGroup extends Phaser.Physics.Arcade.Group {\r\n rightOrLeft: boolean;\r\n enemyWidth!: number;\r\n enemyHeight!: number;\r\n spriteNameVehicle!: string;\r\n increaseSizeSprite = 1.7;\r\n constructor(scene: Phaser.Scene, spriteName: string, width?: number, height?: number) {\r\n super(scene.physics.world, scene);\r\n this.rightOrLeft = true;\r\n if (height != undefined) {\r\n this.enemyHeight = height;\r\n }\r\n if (width != undefined) {\r\n this.enemyWidth = width;\r\n }\r\n this.spriteNameVehicle = spriteName;\r\n }\r\n start(name: string) {\r\n this.createMultiple({\r\n quantity: 3,\r\n key: name,\r\n active: false,\r\n visible: false,\r\n classType: EnemyVehicle\r\n });\r\n }\r\n deleteObject() {\r\n this.children.each(val => {\r\n const val2 = val as EnemyVehicle;\r\n val2.destroyAll();\r\n });\r\n }\r\n createEnemys(position: number, vehicleSpeed: number, objectSpeed: number, rotate: boolean) {\r\n this.start(this.spriteNameVehicle);\r\n const enemy = this.getFirstDead(false);\r\n enemy.addSprite(this.spriteNameVehicle, this.enemyHeight, this.enemyWidth,rotate);\r\n\r\n enemy.displayHeight = this.enemyHeight;\r\n enemy.displayWidth = this.enemyWidth;\r\n\r\n enemy.createEnemy(position, objectSpeed);\r\n if (objectSpeed == 0) {\r\n enemy.body.setSize(this.enemyWidth * this.increaseSizeSprite, this.enemyHeight * this.increaseSizeSprite);\r\n enemy.setFirstSpeed(vehicleSpeed);\r\n if(rotate){\r\n enemy.setVelocityY(vehicleSpeed * 1.6);\r\n }else{\r\n enemy.setVelocityY(vehicleSpeed);\r\n }\r\n \r\n } else {\r\n enemy.body.setSize(this.enemyWidth / 2, this.enemyHeight / 2);\r\n }\r\n }\r\n}\r\n","import { EnemyVehicleGroup } from './EnemyVehicleGroup';\r\nimport { SpawnPoint } from '../../Models/SpawnPoint';\r\nexport default class VehicleFactory {\r\n static spawnPoint: number;\r\n static arraySpawn: Array = [0, 0, 0, 0];\r\n static blockSpawn = true;\r\n static blockLine = 0;\r\n public static Build(scene: any, name: string, width?: number, heigth?: number): EnemyVehicleGroup {\r\n scene.registry.events.on('unlockRoad', this.unlockRoad, this);\r\n scene.registry.events.on('nextLevel', this.nextLevel, this);\r\n return new EnemyVehicleGroup(scene, name, width, heigth);\r\n }\r\n\r\n public static CreateVehicle(\r\n vehicle: EnemyVehicleGroup,\r\n vehicleSpeed: number,\r\n objectSpeed: number,\r\n shouldRotate: boolean,\r\n lineChoose: number\r\n ) {\r\n if (this.arraySpawn != [0, 0, 0, 0]) {\r\n if (this.arraySpawn[lineChoose] != 0) {\r\n return;\r\n }\r\n }\r\n let numberFreeLines = 0;\r\n this.arraySpawn.forEach(val => (val == 1 ? (numberFreeLines += 1) : null));\r\n if (numberFreeLines == 3) {\r\n return;\r\n }\r\n let spawnPointnew: number;\r\n let currentSpawn = 0;\r\n const addToSpawnPoint = Phaser.Math.Between(-20, 20);\r\n const findInx = this.arraySpawn.findIndex(val => val == 0);\r\n if (findInx != undefined && findInx != -1) {\r\n do {\r\n spawnPointnew = Phaser.Math.Between(0, 100);\r\n if (spawnPointnew >= 0 && spawnPointnew < 15) {\r\n currentSpawn = 1;\r\n } else if (spawnPointnew >= 15 && spawnPointnew < 40) {\r\n currentSpawn = 2;\r\n } else if (spawnPointnew >= 40 && spawnPointnew < 75) {\r\n currentSpawn = 3;\r\n } else if (spawnPointnew >= 75 && spawnPointnew <= 100) {\r\n currentSpawn = 4;\r\n }\r\n } while (this.arraySpawn[currentSpawn - 1] == 1);\r\n if (spawnPointnew >= 0 && spawnPointnew < 15) {\r\n vehicle.createEnemys(SpawnPoint.position1 + addToSpawnPoint, vehicleSpeed, objectSpeed, shouldRotate);\r\n this.arraySpawn[currentSpawn - 1] = 1;\r\n } else if (spawnPointnew >= 15 && spawnPointnew < 40) {\r\n vehicle.createEnemys(SpawnPoint.position2 + addToSpawnPoint, vehicleSpeed, objectSpeed, shouldRotate);\r\n this.arraySpawn[currentSpawn - 1] = 1;\r\n } else if (spawnPointnew >= 50 && spawnPointnew < 75) {\r\n vehicle.createEnemys(SpawnPoint.position3 + addToSpawnPoint, vehicleSpeed, objectSpeed, false);\r\n this.arraySpawn[currentSpawn - 1] = 1;\r\n } else if (spawnPointnew >= 75 && spawnPointnew <= 100) {\r\n vehicle.createEnemys(SpawnPoint.position4 + addToSpawnPoint, vehicleSpeed, objectSpeed, false);\r\n this.arraySpawn[currentSpawn - 1] = 1;\r\n }\r\n this.blockLine++;\r\n }\r\n }\r\n\r\n static unlockRoad(line: number, emiter: any) {\r\n this.arraySpawn[line] = 0;\r\n emiter.emit('emiterBack');\r\n }\r\n static nextLevel() {\r\n this.arraySpawn = [0, 0, 0, 0];\r\n }\r\n}\r\n","import { EnemyVehicleGroup } from '../Models/Enemy/EnemyVehicleGroup';\r\nimport EnemyVehicleFactory from '../Models/Enemy/EnemyVehicleFactory';\r\n\r\nexport class Car {\r\n constructor(\r\n speedVehicle: number,\r\n speedObject: number,\r\n spriteName: string,\r\n scene: any,\r\n width?: number,\r\n heigth?: number\r\n ) {\r\n this.speedVehicle = speedVehicle;\r\n this.speedObject = speedObject;\r\n this.spriteName = spriteName;\r\n this.factoryVehicle = EnemyVehicleFactory.Build(scene,spriteName, width, heigth);\r\n }\r\n factoryVehicle!: EnemyVehicleGroup;\r\n speedVehicle!: number;\r\n spriteName!: string;\r\n speedObject!: number;\r\n}\r\n","export class SpawnPointObjects {\r\n static readonly position1 = 45;\r\n static readonly position2 = 55;\r\n static readonly position3 = 740;\r\n static readonly position4 = 755;\r\n static readonly endLevelPosition = 700;\r\n }\r\n ","import IObject from './IObject';\r\n\r\nexport class ObjectsModel extends Phaser.Physics.Arcade.Sprite implements IObject {\r\n private speedY = 200;\r\n isDestroyed: boolean;\r\n stopAllObjects = false;\r\n firstSpeed = 4;\r\n constructor(scene: Phaser.Scene, x: number, y: number) {\r\n super(scene, x, y, '');\r\n this.setDepth(0);\r\n this.isDestroyed = false;\r\n scene.registry.events.on('stopAll', this.stopAll, this);\r\n scene.registry.events.on('unlockAll', this.unlockAll, this);\r\n this.scene.registry.events.on('backToOldSpeed', this.backToOldSpeed, this);\r\n this.scene.registry.events.on('changeSpeed', this.changeSpeed, this);\r\n this.scene.registry.events.on('objectChangeSpeed', this.objectChangeSpeed, this);\r\n this.scene.registry.events.on('changeSpeedObj', this.changeSpeed, this);\r\n this.scene.registry.events.on('firstSpeed', this.firstSpeedChange, this);\r\n }\r\n firstSpeedChange(parameter: any) {\r\n console.log(parameter.speed);\r\n \r\n this.setVelocityY(0);\r\n this.firstSpeed = parameter.speed;\r\n this.speedY = parameter.speed;\r\n }\r\n objectChangeSpeed(parameter: any){\r\n this.setVelocityY(0);\r\n this.firstSpeed = parameter.speed;\r\n this.speedY = parameter.speed;\r\n }\r\n backToOldSpeed() {\r\n if (this.body != undefined) {\r\n this.setVelocityY(0);\r\n this.speedY = this.firstSpeed;\r\n }\r\n }\r\n \r\n changeSpeed(parameter: any) {\r\n this.speedY = (parameter.speed / 100) * 3;\r\n if (this.body != undefined) {\r\n if(parameter.back){\r\n this.setVelocityY(parameter.speed * 1.60);\r\n }else{\r\n this.setVelocityY(parameter.speed * 2);\r\n }\r\n }\r\n }\r\n addSprite(name: string, width: number, heigth: number) {\r\n this.setTexture(name).setDepth(0);\r\n this.setBodySize(width / 2, heigth);\r\n \r\n }\r\n createEnemy(x: number,speed?:number) {\r\n this.body.reset(x, -50);\r\n this.setActive(true);\r\n this.setVisible(true);\r\n if(speed){\r\n this.firstSpeed = speed;\r\n }\r\n this.speedY =this.firstSpeed;\r\n\r\n }\r\n\r\n preUpdate(time: number, delta: number) {\r\n super.preUpdate(time, delta);\r\n if (this.y >= this.scene.game.canvas.height + 70) {\r\n this.setActive(false);\r\n this.setVisible(false);\r\n this.body.reset(0, -50);\r\n } else if (!this.stopAllObjects) {\r\n \r\n this.y += this.speedY;\r\n }\r\n }\r\n\r\n stopAll() {\r\n this.stopAllObjects = true;\r\n }\r\n\r\n unlockAll() {\r\n this.stopAllObjects = false;\r\n }\r\n\r\n destroyAll() {\r\n this.destroy();\r\n }\r\n destroyObject() {\r\n if (this.isDestroyed) {\r\n return;\r\n }\r\n this.isDestroyed = true;\r\n this.scene.tweens.add({\r\n targets: this,\r\n ease: 'Linear',\r\n duration: 50,\r\n alpha: { from: 1, to: 0 },\r\n completeDelay: 50,\r\n onComplete: () => {\r\n this.destroy();\r\n }\r\n });\r\n }\r\n}\r\n","\r\nimport { ObjectsModel } from './ObjectsModel';\r\nexport class ObjectsGroup extends Phaser.Physics.Arcade.Group {\r\n rightOrLeft: boolean;\r\n enemyWidth!: number;\r\n enemyHeight!: number;\r\n spriteName!: string;\r\n\r\n constructor(scene: Phaser.Scene, width: number, height: number, spriteName: string) {\r\n super(scene.physics.world, scene);\r\n this.rightOrLeft = true;\r\n this.enemyHeight = height;\r\n this.enemyWidth = width;\r\n this.spriteName = spriteName;\r\n }\r\n start(name: string) {\r\n this.createMultiple({\r\n quantity: 10,\r\n key: name,\r\n active: false,\r\n visible: false,\r\n classType: ObjectsModel\r\n });\r\n }\r\n\r\n createObjects(position: number,speed?:number) {\r\n this.start(this.spriteName);\r\n const enemy = this.getFirstDead(false);\r\n enemy.addSprite(this.spriteName,this.enemyHeight,this.enemyWidth);\r\n enemy.displayHeight = this.enemyHeight;\r\n enemy.displayWidth = this.enemyWidth;\r\n enemy.createEnemy(position,speed);\r\n }\r\n}\r\n","import { SpawnPointObjects } from './SpawnPointObjects';\r\nimport { ObjectsGroup } from './ObjectsGroup';\r\nexport default class ObjectFactory {\r\n static spawnPoint: number;\r\n public static Build(scene: any, width: number, heigth: number, name: string): ObjectsGroup {\r\n return new ObjectsGroup(scene, width, heigth, name);\r\n }\r\n public static CreateObject(vehicle: ObjectsGroup, speed?: number) {\r\n let spawnPointnew: number;\r\n do {\r\n spawnPointnew = Phaser.Math.Between(0, 100);\r\n } while (this.spawnPoint == spawnPointnew);\r\n if (spawnPointnew >= 0 && spawnPointnew < 25) {\r\n vehicle.createObjects(SpawnPointObjects.position1,speed);\r\n } else if (spawnPointnew >= 25 && spawnPointnew < 50) {\r\n vehicle.createObjects(SpawnPointObjects.position2,speed);\r\n } else if (spawnPointnew >= 50 && spawnPointnew < 75) {\r\n vehicle.createObjects(SpawnPointObjects.position3,speed);\r\n } else if (spawnPointnew >= 75 && spawnPointnew <= 100) {\r\n vehicle.createObjects(SpawnPointObjects.position4,speed);\r\n }\r\n }\r\n public static CreateEndLevel(vehicle: ObjectsGroup) {\r\n vehicle.createObjects(SpawnPointObjects.endLevelPosition);\r\n }\r\n}\r\n","import {ObjectsGroup} from '../Models/ObjectsGroup';\r\nimport ObjectFactory from '../Models/ObjectFactory';\r\nexport class ObjectsOutside {\r\n constructor(\r\n spriteName: string,\r\n width: number,\r\n heigth: number,\r\n scene: any\r\n ) {\r\n this.spriteName = spriteName;\r\n this.factoryVehicle = ObjectFactory.Build(scene, width, heigth, spriteName);\r\n }\r\n factoryVehicle!: ObjectsGroup;\r\n spriteName!: string;\r\n}\r\n","import { Levels } from './Levels';\r\nimport { Car } from './Car';\r\nimport { ObjectsOutside } from './ObjectsOutside';\r\nimport { RiverRunVariables } from './RiverRunVariables';\r\nimport 'phaser';\r\nimport { GameCustomizableElement } from '../../game-engine-customizable-element';\r\n//Class responsible for base game values\r\nexport class Base {\r\n constructor(lives: number, scene: Phaser.Scene, customziableTypes?: GameCustomizableElement[]) {\r\n this.values(lives, scene, customziableTypes);\r\n }\r\n\r\n scene!: Phaser.Scene;\r\n objectsSpawnTime!: number;\r\n backgroundWidth!: number;\r\n vehicleSpeed!: number;\r\n backgroundHeigth!: number;\r\n backgroundBackWidth!: number;\r\n backgroundBackHeigth!: number;\r\n backgroundSpeed!: number;\r\n playerPozX!: number;\r\n playerPozY!: number;\r\n playerSpeedOnX!: number;\r\n playerMaxSpeedOnX!: number;\r\n playerSpeedOnY!: number;\r\n playerMaxSpeedOnY!: number;\r\n playerBorderMaxOnX!: number;\r\n playerBorderMinOnX!: number;\r\n playerBorderMaxOnY!: number;\r\n playerBorderMinOnY!: number;\r\n playerWidth!: number;\r\n playerHeigth!: number;\r\n life!: number;\r\n /**\r\n * Create level data\r\n * @param {number} level - current level\r\n * @param {number} backgroundSpeed - background Speed on current level\r\n * @param {Array.} arrayCars - array vehicle and objects on road\r\n * @param {Array.} arrayObjects - array objects outside. Objects move with background.\r\n * @param {Array.} spawnTime - time to create spawn event to objects and vehicle on road.\r\n * @param {number} distanceToNextLevel - distance to next level. Example: 0.5 KM\r\n * @param {number} odometerSpeed - Set range between 30 - 150. On speed up to default speed is added 20 and if slow down is minus 15.\r\n */\r\n levels: Array = [];\r\n flagSpawn!: number;\r\n showOdometer!: boolean;\r\n rotateSprite!: boolean;\r\n flagWidth!: number;\r\n flagHeight!: number;\r\n turnOnSoundPassing!: boolean;\r\n defaultSpawnTime = 1000;\r\n values(lives: number, scene: Phaser.Scene, customziableTypes?: GameCustomizableElement[]) {\r\n this.scene = scene;\r\n this.objectsSpawnTime = 3000;\r\n this.vehicleSpeed = 150;\r\n this.backgroundWidth = 500;\r\n this.backgroundHeigth = 800;\r\n this.backgroundBackWidth = 150;\r\n this.backgroundBackHeigth = 800;\r\n this.backgroundSpeed = 5;\r\n this.playerPozX = 400;\r\n this.playerPozY = 530;\r\n this.life = lives;\r\n this.playerSpeedOnX = 10;\r\n this.playerMaxSpeedOnX = 200;\r\n this.playerSpeedOnY = 10;\r\n this.playerMaxSpeedOnY = 100;\r\n this.playerBorderMaxOnX = 600;\r\n this.playerBorderMinOnX = 150;\r\n this.playerBorderMaxOnY = 500;\r\n this.playerBorderMinOnY = 400;\r\n this.playerWidth = 60;\r\n this.playerHeigth = 100;\r\n this.flagSpawn = 115;\r\n this.showOdometer = true;\r\n this.turnOnSoundPassing = false;\r\n //Flag size\r\n this.flagHeight = 80;\r\n this.flagWidth = 100;\r\n //Rotate on left line\r\n this.rotateSprite = false;\r\n /**\r\n * Create car object or normal object on map with background speed\r\n * @param {number} speedVehicle - set speed between range 100-1000 if it is vehicle and set speedObject to 0\r\n * @param {number} speedObject - set background speed on current level if it object on map and should move with background speed\r\n * @param {string} spriteName - get from file RiverRunVariables.ts\r\n * @param {Phaser.Scene} scene - default from file (don't change it)\r\n * @param {number} width \r\n * @param {number} heigth \r\n */\r\n let arrayCars: Array = [];\r\n /**\r\n * Create objects outside. Objects move with background.\r\n * @param {string} spriteName - get from file RiverRunVariables.ts\r\n * @param {number} width \r\n * @param {number} heigth \r\n * @param {Phaser.Scene} scene - default from file (don't change it)\r\n */\r\n const arrayObjects: Array = [];\r\n /**\r\n * spawn time to create event respawn object and vehicle on road.\r\n * If spawn time will be empty default value is 1000.\r\n */\r\n let spawnTime: Array = [1800];\r\n\r\n //Add objects to current level\r\n arrayObjects.push(new ObjectsOutside(RiverRunVariables.person1, 50, 150, this.scene));\r\n arrayObjects.push(new ObjectsOutside(RiverRunVariables.treeSpriteName, 60, 60, this.scene));\r\n\r\n //Add vehicle or object to current level\r\n const objects1Data = customziableTypes?.find(val => val.name == RiverRunVariables.object1SpriteName);\r\n const enemy1Data = customziableTypes?.find(val => val.name == RiverRunVariables.enemy1SpriteName);\r\n const enemy2Data = customziableTypes?.find(val => val.name == RiverRunVariables.enemy2SpriteName);\r\n const enemy3Data = customziableTypes?.find(val => val.name == RiverRunVariables.enemy3SpriteName);\r\n\r\n //Level #1\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(340, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [1100, 1200, 1300];\r\n this.levels.push(new Levels(1, 8, arrayCars, arrayObjects, spawnTime, 0.4, 30));\r\n\r\n //Level #2\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(340, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(350, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [900, 1000, 1100];\r\n this.levels.push(new Levels(2, 10, arrayCars, arrayObjects, spawnTime, 0.6, 60));\r\n\r\n //Level #3\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(340, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 8, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [800, 900, 1000];\r\n this.levels.push(new Levels(3, 14,arrayCars, arrayObjects, spawnTime, 1, 70));\r\n\r\n //Level #4\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(0, 12, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [660, 650, 540];\r\n this.levels.push(new Levels(4, 12, arrayCars, arrayObjects, spawnTime, 1, 60));\r\n\r\n //Level #5\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(300, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n ); \r\n arrayCars.push(\r\n new Car(360, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 12, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n ); \r\n spawnTime = [];\r\n spawnTime = [550, 520, 480];\r\n this.levels.push(new Levels(5, 12, arrayCars, arrayObjects, spawnTime, 1, 60));\r\n\r\n //Level #6\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(380, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(400, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(420, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 14, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [800, 850, 900];\r\n this.levels.push(new Levels(6, 14, arrayCars, arrayObjects, spawnTime, 1.5, 80));\r\n\r\n //Level #7\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(420, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(440, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(460, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 16, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [700, 720, 740];\r\n this.levels.push(new Levels(7, 16, arrayCars, arrayObjects, spawnTime, 2, 100));\r\n\r\n //Level #8\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(410, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(420, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(430, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 16, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [400, 450, 500];\r\n this.levels.push(new Levels(8, 16, arrayCars, arrayObjects, spawnTime, 2.5, 100));\r\n\r\n //Level #9\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(400, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(420, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(430, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 18, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [400, 400, 400];\r\n this.levels.push(new Levels(9, 18, arrayCars, arrayObjects, spawnTime, 3, 110));\r\n\r\n //Level #10\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(380, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(390, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(460, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 18, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [380, 390, 400];\r\n this.levels.push(new Levels(10, 20, arrayCars, arrayObjects, spawnTime, 3, 120));\r\n\r\n //Level #11\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(400, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(440, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(470, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [300, 300, 300];\r\n this.levels.push(new Levels(11, 24, arrayCars, arrayObjects, spawnTime, 3, 130));\r\n\r\n //Level #12\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(400, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(440, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(470, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 26, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [200, 200, 200];\r\n this.levels.push(new Levels(12, 26, arrayCars, arrayObjects, spawnTime, 3, 140));\r\n\r\n //Level #13\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(470, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(500, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(530, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 28, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [200, 200, 200];\r\n this.levels.push(new Levels(13, 28, arrayCars, arrayObjects, spawnTime, 3, 150));\r\n\r\n //Level #14\r\n arrayCars = [];\r\n arrayCars.push(\r\n new Car(510, 0, RiverRunVariables.enemy1SpriteName, this.scene, enemy1Data?.width, enemy1Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(560, 0, RiverRunVariables.enemy2SpriteName, this.scene, enemy2Data?.width, enemy2Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(590, 0, RiverRunVariables.enemy3SpriteName, this.scene, enemy3Data?.width, enemy3Data?.heigth)\r\n );\r\n arrayCars.push(\r\n new Car(0, 28, RiverRunVariables.object1SpriteName, this.scene, objects1Data?.width, objects1Data?.heigth)\r\n );\r\n spawnTime = [];\r\n spawnTime = [200, 200, 200];\r\n this.levels.push(new Levels(14, 28, arrayCars, arrayObjects, spawnTime, 3, 150));\r\n }\r\n}\r\n","import { KeySide } from './KeySide';\r\nimport { RiverRunVariables } from '../Global/RiverRunVariables';\r\nexport class BackgroundRoad extends Phaser.GameObjects.TileSprite {\r\n constructor(scene: Phaser.Scene, widthBg: number, heightBg: number, backgroundName: string) {\r\n super(scene, 400, 300, widthBg, heightBg, backgroundName);\r\n scene.physics.add.existing(this);\r\n scene.add.existing(this);\r\n this.displayHeight = heightBg;\r\n this.displayWidth = widthBg;\r\n }\r\n}\r\n","export class BackgroundBack extends Phaser.GameObjects.TileSprite {\r\n constructor(\r\n scene: Phaser.Scene,\r\n width: number,\r\n heigth: number,\r\n backgroundName: string,\r\n widthCenter: number,\r\n heightCenter: number\r\n ) {\r\n super(scene, widthCenter, heightCenter, width, heigth, backgroundName);\r\n scene.physics.add.existing(this);\r\n scene.add.existing(this);\r\n }\r\n}\r\n","export class SoundManager {\r\n static readonly boostName = 'boost';\r\n static readonly boost = require('@/assets/games/river-run/themes/speed-race/sounds/RaceCarEngine.ogg');\r\n static readonly explosionName = 'explosion';\r\n static readonly explosion = require('@/assets/games/space-rescue/sounds/explosion.wav');\r\n static readonly passingName = 'passing';\r\n static readonly passingObjects = require('@/assets/games/river-run/themes/speed-race/sounds/rollover3.ogg');\r\n static readonly nextLevelName = 'nextLevel';\r\n static readonly nextLevelObjects = require('@/assets/games/river-run/themes/speed-race/sounds/applause10.ogg');\r\n static readonly engineName = 'engine';\r\n static readonly engine = require('@/assets/games/river-run/themes/speed-race/sounds/RaceCarEngine.ogg');\r\n\r\n static getVariableName(){\r\n return [this.explosionName,this.passingName,this.nextLevelName,this.engineName];\r\n }\r\n static getVariablePath(){\r\n return [this.explosion,this.passingObjects,this.nextLevelObjects,this.engine];\r\n }\r\n}\r\n","import 'phaser';\r\nexport default class Animations {\r\n static animateOilSpin(player: any, scene: Phaser.Scene) {\r\n scene.tweens.add({\r\n targets: player,\r\n angle: { from: 0, to: 250 },\r\n ease: 'Linear',\r\n duration: 500\r\n });\r\n }\r\n}\r\n","export class EndLevelObject extends Phaser.Physics.Arcade.Sprite {\r\n private speedY = 5;\r\n isDestroyed: boolean;\r\n emiterBack = new Phaser.Events.EventEmitter();\r\n stopAllObjects = false;\r\n firstSpeed = 5;\r\n constructor(\r\n scene: Phaser.Scene,\r\n x: number,\r\n y: number,\r\n spriteName: string,\r\n spriteWidth: number,\r\n spriteHeigth: number,\r\n speedBackground: number\r\n ) {\r\n super(scene, x, -10, '');\r\n this.isDestroyed = false;\r\n scene.physics.add.existing(this);\r\n scene.add.existing(this);\r\n this.addSprite(spriteName, spriteWidth, spriteHeigth);\r\n this.setActive(false);\r\n this.setVisible(false);\r\n this.scene.registry.events.on('stopAll', this.stopAll, this);\r\n this.scene.registry.events.on('unlockAll', this.unlockAll, this);\r\n this.scene.registry.events.on('backToOldSpeed', this.backToOldSpeed, this);\r\n this.scene.registry.events.on('changeSpeed', this.changeSpeed, this);\r\n this.scene.registry.events.on('objectChangeSpeed', this.objectChangeSpeed, this);\r\n this.speedY = speedBackground;\r\n this.firstSpeed = this.speedY;\r\n }\r\n backToOldSpeed() {\r\n if (this.body != undefined) {\r\n this.setVelocityY(0);\r\n this.speedY = this.firstSpeed;\r\n }\r\n }\r\n objectChangeSpeed(parameter: any) {\r\n this.setVelocityY(0);\r\n this.firstSpeed = parameter.speed;\r\n this.speedY = parameter.speed;\r\n }\r\n changeSpeed(parameter: any) {\r\n this.speedY = (parameter.speed / 100) * 3;\r\n if (this.body != undefined) {\r\n if (parameter.back) {\r\n this.setVelocityY(parameter.speed * 1.6);\r\n } else {\r\n this.setVelocityY(parameter.speed * 2);\r\n }\r\n }\r\n }\r\n stopAll() {\r\n this.stopAllObjects = true;\r\n }\r\n unlockAll() {\r\n this.stopAllObjects = false;\r\n }\r\n addSprite(name: string, spriteWidth: number, heigth: number) {\r\n this.setTexture(name);\r\n this.displayWidth = spriteWidth;\r\n this.displayHeight = heigth;\r\n }\r\n createObject(x: number) {\r\n this.body.reset(x, -10);\r\n this.isDestroyed = false;\r\n this.stopAllObjects = false;\r\n this.speedY = this.firstSpeed;\r\n this.setActive(true);\r\n this.setVisible(true);\r\n }\r\n preUpdate(time: number, delta: number) {\r\n super.preUpdate(time, delta);\r\n\r\n if (this.y >= this.scene.game.canvas.height + 30) {\r\n this.setActive(false);\r\n this.setVisible(false);\r\n this.body.reset(0, -50);\r\n } else if (!this.stopAllObjects) {\r\n this.y += this.speedY;\r\n }\r\n }\r\n}\r\n","import 'phaser';\r\nimport { GameTriggerType } from '../game-engine-base';\r\nimport { GameCustomizableElement, GameCustomizableElementType } from '../game-engine-customizable-element';\r\nimport { Player } from './Models/playercontroller';\r\nimport { RiverRunVariables } from './Global/RiverRunVariables';\r\nimport { Base } from './Global/BaseControllClass';\r\nimport { KeySide } from './Models/KeySide';\r\nimport { BackgroundRoad } from './Models/backgroundRoad';\r\nimport { BackgroundBack } from './Models/backgroundBack';\r\nimport EnemyVehicleFactory from './Models/Enemy/EnemyVehicleFactory';\r\nimport ObjectFactory from './Models/ObjectFactory';\r\nimport { GameTheme } from '../../models/game-theme';\r\nimport { SoundManager } from './Global/soundManager';\r\nimport Animations from './Global/Animations';\r\nimport { EndLevelObject } from './Global/EndLevelObject';\r\nimport { EngineController } from '@/modules/game-play/games/framework/engine-controller';\r\n\r\n//Game Main class\r\nexport class GameScene extends Phaser.Scene {\r\n constructor(\r\n protected askQuestion: () => void,\r\n protected gameOverDialog: (score: number) => void,\r\n protected saveGameLog: (score: number, trigger: GameTriggerType) => void,\r\n getCustomziableTypes: GameCustomizableElement[],\r\n protected theme?: GameTheme\r\n ) {\r\n super({\r\n key: 'Game',\r\n physics: {\r\n default: 'arcade',\r\n arcade: {\r\n debug: false,\r\n gravity: { y: 0 }\r\n }\r\n }\r\n });\r\n this.getCustomziableTypes = getCustomziableTypes;\r\n this.textFont = '20px Play, sans-serif';\r\n this.textFontStart = '80px Play, sans-serif';\r\n }\r\n peopleOrObjects = false;\r\n level!: number;\r\n levelEvent!: any;\r\n playTime = 0;\r\n respawnEvent!: any;\r\n respawnObjectEvent!: any;\r\n spawnPointRand!: number;\r\n points!: number;\r\n player!: Player;\r\n emiterEvent: any;\r\n backgroundRoad!: BackgroundRoad;\r\n backgroundBack: Array = [];\r\n getCustomziableTypes!: any;\r\n textFont: string;\r\n textFontStart: string;\r\n cursorKeys!: any;\r\n baseControllClass!: Base;\r\n allSpritesImages: GameCustomizableElement[] = [];\r\n allText!: GameCustomizableElement[];\r\n allColors!: GameCustomizableElement[];\r\n randomObjects = 0;\r\n distance = 0;\r\n distanceToPass = 0;\r\n endLevelObject!: EndLevelObject;\r\n stopSpawn = false;\r\n speedIncrease = 70;\r\n defaultSpeed = 100;\r\n defaultLowestSpeed = 60;\r\n speedDecrease = 1;\r\n backToOldOnce = false;\r\n odometerData!: any;\r\n odometerLine!: any;\r\n staminaBottom!: any;\r\n staminaTop!: any;\r\n staminaAnimation!: any;\r\n lastKeySide!: KeySide;\r\n brakeStaminaBar!: Phaser.GameObjects.Graphics;\r\n brakePenaltyGoing!: boolean;\r\n speedUpOdometerAnimation = false;\r\n currentSpeed = 100;\r\n maxBoostSpeed = 150;\r\n minBoostSpeed = 50;\r\n playOnce = true;\r\n playAudio = false;\r\n changeRespawnStateBoost = false;\r\n waitForStartGame = true;\r\n //Init all parametrs\r\n init(params: any): void {\r\n this.points = 0;\r\n this.level = 1;\r\n }\r\n\r\n //Load all texture before launch game\r\n preload() {\r\n this.physics.world.setFPS(60);\r\n this.physics.world.setBoundsCollision();\r\n\r\n //Inicializate Game Framework\r\n EngineController.initialize(this, this.theme, this.getCustomziableTypes);\r\n\r\n //Load audio by AudioManager class\r\n EngineController.createAudioSystem(SoundManager);\r\n\r\n this.allText = this.getCustomziableTypes.filter(\r\n (entity: { type: GameCustomizableElementType }) => entity.type == GameCustomizableElementType.Text\r\n );\r\n this.allColors = this.getCustomziableTypes.filter(\r\n (entity: { type: GameCustomizableElementType }) => entity.type == GameCustomizableElementType.Color\r\n );\r\n\r\n this.allSpritesImages = this.getCustomziableTypes.filter(\r\n (entity: { type: GameCustomizableElementType }) => entity.type == GameCustomizableElementType.Image\r\n );\r\n this.allSpritesImages.forEach(element => {\r\n if (element.value != null || element.value != '') {\r\n if (\r\n element.name == RiverRunVariables.roadSpriteName ||\r\n element.name == RiverRunVariables.bgBackSpriteNameLeft ||\r\n element.name == RiverRunVariables.bgBackSpriteNameRight\r\n ) {\r\n this.load.image(element.name, element.value.toString());\r\n } else {\r\n this.textures.addBase64(element.name, element.value);\r\n }\r\n }\r\n });\r\n\r\n //Load scene data\r\n this.data.set('pause', false);\r\n }\r\n\r\n //Main function scene to create GameObjects\r\n create() {\r\n this.registry.events.on('endGameDialog', this.endGameDialog, this);\r\n this.registry.events.on('textControllerReplay', this.textControllerReplay, this);\r\n this.baseControllClass = new Base(\r\n this.getCustomziableTypes.find(\r\n (element: GameCustomizableElement) => element.name == RiverRunVariables.LivesName\r\n ).value,\r\n this,\r\n this.getCustomziableTypes\r\n );\r\n //Create background\r\n this.backgroundBack.push(\r\n new BackgroundBack(\r\n this,\r\n this.baseControllClass.backgroundBackWidth,\r\n this.baseControllClass.backgroundHeigth,\r\n RiverRunVariables.bgBackSpriteNameLeft,\r\n 75,\r\n 400\r\n )\r\n );\r\n this.backgroundBack.push(\r\n new BackgroundBack(\r\n this,\r\n this.baseControllClass.backgroundBackWidth,\r\n this.baseControllClass.backgroundHeigth,\r\n RiverRunVariables.bgBackSpriteNameRight,\r\n 725,\r\n 400\r\n )\r\n );\r\n //create bacgroun for this scene\r\n this.backgroundRoad = new BackgroundRoad(\r\n this,\r\n this.baseControllClass.backgroundWidth,\r\n this.baseControllClass.backgroundHeigth,\r\n RiverRunVariables.roadSpriteName\r\n );\r\n\r\n //create ship and asigns it position and speed\r\n this.player = new Player(\r\n this,\r\n this.baseControllClass.playerPozX,\r\n this.baseControllClass.playerPozY,\r\n this.baseControllClass.playerSpeedOnX,\r\n this.baseControllClass.playerMaxSpeedOnX,\r\n this.baseControllClass.playerSpeedOnY,\r\n this.baseControllClass.playerMaxSpeedOnY,\r\n this.baseControllClass.playerBorderMaxOnX,\r\n this.baseControllClass.playerBorderMinOnX,\r\n this.baseControllClass.playerBorderMaxOnY,\r\n this.baseControllClass.playerBorderMinOnY,\r\n this.baseControllClass.playerWidth,\r\n this.baseControllClass.playerHeigth\r\n );\r\n this.endLevelObject = new EndLevelObject(\r\n this,\r\n this.baseControllClass.flagSpawn,\r\n 0,\r\n RiverRunVariables.endLevelObj,\r\n this.baseControllClass.flagWidth,\r\n this.baseControllClass.flagHeight,\r\n this.baseControllClass.levels[this.level - 1].backgroundSpeed\r\n );\r\n //initialize emiter used on scene\r\n this.emiterEvent = new Phaser.Events.EventEmitter();\r\n //sets behavior if UnderCollisionEnemy string is emited\r\n this.emiterEvent.on('UnderCollisionEnemy', this.underCollisionEnemy, this);\r\n\r\n //Create time\r\n this.time.addEvent({\r\n delay: 1000,\r\n loop: true,\r\n callback: () => {\r\n this.playTime += 1;\r\n }\r\n });\r\n\r\n if (this.checkLevelReturn()) {\r\n this.cursorKeys = this.input.keyboard.createCursorKeys();\r\n this.createOverlapsPlayer();\r\n }\r\n\r\n this.registry.events.on('AnswerEvent', this.respondAnswer, this);\r\n EngineController.createLifeSystem(RiverRunVariables.heartSpriteName, this.baseControllClass.life);\r\n\r\n //Show text on start\r\n this.physics.pause();\r\n this.data.set('pause', true);\r\n EngineController.createText(\r\n this.allText.find((val: { name: string }) => val.name == 'StartText')?.value.toString(),\r\n false\r\n );\r\n\r\n this.saveGameLog(1, GameTriggerType.GameStart);\r\n\r\n this.distanceToPass = this.baseControllClass.levels[this.level - 1].distanceToNextLevel;\r\n\r\n if (this.baseControllClass.showOdometer) {\r\n //Load odometer\r\n this.odometerData = this.allSpritesImages.find(\r\n (element: GameCustomizableElement) => element.name == RiverRunVariables.odometer\r\n );\r\n const odometer = this.add\r\n .sprite(\r\n this.game.canvas.width - 80,\r\n this.game.canvas.height - this.odometerData.heigth / 2 + 20,\r\n RiverRunVariables.odometer\r\n )\r\n .setDepth(2);\r\n odometer.displayHeight = this.odometerData.heigth;\r\n odometer.displayWidth = this.odometerData.width;\r\n\r\n this.odometerLine = this.add\r\n .sprite(\r\n this.game.canvas.width - 80,\r\n this.game.canvas.height - this.odometerData.heigth / 2 + 27,\r\n RiverRunVariables.odometerLine\r\n )\r\n .setDepth(3);\r\n this.odometerLine.displayHeight = this.odometerData.heigth;\r\n this.odometerLine.displayWidth = this.odometerData.width;\r\n this.odometerSet(this.getMaxSpeedLevel(), this.currentSpeed);\r\n }\r\n if (this.checkLevelReturn()) {\r\n this.minBoostSpeed = this.baseControllClass.levels[this.level - 1].backgroundSpeed * 10;\r\n this.maxBoostSpeed = this.baseControllClass.levels[this.level - 1].backgroundSpeed * 40;\r\n } else {\r\n this.minBoostSpeed = this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed * 10;\r\n this.maxBoostSpeed = this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed * 40;\r\n }\r\n\r\n this.createStaminaBar();\r\n\r\n this.changeSpeedNextLevel();\r\n this.time.removeAllEvents();\r\n }\r\n createStaminaBar(): void {\r\n //Load stamina\r\n this.staminaBottom = this.allSpritesImages.find(\r\n (element: GameCustomizableElement) => element.name == RiverRunVariables.staminaBottom\r\n );\r\n const staminaBottom = this.add\r\n .sprite(\r\n 80,\r\n this.game.canvas.height - 40,\r\n \r\n RiverRunVariables.staminaBottom\r\n ).setDepth(2)\r\n staminaBottom.displayHeight = this.staminaBottom.heigth;\r\n staminaBottom.displayWidth = this.staminaBottom.width;\r\n\r\n const staminaTopData = this.allSpritesImages.find(\r\n (element: GameCustomizableElement) => element.name == RiverRunVariables.staminaTop\r\n );\r\n this.staminaTop = this.add\r\n .sprite(\r\n 80,\r\n this.game.canvas.height - 40,\r\n RiverRunVariables.staminaTop\r\n ).setDepth(4)\r\n this.staminaTop.displayHeight = staminaTopData!.heigth;\r\n this.staminaTop.displayWidth = staminaTopData!.width;\r\n\r\n const brakeStaminaBarDefaultRect = new Phaser.Geom.Rectangle(32, this.game.canvas.height - 48, 96, 16);\r\n const staminaColor = this.allColors.find(\r\n (element: GameCustomizableElement) => element.name == RiverRunVariables.staminaColor\r\n );\r\n \r\n let staminaColorCorrectType = null;\r\n if (typeof staminaColor?.value === \"string\") {\r\n staminaColorCorrectType = parseInt(staminaColor.value)\r\n } else {\r\n staminaColorCorrectType = staminaColor?.value;\r\n }\r\n \r\n this.brakeStaminaBar = this.add\r\n .graphics({\r\n fillStyle: {\r\n color: staminaColorCorrectType,\r\n alpha: 1\r\n }\r\n })\r\n .fillRoundedRect(0, 0, 96, 16, 3)\r\n .setDepth(3);\r\n this.brakeStaminaBar.x = brakeStaminaBarDefaultRect.x;\r\n this.brakeStaminaBar.y = brakeStaminaBarDefaultRect.y;\r\n\r\n }\r\n \r\n createOverlapsPlayer() {\r\n this.baseControllClass.levels[\r\n this.checkLevelReturn() ? this.level - 1 : this.baseControllClass.levels.length - 1\r\n ].arrayCars.forEach(x => {\r\n if (this.baseControllClass.turnOnSoundPassing) {\r\n this.physics.add.overlap(this.player.soundObjects, x.factoryVehicle, (player: any, enemy: any) => {\r\n if (!enemy.passingSound) {\r\n EngineController.playAudio(SoundManager.passingName);\r\n enemy.passingSound = true;\r\n }\r\n });\r\n }\r\n\r\n if (x.speedObject != 0) {\r\n this.physics.add.overlap(this.player, x.factoryVehicle, (player: any, enemy: any) => {\r\n if (!this.data.get('pause')) {\r\n Animations.animateOilSpin(this.player, this);\r\n EngineController.playAudio(SoundManager.explosionName);\r\n this.registry.events.emit('stopAll');\r\n this.respawnObjectEvent.remove(true);\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.makeQuestion();\r\n }\r\n });\r\n } else {\r\n this.physics.add.overlap(this.player, x.factoryVehicle, (player: any, enemy: any) => {\r\n if (!this.data.get('pause')) {\r\n EngineController.playAudio(SoundManager.explosionName);\r\n this.registry.events.emit('stopAll');\r\n this.respawnObjectEvent.remove(true);\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.makeQuestion();\r\n }\r\n });\r\n }\r\n });\r\n\r\n EngineController.loadAudioSystem();\r\n }\r\n //Update function scene\r\n update(time: number, delta: number): void {\r\n if (!this.data.get('pause')) {\r\n if (this.waitForStartGame || !this.respawnEvent) {\r\n const value = this.getSpawnTime();\r\n if (value > 100) {\r\n this.createRespawnEvent(this.getSpawnTime() * 0.5, true);\r\n } else {\r\n this.createRespawnEvent(this.baseControllClass.levels[this.level - 1].spawnTime[this.getSpawnTime()], false);\r\n }\r\n\r\n this.createRespawnEventObjects(this.baseControllClass.levels[this.level - 1].backgroundSpeed);\r\n\r\n this.waitForStartGame = false;\r\n }\r\n\r\n this.points += 5;\r\n\r\n this.handlePlayerMovementInput(delta);\r\n\r\n //Speed distance increase when key is pressed\r\n this.speedIncreaseAll(delta);\r\n\r\n if (this.distance >= this.distanceToPass - 0.1 && !this.stopSpawn) {\r\n this.stopSpawn = true;\r\n this.endLevelObject.createObject(this.baseControllClass.flagSpawn);\r\n this.respawnEvent.remove(true);\r\n }\r\n if (this.stopSpawn) {\r\n if (this.endLevelObject.body.y >= this.player.body.y) {\r\n this.registry.events.emit('stopAll');\r\n const nextLevel = this.level + 1;\r\n\r\n this.nextLevelIncrease(\r\n this.allText.find((val: { name: string }) => val.name == 'NextLevel')?.value.toString() + ' ' + nextLevel\r\n );\r\n if (this.checkLevelReturn()) {\r\n this.distanceToPass += this.baseControllClass.levels[this.level - 1].distanceToNextLevel;\r\n } else {\r\n this.distanceToPass += this.baseControllClass.levels[\r\n this.baseControllClass.levels.length - 1\r\n ].distanceToNextLevel;\r\n }\r\n\r\n this.stopSpawn = false;\r\n }\r\n }\r\n //speed back when key is unpushed\r\n this.speedIncreaseBack(delta);\r\n }\r\n\r\n this.updatePlayersScoreUI();\r\n }\r\n handlePlayerMovementInput(delta: number): void {\r\n let currentKeySides = KeySide.stop;\r\n\r\n const areLeftAndRightPressedAtTheSameTime = this.cursorKeys.left.isDown && this.cursorKeys.right.isDown;\r\n const areUpAndDownPressedAtTheSameTime = this.cursorKeys.up.isDown && this.cursorKeys.down.isDown;\r\n const noCursorKeysDown =\r\n !this.cursorKeys.left.isDown &&\r\n !this.cursorKeys.right.isDown &&\r\n !this.cursorKeys.up.isDown &&\r\n !this.cursorKeys.down.isDown;\r\n\r\n if (!areLeftAndRightPressedAtTheSameTime) {\r\n if (this.cursorKeys.left.isDown) {\r\n currentKeySides |= KeySide.left;\r\n } else if (this.cursorKeys.right.isDown) {\r\n currentKeySides |= KeySide.right;\r\n }\r\n }\r\n\r\n if (!areUpAndDownPressedAtTheSameTime) {\r\n if (this.cursorKeys.up.isDown) {\r\n currentKeySides |= KeySide.up;\r\n\r\n if (this.baseControllClass.showOdometer && (this.lastKeySide & KeySide.up) !== KeySide.up) {\r\n this.checkAnimationSpeed(this.defaultSpeed);\r\n this.odometerSet(this.currentSpeed, this.getMaxSpeedLevel() + 30);\r\n }\r\n } else if (this.cursorKeys.down.isDown) {\r\n currentKeySides |= KeySide.down;\r\n if (this.baseControllClass.showOdometer && (this.lastKeySide & KeySide.down) !== KeySide.down) {\r\n this.checkAnimationSpeed(50);\r\n this.odometerSet(this.currentSpeed, this.getMaxSpeedLevel() - 15);\r\n }\r\n }\r\n }\r\n\r\n if (noCursorKeysDown) {\r\n if (this.baseControllClass.showOdometer && (this.lastKeySide & KeySide.stop) !== KeySide.stop) {\r\n this.tweens.killTweensOf(this.odometerLine);\r\n this.currentSpeed = this.odometerLine.angle;\r\n this.odometerSet(this.currentSpeed, this.getMaxSpeedLevel());\r\n }\r\n } else {\r\n currentKeySides &= ~KeySide.stop;\r\n }\r\n \r\n if (this.player.brakeStamina < 100 && !this.player.staminaBlockade && !this.player.slowDown){\r\n this.player.brakeStamina += 0.2;\r\n this.staminaBarSetScale(this.player.brakeStamina / 100, (this.player.brakeStamina + 0.4) / 100);\r\n \r\n }\r\n if (this.player.brakeStamina < 20 && this.player.staminaBlockade){\r\n this.player.brakeStamina += 0.1;\r\n this.staminaBarSetScale(this.player.brakeStamina / 100, (this.player.brakeStamina + 0.2) / 100);\r\n if(this.player.brakeStamina >= 20) this.player.staminaBlockade = false;\r\n };\r\n this.player.move(currentKeySides, delta);\r\n this.lastKeySide = currentKeySides;\r\n }\r\n odometerSet(from: number, to: number) {\r\n this.tweens.add({\r\n targets: this.odometerLine,\r\n angle: { from: from, to: to },\r\n ease: 'Linear',\r\n duration: 700\r\n });\r\n this.currentSpeed = to;\r\n }\r\n staminaBarSetScale(from: number, to: number) {\r\n this.tweens.add({\r\n targets: this.brakeStaminaBar,\r\n scaleX: { from: from, to: to },\r\n ease: 'Linear',\r\n duration: 700\r\n });\r\n }\r\n getMaxSpeedLevel() {\r\n if (this.checkLevelReturn()) {\r\n return this.baseControllClass.levels[this.level - 1].odometerSpeed;\r\n } else {\r\n return this.baseControllClass.levels[this.baseControllClass.levels.length - 1].odometerSpeed;\r\n }\r\n }\r\n getMaxSpeedBgLevel() {\r\n if (this.checkLevelReturn()) {\r\n return this.baseControllClass.levels[this.level - 1].backgroundSpeed;\r\n } else {\r\n return this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed;\r\n }\r\n }\r\n speedIncreaseBack(delta: number) {\r\n if (this.player.slowDown && !this.player.staminaBlockade) {\r\n this.player.brakeStamina -= 0.5;\r\n this.staminaBarSetScale(this.player.brakeStamina / 100, (this.player.brakeStamina - 0.7) / 100);\r\n if (this.player.brakeStamina <= 0) {\r\n this.player.staminaBlockade = true;\r\n return;\r\n }\r\n this.checkAnimationSpeed(this.minBoostSpeed);\r\n this.backgroundRoad.tilePositionY -= this.speedDecreaseDelta(delta);\r\n this.backgroundBack.forEach(val => {\r\n val.tilePositionY -= this.speedDecreaseDelta(delta);\r\n });\r\n this.registry.events.emit('changeSpeed', { speed: this.speedIncrease, back: true });\r\n if (this.speedIncrease >= this.minBoostSpeed) {\r\n this.speedIncrease -= this.getMaxSpeedBgLevel() / 2;\r\n }\r\n } else if (this.player.speedBack) {\r\n this.playOnce = true;\r\n this.checkAnimationSpeed(this.maxBoostSpeed);\r\n this.backgroundRoad.tilePositionY -= this.speedIncreaseDelta(delta);\r\n this.backgroundBack.forEach(val => {\r\n val.tilePositionY -= this.speedIncreaseDelta(delta);\r\n });\r\n this.registry.events.emit('changeSpeed', { speed: this.speedIncrease });\r\n if (this.speedIncrease <= this.maxBoostSpeed) {\r\n if (\r\n !this.sound.get(SoundManager.nextLevelName).isPlaying &&\r\n !this.sound.get(SoundManager.engineName).isPlaying\r\n ) {\r\n this.sound.get(SoundManager.engineName).play();\r\n }\r\n if (this.playOnce) {\r\n this.playOnce = false;\r\n if (!this.changeRespawnStateBoost) {\r\n const value = this.getSpawnTime();\r\n if (value > 100) {\r\n this.createRespawnEvent(this.getSpawnTime() * 0.5, true);\r\n } else {\r\n if (this.checkLevelReturn()) {\r\n this.createRespawnEvent(\r\n this.baseControllClass.levels[this.level - 1].spawnTime[this.getSpawnTime()] * 0.5,\r\n true\r\n );\r\n } else {\r\n this.createRespawnEvent(\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].spawnTime[\r\n this.getSpawnTime()\r\n ] * 0.5,\r\n true\r\n );\r\n }\r\n }\r\n this.changeRespawnStateBoost = true;\r\n }\r\n }\r\n this.speedIncrease += this.getMaxSpeedBgLevel();\r\n }\r\n } else {\r\n if (this.backToOldOnce) {\r\n this.backToOldOnce = false;\r\n }\r\n if (this.speedIncrease > this.defaultSpeed) {\r\n this.checkAnimationSpeed(this.defaultSpeed);\r\n this.backgroundRoad.tilePositionY -= this.speedIncreaseDelta(delta);\r\n this.backgroundBack.forEach(val => {\r\n val.tilePositionY -= this.speedIncreaseDelta(delta);\r\n });\r\n this.registry.events.emit('changeSpeedObj', { speed: this.speedIncrease, back: false });\r\n this.speedIncrease -= this.getMaxSpeedBgLevel() * 10;\r\n } else {\r\n if (!this.backToOldOnce) {\r\n if (this.changeRespawnStateBoost) {\r\n this.time.addEvent({\r\n delay: 200,\r\n loop: false,\r\n callback: () => {\r\n const value = this.getSpawnTime();\r\n if (value > 100) {\r\n this.createRespawnEvent(this.getSpawnTime(), false);\r\n } else {\r\n if (this.checkLevelReturn()) {\r\n this.createRespawnEvent(\r\n this.baseControllClass.levels[this.level - 1].spawnTime[this.getSpawnTime()],\r\n false\r\n );\r\n } else {\r\n this.createRespawnEvent(\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].spawnTime[\r\n this.getSpawnTime()\r\n ],\r\n false\r\n );\r\n }\r\n }\r\n\r\n this.changeRespawnStateBoost = false;\r\n }\r\n });\r\n }\r\n this.registry.events.emit('backToOldSpeed');\r\n this.backToOldOnce = true;\r\n if (this.speedUpOdometerAnimation) {\r\n this.speedUpOdometerAnimation = !this.speedUpOdometerAnimation;\r\n }\r\n }\r\n if (this.checkLevelReturn()) {\r\n this.setSpeed(this.baseControllClass.levels[this.level - 1].backgroundSpeed);\r\n } else {\r\n this.setSpeed(this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed);\r\n }\r\n this.speedIncrease = this.defaultSpeed;\r\n }\r\n }\r\n }\r\n checkAnimationSpeed(speedMax: number) {\r\n if (this.baseControllClass.showOdometer && this.speedUpOdometerAnimation) {\r\n this.tweens.killTweensOf(this.odometerLine);\r\n this.currentSpeed = this.odometerLine.angle;\r\n this.odometerSet(this.currentSpeed, speedMax);\r\n this.speedUpOdometerAnimation = !this.speedUpOdometerAnimation;\r\n }\r\n }\r\n setSpeed(speed: number) {\r\n this.backgroundRoad.tilePositionY -= speed;\r\n this.backgroundBack.forEach(val => {\r\n val.tilePositionY -= speed;\r\n });\r\n }\r\n speedIncreaseDelta(delta: number) {\r\n return (this.getMaxSpeedBgLevel() + this.speedIncrease) / delta;\r\n }\r\n speedDecreaseDelta(delta: number) {\r\n return (this.getMaxSpeedBgLevel() + this.speedIncrease * 0.85) / delta;\r\n }\r\n speedIncreaseAll(delta: number) {\r\n if (this.checkLevelReturn()) {\r\n if (this.speedIncrease > this.defaultSpeed) {\r\n this.distance +=\r\n (delta * this.baseControllClass.levels[this.level - 1].backgroundSpeed * 30 + this.speedIncrease * 3) /\r\n 600 /\r\n 3600;\r\n } else {\r\n this.distance += (delta * this.baseControllClass.levels[this.level - 1].backgroundSpeed * 10) / 600 / 3600;\r\n }\r\n } else {\r\n if (this.speedIncrease > this.defaultSpeed) {\r\n this.distance +=\r\n (delta * this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed * 30 +\r\n this.speedIncrease * 3) /\r\n 600 /\r\n 3600;\r\n } else {\r\n this.distance +=\r\n (delta * this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed * 10) /\r\n 600 /\r\n 3600;\r\n }\r\n }\r\n }\r\n //Update bar\r\n updatePlayersScoreUI(): void {\r\n if (this.checkLevelReturn()) {\r\n EngineController.updateTimeDistance(Math.round(this.points), this.level, this.distance);\r\n } else {\r\n EngineController.updateTimeDistance(Math.round(this.points), this.level, this.distance);\r\n }\r\n }\r\n\r\n //Runs if enemy and player colides\r\n underCollisionEnemy() {\r\n if (!this.data.get('pause')) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.makeQuestion();\r\n }\r\n }\r\n\r\n //check if we dont overstep baseControllClass array\r\n checkLevelReturn() {\r\n if (this.level - 1 <= this.baseControllClass.levels.length - 1) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n createEnemy() {\r\n if (!this.data.get('pause')) {\r\n if (this.checkLevelReturn()) {\r\n const numberMax = (this.baseControllClass.levels[this.level - 1].arrayCars.length - 1) * 100;\r\n const randomNumber = Phaser.Math.Between(0, numberMax);\r\n EnemyVehicleFactory.CreateVehicle(\r\n this.baseControllClass.levels[this.level - 1].arrayCars[Math.round(randomNumber / 100)].factoryVehicle,\r\n this.baseControllClass.levels[this.level - 1].arrayCars[Math.round(randomNumber / 100)].speedVehicle,\r\n this.baseControllClass.levels[this.level - 1].arrayCars[Math.round(randomNumber / 100)].speedObject,\r\n this.baseControllClass.rotateSprite,\r\n Math.round(randomNumber / 100)\r\n );\r\n } else {\r\n const numberMax =\r\n (this.baseControllClass.levels[this.baseControllClass.levels.length - 1].arrayCars.length - 1) * 100;\r\n const randomNumber = Phaser.Math.Between(0, numberMax);\r\n EnemyVehicleFactory.CreateVehicle(\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].arrayCars[\r\n Math.round(randomNumber / 100)\r\n ].factoryVehicle,\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].arrayCars[\r\n Math.round(randomNumber / 100)\r\n ].speedVehicle,\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].arrayCars[\r\n Math.round(randomNumber / 100)\r\n ].speedObject,\r\n this.baseControllClass.rotateSprite,\r\n Math.round(randomNumber / 100)\r\n );\r\n }\r\n }\r\n }\r\n createObjects(speed?: number) {\r\n if (!this.data.get('pause')) {\r\n if (this.randomObjects == 0) {\r\n if (this.checkLevelReturn()) {\r\n const numberMax = (this.baseControllClass.levels[this.level - 1].arrayObjects.length - 1) * 100;\r\n const randomNumber = Phaser.Math.Between(0, numberMax);\r\n ObjectFactory.CreateObject(\r\n this.baseControllClass.levels[this.level - 1].arrayObjects[Math.round(randomNumber / 100)].factoryVehicle,\r\n speed\r\n );\r\n } else {\r\n const numberMax =\r\n (this.baseControllClass.levels[this.baseControllClass.levels.length - 1].arrayObjects.length - 1) * 100;\r\n const randomNumber = Phaser.Math.Between(0, numberMax);\r\n ObjectFactory.CreateObject(\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].arrayObjects[\r\n Math.round(randomNumber / 100)\r\n ].factoryVehicle,\r\n speed\r\n );\r\n }\r\n }\r\n }\r\n }\r\n\r\n //Respond answer from server\r\n respondAnswer(data: boolean, answerPoolEmpty: boolean) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n if (answerPoolEmpty) {\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.LiveLost);\r\n if (EngineController.lifeLost(true)) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n }\r\n this.nextLevel('');\r\n } else {\r\n switch (data) {\r\n case true:\r\n this.points += 500;\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.LiveSaved);\r\n this.nextLevel(\r\n this.allText.find((val: { name: string }) => val.name == 'AnswerTextCorrect')?.value.toString()\r\n );\r\n break;\r\n case false:\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.LiveLost);\r\n if (EngineController.lifeLost(false)) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n break;\r\n }\r\n this.nextLevel(this.allText.find((val: { name: string }) => val.name == 'AnswerTextWrong')?.value.toString());\r\n break;\r\n }\r\n }\r\n this.eventInit();\r\n }\r\n\r\n createRespawnEvent(delay: number, twoEvent: boolean) {\r\n //create enemys\r\n this.time.removeEvent(this.respawnEvent);\r\n this.time.clearPendingEvents();\r\n this.respawnEvent = this.time.addEvent({\r\n delay: twoEvent ? delay * 0.65 : delay,\r\n loop: true,\r\n callback: () => {\r\n if (!this.data.get('pause')) {\r\n this.createEnemy();\r\n }\r\n }\r\n });\r\n }\r\n createRespawnEventObjects(speed?: number) {\r\n //create Objects\r\n this.time.removeEvent(this.respawnObjectEvent);\r\n this.respawnObjectEvent = this.time.addEvent({\r\n delay: this.baseControllClass.objectsSpawnTime,\r\n loop: true,\r\n callback: () => {\r\n this.createObjects(speed);\r\n }\r\n });\r\n }\r\n changeSpeedNextLevel() {\r\n if (this.checkLevelReturn()) {\r\n this.registry.events.emit('changeSpeed', {\r\n speed: this.baseControllClass.levels[this.level - 1].backgroundSpeed\r\n });\r\n this.registry.events.emit('objectChangeSpeed', {\r\n speed: this.baseControllClass.levels[this.level - 1].backgroundSpeed\r\n });\r\n this.minBoostSpeed = this.baseControllClass.levels[this.level - 1].backgroundSpeed * 10;\r\n this.maxBoostSpeed = this.baseControllClass.levels[this.level - 1].backgroundSpeed * 40;\r\n } else {\r\n this.registry.events.emit('changeSpeed', {\r\n speed: this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed\r\n });\r\n this.registry.events.emit('objectChangeSpeed', {\r\n speed: this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed\r\n });\r\n this.minBoostSpeed = this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed * 10;\r\n this.maxBoostSpeed = this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed * 40;\r\n }\r\n this.odometerSet(this.currentSpeed, this.getMaxSpeedLevel());\r\n }\r\n //Set new level after question or player destroyed all enemys\r\n nextLevel(textToShow: string | undefined) {\r\n //pause game\r\n this.data.set('pause', true);\r\n this.player.move(KeySide.stop, 0);\r\n //pause game physic\r\n this.physics.pause();\r\n this.respawnEvent.remove(true);\r\n this.registry.events.emit('nextLevel');\r\n this.registry.events.emit('deleteEnemy');\r\n if (textToShow != '') {\r\n EngineController.createText(textToShow, false);\r\n }\r\n\r\n this.changeSpeedNextLevel();\r\n }\r\n eventInit() {\r\n this.respawnEvent.remove(false);\r\n const value = this.getSpawnTime();\r\n if (value > 100) {\r\n this.createRespawnEvent(this.getSpawnTime(), false);\r\n } else {\r\n if (this.checkLevelReturn()) {\r\n this.createRespawnEvent(this.baseControllClass.levels[this.level - 1].spawnTime[this.getSpawnTime()], false);\r\n this.createRespawnEventObjects(this.baseControllClass.levels[this.level - 1].backgroundSpeed);\r\n } else {\r\n this.createRespawnEvent(\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].spawnTime[this.getSpawnTime()],\r\n false\r\n );\r\n this.createRespawnEventObjects(\r\n this.baseControllClass.levels[this.baseControllClass.levels.length - 1].backgroundSpeed\r\n );\r\n }\r\n }\r\n\r\n this.changeSpeedNextLevel();\r\n }\r\n nextLevelIncrease(textToShow: string | undefined) {\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.NewLevel);\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.level = this.level + 1;\r\n this.respawnEvent.remove(true);\r\n this.registry.events.emit('nextLevel');\r\n this.eventInit();\r\n EngineController.createText(textToShow, false);\r\n this.points += this.distance * 1000;\r\n\r\n EngineController.playAudio(SoundManager.nextLevelName);\r\n this.createOverlapsPlayer();\r\n this.changeSpeedNextLevel();\r\n }\r\n\r\n //Mark Question\r\n makeQuestion() {\r\n this.physics.pause();\r\n this.data.set('pause', true);\r\n this.askQuestion();\r\n }\r\n getSpawnTime(): number {\r\n if (this.checkLevelReturn()) {\r\n if (this.baseControllClass.levels[this.level - 1].spawnTime.length) {\r\n return 0;\r\n }\r\n const spawnCount = this.baseControllClass.levels[this.level - 1].spawnTime.length - 1;\r\n if (spawnCount == 0) {\r\n return this.baseControllClass.defaultSpawnTime;\r\n }\r\n return Phaser.Math.Between(0, spawnCount);\r\n } else {\r\n if (this.baseControllClass.levels[this.baseControllClass.levels.length - 1].spawnTime) {\r\n return 0;\r\n }\r\n const spawnCount = this.baseControllClass.levels[this.baseControllClass.levels.length - 1].spawnTime.length - 1;\r\n if (spawnCount == 0) {\r\n return this.baseControllClass.defaultSpawnTime;\r\n }\r\n return Phaser.Math.Between(0, spawnCount);\r\n }\r\n }\r\n endGameDialog() {\r\n this.gameOverDialog(Math.round(this.points));\r\n this.scene.pause();\r\n this.saveGameLog(Math.round(this.points), GameTriggerType.GameOver);\r\n this.game.destroy(true, false);\r\n }\r\n textControllerReplay() {\r\n this.physics.resume();\r\n this.data.set('pause', false);\r\n }\r\n}\r\n","export class ImagesBase64 {\r\n public static readonly enemy1 = require('@/assets/games/river-run/themes/speed-race/sprites/car_white.png');\r\n public static readonly enemy2 = require('@/assets/games/river-run/themes/speed-race/sprites/car_white.png');\r\n public static readonly enemy3 = require('@/assets/games/river-run/themes/speed-race/sprites/car_white.png');\r\n public static readonly object1 = require('@/assets/games/river-run/themes/speed-race/sprites/oil.png');\r\n public static readonly player = require('@/assets/games/river-run/themes/speed-race/sprites/car_white.png');\r\n public static readonly people1 = require('@/assets/games/river-run/themes/speed-race/sprites/small-plants.svg');\r\n public static readonly tree = require('@/assets/games/river-run/themes/speed-race/sprites/small-plants.svg');\r\n public static readonly road = require('@/assets/games/river-run/themes/speed-race/sprites/road.png');\r\n public static readonly bgBackLeft = require('@/assets/games/river-run/themes/speed-race/sprites/grass.png');\r\n public static readonly bgBackRight = require('@/assets/games/river-run/themes/speed-race/sprites/grass.png');\r\n static readonly heart = require('@/assets/games/space-rescue/ui/life.png');\r\n static readonly endLevelObj = require('@/assets/games/river-run/themes/speed-race/sprites/flag.png');\r\n static readonly odometer = require('@/assets/games/river-run/themes/speed-race/sprites/odometer.png');\r\n static readonly odometerLine = require('@/assets/games/river-run/themes/speed-race/sprites/odometerline.png');\r\n }\r\n ","import { GameEngineBase } from '../game-engine-base';\r\nimport 'phaser';\r\nimport { GameScene } from './river-run-gameclass';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { GameCustomizableElement } from '../game-engine-customizable-element';\r\nimport { ImagesBase64 } from './imagesbase64';\r\n\r\nimport { RiverRunVariables } from './Global/RiverRunVariables';\r\n\r\nexport class RiverRunEngine extends GameEngineBase {\r\n game!: Phaser.Game;\r\n private gameConfig!: Phaser.Types.Core.GameConfig;\r\n\r\n initialize(): void {\r\n this.gameConfig = {\r\n title: 'River Run',\r\n width: 800,\r\n height: 600,\r\n type: Phaser.CANVAS,\r\n parent: 'game-window',\r\n transparent: true,\r\n backgroundColor: '#000000',\r\n physics: {\r\n default: 'arcade',\r\n arcade: {\r\n debug: false,\r\n gravity: { y: 0 }\r\n }\r\n },\r\n\r\n scene: [\r\n new GameScene(this.askQuestion, this.gameOverDialog, this.saveGameLog, this.getCustomizedElements(), this.theme)\r\n ]\r\n };\r\n this.game = new Phaser.Game(this.gameConfig);\r\n console.log('initialize riverrungame');\r\n }\r\n\r\n getCustomziableTypes(): GameCustomizableElement[] {\r\n return [\r\n /**\r\n * Create text, number\r\n * @param {string} name\r\n * @param {string} value - translate value\r\n * @param {number} minLength - min lenght\r\n * @param {number} maxLength - max lenght\r\n * @param {bool} isCustomByUser - should be custom by user in menu website \r\n * @param {number} position - position in menu website \r\n */\r\n GameCustomizableElement.CreateText('AnswerTextCorrect', translate('Modules.Runtime.Game.CorrectAnswer'), 2, 20,true,1),\r\n GameCustomizableElement.CreateText('AnswerTextWrong', translate('Modules.Runtime.Game.WrongAnswer'), 2, 20,true,2),\r\n GameCustomizableElement.CreateText('StartText', translate('Modules.Runtime.Game.StartGame'), 2, 30,true,5),\r\n GameCustomizableElement.CreateNumber('LivesNumber', 5, 1, 5,true,3),\r\n GameCustomizableElement.CreateText('NoMoreQuestions', translate('Modules.Runtime.Game.NoMoreQuestions'), 2, 40,true,4),\r\n GameCustomizableElement.CreateText('NextLevel', translate('Modules.Runtime.Game.Level'), 2, 20,true,6),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy1SpriteName, ImagesBase64.enemy1, 40, 80,true,8),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy2SpriteName, ImagesBase64.enemy2, 50, 100,true,9),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy3SpriteName, ImagesBase64.enemy3, 40, 80,true,10),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.playerSpriteName, ImagesBase64.player, 20, 20,true,7),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.person1, ImagesBase64.people1, 30, 50,false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.heartSpriteName, ImagesBase64.heart, 30, 25,true,12),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.treeSpriteName, ImagesBase64.tree, 50, 50,false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.object1SpriteName, ImagesBase64.object1, 50, 50,true,11),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.bgBackSpriteNameLeft, ImagesBase64.bgBackLeft, 0, 0,false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.bgBackSpriteNameRight, ImagesBase64.bgBackRight, 0, 0,false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.roadSpriteName, ImagesBase64.road, 0, 0,false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.endLevelObj, ImagesBase64.endLevelObj, 0, 0,true,13),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.odometer, ImagesBase64.odometer, 160, 150,false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.odometerLine, ImagesBase64.odometerLine, 0, 0,false),\r\n GameCustomizableElement.CreateColor(RiverRunVariables.staminaColor, 0xffffff)\r\n ];\r\n }\r\n\r\n acceptAnswer(isCorrectAnswer: boolean, answerPoolEmpty: boolean): void {\r\n this.game.registry.events.emit('AnswerEvent', isCorrectAnswer, answerPoolEmpty);\r\n }\r\n}\r\n","export enum KeySide {\r\n up,\r\n down,\r\n left,\r\n right,\r\n stop,\r\n block\r\n }\r\n ","import { KeySide } from '../Models/KeySide';\r\nimport { MazeGameVariables } from '../Global/MazeGameVariables';\r\nexport class Player extends Phaser.Physics.Arcade.Sprite {\r\n speedOnX: number;\r\n maxspeedOnX: number;\r\n speedOnY: number;\r\n maxspeedOnY: number;\r\n texturess!: Phaser.Textures.Texture;\r\n playerBorderMaxOnX!: number;\r\n playerBorderMinOnX!: number;\r\n playerBorderMaxOnY!: number;\r\n playerBorderMinOnY!: number;\r\n\r\n constructor(\r\n scene: Phaser.Scene,\r\n x: number,\r\n y: number,\r\n speedOnX: number,\r\n maxspeedOnX: number,\r\n speedOnY: number,\r\n maxspeedOnY: number,\r\n playerBorderMaxOnX: number,\r\n playerBorderMinOnX: number,\r\n playerBorderMaxOnY: number,\r\n playerBorderMinOnY: number,\r\n widthPlayer: number,\r\n heightPlayer: number\r\n ) {\r\n super(scene, x, y, '__PLAYER');\r\n scene.physics.add.existing(this);\r\n this.speedOnX = speedOnX;\r\n this.maxspeedOnX = maxspeedOnX;\r\n this.speedOnY = speedOnY;\r\n this.maxspeedOnY = maxspeedOnY;\r\n scene.add.existing(this);\r\n this.displayHeight = heightPlayer;\r\n this.displayWidth = widthPlayer;\r\n\r\n this.playerBorderMaxOnX = playerBorderMaxOnX;\r\n this.playerBorderMinOnX = playerBorderMinOnX;\r\n this.playerBorderMaxOnY = playerBorderMaxOnY;\r\n this.playerBorderMinOnY = playerBorderMinOnY;\r\n }\r\n\r\n //Move player with animation\r\n move(side: KeySide, delta: number) {\r\n switch (side) {\r\n case KeySide.right:\r\n if (this.body.x <= this.playerBorderMaxOnX) {\r\n if (this.body.velocity.x <= this.maxspeedOnX) {\r\n this.body.velocity.x += this.speedOnX * delta;\r\n this.scene.tweens.add({\r\n targets: this,\r\n angle: { from: 0, to: 15 },\r\n ease: 'Linear',\r\n duration: 300\r\n });\r\n }\r\n } else {\r\n this.angle = 0;\r\n this.body.velocity.x = 0;\r\n }\r\n \r\n break;\r\n case KeySide.left:\r\n if (this.body.x >= this.playerBorderMinOnX) {\r\n if (this.body.velocity.x >= -this.maxspeedOnX) {\r\n this.body.velocity.x += -this.speedOnX * delta;\r\n this.scene.tweens.add({\r\n targets: this,\r\n angle: { from: 0, to: -15 },\r\n ease: 'Linear',\r\n duration: 300\r\n });\r\n }\r\n } else {\r\n this.angle = 0;\r\n this.body.velocity.x = 0;\r\n }\r\n\r\n break;\r\n case KeySide.up:\r\n if (this.body.y >= this.playerBorderMinOnY) {\r\n if (this.body.velocity.y >= -this.maxspeedOnY) {\r\n this.body.velocity.y += -this.speedOnY * delta;\r\n }\r\n } else {\r\n this.body.velocity.y = 0;\r\n }\r\n\r\n break;\r\n case KeySide.down:\r\n if (this.body.y <= this.playerBorderMaxOnY) {\r\n if (this.body.velocity.y <= this.maxspeedOnY) {\r\n this.body.velocity.y += this.speedOnY * delta;\r\n }\r\n } else {\r\n this.body.velocity.y = 0;\r\n }\r\n\r\n break;\r\n case KeySide.stop:\r\n this.angle = 0;\r\n this.body.velocity.x = 0;\r\n this.body.velocity.y = 0;\r\n break;\r\n }\r\n }\r\n}\r\n","export class MazeGameVariables {\r\n static readonly playerSpriteName = '__PLAYER';\r\n static readonly wallSpriteName = '__WALL';\r\n static readonly heartSpriteName = '__HEART';\r\n static readonly LivesName = 'LivesNumber';\r\n static readonly roadSpriteName = '__ROAD';\r\n static readonly BgBackSpriteName = '__BG2';\r\n static readonly line = '__LINE';\r\n}\r\n","export class WallObjectsTilesprite extends Phaser.GameObjects.TileSprite {\r\n constructor(scene: Phaser.Scene, width: number, backgroundName: string) {\r\n super(scene, 1, 1, width, scene.textures.get(backgroundName).source[0].height, backgroundName);\r\n scene.physics.add.existing(this);\r\n scene.add.existing(this);\r\n this.setActive(false);\r\n this.setVisible(false);\r\n scene.registry.events.on('unlockAll', this.deleteObjects, this);\r\n }\r\n backgroundSpeed!: number;\r\n\r\n createWall(startPoint: number, width: number, backgroundSpeed: number) {\r\n this.setActive(true);\r\n this.setVisible(true);\r\n\r\n this.x = startPoint + width / 2;\r\n this.displayWidth = width;\r\n this.displayHeight = 20;\r\n this.backgroundSpeed = backgroundSpeed;\r\n }\r\n preUpdate(time: number, delta: number) {\r\n if (this.y >= this.scene.game.canvas.height) {\r\n this.destroy();\r\n } else {\r\n if (!this.scene.data.get('pause')) {\r\n this.y += this.backgroundSpeed;\r\n }\r\n }\r\n }\r\n deleteObjects() {\r\n this.destroy();\r\n }\r\n}\r\n","import { WallObjectsTilesprite } from './WallObjectsTilesprite';\r\nexport class WallObjectsGroup extends Phaser.GameObjects.Group {\r\n constructor(scene: Phaser.Scene, config: any) {\r\n super(scene, config);\r\n this.scene = scene;\r\n }\r\n scene!: Phaser.Scene;\r\n maxLength = 25;\r\n createTileSprite(speedLine: number, leftGrassLaneWidth: number, numberOfDivisions: number, maxNumberOfHoles: number) {\r\n if (this.getTotalUsed() + 5 > this.maxLength) {\r\n return;\r\n }\r\n\r\n const roadWidth = this.scene.game.canvas.width - (leftGrassLaneWidth * 2);\r\n const divisionWidth = roadWidth / numberOfDivisions;\r\n const divisionsArray = this.createArrayOfDivisions(numberOfDivisions);\r\n\r\n this.turnOffRandomDivisions(divisionsArray, maxNumberOfHoles);\r\n this.createAndActivateWallsInDivisions(divisionsArray, divisionWidth, leftGrassLaneWidth, speedLine);\r\n }\r\n\r\n private createAndActivateWallsInDivisions(divisionsArray: Division[], divisionWidth: number, leftGrassLaneWidth: number, speedLine: number) {\r\n divisionsArray.forEach((division, index) => {\r\n const startPosition = leftGrassLaneWidth + (index * divisionWidth);\r\n if (division.active) {\r\n this.add(new WallObjectsTilesprite(this.scene, divisionWidth, '__LINE'))\r\n const enemy = this.getFirstDead();\r\n enemy.createWall(startPosition, divisionWidth, speedLine);\r\n this.scene.physics.add.existing(enemy);\r\n enemy.body.velocity.x = 0;\r\n }\r\n })\r\n }\r\n\r\n private createArrayOfDivisions(numberOfDivisions: number) {\r\n const divisions: Division[] = [];\r\n for (let i=0; i < numberOfDivisions; i++){\r\n const division: Division = {active: true}\r\n divisions.push(division)\r\n }\r\n return divisions;\r\n }\r\n\r\n private turnOffRandomDivisions(divisionsArray: Division[], maxNumberOfHoles: number) {\r\n const divisionsToBeTurnedOff = this.getRandomDivisions(divisionsArray, Phaser.Math.Between(1, maxNumberOfHoles))\r\n divisionsToBeTurnedOff.forEach(division => {\r\n division.active = false;\r\n })\r\n }\r\n\r\n private getRandomDivisions(divisions: Division[], n: number) {\r\n const result = new Array(n);\r\n let len = divisions.length;\r\n const taken = new Array(len);\r\n if (n > len)\r\n throw new RangeError(\"getRandom: more elements taken than available\");\r\n while (n--) {\r\n const x = Math.floor(Math.random() * len);\r\n result[n] = divisions[x in taken ? taken[x] : x];\r\n taken[x] = --len in taken ? taken[len] : len;\r\n }\r\n return result;\r\n }\r\n}\r\n\r\ninterface Division{\r\n active: boolean,\r\n}\r\n","import { WallObjectsGroup } from './WallObjectsGroup';\r\nexport default class WallObjectsFactory {\r\n public static Build(scene: any): WallObjectsGroup {\r\n return new WallObjectsGroup(scene, { maxSize: 25 });\r\n }\r\n public static createTileSprite(\r\n wall: WallObjectsGroup,\r\n speedLine: number,\r\n leftGrassLaneWidth: number,\r\n numberOfDivisions: number,\r\n maxNumberOfHoles: number\r\n ) {\r\n wall.createTileSprite(speedLine, leftGrassLaneWidth, numberOfDivisions, maxNumberOfHoles);\r\n }\r\n}\r\n","import WallObjectsFactory from '../Models/WallObjectsFactory';\r\nimport { WallObjectsGroup } from '../Models/WallObjectsGroup';\r\nexport class Levels {\r\n constructor(\r\n level: number,\r\n timeToNextLevel: number,\r\n spawnTime: Array,\r\n scene: any,\r\n backgroundSpeed: number,\r\n numberOfDivisions: number,\r\n maxNumberOfHoles: number\r\n ) {\r\n this.level = level;\r\n this.timeToNextLevel = timeToNextLevel;\r\n this.spawnTime = spawnTime;\r\n this.wallFactory = WallObjectsFactory.Build(scene);\r\n this.backgroundSpeed = backgroundSpeed;\r\n this.numberOfDivisions = numberOfDivisions;\r\n this.maxNumberOfHoles = maxNumberOfHoles;\r\n }\r\n level!: number;\r\n timeToNextLevel!: number;\r\n spawnTime!: Array;\r\n wallFactory!: WallObjectsGroup;\r\n backgroundSpeed!: number;\r\n numberOfDivisions!: number;\r\n maxNumberOfHoles!: number;\r\n}\r\n","import { Levels } from './Levels';\r\nimport { MazeGameVariables } from './MazeGameVariables';\r\nimport 'phaser';\r\n//Class responsible for base game values\r\nexport class Base {\r\n constructor(lives: number, scene: Phaser.Scene) {\r\n this.values(lives, scene);\r\n }\r\n\r\n scene!: Phaser.Scene;\r\n objectsSpawnTime!: number;\r\n backgroundWidth!: number;\r\n vehicleSpeed!: number;\r\n backgroundHeigth!: number;\r\n backgroundBackWidth!: number;\r\n backgroundBackHeigth!: number;\r\n backgroundSpeed!: number;\r\n playerPozX!: number;\r\n playerPozY!: number;\r\n playerSpeedOnX!: number;\r\n playerMaxSpeedOnX!: number;\r\n playerSpeedOnY!: number;\r\n playerMaxSpeedOnY!: number;\r\n playerBorderMaxOnX!: number;\r\n playerBorderMinOnX!: number;\r\n playerBorderMaxOnY!: number;\r\n playerBorderMinOnY!: number;\r\n playerWidth!: number;\r\n playerHeigth!: number;\r\n life!: number;\r\n levels: Array = [];\r\n values(lives: number, scene: Phaser.Scene) {\r\n this.scene = scene;\r\n this.objectsSpawnTime = 3000;\r\n this.vehicleSpeed = 150;\r\n this.backgroundWidth = 500;\r\n this.backgroundHeigth = 800;\r\n this.backgroundBackWidth = 800;\r\n this.backgroundBackHeigth = 800;\r\n this.backgroundSpeed = 5;\r\n this.playerPozX = 400;\r\n this.playerPozY = 530;\r\n this.life = lives;\r\n this.playerSpeedOnX = 30;\r\n this.playerMaxSpeedOnX = 250;\r\n this.playerSpeedOnY = 30;\r\n this.playerMaxSpeedOnY = 150;\r\n this.playerBorderMaxOnX = 600;\r\n this.playerBorderMinOnX = 150;\r\n this.playerBorderMaxOnY = 520;\r\n this.playerBorderMinOnY = 300;\r\n this.playerWidth = 50;\r\n this.playerHeigth = 80;\r\n\r\n const spawnTime: Array = [1500, 1200, 1800];\r\n const wallHeight = 50;\r\n this.levels.push(new Levels(1, 10000, spawnTime, this.scene, 3, 5, 2));\r\n this.levels.push(new Levels(2, 20000, spawnTime, this.scene, 4, 4, 1));\r\n this.levels.push(new Levels(3, 20000, spawnTime, this.scene, 5, 6, 2));\r\n this.levels.push(new Levels(4, 40000, spawnTime, this.scene, 7, 7, 1));\r\n this.levels.push(new Levels(5, 50000, spawnTime, this.scene, 8, 8, 1));\r\n }\r\n}\r\n","import { GameTheme } from '@/modules/game-play/models/game-theme';\r\nimport { translate } from '@/plugins/i18n';\r\nexport class TextController {\r\n constructor(scene: Phaser.Scene, emiterEvent: any, theme?: GameTheme) {\r\n this.theme = theme;\r\n this.scene = scene;\r\n this.textFont = `20px ${theme?.font ?? 'Play, sans-serif'}`;\r\n this.textFontStart = `80px ${theme?.font ?? 'Play, sans-serif'}`;\r\n this.emiterEvent = emiterEvent;\r\n this.depth = 4;\r\n this.depthBox = 2;\r\n this.boxwidth = 500;\r\n this.boxheight = 400;\r\n this.enemyDestroyedText = this.scene.add.text(250, 15, '', {\r\n font: this.textFont,\r\n color: this.theme?.textColor ?? '#ffffff'\r\n });\r\n this.enemyDestroyedText = this.enemyDestroyedText.setShadow(0, 0, this.theme?.textShadowColor ?? '#21ecf3', 4);\r\n this.levelText = this.scene.add.text(450, 15, '', {\r\n font: this.textFont,\r\n color: this.theme?.textColor ?? '#ffffff'\r\n });\r\n\r\n this.levelText = this.levelText.setShadow(0, 0, this.theme?.textShadowColor ?? '#21ecf3', 4);\r\n this.pointsText = this.scene.add.text(575, 15, '', {\r\n font: this.textFont,\r\n color: this.theme?.textColor ?? '#ffffff'\r\n });\r\n this.pointsText = this.pointsText.setShadow(0, 0, this.theme?.textShadowColor ?? '#21ecf3', 4);\r\n this.start = this.scene.add.text(575, 400, '', { font: this.textFont, color: this.theme?.textColor ?? '#ffffff' });\r\n this.start = this.start.setShadow(0, 0, this.theme?.textShadowColor ?? '#21ecf3', 4);\r\n }\r\n\r\n theme?: GameTheme;\r\n textFont: string;\r\n textFontStart: string;\r\n scene: Phaser.Scene;\r\n depth: number;\r\n emiterEvent: any;\r\n depthBox: number;\r\n pauseText!: Phaser.GameObjects.Text;\r\n pauseBox!: Phaser.GameObjects.GameObject;\r\n boxwidth: number;\r\n boxheight: number;\r\n enemyDestroyedText: Phaser.GameObjects.Text;\r\n levelText: Phaser.GameObjects.Text;\r\n pointsText: Phaser.GameObjects.Text;\r\n start: Phaser.GameObjects.Text;\r\n\r\n //Run text in center screen and then start physic\r\n centerText(text: string | undefined) {\r\n if (text == undefined) {\r\n return;\r\n }\r\n const temp = text;\r\n const startText = this.scene.add\r\n .text(this.scene.game.canvas.width / 2, this.scene.game.canvas.height / 2, '', {\r\n font: this.textFontStart,\r\n color: this.theme?.announcementColor ?? '#72fff5aa'\r\n })\r\n .setOrigin(0.5);\r\n startText.setText(temp).setDepth(this.depth);\r\n this.scene.tweens.add({\r\n targets: startText,\r\n ease: 'Linear',\r\n duration: 700,\r\n alpha: { from: 0, to: 1 },\r\n y: { from: this.scene.game.canvas.height / 2 + 50, to: this.scene.game.canvas.height / 2 - 50 },\r\n completeDelay: 20,\r\n onComplete: () => {\r\n this.scene.tweens.add({\r\n targets: startText,\r\n ease: 'Linear',\r\n duration: 700,\r\n alpha: { from: 1, to: 0 },\r\n y: { from: this.scene.game.canvas.height / 2 - 50, to: this.scene.game.canvas.height / 2 - 150 },\r\n completeDelay: 20,\r\n onComplete: () => {\r\n startText.destroy();\r\n this.scene.physics.resume();\r\n this.scene.data.set('pause', false);\r\n this.scene.registry.events.emit('unlockAll');\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n //Menu Update\r\n timeTextUpdate(pionts: number, level: number /*, enemyDestroyed: number,*/, maxEnemy: number) {\r\n this.enemyDestroyedText.setText(translate('Modules.Runtime.Game.Score') + pionts);\r\n this.levelText.setText(translate('Modules.Runtime.Game.Level') + level);\r\n\r\n if (maxEnemy > 60) {\r\n const sec: number = maxEnemy % 60;\r\n const min: number = Math.round(maxEnemy / 60);\r\n this.pointsText.setText(\r\n translate('Modules.Runtime.Game.PlayTime') +\r\n ' ' +\r\n min +\r\n translate('Modules.Runtime.Game.Minutes') +\r\n sec +\r\n translate('Modules.Runtime.Game.Secound')\r\n );\r\n } else {\r\n this.pointsText.setText(\r\n translate('Modules.Runtime.Game.PlayTime') + ' ' + maxEnemy + translate('Modules.Runtime.Game.Secound')\r\n );\r\n }\r\n }\r\n}\r\n","import { KeySide } from './KeySide';\r\nimport { MazeGameVariables } from '../Global/MazeGameVariables';\r\nexport class BackgroundRoad extends Phaser.GameObjects.TileSprite {\r\n constructor(scene: Phaser.Scene, widthBg: number, heightBg: number, backgroundName: string) {\r\n super(scene, 400, 300, widthBg, heightBg, backgroundName);\r\n scene.physics.add.existing(this);\r\n scene.add.existing(this);\r\n this.displayHeight = heightBg;\r\n this.displayWidth = widthBg;\r\n }\r\n}\r\n","export class BackgroundBack extends Phaser.GameObjects.TileSprite {\r\n constructor(scene: Phaser.Scene, width: number, heigth: number, backgroundName: string) {\r\n super(scene, 400, 400, width, heigth, backgroundName);\r\n scene.physics.add.existing(this);\r\n scene.add.existing(this);\r\n }\r\n}\r\n","import 'phaser';\r\nimport { GameTriggerType } from '../game-engine-base';\r\nimport { GameCustomizableElement, GameCustomizableElementType } from '../game-engine-customizable-element';\r\nimport { Player } from './Models/playercontroller';\r\nimport { MazeGameVariables } from './Global/MazeGameVariables';\r\nimport { Base } from './Global/BaseControllClass';\r\nimport { KeySide } from './Models/KeySide';\r\nimport WallObjectsFactory from './Models/WallObjectsFactory';\r\nimport { TextController } from './Models/textcontroller';\r\nimport { GameTheme } from '../../models/game-theme';\r\nimport { ImagesBase64 } from './imagesbase64';\r\nimport { WallObjectsTilesprite } from './Models/WallObjectsTilesprite';\r\nimport { BackgroundRoad } from './Models/backgroundRoad';\r\nimport { BackgroundBack } from './Models/backgroundBack';\r\n//import Animations from './Global/Animations';\r\n//Game Main class\r\nexport class GameScene extends Phaser.Scene {\r\n constructor(\r\n protected askQuestion: () => void,\r\n protected gameOverDialog: (score: number) => void,\r\n protected saveGameLog: (score: number, trigger: GameTriggerType) => void,\r\n getCustomziableTypes: GameCustomizableElement[],\r\n protected theme?: GameTheme\r\n ) {\r\n super({\r\n key: 'Game',\r\n physics: {\r\n default: 'arcade',\r\n arcade: {\r\n debug: false,\r\n gravity: { y: 0 }\r\n }\r\n }\r\n });\r\n this.getCustomziableTypes = getCustomziableTypes;\r\n this.textFont = '20px Play, sans-serif';\r\n this.textFontStart = '80px Play, sans-serif';\r\n }\r\n test!: WallObjectsTilesprite;\r\n lineEvent!: any;\r\n backgroundRoad!: BackgroundRoad;\r\n backgroundBack!: BackgroundBack;\r\n level!: number;\r\n levelEvent!: any;\r\n playTime = 0;\r\n respawnEvent!: any;\r\n respawnObjectEvent!: any;\r\n spawnPointRand!: number;\r\n points!: number;\r\n player!: Player;\r\n emiterEvent: any;\r\n getCustomziableTypes!: any;\r\n textFont: string;\r\n textFontStart: string;\r\n cursorKeys!: any;\r\n cursorKeysIsDown!: KeySide;\r\n baseControllClass!: Base;\r\n lives!: Phaser.GameObjects.Group;\r\n textObj!: TextController;\r\n allSpritesImages: GameCustomizableElement[] = [];\r\n allText!: GameCustomizableElement[];\r\n randomObjects = 0;\r\n //Init all parametrs\r\n init(params: any): void {\r\n this.points = 0;\r\n this.level = 1;\r\n }\r\n\r\n //Load all texture before launch game\r\n preload() {\r\n this.physics.world.setFPS(60);\r\n this.physics.world.setBoundsCollision();\r\n\r\n this.allText = this.getCustomziableTypes.filter(\r\n (entity: { type: GameCustomizableElementType }) => entity.type == GameCustomizableElementType.Text\r\n );\r\n\r\n this.allSpritesImages = this.getCustomziableTypes.filter(\r\n (entity: { type: GameCustomizableElementType }) => entity.type == GameCustomizableElementType.Image\r\n );\r\n\r\n this.allSpritesImages.forEach(element => {\r\n if (element.value != null || element.value != '') {\r\n if(element.name == MazeGameVariables.line){\r\n this.load.image(element.name, element.value.toString());\r\n }else{\r\n this.textures.addBase64(element.name, element.value);\r\n }\r\n \r\n }\r\n });\r\n \r\n //Set black background\r\n //this.cameras.main.setBackgroundColor('#000000');\r\n\r\n //Load scene data\r\n this.data.set('pause', false);\r\n }\r\n\r\n //Main function scene to create GameObjects\r\n create() {\r\n this.baseControllClass = new Base(\r\n this.getCustomziableTypes.find((element: GameCustomizableElement) => element.name == 'Lives').value,\r\n this\r\n );\r\n //Create background\r\n this.backgroundBack = new BackgroundBack(\r\n this,\r\n this.baseControllClass.backgroundBackWidth,\r\n this.baseControllClass.backgroundHeigth,\r\n MazeGameVariables.BgBackSpriteName\r\n );\r\n //create bacgroun for this scene\r\n this.backgroundRoad = new BackgroundRoad(\r\n this,\r\n this.baseControllClass.backgroundWidth,\r\n this.baseControllClass.backgroundHeigth,\r\n MazeGameVariables.roadSpriteName\r\n );\r\n //this.test = new WallObjectsTilesprite(this,100,100,\"__PLAYER\");\r\n //create ship and asigns it position and speed\r\n this.player = new Player(\r\n this,\r\n this.baseControllClass.playerPozX,\r\n this.baseControllClass.playerPozY,\r\n this.baseControllClass.playerSpeedOnX,\r\n this.baseControllClass.playerMaxSpeedOnX,\r\n this.baseControllClass.playerSpeedOnY,\r\n this.baseControllClass.playerMaxSpeedOnY,\r\n this.baseControllClass.playerBorderMaxOnX,\r\n this.baseControllClass.playerBorderMinOnX,\r\n this.baseControllClass.playerBorderMaxOnY,\r\n this.baseControllClass.playerBorderMinOnY,\r\n this.baseControllClass.playerWidth,\r\n this.baseControllClass.playerHeigth\r\n );\r\n //\r\n\r\n //initialize emiter used on scene\r\n this.emiterEvent = new Phaser.Events.EventEmitter();\r\n //sets behavior if UnderCollisionEnemy string is emited\r\n this.emiterEvent.on('UnderCollisionEnemy', this.underCollisionEnemy, this);\r\n //Create time\r\n this.time.addEvent({\r\n delay: 1000,\r\n loop: true,\r\n callback: () => {\r\n this.playTime += 1;\r\n }\r\n });\r\n\r\n if (this.checkLevelReturn()) {\r\n this.createLevelEvent(this.baseControllClass.levels[this.level - 1].timeToNextLevel);\r\n this.createRespawnEvent();\r\n this.cursorKeys = this.input.keyboard.createCursorKeys();\r\n }\r\n\r\n this.registry.events.on('AnswerEvent', this.respondAnswer, this);\r\n this.createLives();\r\n\r\n this.saveGameLog(1, GameTriggerType.GameStart);\r\n\r\n //create text controler resposible for displaing scores and mesages\r\n this.textObj = new TextController(this, this.emiterEvent, this.theme);\r\n\r\n this.createOverlapWall();\r\n }\r\n createOverlapWall() {\r\n this.physics.add.overlap(\r\n this.player,\r\n this.baseControllClass.levels[this.level - 1].wallFactory,\r\n (player: any, enemy: any) => {\r\n if (!this.data.get('pause')) {\r\n this.registry.events.emit('stopAll');\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.makeQuestion();\r\n }\r\n }\r\n );\r\n }\r\n //Update function scene\r\n update(time: number, delta: number): void {\r\n if (!this.data.get('pause')) {\r\n this.points += 5;\r\n //Manage keyboard and player movement\r\n if (\r\n (this.cursorKeys.left.isDown && this.cursorKeysIsDown == KeySide.stop) ||\r\n (this.cursorKeys.left.isDown && this.cursorKeysIsDown == KeySide.left)\r\n ) {\r\n this.player.move(KeySide.left, delta);\r\n this.cursorKeysIsDown = KeySide.left;\r\n } else if (\r\n (this.cursorKeys.right.isDown && this.cursorKeysIsDown == KeySide.stop) ||\r\n (this.cursorKeys.right.isDown && this.cursorKeysIsDown == KeySide.right)\r\n ) {\r\n this.player.move(KeySide.right, delta);\r\n this.cursorKeysIsDown = KeySide.right;\r\n } else if (\r\n (this.cursorKeys.up.isDown && this.cursorKeysIsDown == KeySide.stop) ||\r\n (this.cursorKeys.up.isDown && this.cursorKeysIsDown == KeySide.up)\r\n ) {\r\n this.player.move(KeySide.up, delta);\r\n this.cursorKeysIsDown = KeySide.up;\r\n } else if (\r\n (this.cursorKeys.down.isDown && this.cursorKeysIsDown == KeySide.stop) ||\r\n (this.cursorKeys.down.isDown && this.cursorKeysIsDown == KeySide.down)\r\n ) {\r\n this.player.move(KeySide.down, delta);\r\n this.cursorKeysIsDown = KeySide.down;\r\n } else {\r\n this.player.move(KeySide.stop, delta);\r\n this.cursorKeysIsDown = KeySide.stop;\r\n }\r\n }\r\n\r\n this.updatePlayersScoreUI();\r\n\r\n if (!this.data.get('pause')) {\r\n this.backgroundRoad.tilePositionY -= this.baseControllClass.levels[this.level - 1].backgroundSpeed;\r\n this.backgroundBack.tilePositionY -= this.baseControllClass.levels[this.level - 1].backgroundSpeed;\r\n }\r\n }\r\n\r\n //Update bar\r\n updatePlayersScoreUI(): void {\r\n if (this.checkLevelReturn()) {\r\n this.textObj.timeTextUpdate(this.points, this.level, this.playTime);\r\n } else {\r\n this.textObj.timeTextUpdate(this.points, this.level, this.playTime);\r\n }\r\n }\r\n\r\n //Runs if enemy and player colides\r\n underCollisionEnemy() {\r\n if (!this.data.get('pause')) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.makeQuestion();\r\n }\r\n }\r\n\r\n //check if we dont overstep baseControllClass array\r\n checkLevelReturn() {\r\n if (this.level - 1 <= this.baseControllClass.levels.length - 1) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n //Respond answer from server\r\n respondAnswer(data: boolean, answerPoolEmpty: boolean) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n if (answerPoolEmpty) {\r\n this.liveLost();\r\n return;\r\n }\r\n switch (data) {\r\n case true:\r\n this.points += 500;\r\n this.saveGameLog(this.points, GameTriggerType.LiveSaved);\r\n this.nextLevel(this.allText.find((val: { name: string }) => val.name == 'AnswerTextCorrect')?.value.toString());\r\n break;\r\n case false:\r\n this.saveGameLog(this.points, GameTriggerType.LiveLost);\r\n this.liveLost();\r\n this.nextLevel(this.allText.find((val: { name: string }) => val.name == 'AnswerTextWrong')?.value.toString());\r\n break;\r\n }\r\n this.eventInit();\r\n }\r\n\r\n createLevelEvent(delay: number) {\r\n //Event for level\r\n this.levelEvent = this.time.addEvent({\r\n delay: delay,\r\n loop: true,\r\n callback: () => {\r\n this.registry.events.emit('stopAll');\r\n this.nextLevelIncrease('Next Level');\r\n }\r\n });\r\n }\r\n createRespawnEvent() {\r\n const tempDelay = this.baseControllClass.levels[this.level - 1].spawnTime[\r\n Phaser.Math.Between(0, this.baseControllClass.levels[this.level - 1].spawnTime.length - 1)\r\n ];\r\n this.lineEvent = this.time.addEvent({\r\n delay: tempDelay,\r\n loop: true,\r\n callback: () => {\r\n WallObjectsFactory.createTileSprite(\r\n this.baseControllClass.levels[this.level - 1].wallFactory,\r\n this.baseControllClass.levels[this.level - 1].backgroundSpeed,\r\n this.baseControllClass.playerBorderMinOnX,\r\n this.baseControllClass.levels[this.level - 1].numberOfDivisions,\r\n this.baseControllClass.levels[this.level - 1].maxNumberOfHoles\r\n );\r\n }\r\n });\r\n }\r\n\r\n //Set new level after question or player destroyed all enemys\r\n nextLevel(textToShow: string | undefined) {\r\n //pause game\r\n this.data.set('pause', true);\r\n this.player.move(KeySide.stop, 0);\r\n this.saveGameLog(this.points, GameTriggerType.NewLevel);\r\n //pause game physic\r\n this.physics.pause();\r\n this.registry.events.emit('deleteAll');\r\n this.registry.events.emit('nextLevel');\r\n\r\n this.textObj.centerText(textToShow);\r\n }\r\n eventInit() {\r\n this.lineEvent.remove(false);\r\n this.levelEvent.remove(false);\r\n if (this.checkLevelReturn()) {\r\n this.createLevelEvent(this.baseControllClass.levels[this.level - 1].timeToNextLevel);\r\n this.createRespawnEvent();\r\n } else {\r\n this.createLevelEvent(this.baseControllClass.levels[this.baseControllClass.levels.length - 1].timeToNextLevel);\r\n this.createRespawnEvent();\r\n }\r\n this.createOverlapWall();\r\n }\r\n nextLevelIncrease(textToShow: string | undefined) {\r\n this.data.set('pause', true);\r\n this.physics.pause();\r\n this.level = this.level + 1;\r\n this.registry.events.emit('deleteAll');\r\n this.eventInit();\r\n this.textObj.centerText(textToShow);\r\n }\r\n\r\n //Live lost\r\n liveLost() {\r\n const t = this.lives.getFirstAlive();\r\n if (t != null) {\r\n t.destroy();\r\n }\r\n if (this.lives.getTotalUsed() == 0) {\r\n this.gameOverDialog(this.points);\r\n this.scene.pause();\r\n this.saveGameLog(this.points, GameTriggerType.GameOver);\r\n this.game.destroy(true, false);\r\n return;\r\n }\r\n }\r\n\r\n //Create Lives to display on screen\r\n createLives(): void {\r\n //Get all data\r\n const heartData = this.getCustomziableTypes.find((entity: { name: string }) => {\r\n if (entity.name == MazeGameVariables.heartSpriteName) {\r\n return entity;\r\n }\r\n });\r\n\r\n //create group, set it max vlaue and default key image\r\n this.lives = this.add.group({\r\n defaultKey: MazeGameVariables.heartSpriteName,\r\n active: true,\r\n maxSize: this.baseControllClass.life\r\n });\r\n\r\n //add to group live images on certain positin and scale\r\n for (let q = 0; q < this.baseControllClass.life; q++) {\r\n const tempImage = this.add.image(40 * q + 30, 25, MazeGameVariables.heartSpriteName);\r\n tempImage.displayHeight = heartData.heigth;\r\n tempImage.displayWidth = heartData.width;\r\n this.lives.add(tempImage);\r\n }\r\n }\r\n\r\n //Mark Question\r\n makeQuestion() {\r\n this.physics.pause();\r\n this.data.set('pause', true);\r\n this.levelEvent.remove(false);\r\n this.lineEvent.remove(false);\r\n this.askQuestion();\r\n }\r\n}\r\n","export class ImagesBase64 {\r\n public static readonly player = require('@/assets/games/river-run/themes/speed-race/sprites/car.png');\r\n public static readonly line = require('@/assets/games/maze-game/line.png');\r\n static readonly heart = require('@/assets/games/space-rescue/ui/life.png');\r\n public static readonly road = require('@/assets/games/river-run/themes/speed-race/sprites/road.png');\r\n public static readonly BgBack = require('@/assets/games/river-run/themes/speed-race/sprites/grass.png');\r\n }\r\n ","import { GameEngineBase } from '../game-engine-base';\r\nimport 'phaser';\r\nimport { GameScene } from './maze-game-gameclass';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { GameCustomizableElement } from '../game-engine-customizable-element';\r\nimport { ImagesBase64 } from './imagesbase64';\r\n\r\nimport { MazeGameVariables } from './Global/MazeGameVariables';\r\n\r\nexport class MazeGameEngine extends GameEngineBase {\r\n game!: Phaser.Game;\r\n private gameConfig!: Phaser.Types.Core.GameConfig;\r\n\r\n initialize(): void {\r\n this.gameConfig = {\r\n title: 'Maze Game',\r\n width: 800,\r\n height: 600,\r\n type: Phaser.CANVAS,\r\n parent: 'game-window',\r\n transparent: true,\r\n backgroundColor: '#000000',\r\n physics: {\r\n default: 'arcade',\r\n arcade: {\r\n debug: false,\r\n gravity: { y: 0 }\r\n }\r\n },\r\n audio: {\r\n disableWebAudio: true\r\n },\r\n\r\n scene: [new GameScene(this.askQuestion, this.gameOverDialog, this.saveGameLog, this.getCustomizedElements())]\r\n };\r\n this.game = new Phaser.Game(this.gameConfig);\r\n console.log('initialize riverrungame');\r\n }\r\n\r\n getCustomziableTypes(): GameCustomizableElement[] {\r\n return [\r\n GameCustomizableElement.CreateText('AnswerTextCorrect', translate('Modules.Runtime.Game.CorrectAnswer'), 2, 512),\r\n GameCustomizableElement.CreateText('AnswerTextWrong', translate('Modules.Runtime.Game.WrongAnswer'), 2, 512),\r\n GameCustomizableElement.CreateText('StartText', translate('Modules.Runtime.Game.StartGame'), 2, 512),\r\n GameCustomizableElement.CreateNumber('LivesNumber', 5, 2, 5),\r\n GameCustomizableElement.CreateImage(MazeGameVariables.playerSpriteName, ImagesBase64.player, 20, 20),\r\n GameCustomizableElement.CreateImage(MazeGameVariables.heartSpriteName, ImagesBase64.heart, 30, 25),\r\n GameCustomizableElement.CreateImage(MazeGameVariables.line, ImagesBase64.line, 20, 20),\r\n GameCustomizableElement.CreateImage(MazeGameVariables.roadSpriteName, ImagesBase64.road, 30, 25),\r\n GameCustomizableElement.CreateImage(MazeGameVariables.BgBackSpriteName, ImagesBase64.BgBack, 30, 25)\r\n ];\r\n }\r\n\r\n acceptAnswer(isCorrectAnswer: boolean, answerPoolEmpty: boolean): void {\r\n this.game.registry.events.emit('AnswerEvent', isCorrectAnswer, answerPoolEmpty);\r\n }\r\n}\r\n","import { GameType } from '@/services/Api';\r\nimport { GameCustomizableElement } from '../games/game-engine-customizable-element';\r\nimport { RiverRunVariables } from '../games/river-run/Global/RiverRunVariables';\r\nimport { SpaceRescueVariables } from '../games/space-rescue/Global/SpaceRescueVariables';\r\nimport { MazeGameVariables } from '../games/maze-game/Global/MazeGameVariables';\r\nimport { GameTheme } from '../models/game-theme';\r\n\r\nexport default class GameThemeService {\r\n // Space rescue\r\n private static desertShip = require('@/assets/games/space-rescue/themes/desert/sprites/ship.png');\r\n private static desertBullet = require('@/assets/games/space-rescue/themes/desert/sprites/axe.png');\r\n private static desertEnemyBullet = require('@/assets/games/space-rescue/themes/desert/sprites/enemy-bullet.png');\r\n private static desertShadow = require('@/assets/games/space-rescue/themes/desert/sprites/shadow.png');\r\n private static desertEnemy = require('@/assets/games/space-rescue/themes/desert/sprites/spider.png');\r\n private static desertStar = require('@/assets/games/space-rescue/themes/desert/sprites/sand.png');\r\n private static desertLife = require('@/assets/games/space-rescue/themes/desert/sprites/life.png');\r\n private static desertBackground = require('@/assets/games/space-rescue/themes/desert/background.svg');\r\n private static desertBackgroundForm = require('@/assets/games/space-rescue/themes/desert/form-background-blur.svg');\r\n private static desertBackgroundQuestion = require('@/assets/games/space-rescue/themes/desert/question-background-blur.svg');\r\n private static desertBackgroundGame = require('@/assets/games/space-rescue/themes/desert/game-background-blur.svg');\r\n\r\n private static witchShip = require('@/assets/games/space-rescue/themes/little-witch/sprites/little-witch.png');\r\n private static witchBullet = require('@/assets/games/space-rescue/themes/little-witch/sprites/spell.png');\r\n private static witchEnemyBullet = require('@/assets/games/space-rescue/themes/little-witch/sprites/enemy-bullet.png');\r\n private static witchShadow = require('@/assets/games/space-rescue/themes/little-witch/sprites/shadow.png');\r\n private static witchEnemy = require('@/assets/games/space-rescue/themes/little-witch/sprites/witch.png');\r\n private static witchStar = require('@/assets/games/space-rescue/themes/little-witch/sprites/crow.png');\r\n private static witchLife = require('@/assets/games/space-rescue/themes/little-witch/sprites/life.png');\r\n private static witchBackground = require('@/assets/games/space-rescue/themes/little-witch/background.svg');\r\n private static witchBackgroundForm = require('@/assets/games/space-rescue/themes/little-witch/form-background-blur.svg');\r\n private static witchBackgroundQuestion = require('@/assets/games/space-rescue/themes/little-witch/question-background-blur.svg');\r\n private static witchBackgroundGame = require('@/assets/games/space-rescue/themes/little-witch/game-background-blur.svg');\r\n\r\n private static princessShip = require('@/assets/games/space-rescue/themes/froggy-princess/sprites/princess.png');\r\n private static princessBullet = require('@/assets/games/space-rescue/themes/froggy-princess/sprites/heart.png');\r\n private static princessEnemyBullet = require('@/assets/games/space-rescue/themes/froggy-princess/sprites/enemy-bullet.png');\r\n private static princessShadow = require('@/assets/games/space-rescue/themes/froggy-princess/sprites/shadow.png');\r\n private static princessEnemy = require('@/assets/games/space-rescue/themes/froggy-princess/sprites/frog.png');\r\n private static princessStar = require('@/assets/games/space-rescue/themes/froggy-princess/sprites/glitter.png');\r\n private static princessLife = require('@/assets/games/space-rescue/themes/froggy-princess/sprites/life.png');\r\n private static princessBackground = require('@/assets/games/space-rescue/themes/froggy-princess/background.svg');\r\n private static princessBackgroundForm = require('@/assets/games/space-rescue/themes/froggy-princess/form-background-blur.svg');\r\n private static princessBackgroundQuestion = require('@/assets/games/space-rescue/themes/froggy-princess/question-background-blur.svg');\r\n private static princessBackgroundGame = require('@/assets/games/space-rescue/themes/froggy-princess/game-background-blur.svg');\r\n\r\n private static spaceRescueBackground = require('@/assets/games/space-rescue/background.svg');\r\n private static spaceRescueBackgroundForm = require('@/assets/games/space-rescue/form-background-blur.svg');\r\n private static spaceRescueBackgroundQuestion = require('@/assets/games/space-rescue/question-background-blur.svg');\r\n private static spaceRescueBackgroundGame = require('@/assets/games/space-rescue/game-background-blur.svg');\r\n // River Run\r\n private static speedRaceEnemy1 = require('@/assets/games/river-run/themes/speed-race/sprites/car_yellow.png');\r\n private static speedRaceEnemy2 = require('@/assets/games/river-run/themes/speed-race/sprites/car_red.png');\r\n private static speedRaceEnemy3 = require('@/assets/games/river-run/themes/speed-race/sprites/car_green.png');\r\n private static speedRacePlayer = require('@/assets/games/river-run/themes/speed-race/sprites/car_white.png');\r\n private static speedRacePeople1 = require('@/assets/games/river-run/themes/speed-race/sprites/small-plants.png');\r\n private static speedRaceTree = require('@/assets/games/river-run/themes/speed-race/sprites/rock.svg');\r\n private static speedRaceHeart = require('@/assets/games/river-run/themes/speed-race/sprites/car_heart.png');\r\n private static speedRaceObject1 = require('@/assets/games/river-run/themes/speed-race/sprites/oil.png');\r\n private static speedRaceRoad = require('@/assets/games/river-run/themes/speed-race/sprites/road.png');\r\n private static speedRaceGrassLeft = require('@/assets/games/river-run/themes/speed-race/sprites/grassL.png');\r\n private static speedRaceGrassRight = require('@/assets/games/river-run/themes/speed-race/sprites/grassR.png');\r\n private static speedRaceOdometer = require('@/assets/games/river-run/themes/speed-race/sprites/odometer.png');\r\n private static speedRaceOdometerLine = require('@/assets/games/river-run/themes/speed-race/sprites/odometerline.png');\r\n private static speedRaceEndLevelObj = require('@/assets/games/river-run/themes/speed-race/sprites/flag.png');\r\n private static speedRaceStaminaBottom = require('@/assets/games/river-run/themes/speed-race/sprites/speedRace-stamina-bottom.png');\r\n private static speedRaceStaminaTop = require('@/assets/games/river-run/themes/speed-race/sprites/speedRace-stamina-top.png');\r\n private static speedRaceBackground = require('@/assets/games/river-run/themes/speed-race/background.svg');\r\n private static speedRaceBackgroundForm = require('@/assets/games/river-run/themes/speed-race/form-background-blur.svg');\r\n private static speedRaceBackgroundQuestion = require('@/assets/games/river-run/themes/speed-race/question-background-blur.svg');\r\n\r\n private static piratesEnemy1 = require('@/assets/games/river-run/themes/pirates/sprites/ship_enemy1.png');\r\n private static piratesEnemy2 = require('@/assets/games/river-run/themes/pirates/sprites/ship_enemy2.png');\r\n private static piratesEnemy3 = require('@/assets/games/river-run/themes/pirates/sprites/ship_enemy3.png');\r\n private static piratesPlayer = require('@/assets/games/river-run/themes/pirates/sprites/ship.png');\r\n private static piratesPeople1 = require('@/assets/games/river-run/themes/pirates/sprites/small-plants.png');\r\n private static piratesTree = require('@/assets/games/river-run/themes/pirates/sprites/rocks.png');\r\n private static piratesHeart = require('@/assets/games/river-run/themes/pirates/sprites/ship_heart.png');\r\n private static piratesObject1 = require('@/assets/games/river-run/themes/pirates/sprites/object.png');\r\n private static piratesWater = require('@/assets/games/river-run/themes/pirates/sprites/water.png');\r\n private static piratesGrassLeft = require('@/assets/games/river-run/themes/pirates/sprites/grassL.png');\r\n private static piratesGrassRight = require('@/assets/games/river-run/themes/pirates/sprites/grassR.png');\r\n private static piratesOdometer = require('@/assets/games/river-run/themes/pirates/sprites/odometer.png');\r\n private static piratesOdometerLine = require('@/assets/games/river-run/themes/pirates/sprites/odometerline.png');\r\n private static piratesEndLevelObj = require('@/assets/games/river-run/themes/pirates/sprites/flag.png');\r\n private static piratesStaminaBottom = require('@/assets/games/river-run/themes/pirates/sprites/pirates-stamina-bottom.png');\r\n private static piratesStaminaTop = require('@/assets/games/river-run/themes/pirates/sprites/pirates-stamina-top.png');\r\n private static piratesBackground = require('@/assets/games/river-run/themes/pirates/background.svg');\r\n private static piratesBackgroundForm = require('@/assets/games/river-run/themes/pirates/form-background-blur.svg');\r\n private static piratesBackgroundQuestion = require('@/assets/games/river-run/themes/pirates/question-background-blur.svg');\r\n\r\n private static skyFlightEnemy1 = require('@/assets/games/river-run/themes/skyFlight/sprites/plane_enemy1.png');\r\n private static skyFlightEnemy2 = require('@/assets/games/river-run/themes/skyFlight/sprites/plane_enemy2.png');\r\n private static skyFlightEnemy3 = require('@/assets/games/river-run/themes/skyFlight/sprites/plane_enemy3.png');\r\n private static skyFlightPlayer = require('@/assets/games/river-run/themes/skyFlight/sprites/plane.png');\r\n private static skyFlightPeople1 = require('@/assets/games/river-run/themes/skyFlight/sprites/threeBirds.png');\r\n private static skyFlightTree = require('@/assets/games/river-run/themes/skyFlight/sprites/LittleBirds.png');\r\n private static skyFlightHeart = require('@/assets/games/river-run/themes/skyFlight/sprites/planeheart.png');\r\n private static skyFlightObject1 = require('@/assets/games/river-run/themes/skyFlight/sprites/stormcloud.png');\r\n private static skyFlightSky = require('@/assets/games/river-run/themes/skyFlight/sprites/Sky.png');\r\n private static skyFlightCloudLeft = require('@/assets/games/river-run/themes/skyFlight/sprites/CloudL.png');\r\n private static skyFlightCloudRight = require('@/assets/games/river-run/themes/skyFlight/sprites/CloudR.png');\r\n private static skyFlightOdometer = require('@/assets/games/river-run/themes/skyFlight/sprites/odometer.png');\r\n private static skyFlightOdometerLine = require('@/assets/games/river-run/themes/skyFlight/sprites/odometerline.png');\r\n private static skyFlightEndLevelObj = require('@/assets/games/river-run/themes/skyFlight/sprites/flag.png');\r\n private static skyFlightBackground = require('@/assets/games/river-run/themes/skyFlight/background.svg');\r\n private static skyFlightBackgroundMenu = require('@/assets/games/river-run/themes/skyFlight/background-menu.svg');\r\n private static skyFlightBackgroundForm = require('@/assets/games/river-run/themes/skyFlight/form-background-blur.svg');\r\n private static skyFlightBackgroundQuestion = require('@/assets/games/river-run/themes/skyFlight/question-background-blur.svg');\r\n private static skyFlightStaminaBottom = require('@/assets/games/river-run/themes/skyFlight/sprites/plane-stamina-bottom.png');\r\n private static skyFlightStaminaTop = require('@/assets/games/river-run/themes/skyFlight/sprites/plane-stamina-top.png');\r\n\r\n public static getTheme(type: GameType): GameTheme | undefined {\r\n switch (type) {\r\n case GameType.DesertAdventure:\r\n return this.getDesertTheme();\r\n case GameType.SpaceRescue:\r\n return this.getSpaceTheme();\r\n case GameType.LittleWitch:\r\n return this.getLittleWitchTheme();\r\n case GameType.FroggyPrincess:\r\n return this.getFroggyPrincessTheme();\r\n case GameType.Pirates:\r\n return this.getPiratesTheme();\r\n case GameType.SpeedRace:\r\n return this.getSpeedRaceTheme();\r\n case GameType.MazeGame:\r\n return this.getSpaceTheme();\r\n case GameType.SkyFlight:\r\n return this.getSkyFlightTheme();\r\n default:\r\n return undefined;\r\n }\r\n }\r\n private static getDesertTheme(): GameTheme {\r\n const theme: GameTheme = {\r\n font: 'Russo One',\r\n fontSize: '18px',\r\n fontStartSize: '70px',\r\n textColor: '#564C4C',\r\n textShadowColor: '#443F2D00',\r\n announcementColor: '#503F35',\r\n playerAnimation: false,\r\n background: this.desertBackground,\r\n styles: {\r\n '--game-input-background-color': 'rgba(255, 255, 255, 0.253)',\r\n '--game-input-border-color': 'white',\r\n '--game-input-checked-color': 'white',\r\n '--game-checkbox-hover-color': 'white',\r\n '--game-job-background-color': 'transparent',\r\n '--game-start-button-color': '#db7b1c',\r\n '--game-job-border-color': 'transparent',\r\n '--game-job-selected-color': '#bd6811da',\r\n '--game-primary-color': 'rgb(216, 136, 16)',\r\n '--game-secondary-color': 'rgb(216, 155, 40)',\r\n '--game-third-color': 'rgb(216, 136, 16)',\r\n '--game-font': `'Play', sans-serif`,\r\n '--game-shadow-color': 'transparent',\r\n '--game-score-color': 'rgb(3, 3, 3)',\r\n '--game-score-shadow-color': 'none',\r\n '--game-background': `url(${this.desertBackground})`,\r\n '--game-background-menu': `url(${this.desertBackground})`,\r\n '--game-background-color': `url(${this.desertBackgroundGame})`,\r\n '--game-shadow-opacity': '0',\r\n '--game-login-container-bg': `url(${this.desertBackgroundForm})`,\r\n '--valid-message-text-color': 'rgb(240, 240, 240)',\r\n '--valid-message-background-color': 'rgba(206, 52, 60, .9)',\r\n '--question-background-color': `url(${this.desertBackgroundQuestion})`,\r\n '--question-modal-title': 'rgb(255, 204, 109)',\r\n '--game-left-intro-title-font': `'Russo One', sans-serif`,\r\n '--game-left-intro-title-color': 'white',\r\n '--terms-link-color': 'white'\r\n },\r\n overridenElements: [\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.shipSpriteName, this.desertShip, 34, 48, true, 7),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.enemySpriteName, this.desertEnemy, 40, 40, true, 8),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.starsSpriteName, this.desertStar, 15, 15, false),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.bulletSpriteName, this.desertBullet, 20, 25, true, 10),\r\n GameCustomizableElement.CreateImage(\r\n SpaceRescueVariables.enemyBulletSpriteName,\r\n this.desertEnemyBullet,\r\n 20,\r\n 25,\r\n true,\r\n 11\r\n ),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.enemyBgSpriteName, this.desertShadow, 150, 150, false),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.heartSpriteName, this.desertLife, 30, 25, true, 9)\r\n ],\r\n overridenSounds: {\r\n shoot: require('@/assets/games/space-rescue/themes/desert/sounds/shoot.ogg'),\r\n explosion: require('@/assets/games/space-rescue/themes/desert/sounds/explosion.ogg'),\r\n killEnemy: require('@/assets/games/space-rescue/themes/desert/sounds/invaderkilled.ogg')\r\n }\r\n };\r\n return theme;\r\n }\r\n private static getLittleWitchTheme(): GameTheme {\r\n const theme: GameTheme = {\r\n font: 'Kelly Slab',\r\n fontSize: '20px',\r\n fontStartSize: '80px',\r\n textColor: '#fff',\r\n textShadowColor: '#000000',\r\n announcementColor: '#e391ff',\r\n playerAnimation: false,\r\n background: this.witchBackground,\r\n styles: {\r\n '--game-input-background-color': 'rgba(255, 255, 255, 0.253)',\r\n '--game-input-border-color': 'white',\r\n '--game-input-checked-color': 'white',\r\n '--game-checkbox-hover-color': 'white',\r\n '--game-job-background-color': 'transparent',\r\n '--game-start-button-color': '#bc40e5',\r\n '--game-job-border-color': 'transparent',\r\n '--game-job-selected-color': '#852aa2da',\r\n '--game-primary-color': '#c160e0',\r\n '--game-secondary-color': '#c160e0',\r\n '--game-third-color': '#852aa2',\r\n '--game-font': `'Play', sans-serif`,\r\n '--game-shadow-color': 'transparent',\r\n '--game-score-color': 'rgb(3, 3, 3)',\r\n '--game-score-shadow-color': 'none',\r\n '--game-background-color': `url(${this.witchBackgroundGame})`,\r\n '--game-background': `url(${this.witchBackground})`,\r\n '--game-background-menu': `url(${this.witchBackground})`,\r\n '--game-shadow-opacity': '0',\r\n '--game-login-container-bg': `url(${this.witchBackgroundForm})`,\r\n '--valid-message-text-color': 'rgb(240, 240, 240)',\r\n '--valid-message-background-color': 'rgba(206, 52, 60, .9)',\r\n '--question-background-color': `url(${this.witchBackgroundQuestion})`,\r\n '--question-modal-title': '#e097f7',\r\n '--game-left-intro-title-font': `'Kelly Slab', cursive`,\r\n '--game-left-intro-title-color': 'white',\r\n '--terms-link-color': 'white'\r\n },\r\n overridenElements: [\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.shipSpriteName, this.witchShip, 34, 40, true, 7),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.enemySpriteName, this.witchEnemy, 52, 48, true, 8),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.starsSpriteName, this.witchStar, 16, 4, false),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.bulletSpriteName, this.witchBullet, 72, 42, true, 10),\r\n GameCustomizableElement.CreateImage(\r\n SpaceRescueVariables.enemyBulletSpriteName,\r\n this.witchEnemyBullet,\r\n 72,\r\n 42,\r\n true,\r\n 11\r\n ),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.enemyBgSpriteName, this.witchShadow, 150, 150, false),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.heartSpriteName, this.witchLife, 30, 25, true, 9)\r\n ],\r\n overridenSounds: {\r\n shoot: require('@/assets/games/space-rescue/themes/little-witch/sounds/shoot.ogg'),\r\n explosion: require('@/assets/games/space-rescue/themes/little-witch/sounds/explosion1.ogg'),\r\n killEnemy: require('@/assets/games/space-rescue/themes/little-witch/sounds/killedEnemy.ogg')\r\n }\r\n };\r\n return theme;\r\n }\r\n\r\n private static getFroggyPrincessTheme(): GameTheme {\r\n const theme: GameTheme = {\r\n font: 'Lobster',\r\n fontSize: '20px',\r\n fontStartSize: '80px',\r\n textColor: '#564C4C',\r\n textShadowColor: '#443F2D00',\r\n announcementColor: '#d8107faa',\r\n playerAnimation: false,\r\n background: this.princessBackground,\r\n styles: {\r\n '--game-input-background-color': '#22282554',\r\n '--game-input-border-color': 'white',\r\n '--game-input-checked-color': 'white',\r\n '--game-checkbox-hover-color': 'white',\r\n '--game-job-background-color': 'transparent',\r\n '--game-start-button-color': '#D8107F',\r\n '--game-job-border-color': 'transparent',\r\n '--game-job-selected-color': '#A5CE33',\r\n '--game-primary-color': '#d8107f',\r\n '--game-secondary-color': '#d8107f',\r\n '--game-third-color': '#A5CE33',\r\n '--game-font': `'Play', sans-serif`,\r\n '--game-shadow-color': 'transparent',\r\n '--game-score-color': 'rgb(0, 0, 0)',\r\n '--game-score-shadow-color': '#d8107f',\r\n '--game-background-color': `url(${this.princessBackgroundGame})`,\r\n '--game-background': `url(${this.princessBackground})`,\r\n '--game-background-menu': `url(${this.princessBackground})`,\r\n '--game-shadow-opacity': '0',\r\n '--game-login-container-bg': `url(${this.princessBackgroundForm})`,\r\n '--valid-message-text-color': 'rgb(240, 240, 240)',\r\n '--valid-message-background-color': 'rgba(206, 52, 60, .9)',\r\n '--question-background-color': `url(${this.princessBackgroundQuestion})`,\r\n '--question-modal-title': '#A5CE33',\r\n '--game-left-intro-title-font': `'Lobster', cursive`,\r\n '--game-left-intro-title-color': '#d8107f',\r\n '--terms-link-color': 'white'\r\n },\r\n overridenElements: [\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.shipSpriteName, this.princessShip, 34, 58, true, 7),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.enemySpriteName, this.princessEnemy, 35, 28, true, 8),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.starsSpriteName, this.princessStar, 24, 24, false),\r\n GameCustomizableElement.CreateImage(\r\n SpaceRescueVariables.bulletSpriteName,\r\n this.princessBullet,\r\n 14,\r\n 18,\r\n true,\r\n 10\r\n ),\r\n GameCustomizableElement.CreateImage(\r\n SpaceRescueVariables.enemyBulletSpriteName,\r\n this.princessEnemyBullet,\r\n 18,\r\n 22,\r\n true,\r\n 11\r\n ),\r\n GameCustomizableElement.CreateImage(\r\n SpaceRescueVariables.enemyBgSpriteName,\r\n this.princessShadow,\r\n 150,\r\n 150,\r\n false\r\n ),\r\n GameCustomizableElement.CreateImage(SpaceRescueVariables.heartSpriteName, this.princessLife, 30, 25, true, 9)\r\n ],\r\n overridenSounds: {\r\n shoot: require('@/assets/games/space-rescue/themes/froggy-princess/sounds/shoot.ogg'),\r\n explosion: require('@/assets/games/space-rescue/themes/froggy-princess/sounds/explosion.ogg'),\r\n killEnemy: require('@/assets/games/space-rescue/themes/froggy-princess/sounds/killedEnemy.ogg')\r\n }\r\n };\r\n return theme;\r\n }\r\n\r\n private static getSpaceTheme(): GameTheme {\r\n const theme: GameTheme = {\r\n font: 'Jura',\r\n fontSize: '20px',\r\n fontStartSize: '70px',\r\n textColor: '#ffffff',\r\n textShadowColor: '#ffffff',\r\n announcementColor: '#21ecf3',\r\n playerAnimation: true,\r\n background: this.spaceRescueBackground,\r\n styles: {\r\n '--game-input-background-color': 'rgba(14,173,99,.253)',\r\n '--game-input-border-color': '#16bc79',\r\n '--game-input-checked-color': '#11bd5bda',\r\n '--game-checkbox-hover-color': '#11bd5bda',\r\n '--game-job-background-color': 'rgba(14,173,99,.253)',\r\n '--game-start-button-color': '#16bc79',\r\n '--game-job-border-color': '#16bc79',\r\n '--game-job-selected-color': '#16bc79',\r\n '--game-primary-color': 'rgba(14, 173, 99, 0.253)',\r\n '--game-secondary-color': '#16bc79',\r\n '--game-third-color': '#30ff8ada',\r\n '--game-font': `'Turret Road', cursive`,\r\n '--game-shadow-color': '#6fffc6',\r\n '--game-score-color': '#f39009',\r\n '--game-score-shadow-color': '#21ecf3',\r\n '--game-background-color': `url(${this.spaceRescueBackgroundGame})`,\r\n '--game-background': `url(${this.spaceRescueBackground})`,\r\n '--game-background-menu': `url(${this.spaceRescueBackground})`,\r\n '--game-shadow-opacity': '0',\r\n '--game-login-container-bg': `url(${this.spaceRescueBackgroundForm})`,\r\n '--valid-message-text-color': 'rgb(240, 240, 240)',\r\n '--valid-message-background-color': 'rgba(206, 52, 60, .9)',\r\n '--question-background-color': `url(${this.spaceRescueBackgroundQuestion})`,\r\n '--question-modal-title': '#6fffc6',\r\n '--game-left-intro-title-font': `'Jura', sans-serif`,\r\n '--game-left-intro-title-color': 'white',\r\n '--terms-link-color': '#19fffb'\r\n },\r\n overridenElements: [],\r\n overridenSounds: {}\r\n };\r\n\r\n return theme;\r\n }\r\n\r\n private static getPiratesTheme(): GameTheme {\r\n const theme: GameTheme = {\r\n font: 'Play',\r\n fontSize: '18px',\r\n fontStartSize: '80px',\r\n textColor: '#ffffff',\r\n textShadowColor: '#070019',\r\n announcementColor: '#A7733C',\r\n playerAnimation: false,\r\n background: this.piratesBackground,\r\n styles: {\r\n '--game-input-background-color': 'rgba(255, 255, 255, 0.253)',\r\n '--game-input-border-color': 'white',\r\n '--game-input-checked-color': 'white',\r\n '--game-checkbox-hover-color': 'white',\r\n '--game-job-background-color': 'transparent',\r\n '--game-start-button-color': '#00BCFF',\r\n '--game-job-border-color': 'transparent',\r\n '--game-job-selected-color': '#00BCFF',\r\n '--game-primary-color': '#00BCFF',\r\n '--game-secondary-color': '#00BCFF',\r\n '--game-third-color': '#00BCFF',\r\n '--game-font': `'Play', sans-serif`,\r\n '--game-shadow-color': 'transparent',\r\n '--game-score-color': 'rgb(3, 3, 3)',\r\n '--game-score-shadow-color': 'none',\r\n '--game-background-color': 'transparent',\r\n '--game-background': `url(${this.piratesBackground})`,\r\n '--game-background-menu': `url(${this.piratesBackground})`,\r\n '--game-shadow-opacity': '0',\r\n '--game-login-container-bg': `url(${this.piratesBackgroundForm})`,\r\n '--valid-message-text-color': 'rgb(240, 240, 240)',\r\n '--valid-message-background-color': 'rgba(206, 52, 60, .9)',\r\n '--question-background-color': `url(${this.piratesBackgroundQuestion})`,\r\n '--question-modal-title': '#F7E5C0',\r\n '--game-left-intro-title-font': `'Play', sans-serif`,\r\n '--game-left-intro-title-color': 'white',\r\n '--terms-link-color': 'white'\r\n },\r\n overridenElements: [\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy1SpriteName, this.piratesEnemy1, 60, 100, true, 8),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy2SpriteName, this.piratesEnemy2, 60, 100, true, 9),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy3SpriteName, this.piratesEnemy3, 60, 100, true, 10),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.playerSpriteName, this.piratesPlayer, 60, 100, true, 7),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.person1, this.piratesPeople1, 30, 48, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.heartSpriteName, this.piratesHeart, 30, 30, true, 12),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.treeSpriteName, this.piratesTree, 100, 100, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.object1SpriteName, this.piratesObject1, 60, 60, true, 11),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.roadSpriteName, this.piratesWater, 60, 60, false),\r\n GameCustomizableElement.CreateImage(\r\n RiverRunVariables.bgBackSpriteNameLeft,\r\n this.piratesGrassLeft,\r\n 30,\r\n 30,\r\n false\r\n ),\r\n GameCustomizableElement.CreateImage(\r\n RiverRunVariables.bgBackSpriteNameRight,\r\n this.piratesGrassRight,\r\n 30,\r\n 30,\r\n false\r\n ),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.odometer, this.piratesOdometer, 160, 150, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.odometerLine, this.piratesOdometerLine, 160, 160, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.endLevelObj, this.piratesEndLevelObj, 500, 500, true, 13),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.staminaBottom, this.piratesStaminaBottom, 100, 20, false, 14),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.staminaTop, this.piratesStaminaTop, 100, 20, false, 14),\r\n GameCustomizableElement.CreateColor(RiverRunVariables.staminaColor, 0x3CD2CF)\r\n ],\r\n overridenSounds: {\r\n engine: require('@/assets/games/river-run/themes/pirates/sounds/oceanlap.ogg'),\r\n explosion: require('@/assets/games/river-run/themes/pirates/sounds/explosionCrunch_000.ogg'),\r\n nextLevel: require('@/assets/games/river-run/themes/pirates/sounds/select_007.ogg')\r\n }\r\n };\r\n return theme;\r\n }\r\n\r\n private static getSpeedRaceTheme(): GameTheme {\r\n const theme: GameTheme = {\r\n font: 'Russo One',\r\n fontSize: '18px',\r\n fontStartSize: '70px',\r\n textColor: '#ffffff',\r\n textShadowColor: '#000000',\r\n announcementColor: '#eec12d',\r\n playerAnimation: false,\r\n background: this.speedRaceBackground,\r\n styles: {\r\n '--game-input-background-color': 'rgba(255, 255, 255, 0.253)',\r\n '--game-input-border-color': 'white',\r\n '--game-input-checked-color': 'white',\r\n '--game-checkbox-hover-color': 'white',\r\n '--game-job-background-color': 'transparent',\r\n '--game-start-button-color': '#EEC12Dda',\r\n '--game-job-border-color': 'transparent',\r\n '--game-job-selected-color': '#EEC12Dda',\r\n '--game-primary-color': '#cca421',\r\n '--game-secondary-color': '#EEC12D',\r\n '--game-third-color': '#EEC12D',\r\n '--game-font': `'Play', sans-serif`,\r\n '--game-shadow-color': 'transparent',\r\n '--game-score-color': 'rgb(3, 3, 3)',\r\n '--game-score-shadow-color': 'none',\r\n '--game-background-color': 'transparent',\r\n '--game-background': `url(${this.speedRaceBackground})`,\r\n '--game-background-menu': `url(${this.speedRaceBackground})`,\r\n '--game-shadow-opacity': '0',\r\n '--game-login-container-bg': `url(${this.speedRaceBackgroundForm})`,\r\n '--valid-message-text-color': 'rgb(240, 240, 240)',\r\n '--valid-message-background-color': 'rgba(206, 52, 60, .9)',\r\n '--question-background-color': `url(${this.speedRaceBackgroundQuestion})`,\r\n '--question-modal-title': '#edd62d',\r\n '--game-left-intro-title-font': `'Russo One', sans-serif`,\r\n '--game-left-intro-title-color': 'white',\r\n '--terms-link-color': 'white'\r\n },\r\n overridenElements: [\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy1SpriteName, this.speedRaceEnemy1, 60, 100, true, 8),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy2SpriteName, this.speedRaceEnemy2, 60, 100, true, 9),\r\n GameCustomizableElement.CreateImage(\r\n RiverRunVariables.enemy3SpriteName,\r\n this.speedRaceEnemy3,\r\n 60,\r\n 100,\r\n true,\r\n 10\r\n ),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.playerSpriteName, this.speedRacePlayer, 50, 100, true, 7),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.person1, this.speedRacePeople1, 60, 160, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.heartSpriteName, this.speedRaceHeart, 30, 25, true, 12),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.treeSpriteName, this.speedRaceTree, 50, 50, false),\r\n GameCustomizableElement.CreateImage(\r\n RiverRunVariables.object1SpriteName,\r\n this.speedRaceObject1,\r\n 80,\r\n 80,\r\n true,\r\n 11\r\n ),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.roadSpriteName, this.speedRaceRoad, 60, 60, false),\r\n GameCustomizableElement.CreateImage(\r\n RiverRunVariables.bgBackSpriteNameLeft,\r\n this.speedRaceGrassLeft,\r\n 30,\r\n 30,\r\n false\r\n ),\r\n GameCustomizableElement.CreateImage(\r\n RiverRunVariables.bgBackSpriteNameRight,\r\n this.speedRaceGrassRight,\r\n 30,\r\n 30,\r\n false\r\n ),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.odometer, this.speedRaceOdometer, 160, 150, false),\r\n GameCustomizableElement.CreateImage(\r\n RiverRunVariables.odometerLine,\r\n this.speedRaceOdometerLine,\r\n 160,\r\n 160,\r\n false\r\n ),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.endLevelObj, this.speedRaceEndLevelObj, 100, 50, true, 13),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.staminaBottom, this.speedRaceStaminaBottom, 100, 20, false, 14),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.staminaTop, this.speedRaceStaminaTop, 100, 20, false, 14),\r\n GameCustomizableElement.CreateColor(RiverRunVariables.staminaColor, 0xFF9900)\r\n ],\r\n overridenSounds: {\r\n engine: require('@/assets/games/river-run/themes/speed-race/sounds/engine1.ogg'),\r\n explosion: require('@/assets/games/river-run/themes/speed-race/sounds/explosionCrunch_000.ogg'),\r\n nextLevel: require('@/assets/games/river-run/themes/speed-race/sounds/select_007.ogg')\r\n }\r\n };\r\n return theme;\r\n }\r\n\r\n private static getSkyFlightTheme(): GameTheme {\r\n const theme: GameTheme = {\r\n font: 'Russo One',\r\n fontSize: '18px',\r\n fontStartSize: '70px',\r\n textColor: '#2C6F9B',\r\n textShadowColor: '0',\r\n announcementColor: '#2C6F9B',\r\n playerAnimation: false,\r\n background: this.skyFlightBackground,\r\n styles: {\r\n '--game-input-background-color': 'rgba(255, 255, 255, 0.253)',\r\n '--game-input-border-color': 'white',\r\n '--game-input-checked-color': 'white',\r\n '--game-checkbox-hover-color': 'white',\r\n '--game-job-background-color': 'transparent',\r\n '--game-start-button-color': '#eeeeee',\r\n '--game-start-button-font-color': '#305679',\r\n '--game-job-border-color': 'transparent',\r\n '--game-job-selected-color': '#eeeeee',\r\n '--game-job-selected-font-color': '#305679',\r\n '--game-primary-color': '#ACE7FF',\r\n '--game-secondary-color': '#ACE7FF',\r\n '--game-third-color': '#eeeeee50',\r\n '--game-font': `'Play', sans-serif`,\r\n '--game-shadow-color': 'transparent',\r\n '--game-score-color': '#BB1803',\r\n '--game-score-shadow-color': 'none',\r\n '--game-background-color': 'transparent',\r\n '--game-background': `url(${this.skyFlightBackground})`,\r\n '--game-background-menu': `url(${this.skyFlightBackgroundMenu})`,\r\n '--game-shadow-opacity': '0',\r\n '--game-login-container-bg': `rgba(44, 111, 155, .65)`,\r\n '--valid-message-text-color': 'rgb(240, 240, 240)',\r\n '--valid-message-background-color': 'rgba(206, 52, 60, .9)',\r\n '--question-background-color': '#2C6F9B',\r\n '--question-modal-title': '#ACE7FF',\r\n '--game-left-intro-title-font': `'Russo One', sans-serif`,\r\n '--game-left-intro-title-color': 'white',\r\n '--terms-link-color': 'white',\r\n '--game-over': '#ACE7FF'\r\n },\r\n overridenElements: [\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy1SpriteName, this.skyFlightEnemy1, 60, 100, true, 8),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy2SpriteName, this.skyFlightEnemy2, 60, 100, true, 9),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.enemy3SpriteName, this.skyFlightEnemy3, 60, 100, true, 10),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.playerSpriteName, this.skyFlightPlayer, 65, 80, true, 7),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.person1, this.skyFlightPeople1, 70, 70, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.heartSpriteName, this.skyFlightHeart, 35, 30, true, 12),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.treeSpriteName, this.skyFlightTree, 80, 80, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.object1SpriteName, this.skyFlightObject1, 80, 80, true, 11),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.roadSpriteName, this.skyFlightSky, 60, 60, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.bgBackSpriteNameLeft, this.skyFlightCloudLeft, 30, 30, false),\r\n GameCustomizableElement.CreateImage(\r\n RiverRunVariables.bgBackSpriteNameRight,\r\n this.skyFlightCloudRight,\r\n 30,\r\n 30,\r\n false\r\n ),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.odometer, this.skyFlightOdometer, 160, 150, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.odometerLine, this.skyFlightOdometerLine, 160, 160, false),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.endLevelObj, this.skyFlightEndLevelObj, 70, 60, true, 13),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.staminaBottom, this.skyFlightStaminaBottom, 100, 20, false, 14),\r\n GameCustomizableElement.CreateImage(RiverRunVariables.staminaTop, this.skyFlightStaminaTop, 100, 20, false, 14),\r\n GameCustomizableElement.CreateColor(RiverRunVariables.staminaColor, 0xFB2105)\r\n ],\r\n overridenSounds: {\r\n engine: require('@/assets/games/river-run/themes/skyFlight/sounds/speed.wav'),\r\n explosion: require('@/assets/games/river-run/themes/skyFlight/sounds/crash.wav'),\r\n nextLevel: require('@/assets/games/river-run/themes/skyFlight/sounds/select_007.ogg')\r\n }\r\n };\r\n return theme;\r\n }\r\n}\r\n","import { GameType } from '@/services/Api';\r\nimport { GameEngineBase, GameTriggerType } from '../games/game-engine-base';\r\nimport { GameCustomizableElement } from '../games/game-engine-customizable-element';\r\nimport { SpaceRescueEngine } from '../games/space-rescue/space-rescue-engine';\r\nimport { RiverRunEngine } from '../games/river-run/river-run-engine';\r\nimport { MazeGameEngine } from '../games/maze-game/maze-game-engine';\r\nimport GameThemeService from './game-theme.service';\r\n\r\nexport default class GameFactory {\r\n public static getEngine(\r\n type: GameType,\r\n askQuestion: () => void,\r\n gameOverDialog: (score: number) => void,\r\n saveGameLog: (score: number, trigger: GameTriggerType) => void,\r\n customizedElements: GameCustomizableElement[]\r\n ): GameEngineBase | undefined {\r\n switch (type) {\r\n case GameType.SpaceRescue:\r\n case GameType.DesertAdventure:\r\n case GameType.LittleWitch:\r\n case GameType.FroggyPrincess:\r\n return new SpaceRescueEngine(\r\n askQuestion,\r\n gameOverDialog,\r\n saveGameLog,\r\n customizedElements,\r\n GameThemeService.getTheme(type)\r\n );\r\n case GameType.Pirates:\r\n case GameType.SpeedRace:\r\n case GameType.SkyFlight:\r\n return new RiverRunEngine(askQuestion, gameOverDialog, saveGameLog, customizedElements, GameThemeService.getTheme(type));\r\n case GameType.MazeGame:\r\n return new MazeGameEngine(askQuestion, gameOverDialog, saveGameLog, customizedElements, GameThemeService.getTheme(type));\r\n case GameType.Undefined:\r\n throw console.error('Unidentified game type: ', type);\r\n }\r\n }\r\n public static getCustomizableElements(type: GameType): GameCustomizableElement[] {\r\n const empty = () => {\r\n console.log('im just a mock');\r\n };\r\n const engine = this.getEngine(type, empty, empty, empty, []);\r\n const baseElements = engine?.getCustomziableTypes() ?? [];\r\n const themedElements = GameThemeService.getTheme(type)?.overridenElements ?? [];\r\n const elements = GameCustomizableElement.mergeWithOverride(baseElements, themedElements);\r\n\r\n return elements;\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport ImageTypeCustomize from '@/modules/game-instance/components/game-customize-types/ImageTypeCustomize.vue';\r\nimport NumberTypeCustomize from '@/modules/game-instance/components/game-customize-types/NumberTypeCustomize.vue';\r\nimport TextTypeCustomize from '@/modules/game-instance/components/game-customize-types/TextTypeCustomize.vue';\r\nimport GameInstanceCustomize from '@/modules/game-instance/components/GameInstanceCustomize.vue';\r\nimport GameInstanceCustomizeForm from '@/modules/game-instance/components/GameInstanceCustomizeForm.vue';\r\nimport GameInstanceProfessionAssign from '@/modules/game-instance/components/GameInstanceProfessionAssign.vue';\r\nimport { GameInstanceModel } from '@/modules/game-instance/models/game-instance.model';\r\nimport { GameTemplatesModel } from '@/modules/game-instance/models/game-templates.model';\r\nimport { GameMainSettingsModel } from '@/modules/game-play/games/customize-settings.model';\r\nimport {\r\n GameCustomizableElement,\r\n GameCustomizableElementType\r\n} from '@/modules/game-play/games/game-engine-customizable-element';\r\nimport GameFactory from '@/modules/game-play/services/game-factory.service';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { GameInstanceUpdateInputModel, GameType } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport moment from 'moment';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport UserApiService from '../services/game-instance-api.service';\r\nimport { VForm } from '@/modules/layout/components/forms/v-form';\r\nimport FormHelper from '@/modules/layout/components/forms/form-helper';\r\nimport EditCardSection from '@/modules/layout/components/EditCardSection.vue';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { GamePlayRoute } from '@/modules/game-play/game-play-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: {\r\n GameInstanceCustomizeForm,\r\n GameInstanceProfessionAssign,\r\n GameInstanceCustomize,\r\n ImageTypeCustomize,\r\n TextTypeCustomize,\r\n NumberTypeCustomize\r\n }\r\n})\r\nexport default class GameInstanceEdit extends Vue {\r\n @Prop() readonly gameInstanceId!: string;\r\n public instanceSettings: GameInstanceModel = {} as GameInstanceModel;\r\n public gameTemplates: GameTemplatesModel = {} as GameTemplatesModel;\r\n private loading = true;\r\n private submitting = false;\r\n public gameMainSettings = new GameMainSettingsModel();\r\n public gameCustomizableElements: GameCustomizableElement[] = [];\r\n public selectedGameTemplate?: GameType;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Games'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: GameInstanceRoute.gameInstanceList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Edit'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n rules = {\r\n required: StringValidators.required\r\n };\r\n apiService = new UserApiService();\r\n\r\n async mounted() {\r\n this.loading = true;\r\n\r\n const games = await this.apiService.getGameTemplatesForCreateDropdown();\r\n if (games) {\r\n this.gameTemplates = new GameTemplatesModel(games);\r\n }\r\n const gameInstance = await this.apiService.getGameInstanceById(this.gameInstanceId);\r\n if (gameInstance) {\r\n this.instanceSettings = new GameInstanceModel(gameInstance);\r\n\r\n if (this.instanceSettings.gameMainSettings) {\r\n this.gameMainSettings = JSON.parse(this.instanceSettings.gameMainSettings);\r\n } else {\r\n this.gameMainSettings = new GameMainSettingsModel();\r\n }\r\n\r\n this.gameTemplates.selectedGame = gameInstance.gameTemplateId;\r\n this.selectedGameTemplate = this.gameTemplates.getSelectedGameTemplate()?.type;\r\n this.resetCustomizeElements();\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n public onGameSelected(gameId: string) {\r\n this.gameTemplates.selectedGame = gameId;\r\n this.selectedGameTemplate = this.gameTemplates.getSelectedGameTemplate()?.type;\r\n this.resetCustomizeElements();\r\n }\r\n\r\n private resetCustomizeElements() {\r\n const selectedGame = this.gameTemplates.getSelectedGameTemplate();\r\n\r\n if (selectedGame) {\r\n this.gameCustomizableElements = this.getCustomizedElements(\r\n GameFactory.getCustomizableElements(selectedGame.type),\r\n this.gameMainSettings.gameCustomizableElements ?? []\r\n ).sort((a, b) => {\r\n if (a.position > b.position) {\r\n return 1;\r\n }\r\n\r\n if (a.position < b.position) {\r\n return -1;\r\n }\r\n\r\n return 0;\r\n });\r\n }\r\n }\r\n\r\n protected getCustomizedElements(\r\n defaultElements: GameCustomizableElement[],\r\n customElements: GameCustomizableElement[]\r\n ): GameCustomizableElement[] {\r\n const filteredDefault = defaultElements.filter(d => !customElements.some(e => e.name === d.name));\r\n const filteredCustom = customElements.filter(c => defaultElements.some(e => e.name === c.name));\r\n const merged = filteredDefault.concat(filteredCustom);\r\n\r\n return merged;\r\n }\r\n getCustomizedElementsToSave() {\r\n const nonEmptyElements = this.gameCustomizableElements.filter(\r\n e => !(e.type === GameCustomizableElementType.Image && !e.value)\r\n );\r\n const selectedGame = this.gameTemplates.getSelectedGameTemplate();\r\n if (selectedGame) {\r\n const defaultElements = GameFactory.getCustomizableElements(selectedGame.type);\r\n const customElements = nonEmptyElements.filter(\r\n e => !defaultElements.some(d => d.name === e.name && d.value === e.value)\r\n );\r\n\r\n return customElements;\r\n }\r\n return [];\r\n }\r\n async saveAndPlay() {\r\n const saveResult = await this.gameInstanceSave();\r\n if (saveResult) {\r\n const routeData = await this.$router.resolve({\r\n name: GamePlayRoute.gameContainer,\r\n params: { id: this.gameInstanceId }\r\n });\r\n\r\n window.open(routeData.href, '_blank');\r\n }\r\n }\r\n async submit() {\r\n const saveResult = await this.gameInstanceSave();\r\n if (saveResult) {\r\n await this.$router.push({ name: GameInstanceRoute.gameInstanceList });\r\n }\r\n }\r\n async gameInstanceSave(): Promise {\r\n if (this.submitting) return false;\r\n this.submitting = true;\r\n const form: VForm = this.$refs.form as VForm;\r\n if (form.validate() == false) {\r\n (this.$refs.gameCustomize as EditCardSection)?.expand();\r\n (this.$refs.instanceCustomize as GameInstanceCustomize)?.expandAll();\r\n this.submitting = false;\r\n FormHelper.scrollToNextError(this);\r\n return false;\r\n }\r\n if (\r\n this.instanceSettings.playableFrom &&\r\n this.instanceSettings.playableTo &&\r\n this.instanceSettings.playableFrom.isSameOrAfter(this.instanceSettings.playableTo)\r\n ) {\r\n NotificationService.error(i18n.t('Modules.GameInstance.Notifications.Error.DateFromLaterThanTo').toString());\r\n this.submitting = false;\r\n return false;\r\n }\r\n if (this.instanceSettings.assignedProfessions.length == 0) {\r\n NotificationService.error(i18n.t('Modules.GameInstance.Notifications.Error.ProfessionNotChosen').toString());\r\n this.submitting = false;\r\n return false;\r\n }\r\n if (!this.gameTemplates.selectedGame) {\r\n NotificationService.error(i18n.t('Modules.GameInstance.Notifications.Error.GameNotChosen').toString());\r\n this.submitting = false;\r\n return false;\r\n }\r\n this.gameMainSettings.gameCustomizableElements = this.getCustomizedElementsToSave();\r\n\r\n const inputModel = new GameInstanceUpdateInputModel({\r\n gameId: this.gameInstanceId,\r\n gameTemplateId: this.gameTemplates.selectedGame,\r\n isPublic: this.instanceSettings.isPublic,\r\n playableFrom: null,\r\n playableTo: null,\r\n title: this.instanceSettings.gameTitle,\r\n validUntil: moment(this.instanceSettings.validUntil).utc(),\r\n assignedProfessions: this.instanceSettings.assignedProfessions,\r\n settings: JSON.stringify(this.gameMainSettings)\r\n });\r\n if (this.instanceSettings.playableFrom) {\r\n inputModel.playableFrom = moment(this.instanceSettings.playableFrom).utc();\r\n }\r\n if (this.instanceSettings.playableTo) {\r\n inputModel.playableTo = moment(this.instanceSettings.playableTo).utc();\r\n }\r\n const gameInstance = await this.apiService.updateGameInstance(inputModel);\r\n if (gameInstance) {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.updateGameInstance, {\r\n instance_id: gameInstance.id,\r\n instance_title: gameInstance.title,\r\n template_id: gameInstance.gameTemplateId,\r\n template_title: gameInstance.gameTemplate?.title\r\n });\r\n\r\n this.submitting = false;\r\n NotificationService.success(i18n.t('Modules.GameInstance.Notifications.Success.GameEdited').toString());\r\n return true;\r\n }\r\n this.submitting = false;\r\n return false;\r\n }\r\n\r\n getComponent(type: GameCustomizableElementType) {\r\n if (type === GameCustomizableElementType.Image) {\r\n return 'ImageTypeCustomize';\r\n }\r\n if (type === GameCustomizableElementType.Text) {\r\n return 'TextTypeCustomize';\r\n }\r\n if (type === GameCustomizableElementType.Number) {\r\n return 'NumberTypeCustomize';\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceEdit.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceEdit.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceEdit.vue?vue&type=template&id=ab8bc58e&scoped=true&\"\nimport script from \"./GameInstanceEdit.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceEdit.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameInstanceEdit.vue?vue&type=style&index=0&id=ab8bc58e&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ab8bc58e\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VContainer,VForm,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(_vm.isLoadingData)?_c('v-skeleton-loader',{staticClass:\"mx-auto\",attrs:{\"type\":\"article, actions\"}}):_vm._e(),_c('v-form',{ref:\"invoiceRecipientForm\",staticClass:\"game-order-container\"},[(_vm.displaySummary === false && _vm.isLoadingData === false && !!_vm.orderDetails)?_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Order.FormTitle')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Order.Service.Title')}},[_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Service.PlanLabel')},model:{value:(_vm.planType),callback:function ($$v) {_vm.planType=$$v},expression:\"planType\"}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Service.ServiceNameLabel')},model:{value:(_vm.serviceName),callback:function ($$v) {_vm.serviceName=$$v},expression:\"serviceName\"}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Service.OrderNumberLabel')},model:{value:(_vm.orderNumber),callback:function ($$v) {_vm.orderNumber=$$v},expression:\"orderNumber\"}})],1),_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Order.Buyer.Title')}},[_c('form-autocomplete-select',{staticClass:\"game-order-country-select\",attrs:{\"items\":_vm.countries,\"item-text\":\"name\",\"item-value\":\"code\",\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.CountryLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.address.countryCode),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData.address, \"countryCode\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.address.countryCode\"}}),_c('form-text-input',{staticClass:\"game-order-companyname-input\",attrs:{\"rules\":_vm.validationRules.companyName,\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.CompanyNameLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.companyName),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData, \"companyName\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.companyName\"}}),_c('v-row',[_c('v-col',{staticClass:\"mt-4 mb-0 py-0 text--disabled\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Order.Buyer.CompanyAddressLabel'))+\" \")])],1),(_vm.orderDetails.priceInfo.invoiceType === 'Polish')?_c('form-text-input',{staticClass:\"game-order-zipcode-input\",attrs:{\"rules\":[_vm.rules.postCodePl],\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.ZipCodeLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.address.postCode),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData.address, \"postCode\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.address.postCode\"}}):_c('form-text-input',{staticClass:\"game-order-zipcode-input\",attrs:{\"rules\":_vm.addressRules.postCode,\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.ZipCodeLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.address.postCode),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData.address, \"postCode\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.address.postCode\"}}),_c('form-text-input',{staticClass:\"game-order-city-input\",attrs:{\"rules\":_vm.addressRules.city,\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.CityLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.address.city),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData.address, \"city\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.address.city\"}}),_c('form-text-input',{staticClass:\"game-order-street-input\",attrs:{\"rules\":_vm.addressRules.street,\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.StreetLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.address.street),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData.address, \"street\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.address.street\"}}),(_vm.orderDetails.priceInfo.invoiceType != 'Other')?_c('v-row',[_c('v-col',{staticClass:\"mt-4 mb-0 py-0 text--disabled\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Order.Buyer.CompanyVatNumberLabel'))+\" \")])],1):_vm._e(),(_vm.orderDetails.priceInfo.invoiceType == 'Polish')?_c('form-text-input',{staticClass:\"game-order-nip-input\",attrs:{\"rules\":_vm.nipValidationRules,\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.PolishNipLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.vatNumber),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData, \"vatNumber\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.vatNumber\"}}):_vm._e(),(_vm.orderDetails.priceInfo.invoiceType == 'EuropeanUnion')?_c('form-text-input',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.EUVatNumberLabel')}},[_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-text-field',{staticClass:\"game-order-vat-countrycode-input\",attrs:{\"readonly\":\"\",\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.countryCodeForVatNumber),callback:function ($$v) {_vm.countryCodeForVatNumber=$$v},expression:\"countryCodeForVatNumber\"}})],1),_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('v-text-field',{staticClass:\"game-order-vatnumber-input\",attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\",\"rules\":_vm.validationRules.vatNumber},model:{value:(_vm.orderDetails.invoiceRecipientFormData.vatNumber),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData, \"vatNumber\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.vatNumber\"}})],1)],1):_vm._e()],1),_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Order.Billing.Title')}},[(_vm.orderDetails.invoiceRecipientFormData.address.countryCode != 'PL')?_c('form-select',{staticClass:\"game-order-currency-select\",attrs:{\"items\":_vm.currencies,\"label\":_vm.$t('Modules.GameInstance.Order.Billing.CurrencyLabel')},model:{value:(_vm.orderDetails.priceInfo.currency),callback:function ($$v) {_vm.$set(_vm.orderDetails.priceInfo, \"currency\", $$v)},expression:\"orderDetails.priceInfo.currency\"}}):_vm._e(),_c('form-text-info',{attrs:{\"currency\":_vm.currency,\"label\":_vm.$t('Modules.GameInstance.Order.Billing.NetPriceLabel')},model:{value:(_vm.orderDetails.priceInfo.netPrice),callback:function ($$v) {_vm.$set(_vm.orderDetails.priceInfo, \"netPrice\", $$v)},expression:\"orderDetails.priceInfo.netPrice\"}}),(_vm.orderDetails.isDiscountSet !== true)?_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Order.Billing.DiscountCodeLabel'))+\" \")]),_c('v-col',{staticClass:\"d-flex\",attrs:{\"cols\":\"5\"}},[_c('v-text-field',{staticClass:\"game-order-discount-input\",attrs:{\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.discountCode),callback:function ($$v) {_vm.discountCode=$$v},expression:\"discountCode\"}}),_c('v-btn',{staticClass:\"ml-4 game-order-discount-verify-button\",attrs:{\"depressed\":\"\",\"color\":\"primary\",\"loading\":_vm.isVerifyingDiscount},on:{\"click\":_vm.verifyDiscountCode}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Order.Billing.DiscountButton'))+\" \")])],1)],1):_vm._e(),(_vm.orderDetails.isDiscountSet === true)?_c('form-text-info',{staticClass:\"game-order-percentdiscount-label\",attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Billing.PercentDiscountLabel')},model:{value:(_vm.discountValueFormatted),callback:function ($$v) {_vm.discountValueFormatted=$$v},expression:\"discountValueFormatted\"}}):_vm._e(),(_vm.orderDetails.isDiscountSet === true)?_c('form-text-info',{attrs:{\"currency\":_vm.currency,\"label\":_vm.$t('Modules.GameInstance.Order.Billing.NewPriceLabel')},model:{value:(_vm.orderDetails.priceInfo.netPriceAfterDiscount),callback:function ($$v) {_vm.$set(_vm.orderDetails.priceInfo, \"netPriceAfterDiscount\", $$v)},expression:\"orderDetails.priceInfo.netPriceAfterDiscount\"}}):_vm._e(),_c('form-text-info',{attrs:{\"value\":_vm.$t(_vm.vatInfo),\"label\":_vm.$t(_vm.vatInfoLabel),\"currency\":_vm.currency}}),_c('v-row',{staticClass:\"my-8\",attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"text-h6 font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Order.Billing.TotalPriceLabel')))]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('span',{staticClass:\"mr-1 text-h6 blue--text game-order-totalprice\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.orderDetails.priceInfo.finalPrice,_vm.currency))+\" \")]),_c('span',{staticClass:\"text--disabled\"},[_vm._v(_vm._s(_vm.finalPriceWithVatInfo))])])],1),_c('v-row',{attrs:{\"align\":\"center\",\"dense\":\"\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('form-conditions-checkbox',{staticClass:\"game-order-privacy-checkbox\",attrs:{\"link\":\"https://ingame.hr/privacypolicy/\",\"linkText\":_vm.$t('Modules.GameInstance.Order.PolicyAndTerms.PrivacyLinkText'),\"label\":_vm.$t('Modules.GameInstance.Order.PolicyAndTerms.PrivacyText'),\"newTab\":\"\"},model:{value:(_vm.privacyPolicyChecked),callback:function ($$v) {_vm.privacyPolicyChecked=$$v},expression:\"privacyPolicyChecked\"}}),_c('form-conditions-checkbox',{staticClass:\"game-order-tos-checkbox\",attrs:{\"link\":\"https://ingame.hr/termsandconditions/\",\"linkText\":_vm.$t('Modules.GameInstance.Order.PolicyAndTerms.TermsLinkText'),\"label\":_vm.$t('Modules.GameInstance.Order.PolicyAndTerms.TermsText'),\"newTab\":\"\"},model:{value:(_vm.termsAndConditionChecked),callback:function ($$v) {_vm.termsAndConditionChecked=$$v},expression:\"termsAndConditionChecked\"}})],1),_c('v-col',{attrs:{\"offset\":\"4\",\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"white--text game-order-summary-button\",attrs:{\"block\":\"\",\"elevation\":\"2\",\"color\":\"green\",\"disabled\":!_vm.privacyPolicyChecked || !_vm.termsAndConditionChecked,\"loading\":_vm.summaryLoading},on:{\"click\":_vm.goToSummary}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Order.SummaryButton')))])],1)],1)],1)],1):_vm._e()],1),_c('OrderSummary',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.displaySummary),expression:\"displaySummary\"}],staticClass:\"game-order-summary-container\",attrs:{\"orderDetails\":_vm.orderDetails,\"orderNumber\":_vm.orderNumber,\"termsAndConditionChecked\":_vm.termsAndConditionChecked,\"privacyPolicyChecked\":_vm.privacyPolicyChecked,\"finalPriceWithVatInfo\":_vm.finalPriceWithVatInfo,\"vatInfo\":_vm.vatInfo,\"vatInfoLabel\":_vm.vatInfoLabel,\"country\":_vm.country,\"serviceName\":_vm.serviceName,\"planType\":_vm.planType},on:{\"go-back\":_vm.goToEdit}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { StringUtils } from '@/modules/layout/utils/string-utils';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { GetInitialOrderDataDto, PriceInfo, VerifyDiscountResultDto } from '@/services/Api';\r\nimport { CountriesProvider } from '@/services/countries.provider';\r\nimport moment, { Moment } from 'moment';\r\nexport interface AddressFormData {\r\n countryCode: string;\r\n city: string;\r\n street: string;\r\n postCode: string;\r\n}\r\n\r\nexport interface InvoiceRecipientFormData {\r\n companyName: string;\r\n vatNumber: string;\r\n address: AddressFormData;\r\n}\r\n\r\nexport class OrderDetails {\r\n public priceInfo: PriceInfo;\r\n\r\n public discountCode: string | null = null;\r\n public isDiscountSet = false;\r\n\r\n public newValidUntil: Moment;\r\n\r\n public invoiceRecipientFormData: InvoiceRecipientFormData = {\r\n companyName: '',\r\n vatNumber: '',\r\n address: {\r\n countryCode: '',\r\n city: '',\r\n street: '',\r\n postCode: ''\r\n }\r\n };\r\n\r\n constructor(public gameInstanceId: string, dataDto: GetInitialOrderDataDto) {\r\n this.priceInfo = dataDto.priceInfo;\r\n this.newValidUntil = moment(dataDto.newValidUntil).local();\r\n\r\n const data = dataDto.invoiceRecipient;\r\n const country = CountriesProvider.getCountry(data.address.countryCode);\r\n\r\n this.invoiceRecipientFormData = {\r\n companyName: data.companyName,\r\n vatNumber: data.vatNumber || '',\r\n address: {\r\n countryCode: country?.code || CountriesProvider.countries[0].code,\r\n city: data.address.city || '',\r\n street: data.address.street || '',\r\n postCode: data.address.postCode || ''\r\n }\r\n };\r\n }\r\n\r\n public setDiscount(resultDto: VerifyDiscountResultDto | undefined): void {\r\n if (resultDto == null) return;\r\n\r\n this.discountCode = resultDto.code;\r\n this.priceInfo.discountValue = resultDto.value;\r\n this.isDiscountSet = StringUtils.isNullOrWhiteSpace(this.discountCode) === false;\r\n }\r\n}\r\n\r\ntype ValidationRule = string | boolean | ((inputValue: string) => string | boolean);\r\ntype InvoiceRecipientValidationRules = { [key in keyof InvoiceRecipientFormData]: null | ValidationRule[] };\r\ntype AddressValidationRules = { [key in keyof AddressFormData]: null | ValidationRule[]};\r\n\r\nexport const invoiceRecipientValidationRules: InvoiceRecipientValidationRules = {\r\n companyName: [StringValidators.required, (value: string) => StringValidators.maxLength(value, 150)],\r\n vatNumber: [StringValidators.required, (value: string) => StringValidators.maxLength(value, 30)],\r\n address: null\r\n};\r\n\r\nexport const addressValidationRules: AddressValidationRules = {\r\n countryCode: [StringValidators.required, (value: string) => StringValidators.maxLength(value, 10)],\r\n city: [StringValidators.required, (value: string) => StringValidators.maxLength(value, 150)],\r\n street: [StringValidators.required, (value: string) => StringValidators.maxLength(value, 150)],\r\n postCode: [StringValidators.required, (value: string) => StringValidators.maxLength(value, 150)]\r\n};\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.orderDetails)?_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Order.SummaryTitle')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Order.Service.Title')}},[_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Service.PlanLabel')},model:{value:(_vm.planType),callback:function ($$v) {_vm.planType=$$v},expression:\"planType\"}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Service.ServiceNameLabel')},model:{value:(_vm.serviceName),callback:function ($$v) {_vm.serviceName=$$v},expression:\"serviceName\"}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Service.OrderNumberLabel')},model:{value:(_vm.orderNumber),callback:function ($$v) {_vm.orderNumber=$$v},expression:\"orderNumber\"}})],1),_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Order.Buyer.Title')}},[_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.CountryLabel')},model:{value:(_vm.country),callback:function ($$v) {_vm.country=$$v},expression:\"country\"}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.CompanyNameLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.companyName),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData, \"companyName\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.companyName\"}}),_c('v-row',[_c('v-col',{staticClass:\"mt-4 mb-0 py-0 text--disabled\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Order.Buyer.CompanyAddressLabel'))+\" \")])],1),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.ZipCodeLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.address.postCode),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData.address, \"postCode\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.address.postCode\"}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.CityLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.address.city),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData.address, \"city\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.address.city\"}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.StreetLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.address.street),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData.address, \"street\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.address.street\"}}),(_vm.orderDetails.priceInfo.invoiceType != 'Other')?_c('v-row',[_c('v-col',{staticClass:\"mt-4 mb-0 py-0 text--disabled\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.Order.Buyer.CompanyVatNumberLabel'))+\" \")])],1):_vm._e(),(_vm.orderDetails.priceInfo.invoiceType == 'Polish')?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.PolishNipLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.vatNumber),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData, \"vatNumber\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.vatNumber\"}}):_vm._e(),(_vm.orderDetails.priceInfo.invoiceType == 'EuropeanUnion')?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Buyer.EUVatNumberLabel')},model:{value:(_vm.orderDetails.invoiceRecipientFormData.vatNumber),callback:function ($$v) {_vm.$set(_vm.orderDetails.invoiceRecipientFormData, \"vatNumber\", $$v)},expression:\"orderDetails.invoiceRecipientFormData.vatNumber\"}}):_vm._e()],1),_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.GameInstance.Order.Billing.Title')}},[_c('form-text-info',{attrs:{\"currency\":_vm.currency,\"label\":_vm.$t('Modules.GameInstance.Order.Billing.NetPriceLabel')},model:{value:(_vm.orderDetails.priceInfo.netPrice),callback:function ($$v) {_vm.$set(_vm.orderDetails.priceInfo, \"netPrice\", $$v)},expression:\"orderDetails.priceInfo.netPrice\"}}),(_vm.orderDetails.isDiscountSet === true)?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.GameInstance.Order.Billing.PercentDiscountLabel')},model:{value:(_vm.discountValueFormatted),callback:function ($$v) {_vm.discountValueFormatted=$$v},expression:\"discountValueFormatted\"}}):_vm._e(),(_vm.orderDetails.isDiscountSet === true)?_c('form-text-info',{attrs:{\"currency\":_vm.currency,\"label\":_vm.$t('Modules.GameInstance.Order.Billing.NewPriceLabel')},model:{value:(_vm.orderDetails.priceInfo.netPriceAfterDiscount),callback:function ($$v) {_vm.$set(_vm.orderDetails.priceInfo, \"netPriceAfterDiscount\", $$v)},expression:\"orderDetails.priceInfo.netPriceAfterDiscount\"}}):_vm._e(),_c('form-text-info',{attrs:{\"value\":_vm.$t(_vm.vatInfo),\"label\":_vm.$t(_vm.vatInfoLabel),\"currency\":_vm.currency}}),_c('v-row',{staticClass:\"my-8\",attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"text-h6 font-weight-medium\",attrs:{\"cols\":\"2\",\"offset\":\"0\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Order.Billing.TotalPriceLabel'))+\" \")]),_c('v-col',{attrs:{\"cols\":\"5\"}},[_c('span',{staticClass:\"mr-1 text-h6 blue--text\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.orderDetails.priceInfo.finalPrice,_vm.currency))+\" \")]),_c('span',{staticClass:\"text--disabled\"},[_vm._v(_vm._s(_vm.finalPriceWithVatInfo))])])],1),_c('v-row',{attrs:{\"align\":\"center\",\"dense\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('form-conditions-checkbox',{attrs:{\"link\":\"https://ingame.hr/privacypolicy/\",\"linkText\":_vm.$t('Modules.GameInstance.Order.PolicyAndTerms.PrivacyLinkText'),\"label\":_vm.$t('Modules.GameInstance.Order.PolicyAndTerms.PrivacyText'),\"newTab\":\"\",\"disabled\":\"\"},model:{value:(_vm.privacyPolicyChecked),callback:function ($$v) {_vm.privacyPolicyChecked=$$v},expression:\"privacyPolicyChecked\"}}),_c('form-conditions-checkbox',{attrs:{\"link\":\"https://ingame.hr/termsandconditions/\",\"linkText\":_vm.$t('Modules.GameInstance.Order.PolicyAndTerms.TermsLinkText'),\"label\":_vm.$t('Modules.GameInstance.Order.PolicyAndTerms.TermsText'),\"newTab\":\"\",\"disabled\":\"\"},model:{value:(_vm.termsAndConditionChecked),callback:function ($$v) {_vm.termsAndConditionChecked=$$v},expression:\"termsAndConditionChecked\"}})],1),(!_vm.paymentCreated)?_c('v-col',{attrs:{\"cols\":\"2\",\"offset\":\"2\"}},[_c('v-btn',{staticClass:\"btn-cancel\",attrs:{\"block\":\"\",\"text\":\"\",\"elevation\":\"2\"},on:{\"click\":_vm.goBack}},[_vm._v(_vm._s(_vm.$t('Buttons.Back')))])],1):_vm._e(),(!_vm.paymentCreated)?_c('v-col',{attrs:{\"offset\":\"0\",\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"game-order-pay-button\",attrs:{\"loading\":_vm.isCreatingNewOrder,\"disabled\":_vm.paymentCreated,\"dark\":\"\",\"block\":\"\",\"elevation\":\"2\",\"color\":\"green\"},on:{\"click\":_vm.pay}},[_vm._v(\" \"+_vm._s(_vm.getPayButtonLabel)+\" \")])],1):_c('v-col',{attrs:{\"offset\":\"4\",\"cols\":\"2\"}},[_c('v-btn',{attrs:{\"to\":{ name: _vm.gameInstanceRoute.gameInstanceList },\"dark\":\"\",\"block\":\"\",\"elevation\":\"2\",\"color\":\"green\"}},[_vm._v(_vm._s(_vm.$t('Modules.GameInstance.Order.FinishButton')))])],1)],1)],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport GameApiService from '../services/game-instance-api.service';\r\nimport { StringUtils } from '@/modules/layout/utils/string-utils';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent, getAnalyticsEventParams } from '@/plugins/analytics-google';\r\nimport { AnalyticsHelper, FacebookPixelEvent } from '@/plugins/analytics-facebook';\r\nimport { PayInputModel } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { OrderDetails } from '../models/create-order.model';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { GameInstanceRoute } from '../game-instance-router.enum';\r\n\r\n@Component\r\nexport default class OrderSummary extends Vue {\r\n @Prop() readonly orderDetails!: OrderDetails;\r\n @Prop() readonly orderNumber!: string;\r\n @Prop() readonly termsAndConditionChecked!: boolean;\r\n @Prop() readonly privacyPolicyChecked!: boolean;\r\n @Prop() readonly finalPriceWithVatInfo!: string;\r\n @Prop() readonly vatInfo!: string;\r\n @Prop() readonly vatInfoLabel!: string;\r\n @Prop() readonly country!: string;\r\n @Prop() readonly serviceName!: string;\r\n @Prop() readonly planType!: string;\r\n //displaySummary false\r\n\r\n public isCreatingNewOrder = false;\r\n public paymentCreated = false;\r\n private paymentsApi: GameApiService = new GameApiService();\r\n public gameInstanceRoute = GameInstanceRoute;\r\n\r\n get currency() {\r\n return this.orderDetails?.priceInfo.currency;\r\n }\r\n\r\n get discountValueFormatted() {\r\n return `${this.orderDetails?.priceInfo?.discountValue} %`;\r\n }\r\n\r\n public goBack() {\r\n this.$emit('go-back');\r\n }\r\n\r\n public pay(): void {\r\n if (this.isCreatingNewOrder && this.paymentCreated) return;\r\n\r\n const payInputModel = new PayInputModel({\r\n orderNumber: this.orderNumber,\r\n gameInstanceId: this.orderDetails?.gameInstanceId as string\r\n });\r\n\r\n this.isCreatingNewOrder = true;\r\n this.paymentsApi.pay(payInputModel).then(redirectUri => {\r\n this.isCreatingNewOrder = false;\r\n if (StringUtils.isNullOrWhiteSpace(redirectUri)) return;\r\n\r\n this.sendBeginCheckoutAnalyticsEvent();\r\n\r\n this.paymentCreated = true;\r\n window.location.assign(redirectUri as string);\r\n });\r\n }\r\n\r\n public get getPayButtonLabel() {\r\n if (this.orderDetails.priceInfo.discountValue === 100) {\r\n return i18n.t('Modules.GameInstance.Order.PayButtonWithFreePurchase').toString();\r\n } else {\r\n return i18n.t('Modules.GameInstance.Order.PayButton').toString();\r\n }\r\n }\r\n\r\n private sendBeginCheckoutAnalyticsEvent(): void {\r\n if (this.orderDetails == null) return;\r\n\r\n // params from: https://developers.google.com/gtagjs/reference/ga4-events#begin_checkout\r\n AnalyticsGoogleHelper.event(\r\n AnalyticsEvent.beginCheckout,\r\n getAnalyticsEventParams(this.orderNumber, this.orderDetails)\r\n );\r\n\r\n // params from: https://developers.facebook.com/docs/facebook-pixel/reference\r\n AnalyticsHelper.trackWithFacebookPixel(\r\n FacebookPixelEvent.initiateCheckout,\r\n AnalyticsHelper.getPurchaseOptions(this.orderNumber, this.orderDetails)\r\n );\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderSummary.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderSummary.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderSummary.vue?vue&type=template&id=4873773f&scoped=true&\"\nimport script from \"./OrderSummary.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderSummary.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4873773f\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VRow})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport {\r\n addressValidationRules,\r\n invoiceRecipientValidationRules,\r\n OrderDetails\r\n} from '@/modules/game-instance/models/create-order.model';\r\nimport { StringUtils } from '@/modules/layout/utils/string-utils';\r\nimport AnalyticsGoogleHelper, {\r\n AnalyticsEvent,\r\n getAnalyticsEventParams,\r\n getAnalyticsEventParamsBase\r\n} from '@/plugins/analytics-google';\r\nimport { AnalyticsHelper, FacebookPixelEvent } from '@/plugins/analytics-facebook';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport {\r\n CreateEmptyPurchaseInputModel,\r\n Currency,\r\n GameInstanceRecipientDataInputModel,\r\n InvoiceType\r\n} from '@/services/Api';\r\nimport { CountriesProvider } from '@/services/countries.provider';\r\nimport { Component, Vue, Watch } from 'vue-property-decorator';\r\nimport GameApiService from '../services/game-instance-api.service';\r\nimport OrderSummary from '@/modules/game-instance/components/OrderSummary.vue';\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { validatePolish } from 'validate-polish-ext';\r\nimport FormHelper from '@/modules/layout/components/forms/form-helper';\r\nimport { GameInstanceRoute } from '../game-instance-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n\r\ntype VForm = Vue & { validate: () => boolean };\r\n\r\n@Component({ components: { OrderSummary } })\r\nexport default class GameInstanceCreateOrder extends Vue {\r\n public readonly validationRules = invoiceRecipientValidationRules;\r\n public readonly addressRules = addressValidationRules;\r\n public readonly rules = {\r\n postCodePl: (value: string) => StringValidators.zipCodePl(value)\r\n };\r\n public nipValidationRules: any[] = [\r\n StringValidators.required,\r\n (value: string) =>\r\n validatePolish.nip(value) ? true : i18n.t('Modules.GameInstance.Order.Buyer.InvalidNipNumber').toString()\r\n ];\r\n\r\n private paymentsApi: GameApiService = new GameApiService();\r\n public readonly stringUtils = StringUtils;\r\n\r\n public countriesProvider = CountriesProvider;\r\n public countries = CountriesProvider.countries;\r\n\r\n public orderDetails: OrderDetails | null = null;\r\n public isLoadingData = true;\r\n public summaryLoading = false;\r\n\r\n public discountCode = 'INGAME2024PROMO';\r\n public isVerifyingDiscount = false;\r\n\r\n public displaySummary = false;\r\n\r\n public planType = 'PER GAME';\r\n public currencies = Object.keys(Currency).filter(x => x != 'PLN');\r\n\r\n public vatInfo = '';\r\n public vatInfoLabel = '';\r\n public finalPriceWithVatInfo = '';\r\n\r\n public termsAndConditionChecked = false;\r\n public privacyPolicyChecked = false;\r\n\r\n public orderNumber = '';\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Games'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: GameInstanceRoute.gameInstanceList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Order'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n public async mounted(): Promise {\r\n const gameInstanceId = this.$route.params['gameInstanceId'];\r\n\r\n if (StringUtils.isNullOrWhiteSpace(gameInstanceId)) {\r\n // using replace instead of push, to remove the current page (create order page, without gameInstanceId param) from the history stack\r\n this.$router.replace({ name: GameInstanceRoute.gameInstanceList });\r\n return;\r\n }\r\n\r\n const createEmptyPurchaseInputModel = new CreateEmptyPurchaseInputModel();\r\n createEmptyPurchaseInputModel.gameInstanceId = gameInstanceId;\r\n\r\n const result = await this.paymentsApi.createEmptyPurchase(createEmptyPurchaseInputModel);\r\n this.orderNumber = result?.purchaseNumber as string;\r\n\r\n store.setBreadcrumb(this.breadcrumbData);\r\n\r\n // todo: PLN and PL should come from the default form values\r\n this.paymentsApi.getInitialOrderData(gameInstanceId, this.countries[0].code).then(result => {\r\n this.isLoadingData = false;\r\n\r\n if (result == null) {\r\n // using replace instead of push, to remove the current page (create order page, without gameInstanceId param) from the history stack\r\n this.$router.replace({ name: GameInstanceRoute.gameInstanceList });\r\n return;\r\n }\r\n\r\n this.orderDetails = new OrderDetails(gameInstanceId, result);\r\n this.sendSelectItemAnalyticsEvent();\r\n });\r\n }\r\n\r\n public get serviceName() {\r\n const serviceName = i18n.t('Modules.GameInstance.Order.Service.ServiceName', {\r\n validUntilDate: Vue.filter('formatDate')(this.orderDetails?.newValidUntil)\r\n });\r\n return serviceName;\r\n }\r\n\r\n public get country(): string | null {\r\n if (this.orderDetails?.invoiceRecipientFormData.address.countryCode == null) return null;\r\n\r\n const viewModel = this.countriesProvider.getCountry(this.orderDetails.invoiceRecipientFormData.address.countryCode);\r\n return viewModel != null ? viewModel.name : null;\r\n }\r\n\r\n get currency() {\r\n return this.orderDetails?.priceInfo.currency;\r\n }\r\n\r\n get discountValueFormatted() {\r\n return `${this.orderDetails?.priceInfo?.discountValue} %`;\r\n }\r\n\r\n get countryCodeForVatNumber() {\r\n const code = this.orderDetails?.invoiceRecipientFormData.address.countryCode;\r\n return code == 'GR' ? 'EL' : code;\r\n }\r\n\r\n @Watch('orderDetails.invoiceRecipientFormData.address.countryCode')\r\n public onCountryChange(value: string) {\r\n if (this.orderDetails?.priceInfo) {\r\n this.orderDetails.priceInfo.currency = value == 'PL' ? Currency.PLN : Currency.EUR;\r\n }\r\n this.verifyDiscountCode();\r\n }\r\n @Watch('orderDetails.priceInfo.currency')\r\n public onCurrencyChange() {\r\n this.verifyDiscountCode();\r\n }\r\n\r\n public async updatePriceAndVatInfo() {\r\n const response = await this.paymentsApi.getPriceInfo(\r\n this.orderDetails?.priceInfo.netPrice as number,\r\n this.orderDetails?.invoiceRecipientFormData.address.countryCode as string,\r\n this.orderDetails?.priceInfo.currency as Currency,\r\n this.orderDetails?.priceInfo.discountValue as number\r\n );\r\n if (this.orderDetails?.priceInfo) {\r\n this.orderDetails.priceInfo.netPrice = response?.priceInfo?.netPrice as number;\r\n this.orderDetails.priceInfo.netPriceAfterDiscount = response?.priceInfo?.netPriceAfterDiscount as number;\r\n this.orderDetails.priceInfo.vatAmount = response?.priceInfo?.vatAmount as number;\r\n this.orderDetails.priceInfo.finalPrice = response?.priceInfo?.finalPrice as number;\r\n this.orderDetails.priceInfo.invoiceType = response?.priceInfo?.invoiceType as InvoiceType;\r\n this.updateVatInfo(this.orderDetails.priceInfo.invoiceType, this.orderDetails.priceInfo.vatAmount);\r\n }\r\n }\r\n\r\n public updateVatInfo(invoiceType: InvoiceType, vatAmount: number) {\r\n let newPrice: number;\r\n switch (invoiceType) {\r\n case InvoiceType.Polish:\r\n this.vatInfoLabel = 'Modules.GameInstance.Order.Billing.VAT23Label';\r\n this.vatInfo = this.$options.filters?.toCurrency(vatAmount, 'PLN');\r\n newPrice = this.$options.filters?.toCurrency(this.orderDetails?.priceInfo.netPriceAfterDiscount, 'PLN');\r\n this.finalPriceWithVatInfo = ` (${newPrice} + 23% VAT)`;\r\n break;\r\n\r\n default:\r\n this.vatInfoLabel = 'Modules.GameInstance.Order.Billing.VatLabel';\r\n this.vatInfo = 'Modules.GameInstance.Order.Billing.VatInfo';\r\n this.finalPriceWithVatInfo = '';\r\n break;\r\n }\r\n }\r\n\r\n public verifyDiscountCode(): void {\r\n if (StringUtils.isNullOrWhiteSpace(this.discountCode)) {\r\n if (this.orderDetails) {\r\n this.orderDetails.discountCode = null;\r\n this.orderDetails.priceInfo.discountValue = null;\r\n this.orderDetails.isDiscountSet = false;\r\n this.updatePriceAndVatInfo();\r\n return;\r\n }\r\n }\r\n\r\n this.isVerifyingDiscount = true;\r\n this.paymentsApi\r\n .verifyDiscountCode(\r\n this.discountCode,\r\n this.orderDetails?.priceInfo.currency as Currency,\r\n this.orderDetails?.invoiceRecipientFormData.address.countryCode as string\r\n )\r\n .then(result => {\r\n this.orderDetails?.setDiscount(result);\r\n this.isVerifyingDiscount = false;\r\n this.updatePriceAndVatInfo();\r\n });\r\n }\r\n\r\n public async goToSummary(): Promise {\r\n this.summaryLoading = true;\r\n const form = this.$refs.invoiceRecipientForm as VForm;\r\n if (form.validate() === false) {\r\n FormHelper.scrollToNextError(this);\r\n this.summaryLoading = false;\r\n return;\r\n }\r\n const inputModel = new GameInstanceRecipientDataInputModel();\r\n inputModel.gameInstanceId = this.$route.params['gameInstanceId'];\r\n inputModel.orderNumber = this.orderNumber;\r\n inputModel.currency = this.orderDetails?.priceInfo.currency as Currency;\r\n inputModel.discountCode = this.orderDetails?.discountCode != null ? this.orderDetails?.discountCode : '';\r\n inputModel.companyName = this.orderDetails?.invoiceRecipientFormData.companyName;\r\n inputModel.vatNumber = this.orderDetails?.invoiceRecipientFormData.vatNumber;\r\n inputModel.address.countryCode = this.orderDetails?.invoiceRecipientFormData.address.countryCode as string;\r\n inputModel.address.city = this.orderDetails?.invoiceRecipientFormData.address.city as string;\r\n inputModel.address.postCode = this.orderDetails?.invoiceRecipientFormData.address.postCode as string;\r\n inputModel.address.street = this.orderDetails?.invoiceRecipientFormData.address.street as string;\r\n\r\n const result = await this.paymentsApi.showSummary(inputModel);\r\n if (!result) {\r\n this.summaryLoading = false;\r\n return;\r\n }\r\n\r\n this.displaySummary = true;\r\n this.summaryLoading = false;\r\n\r\n this.sendAddPaymentInfoAnalyticsEvent();\r\n }\r\n\r\n public goToEdit(): void {\r\n this.displaySummary = false;\r\n }\r\n\r\n private sendAddPaymentInfoAnalyticsEvent(): void {\r\n if (this.orderDetails == null) return;\r\n\r\n // params from: https://developers.google.com/gtagjs/reference/ga4-events#add_payment_info\r\n AnalyticsGoogleHelper.event(\r\n AnalyticsEvent.addPaymentInfo,\r\n getAnalyticsEventParams(this.orderNumber, this.orderDetails)\r\n );\r\n\r\n // params from: https://developers.facebook.com/docs/facebook-pixel/reference\r\n AnalyticsHelper.trackWithFacebookPixel(\r\n FacebookPixelEvent.addPaymentInfo,\r\n AnalyticsHelper.getPurchaseOptions(this.orderNumber, this.orderDetails)\r\n );\r\n }\r\n\r\n private sendSelectItemAnalyticsEvent(): void {\r\n if (this.orderDetails == null) return;\r\n\r\n // params from: https://developers.google.com/gtagjs/reference/ga4-events#select_item\r\n AnalyticsGoogleHelper.event(\r\n AnalyticsEvent.selectItem,\r\n getAnalyticsEventParamsBase(this.orderNumber, this.orderDetails)\r\n );\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCreateOrder.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameInstanceCreateOrder.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameInstanceCreateOrder.vue?vue&type=template&id=5cb58dc2&scoped=true&\"\nimport script from \"./GameInstanceCreateOrder.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameInstanceCreateOrder.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameInstanceCreateOrder.vue?vue&type=style&index=0&id=5cb58dc2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5cb58dc2\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCol,VContainer,VForm,VRow,VSkeletonLoader,VTextField})\n","import { RouteConfig } from 'vue-router';\r\nimport { GameInstanceRoute } from './game-instance-router.enum';\r\nimport GameInstanceList from '@/modules/game-instance/views/GameInstanceList.vue';\r\nimport GameInstanceCreate from '@/modules/game-instance/views/GameInstanceCreate.vue';\r\nimport GameInstanceEdit from '@/modules/game-instance/views/GameInstanceEdit.vue';\r\nimport GameInstanceCreateOrder from '@/modules/game-instance/views/GameInstanceCreateOrder.vue';\r\nimport DefaultView from '@/modules/layout/DefaultView.vue';\r\n\r\nexport const gameInstanceRoutes: Array = [\r\n {\r\n path: '/game-instances',\r\n component: DefaultView,\r\n children: [\r\n {\r\n path: '',\r\n name: GameInstanceRoute.gameInstanceList,\r\n component: GameInstanceList\r\n },\r\n {\r\n path: 'create',\r\n name: GameInstanceRoute.gameInstanceCreate,\r\n component: GameInstanceCreate\r\n },\r\n {\r\n path: 'order=:gameInstanceId',\r\n name: GameInstanceRoute.gameInstanceCreateOrder,\r\n component: GameInstanceCreateOrder,\r\n props: true\r\n },\r\n {\r\n path: ':gameInstanceId',\r\n name: GameInstanceRoute.gameInstanceEdit,\r\n component: GameInstanceEdit,\r\n props: true\r\n }\r\n ]\r\n }\r\n];\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"game-holder\",attrs:{\"fluid\":\"\"}},[(_vm.gameIsNotPublic)?_c('GameIsPrivate',{staticClass:\"game-is-private\"}):_vm._e(),(!_vm.loading && _vm.playableToString !== undefined)?[_c('flip-countdown',{staticClass:\"d-none\",attrs:{\"deadline\":_vm.playableToString},on:{\"timeelapsed\":_vm.checkIfPlayable}})]:_vm._e(),(_vm.loading)?[_c('v-container',{staticClass:\"fill-height justify-center align-center\",attrs:{\"fluid\":\"\"}},[_c('Loader')],1)]:(!_vm.loading && !_vm.gameIsNotPublic)?[(_vm.tooEarly)?_c('v-container',{staticClass:\"fill-height timer-holder justify-center align-center pa-0\",style:(_vm.theme.styles),attrs:{\"fluid\":\"\"}},[_c('div',{staticClass:\"d-flex flex-column justify-center align-center message-panel countdown-holder\"},[_c('v-col',{staticClass:\"d-flex justify-center\"},[_vm._v(_vm._s(_vm.$t('Modules.Runtime.Menu.TooEarlyInfo')))]),_c('flip-countdown',{attrs:{\"deadline\":_vm.playableFromString},on:{\"timeElapsed\":_vm.checkIfPlayable}})],1)]):(_vm.tooLate)?_c('v-container',{staticClass:\"fill-height timer-holder pa-0\",style:(_vm.theme.styles),attrs:{\"fluid\":\"\"}},[_c('v-col',{staticClass:\"d-flex justify-center message-panel\"},[_vm._v(_vm._s(_vm.$t('Modules.Runtime.Menu.TooLateInfo')))])],1):[(!_vm.gameType)?_c('v-row',{staticClass:\"fill-height\",attrs:{\"align-content\":\"center\",\"justify\":\"center\"}},[_c('v-btn',{attrs:{\"flat\":\"\",\"primary\":\"\",\"loading\":_vm.loading},on:{\"click\":_vm.loadGame}},[_c('v-icon',[_vm._v(\"mdi-refresh\")]),_vm._v(\"Refresh \")],1)],1):_vm._e(),_c('v-row',{style:(_vm.theme.styles),attrs:{\"no-gutters\":\"\"}},[(!_vm.playing)?[_c('GameMenu',{attrs:{\"gameInstance\":_vm.gameInstance,\"oldPlayerModel\":_vm.oldPlayerModel},on:{\"startGame\":_vm.onStartGame}})]:(_vm.playing)?[(_vm.showCommonGame)?[_c('GamePlay',{attrs:{\"gameInstance\":_vm.gameInstance,\"playerName\":_vm.oldPlayerModel.name,\"professionId\":_vm.professionId,\"playerInstanceId\":_vm.playerInstanceId,\"theme\":_vm.theme},on:{\"newGame\":_vm.onRelaunchGame}})]:_vm._e()]:_vm._e()],2)]]:_vm._e(),(_vm.font)?_c('div',{staticClass:\"font-loader\"},[_c('div',{style:({ fontFamily: _vm.font })},[_vm._v(\"CF\")])]):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\r\n GameRuntimeClient,\r\n PlayerInstanceAnswerDto,\r\n PlayerInstanceAnswerInputModel,\r\n PlayerInstanceDto,\r\n PlayerInstanceInputModel,\r\n PlayerInstanceLogDto,\r\n PlayerInstanceLogInputModel,\r\n QuestionDto,\r\n RuntimeGameInstanceDto,\r\n PlayerInstanceDetailsInputModel\r\n} from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\nimport { Base64 } from 'js-base64';\r\n\r\nexport default class GameApiService extends ApiServiceBase {\r\n private client = new GameRuntimeClient();\r\n\r\n public async getGameInstancePrivate(instanceId: string): Promise {\r\n try {\r\n const instance = await this.client.getGameInstancePrivate(instanceId);\r\n return instance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getGameInstancePublic(instanceId: string): Promise {\r\n try {\r\n const instance = await this.client.getGameInstancePublic(instanceId);\r\n return instance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async createPlayerInstance(inputModel: PlayerInstanceInputModel): Promise {\r\n try {\r\n const instance = await this.client.createPlayerInstance(inputModel);\r\n return instance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getQuestionByProfession(\r\n professionId: string,\r\n playerInstanceId: string\r\n ): Promise {\r\n try {\r\n const instance = await this.client.getQuestionByProfession(professionId, playerInstanceId);\r\n if (instance.result) {\r\n const question = (await JSON.parse(Base64.decode(instance.result) ?? '')) as QuestionDto;\r\n\r\n return question;\r\n }\r\n return undefined;\r\n } catch (error) {\r\n if (error.result === 'Errors.NoQuestionFound') {\r\n return undefined;\r\n }\r\n this.HandleError(error);\r\n }\r\n }\r\n public async addPlayerInstanceAnswer(\r\n inputModel: PlayerInstanceAnswerInputModel\r\n ): Promise {\r\n try {\r\n const instance = await this.client.addPlayerInstanceAnswer(inputModel);\r\n return instance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async addPlayerInstanceLog(\r\n inputModel: PlayerInstanceLogInputModel\r\n ): Promise {\r\n try {\r\n const instance = await this.client.addPlayerInstanceLog(inputModel);\r\n return instance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async addPlayerInstanceDetails(\r\n inputModel: PlayerInstanceDetailsInputModel,\r\n sendEmail: boolean\r\n ): Promise {\r\n try {\r\n const instance = await this.client.addPlayerInstanceDetails(inputModel, sendEmail);\r\n return instance.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.gameSettings)?_c('div',{staticClass:\"main-grid\"},[_c('div',{staticClass:\"left-info\"},[_c('h1',{staticClass:\"break-strategy\"},[_vm._v(_vm._s(_vm.gameSettings.title))]),_c('p',{staticClass:\"break-strategy\"},[_vm._v(_vm._s(_vm.gameSettings.subtitle))]),_c('a',{staticClass:\"logo\",attrs:{\"href\":_vm.gameSettings.logoLink}},[_c('img',{attrs:{\"src\":_vm.gameSettings.logo}})]),_c('p',{attrs:{\"id\":\"mobile-info\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Runtime.Menu.ToSmallDeviceWarning'))+\" \")])]),_c('div',{staticClass:\"right-login\"},[_c('div',{staticClass:\"login-container\"},[_c('p',{staticClass:\"question break-strategy\"},[_vm._v(_vm._s(_vm.gameSettings.professionQuestion))]),_c('div',{staticClass:\"jobs\"},_vm._l((_vm.gameInstance.professions),function(job){return _c('div',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(job.name),expression:\"job.name\"}],key:job.id,staticClass:\"radio-button\"},[_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.playerModel.professionId),expression:\"playerModel.professionId\"}],attrs:{\"type\":\"radio\",\"name\":\"job\",\"id\":job.id},domProps:{\"value\":job.id,\"checked\":_vm._q(_vm.playerModel.professionId,job.id)},on:{\"change\":function($event){return _vm.$set(_vm.playerModel, \"professionId\", job.id)}}}),_c('span',[_vm._v(_vm._s(job.name))])])])}),0),_c('p',{staticClass:\"user-info-text break-strategy\"},[_vm._v(\" \"+_vm._s(_vm.gameSettings.formHeader)+\" \")]),_c('v-row',[_c('v-col',{staticClass:\"pr-0\",attrs:{\"cols\":\"2\"}},[_c('p',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.gameSettings.emailLabel),expression:\"gameSettings.emailLabel\"}],staticClass:\"email-label text-truncate\"},[_vm._v(_vm._s(_vm.gameSettings.emailLabel))])]),_c('v-col',{attrs:{\"cols\":\"10\"}},[_c('div',{staticClass:\"input-div\",attrs:{\"id\":\"emailDiv\"}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.playerModel.email),expression:\"playerModel.email\"}],attrs:{\"type\":\"text\",\"id\":\"email\",\"name\":\"email\",\"autocomplete\":\"on\"},domProps:{\"value\":(_vm.playerModel.email)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.playerModel, \"email\", $event.target.value)}}}),_c('span',{staticClass:\"input-after\",attrs:{\"id\":\"emailDivAfter\"}})])])],1),_c('v-row',[_c('v-col',{staticClass:\"pr-0\",attrs:{\"cols\":\"2\"}},[_c('p',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.gameSettings.nameLabel),expression:\"gameSettings.nameLabel\"}],staticClass:\"name-label text-truncate\"},[_vm._v(_vm._s(_vm.gameSettings.nameLabel))])]),_c('v-col',{attrs:{\"cols\":\"10\"}},[_c('div',{staticClass:\"input-div\",attrs:{\"id\":\"nickDiv\"}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.playerModel.name),expression:\"playerModel.name\"}],attrs:{\"type\":\"text\",\"id\":\"name\",\"name\":\"name\",\"autocomplete\":\"on\"},domProps:{\"value\":(_vm.playerModel.name)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.playerModel, \"name\", $event.target.value)}}}),_c('span',{staticClass:\"input-after\",attrs:{\"id\":\"nickDivAfter\"}})])])],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('div',{staticClass:\"checkbox-div\",attrs:{\"id\":\"rodoDiv\"}},[_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.checked),expression:\"checked\"}],attrs:{\"type\":\"checkbox\",\"name\":\"rodo\",\"id\":\"rodo\"},domProps:{\"checked\":Array.isArray(_vm.checked)?_vm._i(_vm.checked,null)>-1:(_vm.checked)},on:{\"change\":function($event){var $$a=_vm.checked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.checked=$$a.concat([$$v]))}else{$$i>-1&&(_vm.checked=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.checked=$$c}}}}),_c('span',{staticClass:\"checkbox-shadow\",attrs:{\"id\":\"rodoDivAfter\"}},[(_vm.checked)?_c('v-icon',[_vm._v(\"mdi-check-bold\")]):_vm._e()],1)])])]),_c('v-col',{attrs:{\"cols\":\"10\"}},[_c('label',{staticClass:\"rodo-info-text break-strategy\",attrs:{\"for\":\"rodo\"}},[_vm._v(\" \"+_vm._s(_vm.gameSettings.termsAgreementText)+\" \")])])],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"10\",\"offset\":\"2\"}},[_c('a',{staticClass:\"terms-and-conditions-link break-strategy\",attrs:{\"href\":_vm.gameSettings.termsLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.gameSettings.termsLinkText))])])],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"message-holder\"},[(_vm.message)?_c('div',{staticClass:\"text-center alert-danger p-21 m-2\",attrs:{\"id\":\"validMessage\"}},[_vm._v(\" \"+_vm._s(_vm.message)+\" \")]):_vm._e()])])],1),_c('button',{staticClass:\"start-button break-strategy\",attrs:{\"id\":\"play\"},on:{\"click\":_vm.submit}},[_vm._v(\" \"+_vm._s(_vm.gameSettings.startBtnLabel)+\" \")])],1)])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { PlayerInstanceInputModel, RuntimeGameInstanceDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { GameMainSettingsModel } from './games/customize-settings.model';\r\nimport { GameCustomizableElement, GameCustomizableElementType } from './games/game-engine-customizable-element';\r\nimport GameApiService from './services/game-api.service';\r\nimport GameFactory from './services/game-factory.service';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class GameMenu extends Vue {\r\n @Prop({ required: true }) readonly gameInstance!: RuntimeGameInstanceDto;\r\n @Prop({ required: false }) readonly oldPlayerModel?: PlayerInstanceInputModel;\r\n\r\n public playerModel = new PlayerInstanceInputModel();\r\n public checked = false;\r\n public message = '';\r\n private loading = false;\r\n private apiService = new GameApiService();\r\n private gameSettings = new GameMainSettingsModel();\r\n\r\n mounted() {\r\n this.playerModel = this.setUpPlayerModel();\r\n\r\n if (this.oldPlayerModel) {\r\n this.checked = true;\r\n }\r\n\r\n if (this.gameInstance.settings) {\r\n const gameSettings = JSON.parse(this.gameInstance.settings ?? '') as GameMainSettingsModel;\r\n this.gameSettings = gameSettings;\r\n }\r\n\r\n this.$nextTick(() => this.preloadGameImages());\r\n }\r\n private setUpPlayerModel(): PlayerInstanceInputModel {\r\n const playerModalSaved = store.getPlayerInstance;\r\n\r\n if (playerModalSaved) {\r\n return new PlayerInstanceInputModel({\r\n professionId: this.getSavedProfession(playerModalSaved),\r\n email: playerModalSaved.email ?? '',\r\n name: playerModalSaved.name ?? '',\r\n gameInstanceId: this.$route.params.id\r\n });\r\n } else {\r\n return new PlayerInstanceInputModel({\r\n professionId: this.gameInstance.professions ? this.gameInstance.professions[0].id : '',\r\n email: '',\r\n name: '',\r\n gameInstanceId: this.$route.params.id\r\n });\r\n }\r\n }\r\n private getSavedProfession(playerModalSaved: PlayerInstanceInputModel): string {\r\n if (!this.gameInstance.professions) {\r\n return '';\r\n }\r\n if (this.gameInstance.professions.find(x => x.id === playerModalSaved.professionId)) {\r\n return playerModalSaved.professionId;\r\n }\r\n return this.gameInstance.professions[0].id;\r\n }\r\n\r\n private preloadGameImages() {\r\n const elements = GameFactory.getCustomizableElements(this.gameInstance.type);\r\n if (elements) {\r\n this.preloadCustomizableElements(elements);\r\n }\r\n if (this.gameSettings.gameCustomizableElements) {\r\n this.preloadCustomizableElements(this.gameSettings.gameCustomizableElements);\r\n }\r\n }\r\n\r\n private preloadCustomizableElements(elements: GameCustomizableElement[]) {\r\n const imageElements = elements.filter(e => e.type === GameCustomizableElementType.Image);\r\n imageElements?.forEach(element => {\r\n const img = new Image();\r\n img.src = element.value as string;\r\n });\r\n }\r\n\r\n async submit() {\r\n if (this.validate() == false || this.loading) {\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n\r\n const result = await this.apiService.createPlayerInstance(this.playerModel);\r\n if (result) {\r\n this.startGame(result.id, this.playerModel);\r\n }\r\n\r\n store.setPlayerInstance(this.playerModel);\r\n\r\n this.loading = false;\r\n }\r\n\r\n startGame(playerInstanceId: string, playerModel: PlayerInstanceInputModel): void {\r\n this.$emit('startGame', playerInstanceId, playerModel);\r\n }\r\n\r\n private validate(): boolean {\r\n if (!this.validateEmail(this.playerModel.email)) {\r\n this.message = this.$t('Modules.Runtime.Menu.WarningEmail').toString();\r\n return false;\r\n } else if (this.playerModel.name == null || this.playerModel.name == '') {\r\n this.message = this.$t('Modules.Runtime.Menu.WarningName').toString();\r\n return false;\r\n } else if (this.playerModel.professionId == null) {\r\n this.message = this.$t('Modules.Runtime.Menu.WarningJob').toString();\r\n return false;\r\n } else if (this.checked == false) {\r\n this.message = this.$t('Modules.Runtime.Menu.WarningConsent').toString();\r\n return false;\r\n }\r\n this.message = '';\r\n\r\n return true;\r\n }\r\n private validateEmail(email: string | null | undefined): boolean {\r\n if (!email) {\r\n return false;\r\n }\r\n return !!email && /^\\w+([.-]?\\w+)*@\\w+([.-]?\\w+)*(\\.\\w{2,3})+$/.test(email);\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameMenu.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameMenu.vue?vue&type=template&id=2ed2f6d5&scoped=true&\"\nimport script from \"./GameMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameMenu.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameMenu.vue?vue&type=style&index=0&id=2ed2f6d5&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2ed2f6d5\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VIcon,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"main-container d-flex justify-center align-center\"},[_c('div',{staticClass:\"game-window\",attrs:{\"id\":\"game-window\"}}),_c('GameOverModal',{ref:\"gameOverModal\",attrs:{\"playerName\":_vm.playerName,\"theme\":_vm.theme.styles,\"gameSettings\":_vm.gameSettings,\"loadingCV\":_vm.loadingCV,\"wrongFileInput\":_vm.wrongFileInput},on:{\"newGame\":_vm.newGame,\"saveCV\":_vm.saveCV}}),_c('QuestionModal',{ref:\"questionModal\",attrs:{\"playerInstanceId\":_vm.playerInstanceId,\"professionId\":_vm.professionId,\"gameSettings\":_vm.gameSettings,\"timeForQuestion\":_vm.timeForQuestion,\"answerLimit\":_vm.answerLimit,\"testMode\":_vm.testMode,\"theme\":_vm.theme.styles},on:{\"acceptAnswer\":_vm.acceptAnswer}}),(_vm.testMode)?_c('div',{staticClass:\"test-commands ma-1\"},[_c('v-btn',{staticClass:\"mr-1\",attrs:{\"depressed\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.askQuestion}},[_vm._v(\" Ask Question Modal \")]),_c('v-btn',{staticClass:\"mr-1\",attrs:{\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.gameOverDialog(123)}}},[_vm._v(\" GameOver Modal \")])],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-dialog',{staticClass:\"dialog\",attrs:{\"hide-overlay\":\"\",\"persistent\":\"\",\"max-width\":\"1000\"},model:{value:(_vm.displayed),callback:function ($$v) {_vm.displayed=$$v},expression:\"displayed\"}},[_c('div',{staticClass:\"modal micromodal-slide\",style:(_vm.theme),attrs:{\"id\":\"gameover-modal\",\"aria-hidden\":\"true\"}},[_c('div',{staticClass:\"modal__overlay\",attrs:{\"tabindex\":\"-1\"}},[_c('div',{staticClass:\"modal__container\",attrs:{\"role\":\"dialog\",\"aria-modal\":\"true\",\"aria-labelledby\":\"modal-1-title\"}},[_c('p',{staticClass:\"modal-title text-truncate\"},[_vm._v(\" \"+_vm._s(_vm.gameSettings.gameOverTitle)+\" \")]),_c('div',{staticClass:\"nick-score\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.gameSettings.gameOverNameLabel)+\" \")]),_c('div',{staticClass:\"game-over-info\",attrs:{\"id\":\"game-over-name\"}},[_vm._v(\" \"+_vm._s(_vm.playerName)+\" \")])]),_c('div',{staticClass:\"nick-score\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.gameSettings.gamerOverScoreLabel)+\" \")]),_c('div',{staticClass:\"game-over-info\",attrs:{\"id\":\"game-over-score\"}},[_vm._v(_vm._s(_vm.score))])]),(_vm.gameSettings.gameOverCV)?_c('div',{staticClass:\"nick-score\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.gameSettings.gamerOverCVLabel)+\" \")]),_c('div',{staticClass:\"game-over-info cv-size-div\"},[_c('v-file-input',{staticClass:\"pt-2 mb-n2\",attrs:{\"rules\":[_vm.rules.maxSize],\"accept\":\"application/pdf\",\"placeholder\":_vm.gameSettings.gamerOverCVUploadFileLabel,\"prepend-icon\":\"mdi-file-upload\",\"label\":_vm.gameSettings.gamerOverCVUploadLabel,\"dark\":\"\",\"dense\":\"\",\"clearable\":\"\",\"clear-icon-cb\":_vm.onClearClicked,\"loading\":_vm.loadingCV,\"disabled\":_vm.loadingCV},model:{value:(_vm.cv),callback:function ($$v) {_vm.cv=$$v},expression:\"cv\"}})],1)]):_vm._e(),_c('p',{staticClass:\"modal-gameover-info\"},[_vm._v(\" \"+_vm._s(_vm.gameSettings.gameOverDescription)+\" \")]),_c('div',{staticClass:\"back-button\",attrs:{\"id\":\"back-button\"},on:{\"click\":_vm.newGame}},[(!_vm.cv || _vm.cv.length == 0)?_c('div',[_vm._v(\" \"+_vm._s(_vm.gameSettings.gamerOverBackButton)+\" \")]):_c('div',[_vm._v(\" \"+_vm._s(_vm.gameSettings.gamerOverCVButton)+\" \")])])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { translate } from '@/plugins/i18n';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { GameMainSettingsModel } from '../games/customize-settings.model';\r\n\r\n@Component\r\nexport default class GameOverModal extends Vue {\r\n @Prop() readonly loadingCV!: boolean;\r\n @Prop() readonly wrongFileInput!: boolean;\r\n private cvPendingConvert = false;\r\n private displayed = false;\r\n private score = 0;\r\n private waitingTime = 1500;\r\n private maxSize = 2000000;\r\n cv = [];\r\n @Prop() readonly playerName!: string;\r\n @Prop() readonly theme!: { [id: string]: string };\r\n @Prop() readonly gameSettings?: GameMainSettingsModel;\r\n onClearClicked() {\r\n this.cv = [];\r\n }\r\n rules = {\r\n maxSize: (file: any) => !file || file.size < this.maxSize || translate('Modules.Statistics.PlayerTable.MaxFileSize')\r\n };\r\n private cvToBase64() {\r\n if (this.cvPendingConvert) {\r\n return;\r\n }\r\n if (!this.cv) {\r\n this.cv = [];\r\n return;\r\n }\r\n const temp = this.cv as unknown as File;\r\n if(temp.size >= this.maxSize ){\r\n NotificationService.error(translate('Modules.Statistics.PlayerTable.MaxFileSize'));\r\n return;\r\n }\r\n this.cvPendingConvert = true;\r\n const reader = new FileReader();\r\n reader.readAsDataURL(this.cv as any);\r\n reader.onload = () => {\r\n this.$emit('saveCV', reader.result);\r\n };\r\n reader.onerror = function(error) {\r\n console.log('Error: ', error);\r\n };\r\n reader.onabort = function(error) {\r\n console.log('sadasd: ', error);\r\n };\r\n this.cvPendingConvert = false;\r\n }\r\n public show(score: number) {\r\n this.score = score;\r\n this.displayed = true;\r\n }\r\n public async newGame() {\r\n if (this.loadingCV) {\r\n return;\r\n }\r\n if (this.cv && this.cv.length != 0) {\r\n await this.cvToBase64();\r\n return;\r\n }\r\n this.displayed = false;\r\n console.log('GameOverModal emit new game');\r\n this.$emit('newGame');\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameOverModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameOverModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameOverModal.vue?vue&type=template&id=7caafb16&scoped=true&\"\nimport script from \"./GameOverModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameOverModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameOverModal.vue?vue&type=style&index=0&id=7caafb16&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7caafb16\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\ninstallComponents(component, {VDialog,VFileInput})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-dialog',{attrs:{\"hide-overlay\":\"\",\"persistent\":\"\",\"max-width\":\"800\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[(_vm.gameSettings)?_c('div',{staticClass:\"modal micromodal-slide\",style:(_vm.theme),attrs:{\"id\":\"question-modal\",\"aria-hidden\":\"true\"}},[_c('div',{staticClass:\"modal__overlay\",attrs:{\"tabindex\":\"0\"}},[_c('div',{staticClass:\"modal__container\",attrs:{\"role\":\"dialog\",\"aria-modal\":\"true\",\"aria-labelledby\":\"modal-1-title\"}},[_c('div',{staticClass:\"pa-0 logo\"},[_c('img',{attrs:{\"src\":_vm.gameSettings.logo}})]),_c('p',{staticClass:\"pa-0 modal-title my-0\"},[_vm._v(\" \"+_vm._s(_vm.gameSettings.instructionText)+\" \")]),_c('v-spacer'),(_vm.currentQuestion && !_vm.ongoingAnswer && !_vm.loadingNextQuestion)?[_c('div',[_c('p',{staticClass:\"my-0\",attrs:{\"id\":\"question\"}},[_vm._v(_vm._s(_vm.currentQuestion.questionText))])]),_c('v-spacer'),_c('div',{staticClass:\"my-auto py-0\",attrs:{\"id\":\"answerList\"}},_vm._l((_vm.currentQuestion.questionAnswers),function(possibleAnswer){return _c('div',{key:possibleAnswer.id,staticClass:\"answers-wrapper mb-1\",on:{\"click\":function($event){return _vm.mouseSelectAnswer(possibleAnswer)}}},[_c('div',{staticClass:\"mb-0 pa-0 mr-2 answer-selection-img\",class:{ selected: _vm.choosenAnswer.id === possibleAnswer.id }}),_c('p',{staticClass:\"mb-0 pa-0 answer-text\"},[_vm._v(\" \"+_vm._s(possibleAnswer.answerText)+\" \")])])}),0),_c('v-spacer'),(_vm.answerLimit)?[_c('div',{attrs:{\"id\":\"timeLeftLabel\"}},[_vm._v(_vm._s(_vm.timeLeft)+\" s\")]),_c('div',{attrs:{\"id\":\"timer-bar-container\"}},[_c('div',{style:({ width: _vm.timeLeftBarWidth + '%' }),attrs:{\"id\":\"timer-bar\"}})])]:_vm._e()]:[_c('v-progress-circular',{staticClass:\"answer-loader\",attrs:{\"indeterminate\":\"\"}})],_c('v-spacer')],2)])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class DelayHelper {\r\n public static delay(ms: number) {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { PlayerInstanceAnswerInputModel, QuestionAnswerDto, QuestionDto } from '@/services/Api';\r\nimport DelayHelper from '@/services/DelayHelper';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { GameMainSettingsModel } from '../games/customize-settings.model';\r\nimport GameApiService from '../services/game-api.service';\r\n\r\n@Component\r\nexport default class QuestionModal extends Vue {\r\n @Prop() readonly gameSettings?: GameMainSettingsModel;\r\n @Prop() readonly playerInstanceId!: string;\r\n @Prop() readonly professionId!: string;\r\n @Prop({ default: 10 }) readonly timeForQuestion!: number;\r\n @Prop({ default: true }) readonly answerLimit!: boolean;\r\n @Prop({ default: false }) readonly testMode!: boolean;\r\n @Prop() readonly theme!: { [id: string]: string };\r\n\r\n public show = false;\r\n public timeLeft = 10;\r\n public timeLeftBarWidth = 100;\r\n public timeLeftInterval?: NodeJS.Timeout;\r\n public timeLeftIntervalBar?: NodeJS.Timeout;\r\n public timeLeftTimeout?: number;\r\n public currentQuestion: QuestionDto | null = null;\r\n public choosenAnswer: QuestionAnswerDto | null = null;\r\n public apiService = new GameApiService();\r\n private ongoingAnswer = false;\r\n private loadingNextQuestion = false;\r\n private nextQuestion?: QuestionDto;\r\n\r\n public mouseSelectAnswer(answer: QuestionAnswerDto) {\r\n this.choosenAnswer = answer;\r\n this.answerQuestion();\r\n }\r\n\r\n async mounted() {\r\n this.loadingNextQuestion = true;\r\n this.nextQuestion = await this.apiService.getQuestionByProfession(this.professionId, this.playerInstanceId);\r\n this.loadingNextQuestion = false;\r\n }\r\n\r\n public answerQuestion() {\r\n if (this.ongoingAnswer || !this.show || !this.choosenAnswer) {\r\n return;\r\n }\r\n\r\n this.ongoingAnswer = true;\r\n if (this.testMode) {\r\n const selected = this.choosenAnswer.isCorrect;\r\n DelayHelper.delay(250).then(() => {\r\n this.currentQuestion = null;\r\n this.choosenAnswer = null;\r\n this.acceptAnswer(selected);\r\n this.ongoingAnswer = false;\r\n });\r\n } else {\r\n const inputModel = new PlayerInstanceAnswerInputModel({\r\n playerInstanceId: this.playerInstanceId,\r\n answeredQuestionId: this.currentQuestion?.id!,\r\n isCorrectAnswer: this.choosenAnswer?.isCorrect,\r\n answeredQuestion: this.currentQuestion?.questionText,\r\n answer: this.choosenAnswer?.answerText\r\n });\r\n this.apiService.addPlayerInstanceAnswer(inputModel).then(result => {\r\n this.currentQuestion = null;\r\n this.choosenAnswer = null;\r\n this.acceptAnswer(result?.isCorrectAnswer as boolean);\r\n this.ongoingAnswer = false;\r\n });\r\n }\r\n }\r\n\r\n public askQuestion(): void {\r\n if (this.testMode) {\r\n const result = new QuestionDto({\r\n questionText:\r\n 'I am a question that is 120 characters long lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsu?',\r\n id: '1234456',\r\n questionAnswers: [\r\n new QuestionAnswerDto({\r\n id: '1',\r\n answerText:\r\n 'Yes! Im max 120 characters, lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum!!!',\r\n isCorrect: true\r\n }),\r\n new QuestionAnswerDto({\r\n id: '2',\r\n answerText:\r\n 'No!! Im max 120 characters, lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum!!!',\r\n isCorrect: false\r\n })\r\n ]\r\n });\r\n this.currentQuestion = result as QuestionDto;\r\n if (result!.questionAnswers?.length) {\r\n this.choosenAnswer = result?.questionAnswers[0] as QuestionAnswerDto;\r\n }\r\n this.show = true;\r\n this.waitForTimeUp().then(() => this.answerQuestion());\r\n } else {\r\n if (this.nextQuestion?.questionText === undefined) {\r\n this.acceptAnswer(false, true);\r\n return;\r\n }\r\n\r\n this.show = true;\r\n this.waitForQuestionLoad();\r\n }\r\n }\r\n private waitForQuestionLoad() {\r\n if (this.loadingNextQuestion == false) {\r\n this.showQuestion();\r\n } else {\r\n this.$nextTick(() => setTimeout(this.waitForQuestionLoad, 250));\r\n }\r\n }\r\n\r\n private showQuestion() {\r\n this.currentQuestion = this.nextQuestion as QuestionDto;\r\n if (this.currentQuestion.questionAnswers?.length) {\r\n this.choosenAnswer = this.currentQuestion.questionAnswers[0] as QuestionAnswerDto;\r\n }\r\n this.waitForTimeUp().then(() => this.answerQuestion());\r\n }\r\n private async acceptAnswer(answeredCorrectly: boolean, answerPoolEmpty = false): Promise {\r\n this.show = false;\r\n this.$emit('acceptAnswer', answeredCorrectly, answerPoolEmpty);\r\n\r\n this.loadingNextQuestion = true;\r\n this.nextQuestion = await this.apiService.getQuestionByProfession(this.professionId, this.playerInstanceId);\r\n this.loadingNextQuestion = false;\r\n\r\n if (answerPoolEmpty) return;\r\n const event = answeredCorrectly ? AnalyticsEvent.correctAnswer : AnalyticsEvent.incorrectAnswer;\r\n AnalyticsGoogleHelper.event(event, {\r\n player_instance_id: this.playerInstanceId,\r\n profession_id: this.professionId,\r\n question_id: this.currentQuestion?.id,\r\n question_text: this.currentQuestion?.questionText,\r\n player_answer: this.choosenAnswer?.answerText\r\n });\r\n }\r\n\r\n public nextAnswer() {\r\n if (!this.currentQuestion) {\r\n return;\r\n }\r\n let currentIndex = this.currentQuestion!.questionAnswers!.findIndex(a => a.id === this.choosenAnswer!.id);\r\n const nextIndex = ++currentIndex % this.currentQuestion!.questionAnswers!.length;\r\n const nextId = this.currentQuestion!.questionAnswers![nextIndex];\r\n this.choosenAnswer = nextId;\r\n }\r\n public previousAnswer() {\r\n if (!this.currentQuestion) {\r\n return;\r\n }\r\n let currentIndex = this.currentQuestion!.questionAnswers!.findIndex(a => a.id === this.choosenAnswer!.id);\r\n let nextIndex = --currentIndex % this.currentQuestion!.questionAnswers!.length;\r\n if (nextIndex < 0) {\r\n nextIndex = this.currentQuestion!.questionAnswers!.length - 1;\r\n }\r\n const nextId = this.currentQuestion!.questionAnswers![nextIndex];\r\n this.choosenAnswer = nextId;\r\n }\r\n\r\n public waitForTimeUp() {\r\n return new Promise(resolve => {\r\n const keyHandler = (e: any) => {\r\n if (e.key === 'Enter') {\r\n document.removeEventListener('keydown', keyHandler);\r\n resolve();\r\n } else if (e.key === 'ArrowUp') {\r\n this.previousAnswer();\r\n } else if (e.key === 'ArrowDown') {\r\n this.nextAnswer();\r\n }\r\n };\r\n if (this.answerLimit) {\r\n this.resetTimers();\r\n this.timeLeftInterval = setInterval(() => {\r\n this.timeLeft--;\r\n if (this.timeLeft <= 0) {\r\n document.removeEventListener('keydown', keyHandler);\r\n resolve();\r\n }\r\n }, 1000);\r\n this.timeLeftIntervalBar = setInterval(() => {\r\n this.timeLeftBarWidth -= 10 / (this.timeForQuestion + 1);\r\n }, 100);\r\n this.timeLeftTimeout = setTimeout(resolve, this.timeForQuestion * 1000 + 1000);\r\n }\r\n document.addEventListener('keydown', keyHandler);\r\n });\r\n }\r\n private resetTimers() {\r\n this.timeLeft = this.timeForQuestion;\r\n this.timeLeftBarWidth = 100;\r\n if (this.timeLeftInterval) {\r\n clearInterval(this.timeLeftInterval);\r\n }\r\n if (this.timeLeftIntervalBar) {\r\n clearInterval(this.timeLeftIntervalBar);\r\n }\r\n clearTimeout(this.timeLeftTimeout);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuestionModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuestionModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./QuestionModal.vue?vue&type=template&id=9378928e&scoped=true&\"\nimport script from \"./QuestionModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./QuestionModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./QuestionModal.vue?vue&type=style&index=0&id=9378928e&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9378928e\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VDialog,VProgressCircular,VSpacer})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport GameOverModal from '@/modules/game-play/components/GameOverModal.vue';\r\nimport QuestionModal from '@/modules/game-play/components/QuestionModal.vue';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { PlayerInstanceDetailsInputModel, PlayerInstanceLogInputModel, RuntimeGameInstanceDto } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport AnalyticsGoogleHelper, { mapTriggerToAnalyticsEvent } from '../../plugins/analytics-google';\r\nimport { GameMainSettingsModel } from './games/customize-settings.model';\r\nimport { GameEngineBase, GameTriggerType } from './games/game-engine-base';\r\nimport { GameCustomizableElement } from './games/game-engine-customizable-element';\r\nimport { GameTheme } from './models/game-theme';\r\nimport GameApiService from './services/game-api.service';\r\nimport GameFactory from './services/game-factory.service';\r\n\r\n@Component({\r\n components: { GameOverModal, QuestionModal }\r\n})\r\nexport default class GamePlay extends Vue {\r\n @Prop({ required: true }) readonly playerInstanceId!: string;\r\n @Prop({ required: true }) readonly professionId!: string;\r\n @Prop({ required: true }) readonly playerName!: string;\r\n @Prop({ required: true }) readonly gameInstance!: RuntimeGameInstanceDto;\r\n @Prop({ required: true }) readonly theme!: GameTheme;\r\n\r\n public apiService = new GameApiService();\r\n private engine!: GameEngineBase;\r\n public testMode = false;\r\n private timeForQuestion = 10;\r\n private answerLimit = true;\r\n public wrongFileInput = false;\r\n public gameSettings: GameMainSettingsModel = new GameMainSettingsModel();\r\n loadingCV = false;\r\n mounted() {\r\n let customizableElements: GameCustomizableElement[] = [];\r\n\r\n if (this.gameInstance.settings) {\r\n this.gameSettings = JSON.parse(this.gameInstance.settings ?? '') as GameMainSettingsModel;\r\n console.log('customized elements ', this.gameSettings.gameCustomizableElements);\r\n customizableElements = this.gameSettings.gameCustomizableElements;\r\n this.answerLimit = this.gameSettings?.answerLimitFlag ?? false;\r\n this.timeForQuestion = this.gameSettings.answerLimitTime;\r\n }\r\n const engine = GameFactory.getEngine(\r\n this.gameInstance.type,\r\n this.askQuestion,\r\n this.gameOverDialog,\r\n this.saveGameLog,\r\n customizableElements\r\n );\r\n if (engine) {\r\n this.engine = engine;\r\n }\r\n this.engine.initialize();\r\n }\r\n\r\n public saveGameLog(score: number, trigger: GameTriggerType) {\r\n const inputModel = new PlayerInstanceLogInputModel({\r\n score: score,\r\n logTrigger: trigger,\r\n playerInstanceId: this.playerInstanceId\r\n });\r\n this.apiService.addPlayerInstanceLog(inputModel);\r\n this.sendGoogleAnalyticsGameEvent(score, trigger);\r\n }\r\n\r\n public async saveCV(base64: string) {\r\n this.wrongFileInput = false;\r\n this.loadingCV = true;\r\n const inputModel = new PlayerInstanceDetailsInputModel({\r\n playerInstanceId: this.playerInstanceId,\r\n cv: base64\r\n });\r\n const playerDetails = await this.apiService.addPlayerInstanceDetails(inputModel, this.gameSettings.gameOverEmailCV);\r\n if (playerDetails) {\r\n NotificationService.success(translate('Modules.Runtime.Game.Modal.SuccessAdd'));\r\n this.newGame();\r\n } else {\r\n this.wrongFileInput = true;\r\n }\r\n this.loadingCV = false;\r\n }\r\n\r\n public gameOverDialog(score: number): void {\r\n (this.$refs.gameOverModal as GameOverModal).show(score);\r\n }\r\n\r\n public askQuestion() {\r\n (this.$refs.questionModal as QuestionModal).askQuestion();\r\n }\r\n\r\n public acceptAnswer(answeredCorrectly: boolean, answerPoolEmpty: boolean) {\r\n this.engine.acceptAnswer(answeredCorrectly, answerPoolEmpty);\r\n }\r\n\r\n public newGame() {\r\n this.$emit('newGame');\r\n }\r\n\r\n private sendGoogleAnalyticsGameEvent(score: number, trigger: GameTriggerType): void {\r\n const event = mapTriggerToAnalyticsEvent(trigger);\r\n if (event == null) return;\r\n\r\n AnalyticsGoogleHelper.event(event, {\r\n player_instance_id: this.playerInstanceId,\r\n game_instance_id: this.gameInstance.gameInstanceId,\r\n game_type: this.gameInstance.type,\r\n score: score\r\n });\r\n }\r\n}\r\n","enum PlayableStatus {\r\n tooEarly,\r\n playable,\r\n tooLate\r\n}\r\nexport default PlayableStatus;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GamePlay.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GamePlay.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GamePlay.vue?vue&type=template&id=4f5bc410&scoped=true&\"\nimport script from \"./GamePlay.vue?vue&type=script&lang=ts&\"\nexport * from \"./GamePlay.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GamePlay.vue?vue&type=style&index=0&id=4f5bc410&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4f5bc410\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\ninstallComponents(component, {VBtn})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"loader-holder\"},[_c('div',{staticClass:\"loader\"}),_c('div',{staticClass:\"loader loader-inner\"}),_c('div',{staticClass:\"logo\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"376.253\",\"height\":\"403.337\",\"viewBox\":\"0 0 376.253 403.337\"}},[_c('g',{attrs:{\"id\":\"ingamehr-logo\",\"transform\":\"translate(-584.616 -465.533)\"}},[_c('g',{attrs:{\"id\":\"joystick\",\"transform\":\"translate(591.213 465.533)\"}},[_c('g',{attrs:{\"id\":\"bottom\",\"transform\":\"translate(-547.141 -325.581)\"}},[_c('path',{attrs:{\"id\":\"Path_52\",\"data-name\":\"Path 52\",\"d\":\"M22.221,0H44.213L187.175.157c13.847,0,33.4,5.853,25.073,25.531L132.373,171.416c-12.784,23.452-31.5,32.8-45.346,32.8L-74.5,203.292c-13.847,0-22.654-11.047-17.556-25.609L-11.332,30.5C-1.433,10.713,8.374,0,22.221,0Z\",\"transform\":\"translate(723.64 474.938) rotate(30)\",\"fill\":\"#48bcc9\"}}),_c('path',{attrs:{\"id\":\"Path_53\",\"data-name\":\"Path 53\",\"d\":\"M11.323,0H31.244L170.813,1.371s20.575.228,13.03,18.052L111.1,155.274c-11.58,21.243-28.533,29.714-41.076,29.714l-146.314-.839c-12.543,0-26.523-2.691-15.9-23.2l73.12-133.327C-10.1,9.7-1.22,0,11.323,0Z\",\"transform\":\"translate(731.381 490.51) rotate(30)\",\"fill\":\"#defcff\"}})]),_c('g',{attrs:{\"id\":\"top\",\"transform\":\"translate(-547.141 -349.581)\"}},[_c('path',{attrs:{\"id\":\"Path_49\",\"data-name\":\"Path 49\",\"d\":\"M22.221,0H44.213L187.175.157c13.847,0,33.4,5.853,25.073,25.531L132.373,171.416c-12.784,23.452-31.5,32.8-45.346,32.8L-74.5,203.292c-13.847,0-22.654-11.047-17.556-25.609L-11.332,30.5C-1.433,10.713,8.374,0,22.221,0Z\",\"transform\":\"translate(723.64 474.938) rotate(30)\",\"fill\":\"#48bcc9\"}}),_c('path',{attrs:{\"id\":\"Path_51\",\"data-name\":\"Path 51\",\"d\":\"M11.323,0H31.244L170.813,1.371s20.575.228,13.03,18.052L111.1,155.274c-11.58,21.243-28.533,29.714-41.076,29.714l-146.314-.839c-12.543,0-26.523-2.691-15.9-23.2l73.12-133.327C-10.1,9.7-1.22,0,11.323,0Z\",\"transform\":\"translate(731.381 490.51) rotate(30)\",\"fill\":\"#fff\"}})]),_c('path',{attrs:{\"id\":\"Path_38\",\"data-name\":\"Path 38\",\"d\":\"M28.466,2.939a21.5,21.5,0,0,0-22.588.549A12.453,12.453,0,0,0,0,13.77,11.507,11.507,0,0,0,5.474,23.3a19.349,19.349,0,0,0,10.644,2.948,21.348,21.348,0,0,0,11.945-3.489A12.475,12.475,0,0,0,33.94,12.474,11.531,11.531,0,0,0,28.466,2.939ZM24.424,15.817a15.32,15.32,0,0,1-15.4.482,3.7,3.7,0,0,1-1.954-2.588c-.007-.771.635-2.039,2.447-3.284A15.085,15.085,0,0,1,17.853,8.1a13.023,13.023,0,0,1,7.065,1.842,3.715,3.715,0,0,1,1.954,2.6C26.875,13.3,26.236,14.572,24.424,15.817Z\",\"transform\":\"translate(275.047 240.506) rotate(-30)\",\"fill\":\"#48bcc9\"}}),_c('path',{attrs:{\"id\":\"Path_48\",\"data-name\":\"Path 48\",\"d\":\"M28.516,2.939a21.571,21.571,0,0,0-22.628.549A12.449,12.449,0,0,0,0,13.77,11.5,11.5,0,0,0,5.483,23.3a19.408,19.408,0,0,0,10.663,2.948,21.413,21.413,0,0,0,11.966-3.489A12.471,12.471,0,0,0,34,12.474,11.527,11.527,0,0,0,28.516,2.939ZM24.467,15.817a15.37,15.37,0,0,1-15.43.482A3.7,3.7,0,0,1,7.08,13.712c-.007-.771.636-2.039,2.451-3.284A15.131,15.131,0,0,1,17.884,8.1a13.064,13.064,0,0,1,7.077,1.842,3.716,3.716,0,0,1,1.957,2.6C26.922,13.3,26.282,14.572,24.467,15.817Z\",\"transform\":\"matrix(0.914, -0.407, 0.407, 0.914, 160.851, 308.04)\",\"fill\":\"#48bcc9\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_26\",\"data-name\":\"Ellipse 26\",\"cx\":\"84.361\",\"cy\":\"51.267\",\"rx\":\"84.361\",\"ry\":\"51.267\",\"transform\":\"matrix(0.996, -0.087, 0.087, 0.996, 93.661, 189.285)\",\"fill\":\"#b8e5ea\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_25\",\"data-name\":\"Ellipse 25\",\"cx\":\"55.26\",\"cy\":\"34.538\",\"rx\":\"55.26\",\"ry\":\"34.538\",\"transform\":\"matrix(0.996, -0.087, 0.087, 0.996, 124.524, 193.731)\",\"fill\":\"#005660\",\"opacity\":\"0.77\"}}),_c('path',{attrs:{\"id\":\"Path_47\",\"data-name\":\"Path 47\",\"d\":\"M2839.719,2902.839s-.124,75.278,0,99.909,35.6,25.7,35.459,0,0-100.626,0-100.626l-18.174,3.03Z\",\"transform\":\"translate(-2674.753 -2794.355)\",\"fill\":\"#a1cfd4\"}}),_c('path',{attrs:{\"id\":\"Path_28\",\"data-name\":\"Path 28\",\"d\":\"M213.22,59.917A59.417,59.417,0,1,1,153.8.5,59.418,59.418,0,0,1,213.22,59.917Zm0,0\",\"transform\":\"translate(28.883 -0.5)\",\"fill\":\"#39a5b1\"}}),_c('path',{attrs:{\"id\":\"Path_46\",\"data-name\":\"Path 46\",\"d\":\"M197.055,51.834A51.334,51.334,0,1,1,145.72.5,51.335,51.335,0,0,1,197.055,51.834Zm0,0\",\"transform\":\"translate(41.224 5.149)\",\"fill\":\"#3bd4e5\",\"opacity\":\"0.38\"}}),_c('path',{attrs:{\"id\":\"Path_45\",\"data-name\":\"Path 45\",\"d\":\"M121.644,14.129A13.629,13.629,0,1,1,108.015.5,13.629,13.629,0,0,1,121.644,14.129Zm0,0\",\"transform\":\"translate(89.385 25.26)\",\"fill\":\"#fff\",\"opacity\":\"0.95\"}})])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class Loader extends Vue {}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=5cc119b4&scoped=true&\"\nimport script from \"./Loader.vue?vue&type=script&lang=ts&\"\nexport * from \"./Loader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Loader.vue?vue&type=style&index=0&id=5cc119b4&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5cc119b4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"justify\":\"center\"}},[_c('v-col',{staticClass:\"d-flex justify-center\"},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-flex justify-center\",attrs:{\"sm\":\"12\"}},[_c('svg',{staticClass:\"svg-maintenance\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"xmlns:xlink\":\"http://www.w3.org/1999/xlink\",\"width\":\"1920\",\"height\":\"1080\",\"viewBox\":\"0 0 1920 1080\"}},[_c('defs',[_c('clipPath',{attrs:{\"id\":\"clip-maintanance\"}},[_c('rect',{attrs:{\"width\":\"1920\",\"height\":\"1080\"}})])]),_c('g',{attrs:{\"id\":\"maintanance\",\"clip-path\":\"url(#clip-maintanance)\"}},[_c('rect',{attrs:{\"width\":\"1920\",\"height\":\"1080\",\"fill\":\"#fff\"}}),_c('g',{attrs:{\"id\":\"Group_472\",\"data-name\":\"Group 472\",\"transform\":\"translate(-1)\"}},[_c('g',{attrs:{\"id\":\"Group_4\",\"data-name\":\"Group 4\",\"transform\":\"translate(372.02 178)\"}},[_c('path',{attrs:{\"id\":\"Path_1\",\"data-name\":\"Path 1\",\"d\":\"M1188.91,553.07a241.362,241.362,0,0,1-7.07,58.24q-2.38,9.63-5.53,18.86a222.735,222.735,0,0,1-8.92,22.32q-2.55,5.52-5.39,10.82a145.56,145.56,0,0,1-12.17,58.49,150.79,150.79,0,0,1-73.18,75.4,153.93,153.93,0,0,1-65.33,15H234.68a195.679,195.679,0,0,1-98.42-26.31l-.46-.26q-6.39-3.74-12.46-7.92a195.41,195.41,0,0,1-25.57-21.08A190.28,190.28,0,0,1,69.66,721.8a185.86,185.86,0,0,1-28.59-99.23c-18.95-33.25-30-73.08-30-115.88,0-54,17.56-103.26,46.41-140.55a197.6,197.6,0,0,1,19.71-21.93,183.419,183.419,0,0,1,22.54-18.45,175.381,175.381,0,0,1,20-12c2.89-1.47,5.79-2.86,8.74-4.15,2.59-1.15,5.21-2.22,7.86-3.23q4.77-1.81,9.66-3.33t9.65-2.66q7-1.71,14.24-2.78c4-.59,8-1,12-1.31,3.18-.24,6.39-.37,9.62-.41h1.75c3.56,0,7.1.14,10.61.38.37-.74.77-1.49,1.14-2.22,1.4-2.67,2.85-5.33,4.31-7.93a.25.25,0,0,1,0-.07c.25-.46.5-.91.76-1.35,1.18-2.13,2.41-4.24,3.67-6.33.58-1,1.15-1.94,1.74-2.88a7.654,7.654,0,0,1,.41-.68q.9-1.5,1.83-3,4.63-7.4,9.63-14.54l.85-1.22c.52-.74,1-1.46,1.58-2.2,1.38-1.93,2.8-3.87,4.23-5.77,1-1.36,2-2.71,3.08-4q3.9-5,8-10t8.52-9.87c.4-.45.8-.89,1.22-1.33l4.27-4.66h0c.21-.22.39-.42.59-.62h0c.51-.55,1-1.1,1.55-1.63,2.29-2.43,4.64-4.81,7-7.18a381.2,381.2,0,0,1,38.3-33.37c.53-.42,1.07-.82,1.6-1.22,2.54-1.91,5.12-3.8,7.7-5.66a405.3,405.3,0,0,1,44.41-27.7c1.06-.61,2.14-1.18,3.23-1.74a424,424,0,0,1,42.49-19.56c7.91-3.13,16-6.07,24.14-8.76,5.42-1.78,10.86-3.47,16.37-5.06Q459.4,102,472.5,99.05a463.348,463.348,0,0,1,78.24-10.66q12-.61,24.27-.63a465,465,0,0,1,117,14.8,4.22,4.22,0,0,0,3.63,1.89H699c1.46.4,2.91.8,4.37,1.22q12.23,3.52,24.11,7.69l2,.72a430.437,430.437,0,0,1,56.91,25,410.679,410.679,0,0,1,47.65,29.44q3.51,2.52,6.92,5.08,4.14-2.65,8.42-5.08a165.621,165.621,0,0,1,34.88-14.87,159.1,159.1,0,0,1,78.24-3.06c33.25,7.05,63.35,24.55,87.66,49.44a204.55,204.55,0,0,1,26.29,33.38c.55.86,1.1,1.73,1.63,2.61a220,220,0,0,1,16.74,33.37c.17.43.34.83.49,1.25a231.07,231.07,0,0,1,10.3,33.35c.12.58.26,1.15.38,1.73a240.123,240.123,0,0,1,4.92,33.37,6.466,6.466,0,0,0,.08,1.23q.63,8.71.64,17.6c0,5.3-.18,10.56-.51,15.78,0,.57-.08,1.16-.13,1.75-.09,1.51-.22,3-.35,4.52a189.778,189.778,0,0,1,21.38,20.17q4.37,4.77,8.46,9.9a210.617,210.617,0,0,1,21.8,33.37C1179.19,475.33,1188.91,512.88,1188.91,553.07Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#96d9e0\",\"opacity\":\"0.2\"}}),_c('path',{attrs:{\"id\":\"Path_2\",\"data-name\":\"Path 2\",\"d\":\"M1075.91,793.5c0,6.83-23.53,13.23-64.59,18.73H234.68a195.681,195.681,0,0,1-98.42-26.31l-.46-.26c11.8-4.3,33.1-8.31,62.09-11.93h0l1.3-.16c13-1.59,27.53-3.1,43.41-4.53a9.894,9.894,0,0,0,1.21-.11h0q18.9-1.68,40.21-3.15c.45,0,.89-.08,1.34-.1q8.22-.59,16.78-1.12h0l2.2-.14c41.55-2.58,88.78-4.64,140-6h.06q10.76-.3,21.75-.53,12.22-.29,24.74-.51c6.37-.14,12.82-.24,19.29-.34h.15c29.19-.44,59.35-.66,90.19-.66,76.26,0,148.34,1.39,212.21,3.89h.18c9.82.38,19.46.8,28.86,1.23l8,.38q15.91.76,31,1.63h0C999.07,770.24,1075.91,781.17,1075.91,793.5Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#707070\",\"opacity\":\"0.1\"}}),_c('g',{attrs:{\"id\":\"Group_1\",\"data-name\":\"Group 1\"}},[_c('path',{attrs:{\"id\":\"Path_3\",\"data-name\":\"Path 3\",\"d\":\"M691.37,751.79A18.987,18.987,0,0,1,691,755q-10.44-1.66-21-3v-.86a16.88,16.88,0,0,1,2.5-8.48c2.06-3.26,5.19-5.3,8.64-5.19s6.44,2.34,8.29,5.71a16.87,16.87,0,0,1,1.94,8.61Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_1\",\"data-name\":\"Ellipse 1\",\"cx\":\"14.01\",\"cy\":\"10.7\",\"rx\":\"14.01\",\"ry\":\"10.7\",\"transform\":\"translate(659.025 660.273) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_2\",\"data-name\":\"Ellipse 2\",\"cx\":\"14.01\",\"cy\":\"10.7\",\"rx\":\"14.01\",\"ry\":\"10.7\",\"transform\":\"translate(659.571 643.153) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_3\",\"data-name\":\"Ellipse 3\",\"cx\":\"14.01\",\"cy\":\"10.7\",\"rx\":\"14.01\",\"ry\":\"10.7\",\"transform\":\"translate(660.106 626.032) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_4\",\"data-name\":\"Ellipse 4\",\"cx\":\"14.01\",\"cy\":\"10.7\",\"rx\":\"14.01\",\"ry\":\"10.7\",\"transform\":\"translate(660.642 608.911) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_4\",\"data-name\":\"Path 4\",\"d\":\"M646.47,564.55a49.661,49.661,0,0,1-3.8-6l28.26-3.73-30.42-.73a51.38,51.38,0,0,1,.31-40.64l40.12,22.45-36.75-28.84a51.28,51.28,0,1,1,82.84,60,50.8,50.8,0,0,1,5.55,9.53l-37.09,17.8,39.33-11.83A51.34,51.34,0,0,1,725,630.47a51.28,51.28,0,1,1-80.56-2.54,51.28,51.28,0,0,1,2-63.38Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3cb6c5\"}}),_c('path',{attrs:{\"id\":\"Path_5\",\"data-name\":\"Path 5\",\"d\":\"M737,599.13a51,51,0,0,1-12,31.34,51.28,51.28,0,1,1-80.56-2.54C637.87,619,737.18,593.38,737,599.13Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3cb6c5\"}})]),_c('g',{attrs:{\"id\":\"Group_2\",\"data-name\":\"Group 2\"}},[_c('path',{attrs:{\"id\":\"Path_6\",\"data-name\":\"Path 6\",\"d\":\"M539.37,751.79A18.993,18.993,0,0,1,539,755q-10.44-1.66-21-3v-.86a16.879,16.879,0,0,1,2.5-8.48c2.06-3.26,5.19-5.3,8.64-5.19s6.44,2.34,8.29,5.71a16.87,16.87,0,0,1,1.94,8.61Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_5\",\"data-name\":\"Ellipse 5\",\"cx\":\"14.01\",\"cy\":\"10.7\",\"rx\":\"14.01\",\"ry\":\"10.7\",\"transform\":\"translate(507.013 660.277) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_6\",\"data-name\":\"Ellipse 6\",\"cx\":\"14.01\",\"cy\":\"10.7\",\"rx\":\"14.01\",\"ry\":\"10.7\",\"transform\":\"translate(507.559 643.156) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_7\",\"data-name\":\"Ellipse 7\",\"cx\":\"14.01\",\"cy\":\"10.7\",\"rx\":\"14.01\",\"ry\":\"10.7\",\"transform\":\"translate(508.095 626.036) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_8\",\"data-name\":\"Ellipse 8\",\"cx\":\"14.01\",\"cy\":\"10.7\",\"rx\":\"14.01\",\"ry\":\"10.7\",\"transform\":\"translate(508.63 608.915) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_7\",\"data-name\":\"Path 7\",\"d\":\"M494.47,564.55a49.661,49.661,0,0,1-3.8-6l28.26-3.73-30.42-.73a51.38,51.38,0,0,1,.31-40.64l40.12,22.45-36.75-28.84a51.28,51.28,0,1,1,82.84,60,50.8,50.8,0,0,1,5.55,9.53l-37.09,17.8,39.33-11.83A51.34,51.34,0,0,1,573,630.47a51.28,51.28,0,1,1-80.56-2.54,51.28,51.28,0,0,1,2-63.38Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3cb6c5\"}}),_c('path',{attrs:{\"id\":\"Path_8\",\"data-name\":\"Path 8\",\"d\":\"M585,599.13a51,51,0,0,1-12,31.34,51.28,51.28,0,1,1-80.56-2.54C485.87,619,585.18,593.38,585,599.13Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3cb6c5\"}})]),_c('g',{attrs:{\"id\":\"Group_3\",\"data-name\":\"Group 3\"}},[_c('path',{attrs:{\"id\":\"Path_9\",\"data-name\":\"Path 9\",\"d\":\"M954.57,762.73a37.3,37.3,0,0,1-.73,6.08q-20.1-3.21-40.49-5.74v-1.65a32.5,32.5,0,0,1,4.82-16.33c4-6.27,10-10.2,16.63-10s12.4,4.51,16,11a32.529,32.529,0,0,1,3.77,16.64Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_9\",\"data-name\":\"Ellipse 9\",\"cx\":\"26.98\",\"cy\":\"20.61\",\"rx\":\"26.98\",\"ry\":\"20.61\",\"transform\":\"translate(902.52 667.716) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_10\",\"data-name\":\"Ellipse 10\",\"cx\":\"26.98\",\"cy\":\"20.61\",\"rx\":\"26.98\",\"ry\":\"20.61\",\"transform\":\"translate(903.559 634.755) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_11\",\"data-name\":\"Ellipse 11\",\"cx\":\"26.98\",\"cy\":\"20.61\",\"rx\":\"26.98\",\"ry\":\"20.61\",\"transform\":\"translate(904.609 601.794) rotate(-88.19)\",\"fill\":\"#3f3d56\"}}),_c('ellipse',{attrs:{\"id\":\"Ellipse_12\",\"data-name\":\"Ellipse 12\",\"cx\":\"26.98\",\"cy\":\"20.61\",\"rx\":\"26.98\",\"ry\":\"20.61\",\"transform\":\"translate(904.494 567.409) rotate(-88.282)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_10\",\"data-name\":\"Path 10\",\"d\":\"M868.12,402.27a99.27,99.27,0,0,1-7.31-11.53l54.4-7.18-58.55-1.41a98.9,98.9,0,0,1,.58-78.24l77.25,43.21L863.75,291.6a98.72,98.72,0,1,1,159.47,115.56,98.711,98.711,0,0,1,10.69,18.35L962.5,459.8l75.71-22.8a98.75,98.75,0,0,1-18.83,92.15,98.72,98.72,0,1,1-155.1-4.89,98.75,98.75,0,0,1,3.84-122Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3cb6c5\"}}),_c('path',{attrs:{\"id\":\"Path_11\",\"data-name\":\"Path 11\",\"d\":\"M1042.42,468.83a98.339,98.339,0,0,1-23,60.34,98.72,98.72,0,1,1-155.1-4.89C851.58,507.07,1042.77,457.76,1042.42,468.83Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3cb6c5\"}})]),_c('path',{attrs:{\"id\":\"Path_12\",\"data-name\":\"Path 12\",\"d\":\"M157.82,676.73l10.49-.03H183.1l18.7-303.78L386.99,63.89l-8.05-8.64V33.37L178.66,365.76Z\",\"fill\":\"#f1c0c0\"}}),_c('path',{attrs:{\"id\":\"Path_13\",\"data-name\":\"Path 13\",\"d\":\"M169.43,676.7H183.1l18.7-303.78L386.99,63.89l-8.05-8.64L187.92,368.29Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_14\",\"data-name\":\"Path 14\",\"d\":\"M126.91,679.26l479.85,36.72.41.03,464.39-28.56.35-.02V667.82l-511.7-9.39-426.91-.41h-3.12l-.34,2.2Z\",\"fill\":\"#f1c0c0\"}}),_c('path',{attrs:{\"id\":\"Path_15\",\"data-name\":\"Path 15\",\"d\":\"M126.91,679.26l479.85,36.72.41.03,464.39-28.56.35-.38V668.23h-.41L606.76,683.75,133.3,658.02h-.07l-.84.55-2.55,1.65Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_16\",\"data-name\":\"Path 16\",\"d\":\"M126.91,679.26l479.85,36.72V683.75L132.39,658.57l-2.55,1.65Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_17\",\"data-name\":\"Path 17\",\"d\":\"M378.88,54.84,590.43,281.9l-6.54,399.4,17.97,2.17.3.04h17.97l2.15-384.46,396.13,132.32,6.68,235.6,14.46,1.62,4.9.55-11.34-254.11L619.01,269.65,391.95,33.6H378.88Z\",\"fill\":\"#f1c0c0\"}}),_c('path',{attrs:{\"id\":\"Path_18\",\"data-name\":\"Path 18\",\"d\":\"M620.65,291.7l1.63,7.35,396.13,132.32,6.68,235.6,14.46,1.62-11.34-242.12Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_19\",\"data-name\":\"Path 19\",\"d\":\"M378.88,54.84,590.43,281.9l-6.54,399.4,17.97,2.17,4.9-414.64L378.88,33.6Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_20\",\"data-name\":\"Path 20\",\"d\":\"M621.42,451.99,766.71,480.6l.05.01,254.47,50.13,11.65-4.67-.04-.82-.76-16.25L621.57,426.05Z\",\"fill\":\"#f1c0c0\"}}),_c('path',{attrs:{\"id\":\"Path_21\",\"data-name\":\"Path 21\",\"d\":\"M766.76,480.61l254.47,50.13,11.65-4.67-.04-.82Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_22\",\"data-name\":\"Path 22\",\"d\":\"M776.49,350.56l3.93,216.34,2.03,110.99,17.89-.6,11.26-.38-3.5-323.22-7.76-2.58-1.7-.55Z\",\"fill\":\"#f1c0c0\"}}),_c('path',{attrs:{\"id\":\"Path_23\",\"data-name\":\"Path 23\",\"d\":\"M776.65,350.51v.05l3.77,216.34,2.03,110.99,17.89-.6V350.51Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_24\",\"data-name\":\"Path 24\",\"d\":\"M507.35,493.57a22.794,22.794,0,0,1,3,1.95,19.848,19.848,0,0,1,3,3.29c4.29,5.55,8.25,12,7.83,19a7.73,7.73,0,0,1-2.23,5.5c-1.77,1.51-4.31,1.58-6.63,1.58-2.52,0-5.17,0-7.35-1.3s-4-3.83-6.58-3.77a3.37,3.37,0,0,1-1.1,0c-.89-.29-1.07-1.46-1.65-2.2-1-1.33-3.11-1-4.68-.42s-3.31,1.45-4.86.78a5.049,5.049,0,0,1-2.11-2.11c-3.71-6-4.5-13.21-5.2-20.18-.43-4.24-3.71-18.7,5.34-15.41,4,1.44,7.74,4.32,11.38,6.43Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_25\",\"data-name\":\"Path 25\",\"d\":\"M498.41,495a4.46,4.46,0,0,0,5.49-.22,8.27,8.27,0,0,0,2.67-5.18c1-.31,1.51,1,2.15,1.8,1.12,1.36,3.4,1.34,4.42,2.79.71,1,.55,2.39,1.05,3.52.65,1.46,2.26,2.22,3.36,3.4a11.579,11.579,0,0,1,2.2,4.39l1.64,4.92a24.317,24.317,0,0,1,1.5,6.37,8.25,8.25,0,0,1-1.9,6.09c-2.2,2.37-5.81,2.62-9,2.55a11.581,11.581,0,0,1-3.16-.37c-2.83-.88-4.64-3.73-5.39-6.6s-.67-5.88-1.11-8.82a34.569,34.569,0,0,0-2.5-8.38c-.88-2.08-3.3-5.18-3.26-7.39C497.29,493.87,497.81,494.53,498.41,495Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_26\",\"data-name\":\"Path 26\",\"d\":\"M502,484.87a16.51,16.51,0,0,1-.81-4.39c0-3,1.37-5.82,2.75-8.5l-11.43,1.55c-1.38.19-2.92.47-3.7,1.62a4,4,0,0,0,0,3.69,18.857,18.857,0,0,1,1.36,3.57,17.828,17.828,0,0,0,.37,3.21,6.8,6.8,0,0,0,1.47,2.07c3.27,3.62,5.72,7.89,8.16,12.12-.07-.12,6.89-5.51,6.61-7.27-.16-1-2.17-2.2-2.81-3.16A16.09,16.09,0,0,1,502,484.87Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#be6f72\"}}),_c('path',{attrs:{\"id\":\"Path_27\",\"data-name\":\"Path 27\",\"d\":\"M588.91,358.04v9.85l-168.67,32.9-8.75,5.3H381.3v-5.55L547.02,360.5Z\",\"fill\":\"#f1c0c0\"}}),_c('path',{attrs:{\"id\":\"Path_28\",\"data-name\":\"Path 28\",\"d\":\"M588.91,367.89l-168.67,32.9-8.75,5.3H381.3l166.95-35.73Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_29\",\"data-name\":\"Path 29\",\"d\":\"M464.58,725.42a13.07,13.07,0,0,0-15.9-3.38,4.189,4.189,0,0,0-1.46,1.14c-1,1.4-.36,3.33-.27,5.06.23,4.22-3.13,7.65-6.15,10.6a14.54,14.54,0,0,0-4,5.42c-.73,2.15-.19,4.88,1.77,6a7.37,7.37,0,0,0,2.74.76,29.57,29.57,0,0,0,9.7.27c3.19-.61,6.32-2.42,7.7-5.36A5.65,5.65,0,0,1,460,743.8c1.76-1.39,4.46.24,6.46-.75,1.65-.82,1.72-2.11,1.74-3.81C468.26,734.54,467.56,729.22,464.58,725.42Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_30\",\"data-name\":\"Path 30\",\"d\":\"M488.58,725.24c1.23,3.24,1.4,6.77,1.56,10.23.09,2,.15,4.14-.93,5.83s-3.19,2.58-5.21,3c-4.17.86-9,.05-11.69-3.26-2.06-2.53-2.49-6-2.11-9.28.32-2.69,1-5.84-.93-7.75-.5-.51-1.15-.87-1.61-1.42-1-1.22-.84-3.06-.3-4.56a19.807,19.807,0,0,0,1.57-4.51c.08-.74,13.54.52,14.78,1.13,1.69.83,1.43,2.22,1.94,3.9C486.36,720.89,487.72,723,488.58,725.24Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_31\",\"data-name\":\"Path 31\",\"d\":\"M491.05,581.58c2.64,1.71,3.66,5.07,4.07,8.19,1.13,8.55-.85,17.19-1,25.82-.14,12.09,3.36,24.4.37,36.11-1.79,7-.27,15-1.95,22.07-.5,2.1-1.42,4.08-1.9,6.18-1,4.55.05,9.31,1.46,13.76a14.212,14.212,0,0,1,.85,3.73,13.419,13.419,0,0,1-1.46,5.64l-6,14.19c-.67,1.59-3.31,1.85-5,2.06-3.18.38-6.73.65-9.26-1.32s-3.14-5.27-3.53-8.35a128,128,0,0,1-1-17.83,14.691,14.691,0,0,0-.41-4.63c-.55-1.71-1.76-3.19-2.09-5-.42-2.34.77-4.64,1.21-7a21.09,21.09,0,0,0-.1-6.49c-.39-3.2-.84-6.4-1.35-9.58-.72-4.45.31-8.84,1-13.3.65-4.19-.18-8.46-1-12.62a34.789,34.789,0,0,1-1.25,10c-.53,1.59-1.29,3.11-1.75,4.73-2.05,7.27,2.32,14.9,1.7,22.43-.29,3.52-1.67,7-1.28,10.47.27,2.54,1.45,4.87,2.26,7.29s1.23,5.19,0,7.45c-3.25,6.14-.82,14.49,2.09,20.79a28.061,28.061,0,0,1,1.54,3.46c.86,2.84.14,5.89.37,8.85a5.58,5.58,0,0,1-4.69-1.41c-.44-.46-.8-1-1.23-1.48a12.21,12.21,0,0,0-4.18-2.61,5.49,5.49,0,0,0-3-.69,6,6,0,0,0-2.85,1.77,27.929,27.929,0,0,1-3.14,2.39,3.719,3.719,0,0,1-1.6.71,1.41,1.41,0,0,1-1.47-.75,1.779,1.779,0,0,1-.11-.52,79.143,79.143,0,0,1-.59-9.1c0-5.23-6.26-8.83-7.05-14-.63-4.17.54-8.42.15-12.62-.19-2.16-.79-4.28-.75-6.44,0-1.4.32-2.77.43-4.16a31.113,31.113,0,0,0-.07-4.63l-.31-4.83c-.3-4.77-.63-9.64-2.51-14a47.57,47.57,0,0,1-3.9-16.08c-.2-3.5-.07-7-.47-10.51-.36-3.17-1.16-6.32-.93-9.5.19-2.46,1-4.84,1.19-7.3.39-4.73-1.41-9.33-2.82-13.86s-2.45-9.55-.6-13.92a4.57,4.57,0,0,1,1.28-1.86,5.58,5.58,0,0,1,2.36-.88A183.111,183.111,0,0,1,483,579.07a17.34,17.34,0,0,1,8.05,2.51Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('circle',{attrs:{\"id\":\"Ellipse_13\",\"data-name\":\"Ellipse 13\",\"cx\":\"16.02\",\"cy\":\"16.02\",\"r\":\"16.02\",\"transform\":\"translate(407.17 355.57)\",\"fill\":\"#be6f72\"}}),_c('path',{attrs:{\"id\":\"Path_32\",\"data-name\":\"Path 32\",\"d\":\"M431.18,479.36a5.72,5.72,0,0,1,0,2.79,6.32,6.32,0,0,1-1.05,1.76,45.2,45.2,0,0,1-5.13,5.58,9.29,9.29,0,0,0,4.79,4.73,27.81,27.81,0,0,0,6.61,1.89,6.928,6.928,0,0,0,6.48-1.12l8.9-5.33a17.78,17.78,0,0,0,3.7-2.67,9.11,9.11,0,0,0,2.58-6.26,1.72,1.72,0,0,0-.32-1.18,2.1,2.1,0,0,0-1.22-.51c-3.13-.69-5.6-3.23-7-6.11a32.359,32.359,0,0,1-2.43-9.27l-9.49,5c-1.41.75-2.81,1.5-4.27,2.15-.93.42-2.81.77-3.47,1.62C428.6,474,430.85,477.47,431.18,479.36Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#be6f72\"}}),_c('path',{attrs:{\"id\":\"Path_33\",\"data-name\":\"Path 33\",\"d\":\"M425.06,486.58a10.55,10.55,0,0,0-3.07,4.15c-.62,2,0,4.11.56,6.09a181.692,181.692,0,0,1,6,25.79c.84,6,1.15,12.09,1.56,18.16.84,12.38,2.06,32.12,3.69,44.42,6,.27,11.85-1.48,17.8-2.12,11.12-1.18,22.57,1.52,33.46-1-2.64-10.43-5.28-28.24-7.92-38.66a73.768,73.768,0,0,1-2.42-12.55c-.23-3.05-.09-6.11-.05-9.18.09-6-.24-12-.57-18-.38-7-.76-14-2.42-20.85a3.88,3.88,0,0,0-1.16-2.29c-1-.73-2.3-.47-3.49-.31a15.18,15.18,0,0,1-10.38-2.46c-1.32-.9-3.09-2-4.32-1a4.3,4.3,0,0,0-1,2.13,10.65,10.65,0,0,1-6.26,6.17,31.328,31.328,0,0,1-8.86,1.82,4.35,4.35,0,0,1-2.75-.31c-1.42-.87-1.52-4-3.31-4.21C428.58,482.19,426.12,485.57,425.06,486.58Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_34\",\"data-name\":\"Path 34\",\"d\":\"M448.72,511c-3.69-3.53-5.31-8.65-8-13a28.94,28.94,0,0,0-6.91-7.6,20.61,20.61,0,0,1-3.76-3.19c-.95-1.17-1.67-2.73-3.11-3.18a3.76,3.76,0,0,0-3.37.93,33.156,33.156,0,0,0-2.5,2.66c-4.24,4.39-11.69,5-15.05,10.08a8.26,8.26,0,0,0-1.79,3.75,29.06,29.06,0,0,0,5.34,20.9,7.1,7.1,0,0,0,3.7,3,11.58,11.58,0,0,0,.72,5.5,147.072,147.072,0,0,0,6.81,18.55,44.871,44.871,0,0,0-1.34,7.19c-.7,6.11-.05,12.31-.71,18.43-.54,5-2,9.87-2.05,14.88,0,.8.07,1.75.76,2.16a2.3,2.3,0,0,0,1.19.25l12.3.37c7.14.21,14.35.42,21.38-.9a8.9,8.9,0,0,0,2.69-.85c2.38-1.33,3.17-4.33,3.55-7a61,61,0,0,0,.59-10.46c1.49,4.71,3.26,9.58,7.76,11.62,2.38,1.08,5.1,1,7.71.93a145.163,145.163,0,0,0,16.79-1.73,2.21,2.21,0,0,0,2.45-2.57l.06-5.46c.12-11.09-2.63-21.69-3.7-32.73-.34-3.48-.31-7-1.16-10.41-.35-1.43-.86-2.83-1.17-4.27a30.525,30.525,0,0,1-.5-4.27l-.78-11c-.37-5.09-.9-10-1.29-15.08a73,73,0,0,0-2.14-14.66c-.87-3-2.68-6.4-5.81-6.77-1.67-.19-3.29.54-4.88,1.05a19.72,19.72,0,0,1-12-.05,16.9,16.9,0,0,0-3.74-1,3.67,3.67,0,0,0-3.42,1.42,5.13,5.13,0,0,0-.53,2.52C452.34,491,451.47,501.29,448.72,511Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_35\",\"data-name\":\"Path 35\",\"d\":\"M432.63,511.3c-4.61-4.86-9.34-9.81-15.28-12.9-2.34-1.22-5-2.14-7.59-1.68s-5,2.71-4.88,5.34c.08,1.63,1.07,3.07,1.38,4.67.36,1.8-.16,3.72.4,5.46a9.24,9.24,0,0,0,2,3.07l7.08,8.39c3,3.5,6,7.05,9.86,9.47s8.86,3.55,13.1,1.83a16.1,16.1,0,0,0,7.18-6.59c1.76-2.8,3-5.86,4.65-8.75a43.449,43.449,0,0,1,10-12.13c-2.08-.54-4.69-1.3-6-3a9.913,9.913,0,0,1-.95-1.72l-1.62-3.5a4,4,0,0,0-3,1.13,25.151,25.151,0,0,1-2.23,2.27c-1.41,1.06-3.32,1.35-4.6,2.56a12.187,12.187,0,0,0-1.34,1.68,11.22,11.22,0,0,1-8.16,4.4Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_36\",\"data-name\":\"Path 36\",\"d\":\"M460.9,490.39c3.47-6.33,3.31-13.92,4.3-21.07a9.62,9.62,0,0,1,1.91-5.23c2-2.26,5.53-2.29,8.55-2,.89.1,2,.52,1.95,1.41a1.8,1.8,0,0,1-.45.85,23.79,23.79,0,0,0-4.94,13.12c1.57,1.09,4-1.15,5.51,0,1,.84.54,2.5-.06,3.7q-2.09,4.17-4.31,8.28a26.589,26.589,0,0,1-4.57,6.59c-1.27,1.22-2.76,2.18-4.05,3.38-3,2.81-4.81,6.78-7.91,9.52a1.62,1.62,0,0,1-1,.51,1.68,1.68,0,0,1-1.05-.47,15.161,15.161,0,0,1-3.78-4.57c-1.18-2.18-1-2.82.86-4.36C455.34,497.3,458.73,494.35,460.9,490.39Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#be6f72\"}}),_c('path',{attrs:{\"id\":\"Path_37\",\"data-name\":\"Path 37\",\"d\":\"M426.83,507c.6.37,1.34.79,2,.48a2.08,2.08,0,0,0,.67-.65,23.537,23.537,0,0,0,2.84-4.94,1.9,1.9,0,0,0,.21-.8c0-.64-.57-1.11-1.1-1.48a40.759,40.759,0,0,0-9.09-4.32,18.757,18.757,0,0,0-8.2-1.62,7.82,7.82,0,0,0-5.47,2.78c-2,2.57,1.35,3.35,3.45,4.28C417,502.94,422.26,504.22,426.83,507Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_38\",\"data-name\":\"Path 38\",\"d\":\"M423.68,524a1.47,1.47,0,0,0,.42,1.26c.29-1.42-.09-2.92.21-4.35.44-2.15,2.53-3.77,2.71-5.93C423.19,514.23,423.71,521.68,423.68,524Z\",\"transform\":\"translate(-11.09 -87.76)\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_39\",\"data-name\":\"Path 39\",\"d\":\"M588.91,358.04v9.85l-40.66,2.47-1.23-9.86Z\",\"opacity\":\"0.2\"}}),_c('path',{attrs:{\"id\":\"Path_40\",\"data-name\":\"Path 40\",\"d\":\"M419.86,461.73c2.54-2.07,1.07-6.41,2.79-9.19a8.929,8.929,0,0,1,4.35-3,19.79,19.79,0,0,1,6.35-1.76,7.37,7.37,0,0,1,6,2.21c.65.74,1.09,1.64,1.7,2.41a6.5,6.5,0,0,0,6.3,2.18c1.33-.3,2.71-1.31,2.62-2.67a3.77,3.77,0,0,0-1.2-2.14l-2.86-3.17c-3.25-3.6-6.86-7.42-11.63-8.32-3.32-.63-6.72.26-9.92,1.33-1.29.43-2.74,1.07-3.1,2.38-.24.9.12,1.88-.09,2.79-.41,1.81-2.73,2.42-3.81,3.94s-.75,3.32-1.06,5-1.21,3.32-1.32,5.06c-.07,1.05.46,3,1.64,3.38S419.13,460.48,419.86,461.73Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_41\",\"data-name\":\"Path 41\",\"d\":\"M449,450.47a30,30,0,0,0-5.32-12.16,21.31,21.31,0,0,0-9.47-7.52,13.56,13.56,0,0,0-11.79.93,17.12,17.12,0,0,0-5.89,7.43c-2.59,5.58-3.55,12.4-.54,17.76,1.2-1.46,3.26-.8,5.08-1.33,2.28-.65,4.21-2.17,6.38-3.12C434,449.57,442,451.91,449,450.47Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_42\",\"data-name\":\"Path 42\",\"d\":\"M417.52,450.16c-.23-1.8-.38-3.89.9-5.17a.65.65,0,0,1,.53-.24.69.69,0,0,1,.41.36,22.382,22.382,0,0,1,1.88,3.68,3.82,3.82,0,0,0-4,1.55\",\"transform\":\"translate(-11.09 -87.76)\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_43\",\"data-name\":\"Path 43\",\"d\":\"M440.89,445.08l-.36-3.57a1.63,1.63,0,0,1,.07-.88,1.13,1.13,0,0,1,1.46-.4,3,3,0,0,1,1.17,1.17,21,21,0,0,1,2.06,4.07,12.1,12.1,0,0,0-4.87.06\",\"transform\":\"translate(-11.09 -87.76)\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_44\",\"data-name\":\"Path 44\",\"d\":\"M438.75,502.21v8.16l-6.89.46H395.62v-8.62Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_45\",\"data-name\":\"Path 45\",\"d\":\"M438.75,502.21v8.62H395.62L281.04,367.3v-6.78h24.02Z\",\"fill\":\"#f1c0c0\"}}),_c('path',{attrs:{\"id\":\"Path_46\",\"data-name\":\"Path 46\",\"d\":\"M438.75,502.21v8.62H395.62L281.04,367.3v-6.78h24.02Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_47\",\"data-name\":\"Path 47\",\"d\":\"M438.75,502.21v8.62H395.62L281.04,367.3v-6.78l115.2,141.69Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_48\",\"data-name\":\"Path 48\",\"d\":\"M307.15,733.83a3,3,0,0,1-2.62,3.53c-2.78.94-5.73,1.87-7.7,4s-2.36,6.08,0,7.81a7.59,7.59,0,0,0,4,1.09c4.53.31,9.25.25,13.36-1.67,2.94-1.36,5.71-3.68,8.94-3.47,1.67.1,3.45.88,4.94.12s1.91-2.88,1.92-4.65a34.43,34.43,0,0,0-1.65-10.89c-.15-.48-6.51-.85-7.27-1l-7.71-1c-1.46-.19-4.61-1.29-5.76-.07S307.15,732.38,307.15,733.83Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_49\",\"data-name\":\"Path 49\",\"d\":\"M353.16,708.87a24.152,24.152,0,0,0,1.58,5.24c1.07,2.72,2.44,5.61,5.06,6.93,2.38,1.19,5.3.76,7.72-.37a6.36,6.36,0,0,0,2.57-1.95,7.74,7.74,0,0,0,1-4.49c0-3.87-.23-7.87-2-11.31-1.52-3-4.17-5.58-4.21-8.9l-9.11,1.76a2.6,2.6,0,0,0-1.34.53,2.309,2.309,0,0,0-.58,1.09A29.77,29.77,0,0,0,353.16,708.87Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_50\",\"data-name\":\"Path 50\",\"d\":\"M244.37,613.87c-.38,3.22-.22,6.67,1.46,9.45s5.22,4.62,8.28,3.51a1.21,1.21,0,0,0,.75-.57,1.41,1.41,0,0,0-.13-1,14.76,14.76,0,0,1,.31-11.12c.2-.46.63-1,1.1-.82a1,1,0,0,1,.45.46,5.23,5.23,0,0,1,.7,2.76,10.262,10.262,0,0,0-.08,2.65c.19.86,1.11,1.67,1.91,1.3a2,2,0,0,0,.91-1.29c2.23-6.45,1.22-13.5.2-20.25a1.06,1.06,0,0,0-1.19-1.11c-4.72-.47-7.3-1.6-10,2.79C246.72,604.33,244.37,609.42,244.37,613.87Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_51\",\"data-name\":\"Path 51\",\"d\":\"M299.55,597.46c-1.4,5.82-2.81,11.71-2.9,17.69a81.27,81.27,0,0,0,.84,11.13l1.05,8.66c.36,2.92.71,5.83,1.22,8.72a23.153,23.153,0,0,1,.53,4.53,24.261,24.261,0,0,1-.71,4.45,52,52,0,0,0-1.05,9.3c-.11,5,.51,10,.9,15a167.048,167.048,0,0,1-.35,29.92,11.22,11.22,0,0,0,1.64,7.71,9.92,9.92,0,0,1,1.45,2.38c.75,2.29-1,4.58-1.45,6.93a7,7,0,0,0,5.82,8c8,.95,16.22.52,23.43,4.18.76-2.22-.9-4.74-.14-7,.48-1.4,1.8-2.31,2.7-3.49a10.161,10.161,0,0,0,1.72-6.1,22.29,22.29,0,0,0-1.48-8.27c-.85-2.2-2.07-4.37-2-6.73,0-1.16.41-2.38-.06-3.45a5.39,5.39,0,0,0-1.29-1.61,20.33,20.33,0,0,1-5.23-11.85,54.58,54.58,0,0,1,.42-13.14c.49-4.14,1.15-8.51,3.78-11.74a75.331,75.331,0,0,1,2.11-29.25c.26-.88.67-1.9,1.57-2.11a2.24,2.24,0,0,1,1.92.76c1.57,1.47,2.32,3.6,3,5.64.75,2.21,1.51,4.57.94,6.83-.24,1-.72,1.88-1,2.84a8.42,8.42,0,0,0,.3,5.87,5.64,5.64,0,0,1,.72,2.21,6.119,6.119,0,0,1-.6,1.92,8.84,8.84,0,0,0,.83,7.15,25.888,25.888,0,0,0,4.67,5.73,21,21,0,0,0,.65,11.56,1.46,1.46,0,0,1,.13,1.11c-.18.38-.64.52-1,.79-1,.82-.38,2.37.29,3.44a78.881,78.881,0,0,0,6.07,8.42c2,2.39,1.82,7,4.8,7.86a9,9,0,0,0,3.8,0c2.94-.45,6.22-1.3,7.66-3.9.59-1.07.83-2.37,1.75-3.17s2.11-.94,2.62-1.9-.06-2.22.11-3.33,1.14-2,1.45-3.17c.74-2.7-2.41-4.92-2.84-7.68-.62-4,4.42-7,4.21-11-.44-8.69-.72-17.42-1.17-26.11a188.267,188.267,0,0,1-.24-23.39c.35-4.85,1-9.93-.78-14.44-2.56-6.36-9.62-9.93-16.45-10.61s-13.64.94-20.41,2a129,129,0,0,1-33.95.71Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('circle',{attrs:{\"id\":\"Ellipse_14\",\"data-name\":\"Ellipse 14\",\"cx\":\"16.02\",\"cy\":\"16.02\",\"r\":\"16.02\",\"transform\":\"translate(292.74 382.08)\",\"fill\":\"#fbbebe\"}}),_c('path',{attrs:{\"id\":\"Path_52\",\"data-name\":\"Path 52\",\"d\":\"M313.33,504.87A6.83,6.83,0,0,1,306.8,509c-.58,2.4.81,4.82,2.4,6.71a28.48,28.48,0,0,0,27.26,9.35,13.451,13.451,0,0,0,5.37-2.24,11.91,11.91,0,0,0,4.1-7.1,35.3,35.3,0,0,0,.39-8.35,2.16,2.16,0,0,0-.44-1.54,2.2,2.2,0,0,0-1.4-.46c-3.38-.3-6.91-.43-9.88-2.09s-5.08-5.41-3.65-8.49c-.23.48-6.07.71-6.84.81-2.41.34-4.82.72-7.22,1.16a13.128,13.128,0,0,0-3.39.64c-1.45.75-.91.38-.57,1.74C313.44,501.22,314.19,502.71,313.33,504.87Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#fbbebe\"}}),_c('path',{attrs:{\"id\":\"Path_53\",\"data-name\":\"Path 53\",\"d\":\"M325.52,514.61a26.529,26.529,0,0,1-6.41-.71,9,9,0,0,1-5.26-3.51c-.74-1.12-1.22-2.53-2.4-3.16-1.93-1-4.13.69-5.67,2.24a20.6,20.6,0,0,1-4.82,3.88c-2.14,1.13-4.64,1.53-6.66,2.86a16.741,16.741,0,0,0-4,4.32l-14.17,19.3c-5.69,7.76-10.64,16.09-15.71,24.28-4.39,7.09-6.69,15.25-10,22.9a2.56,2.56,0,0,0-.31,1.54c.12.52.75.94,1.19.64-1.49,1.48-.18,4-.53,6.08a7.46,7.46,0,0,1-2.38,3.73,18.8,18.8,0,0,1,6.6.31,20.229,20.229,0,0,1,6.24,3c1.21-.19,1.1-2.34,2-3.14.54-.47,1.34-.41,2.05-.55,2.67-.52,3.73-3.73,5.78-5.54,1.71-1.51,4.13-2,5.94-3.42,2.94-2.31,3.57-6.42,5.11-9.83,1.31-2.89,3.37-5.41,4.52-8.37.75-1.92,1.11-4,2.18-5.77,1.71-2.86,4.93-4.38,8-5.75,1.94-.87,4-1.77,6.09-1.63-.11,4.65-.7,9.23.31,13.77.35,1.6.84,3.16,1.26,4.75,1.91,7.16,2.36,14.62,2.45,22a66.938,66.938,0,0,1,14-1.68c3.71-.11,7.41.37,11.12.3,4.4-.08,8.75-.93,13.15-1.23s9,0,12.89,2a122.457,122.457,0,0,1,.53-19l1.06-9.94A61.069,61.069,0,0,1,361,560.7c.58-2.28,1.42-4.48,2.06-6.75,2.25-8,1.84-16.54,1.41-24.87-.22-4.28-1.87-8.49-3.81-12.3a33.289,33.289,0,0,0-2.4-4.08A23.63,23.63,0,0,0,337.6,503a4.181,4.181,0,0,0-1.48.32,4.93,4.93,0,0,0-1.89,2.25,24.5,24.5,0,0,1-8.71,9.04Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_54\",\"data-name\":\"Path 54\",\"d\":\"M305.76,491.17c.45-1,1.66-1.37,2.4-2.17,1.42-1.52.78-3.95,1-6,.36-3,2.85-5.51,5.7-6.58a18.42,18.42,0,0,1,9-.57,8.71,8.71,0,0,1,4.06,1.35c.52.38,1,.87,1.49,1.22a4,4,0,0,0,5.44-1.27c-3.54-4.26-7.46-8.76-12.84-10.07a26.334,26.334,0,0,0-5.61-.53c-2.49-.05-5.06-.09-7.36.86-3.13,1.29-5.33,4.26-6.46,7.46a36.268,36.268,0,0,0-1.57,10,37.67,37.67,0,0,0,0,6.8,18.8,18.8,0,0,0,3.34,8.57,2.59,2.59,0,0,0,1,.93C309.91,503.17,305.39,492,305.76,491.17Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_55\",\"data-name\":\"Path 55\",\"d\":\"M334.33,474.68c-.55-4.71-3.91-8.6-7.48-11.73a27.58,27.58,0,0,0-10.05-6.05c-3.77-1.11-8.11-.87-11.34,1.38-2.6,1.81-4.25,4.69-5.52,7.59a23.89,23.89,0,0,0-2.41,11c.25,3.78,2.09,7.61,5.37,9.52,1.18-1.74,3.23-2.64,5.2-3.35a254.59,254.59,0,0,1,26.23-8.36Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_56\",\"data-name\":\"Path 56\",\"d\":\"M304,472.72c.32,0,.53.33.69.6a25.346,25.346,0,0,1,2.09,4c-1.17.25-3.18.53-3.76-.5C302.71,476.3,303.08,472.67,304,472.72Z\",\"transform\":\"translate(-11.09 -87.76)\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_57\",\"data-name\":\"Path 57\",\"d\":\"M326.79,470.46c-.24.23-.52-.24-.52-.58V466a.57.57,0,0,1,.07-.31.47.47,0,0,1,.33-.16c.81-.09,1.48.6,2,1.26a21.119,21.119,0,0,1,2.05,3.41l-4.23-.13\",\"transform\":\"translate(-11.09 -87.76)\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_58\",\"data-name\":\"Path 58\",\"d\":\"M379.58,534.71a26.163,26.163,0,0,1,2.94-2.41c2.77-1.85,6.12-2.58,9.23-3.76s6.27-3.09,7.48-6.19a14.7,14.7,0,0,0,.58-6,6,6,0,0,0-.44-2.47,4.909,4.909,0,0,0-1.58-1.72c-4.22-3.12-9.88-3.37-15.12-3.05a94.771,94.771,0,0,0-33.41,8.34,2.9,2.9,0,0,0-1.4,1,2.86,2.86,0,0,0-.27,1.39,23,23,0,0,0,1.13,8.71c1.38,3.56,4.22,6.43,5.41,10.06.54,1.63.72,3.36,1.19,5a7,7,0,0,0,2.81,4.18c3.95,2.36,7.68-.81,10.42-3.27Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}}),_c('path',{attrs:{\"id\":\"Path_59\",\"data-name\":\"Path 59\",\"d\":\"M327.85,548.56l-5.07-11.06a38.7,38.7,0,0,1-1.92-4.73c-.58-1.93-.86-3.93-1.4-5.87-1.78-6.46-6.27-11.84-8.46-18.17a3.449,3.449,0,0,0-.82-1.53,2.67,2.67,0,0,0-2.23-.4c-3.06.53-5.45,2.86-8.25,4.18-1.3.6-2.7,1-4,1.69a5,5,0,0,0-2.68,3.19c-.31,1.53.45,3,1.09,4.49,2.72,6.14,3.34,13,3.46,19.72.09,4.52-.14,9.37-2.81,13-5.13,7-1.85,17.28.07,25.75.23,1,.5,2.08.66,3.14a28.864,28.864,0,0,1,.23,4c0,4.49-.25,9.12-2.13,13.19a14.759,14.759,0,0,0,6,1.7q8.71,1.11,17.49,1.56a19.062,19.062,0,0,0,5.49-.28,10,10,0,0,0,7.39-9.8c.32,2.77.91,5.78,2.92,7.7s4.94,2.21,7.67,2.36a142.594,142.594,0,0,0,23.1-.65,4,4,0,0,0,1.42-.33c1.48-.74,1.56-2.78,1.44-4.42-.22-3.07-.45-6.14-.82-9.19a37.606,37.606,0,0,1-.48-5.88,33.829,33.829,0,0,1,1-6c1.34-6.24,2.4-12.61,1.95-19a32.065,32.065,0,0,1-.19-4.69c.26-3.53,2.12-6.89,1.77-10.4-1-10.32-1.81-20.91-4.69-30.87-.52-1.78-1.18-3.69-2.73-4.71-2-1.34-4.81-.64-7.1-1.49a17.759,17.759,0,0,1-3.05-1.81,14,14,0,0,0-6.89-2.12c-1.84-.07-3.89.34-5,1.82a7.26,7.26,0,0,0-1,2.73c-1.45,6.1-3.15,12.13-4.85,18.16l-1.63,5.78-4.37,15.52C328,546.49,328.29,547,327.85,548.56Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_60\",\"data-name\":\"Path 60\",\"d\":\"M342.33,400.25,439.06,501.9v8.62H395.93l-72.69-94.87\",\"fill\":\"#f1c0c0\"}}),_c('path',{attrs:{\"id\":\"Path_61\",\"data-name\":\"Path 61\",\"d\":\"M342.33,400.25,439.06,501.9v8.62H395.93l-72.69-94.87\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_62\",\"data-name\":\"Path 62\",\"d\":\"M324.78,414.31l.31.11,71.46,87.48h42.51v8.62H395.93l-72.69-94.87Z\",\"opacity\":\"0.1\"}}),_c('path',{attrs:{\"id\":\"Path_63\",\"data-name\":\"Path 63\",\"d\":\"M347,504.21c-3.5,1.53-7.39,3.49-8.44,7.17a3.59,3.59,0,0,0,3.54,4.81,12,12,0,0,0,4.81-.88l20.65-6.82c.56-.18,1.2-.45,1.34-1a1.72,1.72,0,0,0-.2-1c-.64-1.56-1.27-4.75-2.61-5.84-1.1-.88-3.28-.57-4.61-.55C356.36,500.14,351.55,502.21,347,504.21Z\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#e85c39\"}}),_c('path',{attrs:{\"id\":\"Path_64\",\"data-name\":\"Path 64\",\"d\":\"M365.41,509.3a33.211,33.211,0,0,1,10.25,1.59,18.26,18.26,0,0,1,8.49,5.8,6.36,6.36,0,0,1,1.34,2.62c.2,1,3.46,1.6,2.74,2.28,2.19-.35,1.67.68,3.89.66s4.62-.59,5.95-2.36a7.73,7.73,0,0,0,1.17-4.89,8.33,8.33,0,0,0-.66-3.46c-1-2.1-3.3-3.23-5.42-4.2l-17.86-8.17A11.861,11.861,0,0,0,372,498a12.34,12.34,0,0,0-2.91.07L361,499a12.13,12.13,0,0,1,5.53,10.67\",\"transform\":\"translate(-11.09 -87.76)\",\"fill\":\"#3f3d56\"}})]),_c('rect',{attrs:{\"id\":\"Rectangle_227\",\"data-name\":\"Rectangle 227\",\"width\":\"1111\",\"height\":\"117\",\"transform\":\"translate(439 321)\",\"fill\":\"#fff\"}}),_c('text',{attrs:{\"id\":\"maintanance-2\",\"data-name\":\"maintanance\",\"transform\":\"translate(640 403)\",\"fill\":\"#3f3d56\",\"font-size\":\"60\",\"font-family\":\"roboto-bold, roboto\",\"font-weight\":\"700\",\"opacity\":\"0.9\"}},[_c('tspan',{attrs:{\"x\":\"0\",\"y\":\"0\"}},[_vm._v(_vm._s(_vm.$t('Errors.GameInstanceIsNotPublic')))])])])])])])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class GameIsPrivate extends Vue {}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameIsPrivate.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameIsPrivate.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameIsPrivate.vue?vue&type=template&id=86841d76&scoped=true&\"\nimport script from \"./GameIsPrivate.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameIsPrivate.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameIsPrivate.vue?vue&type=style&index=0&id=86841d76&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"86841d76\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VRow})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { GameType, PlayerInstanceInputModel, RuntimeGameInstanceDto } from '@/services/Api';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport GameApiService from './services/game-api.service';\r\nimport { store } from '@/store/store';\r\nimport GameMenu from './GameMenu.vue';\r\nimport GamePlay from './GamePlay.vue';\r\nimport PlayableStatus from './playableStatus.enum';\r\nimport moment from 'moment';\r\nimport FlipCountdown from 'vue2-flip-countdown';\r\nimport GameThemeService from './services/game-theme.service';\r\nimport { GameTheme } from './models/game-theme';\r\nimport Loader from '@/modules/layout/components/Loader.vue';\r\nimport GameIsPrivate from '@/modules/layout/components/GameIsPrivate.vue';\r\n\r\n@Component({\r\n components: {\r\n GameIsPrivate,\r\n GameMenu,\r\n FlipCountdown,\r\n GamePlay,\r\n Loader\r\n }\r\n})\r\nexport default class GameContainer extends Vue {\r\n public gameInstanceId = this.$route.params.id;\r\n public loading = true;\r\n public playing = false;\r\n public gameType: GameType | null = null;\r\n public gameInstance?: RuntimeGameInstanceDto;\r\n public playerInstanceId?: string;\r\n public professionId?: string;\r\n public oldPlayerModel?: PlayerInstanceInputModel = new PlayerInstanceInputModel();\r\n public playableStatus: PlayableStatus = PlayableStatus.playable;\r\n public gameIsNotPublic = false;\r\n\r\n apiService = new GameApiService();\r\n theme?: GameTheme;\r\n font?: string = '';\r\n mounted() {\r\n this.loadGame();\r\n }\r\n\r\n async loadGame() {\r\n this.loading = true;\r\n if (store.isLoggedIn) {\r\n const result = await this.apiService.getGameInstancePrivate(this.gameInstanceId);\r\n this.gameType = result?.type ?? GameType.Undefined;\r\n this.gameInstance = result;\r\n } else {\r\n const result = await this.apiService.getGameInstancePublic(this.gameInstanceId);\r\n this.gameType = result?.type ?? GameType.Undefined;\r\n this.gameInstance = result;\r\n }\r\n\r\n if (this.gameType === GameType.Undefined) {\r\n this.loading = false;\r\n this.gameIsNotPublic = true;\r\n return;\r\n }\r\n\r\n this.checkIfPlayable();\r\n\r\n this.theme = GameThemeService.getTheme(this.gameType);\r\n this.font = this.theme?.font ?? '';\r\n const bgMenu = new Image();\r\n bgMenu.src = this.theme?.background as string;\r\n bgMenu.onload = () => {\r\n this.loading = false;\r\n };\r\n }\r\n\r\n checkIfPlayable() {\r\n if (this.gameInstance?.playableFrom && moment().isBefore(this.gameInstance?.playableFrom?.local())) {\r\n this.playableStatus = PlayableStatus.tooEarly;\r\n } else if (\r\n !this.playing &&\r\n this.gameInstance?.playableTo &&\r\n moment().isAfter(this.gameInstance?.playableTo?.local())\r\n ) {\r\n this.playableStatus = PlayableStatus.tooLate;\r\n } else {\r\n this.playableStatus = PlayableStatus.playable;\r\n }\r\n }\r\n\r\n get playableFromString() {\r\n return this.gameInstance?.playableFrom?.local().format('YYYY/MM/DD HH:mm:ss');\r\n }\r\n get playableToString() {\r\n return this.gameInstance?.playableTo?.local().format('YYYY/MM/DD HH:mm:ss');\r\n }\r\n\r\n get tooEarly() {\r\n return this.playableStatus === PlayableStatus.tooEarly;\r\n }\r\n get tooLate() {\r\n return this.playableStatus === PlayableStatus.tooLate && !this.playing;\r\n }\r\n\r\n get showCommonGame() {\r\n return this.gameType && this.playableStatus == PlayableStatus.playable;\r\n }\r\n public onStartGame(playerInstanceId: string, playerModel: PlayerInstanceInputModel) {\r\n this.playerInstanceId = playerInstanceId;\r\n this.professionId = playerModel.professionId;\r\n this.oldPlayerModel = playerModel;\r\n this.playing = true;\r\n }\r\n public onRelaunchGame() {\r\n this.playerInstanceId = undefined;\r\n this.playing = false;\r\n this.checkIfPlayable();\r\n }\r\n\r\n delay(ms: number) {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameContainer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameContainer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameContainer.vue?vue&type=template&id=29355012&scoped=true&\"\nimport script from \"./GameContainer.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameContainer.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameContainer.vue?vue&type=style&index=0&id=29355012&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"29355012\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VContainer,VIcon,VRow})\n","import { RouteConfig } from 'vue-router';\r\nimport GameContainer from './GameContainer.vue';\r\nimport { GamePlayRoute } from './game-play-router.enum';\r\n\r\nexport const gamePlayRoutes: Array = [\r\n {\r\n path: '/play=:id',\r\n name: GamePlayRoute.gameContainer,\r\n component: GameContainer,\r\n meta: {\r\n allowAnonymous: true\r\n }\r\n }\r\n];\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(!_vm.loading && _vm.order)?[(_vm.paymentStatus === 'success' && _vm.order.status === 'Completed')?_c('v-alert',{staticClass:\"mx-3 mt-6\",attrs:{\"text\":\"\",\"type\":\"success\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.Details.SuccessMessage'))+\" \")]):_vm._e(),(_vm.paymentStatus === 'error')?_c('v-alert',{staticClass:\"mx-3 mt-6\",attrs:{\"text\":\"\",\"type\":\"error\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.Details.ErrorMessage'))+\" \")]):_vm._e(),_c('edit-card-main',{staticClass:\"payment-details-card\",attrs:{\"title\":_vm.$t('Modules.PaymentsHistory.Details.DetailsHeader')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.PaymentsHistory.Details.DetailsSubHeader')}},[_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.OrderPlan'),\"value\":_vm.order.offerTitle}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.OrderService'),\"value\":_vm.getOrderTitle}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.OrderNumber'),\"value\":_vm.order.orderNumber}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.OrderDate'),\"value\":_vm._f(\"formatDateTime\")(_vm.order.createdAt)}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.Status')}},[_c('v-col',{staticClass:\"d-flex align-center\",attrs:{\"cols\":\"8\",\"lg\":\"3\"}},[_c('PaymentStatus',{attrs:{\"order\":_vm.order,\"loading\":_vm.isCancelling,\"disabled\":_vm.isCancelled},on:{\"cancelOrder\":function($event){return _vm.cancelOrder()}}})],1)],1),(!_vm.order.gameInstanceDeleted)?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.GameInstance')}},[_c('v-col',{staticClass:\"d-flex align-center\",attrs:{\"cols\":\"8\",\"lg\":\"3\"}},[_c('v-btn',{attrs:{\"rounded\":\"\",\"small\":\"\",\"block\":\"\",\"elevation\":\"0\",\"to\":{\n name: _vm.gameInstanceRoute.gameInstanceEdit,\n params: { gameInstanceId: _vm.order.gameInstanceId }\n }}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-pencil\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.Details.GameInstance'))+\" \")],1)],1)],1):_vm._e(),(!(_vm.order.priceInfo.discountValue === 100 || _vm.order.isInvoiceCreated === false))?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.Invoice')}},[_c('v-col',{staticClass:\"d-flex align-center\",attrs:{\"cols\":\"8\",\"lg\":\"3\"}},[_c('v-btn',{staticClass:\"invoice-btn\",attrs:{\"rounded\":\"\",\"small\":\"\",\"block\":\"\",\"elevation\":\"0\",\"disabled\":_vm.order.isInvoiceCreated === false},on:{\"click\":_vm.downloadInvoice}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-download\")]),_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Download'))+\" \")],1)],1)],1):_vm._e(),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.NetPrice'),\"value\":_vm.order.priceInfo.netPrice,\"currency\":_vm.order.priceInfo.currency}}),(_vm.order.priceInfo.discountValue >= 1)?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.Discount'),\"value\":_vm.discountValueFormatted}}):_vm._e(),(_vm.order.priceInfo.discountValue >= 1)?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.NetPriceAfterDiscount'),\"value\":_vm.order.priceInfo.netPriceAfterDiscount,\"currency\":_vm.order.priceInfo.currency}}):_vm._e(),(_vm.order.address.countryCode === 'PL')?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.FinalPrice'),\"currency\":_vm.order.priceInfo.currency}},[_c('div',{staticClass:\"ma-3\"},[_c('span',{staticClass:\"mr-1\"},[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.order.priceInfo.finalPrice,_vm.order.priceInfo.currency)))]),_c('span',{staticClass:\"text--disabled\"},[_vm._v(_vm._s(_vm.finalPriceWithVatInfo))])])]):_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.FinalPrice'),\"value\":_vm.order.priceInfo.finalPrice,\"currency\":_vm.order.priceInfo.currency}})],1)],1),_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.PaymentsHistory.Details.BuyerHeader')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.PaymentsHistory.Details.AddressSubHeader')}},[_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressCountry'),\"value\":_vm._f(\"toCountryName\")(_vm.order.address.countryCode)}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressCompany'),\"value\":_vm.order.companyName}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressZip'),\"value\":_vm.order.address.postCode}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressCity'),\"value\":_vm.order.address.city}}),_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressStreet'),\"value\":_vm.order.address.street}}),(_vm.order.vatNumber)?_c('form-text-info',{attrs:{\"label\":_vm.$t('Modules.PaymentsHistory.Details.AddressVatNumber'),\"value\":_vm.order.vatNumber}}):_vm._e()],1)],1),_c('ConfirmDeleteModal',{attrs:{\"show\":_vm.displayCancelOrderModal,\"customText\":_vm.order && _vm.order.orderNumber,\"translationGroup\":\"ConfirmOrderCancel\",\"deleteButtonLabelKey\":\"Buttons.Confirm\"},on:{\"confirm\":function($event){return _vm.requestOrderCancellation()},\"cancel\":function($event){return _vm.hideConfirmationModal()}}})]:(_vm.loading)?[_c('skeleton-loader-details')]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',[_c('v-col',{attrs:{\"cols\":\"4\",\"lg\":\"2\"}},[_c('v-subheader',[_vm._v(_vm._s(_vm.label))])],1),_c('v-col',{attrs:{\"cols\":\"8\",\"lg\":\"3\"}},[_c('v-text-field',{attrs:{\"value\":_vm.value,\"readonly\":\"\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class PaymentDetail extends Vue {\r\n @Prop() readonly label!: string;\r\n @Prop() readonly value!: string;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentDetail.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentDetail.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentDetail.vue?vue&type=template&id=5875f939&scoped=true&\"\nimport script from \"./PaymentDetail.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentDetail.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5875f939\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSubheader } from 'vuetify/lib/components/VSubheader';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VCol,VRow,VSubheader,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex\"},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"size\":\"20px\",\"color\":_vm.statusIconColor}},[_vm._v(_vm._s(_vm.statusIcon))]),_c('div',{staticClass:\"d-flex flex-column\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.$t((\"PaymentsStatus.\" + (_vm.order.status))))+\" \"),(_vm.canBeCancelled)?_c('v-btn',{staticClass:\"cancel-btn\",attrs:{\"icon\":\"\",\"small\":\"\",\"loading\":_vm.loading,\"disabled\":_vm.disabled},on:{\"click\":_vm.cancelOrder}},[_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.PaymentsHistory.CancelOrderTooltip')),expression:\"$t('Modules.PaymentsHistory.CancelOrderTooltip')\"}],attrs:{\"small\":\"\",\"color\":\"red\"}},[_vm._v(\"mdi-cancel\")])],1):_vm._e()],1),(_vm.order.updatedAt !== undefined && _vm.order.updatedAt !== null)?_c('div',{staticClass:\"text-caption\"},[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(_vm.order.updatedAt))+\" \")]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { OrderListItemDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class PaymentStatus extends Vue {\r\n @Prop() public order!: OrderListItemDto;\r\n @Prop() public loading?: boolean;\r\n @Prop() public disabled?: boolean;\r\n\r\n public statusIcon = 'mdi-help-circle';\r\n public statusIconColor = 'blue-grey';\r\n public canBeCancelled = false;\r\n\r\n public mounted(): void {\r\n switch (this.order.status) {\r\n case 'New':\r\n case 'WaitingForConfirmation':\r\n this.canBeCancelled = true;\r\n break;\r\n case 'Pending':\r\n this.statusIcon = 'mdi-clock';\r\n this.statusIconColor = 'blue';\r\n this.canBeCancelled = true;\r\n break;\r\n case 'Completed':\r\n this.statusIcon = 'mdi-check-circle';\r\n this.statusIconColor = 'green';\r\n break;\r\n case 'Canceled':\r\n this.statusIcon = 'mdi-close-circle';\r\n this.statusIconColor = 'orange';\r\n break;\r\n case 'Rejected':\r\n this.statusIcon = 'mdi-thumb-down';\r\n this.statusIconColor = 'red';\r\n break;\r\n }\r\n }\r\n\r\n public cancelOrder() {\r\n return this.$emit('cancelOrder');\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatus.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentStatus.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentStatus.vue?vue&type=template&id=74009b09&scoped=true&\"\nimport script from \"./PaymentStatus.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentStatus.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PaymentStatus.vue?vue&type=style&index=0&id=74009b09&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"74009b09\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VBtn,VIcon})\n","import { OrderDetailsDto, OrderListItemDto, PaymentsClient } from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class PaymentsApiService extends ApiServiceBase {\r\n private client = new PaymentsClient();\r\n\r\n public async getOrders(): Promise {\r\n try {\r\n const response = await this.client.getOrders();\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getOrder(orderId: string): Promise {\r\n try {\r\n const response = await this.client.getOrder(orderId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async cancelPayment(orderNumber: string | null | undefined): Promise {\r\n try {\r\n await this.client.cancelPayment(orderNumber);\r\n return true;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public async getInvoice(id: string) {\r\n try {\r\n const response = await this.client.getInvoice(id);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport ConfirmDeleteModal from '@/modules/layout/components/ConfirmDeleteModal.vue';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent, getPurchaseEventParams } from '@/plugins/analytics-google';\r\nimport { AnalyticsHelper, FacebookPixelEvent } from '@/plugins/analytics-facebook';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { OrderDetailsDto } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport PaymentDetail from '../components/PaymentDetail.vue';\r\nimport PaymentStatus from '../components/PaymentStatus.vue';\r\nimport PaymentsApiService from '../services/payments-api.service';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { PaymentsHistoryRoute } from '../payments-history-router.enum';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({ components: { PaymentStatus, PaymentDetail, ConfirmDeleteModal } })\r\nexport default class PaymentsHistoryDetails extends Vue {\r\n @Prop() readonly orderId!: string;\r\n\r\n /**\r\n * paymentStatus is set by router (callback from PayU)\r\n * * success - payment succeeded\r\n * * error - payment failed\r\n * * none - default value\r\n */\r\n @Prop({ default: 'none' }) readonly paymentStatus!: 'success' | 'error' | 'none';\r\n\r\n private readonly paymentsApi = new PaymentsApiService();\r\n private loading = true;\r\n private order?: OrderDetailsDto;\r\n private displayCancelOrderModal = false;\r\n public gameInstanceRoute = GameInstanceRoute;\r\n public isCancelling = false;\r\n public isCancelled = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.PaymentsHistory'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: PaymentsHistoryRoute.paymentsHistoryList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Details'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n public async mounted(): Promise {\r\n await this.loadData();\r\n store.setBreadcrumb(this.breadcrumbData);\r\n }\r\n\r\n private async loadData(): Promise {\r\n this.loading = true;\r\n const order = await this.paymentsApi.getOrder(this.orderId);\r\n this.order = order;\r\n\r\n if (this.paymentStatus !== 'none' && order != null) {\r\n if (this.paymentStatus === 'success') {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.purchase, getPurchaseEventParams(order));\r\n // params from: https://developers.facebook.com/docs/facebook-pixel/reference\r\n AnalyticsHelper.trackWithFacebookPixel(FacebookPixelEvent.purchase, AnalyticsHelper.getPaymentOptions(order));\r\n } else {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.purchaseFailed, getPurchaseEventParams(order));\r\n }\r\n }\r\n\r\n this.loading = false;\r\n }\r\n public cancelOrder() {\r\n this.displayCancelOrderModal = true;\r\n }\r\n\r\n public hideConfirmationModal(): void {\r\n this.displayCancelOrderModal = false;\r\n }\r\n\r\n public requestOrderCancellation(): void {\r\n this.displayCancelOrderModal = false;\r\n\r\n if (this.isCancelling) return;\r\n this.isCancelling = true;\r\n\r\n this.paymentsApi.cancelPayment(this.order?.orderNumber).then(isSuccess => {\r\n this.isCancelling = false;\r\n\r\n if (isSuccess) {\r\n NotificationService.success(translate('Modules.PaymentsHistory.CancelSuccessNotification'));\r\n this.isCancelled = true;\r\n this.loadData();\r\n }\r\n });\r\n }\r\n\r\n public async downloadInvoice() {\r\n let response = null;\r\n response = await this.paymentsApi.getInvoice(this.orderId);\r\n\r\n this.downloadFile(response?.value as string, response?.fileName as string);\r\n }\r\n\r\n downloadFile(value?: string, fileName?: string) {\r\n const linkSource = 'data:application/pdf;base64,' + value;\r\n const downloadLink = document.createElement('a');\r\n downloadLink.type = 'application/pdf';\r\n downloadLink.href = linkSource;\r\n downloadLink.download = fileName ?? 'default.pdf';\r\n\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n document.body.removeChild(downloadLink);\r\n }\r\n\r\n get finalPriceWithVatInfo() {\r\n const newPrice = this.$options.filters?.toCurrency(this.order?.priceInfo?.netPriceAfterDiscount, 'PLN');\r\n return `(${newPrice} + 23% VAT)`;\r\n }\r\n get discountValueFormatted() {\r\n return `${this.order?.priceInfo?.discountValue} %`;\r\n }\r\n get getOrderTitle() {\r\n return this.$i18n.locale === 'pl' ? this.order?.titlePl : this.order?.titleEng;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsHistoryDetails.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsHistoryDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsHistoryDetails.vue?vue&type=template&id=68432276&scoped=true&\"\nimport script from \"./PaymentsHistoryDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsHistoryDetails.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"68432276\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VAlert,VBtn,VCol,VContainer,VIcon})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"fill-height payments-list-container\",attrs:{\"fluid\":\"\"}},[(_vm.loading)?_c('div',{staticClass:\"mt-0 loader-container\",attrs:{\"width\":\"100%\"}},[_c('v-skeleton-loader',{attrs:{\"width\":\"100%\",\"type\":\"card-heading\"}}),_c('v-skeleton-loader',{attrs:{\"width\":\"100%\",\"type\":\"list-item-avatar-two-line,list-item-avatar-two-line,list-item-avatar-two-line,list-item-avatar-two-line\"}})],1):_vm._e(),(_vm.orders && _vm.orders.length && !_vm.loading)?_c('v-container',{staticClass:\"fill-height align-content-start\",attrs:{\"fluid\":\"\"}},[_c('list-container',{scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('div',{staticClass:\"header-first-item\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.Order'))+\" \")])]),_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"7\"}},[_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.OrderDate'))+\" \")]),_c('v-col',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.Price'))+\" \")]),_c('v-col',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.Status'))+\" \")]),_c('v-col'),_c('v-col')],1)],1)]},proxy:true},{key:\"items\",fn:function(){return _vm._l((_vm.orders),function(order){return _c('list-item',{key:order.id},[_c('PaymentsHistoryListItem',{attrs:{\"order\":order},on:{\"cancelOrder\":function($event){return _vm.showConfirmationModal(order)},\"downloadInvoice\":function($event){return _vm.downloadInvoice(order)}}})],1)})},proxy:true}],null,false,1941983288)})],1):_vm._e(),(_vm.orders && !_vm.orders.length && !_vm.loading)?_c('empty-list-container'):_vm._e(),_c('ConfirmDeleteModal',{attrs:{\"show\":_vm.displayCancelOrderModal,\"customText\":_vm.orderToCancel && _vm.orderToCancel.orderNumber,\"translationGroup\":\"ConfirmOrderCancel\",\"deleteButtonLabelKey\":\"Buttons.Confirm\"},on:{\"confirm\":function($event){return _vm.requestOrderCancellation()},\"cancel\":function($event){return _vm.hideConfirmationModal()}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"pa-0 ma-0\",attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"pa-0\",attrs:{\"cols\":\"4\"}},[_c('list-item-header',{attrs:{\"title\":((_vm.order.offerTitle) + \" (\" + (_vm.order.gameInstanceTitle) + \")\"),\"subTitle\":_vm.order.orderNumber,\"icon\":'mdi-eye',\"routeTo\":{\n name: _vm.paymentsHistoryRoute.paymentsHistoryDetails,\n params: { orderId: _vm.order.id }\n }}})],1),_c('v-spacer'),_c('v-col',{staticClass:\"text--disabled\",attrs:{\"cols\":\"7\"}},[_c('v-row',{attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',[(_vm.order.createdAt !== undefined && _vm.order.createdAt !== null)?_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(_vm.order.createdAt))+\" \")]):_vm._e()]),_c('v-col',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.order.priceInfo.finalPrice,_vm.order.priceInfo.currency))+\" \")]),_c('v-col',[_c('PaymentStatus',{attrs:{\"order\":_vm.order},on:{\"cancelOrder\":function($event){return _vm.cancelOrder()}}})],1),_c('v-col',{staticClass:\"d-none d-xl-flex\"},[_c('v-btn',{attrs:{\"disabled\":_vm.order.gameInstanceDeleted,\"rounded\":\"\",\"small\":\"\",\"elevation\":\"0\",\"to\":{\n name: _vm.gameInstanceRoute.gameInstanceEdit,\n params: { gameInstanceId: _vm.order.gameInstanceId }\n }}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-pencil\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.GameInstance'))+\" \")],1)],1),_c('v-col',{staticClass:\"d-none d-xl-flex\"},[_c('v-btn',{staticClass:\"invoice-btn\",attrs:{\"rounded\":\"\",\"small\":\"\",\"elevation\":\"0\",\"disabled\":_vm.order.isInvoiceCreated === false || _vm.order.priceInfo.discountValue === 100},on:{\"click\":_vm.downloadInvoice}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-download\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.PaymentsHistory.Invoice'))+\" \")],1)],1),_c('list-menu',[_c('v-list',[_c('v-list-item',{staticClass:\"invoice-list-details-btn\",attrs:{\"to\":{\n name: _vm.paymentsHistoryRoute.paymentsHistoryDetails,\n params: { orderId: _vm.order.id }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-tune\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Buttons.Details')))])],1),_c('v-list-item',{attrs:{\"disabled\":_vm.order.gameInstanceDeleted,\"to\":{\n name: _vm.gameInstanceRoute.gameInstanceEdit,\n params: { gameInstanceId: _vm.order.gameInstanceId }\n }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-gamepad-square\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.PaymentsHistory.GameInstance')))])],1),_c('v-list-item',{staticClass:\"invoice-list-invoice-btn\",attrs:{\"disabled\":_vm.order.isInvoiceCreated === false || _vm.order.priceInfo.discountValue === 100},on:{\"click\":_vm.downloadInvoice}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-file\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.PaymentsHistory.Invoice'))+\" \")])],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { OrderListItemDto } from '@/services/Api';\r\nimport PaymentStatus from './PaymentStatus.vue';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { PaymentsHistoryRoute } from '@/modules/payments-history/payments-history-router.enum';\r\n\r\n@Component({ components: { PaymentStatus } })\r\nexport default class PaymentsHistoryListItem extends Vue {\r\n @Prop() public order!: OrderListItemDto;\r\n\r\n public gameInstanceRoute = GameInstanceRoute;\r\n public paymentsHistoryRoute = PaymentsHistoryRoute;\r\n\r\n public cancelOrder() {\r\n return this.$emit('cancelOrder');\r\n }\r\n\r\n public downloadInvoice() {\r\n return this.$emit('downloadInvoice');\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsHistoryListItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsHistoryListItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsHistoryListItem.vue?vue&type=template&id=933b61cc&scoped=true&\"\nimport script from \"./PaymentsHistoryListItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsHistoryListItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PaymentsHistoryListItem.vue?vue&type=style&index=0&id=933b61cc&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"933b61cc\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VSpacer})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport ConfirmDeleteModal from '@/modules/layout/components/ConfirmDeleteModal.vue';\r\nimport PaymentsHistoryListItem from '@/modules/payments-history/components/PaymentsHistoryListItem.vue';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport NotificationService from '@/services/notification-service';\r\nimport PaymentsApiService from '../services/payments-api.service';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { OrderListItemDto } from '@/services/Api';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({ components: { PaymentsHistoryListItem, ConfirmDeleteModal } })\r\nexport default class PaymentsHistoryList extends Vue {\r\n private readonly paymentsApi = new PaymentsApiService();\r\n\r\n public orders: OrderListItemDto[] = [];\r\n public loading = true;\r\n\r\n public orderToCancel?: OrderListItemDto | null = null;\r\n public displayCancelOrderModal = false;\r\n public isCancelling = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.PaymentsHistory'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n public mounted(): void {\r\n this.reloadList();\r\n store.setBreadcrumb(this.breadcrumbData);\r\n }\r\n\r\n public showConfirmationModal(order: OrderListItemDto): void {\r\n this.orderToCancel = order;\r\n this.displayCancelOrderModal = true;\r\n }\r\n\r\n public hideConfirmationModal(): void {\r\n this.displayCancelOrderModal = false;\r\n this.orderToCancel = null;\r\n }\r\n\r\n public requestOrderCancellation(): void {\r\n this.displayCancelOrderModal = false;\r\n\r\n if (this.isCancelling) return;\r\n this.isCancelling = true;\r\n\r\n this.paymentsApi.cancelPayment(this.orderToCancel?.orderNumber).then(isSuccess => {\r\n this.orderToCancel = null;\r\n this.isCancelling = false;\r\n\r\n if (isSuccess) {\r\n NotificationService.success(translate('Modules.PaymentsHistory.CancelSuccessNotification'));\r\n this.reloadList();\r\n }\r\n });\r\n }\r\n\r\n public async downloadInvoice(order: OrderListItemDto) {\r\n let response = null;\r\n response = await this.paymentsApi.getInvoice(order.id);\r\n\r\n this.downloadFile(response?.value as string, response?.fileName as string);\r\n }\r\n\r\n downloadFile(value?: string, fileName?: string) {\r\n const linkSource = 'data:application/pdf;base64,' + value;\r\n const downloadLink = document.createElement('a');\r\n downloadLink.type = 'application/pdf';\r\n downloadLink.href = linkSource;\r\n downloadLink.download = fileName ?? 'default.pdf';\r\n\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n document.body.removeChild(downloadLink);\r\n }\r\n\r\n private reloadList(): void {\r\n this.loading = true;\r\n this.paymentsApi.getOrders().then(orders => {\r\n this.orders = orders ?? [];\r\n this.loading = false;\r\n });\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsHistoryList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentsHistoryList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsHistoryList.vue?vue&type=template&id=724d51f8&scoped=true&\"\nimport script from \"./PaymentsHistoryList.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsHistoryList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PaymentsHistoryList.vue?vue&type=style&index=0&id=724d51f8&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"724d51f8\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VRow,VSkeletonLoader,VSpacer})\n","import DefaultView from '@/modules/layout/DefaultView.vue';\r\nimport PaymentsHistoryDetails from '@/modules/payments-history/views/PaymentsHistoryDetails.vue';\r\nimport PaymentsHistoryList from '@/modules/payments-history/views/PaymentsHistoryList.vue';\r\nimport { RawLocation, RouteConfig } from 'vue-router';\r\nimport { PaymentsHistoryRoute } from './payments-history-router.enum';\r\n\r\nexport const paymentsHistoryRoutes: Array = [\r\n {\r\n path: '/payments-history',\r\n component: DefaultView,\r\n children: [\r\n {\r\n path: '',\r\n name: PaymentsHistoryRoute.paymentsHistoryList,\r\n component: PaymentsHistoryList,\r\n props: true\r\n },\r\n {\r\n path: ':orderId',\r\n name: PaymentsHistoryRoute.paymentsHistoryDetails,\r\n component: PaymentsHistoryDetails,\r\n props: true\r\n },\r\n {\r\n path: ':orderId/callback',\r\n redirect: from =>\r\n ({\r\n name: PaymentsHistoryRoute.paymentsHistoryDetails,\r\n params: {\r\n orderId: from.params.orderId,\r\n paymentStatus: from.query.error != null ? 'error' : 'success'\r\n },\r\n query: undefined,\r\n replace: true\r\n } as RawLocation)\r\n }\r\n ]\r\n }\r\n];\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"fill-height profession-list-container\",attrs:{\"fluid\":\"\"}},[(_vm.loading)?_c('v-skeleton-loader',{staticClass:\"mx-auto\",attrs:{\"type\":\"list-item@6\"}}):_vm._e(),(_vm.professions && !_vm.professions.length && !_vm.loading)?_c('empty-list-container',{attrs:{\"routeName\":_vm.professionsRoute.createProfession,\"text\":_vm.$t('Modules.Professions.NewProfession')}}):_vm._e(),(_vm.professions && _vm.professions.length && !_vm.loading)?_c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-col',{staticClass:\"text-right\"},[_c('v-btn',{staticClass:\"add-profession\",attrs:{\"to\":{ name: _vm.professionsRoute.createProfession },\"large\":\"\",\"dark\":\"\",\"color\":\"green\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Add'))+\" \")])],1)],1),_c('list-container',{scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('v-col',{staticClass:\"professions-header\",attrs:{\"cols\":\"4\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.Professions'))+\" \")]),_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.GameInstance.List.Headers.Status'))+\" \")]),_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"1\"}})]},proxy:true},{key:\"items\",fn:function(){return _vm._l((_vm.professions),function(item){return _c('list-item',{key:item.id},[_c('ProfessionListItem',{attrs:{\"id\":item.id,\"name\":item.title,\"display-name\":item.displayTitle,\"is-global\":item.isGlobal},on:{\"profession-deleted\":_vm.professionDeleted}})],1)})},proxy:true}],null,false,479943968)})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"pa-0 ma-0\",attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('list-item-header',{staticClass:\"profession-select\",attrs:{\"title\":_vm.displayName,\"subTitle\":_vm.name,\"routeTo\":{ name: _vm.professionsRoute.professionDetails, params: { id: _vm.id } },\"icon\":_vm.isGlobal ? 'mdi-eye' : 'mdi-pencil'}})],1)],1),_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"1\"}},[(_vm.isGlobal)?_c('div',{staticClass:\"text-left pl-0\"},[_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.Professions.Predefined')),expression:\"$t('Modules.Professions.Predefined')\"}],attrs:{\"color\":\"primary\"}},[_vm._v(\"mdi-earth\")])],1):_c('div',{staticClass:\"text-left pl-2\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.Hyphen'))+\" \")])]),_c('v-spacer'),_c('v-col',{staticClass:\"text-right\",attrs:{\"cols\":\"1\"}},[(!_vm.isGlobal)?_c('list-menu',[_c('v-list',{attrs:{\"elevation\":\"1\"}},[_c('v-list-item',{staticClass:\"profession-details-button edit-profession-details-button\",attrs:{\"to\":{ name: _vm.professionsRoute.professionDetails, params: { id: _vm.id } }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-pencil\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Buttons.Edit')))])],1),_c('v-list-item',{staticClass:\"profession-delete-button deleteBtn\",on:{\"click\":function($event){return _vm.showDeleteConfirmation()}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-delete\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Buttons.Delete')))])],1)],1)],1):_c('list-menu',[_c('v-list',{attrs:{\"elevation\":\"1\"}},[_c('v-list-item',{staticClass:\"profession-details-button show-profession-details-button\",attrs:{\"to\":{ name: _vm.professionsRoute.professionDetails, params: { id: _vm.id } }}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-eye\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Buttons.Show')))])],1)],1)],1),_c('ConfirmDeleteModal',{attrs:{\"show\":_vm.deleteDialog,\"customText\":_vm.displayName},on:{\"confirm\":function($event){return _vm.deleteInstance()},\"cancel\":function($event){return _vm.cancelDelete()}}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.loading)?_c('v-skeleton-loader',{staticClass:\"mx-auto\",attrs:{\"type\":\"list-item@6\"}}):_c('ol',_vm._l((_vm.questions),function(question){return _c('li',{key:question.id,staticClass:\"mb-4\"},[_c('div',[_vm._v(_vm._s(question.questionText))]),_c('ul',_vm._l((question.questionAnswers),function(answer){return _c('li',{key:answer.id,class:{ 'font-weight-bold': answer.isCorrect }},[_vm._v(\" \"+_vm._s(answer.answerText)+\" \")])}),0)])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\r\n ProfessionClient,\r\n QuestionClient,\r\n QuestionCreateInputModel,\r\n QuestionDeleteInputModel,\r\n QuestionDto,\r\n QuestionUpdateInputModel\r\n} from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class QuestionApiService extends ApiServiceBase {\r\n private readonly professionClient = new ProfessionClient();\r\n private readonly questionClient = new QuestionClient();\r\n\r\n public async getQuestionsForProfession(professionId: string): Promise {\r\n try {\r\n const questions = await this.professionClient.getQuestionsForProfession(professionId);\r\n\r\n return questions.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async createQuestion(inputModel: QuestionCreateInputModel): Promise {\r\n try {\r\n const created = await this.questionClient.createQuestion(inputModel);\r\n\r\n return created.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async readQuestion(questionId: string): Promise {\r\n try {\r\n const question = await this.questionClient.getQuestion(questionId);\r\n\r\n return question.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async updateQuestion(inputModel: QuestionUpdateInputModel): Promise {\r\n try {\r\n const updated = await this.questionClient.updateQuestion(inputModel);\r\n\r\n return updated.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async deleteQuestion(inputModel: QuestionDeleteInputModel): Promise {\r\n try {\r\n const deleted = await this.questionClient.deleteQuestion(inputModel);\r\n\r\n return deleted.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { QuestionDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport QuestionApiService from '../services/question-api.service';\r\n\r\n@Component\r\nexport default class QuestionList extends Vue {\r\n @Prop() professionId!: string;\r\n\r\n private readonly apiService = new QuestionApiService();\r\n private loading = true;\r\n private questions: Array = [];\r\n\r\n async mounted() {\r\n this.loading = true;\r\n\r\n const result = await this.apiService.getQuestionsForProfession(this.professionId);\r\n\r\n if (result) {\r\n this.questions = result;\r\n }\r\n\r\n this.loading = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuestionList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuestionList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./QuestionList.vue?vue&type=template&id=656bd1c0&\"\nimport script from \"./QuestionList.vue?vue&type=script&lang=ts&\"\nexport * from \"./QuestionList.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\ninstallComponents(component, {VSkeletonLoader})\n","import {\r\n ProfessionClient,\r\n ProfessionDto,\r\n ProfessionCreateInputModel,\r\n ProfessionUpdateInputModel,\r\n ProfessionDeleteInputModel\r\n} from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class ProfessionApiService extends ApiServiceBase {\r\n private readonly client = new ProfessionClient();\r\n\r\n public async getProfessionById(professionId: string): Promise {\r\n try {\r\n const profession = await this.client.getProfession(professionId);\r\n\r\n return profession.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getProfessionsOfCurrentUser(): Promise {\r\n try {\r\n const professions = await this.client.getProfessionsOfCurrentUser();\r\n\r\n return professions.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async createProfession(inputModel: ProfessionCreateInputModel): Promise {\r\n try {\r\n const profession = await this.client.createProfession(inputModel);\r\n\r\n return profession.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async updateProfession(inputModel: ProfessionUpdateInputModel): Promise {\r\n try {\r\n const profession = await this.client.updateProfession(inputModel);\r\n\r\n return profession.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async deleteProfession(inputModel: ProfessionDeleteInputModel): Promise {\r\n try {\r\n const profession = await this.client.deleteProfession(inputModel);\r\n\r\n return profession.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { ProfessionDeleteInputModel } from '@/services/Api';\r\nimport QuestionList from '@/modules/professions/components/QuestionList.vue';\r\nimport ConfirmDeleteModal from '@/modules/layout/components/ConfirmDeleteModal.vue';\r\nimport ProfessionApiService from '../services/profession-api.service';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\n\r\n@Component({\r\n components: { QuestionList, ConfirmDeleteModal }\r\n})\r\nexport default class ProfessionListItem extends Vue {\r\n @Prop() public id!: string;\r\n @Prop() public name!: string;\r\n @Prop() public displayName!: string;\r\n @Prop() public isGlobal!: boolean;\r\n\r\n private readonly apiClient = new ProfessionApiService();\r\n private deleteDialog = false;\r\n private menuIsShowed = false;\r\n private questionDialog = false;\r\n public professionsRoute = ProfessionsRoute;\r\n\r\n private showDeleteConfirmation(): void {\r\n this.deleteDialog = true;\r\n }\r\n\r\n private async deleteInstance(): Promise {\r\n const inputModel = new ProfessionDeleteInputModel({\r\n professionId: this.id\r\n });\r\n\r\n const result = await this.apiClient.deleteProfession(inputModel);\r\n\r\n if (result) {\r\n this.$emit('profession-deleted', this.id);\r\n NotificationService.success(translate('Modules.Professions.Notifications.ProfessionDeleted'));\r\n }\r\n\r\n this.closeMenus();\r\n }\r\n\r\n private cancelDelete(): void {\r\n this.closeMenus();\r\n }\r\n\r\n private closeMenus(): void {\r\n this.questionDialog = false;\r\n this.deleteDialog = false;\r\n this.menuIsShowed = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionListItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionListItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProfessionListItem.vue?vue&type=template&id=66b6247c&scoped=true&\"\nimport script from \"./ProfessionListItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProfessionListItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProfessionListItem.vue?vue&type=style&index=0&id=66b6247c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"66b6247c\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VSpacer})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { ProfessionDto } from '@/services/Api';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport ProfessionListItem from '@/modules/professions/components/ProfessionListItem.vue';\r\nimport ProfessionApiService from '../services/profession-api.service';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: { ProfessionListItem }\r\n})\r\nexport default class ProfessionList extends Vue {\r\n private readonly apiService = new ProfessionApiService();\r\n private loading = true;\r\n private professions: Array = [];\r\n public professionsRoute = ProfessionsRoute;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.ProfessionList'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n private async mounted() {\r\n this.loading = true;\r\n\r\n const result = await this.apiService.getProfessionsOfCurrentUser();\r\n\r\n if (result) {\r\n this.professions = result;\r\n }\r\n\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n\r\n private goToCreateProfession(): void {\r\n this.$router.push({ name: ProfessionsRoute.createProfession });\r\n }\r\n\r\n private professionDeleted(professionId: string): void {\r\n const index = this.professions.findIndex(item => item.id === professionId);\r\n this.professions.splice(index, 1);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProfessionList.vue?vue&type=template&id=fcb98150&scoped=true&\"\nimport script from \"./ProfessionList.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProfessionList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProfessionList.vue?vue&type=style&index=0&id=fcb98150&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fcb98150\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VContainer,VRow,VSkeletonLoader,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-form',{ref:\"form\"},[_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.Professions.NewProfession')}},[_c('edit-card-section',[_c('form-text-input',{staticClass:\"profession-create-name-input\",attrs:{\"rules\":[_vm.rules.required, _vm.rules.maxLength],\"label\":_vm.$t('Modules.Professions.Name')},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}),_c('form-text-input',{staticClass:\"profession-create-displayname-input\",attrs:{\"rules\":[_vm.rules.required, _vm.rules.maxLength],\"label\":_vm.$t('Modules.Professions.DisplayName')},model:{value:(_vm.displayName),callback:function ($$v) {_vm.displayName=$$v},expression:\"displayName\"}}),_c('form-checkbox',{staticClass:\"profession-create-template-checkbox\",attrs:{\"label\":_vm.$t('Modules.Professions.UseTemplate'),\"disabled\":!_vm.areTemplatesAvailable},model:{value:(_vm.copyFromTemplate),callback:function ($$v) {_vm.copyFromTemplate=$$v},expression:\"copyFromTemplate\"}}),_c('form-select',{attrs:{\"items\":_vm.professionTemplates,\"item-text\":\"displayTitle\",\"item-value\":\"id\",\"label\":_vm.templateSelectorLabel,\"return-object\":\"\",\"outlined\":\"\",\"disabled\":!_vm.areTemplatesAvailable || !_vm.copyFromTemplate},model:{value:(_vm.selectedTemplate),callback:function ($$v) {_vm.selectedTemplate=$$v},expression:\"selectedTemplate\"}}),_c('v-row',[_c('v-col',{staticClass:\"text-right\",attrs:{\"offset\":\"2\",\"cols\":\"5\"}},[_c('v-btn',{staticClass:\"submit-btn\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.submit}},[_vm._v(_vm._s(_vm.$t('Buttons.Save')))]),_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\",\"loading\":_vm.loading},on:{\"click\":_vm.cancel}},[_vm._v(_vm._s(_vm.$t('Buttons.Cancel')))])],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport {\r\n ProfessionCreateInputModel,\r\n ProfessionDto,\r\n QuestionAnswerInputModel,\r\n QuestionCreateInputModel,\r\n QuestionDto\r\n} from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { VForm } from '../../layout/components/forms/v-form';\r\nimport ProfessionApiService from '../services/profession-api.service';\r\nimport QuestionApiService from '@/modules/professions/services/question-api.service';\r\nimport FormHelper from '@/modules/layout/components/forms/form-helper';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class CreateProfession extends Vue {\r\n rules = {\r\n required: StringValidators.required,\r\n maxLength: (model: string) => StringValidators.maxLength(model, 50)\r\n };\r\n\r\n public name = 'new-profession';\r\n public displayName = 'New profession';\r\n public areTemplatesAvailable = false;\r\n public copyFromTemplate = false;\r\n public professionTemplates: Array = [];\r\n public selectedTemplate: string | null = null;\r\n public templateSelectorLabel = '';\r\n\r\n private readonly apiService = new ProfessionApiService();\r\n private readonly questionApiService = new QuestionApiService();\r\n private loading = true;\r\n private questions: Array = [];\r\n private dialog = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.ProfessionList'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: ProfessionsRoute.professionList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Create'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n private async mounted() {\r\n this.loading = true;\r\n\r\n this.professionTemplates = await this.fetchProfessionTemplates();\r\n this.selectedTemplate = this.getDefaultSelectedTemplate();\r\n this.areTemplatesAvailable = this.professionTemplates.length > 0;\r\n this.templateSelectorLabel = this.areTemplatesAvailable\r\n ? translate('Modules.Professions.CopyQuestionsFrom')\r\n : translate('Modules.Professions.TemplatesNotAvailable');\r\n\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n\r\n private cancel() {\r\n this.$router.push({ name: ProfessionsRoute.professionList });\r\n }\r\n\r\n private async fetchProfessionTemplates(): Promise {\r\n const result = await this.apiService.getProfessionsOfCurrentUser();\r\n\r\n return result ? result : [];\r\n }\r\n\r\n private getDefaultSelectedTemplate(): string | null {\r\n return this.professionTemplates.length > 0 ? this.professionTemplates[0].id : null;\r\n }\r\n\r\n private async submit() {\r\n const form = this.$refs.form as VForm;\r\n\r\n if (!form.validate()) {\r\n FormHelper.scrollToNextError(this);\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n\r\n const inputModel = new ProfessionCreateInputModel({\r\n name: this.name,\r\n displayName: this.displayName,\r\n copiedProfessionId: this.copyFromTemplate ? this.selectedTemplate ?? null : null\r\n });\r\n\r\n const result = await this.apiService.createProfession(inputModel);\r\n\r\n if (result) {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.addProfession, {\r\n profession_id: result.id,\r\n profession_name: inputModel.name,\r\n template_id: inputModel.copiedProfessionId\r\n });\r\n if (!this.copyFromTemplate) {\r\n this.createDefaultQuestion(result.id);\r\n }\r\n\r\n await this.$router.push({ name: ProfessionsRoute.professionList });\r\n NotificationService.success(translate('Modules.Professions.Notifications.ProfessionCreated'));\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n private async createDefaultQuestion(id: string) {\r\n const inputModel = new QuestionCreateInputModel({\r\n professionId: id,\r\n questionText: i18n.t('Modules.Professions.DefaultQuestion.QuestionText').toString(),\r\n answers: [\r\n new QuestionAnswerInputModel({\r\n answerText: i18n.t('Modules.Professions.DefaultQuestion.Answer1').toString(),\r\n isCorrect: true\r\n }),\r\n new QuestionAnswerInputModel({\r\n answerText: i18n.t('Modules.Professions.DefaultQuestion.Answer2').toString(),\r\n isCorrect: false\r\n }),\r\n new QuestionAnswerInputModel({\r\n answerText: i18n.t('Modules.Professions.DefaultQuestion.Answer3').toString(),\r\n isCorrect: false\r\n })\r\n ]\r\n });\r\n\r\n const result = await this.questionApiService.createQuestion(inputModel);\r\n return result;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreateProfession.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreateProfession.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CreateProfession.vue?vue&type=template&id=46785ad6&\"\nimport script from \"./CreateProfession.vue?vue&type=script&lang=ts&\"\nexport * from \"./CreateProfession.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VContainer,VForm,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[(_vm.loading)?[_c('skeleton-loader-details')]:[_c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-form',{ref:\"form\"},[_c('v-row',{staticClass:\"pl-3\"},[_c('v-col',{staticClass:\"cf-view-title profession-details-title\"},[_vm._v(_vm._s(_vm.$t('Modules.Professions.Headers.ProfessionDetails')))])],1),_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.Professions.Headers.EditProfession')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.Professions.Headers.BasicData')}},[_c('form-text-input',{staticClass:\"profession-details-name-input\",attrs:{\"rules\":[_vm.rules.required, _vm.rules.maxLength],\"label\":_vm.$t('Modules.Professions.Name'),\"disabled\":_vm.isPredefined},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}),_c('form-text-input',{staticClass:\"profession-details-display-name-input\",attrs:{\"rules\":[_vm.rules.required, _vm.rules.maxLength],\"label\":_vm.$t('Modules.Professions.DisplayName'),\"disabled\":_vm.isPredefined},model:{value:(_vm.displayName),callback:function ($$v) {_vm.displayName=$$v},expression:\"displayName\"}}),(!_vm.isPredefined)?_c('v-row',[_c('v-col',{staticClass:\"text-right\",attrs:{\"offset\":\"2\",\"cols\":\"5\"}},[_c('v-btn',{staticClass:\"submit-btn\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.save}},[_vm._v(_vm._s(_vm.$t('Buttons.Save')))]),_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Cancel')))])],1)],1):_vm._e()],1)],1)],1)],1),_c('v-container',{attrs:{\"fluid\":\"\"}},[_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.Professions.Questions')}},[_c('edit-card-section',{attrs:{\"title\":_vm.$t('Modules.Professions.Headers.DefinedQuestions')}},[_c('EditableQuestionList',{attrs:{\"profession-id\":_vm.professionId}})],1)],1)],1)]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[(_vm.loading)?_c('v-skeleton-loader',{staticClass:\"mx-auto\",attrs:{\"type\":\"list-item@6\"}}):_vm._e(),(!_vm.loading)?_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[(_vm.profession && !_vm.isViewOnly)?_c('v-row',[_c('v-col',{staticClass:\"text-right pa-0\"},[_c('v-btn',{staticClass:\"white--text profession-add-question-btn\",attrs:{\"to\":{ name: _vm.professionsRoute.createQuestion },\"large\":\"\",\"color\":\"green\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Add'))+\" \")])],1)],1):_vm._e(),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-list',{staticClass:\"profession-question-list\"},_vm._l((_vm.questions),function(question){return _c('v-list-item',{key:question.id,staticClass:\"pa-0\"},[_c('QuestionListItem',{key:question.id,staticClass:\"profession-question-list-item\",attrs:{\"questionListLength\":_vm.questions.length,\"profession-id\":_vm.professionId,\"data\":question,\"is-read-only\":_vm.isViewOnly},on:{\"question-deleted\":_vm.onQuestionDeleted,\"edit\":_vm.onQuestionEdit}})],1)}),1)],1)],1)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"pa-0 py-2\",attrs:{\"fluid\":\"\"}},[_c('v-row',{staticClass:\"item-container py-1\",attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"8\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"d-inline-flex \"},[_c('v-hover',{scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar hover = ref.hover;\nreturn [_c('p',{staticClass:\"title-card pa-2 ma-0 mb-2\",class:{ questionHover: hover && !_vm.isReadOnly },on:{\"click\":function($event){return _vm.editQuestion()}}},[_vm._v(\" \"+_vm._s(_vm.data.questionText)+\" \"),(!_vm.isReadOnly)?_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"#A8BFC2\"}},[_vm._v(\"mdi-pencil\")]):_vm._e()],1)]}}])})],1)],1),_c('v-row',[_c('v-col',{staticClass:\"py-0 ml-1\",attrs:{\"cols\":\"12\"}},_vm._l((_vm.data.questionAnswers),function(answer){return _c('p',{key:answer.id,staticClass:\"mb-2\"},[_c('v-icon',{staticClass:\"mr-1\",domProps:{\"textContent\":_vm._s(\n (\"\" + (answer.isCorrect ? 'mdi-checkbox-marked-circle-outline' : 'mdi-checkbox-blank-circle-outline'))\n )}}),_vm._v(_vm._s(answer.answerText)+\" \")],1)}),0)],1)],1),_c('v-spacer'),_c('v-col',{staticClass:\"text-right\",attrs:{\"cols\":\"2\"}},[(!_vm.isReadOnly)?_c('v-btn',{staticClass:\"mx-auto\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.editQuestion()}}},[_c('v-icon',{attrs:{\"color\":\"blue\"}},[_vm._v(\"mdi-pencil\")])],1):_vm._e(),(!_vm.isReadOnly)?_c('v-btn',{staticClass:\"mx-auto\",attrs:{\"disabled\":_vm.questionListLength === 1,\"icon\":\"\"},on:{\"click\":function($event){return _vm.showDeleteConfirmation()}}},[_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"mdi-delete\")])],1):_vm._e()],1)],1),_c('ConfirmDeleteModal',{attrs:{\"show\":_vm.deleteDialog},on:{\"confirm\":function($event){return _vm.deleteInstance()},\"cancel\":function($event){return _vm.cancelDelete()}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { translate } from '@/plugins/i18n';\r\nimport ConfirmDeleteModal from '@/modules/layout/components/ConfirmDeleteModal.vue';\r\nimport { QuestionDeleteInputModel, QuestionDto } from '@/services/Api';\r\nimport QuestionApiService from '@/modules/professions/services/question-api.service';\r\n\r\n@Component({\r\n components: { ConfirmDeleteModal }\r\n})\r\nexport default class QuestionListItem extends Vue {\r\n @Prop() public professionId!: string;\r\n @Prop() public data!: QuestionDto;\r\n @Prop() public isReadOnly!: boolean;\r\n @Prop() public questionListLength!: number;\r\n\r\n private readonly apiClient = new QuestionApiService();\r\n private deleteDialog = false;\r\n\r\n private showDeleteConfirmation() {\r\n this.deleteDialog = true;\r\n }\r\n\r\n private editQuestion() {\r\n if (this.isReadOnly) {\r\n return;\r\n }\r\n\r\n this.$emit('edit', this.data);\r\n }\r\n\r\n private async deleteInstance(): Promise {\r\n const inputModel = new QuestionDeleteInputModel({\r\n questionId: this.data.id\r\n });\r\n\r\n const result = await this.apiClient.deleteQuestion(inputModel);\r\n\r\n if (result) {\r\n this.$emit('question-deleted', this.data.id);\r\n NotificationService.success(translate('Modules.Professions.Notifications.QuestionDeleted'));\r\n }\r\n\r\n this.closeDialogs();\r\n }\r\n\r\n private cancelDelete() {\r\n this.closeDialogs();\r\n }\r\n\r\n private closeDialogs() {\r\n this.deleteDialog = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuestionListItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QuestionListItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./QuestionListItem.vue?vue&type=template&id=1c3b9f92&scoped=true&\"\nimport script from \"./QuestionListItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./QuestionListItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./QuestionListItem.vue?vue&type=style&index=0&id=1c3b9f92&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1c3b9f92\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VHover } from 'vuetify/lib/components/VHover';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VContainer,VHover,VIcon,VRow,VSpacer})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { ProfessionDto, QuestionDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport QuestionListItem from '@/modules/professions/components/QuestionListItem.vue';\r\nimport ProfessionApiService from '@/modules/professions/services/profession-api.service';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\n\r\n@Component({\r\n components: { QuestionListItem }\r\n})\r\nexport default class EditableQuestionList extends Vue {\r\n @Prop() public professionId!: string;\r\n private readonly apiService = new ProfessionApiService();\r\n private loading = true;\r\n\r\n private isViewOnly = true;\r\n private profession!: ProfessionDto;\r\n private questions: Array = [];\r\n public professionsRoute = ProfessionsRoute;\r\n\r\n private async mounted() {\r\n this.loading = true;\r\n\r\n const result = await this.apiService.getProfessionById(this.professionId);\r\n\r\n if (result) {\r\n this.profession = result;\r\n this.isViewOnly = result.isGlobal as NonNullable;\r\n this.questions = result.questions as NonNullable;\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n private onQuestionEdit(question: QuestionDto) {\r\n this.$router.push({\r\n name: ProfessionsRoute.editQuestion,\r\n params: {\r\n id: this.professionId,\r\n questionId: question.id\r\n }\r\n });\r\n }\r\n\r\n private onQuestionDeleted(questionId: string) {\r\n const index = this.questions.findIndex(item => item.id === questionId);\r\n this.questions.splice(index, 1);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableQuestionList.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableQuestionList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditableQuestionList.vue?vue&type=template&id=a798e0dc&scoped=true&\"\nimport script from \"./EditableQuestionList.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditableQuestionList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./EditableQuestionList.vue?vue&type=style&index=0&id=a798e0dc&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a798e0dc\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\ninstallComponents(component, {VBtn,VCol,VContainer,VList,VListItem,VRow,VSkeletonLoader})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport EditableQuestionList from '@/modules/professions/components/EditableQuestionList.vue';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { ProfessionUpdateInputModel } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { VForm } from '../../layout/components/forms/v-form';\r\nimport ProfessionApiService from '../services/profession-api.service';\r\nimport FormHelper from '@/modules/layout/components/forms/form-helper';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { PaymentsHistoryRoute } from '@/modules/payments-history/payments-history-router.enum';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: { EditableQuestionList }\r\n})\r\nexport default class ProfessionDetails extends Vue {\r\n rules = {\r\n required: StringValidators.required,\r\n maxLength: (model: string) => StringValidators.maxLength(model, 50)\r\n };\r\n\r\n public name = '';\r\n public displayName = '';\r\n public isPredefined = true;\r\n\r\n private readonly apiService = new ProfessionApiService();\r\n private loading = true;\r\n private professionId!: string;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.ProfessionList'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: ProfessionsRoute }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Details'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n private async mounted() {\r\n this.loading = true;\r\n this.professionId = this.$route.params.id;\r\n\r\n const professionResult = await this.apiService.getProfessionById(this.professionId);\r\n\r\n if (professionResult) {\r\n const professionDetails = professionResult;\r\n\r\n this.name = professionDetails.title as NonNullable;\r\n this.displayName = professionDetails.displayTitle as NonNullable;\r\n this.isPredefined = professionDetails.isGlobal as NonNullable;\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n\r\n private async save() {\r\n const form = this.$refs.form as VForm;\r\n\r\n if (!form.validate()) {\r\n FormHelper.scrollToNextError(this);\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n\r\n const inputModel = new ProfessionUpdateInputModel({\r\n name: this.name,\r\n displayName: this.displayName,\r\n professionId: this.professionId\r\n });\r\n\r\n const result = await this.apiService.updateProfession(inputModel);\r\n\r\n if (result) {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.updateProfession, {\r\n profession_id: inputModel.professionId,\r\n profession_name: inputModel.name\r\n });\r\n\r\n await this.$router.push({ name: ProfessionsRoute.professionList });\r\n NotificationService.success(translate('Modules.Professions.Notifications.ProfessionUpdated'));\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n private cancel() {\r\n this.$router.push({ name: ProfessionsRoute.professionList });\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionDetails.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfessionDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProfessionDetails.vue?vue&type=template&id=44440190&\"\nimport script from \"./ProfessionDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProfessionDetails.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VContainer,VForm,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-form',{ref:\"form\"},[_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.Professions.Headers.NewQuestion')}},[_c('edit-card-section',[_c('div',{staticClass:\"ml-4\"},[_c('v-text-field',{staticClass:\"md-3 profession-create-question-input\",attrs:{\"label\":_vm.$t('Modules.Professions.QuestionText'),\"rules\":[_vm.rules.required, _vm.rules.maxLength120]},model:{value:(_vm.questionText),callback:function ($$v) {_vm.questionText=$$v},expression:\"questionText\"}})],1),_c('div',{staticClass:\"d-flex mb-4 justify-end\"},[_c('v-btn',{staticClass:\"white--text\",attrs:{\"small\":\"\",\"color\":\"green\",\"disabled\":_vm.answers.length >= 5},on:{\"click\":function($event){return _vm.addAnswer()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.AddAnswer'))+\" \")])],1),_c('v-simple-table',{staticClass:\"mb-4\",attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left font-weight-regular\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.Headers.Answers'))+\" \")]),_c('th',{staticClass:\"text-center is-correct-column\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.Headers.IsCorrect'))+\" \")]),_c('th',{staticClass:\"text-center delete-column\"})])]),_c('tbody',_vm._l((_vm.answers),function(answer){return _c('tr',{key:_vm.answers.indexOf(answer)},[_c('td',[_c('v-text-field',{attrs:{\"dense\":\"\",\"single-line\":\"\",\"rules\":[_vm.rules.required, _vm.rules.maxLength120]},model:{value:(answer.answerText),callback:function ($$v) {_vm.$set(answer, \"answerText\", $$v)},expression:\"answer.answerText\"}})],1),_c('td',[_c('v-layout',{staticClass:\"d-flex justify-center\"},[_c('v-simple-checkbox',{staticClass:\"shrink ma-0 pa-0\",attrs:{\"color\":\"blue\",\"dense\":\"\",\"ripple\":false},model:{value:(answer.isCorrect),callback:function ($$v) {_vm.$set(answer, \"isCorrect\", $$v)},expression:\"answer.isCorrect\"}})],1)],1),_c('td',[_c('v-btn',{staticClass:\"mx-0 my-0\",attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.deleteAnswer(answer)}}},[_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"mdi-delete\")])],1)],1)])}),0)]},proxy:true}])}),_c('div',{staticClass:\"text-right\"},[_c('v-btn',{attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.addAnother}},[_vm._v(_vm._s(_vm.$t('Modules.Professions.AddAnotherQuestion')))]),_c('v-btn',{staticClass:\"ml-2 profession-create-question-save-btn\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.createOne}},[_vm._v(_vm._s(_vm.$t('Buttons.Save')))]),_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\",\"loading\":_vm.loading},on:{\"click\":_vm.cancel}},[_vm._v(_vm._s(_vm.$t('Buttons.Cancel')))])],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { QuestionAnswerInputModel, QuestionCreateInputModel } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { VForm } from '../../layout/components/forms/v-form';\r\nimport QuestionApiService from '../services/question-api.service';\r\nimport FormHelper from '@/modules/layout/components/forms/form-helper';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class CreateQuestion extends Vue {\r\n rules = {\r\n required: StringValidators.required,\r\n maxLength120: (model: string) => StringValidators.maxLength(model, 120),\r\n maxLength80: (model: string) => StringValidators.maxLength(model, 80)\r\n };\r\n\r\n public questionText = i18n.t('Modules.Professions.DefaultQuestion.QuestionText').toString();\r\n public answers: QuestionAnswerInputModel[] = [\r\n new QuestionAnswerInputModel({\r\n answerText: i18n.t('Modules.Professions.DefaultQuestion.Answer1').toString(),\r\n isCorrect: true\r\n }),\r\n new QuestionAnswerInputModel({\r\n answerText: i18n.t('Modules.Professions.DefaultQuestion.Answer2').toString(),\r\n isCorrect: false\r\n }),\r\n new QuestionAnswerInputModel({\r\n answerText: i18n.t('Modules.Professions.DefaultQuestion.Answer3').toString(),\r\n isCorrect: false\r\n })\r\n ];\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.ProfessionList'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: ProfessionsRoute.professionList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Create'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n mounted() {\r\n store.setBreadcrumb(this.breadcrumbData);\r\n }\r\n\r\n private readonly apiService = new QuestionApiService();\r\n private loading = false;\r\n\r\n private async createOne() {\r\n const professionId = this.$route.params.id;\r\n const result = await this.submit();\r\n if (result) {\r\n await this.$router.push({ name: ProfessionsRoute.professionDetails, params: { id: professionId } });\r\n NotificationService.success(translate('Modules.Professions.Notifications.QuestionCreated'));\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n private async addAnother() {\r\n const result = await this.submit();\r\n if (result) {\r\n this.resetForm();\r\n NotificationService.success(translate('Modules.Professions.Notifications.QuestionCreated'));\r\n }\r\n\r\n this.loading = false;\r\n }\r\n resetForm() {\r\n this.questionText = '';\r\n this.answers.forEach(a => {\r\n a.answerText = '';\r\n a.isCorrect = false;\r\n });\r\n }\r\n\r\n private async submit() {\r\n const form = this.$refs.form as VForm;\r\n const professionId = this.$route.params.id;\r\n\r\n if (!form.validate()) {\r\n FormHelper.scrollToNextError(this);\r\n return;\r\n }\r\n\r\n if (this.answers.length < 2) {\r\n NotificationService.error(translate('Modules.Professions.Errors.AtLeastTwoAnswersMustBeDefined'));\r\n return;\r\n }\r\n\r\n if (this.answers.length > 5) {\r\n NotificationService.error(translate('Modules.Professions.Errors.LessThanFiveAnswersMustBeDefined'));\r\n return;\r\n }\r\n\r\n if (!this.atLeastOneAnswerIsCorrect()) {\r\n NotificationService.error(translate('Modules.Professions.Errors.AtLeastOneAnswerMustBeMarkedAsCorrect'));\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n\r\n const inputModel = new QuestionCreateInputModel({\r\n professionId,\r\n questionText: this.questionText,\r\n answers: this.answers\r\n });\r\n\r\n const result = await this.apiService.createQuestion(inputModel);\r\n\r\n if (result) {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.addQuestion, {\r\n question_id: result.id,\r\n question_text: inputModel.questionText,\r\n profession_id: inputModel.professionId\r\n });\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private async cancel() {\r\n await this.$router.back();\r\n }\r\n\r\n private addAnswer() {\r\n const newAnswer = new QuestionAnswerInputModel({\r\n answerText: 'New answer',\r\n isCorrect: false\r\n });\r\n\r\n this.answers.push(newAnswer);\r\n }\r\n\r\n private deleteAnswer(answer: QuestionAnswerInputModel) {\r\n const index = this.answers.indexOf(answer);\r\n\r\n this.answers.splice(index, 1);\r\n }\r\n\r\n private atLeastOneAnswerIsCorrect(): boolean {\r\n return this.answers.some(item => item.isCorrect);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreateQuestion.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CreateQuestion.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CreateQuestion.vue?vue&type=template&id=4404d8d6&\"\nimport script from \"./CreateQuestion.vue?vue&type=script&lang=ts&\"\nexport * from \"./CreateQuestion.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CreateQuestion.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VSimpleCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VSimpleTable } from 'vuetify/lib/components/VDataTable';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VContainer,VForm,VIcon,VLayout,VSimpleCheckbox,VSimpleTable,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-form',{ref:\"form\"},[_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.Professions.Headers.EditQuestion')}},[_c('edit-card-section',[_c('div',{staticClass:\"ml-4\"},[_c('v-text-field',{staticClass:\"md-3 profession-edit-question-input\",attrs:{\"label\":_vm.$t('Modules.Professions.QuestionText'),\"rules\":[_vm.rules.required, _vm.rules.maxLength120]},model:{value:(_vm.questionText),callback:function ($$v) {_vm.questionText=$$v},expression:\"questionText\"}})],1),_c('div',{staticClass:\"d-flex mb-4 justify-end\"},[_c('v-btn',{staticClass:\"white--text profession-edit-question-add-answer-btn\",attrs:{\"small\":\"\",\"color\":\"green\",\"disabled\":_vm.answers.length >= 5},on:{\"click\":function($event){return _vm.addAnswer()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.AddAnswer'))+\" \")])],1),_c('v-simple-table',{staticClass:\"mb-4\",attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('thead',[_c('tr',[_c('th',{staticClass:\"text-left\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.Headers.Answers'))+\" \")]),_c('th',{staticClass:\"text-center is-correct-column\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Professions.Headers.IsCorrect'))+\" \")]),_c('th',{staticClass:\"text-center delete-column\"})])]),_c('tbody',{staticClass:\"profession-edit-question-answer-list\"},_vm._l((_vm.answers),function(answer){return _c('tr',{key:_vm.answers.indexOf(answer)},[_c('td',[_c('v-text-field',{staticClass:\"profession-edit-question-answer-input\",attrs:{\"dense\":\"\",\"single-line\":\"\",\"rules\":[_vm.rules.required, _vm.rules.maxLength120]},model:{value:(answer.answerText),callback:function ($$v) {_vm.$set(answer, \"answerText\", $$v)},expression:\"answer.answerText\"}})],1),_c('td',[_c('v-layout',{staticClass:\"d-flex justify-center\"},[_c('v-simple-checkbox',{staticClass:\"shrink ma-0 pa-0 profession-edit-question-answer-checkbox\",attrs:{\"color\":\"blue\",\"dense\":\"\",\"ripple\":false},model:{value:(answer.isCorrect),callback:function ($$v) {_vm.$set(answer, \"isCorrect\", $$v)},expression:\"answer.isCorrect\"}})],1)],1),_c('td',[_c('v-btn',{staticClass:\"mx-0 my-0\",attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.deleteAnswer(answer)}}},[_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"mdi-delete\")])],1)],1)])}),0)]},proxy:true}])}),_c('div',{staticClass:\"text-right\"},[_c('v-btn',{staticClass:\"profession-edit-question-save-btn\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.submit}},[_vm._v(_vm._s(_vm.$t('Buttons.Save')))]),_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\",\"loading\":_vm.loading},on:{\"click\":_vm.cancel}},[_vm._v(_vm._s(_vm.$t('Buttons.Cancel')))])],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { QuestionAnswerInputModel, QuestionUpdateInputModel } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { VForm } from '../../layout/components/forms/v-form';\r\nimport QuestionApiService from '../services/question-api.service';\r\nimport FormHelper from '@/modules/layout/components/forms/form-helper';\r\nimport { ProfessionsRoute } from '@/modules/professions/professions-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class EditQuestion extends Vue {\r\n rules = {\r\n required: StringValidators.required,\r\n maxLength120: (model: string) => StringValidators.maxLength(model, 120)\r\n };\r\n\r\n private questionId!: string;\r\n\r\n public questionText = '';\r\n public answers: QuestionAnswerInputModel[] = [];\r\n\r\n private readonly apiService = new QuestionApiService();\r\n private loading = true;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.ProfessionList'),\r\n exact: true,\r\n disabled: false,\r\n to: { name: ProfessionsRoute.professionList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Edit'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n private async mounted() {\r\n this.loading = true;\r\n this.questionId = this.$route.params.questionId;\r\n\r\n const question = await this.apiService.readQuestion(this.questionId);\r\n\r\n if (question) {\r\n this.questionText = question.questionText as NonNullable;\r\n this.answers = question.questionAnswers as NonNullable;\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n\r\n private async submit() {\r\n const form = this.$refs.form as VForm;\r\n const professionId = this.$route.params.id;\r\n\r\n if (!form.validate()) {\r\n FormHelper.scrollToNextError(this);\r\n return;\r\n }\r\n\r\n if (this.answers.length < 2) {\r\n NotificationService.error(translate('Modules.Professions.Errors.AtLeastTwoAnswersMustBeDefined'));\r\n return;\r\n }\r\n if (this.answers.length > 5) {\r\n NotificationService.error(translate('Modules.Professions.Errors.LessThanFiveAnswersMustBeDefined'));\r\n return;\r\n }\r\n\r\n if (!this.atLeastOneAnswerIsCorrect()) {\r\n NotificationService.error(translate('Modules.Professions.Errors.AtLeastOneAnswerMustBeMarkedAsCorrect'));\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n\r\n const inputModel = new QuestionUpdateInputModel({\r\n questionId: this.questionId,\r\n questionText: this.questionText,\r\n answers: this.answers\r\n });\r\n\r\n const result = await this.apiService.updateQuestion(inputModel);\r\n\r\n if (result) {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.updateQuestion, {\r\n question_id: result.id,\r\n question_text: inputModel.questionText\r\n });\r\n\r\n await this.$router.push({ name: ProfessionsRoute.professionDetails, params: { id: professionId } });\r\n NotificationService.success(translate('Modules.Professions.Notifications.QuestionUpdated'));\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n private async cancel() {\r\n await this.$router.back();\r\n }\r\n\r\n private addAnswer() {\r\n const newAnswer = new QuestionAnswerInputModel({\r\n answerText: 'New answer',\r\n isCorrect: false\r\n });\r\n\r\n this.answers.push(newAnswer);\r\n }\r\n\r\n private deleteAnswer(answer: QuestionAnswerInputModel) {\r\n const index = this.answers.indexOf(answer);\r\n\r\n this.answers.splice(index, 1);\r\n }\r\n\r\n private atLeastOneAnswerIsCorrect(): boolean {\r\n return this.answers.some(item => item.isCorrect);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditQuestion.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditQuestion.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditQuestion.vue?vue&type=template&id=0f4c579e&\"\nimport script from \"./EditQuestion.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditQuestion.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VSimpleCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VSimpleTable } from 'vuetify/lib/components/VDataTable';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VContainer,VForm,VIcon,VLayout,VSimpleCheckbox,VSimpleTable,VTextField})\n","import { RouteConfig } from 'vue-router';\r\nimport ProfessionList from '@/modules/professions/views/ProfessionList.vue';\r\nimport CreateProfession from '@/modules/professions/views/CreateProfession.vue';\r\nimport ProfessionDetails from '@/modules/professions/views/ProfessionDetails.vue';\r\nimport CreateQuestion from '@/modules/professions/views/CreateQuestion.vue';\r\nimport EditQuestion from '@/modules/professions/views/EditQuestion.vue';\r\nimport DefaultView from '@/modules/layout/DefaultView.vue';\r\nimport { ProfessionsRoute } from './professions-router.enum';\r\n\r\nexport const professionsRoutes: Array = [\r\n {\r\n path: '/professions',\r\n component: DefaultView,\r\n children: [\r\n {\r\n path: '',\r\n name: ProfessionsRoute.professionList,\r\n component: ProfessionList\r\n },\r\n {\r\n path: 'create',\r\n name: ProfessionsRoute.createProfession,\r\n component: CreateProfession\r\n },\r\n {\r\n path: ':id',\r\n name: ProfessionsRoute.professionDetails,\r\n component: ProfessionDetails\r\n },\r\n {\r\n path: ':id/create-question',\r\n name: ProfessionsRoute.createQuestion,\r\n component: CreateQuestion\r\n },\r\n {\r\n path: ':id/edit-question/:questionId',\r\n name: ProfessionsRoute.editQuestion,\r\n component: EditQuestion\r\n }\r\n ]\r\n }\r\n];\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(_vm.loading)?_c('v-skeleton-loader',{staticClass:\"mx-auto\",attrs:{\"type\":\"heading, table\"}}):_vm._e(),(!_vm.loading)?_c('v-row',{staticClass:\"mx-2\"},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('GlobalCountsBar',{staticClass:\"game-statistics-global-counts-bar\",attrs:{\"data\":_vm.globalInfo}})],1)],1),_c('v-row',[(_vm.playerListInfos)?_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('StatisticsPlayersTable',{attrs:{\"data\":_vm.playerListInfos,\"exporting\":_vm.exporting,\"loadingCVButton\":_vm.loadingCVButton},on:{\"export-csv\":_vm.exportCsv,\"download-cv\":_vm.downloadCV,\"player-statistic\":_vm.playerstatistic}})],1):_vm._e()],1),_c('v-row',[(_vm.gamesListInfos)?_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('StatisticsGamesTable',{attrs:{\"data\":_vm.gamesListInfos,\"exporting\":_vm.exporting},on:{\"export-csv\":_vm.exportCsv,\"game-tatistics\":_vm.gameStatistics}})],1):_vm._e()],1)],1)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\r\n FileResponse,\r\n InstanceGameStatisticsDto,\r\n InstanceGlobalStatisticsDto,\r\n InstanceGlobalStatisticsForPlayerDto,\r\n InstanceOneGameStatisticDto,\r\n InstancePlayerGameStatisticsDto,\r\n InstancePlayerStatisticsDto,\r\n InstancePlayersStatisticsDto,\r\n PlayerInstanceDetailsDto,\r\n PlayerProfileDto,\r\n PlayerProfileUpdateInputModel,\r\n StatisticsClient\r\n} from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class StatisticApiService extends ApiServiceBase {\r\n private client = new StatisticsClient();\r\n\r\n public async getInstanceGlobalStatistics(gameInstanceId: string): Promise {\r\n try {\r\n const response = await this.client.getInstanceGlobalStatistics(gameInstanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstanceGlobalStatisticsForPlayer(\r\n gameInstanceId: string,\r\n instanceId: string\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstanceGlobalStatisticsForPlayer(gameInstanceId, instanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstancePlayersStatistics(\r\n gameInstanceId: string\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstancePlayersStatistics(gameInstanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstanceGameStatistics(gameInstanceId: string): Promise {\r\n try {\r\n const response = await this.client.getInstanceGameStatistics(gameInstanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async exportGameStatistics(\r\n gameInstanceId: string,\r\n localTimeOffset: number\r\n ): Promise {\r\n try {\r\n const response = await this.client.exportGamesStatistics(gameInstanceId, localTimeOffset);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async exportPlayersStatistics(gameInstanceId: string): Promise {\r\n try {\r\n const response = await this.client.exportPlayersStatistics(gameInstanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstancePlayerStatisticsCSV(\r\n gameInstanceId: string,\r\n email: string\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstancePlayerStatisticsCSV(gameInstanceId, email);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstanceGameStatisticsCSVByPlayer(\r\n gameInstanceId: string,\r\n professionId: string,\r\n email: string,\r\n localTimeOffset: number\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstanceGameStatisticsCSVByPlayer(\r\n gameInstanceId,\r\n professionId,\r\n email,\r\n localTimeOffset\r\n );\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstanceOneGameLogsStatisticsCSV(\r\n gameInstanceId: string,\r\n instanceId: string,\r\n localTimeOffset: number\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstanceOneGameLogsStatisticsCSV(\r\n gameInstanceId,\r\n instanceId,\r\n localTimeOffset\r\n );\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async GetInstanceOneGameAnswerStatisticsCSV(\r\n gameInstanceId: string,\r\n instanceId: string,\r\n localTimeOffset: number\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstanceOneGameAnswerStatisticsCSV(\r\n gameInstanceId,\r\n instanceId,\r\n localTimeOffset\r\n );\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstancePlayersCV(\r\n gameInstanceId: string,\r\n playerEmail: string\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstancePlayersCV(gameInstanceId, playerEmail);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstancePlayersCVById(InstanceId: string): Promise {\r\n try {\r\n const response = await this.client.getInstancePlayersCVById(InstanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstanceGameCV(\r\n gameInstanceId: string,\r\n instanceId: string\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstanceGameCV(gameInstanceId, instanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstanceGameStatisticsByPlayer(\r\n gameInstanceId: string,\r\n playerEmail: string,\r\n playerProfession: string\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstanceGameStatisticsByPlayer(\r\n gameInstanceId,\r\n playerProfession,\r\n playerEmail\r\n );\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstancePlayerStatistics(\r\n gameInstanceId: string,\r\n playerEmail: string\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstancePlayerStatistics(gameInstanceId, playerEmail);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async getInstanceOneGameStatistics(\r\n gameInstanceId: string,\r\n instanceId: string\r\n ): Promise {\r\n try {\r\n const response = await this.client.getInstanceOneGameStatistics(gameInstanceId, instanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async getPlayerProfile(email: string, gameInstanceId: string): Promise {\r\n try {\r\n const response = await this.client.getPlayerProfile(email, gameInstanceId);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n\r\n public async UpdatePlayerProfile(inputModel: PlayerProfileUpdateInputModel): Promise {\r\n try {\r\n const response = await this.client.updatePlayerProfile(inputModel);\r\n return response.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[(_vm.data)?_c('div',{staticClass:\"cards-holder\"},[_c('div',{staticClass:\"card-container xy-center\"},[_c('GlobalCountsBarItem',{staticClass:\"game-statistics-total-mails\",attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.TotalMails'),\"text\":_vm.data.mails,\"icon\":'mdi-email',\"color\":'#45C5F2'}})],1),_c('div',{staticClass:\"card-container xy-center mx-1\"},[_c('GlobalCountsBarItem',{staticClass:\"game-statistics-total-games\",attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.TotalGames'),\"text\":_vm.data.games,\"icon\":'mdi-gamepad-variant',\"color\":'#619BDD'}})],1),_c('div',{staticClass:\"card-container xy-center\"},[_c('GlobalCountsBarItem',{staticClass:\"game-statistics-finished-games\",attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.FinishedGames'),\"text\":_vm.data.finishedGames,\"icon\":'mdi-flag',\"color\":'#7778CD'}})],1),_c('div',{staticClass:\"card-container xy-center mx-1\"},[_c('GlobalCountsBarItem',{attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.PlayedMore'),\"text\":_vm.data.playedMoreThanOnce,\"icon\":'mdi-file-multiple',\"color\":'#875FC0'}})],1),_c('div',{staticClass:\"card-container xy-center\"},[_c('GlobalCountsBarItem',{attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.AvgAnswers'),\"text\":_vm.data.percentOfGoodAnswers,\"icon\":'mdi-calculator-variant',\"color\":'#C1529F'}})],1)]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"global-icon-wrapper ml-10\"},[_c('div',{staticClass:\"global-icon-holder xy-center\",style:({ 'background-color': _vm.color })},[_c('v-icon',{attrs:{\"color\":\"white\"}},[_vm._v(_vm._s(_vm.icon))])],1),_c('div',{staticClass:\"global-icon-texts mx-4\"},[_c('p',{staticClass:\"global-icon-header mb-0\"},[_vm._v(_vm._s(_vm.header))]),_c('p',{staticClass:\"global-icon-content mb-0 game-statistics-global-counts-value\"},[_vm._v(_vm._s(_vm.text))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class GlobalCountsBarItem extends Vue {\r\n @Prop() readonly header!: string;\r\n @Prop() readonly text!: string;\r\n @Prop() readonly icon!: string;\r\n @Prop() readonly color!: string;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalCountsBarItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalCountsBarItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GlobalCountsBarItem.vue?vue&type=template&id=70bdb5a2&scoped=true&\"\nimport script from \"./GlobalCountsBarItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./GlobalCountsBarItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GlobalCountsBarItem.vue?vue&type=style&index=0&id=70bdb5a2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"70bdb5a2\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VIcon})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { InstanceGlobalStatisticsDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport GlobalCountsBarItem from './GlobalCountsBarItem.vue';\r\n\r\n@Component({\r\n components: { GlobalCountsBarItem }\r\n})\r\nexport default class GlobalCountsBar extends Vue {\r\n @Prop() readonly data!: InstanceGlobalStatisticsDto;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalCountsBar.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalCountsBar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GlobalCountsBar.vue?vue&type=template&id=125ac98a&scoped=true&\"\nimport script from \"./GlobalCountsBar.vue?vue&type=script&lang=ts&\"\nexport * from \"./GlobalCountsBar.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GlobalCountsBar.vue?vue&type=style&index=0&id=125ac98a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"125ac98a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\ninstallComponents(component, {VCard})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.PlayerTable.Header'))+\" \"),_c('v-btn',{staticClass:\"text-capitalize justify-start ml-4 game-statistics-players-export-btn\",attrs:{\"small\":\"\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.exporting,\"disabled\":_vm.data.length === 0},on:{\"click\":_vm.emitExportCsv}},[_c('v-icon',[_vm._v(\"mdi-file\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.ExportBtn'))+\" \")],1),_c('v-btn',{staticClass:\"text-capitalize justify-start ml-4 game-statistics-players-export-btn white--text\",attrs:{\"href\":(\"mailto:\" + _vm.selectedEmails + \"?subject=\" + (_vm.$t('Modules.Statistics.PlayerProfile.EmailSubject')) + \"&body=\" + (_vm.$t(\n 'Modules.Statistics.PlayerProfile.EmailBodyGeneric'\n ))),\"small\":\"\",\"color\":\"#1AABBC \",\"loading\":_vm.exporting,\"disabled\":_vm.selected.length === 0}},[_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(\"mdi-email-outline\")]),_vm._v(\" Send message \")],1),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.Statistics.PlayerTable.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),(!_vm.localLoading)?_c('v-data-table',{staticClass:\"v-list__group__header\",attrs:{\"custom-sort\":_vm.customSort,\"sort-by\":['score'],\"sort-desc\":[true],\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"items-per-page\":_vm.tablesSize,\"show-select\":\"\",\"item-key\":\"email\",\"footer-props\":{\n 'items-per-page-text': _vm.$t('dataIterator.rowsPerPageText'),\n 'page-text': _vm.$t('dataIterator.pageText'),\n 'custom-highlight-row': '',\n 'items-per-page-options': [5, 10, 25, { text: this.$t('dataIterator.AllText'), value: -1 }]\n }},on:{\"update:itemsPerPage\":function($event){_vm.tablesSize=$event},\"update:items-per-page\":function($event){_vm.tablesSize=$event}},scopedSlots:_vm._u([{key:\"item.email\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-btn',{staticClass:\"v-lowercase body-2\",attrs:{\"user\":\"\",\"text\":\"\"},on:{\"click\":function($event){return _vm.goToPlayerStatistic(item.email, item.profession)}}},[_vm._v(\" \"+_vm._s(item.email)+\" \"),_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"grey\",\"small\":\"\"}},[_vm._v(\"mdi-pencil\")])],1)]}},{key:\"item.profession\",fn:function(ref){\n var item = ref.item;\nreturn _vm._l((item.playedProfession),function(key,i){return _c('div',{key:i},[_c('v-chip',{staticClass:\"ma-2\",attrs:{\"small\":\"\"}},[_vm._v(\" \"+_vm._s(key)+\" \")])],1)})}},{key:\"item.isFavorite\",fn:function(ref){\n var item = ref.item;\nreturn [(item.isFavorite)?_c('v-img',{attrs:{\"src\":require(\"@/assets/statistics/trophy-gold.svg\"),\"height\":\"50\",\"width\":\"50\"}}):_c('v-img',{attrs:{\"src\":require(\"@/assets/statistics/trophy.svg\"),\"height\":\"50\",\"width\":\"50\"}})]}},{key:\"item.rating\",fn:function(ref){\n var item = ref.item;\nreturn [(item.rating > 0)?_c('div',{staticClass:\"d-flex align-end\"},[_c('span',{staticClass:\"pr-1\"},[_vm._v(_vm._s(_vm._f(\"formatNumber\")(item.rating)))]),_c('v-icon',{attrs:{\"color\":_vm.rating(item.rating).color}},[_vm._v(_vm._s(_vm.rating(item.rating).icon))])],1):_vm._e()]}},{key:\"item.finishedGames\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(item.finishedGames)+\"/\"+_vm._s(item.startedGames)+\" \")]}},{key:\"item.totalTimeForGames\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm.formatDuration(item.totalTimeForGames))+\" \")]}},{key:\"item.averageTimeForGame\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm.formatDuration(item.averageTimeForGame))+\" \")]}},{key:\"item.addedCV\",fn:function(ref){\n var item = ref.item;\nreturn [(item.addedCV)?_c('div',{staticClass:\"pa-1 green rounded-circle d-inline-block\"},[_c('v-icon',{attrs:{\"color\":'white'},domProps:{\"textContent\":_vm._s('mdi-checkbox-marked-circle-outline')}})],1):_c('div',{staticClass:\"pa-1 red rounded-circle d-inline-block\"},[_c('v-icon',{attrs:{\"color\":'white'},domProps:{\"textContent\":_vm._s('mdi-checkbox-blank-circle-outline')}})],1)]}},{key:\"item.button\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"dense\":\"\",\"justify\":\"space-around\",\"align\":\"center\"}},[_c('list-menu',[_c('v-list',[_c('v-list-item',{staticClass:\"statistics-player-list-details-btn\",on:{\"click\":function($event){return _vm.goToPlayerStatistic(item.email, item.profession)}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-text\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.Statistics.ExtendStatistic.Details')))])],1)],1)],1)],1)],1)]}}],null,false,1342590718),model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { InstancePlayersStatisticsDto } from '@/services/Api';\r\nimport { Duration, Moment } from 'moment';\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport StoreTables from '@/store/Models/storetables';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\nimport { store } from '@/store/store';\r\nimport { Data } from 'phaser';\r\n@Component\r\nexport default class StatisticsPlayersTable extends Vue {\r\n @Prop() readonly data!: InstancePlayersStatisticsDto[];\r\n @Prop() readonly exporting!: boolean;\r\n @Prop() readonly loadingCVButton!: boolean;\r\n private selected = [];\r\n private tablesSize = 5;\r\n private localLoading = false;\r\n private search = '';\r\n\r\n goToPlayerStatistic(playerEmail: string, playerProfession: string) {\r\n this.$emit('player-statistic', playerEmail, playerProfession);\r\n }\r\n async mounted() {\r\n this.localLoading = true;\r\n this.tablesSize = store.getTableSize('Players-statistics');\r\n this.localLoading = false;\r\n }\r\n @Watch('tablesSize')\r\n onPropertyChanged(value: number, oldValue: string) {\r\n this.tablesSize = value;\r\n store.setTables('Players-statistics', this.tablesSize);\r\n }\r\n get selectedEmails() {\r\n return this.selected.map((s: InstancePlayersStatisticsDto) => s.email).join(', ');\r\n }\r\n get headers() {\r\n return [\r\n {\r\n text: 'Email',\r\n align: 'left',\r\n value: 'email'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.CountProfession'),\r\n value: 'profession'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.Favorite'),\r\n value: 'isFavorite'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.Rating'),\r\n value: 'rating'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.PercentOfGoodAnswers'),\r\n value: 'percentOfGoodAnswers'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.StartedGames'),\r\n value: 'finishedGames'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.AvgTime'),\r\n value: 'averageTimeForGame',\r\n sort: DataTableSortingHelper.compareByDuration\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.TotalTime'),\r\n value: 'totalTimeForGames',\r\n sort: DataTableSortingHelper.compareByDuration\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.CV'),\r\n value: 'addedCV'\r\n },\r\n { value: 'button', sortable: false }\r\n ];\r\n }\r\n\r\n rating(value: number) {\r\n if (value <= 1) {\r\n return {\r\n icon: 'mdi-star-outline',\r\n color: '#A8BFC2'\r\n };\r\n } else if (value <= 2.5) {\r\n return {\r\n icon: 'mdi-star-outline',\r\n color: '#DCA547'\r\n };\r\n } else if (value <= 4) {\r\n return {\r\n icon: 'mdi-star-half',\r\n color: '#DCA547'\r\n };\r\n } else {\r\n return {\r\n icon: 'mdi-star',\r\n color: '#DCA547'\r\n };\r\n }\r\n }\r\n\r\n customSort(items: any[], index: string[], isDesc: boolean[], locale: any, sorters: any) {\r\n if (index[0] === 'percentOfGoodAnswers') {\r\n items.sort((a: InstancePlayersStatisticsDto, b: InstancePlayersStatisticsDto) => {\r\n const left = parseInt(a.percentOfGoodAnswers ? a.percentOfGoodAnswers.toString().replace(/\\D/g, '') : '');\r\n const right = parseInt(b.percentOfGoodAnswers ? b.percentOfGoodAnswers.toString().replace(/\\D/g, '') : '');\r\n\r\n return DataTableSortingHelper.compareByDefault(left, right, isDesc[0]);\r\n });\r\n } else {\r\n items = DataTableSortingHelper.sortByDefault(items, index, isDesc, locale, sorters);\r\n }\r\n\r\n return items;\r\n }\r\n\r\n formatDuration(item: Duration) {\r\n return moment.utc(item.asMilliseconds()).format('mm:ss');\r\n }\r\n emitExportCsv() {\r\n this.$emit('export-csv', 'playersList');\r\n }\r\n emitDownloadCv(playerEmail: string, playerProfession: string) {\r\n this.$emit('download-cv', playerEmail, playerProfession);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayersTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayersTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsPlayersTable.vue?vue&type=template&id=2d3dc46c&scoped=true&\"\nimport script from \"./StatisticsPlayersTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsPlayersTable.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StatisticsPlayersTable.vue?vue&type=style&index=0&id=2d3dc46c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2d3dc46c\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardTitle,VChip,VCol,VDataTable,VIcon,VImg,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.GamesTable.Title'))+\" \"),_c('v-btn',{staticClass:\"text-capitalize justify-start ml-4 game-statistics-games-export-btn\",attrs:{\"small\":\"\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.exporting,\"disabled\":_vm.data.length === 0},on:{\"click\":_vm.emitExportCsv}},[_c('v-icon',[_vm._v(\"mdi-file\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.ExportBtn'))+\" \")],1),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.Statistics.PlayerTable.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{attrs:{\"loading\":_vm.localLoading,\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"items-per-page\":_vm.tablesSize,\"custom-sort\":_vm.customSort,\"sort-by\":['score'],\"sort-desc\":[true],\"footer-props\":{\n 'items-per-page-text': _vm.$t('dataIterator.rowsPerPageText'),\n 'page-text': _vm.$t('dataIterator.pageText'),\n 'items-per-page-options': [5, 10, 25, { text: this.$t('dataIterator.AllText'), value: -1 }]\n }},on:{\"update:itemsPerPage\":function($event){_vm.tablesSize=$event},\"update:items-per-page\":function($event){_vm.tablesSize=$event}},scopedSlots:_vm._u([{key:\"item.email\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-btn',{staticClass:\"v-lowercase body-2\",attrs:{\"user\":\"\",\"text\":\"\"},on:{\"click\":function($event){return _vm.goToGameStatistic(item.id)}}},[_vm._v(\" \"+_vm._s(item.email)+\" \"),_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"grey\",\"small\":\"\"}},[_vm._v(\"mdi-pencil\")])],1)]}},{key:\"item.profession\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-chip',{attrs:{\"label\":\"\",\"color\":_vm.getColor(item.profession),\"dark\":\"\"}},[_vm._v(\" \"+_vm._s(item.profession)+\" \")])]}},{key:\"item.playingTime\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm.formatDuration(item.playingTime))+\" \")]}},{key:\"item.startingTime\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(item.startingTime))+\" \")]}},{key:\"item.button\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"dense\":\"\",\"justify\":\"space-around\",\"align\":\"center\"}},[_c('list-menu',[_c('v-list',[_c('v-list-item',{on:{\"click\":function($event){return _vm.goToGameStatistic(item.id)}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-text\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.Statistics.ExtendStatistic.Details')))])],1)],1)],1)],1)],1)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { InstanceGameStatisticsDto } from '@/services/Api';\r\nimport { Duration, Moment } from 'moment';\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport UserApiService from '@/modules/statistics/services/statistic-api.service';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class StatisticsPlayersTable extends Vue {\r\n @Prop() readonly data!: InstanceGameStatisticsDto[];\r\n @Prop() readonly exporting!: boolean;\r\n\r\n apiService = new UserApiService();\r\n private tablesSize = 5;\r\n private search = '';\r\n private localLoading = true;\r\n goToGameStatistic(instanceId: string) {\r\n this.$emit('game-tatistics', instanceId);\r\n }\r\n mounted() {\r\n this.localLoading = true;\r\n this.tablesSize = store.getTableSize('Players-games-all-statistics');\r\n this.localLoading = false;\r\n }\r\n @Watch('tablesSize')\r\n onPropertyChanged(value: number, oldValue: string) {\r\n this.tablesSize = value;\r\n store.setTables('Players-games-all-statistics', this.tablesSize);\r\n }\r\n get headers() {\r\n return [\r\n {\r\n text: 'Email',\r\n align: 'left',\r\n value: 'email'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.Profession'),\r\n value: 'profession'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.StartingTime'),\r\n value: 'startingTime'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.PlayingTime'),\r\n value: 'playingTime'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.TotalAnswers'),\r\n value: 'totalAnswers'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.CorrectAnswers'),\r\n value: 'correctAnswers'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.Score'),\r\n value: 'score'\r\n },\r\n {\r\n value: 'button',\r\n sortable: false\r\n }\r\n ];\r\n }\r\n private availableColors = [\r\n 'teal',\r\n 'light-green',\r\n 'purple',\r\n 'blue-grey',\r\n 'brown',\r\n 'yellow',\r\n 'purple',\r\n 'cyan',\r\n 'red',\r\n 'deep-orange',\r\n 'deep-purple',\r\n 'blue',\r\n '#9089E7',\r\n '#E85C39'\r\n ];\r\n takenColors: { [id: string]: string } = {};\r\n\r\n getColor(profession: string) {\r\n if (this.takenColors[profession]) {\r\n return this.takenColors[profession];\r\n } else {\r\n if (profession) {\r\n const color = this.availableColors.pop() ?? 'pink';\r\n this.takenColors[profession] = color;\r\n }\r\n }\r\n return this.takenColors[profession];\r\n }\r\n\r\n formatDuration(item: Duration) {\r\n if (item == null) {\r\n return '00:00';\r\n }\r\n return moment.utc(item.asMilliseconds()).format('mm:ss');\r\n }\r\n\r\n emitExportCsv() {\r\n this.$emit('export-csv', 'gamesList');\r\n }\r\n\r\n customSort(items: any[], index: any, isDesc: boolean[]) {\r\n const isDescending = isDesc[0];\r\n\r\n items.sort((a, b) => {\r\n if (index[0] === 'startingTime') {\r\n if (a[index] == null) {\r\n return isDescending ? -1 : 1;\r\n }\r\n if (b[index] == null) {\r\n return isDescending ? 1 : -1;\r\n }\r\n\r\n const left = a[index] as Moment;\r\n const right = b[index] as Moment;\r\n\r\n const compare = isDescending ? left.isAfter(right) : left.isBefore(right);\r\n\r\n return compare ? -1 : 1;\r\n } else if (index[0] === 'playingTime') {\r\n if (a[index] == undefined || b[index] == undefined) {\r\n return isDescending ? -1 : 1;\r\n }\r\n const left = (a[index] as Duration)?.asSeconds();\r\n const right = (b[index] as Duration)?.asSeconds();\r\n console.log({ left });\r\n console.log({ right });\r\n const compare = isDescending ? left > right : right > left;\r\n\r\n return compare ? -1 : 1;\r\n } else {\r\n if (!isDescending) {\r\n return a[index] < b[index] ? -1 : 1;\r\n } else {\r\n return b[index] < a[index] ? -1 : 1;\r\n }\r\n }\r\n });\r\n return items;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsGamesTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsGamesTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsGamesTable.vue?vue&type=template&id=67188d98&scoped=true&\"\nimport script from \"./StatisticsGamesTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsGamesTable.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StatisticsGamesTable.vue?vue&type=style&index=0&id=67188d98&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"67188d98\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardTitle,VChip,VCol,VDataTable,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VSpacer,VTextField})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport UserApiService from '@/modules/statistics/services/statistic-api.service';\r\nimport { InstanceGameStatisticsDto, InstanceGlobalStatisticsDto, InstancePlayersStatisticsDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport GlobalCountsBar from '../components/GlobalCountsBar.vue';\r\nimport StatisticsPlayersTable from '../components/StatisticsPlayersTable.vue';\r\nimport StatisticsGamesTable from '../components/StatisticsGamesTable.vue';\r\nimport { StatisticsRoute } from '@/modules/statistics/statistics-router.enum';\r\nimport { store } from '@/store/store';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { i18n } from '@/plugins/i18n';\r\n\r\n@Component({\r\n components: {\r\n GlobalCountsBar,\r\n StatisticsPlayersTable,\r\n StatisticsGamesTable\r\n }\r\n})\r\nexport default class StatisticsMain extends Vue {\r\n apiService = new UserApiService();\r\n @Prop() readonly gameInstanceId!: string;\r\n private globalInfo!: InstanceGlobalStatisticsDto;\r\n private playerListInfos!: InstancePlayersStatisticsDto[];\r\n private gamesListInfos!: InstanceGameStatisticsDto[];\r\n private loading = true;\r\n private loadingCVButton = false;\r\n private exporting = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Games'),\r\n to: { name: GameInstanceRoute.gameInstanceList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Statistics', {\r\n gameName: this.globalInfo.gameInstanceTitle\r\n }),\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n this.loading = true;\r\n\r\n const globalStats = await this.apiService.getInstanceGlobalStatistics(this.gameInstanceId);\r\n\r\n this.globalInfo = new InstanceGlobalStatisticsDto(globalStats);\r\n\r\n const playersStats = await this.apiService.getInstancePlayersStatistics(this.gameInstanceId);\r\n if (playersStats) {\r\n this.playerListInfos = playersStats;\r\n }\r\n\r\n const gamesStats = await this.apiService.getInstanceGameStatistics(this.gameInstanceId);\r\n\r\n if (gamesStats) {\r\n this.gamesListInfos = gamesStats;\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n this.loading = false;\r\n }\r\n\r\n playerstatistic(playerEmail: string, playerProfession: string) {\r\n this.$router.push({\r\n name: StatisticsRoute.statisticsPlayer,\r\n params: {\r\n gameInstanceId: this.gameInstanceId,\r\n playerEmail: playerEmail,\r\n playerProfession: playerProfession\r\n }\r\n });\r\n }\r\n gameStatistics(instanceId: string) {\r\n this.$router.push({\r\n name: StatisticsRoute.statisticsGame,\r\n params: {\r\n gameInstanceId: this.gameInstanceId,\r\n instanceId: instanceId\r\n }\r\n });\r\n }\r\n async exportCsv(value: string) {\r\n let result;\r\n this.exporting = true;\r\n if (value === 'gamesList') {\r\n const timeDifference = new Date().getTimezoneOffset();\r\n result = await this.apiService.exportGameStatistics(this.gameInstanceId, -timeDifference);\r\n }\r\n if (value === 'playersList') {\r\n result = await this.apiService.exportPlayersStatistics(this.gameInstanceId);\r\n }\r\n this.downloadBlob(result?.data, result?.fileName);\r\n this.exporting = false;\r\n }\r\n\r\n downloadBlob(blob?: Blob, filename?: string) {\r\n const link = document.createElement('a');\r\n link.href = window.URL.createObjectURL(blob);\r\n link.download = filename ?? 'export.csv';\r\n link.type = 'text/csv';\r\n\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n async downloadCV(playerEmail: string, playerProfession: string) {\r\n this.loadingCVButton = true;\r\n const data = await this.apiService.getInstancePlayersCV(this.gameInstanceId, playerEmail);\r\n if (data) {\r\n if (data.cv) {\r\n this.downloadFile(\r\n data.cv,\r\n 'InGame_CV_' +\r\n playerEmail\r\n .substring(0, playerEmail.indexOf('@'))\r\n .split('.')\r\n .join('')\r\n );\r\n }\r\n }\r\n this.loadingCVButton = false;\r\n }\r\n downloadFile(value: string, fileName?: string) {\r\n const downloadLink = document.createElement('a');\r\n downloadLink.type = 'application/pdf';\r\n downloadLink.href = value;\r\n downloadLink.download = fileName ?? 'default.pdf';\r\n\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n document.body.removeChild(downloadLink);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsMain.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsMain.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsMain.vue?vue&type=template&id=0690d8e4&scoped=true&\"\nimport script from \"./StatisticsMain.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsMain.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0690d8e4\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\ninstallComponents(component, {VCol,VContainer,VRow,VSkeletonLoader})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport UserApiService from '../services/statistic-api.service';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { translate } from '@/plugins/i18n';\r\nimport { StatisticsRoute } from '@/modules/statistics/statistics-router.enum';\r\n\r\n@Component\r\nexport default class DownloadCV extends Vue {\r\n public cvId = this.$route.params.id;\r\n public gameId = this.$route.params.gameid;\r\n public loading = true;\r\n private service = new UserApiService();\r\n\r\n async activate() {\r\n this.loading = true;\r\n\r\n const result = await this.service.getInstancePlayersCVById(this.cvId);\r\n if (result) {\r\n NotificationService.success(translate('Modules.Statistics.PlayerTable.DownloadCV'));\r\n if (result?.cv) {\r\n this.downloadFile(\r\n result?.cv,\r\n 'InGame_CV_' +\r\n result.email\r\n ?.substring(0, result.email.indexOf('@'))\r\n .split('.')\r\n .join('') +\r\n '.pdf'\r\n );\r\n }\r\n } else {\r\n NotificationService.error(translate('Modules.Statistics.PlayerTable.DownloadCVError'));\r\n }\r\n this.$router.push({ name: StatisticsRoute.statisticsMain, params: { gameInstanceId: this.gameId } });\r\n this.loading = false;\r\n }\r\n\r\n downloadFile(value: string, fileName?: string) {\r\n const downloadLink = document.createElement('a');\r\n downloadLink.type = 'application/pdf';\r\n downloadLink.href = value;\r\n downloadLink.download = fileName ?? 'default.pdf';\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n document.body.removeChild(downloadLink);\r\n }\r\n mounted() {\r\n this.activate();\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DownloadCV.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DownloadCV.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DownloadCV.vue?vue&type=template&id=324ea252&scoped=true&\"\nimport script from \"./DownloadCV.vue?vue&type=script&lang=ts&\"\nexport * from \"./DownloadCV.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DownloadCV.vue?vue&type=style&index=0&id=324ea252&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"324ea252\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VContainer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VContainer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(_vm.loading)?_c('v-skeleton-loader',{staticClass:\"mx-auto\",attrs:{\"type\":\"heading, table\"}}):_vm._e(),(!_vm.loading)?_c('v-row',{staticClass:\"mx-2\"},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('StatisticsPlayerOverview',{attrs:{\"data\":_vm.playerProfile},on:{\"updateRating\":_vm.updateRating,\"updateIsFavorite\":_vm.updateIsFavorite,\"updateNotes\":_vm.updateNotes,\"downloadCV\":_vm.downloadCV}})],1)],1),_c('v-row',[(_vm.playerGamesListInfos)?_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('StatisticsPlayerGamesTable',{attrs:{\"data\":_vm.playerGamesListInfos,\"globalPlayerInfo\":_vm.globalPlayerInfo,\"exporting\":_vm.exporting,\"loadingCVButton\":_vm.loadingCVButton},on:{\"export-csv\":_vm.exportCsvGame,\"game-statistics\":_vm.gameStatistics,\"download-cv\":_vm.downloadCVGame}})],1):_vm._e()],1)],1)],1):_vm._e(),_c('v-card-text',[_c('v-row',{staticClass:\"mt-n4\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"11\",\"offset\":\"1\"}},[_c('div',{staticClass:\"text-right\"},[_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.back}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Back')))])],1)])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.ExtendStatistic.Header'))+\" \"),_c('v-btn',{staticClass:\"text-capitalize justify-start ml-4\",attrs:{\"small\":\"\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.exporting,\"disabled\":_vm.data.length === 0},on:{\"click\":_vm.emitExportCsv}},[_c('v-icon',[_vm._v(\"mdi-file\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.ExportBtn'))+\" \")],1),_c('v-spacer')],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"items-per-page\":_vm.tablesSize,\"loading\":_vm.localLoading,\"footer-props\":{\n 'items-per-page-text': _vm.$t('dataIterator.rowsPerPageText'),\n 'page-text': _vm.$t('dataIterator.pageText'),\n 'custom-highlight-row': '',\n 'items-per-page-options': [5, 10, 25, { text: this.$t('dataIterator.AllText'), value: -1 }]\n }},on:{\"update:itemsPerPage\":function($event){_vm.tablesSize=$event},\"update:items-per-page\":function($event){_vm.tablesSize=$event}},scopedSlots:_vm._u([{key:\"item.profession\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-chip',{attrs:{\"label\":\"\",\"color\":_vm.getColor(item.profession),\"dark\":\"\"}},[_vm._v(\" \"+_vm._s(item.profession)+\" \")])]}},{key:\"item.totalTimeForGames\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm.formatDuration(item.totalTimeForGames))+\" \")]}},{key:\"item.averageTimeForGame\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm.formatDuration(item.averageTimeForGame))+\" \")]}},{key:\"item.cv\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-btn',{staticClass:\"game-statistics-player-table-cv-btn\",attrs:{\"loading\":_vm.loadingCVButton,\"rounded\":\"\",\"small\":\"\",\"elevation\":\"0\",\"disabled\":!item.addedCV},on:{\"click\":function($event){return _vm.emitDownloadCv(item.email, item.profession)}}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-chart-bar\")]),_vm._v(_vm._s(_vm.$t('Buttons.Preview')))],1)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { InstancePlayerStatisticsDto } from '@/services/Api';\r\nimport { Duration, Moment } from 'moment';\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class StatisticsPlayerTable extends Vue {\r\n @Prop() readonly data!: InstancePlayerStatisticsDto;\r\n @Prop() readonly exporting!: boolean;\r\n @Prop() readonly loadingCVButton!: boolean;\r\n private tablesSize = 5;\r\n private search = '';\r\n private localLoading = true;\r\n goToPlayerStatistic(playerEmail: string, playerProfession: string) {\r\n this.$emit('player-statistic', playerEmail, playerProfession);\r\n }\r\n mounted() {\r\n this.localLoading = true;\r\n this.tablesSize = store.getTableSize('Player-statistics');\r\n this.localLoading = false;\r\n }\r\n @Watch('tablesSize')\r\n onPropertyChanged(value: number, oldValue: string) {\r\n this.tablesSize = value;\r\n store.setTables('Player-statistics', this.tablesSize);\r\n }\r\n get headers() {\r\n return [\r\n {\r\n text: 'Email',\r\n align: 'left',\r\n value: 'email'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.Profession'),\r\n value: 'profession'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.StartedGames'),\r\n value: 'startedGames'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.FinishedGames'),\r\n value: 'finishedGames'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.AvgTime'),\r\n value: 'averageTimeForGame'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.TotalTime'),\r\n value: 'totalTimeForGames'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.PercentOfGoodAnswers'),\r\n value: 'percentOfGoodAnswers'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.CV'),\r\n value: 'cv'\r\n }\r\n ];\r\n }\r\n\r\n private availableColors = [\r\n 'teal',\r\n 'light-green',\r\n 'purple',\r\n 'blue-grey',\r\n 'brown',\r\n 'yellow',\r\n 'purple',\r\n 'cyan',\r\n 'red',\r\n 'deep-orange',\r\n 'deep-purple',\r\n 'blue',\r\n '#9089E7',\r\n '#E85C39'\r\n ];\r\n takenColors: { [id: string]: string } = {};\r\n\r\n getColor(profession: string) {\r\n if (this.takenColors[profession]) {\r\n return this.takenColors[profession];\r\n } else {\r\n if (profession) {\r\n const color = this.availableColors.pop() ?? 'pink';\r\n this.takenColors[profession] = color;\r\n }\r\n }\r\n return this.takenColors[profession];\r\n }\r\n\r\n formatDuration(item: Duration) {\r\n return moment.utc(item.asMilliseconds()).format('mm:ss');\r\n }\r\n emitExportCsv() {\r\n this.$emit('export-csv');\r\n }\r\n emitDownloadCv(playerEmail: string, playerProfession: string) {\r\n this.$emit('download-cv', playerEmail, playerProfession);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayerTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayerTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsPlayerTable.vue?vue&type=template&id=813b0468&scoped=true&\"\nimport script from \"./StatisticsPlayerTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsPlayerTable.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"813b0468\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCard,VCardTitle,VChip,VDataTable,VIcon,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.GamesTable.Title'))+\" \"),_c('v-btn',{staticClass:\"text-capitalize justify-start ml-4\",attrs:{\"small\":\"\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.exporting,\"disabled\":_vm.data.length === 0},on:{\"click\":_vm.emitExportCsv}},[_c('v-icon',[_vm._v(\"mdi-file\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.ExportBtn'))+\" \")],1)],1),_c('v-row',{staticClass:\"ma-2\"},[_c('v-col',{attrs:{\"cols\":\"10\"}},[_c('GlobalCountsBarForPlayer',{staticClass:\"game-statistics-player-counts-bar\",attrs:{\"data\":_vm.globalPlayerInfo}})],1)],1),_c('v-row',{staticClass:\"ma-2\"},[_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('Modules.Statistics.PlayerTable.Search'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1)],1),_c('v-data-table',{attrs:{\"loading\":_vm.localLoading,\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"items-per-page\":_vm.tablesSize,\"custom-sort\":_vm.customSort,\"sort-by\":['score'],\"sort-desc\":[true],\"footer-props\":{\n 'items-per-page-text': _vm.$t('dataIterator.rowsPerPageText'),\n 'page-text': _vm.$t('dataIterator.pageText'),\n 'items-per-page-options': [5, 10, 25, { text: this.$t('dataIterator.AllText'), value: -1 }]\n }},on:{\"update:itemsPerPage\":function($event){_vm.tablesSize=$event},\"update:items-per-page\":function($event){_vm.tablesSize=$event}},scopedSlots:_vm._u([{key:\"item.email\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-btn',{staticClass:\"v-lowercase body-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.goToGameStatistic(item.id)}}},[_vm._v(\" \"+_vm._s(item.email + ' ')+\" \"),_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"grey\",\"small\":\"\"}},[_vm._v(\"mdi-pencil\")])],1)]}},{key:\"item.profession\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-chip',{attrs:{\"label\":\"\",\"color\":_vm.getColor(item.profession),\"dark\":\"\"}},[_vm._v(\" \"+_vm._s(item.profession)+\" \")])]}},{key:\"item.playingTime\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm.formatDuration(item.playingTime))+\" \")]}},{key:\"item.startingTime\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(item.startingTime))+\" \")]}},{key:\"item.cv\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-btn',{attrs:{\"loading\":_vm.loadingCVButton,\"rounded\":\"\",\"small\":\"\",\"elevation\":\"0\",\"disabled\":!item.addedCv},on:{\"click\":function($event){return _vm.emitDownloadCv(item.id, item.profession)}}},[_c('v-icon',{staticClass:\"mr-2\",attrs:{\"color\":\"blue\",\"small\":\"\"}},[_vm._v(\"mdi-chart-bar\")]),_vm._v(_vm._s(_vm.$t('Buttons.Preview')))],1)]}},{key:\"item.button\",fn:function(ref){\n var item = ref.item;\nreturn [_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-row',{attrs:{\"dense\":\"\",\"justify\":\"space-around\",\"align\":\"center\"}},[_c('list-menu',[_c('v-list',[_c('v-list-item',{on:{\"click\":function($event){return _vm.goToGameStatistic(item.id)}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-text\")])],1),_c('v-list-item-title',[_vm._v(_vm._s(_vm.$t('Modules.Statistics.ExtendStatistic.Details')))])],1)],1)],1)],1)],1)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[(_vm.data)?_c('div',{staticClass:\"cards-holder\"},[_c('div',{staticClass:\"card-container xy-center\"},[_c('GlobalCountsBarItem',{attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.TotalProfessions'),\"text\":_vm.data.selectedProfessions,\"icon\":'mdi-selection-ellipse-arrow-inside',\"color\":'#45C5F2'}})],1),_c('div',{staticClass:\"card-container xy-center mx-1\"},[_c('GlobalCountsBarItem',{attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.TotalGames'),\"text\":_vm.data.games,\"icon\":'mdi-gamepad-variant',\"color\":'#619BDD'}})],1),_c('div',{staticClass:\"card-container xy-center\"},[_c('GlobalCountsBarItem',{attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.FinishedGames'),\"text\":_vm.data.finishedGames,\"icon\":'mdi-flag',\"color\":'#7778CD'}})],1),_c('div',{staticClass:\"card-container xy-center mx-1\"},[_c('GlobalCountsBarItem',{attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.TotalPlayTime'),\"text\":_vm.formatDuration(_vm.data.totalPlayTime),\"icon\":'mdi-timer',\"color\":'#875FC0'}})],1),_c('div',{staticClass:\"card-container xy-center\"},[_c('GlobalCountsBarItem',{attrs:{\"header\":_vm.$t('Modules.Statistics.GlobalBar.AvgAnswers'),\"text\":_vm.data.percentOfGoodAnswers,\"icon\":'mdi-calculator-variant',\"color\":'#C1529F'}})],1)]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { InstanceGlobalStatisticsForPlayerDto } from '@/services/Api';\r\nimport moment from 'moment';\r\nimport { Duration } from 'node_modules/moment/ts3.1-typings/moment';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport GlobalCountsBarItem from './GlobalCountsBarItem.vue';\r\n\r\n@Component({\r\n components: { GlobalCountsBarItem }\r\n})\r\nexport default class GlobalCountsBarForPlayer extends Vue {\r\n @Prop() readonly data!: InstanceGlobalStatisticsForPlayerDto;\r\n formatDuration(item: Duration) {\r\n if (item == null) {\r\n return '00:00';\r\n }\r\n return moment.utc(item.asMilliseconds()).format('mm:ss');\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalCountsBarForPlayer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GlobalCountsBarForPlayer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GlobalCountsBarForPlayer.vue?vue&type=template&id=7b80fa05&scoped=true&\"\nimport script from \"./GlobalCountsBarForPlayer.vue?vue&type=script&lang=ts&\"\nexport * from \"./GlobalCountsBarForPlayer.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GlobalCountsBarForPlayer.vue?vue&type=style&index=0&id=7b80fa05&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7b80fa05\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\ninstallComponents(component, {VCard})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { InstancePlayerGameStatisticsDto } from '@/services/Api';\r\nimport GlobalCountsBarForPlayer from '@/modules/statistics/components/GlobalCountsBarForPlayer.vue';\r\nimport { Duration, Moment } from 'moment';\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport UserApiService from '@/modules/statistics/services/statistic-api.service';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: {\r\n GlobalCountsBarForPlayer\r\n }\r\n})\r\nexport default class StatisticsPlayerGamesTable extends Vue {\r\n @Prop() readonly data!: InstancePlayerGameStatisticsDto[];\r\n @Prop() readonly exporting!: boolean;\r\n @Prop() readonly loadingCVButton!: boolean;\r\n @Prop() readonly globalPlayerInfo!: GlobalCountsBarForPlayer;\r\n private tablesSize = 5;\r\n private search = '';\r\n private localLoading = true;\r\n goToGameStatistic(instanceId: string) {\r\n this.$emit('game-statistics', instanceId);\r\n }\r\n mounted() {\r\n this.localLoading = true;\r\n this.tablesSize = store.getTableSize('Players-Games-statistics');\r\n this.localLoading = false;\r\n }\r\n @Watch('tablesSize')\r\n onPropertyChanged(value: number, oldValue: string) {\r\n this.tablesSize = value;\r\n store.setTables('Players-Games-statistics', this.tablesSize);\r\n }\r\n get headers() {\r\n return [\r\n {\r\n text: 'Email',\r\n align: 'left',\r\n value: 'email'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.Profession'),\r\n value: 'profession'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.StartingTime'),\r\n value: 'startingTime'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.PlayingTime'),\r\n value: 'playingTime'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.TotalAnswers'),\r\n value: 'totalAnswers'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.CorrectAnswers'),\r\n value: 'correctAnswers'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.Score'),\r\n value: 'score'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.PlayerTable.CV'),\r\n value: 'cv'\r\n },\r\n { value: 'button', sortable: false }\r\n ];\r\n }\r\n private availableColors = [\r\n 'teal',\r\n 'light-green',\r\n 'purple',\r\n 'blue-grey',\r\n 'brown',\r\n 'yellow',\r\n 'purple',\r\n 'cyan',\r\n 'red',\r\n 'deep-orange',\r\n 'deep-purple',\r\n 'blue',\r\n '#9089E7',\r\n '#E85C39'\r\n ];\r\n takenColors: { [id: string]: string } = {};\r\n\r\n getColor(profession: string) {\r\n if (this.takenColors[profession]) {\r\n return this.takenColors[profession];\r\n } else {\r\n if (profession) {\r\n const color = this.availableColors.pop() ?? 'pink';\r\n this.takenColors[profession] = color;\r\n }\r\n }\r\n return this.takenColors[profession];\r\n }\r\n\r\n formatDuration(item: Duration) {\r\n if (item == null) {\r\n return '00:00';\r\n }\r\n return moment.utc(item.asMilliseconds()).format('mm:ss');\r\n }\r\n\r\n emitExportCsv() {\r\n this.$emit('export-csv');\r\n }\r\n\r\n customSort(items: any[], index: any, isDesc: boolean[]) {\r\n const isDescending = isDesc[0];\r\n\r\n items.sort((a, b) => {\r\n if (index[0] === 'startingTime') {\r\n if (a[index] == null) {\r\n return isDescending ? -1 : 1;\r\n }\r\n if (b[index] == null) {\r\n return isDescending ? 1 : -1;\r\n }\r\n\r\n const left = a[index] as Moment;\r\n const right = b[index] as Moment;\r\n\r\n const compare = isDescending ? left.isAfter(right) : left.isBefore(right);\r\n\r\n return compare ? -1 : 1;\r\n } else if (index[0] === 'playingTime') {\r\n if (a[index] == undefined || b[index] == undefined) {\r\n return isDescending ? -1 : 1;\r\n }\r\n const left = (a[index] as Duration)?.asSeconds();\r\n const right = (b[index] as Duration)?.asSeconds();\r\n console.log({ left });\r\n console.log({ right });\r\n const compare = isDescending ? left > right : right > left;\r\n\r\n return compare ? -1 : 1;\r\n } else {\r\n if (!isDescending) {\r\n return a[index] < b[index] ? -1 : 1;\r\n } else {\r\n return b[index] < a[index] ? -1 : 1;\r\n }\r\n }\r\n });\r\n return items;\r\n }\r\n emitDownloadCv(instanceId: string, playerProfession: string) {\r\n this.$emit('download-cv', instanceId, playerProfession);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayerGamesTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayerGamesTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsPlayerGamesTable.vue?vue&type=template&id=74b97a34&scoped=true&\"\nimport script from \"./StatisticsPlayerGamesTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsPlayerGamesTable.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StatisticsPlayerGamesTable.vue?vue&type=style&index=0&id=74b97a34&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"74b97a34\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardTitle,VChip,VCol,VDataTable,VIcon,VList,VListItem,VListItemIcon,VListItemTitle,VRow,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"px-9 py-6\",attrs:{\"elevation\":\"3\"}},[_c('v-card-title',{staticClass:\"py-1 card-header\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.PlayerProfile.Profile'))+\" \")]),_c('v-divider'),_c('div',{staticClass:\"d-flex flex-wrap mt-12\"},[_c('div',{staticClass:\"ml-2\"},[_c('v-avatar',{staticClass:\"avatar\",attrs:{\"size\":\"220\",\"color\":_vm.avatarColor}},[_c('v-icon',{attrs:{\"size\":\"100\",\"color\":_vm.avatarIconColor}},[_vm._v(\"mdi-account-outline\")])],1),_c('span',{on:{\"click\":_vm.updateIsFavorite}},[_c('v-hover',{staticClass:\"trophy\",on:{\"click\":_vm.updateIsFavorite},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar hover = ref.hover;\nreturn [(_vm.data.isFavorite)?_c('v-img',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.Statistics.PlayerProfile.RemoveFavorite')),expression:\"$t('Modules.Statistics.PlayerProfile.RemoveFavorite')\"}],class:{ 'on-hover': hover },attrs:{\"src\":require(\"@/assets/statistics/trophy-gold.svg\"),\"height\":\"70\",\"width\":\"70\"}}):_c('v-img',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.Statistics.PlayerProfile.AddFavorite')),expression:\"$t('Modules.Statistics.PlayerProfile.AddFavorite')\"}],class:{ 'on-hover': hover },attrs:{\"src\":require(\"@/assets/statistics/trophy.svg\"),\"height\":\"70\",\"width\":\"70\"}})]}}])})],1)],1),_c('div',{staticClass:\"mt-6 ml-16\"},[_c('v-tooltip',{attrs:{\"right\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('span',_vm._g(_vm._b({staticClass:\"profile-nicknames mt-2 d-inline-block text-truncate profile-overview-field\"},'span',attrs,false),on),[_vm._v(_vm._s(_vm.nicknames))])]}}])},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.nicknamesTooltip)}},[_vm._v(_vm._s(_vm.nicknamesTooltip))])]),_c('div',{staticClass:\"profile-email profile-overview-field mt-1 \"},[_vm._v(\" \"+_vm._s(_vm.data.email)+\" \"),_c('v-btn',{attrs:{\"small\":\"\",\"icon\":\"\",\"href\":_vm.emailMessage}},[_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"#1AABBC\"}},[_vm._v(\" mdi-email-outline \")])],1)],1),_c('div',{staticClass:\"mt-3\"},[_c('v-tooltip',{attrs:{\"right\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('span',_vm._g(_vm._b({staticClass:\"profile-profession profile-overview-field mt-3\"},'span',attrs,false),on),[_vm._v(_vm._s(_vm.professions))])]}}])},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.professionsTooltip)}},[_vm._v(_vm._s(_vm.professionsTooltip))])])],1),_c('div',{staticClass:\"mt-4 d-flex profile-overview-field align-end\"},[_c('div',{staticClass:\"profile-rating\"},[_vm._v(_vm._s(_vm._f(\"formatNumber\")(_vm.data.rating)))]),_c('v-rating',{staticClass:\"ml-2\",attrs:{\"empty-icon\":\"mdi-star-outline\",\"full-icon\":\"mdi-star\",\"half-icon\":\"mdi-star-half\",\"background-color\":\"#DCA547\",\"color\":\"#DCA547\",\"length\":\"5\",\"size\":\"32\",\"dense\":\"\",\"half-increments\":\"\",\"hover\":\"\"},on:{\"input\":function($event){return _vm.updateRating($event)}},model:{value:(_vm.data.rating),callback:function ($$v) {_vm.$set(_vm.data, \"rating\", $$v)},expression:\"data.rating\"}})],1),_c('v-btn',{staticClass:\"mt-4 white--text game-statistics-player-table-cv-btn\",attrs:{\"color\":\"#1AABBC\",\"disabled\":!_vm.data.hasCV},on:{\"click\":function($event){return _vm.downloadCV(_vm.data.email)}}},[_c('v-icon',{staticClass:\"mr-3\"},[_vm._v(\"mdi-download-outline\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.PlayerProfile.PreviewCV')))],1)],1)]),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('p',{staticClass:\"profile-notes-header ma-2\"},[_vm._v(_vm._s(_vm.$t('Modules.Statistics.PlayerProfile.Notes')))]),_c('v-divider'),(_vm.showEditor)?_c('div',{staticClass:\"d-flex flex-column ml-2 mt-4\"},[_c('vue-editor',{attrs:{\"editorToolbar\":_vm.customToolbar},model:{value:(_vm.notes),callback:function ($$v) {_vm.notes=$$v},expression:\"notes\"}}),_c('div',{staticClass:\"justify-right mt-2\"},[_c('v-btn',{staticClass:\"ma-1 px-6\",attrs:{\"dark\":\"\",\"color\":\"#1AABBC\"},on:{\"click\":_vm.updateNotes}},[_vm._v(_vm._s(_vm.$t('Modules.Statistics.PlayerProfile.SaveNote')))]),_c('v-btn',{staticClass:\"ma-1 px-6 btn-cancel\",attrs:{\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.cancelNotes}},[_vm._v(_vm._s(_vm.$t('Buttons.Cancel')))])],1)],1):_c('div',{staticClass:\"profile-notes ma-2\"},[_c('v-row',{staticClass:\"ma-0\"},[_c('v-col',{staticClass:\"ma-3 pa-0\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.expanded),expression:\"!expanded\"}],ref:\"notes\",staticClass:\"profile-notes-small profile-notes-content\",domProps:{\"innerHTML\":_vm._s(_vm.notes)}}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.expanded),expression:\"expanded\"}],staticClass:\"profile-notes-content\",domProps:{\"innerHTML\":_vm._s(_vm.notes)}}),(!_vm.notes)?_c('div',{staticClass:\"profile-notes-empty\",on:{\"click\":function($event){_vm.showEditor = true}}},[_c('p',{staticClass:\"ma-0\"},[_vm._v(_vm._s(_vm.$t('Modules.Statistics.PlayerProfile.AddNote')))])]):_vm._e()]),_c('v-col',{staticClass:\"ma-1 pa-0\",attrs:{\"cols\":\"auto\"}},[(_vm.notes)?_c('div',{staticClass:\"float-right\"},[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.showEditor = true}}},[_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.Statistics.PlayerProfile.EditNote')),expression:\"$t('Modules.Statistics.PlayerProfile.EditNote')\"}]},[_vm._v(\"mdi-pencil\")])],1),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.showDeleteModal = true}}},[_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('Modules.Statistics.PlayerProfile.DeleteNote')),expression:\"$t('Modules.Statistics.PlayerProfile.DeleteNote')\"}]},[_vm._v(\"mdi-delete\")])],1)],1):_vm._e()])],1)],1),(!_vm.showEditor && _vm.notes && _vm.showExpandButton)?_c('div',{staticClass:\"float-right mr-3\"},[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.expanded = !_vm.expanded}}},[(_vm.expanded)?_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\" mdi-chevron-up\")]):_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\" mdi-chevron-down\")])],1)],1):_vm._e()],1)],1),_c('ConfirmDeleteModal',{attrs:{\"show\":_vm.showDeleteModal,\"customText\":_vm.$t('Modules.Statistics.PlayerProfile.Note')},on:{\"confirm\":_vm.clearNotes,\"cancel\":function($event){_vm.showDeleteModal = false}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport { PlayerProfileDto } from '@/services/Api';\r\nimport { VueEditor } from 'vue2-editor';\r\nimport ConfirmDeleteModal from '@/modules/layout/components/ConfirmDeleteModal.vue';\r\n\r\n@Component({\r\n components: {\r\n VueEditor,\r\n ConfirmDeleteModal\r\n }\r\n})\r\nexport default class StatisticsPlayerOverview extends Vue {\r\n @Prop() readonly data!: PlayerProfileDto;\r\n\r\n public notes = this.data.notes;\r\n public showEditor = false;\r\n public showDeleteModal = false;\r\n public expanded = false;\r\n public showExpandButton = true;\r\n\r\n customToolbar = [\r\n [{ header: [false, 1, 2, 3, 4, 5, 6] }],\r\n ['bold', 'italic', 'underline', 'strike'], // toggled buttons\r\n ['blockquote'],\r\n [{ list: 'ordered' }, { list: 'bullet' }],\r\n [{ indent: '-1' }, { indent: '+1' }], // outdent/indent\r\n [{ color: [] }, { background: [] }], // dropdown with defaults from theme\r\n ['link', 'image'],\r\n ['clean'] // remove formatting button\r\n ];\r\n\r\n get nicknames() {\r\n return this.data.nicknames?.join(', ');\r\n }\r\n get professions() {\r\n return this.data.professions?.join(', ');\r\n }\r\n get nicknamesTooltip() {\r\n return this.data.nicknames?.join('
');\r\n }\r\n get professionsTooltip() {\r\n return this.data.professions?.join('
');\r\n }\r\n get emailMessage() {\r\n return `mailto:${this.data.email}?subject=${this.$t('Modules.Statistics.PlayerProfile.EmailSubject')}&body=${\r\n this.emailMessageBody\r\n }`;\r\n }\r\n get emailMessageBody() {\r\n return this.$t('Modules.Statistics.PlayerProfile.EmailBody', {\r\n name: this.data.nicknames ? this.data.nicknames[0] : ''\r\n });\r\n }\r\n get avatarColor() {\r\n return this.data.isFavorite ? '#F7EBD6' : '#F1F5F5';\r\n }\r\n get avatarIconColor() {\r\n return this.data.isFavorite ? '#cfcbc3' : '#C7CACA';\r\n }\r\n\r\n mounted() {\r\n this.$nextTick(() => this.isTextClamped());\r\n }\r\n\r\n updated() {\r\n this.$nextTick(() => this.isTextClamped());\r\n }\r\n\r\n clearNotes() {\r\n this.notes = '';\r\n this.showDeleteModal = false;\r\n this.$emit('updateNotes', this.notes);\r\n }\r\n\r\n downloadCV(email: string) {\r\n this.$emit('downloadCV', email);\r\n }\r\n\r\n updateRating(newRating: number) {\r\n this.$emit('updateRating', newRating);\r\n }\r\n\r\n updateIsFavorite() {\r\n this.$emit('updateIsFavorite');\r\n }\r\n\r\n cancelNotes() {\r\n this.showEditor = false;\r\n this.notes = this.data.notes;\r\n }\r\n\r\n updateNotes() {\r\n this.showEditor = false;\r\n this.$emit('updateNotes', this.notes);\r\n }\r\n\r\n async isTextClamped() {\r\n const element: any = this.$refs.notes;\r\n if (!element || this.expanded) return true;\r\n\r\n this.showExpandButton = element.clientHeight < element.scrollHeight;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayerOverview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayerOverview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsPlayerOverview.vue?vue&type=template&id=2bb9800e&scoped=true&\"\nimport script from \"./StatisticsPlayerOverview.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsPlayerOverview.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StatisticsPlayerOverview.vue?vue&type=style&index=0&id=2bb9800e&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2bb9800e\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VHover } from 'vuetify/lib/components/VHover';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VRating } from 'vuetify/lib/components/VRating';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VAvatar,VBtn,VCard,VCardTitle,VCol,VDivider,VHover,VIcon,VImg,VRating,VRow,VTooltip})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport UserApiService from '@/modules/statistics/services/statistic-api.service';\r\nimport {\r\n InstancePlayerGameStatisticsDto,\r\n InstancePlayerStatisticsDto,\r\n PlayerProfileDto,\r\n PlayerProfileUpdateInputModel\r\n} from '@/services/Api';\r\nimport { InstanceGlobalStatisticsForPlayerDto } from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport StatisticsPlayerTable from '../components/StatisticsPlayerTable.vue';\r\nimport StatisticsPlayerGamesTable from '../components/StatisticsPlayerGamesTable.vue';\r\nimport StatisticsPlayerOverview from '../components/StatisticsPlayerOverview.vue';\r\nimport { StatisticsRoute } from '@/modules/statistics/statistics-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { store } from '@/store/store';\r\nimport { i18n } from '@/plugins/i18n';\r\n\r\n@Component({\r\n components: {\r\n StatisticsPlayerTable,\r\n StatisticsPlayerGamesTable,\r\n StatisticsPlayerOverview\r\n }\r\n})\r\nexport default class StatisticsPlayer extends Vue {\r\n apiService = new UserApiService();\r\n @Prop() readonly gameInstanceId!: string;\r\n @Prop() readonly playerEmail!: string;\r\n @Prop() readonly playerProfession!: string;\r\n private globalPlayerInfo!: InstanceGlobalStatisticsForPlayerDto;\r\n private playerGamesListInfos!: InstancePlayerGameStatisticsDto[];\r\n private playerListInfos!: InstancePlayerStatisticsDto[];\r\n private playerProfile: PlayerProfileDto = new PlayerProfileDto();\r\n private loading = true;\r\n private loadingCVButton = false;\r\n private exporting = false;\r\n\r\n get profileUpdateModel(): PlayerProfileUpdateInputModel {\r\n return new PlayerProfileUpdateInputModel({\r\n gameInstanceId: this.gameInstanceId,\r\n email: this.playerProfile.email ?? '',\r\n rating: this.playerProfile.rating,\r\n isFavorite: this.playerProfile.isFavorite,\r\n notes: this.playerProfile.notes\r\n });\r\n }\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Games'),\r\n exact: true,\r\n to: { name: GameInstanceRoute.gameInstanceList }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Statistics', { gameName: this.playerProfile.gameInstanceTitle }),\r\n exact: true,\r\n to: { name: StatisticsRoute.statisticsMain, params: { gameInstanceId: this.gameInstanceId } }\r\n },\r\n { text: i18n.t('Layout.Toolbar.Routes.PlayerStatistics', { playerEmail: this.playerEmail }), disabled: true }\r\n ];\r\n }\r\n\r\n gameStatistics(instanceId: string) {\r\n this.$router.push({\r\n name: StatisticsRoute.statisticsGame,\r\n params: {\r\n gameInstanceId: this.gameInstanceId,\r\n instanceId: instanceId\r\n }\r\n });\r\n }\r\n back() {\r\n this.$router.push({\r\n name: StatisticsRoute.statisticsMain,\r\n params: {\r\n gameInstanceId: this.gameInstanceId\r\n }\r\n });\r\n }\r\n async mounted() {\r\n this.loading = true;\r\n\r\n const GamesListInfos = await this.apiService.getInstanceGameStatisticsByPlayer(\r\n this.gameInstanceId,\r\n this.playerEmail,\r\n this.playerProfession\r\n );\r\n if (GamesListInfos) {\r\n this.playerGamesListInfos = GamesListInfos;\r\n }\r\n const playersStats = await this.apiService.getInstancePlayerStatistics(this.gameInstanceId, this.playerEmail);\r\n if (playersStats) {\r\n this.playerListInfos = playersStats;\r\n }\r\n const globalInfos = await this.apiService.getInstanceGlobalStatisticsForPlayer(\r\n this.gameInstanceId,\r\n this.playerEmail\r\n );\r\n if (globalInfos) {\r\n this.globalPlayerInfo = globalInfos;\r\n }\r\n const playerProfile = await this.apiService.getPlayerProfile(this.playerEmail, this.gameInstanceId);\r\n if (playerProfile) {\r\n this.playerProfile = playerProfile;\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n\r\n this.loading = false;\r\n }\r\n async exportCsvGame() {\r\n this.exporting = true;\r\n const timeDifference = new Date().getTimezoneOffset();\r\n const result = await this.apiService.getInstanceGameStatisticsCSVByPlayer(\r\n this.gameInstanceId,\r\n this.playerProfession,\r\n this.playerEmail,\r\n -timeDifference\r\n );\r\n this.downloadBlob(result?.data, result?.fileName);\r\n this.exporting = false;\r\n }\r\n async exportCsvPlayer() {\r\n this.exporting = true;\r\n const result = await this.apiService.getInstancePlayerStatisticsCSV(this.gameInstanceId, this.playerEmail);\r\n this.downloadBlob(result?.data, result?.fileName);\r\n this.exporting = false;\r\n }\r\n\r\n downloadBlob(blob?: Blob, filename?: string) {\r\n const link = document.createElement('a');\r\n link.href = window.URL.createObjectURL(blob);\r\n link.download = filename ?? 'export.csv';\r\n link.type = 'text/csv';\r\n\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n async downloadCVGame(instanceId: string, playerProfession: string) {\r\n this.loadingCVButton = true;\r\n const data = await this.apiService.getInstanceGameCV(this.gameInstanceId, instanceId);\r\n if (data) {\r\n if (data.cv) {\r\n const win = window.open();\r\n win?.document.write(\r\n ''\r\n );\r\n }\r\n }\r\n this.loadingCVButton = false;\r\n }\r\n async downloadCV(playerEmail: string) {\r\n this.loadingCVButton = true;\r\n const data = await this.apiService.getInstancePlayersCV(this.gameInstanceId, playerEmail);\r\n if (data) {\r\n if (data.cv) {\r\n const win = window.open();\r\n win?.document.write(\r\n ''\r\n );\r\n }\r\n }\r\n this.loadingCVButton = false;\r\n }\r\n\r\n async downloadLatestCV(playerEmail: string) {\r\n this.loadingCVButton = true;\r\n const data = await this.apiService.getInstancePlayersCV(this.gameInstanceId, playerEmail);\r\n if (data) {\r\n if (data.cv) {\r\n const win = window.open();\r\n win?.document.write(\r\n ''\r\n );\r\n }\r\n }\r\n this.loadingCVButton = false;\r\n }\r\n\r\n async updateRating(newRating: number) {\r\n this.playerProfile.rating = newRating;\r\n const updatedPlayerProfile = await this.apiService.UpdatePlayerProfile(this.profileUpdateModel);\r\n if (updatedPlayerProfile) {\r\n this.playerProfile = updatedPlayerProfile;\r\n }\r\n }\r\n\r\n async updateIsFavorite() {\r\n this.playerProfile.isFavorite = !this.playerProfile.isFavorite;\r\n const updatedPlayerProfile = await this.apiService.UpdatePlayerProfile(this.profileUpdateModel);\r\n if (updatedPlayerProfile) {\r\n this.playerProfile = updatedPlayerProfile;\r\n }\r\n }\r\n\r\n async updateNotes(notes: string) {\r\n this.playerProfile.notes = notes;\r\n const updatedPlayerProfile = await this.apiService.UpdatePlayerProfile(this.profileUpdateModel);\r\n if (updatedPlayerProfile) {\r\n this.playerProfile = updatedPlayerProfile;\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsPlayer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsPlayer.vue?vue&type=template&id=4a140b54&scoped=true&\"\nimport script from \"./StatisticsPlayer.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsPlayer.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4a140b54\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\ninstallComponents(component, {VBtn,VCardText,VCol,VContainer,VRow,VSkeletonLoader})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[(_vm.loading)?_c('v-skeleton-loader',{staticClass:\"mx-auto\",attrs:{\"type\":\"heading, table\"}}):_vm._e(),(!_vm.loading)?_c('v-row',{staticClass:\"mx-2\"},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-row',[(_vm.generalListInfos)?_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('StatisticsOneGameTable',{attrs:{\"data\":_vm.generalListInfos,\"achieviedLevel\":_vm.achieviedLevel,\"GameOver\":_vm.GameOver}})],1):_vm._e()],1),_c('v-row',[(_vm.gameInfos.playerInstanceAnswers)?_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('StatisticsOneGameDeepTable',{attrs:{\"data\":_vm.gameInfos.playerInstanceAnswers,\"exporting\":_vm.exporting},on:{\"export-csv\":_vm.exportCsvAnswer}})],1):_vm._e()],1),_c('v-row',[(_vm.gameInfos.playerInstanceLogs)?_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('StatisticsOneGameLogsTable',{attrs:{\"data\":_vm.gameInfos.playerInstanceLogs,\"exporting\":_vm.exporting,\"answers\":_vm.gameInfos.playerInstanceAnswers},on:{\"export-csv\":_vm.exportCsvLogs}})],1):_vm._e()],1)],1)],1):_vm._e(),_c('v-card-text',[_c('v-row',{staticClass:\"mt-n4\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"11\",\"offset\":\"1\"}},[_c('div',{staticClass:\"text-right\"},[_c('v-btn',{staticClass:\"ml-2 btn-cancel\",attrs:{\"elevation\":\"2\",\"dark\":\"\",\"color\":\"silver\"},on:{\"click\":_vm.back}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Back')))])],1)])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.GamesTable.DeepStatistics.GameInf'))+\" \"),_c('v-spacer')],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"items-per-page\":1,\"hide-default-footer\":\"\",\"sort-by\":['score']},scopedSlots:_vm._u([{key:\"item.profession\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-chip',{attrs:{\"label\":\"\",\"color\":_vm.getColor(item.profession),\"dark\":\"\"}},[_vm._v(\" \"+_vm._s(item.profession)+\" \")])]}},{key:\"item.playingTime\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm.formatDuration(item.playingTime))+\" \")]}},{key:\"item.startingTime\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"formatDateTime\")(item.startingTime))+\" \")]}},{key:\"item.level\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.achieviedLevel)+\" \")]},proxy:true},{key:\"item.end\",fn:function(){return [_c('v-icon',{staticClass:\"mr-1\",domProps:{\"textContent\":_vm._s((\"\" + (_vm.GameOver ? 'mdi-checkbox-marked-circle-outline' : 'mdi-checkbox-blank-circle-outline')))}})]},proxy:true}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { InstanceGameStatisticsDto } from '@/services/Api';\r\nimport { Duration, Moment } from 'moment';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport UserApiService from '@/modules/statistics/services/statistic-api.service';\r\n\r\n@Component\r\nexport default class StatisticsOneGameTable extends Vue {\r\n @Prop() readonly data!: InstanceGameStatisticsDto[];\r\n @Prop() readonly achieviedLevel!: number;\r\n @Prop() readonly GameOver!: boolean;\r\n apiService = new UserApiService();\r\n\r\n private search = '';\r\n goToGameStatistic(instanceId: string) {\r\n this.$emit('game-statistics', instanceId);\r\n }\r\n get headers() {\r\n return [\r\n {\r\n text: 'Email',\r\n align: 'left',\r\n value: 'email'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.Profession'),\r\n value: 'profession'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.StartingTime'),\r\n value: 'startingTime'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.PlayingTime'),\r\n value: 'playingTime'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.TotalAnswers'),\r\n value: 'totalAnswers'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.CorrectAnswers'),\r\n value: 'correctAnswers'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.Score'),\r\n value: 'score'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.Level'),\r\n value: 'level'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.Gameover'),\r\n value: 'end'\r\n }\r\n ];\r\n }\r\n private availableColors = [\r\n 'teal',\r\n 'light-green',\r\n 'purple',\r\n 'blue-grey',\r\n 'brown',\r\n 'yellow',\r\n 'purple',\r\n 'cyan',\r\n 'red',\r\n 'deep-orange',\r\n 'deep-purple',\r\n 'blue',\r\n '#9089E7',\r\n '#E85C39'\r\n ];\r\n takenColors: { [id: string]: string } = {};\r\n\r\n getColor(profession: string) {\r\n if (this.takenColors[profession]) {\r\n return this.takenColors[profession];\r\n } else {\r\n if (profession) {\r\n const color = this.availableColors.pop() ?? 'pink';\r\n this.takenColors[profession] = color;\r\n }\r\n }\r\n return this.takenColors[profession];\r\n }\r\n\r\n formatDuration(item: Duration) {\r\n if (item == null) {\r\n return '00:00';\r\n }\r\n return moment.utc(item.asMilliseconds()).format('mm:ss');\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsOneGameTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsOneGameTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsOneGameTable.vue?vue&type=template&id=dab75716&scoped=true&\"\nimport script from \"./StatisticsOneGameTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsOneGameTable.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"dab75716\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VCardTitle,VChip,VDataTable,VIcon,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.GamesTable.DeepStatistics.AnswerList'))+\" \"),_c('v-btn',{staticClass:\"text-capitalize justify-start ml-4\",attrs:{\"small\":\"\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.exporting,\"disabled\":_vm.data.length === 0},on:{\"click\":_vm.emitExportCsv}},[_c('v-icon',[_vm._v(\"mdi-file\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.ExportBtn'))+\" \")],1),_c('v-spacer')],1),_c('v-data-table',{attrs:{\"loading\":_vm.localLoading,\"headers\":_vm.headers,\"items\":_vm.data,\"search\":_vm.search,\"sort-by\":['dateTimeLog'],\"items-per-page\":_vm.tablesSize,\"sort-desc\":[true],\"footer-props\":{\n 'items-per-page-text': _vm.$t('dataIterator.rowsPerPageText'),\n 'page-text': _vm.$t('dataIterator.pageText'),\n 'items-per-page-options': [5, 10, 25, { text: this.$t('dataIterator.AllText'), value: -1 }]\n }},on:{\"update:itemsPerPage\":function($event){_vm.tablesSize=$event},\"update:items-per-page\":function($event){_vm.tablesSize=$event}},scopedSlots:_vm._u([{key:\"item.answer\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(item.answer)+\" \")]}},{key:\"item.isCorrectAnswer\",fn:function(ref){\n var item = ref.item;\nreturn [(item.isCorrectAnswer)?_c('div',{staticClass:\"pa-1 green rounded-circle d-inline-block\"},[_c('v-icon',{attrs:{\"color\":'white'},domProps:{\"textContent\":_vm._s('mdi-checkbox-marked-circle-outline')}})],1):_c('div',{staticClass:\"pa-1 red rounded-circle d-inline-block\"},[_c('v-icon',{attrs:{\"color\":'white'},domProps:{\"textContent\":_vm._s('mdi-checkbox-blank-circle-outline')}})],1)]}},{key:\"item.dateTimeLog\",fn:function(ref){\n var item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(_vm._f(\"formatNormal\")(item.dateTimeLog))+\" \")]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { InstanceGameStatisticsDto, PlayerInstanceAnswersDto } from '@/services/Api';\r\nimport { Duration, Moment } from 'moment';\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport UserApiService from '@/modules/statistics/services/statistic-api.service';\r\nimport { store } from '@/store/store';\r\n\r\n@Component\r\nexport default class StatisticsOneGameDeepTable extends Vue {\r\n @Prop() readonly data!: PlayerInstanceAnswersDto[];\r\n @Prop() readonly exporting!: boolean;\r\n private tablesSize = 5;\r\n private localLoading = false;\r\n apiService = new UserApiService();\r\n\r\n private search = '';\r\n goToGameStatistic(instanceId: string) {\r\n this.$emit('game-statistics', instanceId);\r\n }\r\n mounted() {\r\n this.localLoading = true;\r\n this.tablesSize = store.getTableSize('Players-Deep-One-Game-statistics');\r\n this.localLoading = false;\r\n }\r\n @Watch('tablesSize')\r\n onPropertyChanged(value: number, oldValue: string) {\r\n this.tablesSize = value;\r\n store.setTables('Players-Deep-One-Game-statistics', this.tablesSize);\r\n }\r\n get headers() {\r\n return [\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.DeepStatistics.Question'),\r\n align: 'left',\r\n value: 'answeredQuestion'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.DeepStatistics.Answer'),\r\n value: 'answer'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.DeepStatistics.IsCorrect'),\r\n value: 'isCorrectAnswer'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.DeepStatistics.AnswerTime'),\r\n value: 'dateTimeLog'\r\n }\r\n ];\r\n }\r\n\r\n formatDuration(item: Duration) {\r\n if (item == null) {\r\n return '00:00';\r\n }\r\n return moment.utc(item.asMilliseconds()).format('mm:ss');\r\n }\r\n\r\n emitExportCsv() {\r\n this.$emit('export-csv', 'gamesList');\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsOneGameDeepTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsOneGameDeepTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsOneGameDeepTable.vue?vue&type=template&id=fcee7df8&scoped=true&\"\nimport script from \"./StatisticsOneGameDeepTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsOneGameDeepTable.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fcee7df8\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCard,VCardTitle,VDataTable,VIcon,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{attrs:{\"elevation\":\"1\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.GamesTable.DeepStatistics.LogsList'))+\" \"),_c('v-btn',{staticClass:\"text-capitalize justify-start ml-4\",attrs:{\"small\":\"\",\"dark\":\"\",\"color\":\"green\",\"loading\":_vm.exporting,\"disabled\":_vm.data.length === 0},on:{\"click\":_vm.emitExportCsv}},[_c('v-icon',[_vm._v(\"mdi-file\")]),_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.ExportBtn'))+\" \")],1),_c('v-spacer')],1),_c('v-container',[_c('v-timeline',_vm._l((_vm.data),function(item,i){return _c('div',{key:i},[(item.logTrigger == 'game start' || item.logTrigger == 'game over')?_c('v-timeline-item',{attrs:{\"color\":_vm.getColor(item.logTrigger),\"small\":\"\"},scopedSlots:_vm._u([{key:\"opposite\",fn:function(){return [_c('span',[_vm._v(_vm._s(_vm._f(\"formatNormal\")(item.dateTimeLog)))])]},proxy:true}],null,true)},[[_c('div',{staticClass:\"py-4\"},[_c('h2',{class:\"headline font-weight-light mb-4\"},[_vm._v(\" \"+_vm._s(_vm.translateTrigger(item.logTrigger))+\" \")])])]],2):_vm._e(),(item.logTrigger == 'new level')?_c('v-timeline-item',{attrs:{\"color\":_vm.getColor(item.logTrigger),\"small\":\"\"},scopedSlots:_vm._u([{key:\"opposite\",fn:function(){return [_c('div',{staticClass:\"py-4\"},[_c('h2',{class:\"headline font-weight-light mb-4\"},[_vm._v(\" \"+_vm._s(_vm.translateTrigger(item.logTrigger) + ' - ' + item.level)+\" \")]),_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.GamesTable.Score') + ': ' + item.score)+\" \"),_c('v-tooltip',{attrs:{\"right\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [(item.eventTime)?_c('div',_vm._g(_vm._b({},'div',attrs,false),on),[_vm._v(\" \"+_vm._s(item.eventTime + ' ' + _vm.$t('Modules.Statistics.GamesTable.second'))+\" \")]):_vm._e()]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.$t('Modules.Statistics.GamesTable.DeepStatistics.TimeBetweenEvent')))])])],1)])]},proxy:true}],null,true)},[[_c('div',{staticClass:\"py-12\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"formatNormal\")(item.dateTimeLog)))])])]],2):_vm._e(),(item.logTrigger == 'live lost' || item.logTrigger == 'live saved')?_c('v-timeline-item',{attrs:{\"color\":item.isCorrectAnswer ? 'green' : 'red',\"icon\":item.isCorrectAnswer ? 'mdi-checkbox-marked-circle-outline' : 'mdi-checkbox-blank-circle-outline',\"fill-dot\":\"\"},scopedSlots:_vm._u([{key:\"opposite\",fn:function(){return [_c('span',[_vm._v(_vm._s(_vm._f(\"formatNormal\")(item.dateTimeLog)))])]},proxy:true}],null,true)},[(item.question)?_c('v-card',{staticClass:\"elevation-2\"},[_c('v-card-title',{staticClass:\"headline text-wrap-inside\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.GamesTable.DeepStatistics.Question') + ' ' + item.questionNumber + ': ' + item.question)+\" \")]),_c('v-card-text',[_vm._v(_vm._s(_vm.$t('Modules.Statistics.GamesTable.DeepStatistics.Answer') + ': ' + item.answer))])],1):_c('v-card',{staticClass:\"elevation-2\"},[_c('v-card-title',{staticClass:\"headline\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Statistics.GamesTable.DeepStatistics.EmptyPool'))+\" \")]),_c('v-card-text',[_vm._v(_vm._s(_vm.$t('Modules.Statistics.GamesTable.DeepStatistics.Triggers.LifeLost')))])],1)],1):_vm._e()],1)}),0)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport moment from 'moment';\r\nimport UserApiService from '@/modules/statistics/services/statistic-api.service';\r\nimport LogsEvent from '../Models/LogsEvent';\r\nimport { PlayerInstanceAnswersDto } from '@/services/Api';\r\nimport { GameTriggerType } from '@/modules/game-play/games/game-engine-base';\r\n@Component\r\nexport default class StatisticsOneGameLogsTable extends Vue {\r\n @Prop() readonly data!: LogsEvent[];\r\n @Prop() readonly answers!: PlayerInstanceAnswersDto[];\r\n @Prop() readonly exporting!: boolean;\r\n\r\n apiService = new UserApiService();\r\n private search = '';\r\n mounted() {\r\n this.calculateTimeForLastEvent();\r\n this.calculate1to1Answers();\r\n }\r\n get headers() {\r\n return [\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.DeepStatistics.Trigger'),\r\n align: 'left',\r\n value: 'logTrigger'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.DeepStatistics.Score'),\r\n value: 'score'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.DeepStatistics.LogTime'),\r\n value: 'dateTimeLog'\r\n },\r\n {\r\n text: this.$t('Modules.Statistics.GamesTable.DeepStatistics.TimeBetweenEvent'),\r\n value: 'eventTime'\r\n }\r\n ];\r\n }\r\n\r\n calculate1to1Answers() {\r\n this.answers.sort((a, b) => {\r\n return moment(a.dateTimeLog).diff(b.dateTimeLog);\r\n });\r\n let index = 0;\r\n let questionNumber = 0;\r\n let level = 1;\r\n this.data.forEach(val => {\r\n if (val.logTrigger == 'live lost' || val.logTrigger == 'live saved') {\r\n if (index <= this.answers.length - 1) {\r\n val.isCorrectAnswer = this.answers[index].isCorrectAnswer;\r\n val.question = this.answers[index].answeredQuestion;\r\n val.answer = this.answers[index].answer;\r\n questionNumber++;\r\n val.questionNumber = questionNumber.toString();\r\n index++;\r\n }\r\n }\r\n if (val.logTrigger == 'new level') {\r\n level++;\r\n val.level = level.toString();\r\n }\r\n });\r\n }\r\n calculateTimeForLastEvent() {\r\n this.data.sort((a, b) => {\r\n return moment(a.dateTimeLog).diff(b.dateTimeLog);\r\n });\r\n for (let index = 1; index < this.data.length; index++) {\r\n const data1 = this.data[index].dateTimeLog;\r\n const data2 = this.data[index - 1].dateTimeLog;\r\n const duration = moment.duration(data1?.diff(data2));\r\n this.data[index].eventTime = duration.format('mm:ss');\r\n }\r\n }\r\n getColor(text: string) {\r\n switch (text) {\r\n case GameTriggerType.NewLevel:\r\n return 'yellow';\r\n case GameTriggerType.LiveLost:\r\n return 'red';\r\n case GameTriggerType.GameOver:\r\n return 'black';\r\n case GameTriggerType.GameStart:\r\n return 'black';\r\n case GameTriggerType.LiveSaved:\r\n return 'green';\r\n }\r\n }\r\n translateTrigger(text: string) {\r\n switch (text) {\r\n case GameTriggerType.NewLevel:\r\n return this.$t('Modules.Statistics.GamesTable.DeepStatistics.Triggers.NewLevel');\r\n case GameTriggerType.LiveLost:\r\n return this.$t('Modules.Statistics.GamesTable.DeepStatistics.Triggers.LifeLost');\r\n case GameTriggerType.GameOver:\r\n return this.$t('Modules.Statistics.GamesTable.DeepStatistics.Triggers.GameOver');\r\n case GameTriggerType.GameStart:\r\n return this.$t('Modules.Statistics.GamesTable.DeepStatistics.Triggers.GameStart');\r\n case GameTriggerType.LiveSaved:\r\n return this.$t('Modules.Statistics.GamesTable.DeepStatistics.Triggers.LifeSaved');\r\n }\r\n }\r\n emitExportCsv() {\r\n this.$emit('export-csv');\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsOneGameLogsTable.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsOneGameLogsTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsOneGameLogsTable.vue?vue&type=template&id=2c631e8b&scoped=true&\"\nimport script from \"./StatisticsOneGameLogsTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsOneGameLogsTable.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StatisticsOneGameLogsTable.vue?vue&type=style&index=0&id=2c631e8b&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c631e8b\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTimeline } from 'vuetify/lib/components/VTimeline';\nimport { VTimelineItem } from 'vuetify/lib/components/VTimeline';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VBtn,VCard,VCardText,VCardTitle,VContainer,VIcon,VSpacer,VTimeline,VTimelineItem,VTooltip})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport UserApiService from '@/modules/statistics/services/statistic-api.service';\r\nimport {\r\n InstanceOneGameStatisticDto,\r\n InstancePlayerGameStatisticsDto,\r\n InstancePlayerStatisticsDto,\r\n InstanceGameStatisticsDto\r\n} from '@/services/Api';\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport GlobalCountsBar from '../components/GlobalCountsBar.vue';\r\nimport StatisticsPlayerTable from '../components/StatisticsPlayerTable.vue';\r\nimport StatisticsOneGameTable from '../components/StatisticsOneGameTable.vue';\r\nimport StatisticsOneGameDeepTable from '../components/StatisticsOneGameDeepTable.vue';\r\nimport StatisticsOneGameLogsTable from '../components/StatisticsOneGameLogsTable.vue';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { i18n, translate } from '@/plugins/i18n';\r\nimport { StatisticsRoute } from '@/modules/statistics/statistics-router.enum';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({\r\n components: {\r\n GlobalCountsBar,\r\n StatisticsPlayerTable,\r\n StatisticsOneGameTable,\r\n StatisticsOneGameDeepTable,\r\n StatisticsOneGameLogsTable\r\n }\r\n})\r\nexport default class StatisticsGame extends Vue {\r\n apiService = new UserApiService();\r\n @Prop() readonly gameInstanceId!: string;\r\n @Prop() readonly instanceId!: string;\r\n private generalListInfos: InstanceGameStatisticsDto[] = [];\r\n private gameInfos!: InstanceOneGameStatisticDto;\r\n private loading = true;\r\n private loadingCVButton = false;\r\n private exporting = false;\r\n private achieviedLevel = 0;\r\n private GameOver = false;\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Games'),\r\n to: { name: GameInstanceRoute.gameInstanceList },\r\n exact: true\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.Statistics', { gameName: this.gameInfos.gameInstanceTitle }),\r\n exact: true,\r\n to: { name: StatisticsRoute.statisticsMain, params: { gameInstanceId: this.gameInstanceId } }\r\n },\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.PlayerStatistics', { playerEmail: this.gameInfos.email }),\r\n exact: true,\r\n to: {\r\n name: StatisticsRoute.statisticsPlayer,\r\n params: {\r\n gameInstanceId: this.gameInstanceId,\r\n playerEmail: this.gameInfos.email,\r\n playerProfession: this.gameInfos.profession\r\n }\r\n }\r\n },\r\n { text: i18n.t('Layout.Toolbar.Routes.StatisticsGame'), disabled: true }\r\n ];\r\n }\r\n\r\n async mounted() {\r\n this.loading = true;\r\n\r\n const playersStats = await this.apiService.getInstanceOneGameStatistics(this.gameInstanceId, this.instanceId);\r\n if (playersStats) {\r\n this.gameInfos = playersStats;\r\n this.generalListInfos.push(playersStats);\r\n }\r\n\r\n if (this.gameInfos.playerInstanceLogs) {\r\n this.achieviedLevel = this.gameInfos.playerInstanceLogs.filter(val => val.logTrigger == 'new level').length + 1;\r\n this.GameOver = this.gameInfos.playerInstanceLogs.find(val => val.logTrigger == 'game over') != undefined;\r\n }\r\n store.setBreadcrumb(this.breadcrumbData);\r\n\r\n this.loading = false;\r\n }\r\n back() {\r\n if (this.gameInfos.email && this.gameInfos.profession) {\r\n this.$router.push({\r\n name: StatisticsRoute.statisticsPlayer,\r\n params: {\r\n gameInstanceId: this.gameInstanceId,\r\n playerEmail: this.gameInfos.email,\r\n playerProfession: this.gameInfos.profession\r\n }\r\n });\r\n } else {\r\n NotificationService.success(translate('Modules.Statistics.GamesTable.DeepStatistics.'));\r\n }\r\n }\r\n\r\n async exportCsvLogs() {\r\n this.exporting = true;\r\n const timeDifference = new Date().getTimezoneOffset();\r\n const result = await this.apiService.getInstanceOneGameLogsStatisticsCSV(\r\n this.gameInstanceId,\r\n this.instanceId,\r\n -timeDifference\r\n );\r\n this.downloadBlob(result?.data, result?.fileName);\r\n this.exporting = false;\r\n }\r\n async exportCsvAnswer() {\r\n this.exporting = true;\r\n const timeDifference = new Date().getTimezoneOffset();\r\n const result = await this.apiService.GetInstanceOneGameAnswerStatisticsCSV(\r\n this.gameInstanceId,\r\n this.instanceId,\r\n -timeDifference\r\n );\r\n this.downloadBlob(result?.data, result?.fileName);\r\n this.exporting = false;\r\n }\r\n downloadBlob(blob?: Blob, filename?: string) {\r\n const link = document.createElement('a');\r\n link.href = window.URL.createObjectURL(blob);\r\n link.download = filename ?? 'export.csv';\r\n link.type = 'text/csv';\r\n\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n async downloadCV(playerEmail: string, playerProfession: string) {\r\n this.loadingCVButton = true;\r\n const data = await this.apiService.getInstancePlayersCV(this.gameInstanceId, playerEmail);\r\n if (data) {\r\n if (data.cv) {\r\n this.downloadFile(data.cv, 'InGame_CV_' + playerEmail);\r\n }\r\n }\r\n this.loadingCVButton = false;\r\n }\r\n downloadFile(value: string, fileName?: string) {\r\n const downloadLink = document.createElement('a');\r\n downloadLink.type = 'application/pdf';\r\n downloadLink.href = value;\r\n downloadLink.download = fileName ?? 'default.pdf';\r\n\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n document.body.removeChild(downloadLink);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsGame.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatisticsGame.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatisticsGame.vue?vue&type=template&id=36931d0e&scoped=true&\"\nimport script from \"./StatisticsGame.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatisticsGame.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"36931d0e\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSkeletonLoader } from 'vuetify/lib/components/VSkeletonLoader';\ninstallComponents(component, {VBtn,VCardText,VCol,VContainer,VRow,VSkeletonLoader})\n","import { RouteConfig } from 'vue-router';\r\nimport StatisticsMain from './views/StatisticsMain.vue';\r\nimport DownloadCV from './views/DownloadCV.vue';\r\nimport StatisticsPlayer from './views/StatisticsPlayer.vue';\r\nimport StatisticsGame from './views/StatisticsGame.vue';\r\nimport DefaultView from '@/modules/layout/DefaultView.vue';\r\nimport { StatisticsRoute } from './statistics-router.enum';\r\nexport const statisticRoutes: Array = [\r\n {\r\n path: '/statistics=:gameInstanceId',\r\n component: DefaultView,\r\n children: [\r\n {\r\n path: '',\r\n name: StatisticsRoute.statisticsMain,\r\n component: StatisticsMain,\r\n meta: { allowAnonymous: false },\r\n props: true\r\n },\r\n {\r\n path: 'statisticsplayer=:playerEmail',\r\n name: StatisticsRoute.statisticsPlayer,\r\n component: StatisticsPlayer,\r\n props: true,\r\n meta: { allowAnonymous: false }\r\n },\r\n {\r\n path: 'statisticsplayergame=:instanceId',\r\n name: StatisticsRoute.statisticsGame,\r\n component: StatisticsGame,\r\n props: true,\r\n meta: { allowAnonymous: false }\r\n }\r\n ]\r\n },\r\n {\r\n path: '/cv/download=:id&:gameid',\r\n name: StatisticsRoute.downloadCV,\r\n component: DownloadCV,\r\n props: true,\r\n meta: { breadCrumb: 'Layout.Toolbar.Routes.DownloadCV', allowAnonymous: true }\r\n }\r\n];\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('AnonymousContainer',[_c('template',{slot:\"container-v-card-content\"},[_c('AnonymousHeader',{attrs:{\"title\":_vm.$t('Modules.Login.Title'),\"description\":_vm.$t('Modules.Login.SubTitle')}}),_c('v-col',{staticClass:\"login-form\",attrs:{\"cols\":\"auto\"}},[_c('v-form',{ref:\"form\"},[_c('v-text-field',{attrs:{\"solo\":\"\",\"prepend-inner-icon\":\"mdi-email\",\"name\":\"email\",\"label\":_vm.label,\"type\":\"text\",\"rules\":[_vm.rules.required, _vm.rules.email],\"validate-on-blur\":\"\"},on:{\"focus\":function($event){_vm.label = ''},\"focusout\":function($event){_vm.label = _vm.$t('Modules.Login.EmailLabel')}},model:{value:(_vm.userEmail),callback:function ($$v) {_vm.userEmail=$$v},expression:\"userEmail\"}}),_c('v-text-field',{attrs:{\"solo\":\"\",\"type\":\"password\",\"prepend-inner-icon\":\"mdi-lock\",\"name\":\"password\",\"label\":_vm.$t('Modules.Login.PasswordLabel'),\"id\":\"password\",\"rules\":[_vm.rules.required]},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.login($event)}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1)],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"login-btn white--text\",attrs:{\"block\":\"\",\"x-large\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.login}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.LoginBtn'))+\" \")])],1),_c('v-col',{staticClass:\"text-center description\",attrs:{\"cols\":\"auto\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.DescriptionText'))+\" \")]),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"create-account-btn\",attrs:{\"block\":\"\",\"x-large\":\"\",\"color\":\"primary\",\"link\":\"\",\"to\":{ name: _vm.userManagementRoute.register }}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.RegisterBtn'))+\" \")])],1),_c('v-col',{staticClass:\"forgot-psw-btn\",attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"plain\":\"\",\"x-large\":\"\",\"color\":\"#F5F5F5\",\"elevation\":\"0\",\"to\":{ name: _vm.userManagementRoute.forgotPasswordRequest }}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.ResetPasswordBtn'))+\" \")])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',{staticClass:\"background\",style:({\n 'background-image': 'url(' + require('@/assets/layout/si-bg.jpg') + ')'\n })},[_c('v-main',[_c('v-container',{attrs:{\"fluid\":\"\",\"fill-height\":\"\"}},[_c('v-row',{attrs:{\"align-center\":\"\",\"justify-center\":\"\"}},[_c('v-col',{staticClass:\"mr-md-4 mr-lg-10 mr-xl-16 ml-md-auto\",attrs:{\"cols\":\"12\",\"md\":\"8\",\"lg\":\"6\",\"xl\":\"4\"}},[_c('v-card',{staticClass:\"elevation-1 main-card no-capitalize normal-font py-md-5 px-md-10 mx-auto\"},[_c('div',{staticClass:\"mt-1 mr-n1 language-selector\"},[_c('ToolBarLanguageSelector',{attrs:{\"color\":\"#e85c395c\",\"elevation\":\"0\"}})],1),_c('v-card-text',[_c('v-row',{staticClass:\"flex-column h-100 flex-nowrap\"},[_vm._t(\"container-v-card-content\")],2)],1)],1)],1)],1),_c('v-row',[_c('div',{staticClass:\"bg-textes d-none d-lg-block\"},[_c('div',{staticClass:\"line\"}),_c('p',{staticClass:\"text-normal text-left\"},[_vm._v(_vm._s(_vm.$t('Modules.UserManagement.SignPage.Title')))]),_c('div',{staticClass:\"line\"}),_c('ul',{staticClass:\"text-sub text-left\"},[_c('li',{staticClass:\"mt-6 ml-3\"},[_vm._v(_vm._s(_vm.$t('Modules.UserManagement.SignPage.TextItem1')))]),_c('li',{staticClass:\"mt-6 ml-3\"},[_vm._v(_vm._s(_vm.$t('Modules.UserManagement.SignPage.TextItem2')))]),_c('li',{staticClass:\"mt-6 ml-3\"},[_vm._v(_vm._s(_vm.$t('Modules.UserManagement.SignPage.TextItem3')))])])]),_c('a',{attrs:{\"href\":_vm.PPUrl}},[_c('div',{staticClass:\"logo-image d-none d-md-block\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"xmlns:xlink\":\"http://www.w3.org/1999/xlink\",\"width\":\"488\",\"height\":\"257\",\"viewBox\":\"0 0 488 257\"}},[_c('defs',[_c('clipPath',{attrs:{\"id\":\"clip-path\"}},[_c('rect',{attrs:{\"id\":\"Rectangle_206\",\"data-name\":\"Rectangle 206\",\"width\":\"813\",\"height\":\"317\",\"fill\":\"#fff\",\"stroke\":\"#707070\",\"stroke-width\":\"1\"}})]),_c('clipPath',{attrs:{\"id\":\"clip-SignInLogoBg\"}},[_c('rect',{attrs:{\"width\":\"488\",\"height\":\"257\"}})])]),_c('g',{attrs:{\"id\":\"SignInLogoBg\",\"clip-path\":\"url(#clip-SignInLogoBg)\"}},[_c('g',{attrs:{\"id\":\"Mask_Group_1\",\"data-name\":\"Mask Group 1\",\"clip-path\":\"url(#clip-path)\"}},[_c('g',{attrs:{\"id\":\"Group_463\",\"data-name\":\"Group 463\",\"transform\":\"translate(8258.166 1246.825)\"}},[_c('ellipse',{attrs:{\"id\":\"Ellipse_143\",\"data-name\":\"Ellipse 143\",\"cx\":\"507.5\",\"cy\":\"144\",\"rx\":\"507.5\",\"ry\":\"144\",\"transform\":\"translate(-8803.943 -1218.079) rotate(-8)\",\"fill\":\"#fff\",\"opacity\":\"0.89\"}})])])])]),_c('img',{staticClass:\"main-logo\",attrs:{\"src\":require(\"@/assets/layout/ingamehr-logo.svg\"),\"alt\":\"Logo\"}})])])])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport ToolBarLanguageSelector from '@/modules/layout/components/ToolBarLanguageSelector.vue';\r\nimport UserApiService from '../services/user-api.service';\r\nimport { store } from '@/store/store';\r\n\r\n@Component({ components: { ToolBarLanguageSelector } })\r\nexport default class AnonymousContainer extends Vue {\r\n private PPUrl = store.PPUrl;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnonymousContainer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnonymousContainer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AnonymousContainer.vue?vue&type=template&id=2835cce4&scoped=true&\"\nimport script from \"./AnonymousContainer.vue?vue&type=script&lang=ts&\"\nexport * from \"./AnonymousContainer.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AnonymousContainer.vue?vue&type=style&index=0&id=2835cce4&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2835cce4\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VApp } from 'vuetify/lib/components/VApp';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VMain } from 'vuetify/lib/components/VMain';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VApp,VCard,VCardText,VCol,VContainer,VMain,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-col',{staticClass:\"title\",attrs:{\"cols\":\"auto\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('h1',{staticClass:\"flex my-4 primary--text text-center header-text \"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")])])],1),_c('v-row',[_c('v-col',{staticClass:\"text-center mb-8\",attrs:{\"cols\":\"12\"}},[_vm._v(\" \"+_vm._s(_vm.description)+\" \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class AnonymousHeader extends Vue {\r\n @Prop() readonly title?: string;\r\n @Prop() readonly description?: string;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnonymousHeader.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnonymousHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AnonymousHeader.vue?vue&type=template&id=07c14c9c&scoped=true&\"\nimport script from \"./AnonymousHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./AnonymousHeader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AnonymousHeader.vue?vue&type=style&index=0&id=07c14c9c&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"07c14c9c\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VRow})\n","import {\r\n AuthenticateRequest,\r\n AuthenticateResponse,\r\n ChangePasswordInputModel,\r\n ForgotPasswordConfirmationInputModel,\r\n UserClient,\r\n UserDto,\r\n UserRegisterInputModel\r\n} from '@/services/Api';\r\nimport ApiServiceBase from '@/services/api-service.base';\r\n\r\nexport default class UserApiService extends ApiServiceBase {\r\n private client = new UserClient();\r\n\r\n public async register(userData: UserRegisterInputModel): Promise {\r\n try {\r\n const user = await this.client.register(userData);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async login(userData: AuthenticateRequest): Promise {\r\n try {\r\n const user = await this.client.authenticate(userData);\r\n return user.result;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async activate(activationId: string): Promise {\r\n try {\r\n await this.client.activate(activationId);\r\n return true;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async forgetPasswordRequest(email: string): Promise {\r\n try {\r\n await this.client.forgotPasswordRequest(email);\r\n return true;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async forgetPasswordConfirm(code: string, newPassword: string): Promise {\r\n try {\r\n await this.client.forgotPasswordConfirmation(new ForgotPasswordConfirmationInputModel({ code, newPassword }));\r\n return true;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async changePassword(oldPassword: string, newPassword: string): Promise {\r\n try {\r\n await this.client.changePassword(new ChangePasswordInputModel({ oldPassword, newPassword }));\r\n return true;\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n public async updateLanguage(): Promise {\r\n try {\r\n await this.client.updateLanguage();\r\n } catch (error) {\r\n this.HandleError(error);\r\n }\r\n }\r\n}\r\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { AuthenticateRequest } from '@/services/Api';\r\nimport { store } from '@/store/store';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport AnonymousContainer from '../components/AnonymousContainer.vue';\r\nimport AnonymousHeader from '../components/AnonymousHeader.vue';\r\nimport UserApiService from '../services/user-api.service';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport { GameInstanceRoute } from '@/modules/game-instance/game-instance-router.enum';\r\nimport { UserManagementRoute } from '@/modules/user-management/user-management-router.enum';\r\n\r\n@Component({\r\n components: {\r\n AnonymousContainer,\r\n AnonymousHeader\r\n }\r\n})\r\nexport default class Login extends Vue {\r\n loading = false;\r\n label = i18n.t('Modules.Login.EmailLabel');\r\n userEmail = store.rememberedEmail ?? '';\r\n password = '';\r\n rules = {\r\n required: StringValidators.required,\r\n email: StringValidators.email\r\n };\r\n apiService = new UserApiService();\r\n public userManagementRoute = UserManagementRoute;\r\n\r\n async login() {\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n return;\r\n }\r\n this.loading = true;\r\n\r\n const result = await this.apiService.login(\r\n new AuthenticateRequest({\r\n email: this.userEmail,\r\n password: this.password\r\n })\r\n );\r\n if (result) {\r\n store.logInUser(result);\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.login);\r\n this.$router.push({ name: GameInstanceRoute.gameInstanceList });\r\n }\r\n\r\n this.loading = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=f63d6b48&scoped=true&\"\nimport script from \"./Login.vue?vue&type=script&lang=ts&\"\nexport * from \"./Login.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Login.vue?vue&type=style&index=0&id=f63d6b48&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f63d6b48\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCol,VForm,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('AnonymousContainer',[_c('template',{slot:\"container-v-card-content\"},[_c('AnonymousHeader',{attrs:{\"title\":_vm.$t('Modules.Register.Title'),\"description\":_vm.$t('Modules.Register.SubTitle')}}),_c('v-col',{staticClass:\"register-form\",attrs:{\"cols\":\"auto\"}},[_c('v-form',{ref:\"form\"},[_c('v-text-field',{attrs:{\"solo\":\"\",\"prepend-inner-icon\":\"mdi-email\",\"name\":\"email\",\"label\":_vm.$t('Modules.Login.EmailLabel'),\"type\":\"text\",\"rules\":[_vm.rules.required, _vm.rules.email]},model:{value:(_vm.userModel.email),callback:function ($$v) {_vm.$set(_vm.userModel, \"email\", $$v)},expression:\"userModel.email\"}}),_c('v-text-field',{attrs:{\"solo\":\"\",\"type\":\"password\",\"prepend-inner-icon\":\"mdi-lock\",\"name\":\"password\",\"label\":_vm.$t('Modules.Login.PasswordLabel'),\"id\":\"password\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.passwordRegex, _vm.rules.maxLength]},model:{value:(_vm.userModel.password),callback:function ($$v) {_vm.$set(_vm.userModel, \"password\", $$v)},expression:\"userModel.password\"}}),_c('v-checkbox',{staticClass:\"tos-checkbox\",attrs:{\"rules\":[_vm.rules.required],\"value\":\"value\"},model:{value:(_vm.conditionsAgree),callback:function ($$v) {_vm.conditionsAgree=$$v},expression:\"conditionsAgree\"}},[_c('div',{attrs:{\"slot\":\"label\"},slot:\"label\"},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.RegisterCheckbox'))+\" \"),_c('a',{attrs:{\"target\":\"_blank\",\"href\":\"https://ingame.hr/termsandconditions/\"},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(_vm._s(_vm.$t('Modules.Login.TermsAndPolicy')))])])])],1)],1),_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"register-btn white--text\",attrs:{\"block\":\"\",\"x-large\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.register}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Register.Title'))+\" \")])],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"plain\":\"\",\"x-large\":\"\",\"color\":\"#F5F5F5\",\"elevation\":\"0\",\"link\":\"\",\"to\":{ name: _vm.userManagementRoute.login }}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.CancelBtn'))+\" \")])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport AnalyticsGoogleHelper, { AnalyticsEvent } from '@/plugins/analytics-google';\r\nimport { AnalyticsHelper, FacebookPixelEvent } from '@/plugins/analytics-facebook';\r\nimport { UserRegisterInputModel } from '@/services/Api';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { store } from '@/store/store';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport AnonymousContainer from '../components/AnonymousContainer.vue';\r\nimport AnonymousHeader from '../components/AnonymousHeader.vue';\r\nimport UserApiService from '../services/user-api.service';\r\nimport { UserManagementRoute } from '@/modules/user-management/user-management-router.enum';\r\n\r\n@Component({\r\n components: {\r\n AnonymousContainer,\r\n AnonymousHeader\r\n }\r\n})\r\nexport default class Register extends Vue {\r\n loading = false;\r\n conditionsAgree = false;\r\n userModel = new UserRegisterInputModel();\r\n apiService = new UserApiService();\r\n hidePassword = true;\r\n rules = {\r\n required: StringValidators.required,\r\n email: StringValidators.email,\r\n minLength: (model: string) => StringValidators.minLength(model, 8),\r\n maxLength: (model: string) => StringValidators.maxLength(model, 50),\r\n passwordRegex: (model: string) =>\r\n (!!model && /^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(model)) ||\r\n this.$t('Modules.Login.PasswordPatternError')\r\n };\r\n public userManagementRoute = UserManagementRoute;\r\n\r\n async register() {\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n return;\r\n }\r\n this.loading = true;\r\n\r\n const registeredUser = await this.apiService.register(this.userModel);\r\n if (registeredUser) {\r\n AnalyticsGoogleHelper.event(AnalyticsEvent.signUp);\r\n AnalyticsHelper.trackWithFacebookPixel(FacebookPixelEvent.completeRegistration);\r\n store.rememberEmail(registeredUser.email as string);\r\n NotificationService.success(this.$t('Modules.Login.AccountCreated').toString());\r\n this.$router.push({ name: UserManagementRoute.login });\r\n }\r\n this.loading = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Register.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Register.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Register.vue?vue&type=template&id=13980d64&scoped=true&\"\nimport script from \"./Register.vue?vue&type=script&lang=ts&\"\nexport * from \"./Register.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Register.vue?vue&type=style&index=0&id=13980d64&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"13980d64\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCheckbox,VCol,VForm,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('AnonymousContainer',[_c('template',{slot:\"container-v-card-content\"},[_c('AnonymousHeader',{attrs:{\"title\":_vm.$t('Modules.Login.ActivateHeader'),\"description\":_vm.$t('Modules.Login.ActivateBody')}}),_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"white--text\",attrs:{\"block\":\"\",\"x-large\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.activate}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.ActivateBtn'))+\" \")])],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"plain\":\"\",\"x-large\":\"\",\"color\":\"#F5F5F5\",\"elevation\":\"0\",\"link\":\"\",\"to\":{ name: _vm.userManagementRoute.login }}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.CancelBtn'))+\" \")])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport UserApiService from '../services/user-api.service';\r\nimport NotificationService from '@/services/notification-service';\r\nimport { translate } from '@/plugins/i18n';\r\nimport AnonymousContainer from '../components/AnonymousContainer.vue';\r\nimport AnonymousHeader from '../components/AnonymousHeader.vue';\r\nimport { UserManagementRoute } from '@/modules/user-management/user-management-router.enum';\r\n\r\n@Component({\r\n components: {\r\n AnonymousContainer,\r\n AnonymousHeader\r\n }\r\n})\r\nexport default class ActivateAccount extends Vue {\r\n public activationId = this.$route.params.id;\r\n public loading = true;\r\n private service = new UserApiService();\r\n public userManagementRoute = UserManagementRoute;\r\n\r\n async activate() {\r\n this.loading = true;\r\n\r\n const result = await this.service.activate(this.activationId);\r\n if (result) {\r\n NotificationService.success(translate('Modules.Login.ActivateSuccess'));\r\n this.$router.push({ name: UserManagementRoute.login });\r\n }\r\n\r\n this.loading = false;\r\n }\r\n\r\n mounted() {\r\n this.activate();\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivateAccount.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivateAccount.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ActivateAccount.vue?vue&type=template&id=de609e52&scoped=true&\"\nimport script from \"./ActivateAccount.vue?vue&type=script&lang=ts&\"\nexport * from \"./ActivateAccount.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ActivateAccount.vue?vue&type=style&index=0&id=de609e52&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"de609e52\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('AnonymousContainer',[_c('template',{slot:\"container-v-card-content\"},[_c('AnonymousHeader',{attrs:{\"title\":_vm.$t('Modules.Login.ResetPasswordHeader'),\"description\":_vm.$t('Modules.Login.ResetPasswordBtn')}}),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-form',{ref:\"form\",staticClass:\"reset-form\"},[_c('v-text-field',{attrs:{\"solo\":\"\",\"prepend-inner-icon\":\"mdi-email\",\"name\":\"email\",\"label\":_vm.$t('Modules.Login.EmailLabel'),\"type\":\"text\",\"rules\":[_vm.rules.required, _vm.rules.email]},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1)],1),_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"white--text reset-confirm-button\",attrs:{\"block\":\"\",\"x-large\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.submit}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.ResetBtn'))+\" \")])],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"plain\":\"\",\"x-large\":\"\",\"color\":\"#F5F5F5\",\"elevation\":\"0\",\"link\":\"\",\"to\":{ name: 'Login' }}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.CancelBtn'))+\" \")])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport UserApiService from '../services/user-api.service';\r\nimport { store } from '@/store/store';\r\nimport NotificationService from '@/services/notification-service';\r\nimport AnonymousContainer from '../components/AnonymousContainer.vue';\r\nimport AnonymousHeader from '../components/AnonymousHeader.vue';\r\nimport { UserManagementRoute } from '@/modules/user-management/user-management-router.enum';\r\n\r\n@Component({\r\n components: {\r\n AnonymousContainer,\r\n AnonymousHeader\r\n }\r\n})\r\nexport default class ForgotPasswordRequest extends Vue {\r\n loading = false;\r\n email = store.rememberedEmail ?? '';\r\n apiService = new UserApiService();\r\n rules = {\r\n required: StringValidators.required,\r\n email: StringValidators.email\r\n };\r\n\r\n async submit() {\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n return;\r\n }\r\n this.loading = true;\r\n\r\n const registeredUser = await this.apiService.forgetPasswordRequest(this.email);\r\n if (registeredUser) {\r\n NotificationService.success(this.$t('Modules.Login.PasswordResetSuccesfull').toString());\r\n this.$router.push({ name: UserManagementRoute.login });\r\n }\r\n this.loading = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ForgotPasswordRequest.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ForgotPasswordRequest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ForgotPasswordRequest.vue?vue&type=template&id=8c698204&scoped=true&\"\nimport script from \"./ForgotPasswordRequest.vue?vue&type=script&lang=ts&\"\nexport * from \"./ForgotPasswordRequest.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ForgotPasswordRequest.vue?vue&type=style&index=0&id=8c698204&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8c698204\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCol,VForm,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('AnonymousContainer',[_c('template',{slot:\"container-v-card-content\"},[_c('AnonymousHeader',{attrs:{\"title\":_vm.$t('Modules.Login.ResetPasswordHeader'),\"description\":_vm.$t('Modules.Login.ResetPasswordConfirmHeader')}}),_c('v-form',{ref:\"form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-text-field',{attrs:{\"type\":_vm.hidePassword ? 'password' : 'text',\"append-icon\":_vm.hidePassword ? 'mdi-eye-off' : 'mdi-eye-outline',\"name\":\"password\",\"label\":_vm.$t('Modules.Login.PasswordLabel'),\"id\":\"password\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.passwordRegex],\"disable\":_vm.submit},on:{\"click:append\":function($event){_vm.hidePassword = !_vm.hidePassword}},model:{value:(_vm.newPassword),callback:function ($$v) {_vm.newPassword=$$v},expression:\"newPassword\"}})],1),_c('v-spacer'),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"white--text reset-confirm-btn\",attrs:{\"block\":\"\",\"x-large\":\"\",\"color\":\"green\",\"loading\":_vm.loading},on:{\"click\":_vm.submit}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.ConfirmBtn'))+\" \")])],1)],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"plain\":\"\",\"x-large\":\"\",\"color\":\"#F5F5F5\",\"elevation\":\"0\",\"link\":\"\",\"to\":{ name: 'Login' }}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.Login.CancelBtn'))+\" \")])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport UserApiService from '../services/user-api.service';\r\nimport NotificationService from '@/services/notification-service';\r\nimport AnonymousContainer from '../components/AnonymousContainer.vue';\r\nimport AnonymousHeader from '../components/AnonymousHeader.vue';\r\nimport { UserManagementRoute } from '@/modules/user-management/user-management-router.enum';\r\n\r\n@Component({\r\n components: {\r\n AnonymousContainer,\r\n AnonymousHeader\r\n }\r\n})\r\nexport default class ForgotPasswordRequest extends Vue {\r\n public resetPasswordCode = this.$route.params.id;\r\n loading = false;\r\n newPassword = '';\r\n hidePassword = true;\r\n apiService = new UserApiService();\r\n rules = {\r\n required: StringValidators.required,\r\n minLength: (model: string) => StringValidators.minLength(model, 8),\r\n passwordRegex: (model: string) =>\r\n (!!model && /^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(model)) ||\r\n this.$t('Modules.Login.PasswordPatternError')\r\n };\r\n\r\n async submit() {\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n return;\r\n }\r\n this.loading = true;\r\n\r\n const passwordChanged = await this.apiService.forgetPasswordConfirm(this.resetPasswordCode, this.newPassword);\r\n if (passwordChanged) {\r\n NotificationService.success(this.$t('Modules.Login.PasswordResetConfirmSuccesfull').toString());\r\n }\r\n this.$router.push({ name: UserManagementRoute.login });\r\n this.loading = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ForgotPasswordConfirm.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ForgotPasswordConfirm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ForgotPasswordConfirm.vue?vue&type=template&id=375c8a1d&scoped=true&\"\nimport script from \"./ForgotPasswordConfirm.vue?vue&type=script&lang=ts&\"\nexport * from \"./ForgotPasswordConfirm.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"375c8a1d\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCol,VForm,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{attrs:{\"fluid\":\"\"}},[_c('edit-card-main',{attrs:{\"title\":_vm.$t('Modules.UserManagement.ChangePassword.TitleLabel')}},[_c('edit-card-section',[_c('v-form',{ref:\"form\"},[_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.UserManagement.ChangePassword.OldPasswordLabel'))+\" \")]),_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('v-text-field',{staticClass:\"old-password-input\",attrs:{\"hide-details\":\"auto\",\"outlined\":\"\",\"dense\":\"\",\"type\":\"password\",\"name\":\"password\",\"append-icon\":\"mdi-lock\",\"rules\":[_vm.rules.required]},model:{value:(_vm.oldPassword),callback:function ($$v) {_vm.oldPassword=$$v},expression:\"oldPassword\"}})],1)],1),_c('v-row',{attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"2\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Modules.UserManagement.ChangePassword.NewPasswordLabel'))+\" \")]),_c('v-col',{attrs:{\"cols\":\"4\"}},[_c('v-text-field',{staticClass:\"new-password-input\",attrs:{\"hide-details\":\"auto\",\"outlined\":\"\",\"dense\":\"\",\"name\":\"password\",\"append-icon\":\"mdi-lock\",\"type\":\"password\",\"rules\":[_vm.rules.required, _vm.rules.minLength, _vm.rules.passwordRegex, _vm.rules.maxLength]},model:{value:(_vm.newPassword),callback:function ($$v) {_vm.newPassword=$$v},expression:\"newPassword\"}})],1)],1)],1),_c('v-col',{staticClass:\"d-flex justify-end\",attrs:{\"cols\":\"12\"}},[_c('v-btn',{staticClass:\"white--text change-password-save-button\",attrs:{\"depressed\":\"\",\"color\":\"green\",\"width\":\"200\",\"loading\":_vm.loading},on:{\"click\":_vm.submit}},[_vm._v(\" \"+_vm._s(_vm.$t('Buttons.Save'))+\" \")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport StringValidators from '@/modules/layout/validators/string-validators';\r\nimport { i18n } from '@/plugins/i18n';\r\nimport NotificationService from '@/services/notification-service';\r\nimport BreadcrumbData from '@/store/Models/breadcrumb-data';\r\nimport { store } from '@/store/store';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport UserApiService from '../services/user-api.service';\r\n\r\n@Component\r\nexport default class ChangePassword extends Vue {\r\n loading = false;\r\n oldPassword = '';\r\n newPassword = '';\r\n hidePassword = true;\r\n apiService = new UserApiService();\r\n rules = {\r\n required: StringValidators.required,\r\n minLength: (model: string) => StringValidators.minLength(model, 8),\r\n maxLength: (model: string) => StringValidators.maxLength(model, 50),\r\n passwordRegex: (model: string) =>\r\n (!!model && /^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/.test(model)) ||\r\n this.$t('Modules.Login.PasswordPatternError')\r\n };\r\n\r\n get breadcrumbData(): () => BreadcrumbData[] {\r\n return () => [\r\n {\r\n text: i18n.t('Layout.Toolbar.Routes.ChangePassword'),\r\n exact: true,\r\n disabled: true\r\n }\r\n ];\r\n }\r\n\r\n mounted() {\r\n store.setBreadcrumb(this.breadcrumbData);\r\n }\r\n\r\n async submit() {\r\n const form: any = this.$refs.form;\r\n if (form.validate() == false) {\r\n return;\r\n }\r\n this.loading = true;\r\n\r\n const passwordChanged = await this.apiService.changePassword(this.oldPassword, this.newPassword);\r\n if (passwordChanged) {\r\n NotificationService.success(\r\n this.$t('Modules.UserManagement.ChangePassword.PasswordChangedSuccesfull').toString()\r\n );\r\n this.$router.push({ path: '/' });\r\n }\r\n this.loading = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangePassword.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangePassword.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ChangePassword.vue?vue&type=template&id=23969062&scoped=true&\"\nimport script from \"./ChangePassword.vue?vue&type=script&lang=ts&\"\nexport * from \"./ChangePassword.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"23969062\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCol,VContainer,VForm,VRow,VTextField})\n","import { RouteConfig } from 'vue-router';\r\nimport Login from '@/modules/user-management/views/Login.vue';\r\nimport Register from '@/modules/user-management/views/Register.vue';\r\nimport ActivateAccount from '@/modules/user-management/views/ActivateAccount.vue';\r\nimport ForgotPasswordRequest from '@/modules/user-management/views/ForgotPasswordRequest.vue';\r\nimport ForgotPasswordConfirm from '@/modules/user-management/views/ForgotPasswordConfirm.vue';\r\nimport ChangePassword from '@/modules/user-management/views/ChangePassword.vue';\r\nimport { UserManagementRoute } from './user-management-router.enum';\r\n\r\nexport const userManagementRoutes: Array = [\r\n {\r\n path: '/login',\r\n name: UserManagementRoute.login,\r\n component: Login,\r\n meta: {\r\n allowAnonymous: true\r\n }\r\n },\r\n {\r\n path: '/register',\r\n name: UserManagementRoute.register,\r\n component: Register,\r\n meta: {\r\n allowAnonymous: true\r\n }\r\n },\r\n {\r\n path: '/activate=:id',\r\n name: UserManagementRoute.activateAccount,\r\n component: ActivateAccount,\r\n meta: {\r\n allowAnonymous: true\r\n }\r\n },\r\n {\r\n path: '/forgot-password',\r\n name: UserManagementRoute.forgotPasswordRequest,\r\n component: ForgotPasswordRequest,\r\n meta: {\r\n allowAnonymous: true\r\n }\r\n },\r\n {\r\n path: '/forgot-password-confirm=:id',\r\n name: UserManagementRoute.forgotPasswordConfirm,\r\n component: ForgotPasswordConfirm,\r\n meta: {\r\n allowAnonymous: true\r\n }\r\n },\r\n {\r\n path: '/change-password',\r\n name: UserManagementRoute.changePassword,\r\n component: ChangePassword\r\n }\r\n];\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"no-boxshadow sink-container\"},[_c('KitchenSinkShortCuts',{staticClass:\"side-nav\",attrs:{\"navigationList\":_vm.navigationList}}),_vm._l((_vm.sinkItemList),function(item,index){return _c('v-container',{key:_vm.getId(index),staticClass:\"mt-0\",attrs:{\"id\":_vm.getId(index)}},[_c('KitchenSinkList',{attrs:{\"item\":item}})],1)})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"no-boxshadow sink-nav-card\"},[(_vm.innerWidth >= 1200)?_c('v-navigation-drawer',{staticClass:\"sink-nav-drawer\",attrs:{\"permanent\":\"\"}},[_c('v-list',[_c('v-list-item-group',{attrs:{\"color\":\"primary\"}},_vm._l((_vm.navigationList),function(item,index){return _c('v-list-item',{directives:[{name:\"scroll-to\",rawName:\"v-scroll-to\",value:(_vm.getId(index)),expression:\"getId(index)\"}],key:_vm.getId(index),staticClass:\"table-item\"},[_c('v-list-item-content',{staticClass:\"table-item-content\"},[_c('v-list-item-title',[_vm._v(_vm._s(item))])],1)],1)}),1)],1)],1):_c('v-navigation-drawer',{staticClass:\"sink-nav-drawer-expand\",attrs:{\"permanent\":\"\"}},[_c('v-list',[_c('v-list-item-group',{attrs:{\"color\":\"primary\"}},_vm._l((_vm.navigationList),function(item,index){return _c('v-list-item',{directives:[{name:\"scroll-to\",rawName:\"v-scroll-to\",value:(_vm.getId(index)),expression:\"getId(index)\"}],key:_vm.getId(index),staticClass:\"table-item\"},[_c('v-list-item-content',{staticClass:\"table-item-content\"},[_c('v-list-item-title',[_vm._v(_vm._s(item))])],1)],1)}),1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class KitchenSinkShortCuts extends Vue {\r\n @Prop() navigationList!: string[];\r\n innerWidth = 0;\r\n getId(num: number): string {\r\n return '#sink' + num;\r\n }\r\n\r\n created() {\r\n window.addEventListener('resize', this.handleResize);\r\n this.handleResize();\r\n }\r\n handleResize() {\r\n this.innerWidth = window.innerWidth;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkShortCuts.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkShortCuts.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./KitchenSinkShortCuts.vue?vue&type=template&id=520db318&scoped=true&\"\nimport script from \"./KitchenSinkShortCuts.vue?vue&type=script&lang=ts&\"\nexport * from \"./KitchenSinkShortCuts.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./KitchenSinkShortCuts.vue?vue&type=style&index=0&id=520db318&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"520db318\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemGroup } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VNavigationDrawer } from 'vuetify/lib/components/VNavigationDrawer';\ninstallComponents(component, {VCard,VList,VListItem,VListItemContent,VListItemGroup,VListItemTitle,VNavigationDrawer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('edit-card-main',{attrs:{\"title\":_vm.title}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class EditCardMainPreview extends Vue {\r\n title = this.$t(`KitchenSink.Previews.EditCardMainPreview.Title`);\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCardMainPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCardMainPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditCardMainPreview.vue?vue&type=template&id=22d2e882&scoped=true&\"\nimport script from \"./EditCardMainPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditCardMainPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"22d2e882\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('edit-card-section',{attrs:{\"title\":_vm.title,\"expanded\":_vm.expanded,\"collapsible\":_vm.collapsible}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class EditCardSectionPreview extends Vue {\r\n title = this.$t('KitchenSink.Previews.EditCardSectionPreview.Title');\r\n expanded = true;\r\n collapsible = false;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCardSectionPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditCardSectionPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditCardSectionPreview.vue?vue&type=template&id=7afe1d25&scoped=true&\"\nimport script from \"./EditCardSectionPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditCardSectionPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7afe1d25\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('empty-list-container',{attrs:{\"text\":_vm.text,\"routeName\":_vm.routeName}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { KitchenSinkRoute } from '@/modules/kitchen-sink/kitchen-sink-router.enum';\r\n\r\n@Component\r\nexport default class EmptyListContainerPreview extends Vue {\r\n text = this.$t('KitchenSink.Previews.EmptyListContainerPreview.Text');\r\n routeName = KitchenSinkRoute.kitchenSink;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyListContainerPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmptyListContainerPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EmptyListContainerPreview.vue?vue&type=template&id=1f8ab481&scoped=true&\"\nimport script from \"./EmptyListContainerPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./EmptyListContainerPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1f8ab481\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('list-menu',{attrs:{\"disabled\":_vm.disabled}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class ListMenuPreview extends Vue {\r\n disabled = false;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListMenuPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListMenuPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ListMenuPreview.vue?vue&type=template&id=e2442c8c&scoped=true&\"\nimport script from \"./ListMenuPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./ListMenuPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e2442c8c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('list-item-header',{attrs:{\"title\":_vm.title,\"subTitle\":_vm.subTitle,\"routeTo\":{ name: _vm.routeTo },\"icon\":_vm.icon}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { KitchenSinkRoute } from '@/modules/kitchen-sink/kitchen-sink-router.enum';\r\n\r\n@Component\r\nexport default class ListItemHeaderPreview extends Vue {\r\n title = this.$t('KitchenSink.Previews.ListItemHeaderPreview.Title');\r\n subTitle = this.$t('KitchenSink.Previews.ListItemHeaderPreview.subTitle');\r\n routeTo = KitchenSinkRoute.kitchenSink;\r\n icon = 'mdi-pencil';\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListItemHeaderPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListItemHeaderPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ListItemHeaderPreview.vue?vue&type=template&id=7d573da0&scoped=true&\"\nimport script from \"./ListItemHeaderPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./ListItemHeaderPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7d573da0\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('table-item-header',{attrs:{\"title\":_vm.offerTitle,\"subTitle\":_vm.orderNumber}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class TableItemHeaderPreview extends Vue {\r\n offerTitle = this.$t('KitchenSink.Previews.TableItemHeaderPreview.Title');\r\n orderNumber = this.$t('KitchenSink.Previews.TableItemHeaderPreview.SubTitle');\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemHeaderPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableItemHeaderPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TableItemHeaderPreview.vue?vue&type=template&id=58858b10&scoped=true&\"\nimport script from \"./TableItemHeaderPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./TableItemHeaderPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"58858b10\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form-text-input',{attrs:{\"label\":_vm.label,\"value\":_vm.value,\"rules\":_vm.rules}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormTextInputPreview extends Vue {\r\n label = this.$t('KitchenSink.Previews.FormTextInputPreview.Label');\r\n value = this.$t('KitchenSink.Previews.FormTextInputPreview.Value');\r\n rules: object[] = [];\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextInputPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextInputPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTextInputPreview.vue?vue&type=template&id=f949b6a2&scoped=true&\"\nimport script from \"./FormTextInputPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormTextInputPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f949b6a2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form-text-info',{attrs:{\"label\":_vm.label,\"value\":_vm.value,\"currency\":_vm.currency}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\nimport { Currency } from '@/services/Api';\r\n\r\n@Component\r\nexport default class FormTextInfoPreview extends Vue {\r\n currency: Currency = Currency.EUR;\r\n value = 82.21;\r\n label = this.$t('KitchenSink.Previews.FormTextInfoPreview.Label');\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextInfoPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormTextInfoPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormTextInfoPreview.vue?vue&type=template&id=7b31f27a&scoped=true&\"\nimport script from \"./FormTextInfoPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormTextInfoPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7b31f27a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form-autocomplete-select',{attrs:{\"label\":_vm.label,\"value\":_vm.value,\"items\":_vm.items,\"itemText\":_vm.itemText,\"itemValue\":_vm.itemValue}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormAutocompleteSelectPreview extends Vue {\r\n label = this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Label');\r\n value = this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value').toString();\r\n items: string[] = [\r\n this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value').toString(),\r\n this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value1').toString(),\r\n this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value2').toString()\r\n ];\r\n itemText = this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Text').toString();\r\n itemValue = this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value').toString();\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormAutocompleteSelectPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormAutocompleteSelectPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormAutocompleteSelectPreview.vue?vue&type=template&id=2187541e&scoped=true&\"\nimport script from \"./FormAutocompleteSelectPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormAutocompleteSelectPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2187541e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form-select',{attrs:{\"label\":_vm.label,\"value\":_vm.value,\"items\":_vm.items,\"itemText\":_vm.itemText,\"itemValue\":_vm.itemValue}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormSelectPreview extends Vue {\r\n label = this.$t('KitchenSink.Previews.FormSelectPreview.Label');\r\n value = this.$t('KitchenSink.Previews.FormSelectPreview.Value').toString();\r\n items: string[] = [\r\n this.$t('KitchenSink.Previews.FormSelectPreview.Value').toString(),\r\n this.$t('KitchenSink.Previews.FormSelectPreview.Value1').toString(),\r\n this.$t('KitchenSink.Previews.FormSelectPreview.Value2').toString()\r\n ];\r\n itemText = this.$t('KitchenSink.Previews.FormSelectPreview.Text').toString();\r\n itemValue = this.$t('KitchenSink.Previews.FormSelectPreview.Value').toString();\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSelectPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormSelectPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormSelectPreview.vue?vue&type=template&id=5894766f&scoped=true&\"\nimport script from \"./FormSelectPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormSelectPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5894766f\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form-conditions-checkbox',{attrs:{\"value\":_vm.value,\"newTab\":_vm.newTab,\"disabled\":_vm.disabled,\"link\":_vm.link,\"linkText\":_vm.linkText,\"label\":_vm.label}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormConditionsCheckboxPreview extends Vue {\r\n value = true;\r\n newTab = true;\r\n disabled = false;\r\n link = 'http://www.google.pl';\r\n linkText = this.$t('KitchenSink.Previews.FormConditionsCheckboxPreview.PrivacyPolicy');\r\n label = this.$t('KitchenSink.Previews.FormConditionsCheckboxPreview.Iagreeto');\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormConditionsCheckboxPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormConditionsCheckboxPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormConditionsCheckboxPreview.vue?vue&type=template&id=2e4f8dfc&scoped=true&\"\nimport script from \"./FormConditionsCheckboxPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormConditionsCheckboxPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2e4f8dfc\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('skeleton-loader-details')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class SkeletonLoaderDetailsPreview extends Vue {}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SkeletonLoaderDetailsPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SkeletonLoaderDetailsPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SkeletonLoaderDetailsPreview.vue?vue&type=template&id=72280dc8&scoped=true&\"\nimport script from \"./SkeletonLoaderDetailsPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./SkeletonLoaderDetailsPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"72280dc8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('intersect-menu-section',{attrs:{\"id\":_vm.id}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class IntersectMenuSectionPreview extends Vue {\r\n id = '';\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IntersectMenuSectionPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IntersectMenuSectionPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./IntersectMenuSectionPreview.vue?vue&type=template&id=14c3da30&scoped=true&\"\nimport script from \"./IntersectMenuSectionPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./IntersectMenuSectionPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"14c3da30\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('list-container',{scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('v-col',{attrs:{\"cols\":\"6\"}},[_vm._v(\" Header 1 \")]),_c('v-col',{attrs:{\"cols\":\"6\"}},[_vm._v(\" Header 2 \")])]},proxy:true},{key:\"items\",fn:function(){return _vm._l((_vm.items),function(item){return _c('list-item',{key:item.id},[_c('v-row',{staticClass:\"pa-0 ma-0\",attrs:{\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"6\"}},[_vm._v(\" \"+_vm._s(item.column1)+\" \")]),_c('v-col',{attrs:{\"cols\":\"6\"}},[_vm._v(\" \"+_vm._s(item.column2)+\" \")])],1)],1)})},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class ListContainerPreview extends Vue {\r\n items = [\r\n {\r\n column1: 'Item 1 Column 1',\r\n column2: 'Item 1 Column 2'\r\n },\r\n {\r\n column1: 'Item 2 Column 1',\r\n column2: 'Item 2 Column 2'\r\n }\r\n ];\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListContainerPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListContainerPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ListContainerPreview.vue?vue&type=template&id=6753284f&scoped=true&\"\nimport script from \"./ListContainerPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./ListContainerPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6753284f\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form-checkbox',{attrs:{\"label\":\"Label for Checkbox\",\"disabled\":_vm.disabled},model:{value:(_vm.checkboxValue),callback:function ($$v) {_vm.checkboxValue=$$v},expression:\"checkboxValue\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormCheckboxPreview extends Vue {\r\n checkboxValue!: boolean;\r\n disabled!: boolean;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormCheckboxPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormCheckboxPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormCheckboxPreview.vue?vue&type=template&id=bbb924ce&scoped=true&\"\nimport script from \"./FormCheckboxPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormCheckboxPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bbb924ce\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('detail-row',{attrs:{\"labelIcon\":'mdi-earth',\"label\":_vm.label,\"value\":_vm.value}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class DetailRowPreview extends Vue {\r\n label = this.$t(`KitchenSink.Previews.DetailRowPreview.Label`);\r\n value = this.$t(`KitchenSink.Previews.DetailRowPreview.Value`);\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DetailRowPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DetailRowPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DetailRowPreview.vue?vue&type=template&id=5ff9f242&scoped=true&\"\nimport script from \"./DetailRowPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./DetailRowPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5ff9f242\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('custom-data-table',{attrs:{\"id\":'Custom-data-table-preview',\"headers\":_vm.headers,\"items\":_vm.data,\"customSearch\":_vm.customFilter,\"columnFilters\":_vm.filters},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_c('tr',[_c('td',[_vm._v(_vm._s(row.item.id))]),_c('td',[_vm._v(_vm._s(row.item.value))]),_c('td',[_vm._v(_vm._s(row.item.number))])])]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\nimport DataTableFilterHelper from '@/modules/layout/helpers/data-table-filter.helper';\r\n\r\n@Component\r\nexport default class CustomDataTablePreview extends Vue {\r\n @Prop() data: any;\r\n\r\n created() {\r\n this.data = [\r\n { id: 1, value: 'value 1', number: 10 },\r\n { id: 2, value: 'value 2', number: 15 },\r\n { id: 3, value: 'value 3', number: 25 }\r\n ];\r\n }\r\n\r\n get headers() {\r\n return [\r\n {\r\n text: 'Id',\r\n value: 'id',\r\n sort: DataTableSortingHelper.sortByDefault\r\n },\r\n { text: 'Value', value: 'value', sort: DataTableSortingHelper.sortByDefault },\r\n { text: 'Number', value: 'number', sort: DataTableSortingHelper.sortByDefault }\r\n ];\r\n }\r\n\r\n get filters() {\r\n return [\r\n { value: 'value', items: this.data.map((d: any) => d.value) },\r\n {\r\n value: 'number',\r\n items: ['Less than 15'],\r\n filter: (value: any, search: any, item: any, activeFilters: any) => {\r\n if (activeFilters.number.includes('Less than 15')) {\r\n return value < 15;\r\n } else {\r\n return true;\r\n }\r\n }\r\n }\r\n ];\r\n }\r\n\r\n customFilter(value: any, search: string | null, item: any) {\r\n if (!search) {\r\n return true;\r\n }\r\n\r\n return DataTableFilterHelper.filterByString(item.value, search);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDataTablePreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomDataTablePreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CustomDataTablePreview.vue?vue&type=template&id=169c52cc&\"\nimport script from \"./CustomDataTablePreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./CustomDataTablePreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import SinkListModel from './sink-list.model';\r\n\r\nimport EditCardMainPreview from '@/modules/kitchen-sink/Previews/EditCardMainPreview.vue';\r\nimport EditCardSectionPreview from '@/modules/kitchen-sink/Previews/EditCardSectionPreview.vue';\r\nimport EmptyListContainerPreview from '@/modules/kitchen-sink/Previews/EmptyListContainerPreview.vue';\r\nimport ListMenuPreview from '@/modules/kitchen-sink/Previews/ListMenuPreview.vue';\r\nimport ListItemHeaderPreview from '@/modules/kitchen-sink/Previews/ListItemHeaderPreview.vue';\r\nimport TableItemHeaderPreview from '@/modules/kitchen-sink/Previews/TableItemHeaderPreview.vue';\r\nimport FormTextInputPreview from '@/modules/kitchen-sink/Previews/FormTextInputPreview.vue';\r\nimport FormTextInfoPreview from '@/modules/kitchen-sink/Previews/FormTextInfoPreview.vue';\r\nimport FormAutocompleteSelectPreview from '@/modules/kitchen-sink/Previews/FormAutocompleteSelectPreview.vue';\r\nimport FormSelectPreview from '@/modules/kitchen-sink/Previews/FormSelectPreview.vue';\r\nimport FormConditionsCheckboxPreview from '@/modules/kitchen-sink/Previews/FormConditionsCheckboxPreview.vue';\r\nimport SkeletonLoaderDetailsPreview from '@/modules/kitchen-sink/Previews/SkeletonLoaderDetailsPreview.vue';\r\nimport IntersectMenuSectionPreview from '@/modules/kitchen-sink/Previews/IntersectMenuSectionPreview.vue';\r\nimport ListContainerPreview from '@/modules/kitchen-sink/Previews/ListContainerPreview.vue';\r\nimport FormCheckboxPreview from '@/modules/kitchen-sink/Previews/FormCheckboxPreview.vue';\r\nimport DetailRowPreview from '@/modules/kitchen-sink/Previews/DetailRowPreview.vue';\r\nimport CustomDataTablePreview from '@/modules/kitchen-sink/Previews/CustomDataTablePreview.vue';\r\n/*\r\nKitchen sink element entry: cf-ts-kitchen-sink-element-entry\r\n*/\r\nexport const elementsList: SinkListModel[] = [\r\n {\r\n title: `Edit card main`,\r\n description: ``,\r\n navigation: `Edit main`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component \r\n export default class EditCardMainPreview extends Vue {\r\n title = this.$t('KitchenSink.Previews.EditCardMainPreview.Title');\r\n }`,\r\n snippet: ``,\r\n preview: EditCardMainPreview\r\n },\r\n {\r\n title: `Edit card section`,\r\n description: ``,\r\n navigation: `Edit section`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component \r\n export default class EditCardSectionPreview extends Vue {\r\n title = this.$t('KitchenSink.Previews.EditCardSectionPreview.Title');\r\n expanded = true;\r\n collapsible = false;\r\n }`,\r\n snippet: ``,\r\n preview: EditCardSectionPreview\r\n },\r\n {\r\n title: `Empty list container`,\r\n description: ``,\r\n navigation: `Empty container`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n import { KitchenSinkRoute } from '@/modules/kitchen-sink/kitchen-sink-router.enum';\r\n\r\n @Component\r\n export default class EmptyListContainerPreview extends Vue {\r\n text = this.$t('KitchenSink.Previews.EmptyListContainerPreview.Text');\r\n routeName = KitchenSinkRoute.kitchenSink;\r\n }`,\r\n snippet: `cf-html-container-no-items-display`,\r\n preview: EmptyListContainerPreview\r\n },\r\n {\r\n title: `List menu`,\r\n description: ``,\r\n navigation: `List menu`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class ListMenuPreview extends Vue {\r\n disabled = false;\r\n }`,\r\n snippet: ``,\r\n preview: ListMenuPreview\r\n },\r\n {\r\n title: `List item header`,\r\n description: ``,\r\n navigation: `List header`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n import { KitchenSinkRoute } from '@/modules/kitchen-sink/kitchen-sink-router.enum';\r\n\r\n @Component\r\n export default class ListItemHeaderPreview extends Vue {\r\n title = this.$t('KitchenSink.Previews.ListItemHeaderPreview.Title');\r\n subTitle = this.$t('KitchenSink.Previews.ListItemHeaderPreview.subTitle');\r\n routeTo = KitchenSinkRoute.kitchenSink;\r\n icon = 'mdi-pencil';\r\n }`,\r\n snippet: `cf-list-item-header`,\r\n preview: ListItemHeaderPreview\r\n },\r\n {\r\n title: `Table item header`,\r\n description: ``,\r\n navigation: `Table header`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class TableItemHeaderPreview extends Vue {\r\n offerTitle = this.$t('KitchenSink.Previews.TableItemHeaderPreview.Title');\r\n orderNumber = this.$t('KitchenSink.Previews.TableItemHeaderPreview.SubTitle');\r\n }`,\r\n snippet: ``,\r\n preview: TableItemHeaderPreview\r\n },\r\n {\r\n title: `Form text input`,\r\n description: ``,\r\n navigation: `Form input`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class FormTextInputPreview extends Vue {\r\n lable = this.$t('KitchenSink.Previews.FormTextInputPreview.Label');\r\n value = this.$t('KitchenSink.Previews.FormTextInputPreview.Value');\r\n rules: object[] = [];\r\n }`,\r\n snippet: ``,\r\n preview: FormTextInputPreview\r\n },\r\n {\r\n title: `Form text info`,\r\n description: ``,\r\n navigation: `Form info`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n import { Currency } from '@/services/Api';\r\n \r\n @Component\r\n export default class FormTextInfoPreview extends Vue {\r\n currency: Currency = Currency.EUR;\r\n value = 82.21;\r\n label = this.$t('KitchenSink.Previews.FormTextInfoPreview.Label');\r\n }`,\r\n snippet: ``,\r\n preview: FormTextInfoPreview\r\n },\r\n {\r\n title: `Form autocomplete select`,\r\n description: ``,\r\n navigation: `Form autocomplete`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class FormAutocompleteSelectPreview extends Vue {\r\n label = this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Label');\r\n value = this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value').toString();\r\n items: string[] = [\r\n this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value').toString(),\r\n this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value1').toString(),\r\n this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value2').toString()\r\n ];\r\n itemText = this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Text').toString();\r\n itemValue = this.$t('KitchenSink.Previews.FormAutocompleteSelectPreview.Value').toString();\r\n }`,\r\n snippet: ``,\r\n preview: FormAutocompleteSelectPreview\r\n },\r\n {\r\n title: `Form select`,\r\n description: ``,\r\n navigation: `Form select`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class FormSelectPreview extends Vue {\r\n label = this.$t('KitchenSink.Previews.FormSelectPreview.Label');\r\n value = this.$t('KitchenSink.Previews.FormSelectPreview.Value').toString();\r\n items: string[] = [\r\n this.$t('KitchenSink.Previews.FormSelectPreview.Value').toString(),\r\n this.$t('KitchenSink.Previews.FormSelectPreview.Value1').toString(),\r\n this.$t('KitchenSink.Previews.FormSelectPreview.Value2').toString()\r\n ];\r\n itemText = this.$t('KitchenSink.Previews.FormSelectPreview.Text').toString();\r\n itemValue = this.$t('KitchenSink.Previews.FormSelectPreview.Value').toString();\r\n }`,\r\n snippet: ``,\r\n preview: FormSelectPreview\r\n },\r\n {\r\n title: `Form conditions checkbox`,\r\n description: ``,\r\n navigation: `Form checkbox`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class FormConditionsCheckboxPreview extends Vue {\r\n value = true;\r\n newTab = true;\r\n disabled = false;\r\n link = 'http://www.google.pl';\r\n linkText = this.$t('KitchenSink.Previews.FormConditionsCheckboxPreview.PrivacyPolicy');\r\n label = this.$t('KitchenSink.Previews.FormConditionsCheckboxPreview.Iagreeto');\r\n }`,\r\n snippet: ``,\r\n preview: FormConditionsCheckboxPreview\r\n },\r\n {\r\n title: `Form checkbox`,\r\n description: ``,\r\n navigation: `Form checkbox 2`,\r\n html: ` \r\n \r\n`,\r\n style: ``,\r\n typescript: `\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class FormCheckboxPreview extends Vue {\r\n checkboxValue: bool;\r\n disabled: bool;\r\n}\r\n`,\r\n snippet: ``,\r\n preview: FormCheckboxPreview\r\n },\r\n {\r\n title: `Skeleton loader details`,\r\n description: ``,\r\n navigation: `skeleton loader`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class SkeletonLoaderDetailsPreview extends Vue {}\r\n`,\r\n snippet: `cf-html-container-details`,\r\n preview: SkeletonLoaderDetailsPreview\r\n },\r\n {\r\n title: `Intersect menu section`,\r\n description: ``,\r\n navigation: `Intersect menu`,\r\n html: ` `,\r\n style: ``,\r\n typescript: ` import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class IntersectMenuSectionPreview extends Vue {\r\n id = '';\r\n }`,\r\n snippet: ``,\r\n preview: IntersectMenuSectionPreview\r\n },\r\n {\r\n title: `List`,\r\n description: ``,\r\n navigation: `List`,\r\n html: `\r\n\r\n`,\r\n style: ``,\r\n typescript: ` \r\nimport { Component, Vue } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class ListContainerPreview extends Vue {\r\n items = [\r\n {\r\n column1: 'Item 1 Column 1',\r\n column2: 'Item 1 Column 2'\r\n },\r\n {\r\n column1: 'Item 2 Column 1',\r\n column2: 'Item 2 Column 2'\r\n }\r\n ];\r\n}\r\n`,\r\n snippet: ``,\r\n preview: ListContainerPreview\r\n },\r\n {\r\n title: `Detail row`,\r\n description: ``,\r\n navigation: `Detail row`,\r\n html: ``,\r\n style: ``,\r\n typescript: `import { Component, Vue } from 'vue-property-decorator';\r\n\r\n @Component\r\n export default class DetailRowPreview extends Vue {\r\n label = this.$t('KitchenSink.Previews.DetailRowPreview.Label');\r\n value = this.$t('KitchenSink.Previews.DetailRowPreview.Value');\r\n }`,\r\n snippet: ``,\r\n preview: DetailRowPreview\r\n },\r\n {\r\n title: `Custom data table`,\r\n description: ``,\r\n navigation: `Custom data table`,\r\n html: ``,\r\n style: ``,\r\n typescript: `import { Component, Prop, Vue } from 'vue-property-decorator';\r\n import DataTableSortingHelper from '@/modules/layout/helpers/data-table-sorting.helper';\r\n import DataTableFilterHelper from '@/modules/layout/helpers/data-table-filter.helper';\r\n \r\n @Component\r\n export default class CustomDataTablePreview extends Vue {\r\n @Prop() data: any;\r\n \r\n created() {\r\n this.data = [\r\n { id: 1, value: 'value 1', number: 10 },\r\n { id: 2, value: 'value 2', number: 15 },\r\n { id: 3, value: 'value 3', number: 25 }\r\n ];\r\n }\r\n \r\n get headers() {\r\n return [\r\n {\r\n text: 'Id',\r\n value: 'id',\r\n sort: DataTableSortingHelper.sortByDefault\r\n },\r\n { text: 'Value', value: 'value', sort: DataTableSortingHelper.sortByDefault },\r\n { text: 'Number', value: 'number', sort: DataTableSortingHelper.sortByDefault }\r\n ];\r\n }\r\n \r\n get filters() {\r\n return [\r\n { value: 'value', items: this.data.map((d: any) => d.value) },\r\n {\r\n value: 'number',\r\n items: ['<=10'],\r\n filter: (value: any, search: any, item: any, activeFilters: any) => {\r\n if (activeFilters.number.includes('<=10')) {\r\n return value <= 10;\r\n } else {\r\n return true;\r\n }\r\n }\r\n }\r\n ];\r\n }\r\n \r\n customFilter(value: any, search: string | null, item: any) {\r\n if (!search) {\r\n return true;\r\n }\r\n \r\n return (\r\n DataTableFilterHelper.filterByString(item.id, search) || DataTableFilterHelper.filterByString(item.value, search)\r\n );\r\n }\r\n }`,\r\n snippet: ``,\r\n preview: CustomDataTablePreview\r\n }\r\n];\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"mt-0 no-shadow\"},[_c('edit-card-main',{attrs:{\"title\":_vm.item.title}},[_c('edit-card-section',{attrs:{\"title\":_vm.item.description}},[_c('v-card',{staticClass:\"no-boxshadow size-10 mx-auto\"},[_c('KitchenSinkPreview',{attrs:{\"preview\":_vm.item.preview}}),_c('v-toolbar',{staticClass:\"toolbar-height no-boxshadow\"},[_c('v-tabs',{staticClass:\"sink-toolbar-tabs\",attrs:{\"align-with-title\":\"\"},model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab',[_vm._v(\" \"+_vm._s(this.$t('KitchenSink.Tabs.Hide'))+\" \")]),_c('v-tab',[_vm._v(\" \"+_vm._s(this.$t('KitchenSink.Tabs.Template'))+\" \")]),(_vm.item.typescript != \"\")?_c('v-tab',[_vm._v(\" \"+_vm._s(this.$t('KitchenSink.Tabs.Script'))+\" \")]):_vm._e(),(_vm.item.style != \"\")?_c('v-tab',[_vm._v(\" \"+_vm._s(this.$t('KitchenSink.Tabs.Style'))+\" \")]):_vm._e(),(_vm.item.snippet != \"\")?_c('v-tab',[_vm._v(\" \"+_vm._s(this.$t('KitchenSink.Tabs.Snippet'))+\" \")]):_vm._e()],1)],1),_c('v-tabs-items',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab-item',[_c('div',{staticClass:\"border-hide-element\"})]),_c('v-tab-item',[_c('KitchenSinkHtml',{attrs:{\"html\":_vm.item.html}})],1),(_vm.item.typescript != \"\")?_c('v-tab-item',[_c('KitchenSinkTypeScript',{attrs:{\"typescript\":_vm.item.typescript}})],1):_vm._e(),(_vm.item.style != \"\")?_c('v-tab-item',[_c('KitchenSinkStyle',{attrs:{\"styles\":_vm.item.style}})],1):_vm._e(),(_vm.item.snippet != \"\")?_c('v-tab-item',[_c('KitchenSinkSnippet',{attrs:{\"snippet\":_vm.item.snippet}})],1):_vm._e()],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"pa-0\"},[_c('v-card',{staticClass:\"border-bottom-card overflow-x no-boxshadow\"},[_c('highlightjs',{staticClass:\"code-scope\",attrs:{\"language\":\"html\",\"code\":_vm.htmltemplate}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\n\r\n@Component({\r\n components: {}\r\n})\r\nexport default class KitchenSinkHtml extends Vue {\r\n @Prop() html!: string;\r\n htmltemplate = '';\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkHtml.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkHtml.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./KitchenSinkHtml.vue?vue&type=template&id=e38ab010&scoped=true&\"\nimport script from \"./KitchenSinkHtml.vue?vue&type=script&lang=ts&\"\nexport * from \"./KitchenSinkHtml.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e38ab010\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VContainer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"pa-0\"},[_c('v-card',{staticClass:\"preview-scope\"},[_c(_vm.preview,{tag:\"component\"})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\nimport { VueConstructor } from 'vue/types/umd';\r\n\r\n@Component({\r\n components: {}\r\n})\r\nexport default class KitchenSinkPreview extends Vue {\r\n @Prop() preview!: VueConstructor;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkPreview.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KitchenSinkPreview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./KitchenSinkPreview.vue?vue&type=template&id=7637577a&scoped=true&\"\nimport script from \"./KitchenSinkPreview.vue?vue&type=script&lang=ts&\"\nexport * from \"./KitchenSinkPreview.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7637577a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VContainer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-container',{staticClass:\"pa-0\"},[_c('v-card',{staticClass:\"border-bottom-card overflow-x no-boxshadow\"},[_c('highlightjs',{staticClass:\"code-scope\",attrs:{\"language\":\"html\",\"code\":_vm.typescripttemplate}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\r\nimport { Component, Vue, Prop } from 'vue-property-decorator';\r\n\r\n@Component({\r\n components: {}\r\n})\r\nexport default class KitchenSinkTypeScript extends Vue {\r\n @Prop() typescript!: string;\r\n typescripttemplate = `