{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductDetail.vue?6b67","webpack:///./src/store/facilities.ts","webpack:///./src/components/ReportModal.vue?36aa","webpack:///./src/store/timezoneTypes.ts","webpack:///./src/models/DataTable/DataTableSelection.ts","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardAccessStep.vue?4c16","webpack:///./src/views/AdminDash/vues/UserManagement/PasswordResetModal.vue?db74","webpack:///./src/lib/common/exceptions/login/LoginException.ts","webpack:///./src/store/errors.ts","webpack:///./src/store/opportunityTypes.ts","webpack:///./src/store/leagueTypes.ts","webpack:///./src/clients/clinicsClient.ts","webpack:///./src/lib/support/models/Clinic/data.ts","webpack:///./src/store/clinics.ts","webpack:///./src/clients/connect.ts","webpack:///./src/lib/support/models/Connect/data.ts","webpack:///./src/store/connects.ts","webpack:///./src/store/productGroupTypes.ts","webpack:///./src/store/phoneTypes.ts","webpack:///./src/store/addressTypes.ts","webpack:///./src/store/alerts.ts","webpack:///./src/store/partnerDayTypes.ts","webpack:///./src/store/partnerPhoneTypes.ts","webpack:///./src/store/partnerPreferredContactMethodTypes.ts","webpack:///./src/store/partnerPreferredTimeOfDayTypes.ts","webpack:///./src/store/partnerRoleTypes.ts","webpack:///./src/store/creationParameters.ts","webpack:///./src/store/returnStatusTypes.ts","webpack:///./src/store/positionTypes.ts","webpack:///./src/store/ProductFlow.ts","webpack:///./src/store/productOffering.ts","webpack:///./src/store/gpOrderTypes.ts","webpack:///./src/store/relationshipTypes.ts","webpack:///./src/store/leagueOrder.ts","webpack:///./src/store/upwardRunningAuth.ts","webpack:///./src/store/divisionGameTypes.ts","webpack:///./src/store/index.ts","webpack:///./src/store/urProductFlow.ts","webpack:///./src/components/UpwardRunning/OrderHistory/OrderDetail.vue?b4ee","webpack:///./src/views/Programs/Index.vue?f0a4","webpack:///./src/elements/CheckboxInput.vue?fb67","webpack:///./src/elements/CheckboxInput.vue","webpack:///./src/elements/CheckboxInput.vue?e29f","webpack:///./src/elements/CheckboxInput.vue?15f5","webpack:///./src/views/Programs/Divisions/Coaches/CoachManager.vue?f5aa","webpack:///./src/views/Programs/Divisions/common/vue/TeamToggle.vue?ec59","webpack:///./src/lib/common/exceptions/RuntimeException.ts","webpack:///./src/views/AdminDash/vues/ProductCachePanel.vue?acb7","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductStep.vue?ae50","webpack:///./src/lib/support/models/TeamPageAlertInfo/data.ts","webpack:///./src/views/Programs/Scheduling/Squads/SquadsSchedule.vue?37c6","webpack:///./src/components/SwapCoachAssignment.vue?ffc5","webpack:///./src/store/programTypes.ts","webpack:///./src/clients/ordersClient.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCoachLinkReport.vue?d2c7","webpack:///./src/clients/upwardRunningClient.ts","webpack:///./src/components/ConfirmationModal.vue?6c24","webpack:///./src/components/ConfirmationModal.vue","webpack:///./src/components/ConfirmationModal.vue?bd33","webpack:///./src/components/ConfirmationModal.vue?e39e","webpack:///./src/components/Orders/Cart.vue?21f8","webpack:///./src/components/Orders/CartLine.vue?f9ba","webpack:///./src/components/Orders/CartLine.vue","webpack:///./src/components/Orders/CartLine.vue?03e0","webpack:///./src/components/Orders/CartLine.vue?e80f","webpack:///./src/components/Orders/Cart.vue","webpack:///./src/components/Orders/Cart.vue?06bb","webpack:///./src/components/Orders/Cart.vue?1c2c","webpack:///./src/components/DivisionStandingScoreSelect.vue?0e06","webpack:///./src/services/jwtService.ts","webpack:///./src/clients/alertClient.ts","webpack:///./src/lib/support/models/DivisionGame/data.ts","webpack:///./src/lib/support/models/GeneratedTypes/xOrders/xShipToBase.ts","webpack:///./src/views/Programs/Orders/compositions/userOrderRollup.ts","webpack:///./src/elements/InputLabel.vue?09c6","webpack:///./src/elements/InputLabel.vue","webpack:///./src/elements/InputLabel.vue?0ee9","webpack:///./src/elements/InputLabel.vue?0167","webpack:///./src/elements/DateInput.vue?806a","webpack:///./src/elements/DateInput.vue","webpack:///./src/elements/DateInput.vue?dee6","webpack:///./src/elements/DateInput.vue?2b3c","webpack:///./src/lib/support/models/LeagueVolunteer/PlayerContactToLeagueVolunteer.ts","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/AccessFeeStep.vue?408e","webpack:///./src/views/Programs/Orders/vues/Order.vue?efe8","webpack:///./src/clients/productOfferingClient.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictListElement.vue?8f23","webpack:///./src/components/ModalMultiSelect.vue?3a4d","webpack:///./src/components/ModalMultiSelect.vue","webpack:///./src/components/ModalMultiSelect.vue?ae3a","webpack:///./src/components/ModalMultiSelect.vue?8a1c","webpack:///./src/elements/Combobox.vue?d878","webpack:///./src/components/DivisionImportModal.vue?2b80","webpack:///./src/elements/HtmlEditor2.vue?c613","webpack:///./src/lib/support/models/RestServiceResult/CombineDataArray.ts","webpack:///./src/clients/emailServiceClient.ts","webpack:///./src/views/Contact.vue?4ccd","webpack:///./src/components/UpwardRunning/Orders/OrderListSection.vue?ff62","webpack:///./src/components/UpwardRunning/Orders/OrderListSection.vue","webpack:///./src/components/UpwardRunning/Orders/OrderListSection.vue?dc88","webpack:///./src/components/UpwardRunning/Orders/OrderListSection.vue?616c","webpack:///./src/components/SidebarItem.vue?d2ae","webpack:///./src/clients/campsClient.ts","webpack:///./src/views/Programs/Divisions/Coaches/vues/CoachTeamCard.vue?37a8","webpack:///./src/views/Programs/Scheduling/Practices/PracticeScheduler.vue?8ab7","webpack:///./src/store/scheduling.ts","webpack:///./src/components/PhoneInput.vue?371f","webpack:///./src/components/PhoneInput.vue","webpack:///./src/components/PhoneInput.vue?90df","webpack:///./src/components/PhoneInput.vue?0c37","webpack:///./src/views/AdminDash/Dashboard.vue?af44","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/RefundRemoveTransaction.vue?718b","webpack:///./src/lib/support/store/orders/operations.ts","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventCalendar.vue?4695","webpack:///./src/lib/support/models/Camp/data.ts","webpack:///./src/store/camps.ts","webpack:///./src/views/AdminDash/vues/OrderHistory/NoteItem.vue?aaae","webpack:///./src/lib/support/models/SaveProductOfferingConfig/SavedProductOfferingConfig.ts","webpack:///./src/components/ConnectOverview.vue?20b3","webpack:///./src/elements/SideBySideScroll.vue?70d8","webpack:///./src/services/contactService.ts","webpack:///./src/singletons/TheSidebar.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderProductCard.vue?539a","webpack:///./src/composables/ModalValue.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCarpoolLinkReport.vue?ad55","webpack:///./src/components/SectionHeader.vue?2bee","webpack:///./src/models/Communication/EmailSuppressionStatus.ts","webpack:///./src/clients/communicationsClient.ts","webpack:///./src/filters/maxStringLength.ts","webpack:///./src/elements/CurrencyInput.vue?8387","webpack:///./src/elements/CurrencyInput.vue","webpack:///./src/elements/CurrencyInput.vue?9753","webpack:///./src/elements/CurrencyInput.vue?4e77","webpack:///./src/models/Grid/GridColumn.ts","webpack:///./src/elements/RadioGroupInput.vue?8d8e","webpack:///./src/elements/RadioGroupInput.vue","webpack:///./src/elements/RadioGroupInput.vue?2466","webpack:///./src/elements/RadioGroupInput.vue?1dad","webpack:///./src/lib/support/models/PlayerUDFValue/data.ts","webpack:///./src/elements/SearchInput.vue?35eb","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilityDropper.vue?f841","webpack:///./src/singletons/TheAuthWall.vue?dfae","webpack:///./src/views/Programs/Divisions/TeamManagement/TeamManager.vue?ec55","webpack:///./src/components/ShippingMethodSection.vue?6da1","webpack:///./src/components/ShippingMethodSelect.vue?6b6d","webpack:///./src/lib/support/models/GeneratedTypes/xOrders/xShippingMethodBase.ts","webpack:///./src/components/ShippingMethodSelect.vue","webpack:///./src/components/ShippingMethodSelect.vue?b13b","webpack:///./src/components/ShippingMethodSelect.vue?ea8c","webpack:///./src/components/ShippingMethodSection.vue","webpack:///./src/components/ShippingMethodSection.vue?2667","webpack:///./src/components/ShippingMethodSection.vue?6fde","webpack:///./src/components/ShippingAddressSection.vue?f3ff","webpack:///./src/components/AddAddressModal.vue?657d","webpack:///./src/components/AddAddressModal.vue","webpack:///./src/components/AddAddressModal.vue?374d","webpack:///./src/components/AddAddressModal.vue?28d4","webpack:///./src/components/ShippingAddressSection.vue","webpack:///./src/components/ShippingAddressSection.vue?0023","webpack:///./src/components/ShippingAddressSection.vue?c40e","webpack:///./src/lib/common/exceptions/login/TwoFactorAuthRequiredException.ts","webpack:///./src/components/PageContent.vue?d465","webpack:///./src/components/PageContent.vue","webpack:///./src/components/PageContent.vue?c031","webpack:///./src/components/PageContent.vue?6675","webpack:///./src/components/MenuTab.vue?20d9","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderItem.vue?d599","webpack:///./src/components/DropDownMultiSelect.vue?a10d","webpack:///./src/components/DropDownMultiSelect.vue","webpack:///./src/components/DropDownMultiSelect.vue?9ca0","webpack:///./src/components/DropDownMultiSelect.vue?b751","webpack:///./src/clients/facilitiesClient.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantListElement.vue?64d0","webpack:///./src/components/PhoneTypeSelect.vue?d23a","webpack:///./src/components/PhoneTypeSelect.vue","webpack:///./src/components/PhoneTypeSelect.vue?ddcb","webpack:///./src/components/PhoneTypeSelect.vue?5daf","webpack:///./src/lib/common/LeagueProductCategories.ts","webpack:///./src/components/SmallCard.vue?13ae","webpack:///./src/services/credentialsService.ts","webpack:///./src/views/Programs/Volunteers/ext/roleutils.ts","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionPreferences.vue?6db8","webpack:///./src/elements/DateInput.vue?d87f","webpack:///./src/lib/support/models/GeneratedTypes/xOrders/xRunningStartupOrderExt.ts","webpack:///./src/views/AdminDash/vues/ProgramSearchPanel.vue?be24","webpack:///./src/elements/Combobox.vue?2fdd","webpack:///./src/elements/Combobox.vue","webpack:///./src/elements/Combobox.vue?5834","webpack:///./src/elements/Combobox.vue?8243","webpack:///./src/views/Programs/Orders/orders/steps/Confirmation.vue?7a75","webpack:///./src/views/Connects/Archive.vue?5cf7","webpack:///./src/components/UpwardRunning/OrderHistory/OrderDetail.vue?6bb7","webpack:///./src/components/UpwardRunning/OrderHistory/OrderDetail.vue","webpack:///./src/components/UpwardRunning/OrderHistory/OrderDetail.vue?dc94","webpack:///./src/components/UpwardRunning/OrderHistory/OrderDetail.vue?1aa1","webpack:///./src/store/teamPageAlerts.ts","webpack:///./src/lib/support/models/Communication/PreviewMessage.ts","webpack:///./src/components/UpwardRunning/ProductFlow/StarterOrderItemStepUR.vue?ba90","webpack:///./src/store/genericUpwardTypes.ts","webpack:///./src/views/Programs/Scheduling/Practices/PracticeModal.vue?497d","webpack:///./src/components/Orders/OrderSummary.vue?5c75","webpack:///./src/lib/support/models/CheerSquadGameAppointment/data.ts","webpack:///./src/elements/InlineDateTimeInput2.vue?8ba6","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderCard.vue?d82e","webpack:///./src/elements/Loading.vue?8789","webpack:///./src/elements/Loading.vue","webpack:///./src/elements/Loading.vue?aaf9","webpack:///./src/elements/Loading.vue?5469","webpack:///./src/elements/SimpleGrid.vue?0076","webpack:///./src/elements/SimpleGrid.vue","webpack:///./src/elements/SimpleGrid.vue?93ff","webpack:///./src/elements/SimpleGrid.vue?8cf1","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/components/ClinicOverview.vue?7fab","webpack:///./src/components/DivisionGradeGenderList.vue?9233","webpack:///./src/lib/support/models/GeneratedTypes/xOrders/xStartupOrderExt.ts","webpack:///./src/elements/GradeRangeDropdowns.vue?0b71","webpack:///./src/elements/GradeRangeDropdowns.vue","webpack:///./src/elements/GradeRangeDropdowns.vue?2693","webpack:///./src/elements/GradeRangeDropdowns.vue?aeca","webpack:///./src/elements/ComboBoxInput.vue?408d","webpack:///./src/lib/common/exceptions/GeneralError.ts","webpack:///./src/components/OrderHistory/OrderShippers.vue?eb0d","webpack:///./src/components/OrderHistory/OrderShipment.vue?629d","webpack:///./src/components/OrderHistory/OrderShipment.vue","webpack:///./src/components/OrderHistory/OrderShipment.vue?3cea","webpack:///./src/components/OrderHistory/OrderShipment.vue?ebe3","webpack:///./src/components/OrderHistory/OrderShippers.vue","webpack:///./src/components/OrderHistory/OrderShippers.vue?8579","webpack:///./src/components/OrderHistory/OrderShippers.vue?42e3","webpack:///./src/components/SidebarItem.vue?135e","webpack:///./src/components/SidebarItem.vue","webpack:///./src/components/SidebarItem.vue?d6a8","webpack:///./src/components/SidebarItem.vue?0ab4","webpack:///./src/views/AdminDash/vues/OrderHistory/IntegrationNotesDialog.vue?99f2","webpack:///./src/components/OrderHistory/CostSummary.vue?8a8e","webpack:///./src/views/AdminDash/vues/UserManagementPanel.vue?1501","webpack:///./src/views/Camps/Archive.vue?3974","webpack:///./src/components/SectionHeader.vue?ed15","webpack:///./src/components/SectionHeader.vue","webpack:///./src/components/SectionHeader.vue?9126","webpack:///./src/components/SectionHeader.vue?734b","webpack:///./src/elements/Calendar.vue?33f8","webpack:///./src/lib/support/models/LeagueVolunteerRoleInfo/leagueVolunteerRoleToLeagueVounteerRoleInfo.ts","webpack:///./src/lib/support/models/LeagueVolunteerRole/leagueVolunteerRoleInfoToLeagueVolunteerRole.ts","webpack:///./src/lib/support/models/IndividualAddress/individualAddressInfoMapper.ts","webpack:///./src/lib/support/models/IndividualEmail/individualEmailInfoToIndividualEmail.ts","webpack:///./src/lib/support/models/IndividualPhone/individualPhoneInfoToIndividualPhone.ts","webpack:///./src/lib/support/models/ListInfo/IndividualEmailInfo/individaulEmailToIndividualEmailInfo.ts","webpack:///./src/lib/support/models/ListInfo/IndividualPhoneInfo/individualPhoneToIndividualPhoneInfo.ts","webpack:///./src/lib/support/models/LeagueVolunteer/leagueVolunteerInfoToLeagueVolunteer.ts","webpack:///./src/components/Carousel/Carousel.vue?5af5","webpack:///./src/components/Carousel/Slide.vue?e45c","webpack:///./src/components/Carousel/Slide.vue","webpack:///./src/components/Carousel/Slide.vue?3db7","webpack:///./src/components/Carousel/Slide.vue?3200","webpack:///./src/components/Carousel/Carousel.vue","webpack:///./src/components/Carousel/Carousel.vue?875f","webpack:///./src/components/Carousel/Carousel.vue?6240","webpack:///./src/components/MinistryAgreementModal.vue?6e4b","webpack:///./src/lib/support/store/orders/cache.ts","webpack:///./src/store/orders.ts","webpack:///./src/elements/PasswordInput.vue?be06","webpack:///./src/elements/PasswordInput.vue","webpack:///./src/elements/PasswordInput.vue?79a9","webpack:///./src/elements/PasswordInput.vue?7b85","webpack:///./src/components/Notifications/Notifications.vue?bc74","webpack:///./src/components/Notifications/Notifications.vue?5f0b","webpack:///./src/elements/TextInput.vue?af66","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityList.vue?15fe","webpack:///./src/assets/upward-sports-black.png","webpack:///./src/lib/components/exceptions/ComponentArgumentRuntimeException.ts","webpack:///./src/views/ResetPassword.vue?dc30","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCardField.vue?df37","webpack:///./src/components/UpwardRunning/Orders/OrderListSection.vue?7031","webpack:///./src/views/AdminDash/vues/TwilioApplicationPanel.vue?1a89","webpack:///./src/views/Programs/Orders/vues/history/ext/SectionNames.ts","webpack:///./src/components/CampOverview.vue?e214","webpack:///./src/components/SelectorCard.vue?a7a5","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductOfferingStep.vue?bfd2","webpack:///./src/components/AlertCloak.vue?bdc2","webpack:///./src/components/AlertCloak.vue","webpack:///./src/components/AlertCloak.vue?5b6c","webpack:///./src/components/AlertCloak.vue?5e59","webpack:///./src/store/partners.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ReportFooter.vue?9bf7","webpack:///./src/components/SelectorCard.vue?b88a","webpack:///./src/components/SelectorCard.vue","webpack:///./src/components/SelectorCard.vue?2b1d","webpack:///./src/components/SelectorCard.vue?5b1b","webpack:///./src/components/ModalDateTimePicker.vue?4c3a","webpack:///./src/elements/InlineDateTimeInput2.vue?9684","webpack:///./src/elements/InlineDateTimeInput2.vue","webpack:///./src/elements/InlineDateTimeInput2.vue?3147","webpack:///./src/elements/InlineDateTimeInput2.vue?d7eb","webpack:///./src/components/ModalDateTimePicker.vue","webpack:///./src/components/ModalDateTimePicker.vue?ce8d","webpack:///./src/components/ModalDateTimePicker.vue?d6a0","webpack:///./src/components/OrderHistory/OrderDetail.vue?763f","webpack:///./src/components/Editor.vue?21ff","webpack:///./src/elements/CheckboxGroupInput.vue?cf51","webpack:///./src/lib/support/models/PlayerContact/data.ts","webpack:///./src/elements/TextInput.vue?06ed","webpack:///./src/elements/TextInput.vue","webpack:///./src/elements/TextInput.vue?2b93","webpack:///./src/elements/TextInput.vue?0014","webpack:///./src/views/Programs/Reports/vues/ActiveReport.vue?a834","webpack:///./src/views/Programs/Reports/DynamicReports/CoachConflict.vue?39a8","webpack:///./src/views/Leagues/Registration.vue?a9e6","webpack:///./src/elements/MemoInput.vue?6678","webpack:///./src/elements/MemoInput.vue","webpack:///./src/elements/MemoInput.vue?e86f","webpack:///./src/elements/MemoInput.vue?0185","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/batchevals/BatchEval.vue?791a","webpack:///./src/components/SiteLoading.vue?1967","webpack:///./src/services/gradeService.ts","webpack:///./src/store/authorization.ts","webpack:///./src/views/Programs/Scheduling/Games/auto/SchedulerSettingsPanel.vue?bfb0","webpack:///./src/clients/teamsClient.ts","webpack:///./src/components/LeagueOverview.vue?9f0b","webpack:///./src/components/AccordionItem.vue?a1a9","webpack:///./src/components/AccordionItem.vue","webpack:///./src/components/AccordionItem.vue?0aa2","webpack:///./src/components/AccordionItem.vue?4d69","webpack:///./src/lib/support/models/ProductOfferingInfo/ProductOfferingInfo.ts","webpack:///./src/components/CampLeagueStarterBox.vue?027f","webpack:///./src/components/GridCard.vue?0ab6","webpack:///./src/elements/YesNoInput.vue?0037","webpack:///./src/elements/YesNoInput.vue","webpack:///./src/elements/YesNoInput.vue?11de","webpack:///./src/elements/YesNoInput.vue?efd5","webpack:///./src/lib/support/models/LeagueCoach/data.ts","webpack:///./src/components/Tree.vue?b84d","webpack:///./src/components/Orders/OrderListSection.vue?6e9d","webpack:///./src/services/restService.ts","webpack:///./src/views/AdminDash/vues/EmailSuppressionPanel.vue?67e8","webpack:///./src/filters/properCase.ts","webpack:///./src/store/divisions.ts","webpack:///./src/elements/PhoneInputMask.vue?b68b","webpack:///./src/elements/PhoneInputMask.vue","webpack:///./src/elements/PhoneInputMask.vue?3cd6","webpack:///./src/elements/PhoneInputMask.vue?bb29","webpack:///./src/views/Programs/Orders/vues/components/PromoCardModal.vue?a397","webpack:///./src/lib/common/upwardOpportunityTypes.ts","webpack:///./src/elements/CheckboxGroupInput.vue?56de","webpack:///./src/elements/CheckboxGroupInput.vue","webpack:///./src/elements/CheckboxGroupInput.vue?8da9","webpack:///./src/elements/CheckboxGroupInput.vue?a43f","webpack:///./src/elements/GenderSelect.vue?2fa3","webpack:///./src/elements/GenderSelect.vue","webpack:///./src/elements/GenderSelect.vue?70fb","webpack:///./src/elements/GenderSelect.vue?b429","webpack:///./src/elements/VeeValidateForm.vue?e641","webpack:///./src/elements/VeeValidateForm.vue","webpack:///./src/elements/VeeValidateForm.vue?9e0f","webpack:///./src/elements/VeeValidateForm.vue?b4ea","webpack:///./src/elements/TextLikeWrapper.vue?1557","webpack:///./src/elements/TextLikeWrapper.vue","webpack:///./src/elements/TextLikeWrapper.vue?d610","webpack:///./src/elements/TextLikeWrapper.vue?825c","webpack:///./src/components/AddAddressModal.vue?ad0b","webpack:///./src/lib/support/models/SavedProductOfferingConfigDetail/SavedProductOfferingConfigDetail.ts","webpack:///./src/services/restServiceUR.ts","webpack:///./src/views/Programs/Scheduling/Squads/ext/CheerSchedulingGrid.vue?a654","webpack:///./src/components/ProgramCreationPicker.vue?c7b3","webpack:///./src/views/Programs/Orders/orders/steps/SelectManualOrderType.vue?322b","webpack:///./src/views/Programs/Orders/orders/steps/SelectManualOrderType.vue","webpack:///./src/views/Programs/Orders/orders/steps/SelectManualOrderType.vue?56d5","webpack:///./src/views/Programs/Orders/orders/steps/SelectManualOrderType.vue?5f9d","webpack:///./src/views/Programs/Welcome.vue?1a23","webpack:///./src/lib/support/utilities/phone/phoneUtil.ts","webpack:///./src/views/Programs/Orders/vues/components/ProductQuantitySelector.vue?87ad","webpack:///./src/models/PendingOrderAdditionalProductInfo/data.ts","webpack:///./src/views/Programs/Orders/vues/components/ProductQuantitySelector.vue","webpack:///./src/views/Programs/Orders/vues/components/ProductQuantitySelector.vue?0b91","webpack:///./src/views/Programs/Orders/vues/components/ProductQuantitySelector.vue?a5b5","webpack:///./src/views/Programs/Scheduling/Games/AutomaticScheduling.vue?db8c","webpack:///./src/components/OrderHistory/OrderListSection.vue?5dc1","webpack:///./src/components/OrderHistory/OrderListSection.vue","webpack:///./src/components/OrderHistory/OrderListSection.vue?bf85","webpack:///./src/components/OrderHistory/OrderListSection.vue?cb5e","webpack:///./src/components/Modal.vue?2648","webpack:///./src/components/Modal.vue","webpack:///./src/components/Modal.vue?9873","webpack:///./src/components/Modal.vue?c464","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetail.vue?5d33","webpack:///./src/lib/support/store/leagueOrder/leagueOrderState.ts","webpack:///./src/components/Tree.vue?464a","webpack:///./src/components/Tree.vue","webpack:///./src/components/Tree.vue?455e","webpack:///./src/components/Tree.vue?97eb","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardBaseFeeStep.vue?264e","webpack:///./src/components/OrderHistory/ParticipantOrderGrouped.vue?de1d","webpack:///./src/views/AdminDash/vues/PartnerSearchPanel.vue?0287","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/CoachOverageReport.vue?8a03","webpack:///./src/store/returnReasonTypes.ts","webpack:///./src/components/DropDownMultiSelect.vue?0466","webpack:///./src/elements/GradeRangeDropdowns.vue?d3b3","webpack:///./src/filters/date.ts","webpack:///./src/views/Programs/Scheduling/Games/GameSchedule.vue?6f4b","webpack:///./src/components/LeagueDevotionTrackSelection.vue?0946","webpack:///./src/views/UpwardRunning/Resources/Resources.vue?45d9","webpack:///./src/components/InfoModal.vue?f6d8","webpack:///./src/components/InfoModal.vue","webpack:///./src/components/InfoModal.vue?cb70","webpack:///./src/components/InfoModal.vue?1c63","webpack:///./src/store/paymentTypes.ts","webpack:///./src/components/ProductFlow/ProductSetupStepper/StarterItemsStep.vue?3452","webpack:///./src/lib/support/models/IndividualAddress/data.ts","webpack:///./src/components/OrderHistory/TrackingNumber.vue?a8a2","webpack:///./src/components/OrderHistory/TrackingNumber.vue","webpack:///./src/components/OrderHistory/TrackingNumber.vue?7061","webpack:///./src/components/OrderHistory/TrackingNumber.vue?26b8","webpack:///./src/lib/support/utilities/address/postalCodeUtil.ts","webpack:///./src/lib/support/models/UpwardTypes/UpdwardDayTypeID/days.ts","webpack:///./src/components/OrderHistory/CostSummary.vue?0cea","webpack:///./src/components/OrderHistory/CostSummary.vue","webpack:///./src/components/OrderHistory/CostSummary.vue?b6f4","webpack:///./src/components/OrderHistory/CostSummary.vue?61e3","webpack:///./src/views/UpwardRunning/Resources/ResourceList.vue?55da","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventModal.vue?8e86","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/EnlargeableProduct.vue?4283","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductDetail.vue?86b4","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductDetail.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductDetail.vue?91c4","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductDetail.vue?5677","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/EnlargeableProduct.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/EnlargeableProduct.vue?8814","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/EnlargeableProduct.vue?76d4","webpack:///./src/singletons/TheHeader.vue?0ee3","webpack:///./src/components/Orders/CartLine.vue?a470","webpack:///./src/composables/BaseInputWrapperProps.ts","webpack:///./src/views/Programs/Reports/Index.vue?41aa","webpack:///./src/views/UpwardRunning/Archive.vue?7ceb","webpack:///./src/models/UpwardRunning/Order/xRunningOrderExt.ts","webpack:///./src/lib/support/models/MiscMappings/Gender.ts","webpack:///./src/elements/DataTable/vue/EditBtn.vue?2b9d","webpack:///./src/elements/DataTable/vue/EditBtn.vue","webpack:///./src/elements/DataTable/vue/EditBtn.vue?d122","webpack:///./src/elements/DataTable/vue/EditBtn.vue?bfe4","webpack:///./src/components/PlayerEvaluationEditGrid.vue?e224","webpack:///./src/lib/components/PlayerEvaluationEditModal/EvaluationEditGridColumns.ts","webpack:///./src/components/PlayerEvaluationEditGrid.vue","webpack:///./src/components/PlayerEvaluationEditGrid.vue?d8d2","webpack:///./src/components/PlayerEvaluationEditGrid.vue?bcba","webpack:///./src/views/Programs/Reports/DynamicReports/PlayerConflict.vue?d83d","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/PackageIcon.vue?1b57","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/PackageIcon.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/PackageIcon.vue?ce40","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/PackageIcon.vue?7761","webpack:///./src/views/AdminDash/vues/RecentOrderHistoryPanel.vue?dc48","webpack:///./src/store/productOfferingProductPackageTypes.ts","webpack:///./src/views/Programs/Resources/Resources.vue?ab19","webpack:///./src/views/AdminDash/vues/AdminTools/Tools.vue?571f","webpack:///./src/views/Programs/Orders/vues/Order.vue?df76","webpack:///./src/views/Programs/Orders/orders/steps/SelectKit.vue?0bd9","webpack:///./src/views/Programs/Orders/orders/steps/SelectKit.vue","webpack:///./src/views/Programs/Orders/orders/steps/SelectKit.vue?7af8","webpack:///./src/views/Programs/Orders/orders/steps/SelectKit.vue?5881","webpack:///./src/views/Programs/Orders/orders/steps/Shipping.vue?f5ff","webpack:///./src/views/Programs/Orders/orders/steps/Shipping.vue","webpack:///./src/views/Programs/Orders/orders/steps/Shipping.vue?1f16","webpack:///./src/views/Programs/Orders/orders/steps/Shipping.vue?dbec","webpack:///./src/views/Programs/Orders/orders/steps/Review.vue?d089","webpack:///./src/views/Programs/Orders/orders/steps/Review.vue","webpack:///./src/views/Programs/Orders/orders/steps/Review.vue?ba25","webpack:///./src/views/Programs/Orders/orders/steps/Review.vue?99f0","webpack:///./src/views/Programs/Orders/orders/steps/Confirmation.vue?a77d","webpack:///./src/views/Programs/Orders/orders/steps/Confirmation.vue","webpack:///./src/views/Programs/Orders/orders/steps/Confirmation.vue?a362","webpack:///./src/views/Programs/Orders/orders/steps/Confirmation.vue?f990","webpack:///./src/views/Programs/Orders/orders/steps/SelectQuantities.vue?434a","webpack:///./src/views/Programs/Orders/orders/steps/SelectQuantities.vue","webpack:///./src/views/Programs/Orders/orders/steps/SelectQuantities.vue?febb","webpack:///./src/views/Programs/Orders/orders/steps/SelectQuantities.vue?c4b4","webpack:///./src/views/Programs/Orders/orders/lib/OrderConfiguration.ts","webpack:///./src/views/Programs/Orders/vues/Order.vue","webpack:///./src/views/Programs/Orders/vues/Order.vue?9c45","webpack:///./src/views/Programs/Orders/vues/Order.vue?8073","webpack:///./src/services/phoneNumberService.ts","webpack:///./src/models/LeagueAbstraction/enums/LeagueTypeEnum.ts","webpack:///./src/store/partnerNearByAccounts.ts","webpack:///./src/components/Notifications/Notification.vue?b9d3","webpack:///./src/clients/upwardRunningOrderClient.ts","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/ChargebackDetails.vue?4bd5","webpack:///./src/clients/participantsClient.ts","webpack:///./src/store/promptToSave.ts","webpack:///./src/models/LeagueAbstraction/LeagueAbstraction.ts","webpack:///./src/components/UpwardRunning/UpwardRunningOverview.vue?694d","webpack:///./src/components/PhoneInput.vue?a726","webpack:///./src/elements/HtmlEditor2.vue?516f","webpack:///./src/LetterList.ts","webpack:///./src/elements/DivWrapper.vue?b7bf","webpack:///./src/elements/DivWrapper.vue","webpack:///./src/elements/DivWrapper.vue?2a77","webpack:///./src/elements/DivWrapper.vue?e087","webpack:///./src/elements/HtmlEditor2.vue","webpack:///./src/elements/HtmlEditor2.vue?49ae","webpack:///./src/elements/HtmlEditor2.vue?c616","webpack:///./src/views/Programs/Scheduling/Facilities/AvailablePracticeDays.vue?1ba4","webpack:///./src/elements/StepperStep.vue?2e11","webpack:///./src/elements/StepperHeader.vue?40ef","webpack:///./src/elements/StepperHeader.vue","webpack:///./src/elements/StepperHeader.vue?cb9b","webpack:///./src/elements/StepperHeader.vue?8a5d","webpack:///./src/elements/StepperStep.vue","webpack:///./src/elements/StepperStep.vue?b6e3","webpack:///./src/elements/StepperStep.vue?0ea7","webpack:///./src/singletons/TheErrorRenderer.vue?ae67","webpack:///./src/lib/support/models/GeneratedTypes/xOrders/xRunningOrderExt.ts","webpack:///./src/store/teams.ts","webpack:///./src/lib/support/models/LeaguePlayerInfo/LeaguePlayerToLeaguePlayerInfo.ts","webpack:///./src/store/participants.ts","webpack:///./src/views/AdminDash/vues/OrderHistory/RunningOrderDetailScreen.vue?2482","webpack:///./src/components/FullBody.vue?d5fb","webpack:///./src/components/FullBody.vue","webpack:///./src/components/FullBody.vue?d110","webpack:///./src/components/FullBody.vue?c07b","webpack:///./src/components/ModalDateTimePicker.vue?80cc","webpack:///./src/components/OrderHistory/TrackingNumber.vue?2b89","webpack:///./src/views/Programs/Orders/vues/components/ProductQuantitySelector.vue?32b3","webpack:///./src/components/Alert.vue?5b76","webpack:///./src/lib/support/models/GeneratedTypes/xOrders/xOrderProduct.ts","webpack:///./src/views/Programs/Resources/ResourceList.vue?a383","webpack:///./src/views/Programs/Orders/orders/steps/SelectQuantities.vue?52bd","webpack:///./src/elements/NumberInput.vue?a235","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/OPRTransactionItem.vue?fea2","webpack:///./src/store/leagueScoringTypes.ts","webpack:///./src/components/Alert.vue?9736","webpack:///./src/components/Alert.vue","webpack:///./src/components/Alert.vue?ce44","webpack:///./src/components/Alert.vue?b91d","webpack:///./src/elements/StepperContent.vue?4414","webpack:///./src/elements/StepperContent.vue","webpack:///./src/elements/StepperContent.vue?0864","webpack:///./src/elements/StepperContent.vue?8f8b","webpack:///./src/elements/ButtonPicker.vue?6c7a","webpack:///./src/views/Programs/Divisions/Coaches/vues/TeamCardField.vue?19fa","webpack:///./src/elements/Calendar.vue?18f1","webpack:///./src/store/sizeTypes.ts","webpack:///./src/services/useFeatureFlags.ts","webpack:///./src/clients/featureClient.ts","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderProductCardUR.vue?2878","webpack:///./src/services/localStorageService.ts","webpack:///./src/components/Notifications/NotificationCard.vue?c154","webpack:///./src/views/ComponentTest.vue?efa6","webpack:///./src/components/ContactPicker.vue?fac8","webpack:///./src/components/DivisionForm.vue?5c23","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderDetailScreen.vue?2b52","webpack:///./src/components/HorizontalTabFilter.vue?00ff","webpack:///./src/components/Orders/Cart.vue?7cc7","webpack:///./src/elements/Stepper.vue?2cac","webpack:///./src/elements/Stepper.vue","webpack:///./src/elements/Stepper.vue?3fe5","webpack:///./src/elements/Stepper.vue?b1e2","webpack:///./src/elements/SimpleGrid.vue?7d61","webpack:///./src/views/Programs/Scheduling/Facilities/GroupList.vue?c914","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityEditor.vue?763f","webpack:///./src/components/HorizontalNavTabs.vue?9334","webpack:///./src/lib/support/models/DivisionGame/DivisionGameInfoToDivisionGame.ts","webpack:///./src/services/facilityService.ts","webpack:///./src/lib/common/csv/downloadCSV.ts","webpack:///./src/elements/GradeRangeSlider.vue?0d6f","webpack:///./src/elements/DayOfWeekPicker.vue?9109","webpack:///./src/elements/DayOfWeekPicker.vue","webpack:///./src/elements/DayOfWeekPicker.vue?bd55","webpack:///./src/elements/DayOfWeekPicker.vue?94e8","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionDayPreferencsModal.vue?cb02","webpack:///./src/elements/TimePicker2.vue?7ef3","webpack:///./src/elements/TimePicker2.vue","webpack:///./src/elements/TimePicker2.vue?4302","webpack:///./src/elements/TimePicker2.vue?9fb9","webpack:///./src/lib/support/models/FacilityAvailability/types.ts","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsScreen.vue?4f9d","webpack:///./src/elements/StepperStep.vue?2947","webpack:///./src/components/ShippingAddressDisplay.vue?7e56","webpack:///./src/components/ShippingAddressDisplay.vue","webpack:///./src/components/ShippingAddressDisplay.vue?4937","webpack:///./src/components/ShippingAddressDisplay.vue?fa8e","webpack:///./src/views/AdminDash/vues/ReturnsOrderListSection.vue?ef67","webpack:///./src/models/Order/OrderProductSize.ts","webpack:///./src/lib/common/ProgramTypes.ts","webpack:///./src/views/Programs/Index.vue?e7e3","webpack:///./src/views/Programs/Index.vue","webpack:///./src/views/Programs/Index.vue?fd03","webpack:///./src/views/Programs/Index.vue?2140","webpack:///./src/views/Programs/CreateOrEdit.vue?eaa3","webpack:///./src/views/Programs/CreateOrEdit.vue","webpack:///./src/views/Programs/CreateOrEdit.vue?1951","webpack:///./src/views/Programs/CreateOrEdit.vue?1c5d","webpack:///./src/views/Programs/New.vue?1a4e","webpack:///./src/components/OpportunityTypeSelect.vue?d638","webpack:///./src/components/OpportunityTypeSelect.vue","webpack:///./src/components/OpportunityTypeSelect.vue?07a8","webpack:///./src/components/OpportunityTypeSelect.vue?590e","webpack:///./src/components/LeagueTypeSelect.vue?fed3","webpack:///./src/components/LeagueTypeSelect.vue","webpack:///./src/components/LeagueTypeSelect.vue?5893","webpack:///./src/components/LeagueTypeSelect.vue?b5cb","webpack:///./src/views/Programs/ReadFirstModal.vue?31f4","webpack:///./src/views/Programs/ReadFirstModal.vue","webpack:///./src/views/Programs/ReadFirstModal.vue?3268","webpack:///./src/views/Programs/ReadFirstModal.vue?1503","webpack:///./src/models/UpwardRunning/Auth/UpwardRunningCredentials.ts","webpack:///./src/views/Programs/New.vue","webpack:///./src/views/Programs/New.vue?3e41","webpack:///./src/views/Programs/New.vue?3993","webpack:///./src/views/Programs/Welcome.vue?2080","webpack:///./src/components/ProgramCreationPicker.vue?7a50","webpack:///./src/components/ProgramCreationPicker.vue","webpack:///./src/components/ProgramCreationPicker.vue?1b46","webpack:///./src/components/ProgramCreationPicker.vue?3c65","webpack:///./src/components/PreviousEstimates.vue?1f78","webpack:///./src/components/PreviousEstimates.vue","webpack:///./src/components/PreviousEstimates.vue?da4b","webpack:///./src/components/PreviousEstimates.vue?8d5e","webpack:///./src/views/Programs/Welcome.vue","webpack:///./src/views/Programs/Welcome.vue?f2eb","webpack:///./src/views/Programs/Welcome.vue?0c7e","webpack:///./src/views/Programs/ChooseEditOrNew.vue?c299","webpack:///./src/components/CurrentPrograms.vue?5a28","webpack:///./src/components/LeagueOverview.vue?f584","webpack:///./src/components/ProgramIcon.vue?2e3b","webpack:///./src/components/ProgramIcon.vue","webpack:///./src/components/ProgramIcon.vue?d122","webpack:///./src/components/ProgramIcon.vue?fd3e","webpack:///./src/components/ProgramOverview.vue?1295","webpack:///./src/components/ProgramOverview.vue","webpack:///./src/components/ProgramOverview.vue?e96a","webpack:///./src/components/ProgramOverview.vue?6351","webpack:///./src/components/LeagueOverview.vue","webpack:///./src/components/LeagueOverview.vue?72ab","webpack:///./src/components/LeagueOverview.vue?c206","webpack:///./src/components/ClinicOverview.vue?347c","webpack:///./src/elements/SmartRouterLink.vue?0bb3","webpack:///./src/elements/SmartRouterLink.vue","webpack:///./src/elements/SmartRouterLink.vue?005c","webpack:///./src/elements/SmartRouterLink.vue?ef8f","webpack:///./src/components/ClinicOverview.vue","webpack:///./src/components/ClinicOverview.vue?cfc0","webpack:///./src/components/ClinicOverview.vue?beb2","webpack:///./src/components/ConnectOverview.vue?d4c6","webpack:///./src/components/ConnectOverview.vue","webpack:///./src/components/ConnectOverview.vue?fbcd","webpack:///./src/components/ConnectOverview.vue?1166","webpack:///./src/components/CampOverview.vue?8521","webpack:///./src/components/CampOverview.vue","webpack:///./src/components/CampOverview.vue?34e9","webpack:///./src/components/CampOverview.vue?4ff3","webpack:///./src/components/UpwardRunning/UpwardRunningOverview.vue?56b4","webpack:///./src/components/UpwardRunning/UpwardRunningOverview.vue","webpack:///./src/components/UpwardRunning/UpwardRunningOverview.vue?29df","webpack:///./src/components/UpwardRunning/UpwardRunningOverview.vue?a105","webpack:///./src/components/ResumeProgram.vue?c080","webpack:///./src/components/ResumeProgramItem.vue?6047","webpack:///./src/lib/common/LeagueTypesPretty.ts","webpack:///./src/components/ResumeProgramItem.vue","webpack:///./src/components/ResumeProgramItem.vue?0ee9","webpack:///./src/components/ResumeProgramItem.vue?b4de","webpack:///./src/components/UpwardRunning/ResumeURProgram.vue?a470","webpack:///./src/components/UpwardRunning/ResumeURProgram.vue","webpack:///./src/components/UpwardRunning/ResumeURProgram.vue?2bc1","webpack:///./src/components/UpwardRunning/ResumeURProgram.vue?a27d","webpack:///./src/models/League/StartingSelection.ts","webpack:///./src/components/ResumeProgram.vue","webpack:///./src/components/ResumeProgram.vue?85e8","webpack:///./src/components/ResumeProgram.vue?ad46","webpack:///./src/components/CurrentPrograms.vue","webpack:///./src/components/CurrentPrograms.vue?285c","webpack:///./src/components/CurrentPrograms.vue?4045","webpack:///./src/views/Programs/ChooseEditOrNew.vue","webpack:///./src/views/Programs/ChooseEditOrNew.vue?eb59","webpack:///./src/views/Programs/ChooseEditOrNew.vue?edbd","webpack:///./src/views/Estimate/Estimator.vue?6955","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperLeague.vue?a401","webpack:///./src/components/ProductFlow/ProductSetupStepper/InfoStep.vue?23ef","webpack:///./src/components/ProductFlow/Step.vue?0a7b","webpack:///./src/components/ProductFlow/Step.vue","webpack:///./src/components/ProductFlow/Step.vue?75c5","webpack:///./src/components/ProductFlow/Step.vue?2a67","webpack:///./src/components/ProductFlow/ProductSetupStepper/ProgramInformation/ProgramInformationForm.vue?5530","webpack:///./src/lib/support/models/UpwardTypes/UpwardProgramTypeID.ts","webpack:///./src/lib/common/ProductOfferingConfig.ts","webpack:///./src/components/UpwardValidationObserver.vue?cfce","webpack:///./src/components/UpwardValidationObserver.vue","webpack:///./src/components/UpwardValidationObserver.vue?02ae","webpack:///./src/components/UpwardValidationObserver.vue?037c","webpack:///./src/elements/IntegerInput.vue?7e25","webpack:///./src/elements/IntegerInput.vue","webpack:///./src/elements/IntegerInput.vue?597c","webpack:///./src/elements/IntegerInput.vue?1bfb","webpack:///./src/components/GradeGenderEstimateSelector.vue?078d","webpack:///./src/elements/GradeRangeSlider.vue?babe","webpack:///./src/elements/GradeRangeSlider.vue","webpack:///./src/elements/GradeRangeSlider.vue?1841","webpack:///./src/elements/GradeRangeSlider.vue?cf2c","webpack:///./src/components/GradeGenderEstimateSelector.vue","webpack:///./src/components/GradeGenderEstimateSelector.vue?0ec5","webpack:///./src/components/GradeGenderEstimateSelector.vue?597c","webpack:///./src/components/ProductFlow/ProductSetupStepper/ProgramInformation/ProgramInformationTypes.ts","webpack:///./src/components/ProductFlow/ProductSetupStepper/ProgramInformation/ProgramInformationForm.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/ProgramInformation/ProgramInformationForm.vue?5360","webpack:///./src/components/ProductFlow/ProductSetupStepper/ProgramInformation/ProgramInformationForm.vue?375d","webpack:///./src/components/ProductFlow/ProductSetupStepper/InfoStep.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/InfoStep.vue?eb17","webpack:///./src/components/ProductFlow/ProductSetupStepper/InfoStep.vue?9894","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardAccessStep.vue?7f3b","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardAccessStep.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardAccessStep.vue?073b","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardAccessStep.vue?0503","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardBaseFeeStep.vue?4fcf","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardBaseFeeStep.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardBaseFeeStep.vue?313c","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardBaseFeeStep.vue?1aee","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardSystemsStep.vue?cda3","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardSystemsStep.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardSystemsStep.vue?80d5","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardSystemsStep.vue?233a","webpack:///./src/components/ProductFlow/ProductSetupStepper/StarterItemsStep.vue?dcab","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderPicker.vue?19f8","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderProductCard.vue?00e1","webpack:///./src/lib/support/models/StartupOrderProductInfo.ts","webpack:///./src/lib/support/models/SavedProductOfferingConfigStartupOrderProduct/SavedProductOfferingConfigStartupOrderProduct.ts","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderProductCard.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderProductCard.vue?c52d","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderProductCard.vue?c2ca","webpack:///./src/services/offeringService.ts","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderPicker.vue","webpack:///./src/lib/support/models/UpwardTypes/TypeProductOfferingProductPackageID.ts","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderPicker.vue?2808","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderPicker.vue?3606","webpack:///./src/components/ProductFlow/ProductSetupStepper/StarterItemsStep.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/StarterItemsStep.vue?8f21","webpack:///./src/components/ProductFlow/ProductSetupStepper/StarterItemsStep.vue?9630","webpack:///./src/components/ProductFlow/ProductSetupStepper/ParticipantKitStep.vue?aa9d","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ParticipantKitStepper.vue?7e18","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductOfferingStep.vue?13f3","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductGroupPicker.vue?a9ca","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductGroupPicker.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductGroupPicker.vue?91ff","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductGroupPicker.vue?c227","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductOfferingStep.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductOfferingStep.vue?449b","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductOfferingStep.vue?be98","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductStep.vue?5933","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductPicker.vue?c512","webpack:///./src/lib/support/models/ProductOfferingProductInfo/ProductOfferingProductInfo.ts","webpack:///./src/lib/common/upwardColorTypes.ts","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductPicker.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductPicker.vue?d7e8","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/ProductPicker.vue?be40","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/OptionalProductPicker.vue?490b","webpack:///./src/lib/common/ProductOfferingTypes.ts","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/OptionalProductCard.vue?65b4","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/OptionalProductCard.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/OptionalProductCard.vue?1a04","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/OptionalProductCard.vue?5bfd","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/OptionalProductPicker.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/OptionalProductPicker.vue?8176","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/OptionalProductPicker.vue?9243","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderPicker.vue?ba99","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderCard.vue?f96f","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderCard.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderCard.vue?b44c","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderCard.vue?e8c2","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderPicker.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderPicker.vue?e5c7","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderPicker.vue?1542","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductStep.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductStep.vue?70db","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductStep.vue?53f4","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/Packages.vue?cd0e","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/Packages.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/Packages.vue?467c","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/Packages.vue?d209","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ParticipantKitStepper.vue","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ParticipantKitStepper.vue?0cf5","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ParticipantKitStepper.vue?3868","webpack:///./src/components/ProductFlow/ProductSetupStepper/ParticipantKitStep.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/ParticipantKitStep.vue?7330","webpack:///./src/components/ProductFlow/ProductSetupStepper/ParticipantKitStep.vue?db38","webpack:///./src/components/ProductFlow/ProductSetupStepper/RunningTotal.vue?4d94","webpack:///./src/elements/ButtonPicker.vue?fb81","webpack:///./src/elements/ButtonPicker.vue","webpack:///./src/elements/ButtonPicker.vue?0e31","webpack:///./src/elements/ButtonPicker.vue?6f4f","webpack:///./src/components/ProductFlow/data/CampColorProducts.ts","webpack:///./src/components/ProductFlow/ProductSetupStepper/RunningTotal.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/RunningTotal.vue?6020","webpack:///./src/components/ProductFlow/ProductSetupStepper/RunningTotal.vue?9f75","webpack:///./src/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue?6be5","webpack:///./src/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue?3226","webpack:///./src/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue?d017","webpack:///./src/components/ProductFlow/ProductSetupStepper/data.ts","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperLogic.ts","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperLeague.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperLeague.vue?8bb4","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperLeague.vue?38a5","webpack:///./src/views/Estimate/Estimator.vue","webpack:///./src/views/Estimate/Estimator.vue?c4cc","webpack:///./src/views/Estimate/Estimator.vue?d2ba","webpack:///./src/views/Connects/Setup.vue?a331","webpack:///./src/views/Connects/Setup.vue","webpack:///./src/views/Connects/Setup.vue?6fd8","webpack:///./src/views/Connects/Setup.vue?d7c6","webpack:///./src/views/Connects/Information.vue?422f","webpack:///./src/composables/ConnectSetup.ts","webpack:///./src/services/resourceService.ts","webpack:///./src/elements/SaveContinueButton.vue?92a2","webpack:///./src/elements/SaveContinueButton.vue","webpack:///./src/elements/SaveContinueButton.vue?0f03","webpack:///./src/elements/SaveContinueButton.vue?8b48","webpack:///./src/views/Connects/Information.vue","webpack:///./src/views/Connects/Information.vue?949c","webpack:///./src/views/Connects/Information.vue?f9a1","webpack:///./src/views/Connects/ConnectIndex.vue?ad38","webpack:///./src/views/Connects/ConnectIndex.vue","webpack:///./src/views/Connects/ConnectIndex.vue?0dbe","webpack:///./src/views/Connects/ConnectIndex.vue?70c1","webpack:///./src/lib/support/router/idHelper.ts","webpack:///./src/router/orders.ts","webpack:///./src/views/Programs/Resources/Resources.vue?829a","webpack:///./src/views/Programs/Resources/RoleResources.vue?da22","webpack:///./src/views/Programs/Resources/ResourceTile.vue?9c79","webpack:///./src/clients/resourceUsageClient.ts","webpack:///./src/views/Programs/Resources/ResourceTile.vue","webpack:///./src/views/Programs/Resources/ResourceTile.vue?5f7b","webpack:///./src/views/Programs/Resources/ResourceTile.vue?a1b9","webpack:///./src/views/Programs/Resources/RoleResources.vue","webpack:///./src/views/Programs/Resources/RoleResources.vue?2c73","webpack:///./src/views/Programs/Resources/RoleResources.vue?d7bd","webpack:///./src/views/Programs/Resources/ResourceList.vue?aec6","webpack:///./src/elements/ToggleSwitchInput.vue?e6b6","webpack:///./src/elements/ToggleSwitchInput.vue","webpack:///./src/elements/ToggleSwitchInput.vue?dbdf","webpack:///./src/elements/ToggleSwitchInput.vue?d248","webpack:///./src/views/Programs/Resources/ResourceList.vue","webpack:///./src/views/Programs/Resources/ResourceList.vue?4ea9","webpack:///./src/views/Programs/Resources/ResourceList.vue?6810","webpack:///./src/views/Programs/Resources/AdCommissionerResources.vue?c1bc","webpack:///./src/views/Programs/Resources/AdCommissionerResources.vue","webpack:///./src/views/Programs/Resources/AdCommissionerResources.vue?59c0","webpack:///./src/views/Programs/Resources/AdCommissionerResources.vue?f9cf","webpack:///./src/views/Programs/Resources/Resources.vue","webpack:///./src/views/Programs/Resources/Resources.vue?4bab","webpack:///./src/views/Programs/Resources/Resources.vue?a33e","webpack:///./src/router/resources.ts","webpack:///./src/views/Connects/Archive.vue?1347","webpack:///./src/views/Connects/Archive.vue","webpack:///./src/views/Connects/Archive.vue?c8c5","webpack:///./src/views/Connects/Archive.vue?2a0f","webpack:///./src/views/Connects/Leadership.vue?1603","webpack:///./src/components/ContactPickerAndEditor.vue?78c9","webpack:///./src/components/ContactPicker.vue?4163","webpack:///./src/components/SmallCard.vue?fbaa","webpack:///./src/components/SmallCard.vue","webpack:///./src/components/SmallCard.vue?6b24","webpack:///./src/components/SmallCard.vue?e4e6","webpack:///./src/components/ContactPicker.vue","webpack:///./src/components/ContactPicker.vue?1177","webpack:///./src/components/ContactPicker.vue?8d33","webpack:///./src/components/ContactForm.vue?5dea","webpack:///./src/components/PreferredContactDaySelect.vue?4b1c","webpack:///./src/components/PreferredContactDaySelect.vue","webpack:///./src/components/PreferredContactDaySelect.vue?d7bd","webpack:///./src/components/PreferredContactDaySelect.vue?63b2","webpack:///./src/components/PreferredContactMethodSelect.vue?4ec4","webpack:///./src/components/PreferredContactMethodSelect.vue","webpack:///./src/components/PreferredContactMethodSelect.vue?801b","webpack:///./src/components/PreferredContactMethodSelect.vue?a92c","webpack:///./src/components/PreferredContactTimeSelect.vue?cc94","webpack:///./src/components/PreferredContactTimeSelect.vue","webpack:///./src/components/PreferredContactTimeSelect.vue?8e65","webpack:///./src/components/PreferredContactTimeSelect.vue?ee5d","webpack:///./src/components/PartnerRoleTypeSelect.vue?aeba","webpack:///./src/components/PartnerRoleTypeSelect.vue","webpack:///./src/components/PartnerRoleTypeSelect.vue?2440","webpack:///./src/components/PartnerRoleTypeSelect.vue?34a9","webpack:///./src/components/ContactForm.vue","webpack:///./src/components/ContactForm.vue?7e1a","webpack:///./src/components/ContactForm.vue?dffb","webpack:///./src/components/ContactPickerAndEditor.vue","webpack:///./src/components/ContactPickerAndEditor.vue?12c9","webpack:///./src/components/ContactPickerAndEditor.vue?4a27","webpack:///./src/views/Connects/vues/SetupCompleteConfirmation.vue?4f1c","webpack:///./src/views/Connects/vues/SetupCompleteConfirmation.vue","webpack:///./src/views/Connects/vues/SetupCompleteConfirmation.vue?c413","webpack:///./src/views/Connects/vues/SetupCompleteConfirmation.vue?f035","webpack:///./src/views/Connects/Leadership.vue","webpack:///./src/views/Connects/Leadership.vue?a933","webpack:///./src/views/Connects/Leadership.vue?6799","webpack:///./src/router/connect.ts","webpack:///./src/views/Clinics/Setup.vue?310f","webpack:///./src/views/Clinics/Setup.vue","webpack:///./src/views/Clinics/Setup.vue?3857","webpack:///./src/views/Clinics/Setup.vue?1152","webpack:///./src/views/Clinics/Information.vue?9fc0","webpack:///./src/composables/ClinicSetup.ts","webpack:///./src/views/Clinics/Information.vue","webpack:///./src/views/Clinics/Information.vue?2443","webpack:///./src/views/Clinics/Information.vue?8364","webpack:///./src/views/Clinics/ClinicIndex.vue?0cb9","webpack:///./src/views/Clinics/ClinicIndex.vue","webpack:///./src/views/Clinics/ClinicIndex.vue?e584","webpack:///./src/views/Clinics/ClinicIndex.vue?673c","webpack:///./src/views/Clinics/Archive.vue?d287","webpack:///./src/views/Clinics/Archive.vue","webpack:///./src/views/Clinics/Archive.vue?f6e0","webpack:///./src/views/Clinics/Archive.vue?3381","webpack:///./src/views/Clinics/Leadership.vue?5384","webpack:///./src/views/Clinics/vues/SetupCompleteConfirmation.vue?a37d","webpack:///./src/views/Clinics/vues/SetupCompleteConfirmation.vue","webpack:///./src/views/Clinics/vues/SetupCompleteConfirmation.vue?d81e","webpack:///./src/views/Clinics/vues/SetupCompleteConfirmation.vue?7882","webpack:///./src/views/Clinics/Leadership.vue","webpack:///./src/views/Clinics/Leadership.vue?f7e4","webpack:///./src/views/Clinics/Leadership.vue?68a1","webpack:///./src/router/clinics.ts","webpack:///./src/views/Programs/Divisions/DivisionsAndTeams.vue?325a","webpack:///./src/lib/common/LeagueScoringTypes.ts","webpack:///./src/views/Programs/Divisions/DivisionsAndTeams.vue","webpack:///./src/views/Programs/Divisions/DivisionsAndTeams.vue?b55b","webpack:///./src/views/Programs/Divisions/DivisionsAndTeams.vue?70af","webpack:///./src/views/Programs/Divisions/Divisions.vue?cab5","webpack:///./src/components/DivisionGrid.vue?4d4e","webpack:///./src/lib/support/models/GeneratedTypes/ListInfo/LeagueDivisionGradeInfo.ts","webpack:///./src/components/DivisionGrid.vue","webpack:///./src/components/DivisionGrid.vue?4f72","webpack:///./src/components/DivisionGrid.vue?e7d9","webpack:///./src/components/DivisionForm.vue?217b","webpack:///./src/elements/DatesInput.vue?c2bf","webpack:///./src/elements/DatesInput.vue","webpack:///./src/elements/DatesInput.vue?0487","webpack:///./src/elements/DatesInput.vue?0af5","webpack:///./src/elements/GameFormatSelect.vue?a2bb","webpack:///./src/elements/GameFormatSelect.vue","webpack:///./src/elements/GameFormatSelect.vue?c36d","webpack:///./src/elements/GameFormatSelect.vue?445c","webpack:///./src/elements/PracticePlanSelect.vue?a3df","webpack:///./src/elements/PracticePlanSelect.vue","webpack:///./src/elements/PracticePlanSelect.vue?67a9","webpack:///./src/elements/PracticePlanSelect.vue?4ea5","webpack:///./src/lib/support/models/Program/LeagueListItem.ts","webpack:///./src/components/LeagueScoringSelect.vue?9878","webpack:///./src/components/LeagueScoringSelect.vue","webpack:///./src/components/LeagueScoringSelect.vue?941c","webpack:///./src/components/LeagueScoringSelect.vue?dadd","webpack:///./src/lib/support/models/ListInfo/DivisionGameInfo/time_util.ts","webpack:///./src/components/DivisionForm.vue","webpack:///./src/components/DivisionForm.vue?3039","webpack:///./src/components/DivisionForm.vue?e520","webpack:///./src/components/DivisionImportModal.vue?7b51","webpack:///./src/components/DivisionImportModal.vue","webpack:///./src/components/DivisionImportModal.vue?930a","webpack:///./src/components/DivisionImportModal.vue?a28b","webpack:///./src/components/DivisionGradeGenderList.vue?b259","webpack:///./src/lib/support/models/GeneratedTypes/ListInfo/LeagueProgramGenderGradeInfo.ts","webpack:///./src/components/DivisionGradeGenderList.vue","webpack:///./src/components/DivisionGradeGenderList.vue?3052","webpack:///./src/components/DivisionGradeGenderList.vue?ef74","webpack:///./src/views/Programs/Divisions/Divisions.vue","webpack:///./src/views/Programs/Divisions/Divisions.vue?ed91","webpack:///./src/views/Programs/Divisions/Divisions.vue?9007","webpack:///./src/views/Programs/Divisions/Participants.vue?b199","webpack:///./src/views/Programs/Divisions/Participants.vue","webpack:///./src/views/Programs/Divisions/Participants.vue?fea9","webpack:///./src/views/Programs/Divisions/Participants.vue?4877","webpack:///./src/views/Programs/Divisions/Coaches.vue?e447","webpack:///./src/views/Programs/Divisions/vues/DivisionHeader.vue?f7d8","webpack:///./src/components/DivisionSelect.vue?438b","webpack:///./src/lib/support/models/LeagueDivisionInfo/data.ts","webpack:///./src/components/DivisionSelect.vue","webpack:///./src/models/TeamManagement/CoachConflictTypeEnum.ts","webpack:///./src/components/DivisionSelect.vue?a0bb","webpack:///./src/components/DivisionSelect.vue?3b30","webpack:///./src/views/Programs/Divisions/vues/DivisionHeader.vue","webpack:///./src/views/Programs/Divisions/vues/DivisionHeader.vue?51b7","webpack:///./src/views/Programs/Divisions/vues/DivisionHeader.vue?a61c","webpack:///./src/views/Programs/Divisions/Coaches/CoachManager.vue?6277","webpack:///./src/views/Programs/Divisions/common/vue/CoachList.vue?798f","webpack:///./src/views/Programs/Divisions/common/vue/CoachListElement.vue?563c","webpack:///./src/views/Programs/Divisions/common/vue/CoachListElement.vue","webpack:///./src/views/Programs/Divisions/common/vue/CoachListElement.vue?c301","webpack:///./src/views/Programs/Divisions/common/vue/CoachListElement.vue?c727","webpack:///./src/views/Programs/Divisions/common/vue/CoachList.vue","webpack:///./src/views/Programs/Divisions/common/vue/CoachList.vue?ee94","webpack:///./src/views/Programs/Divisions/common/vue/CoachList.vue?2a9c","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictList.vue?f4d8","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictListElement.vue?64f2","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictListElement.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictListElement.vue?a7dc","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictListElement.vue?d22e","webpack:///./src/views/Programs/Divisions/TeamManagement/logic/participants.ts","webpack:///./src/lib/support/models/ListInfo/TeamPlayerInfo/data.ts","webpack:///./src/lib/support/models/ListInfo/TeamCoachInfo/LeagueCoachProgramInfoFLATToTeamCoachInfo.ts","webpack:///./src/lib/support/models/ListInfo/TeamPlayerInfo/LeaguePlayerInfoToTeamPlayerInfo.ts","webpack:///./src/views/Programs/Divisions/common/js/teams.ts","webpack:///./src/views/Programs/Divisions/common/js/coaches.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/logic/facilities.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/logic/ManagerLogic.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/logic/userPreferences.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictList.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictList.vue?0899","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictList.vue?0686","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictFilter.vue?8676","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictFilter.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictFilter.vue?a18e","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/CoachConflictFilter.vue?842d","webpack:///./src/views/Programs/Divisions/common/vue/TeamToggle.vue?3563","webpack:///./src/views/Programs/Divisions/common/vue/TeamToggle.vue","webpack:///./src/views/Programs/Divisions/common/vue/TeamToggle.vue?0f66","webpack:///./src/views/Programs/Divisions/common/vue/TeamToggle.vue?71ff","webpack:///./src/elements/SideBySideScroll.vue?67b5","webpack:///./src/elements/ShowToggle.vue?3197","webpack:///./src/elements/ShowToggle.vue","webpack:///./src/elements/ShowToggle.vue?387b","webpack:///./src/elements/ShowToggle.vue?ba9e","webpack:///./src/elements/SideBySideScroll.vue","webpack:///./src/elements/SideBySideScroll.vue?b05f","webpack:///./src/elements/SideBySideScroll.vue?339f","webpack:///./src/views/Programs/Divisions/Coaches/vues/TeamCardField.vue?b738","webpack:///./src/views/Programs/Divisions/Coaches/vues/CoachTeamCard.vue?f733","webpack:///./src/lib/support/models/ListInfo/DivisionTeamInfo/data.ts","webpack:///./src/composables/TeamCard.ts","webpack:///./src/views/Programs/Divisions/Coaches/vues/CoachTeamCard.vue","webpack:///./src/views/Programs/Divisions/Coaches/logic/ManagerLogic.ts","webpack:///./src/views/Programs/Divisions/Coaches/vues/CoachTeamCard.vue?7d92","webpack:///./src/views/Programs/Divisions/Coaches/vues/CoachTeamCard.vue?15f2","webpack:///./src/views/Programs/Divisions/TeamManagement/logic/teamSort.ts","webpack:///./src/components/ModalConfirmation.vue?39ed","webpack:///./src/components/ModalConfirmation.vue","webpack:///./src/components/ModalConfirmation.vue?864b","webpack:///./src/components/ModalConfirmation.vue?3332","webpack:///./src/views/Programs/Divisions/Coaches/vues/TeamCardField.vue","webpack:///./src/views/Programs/Divisions/Coaches/vues/TeamCardField.vue?f31f","webpack:///./src/views/Programs/Divisions/Coaches/vues/TeamCardField.vue?38c0","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamListSort.vue?1d92","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamListSort.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamListSort.vue?190d","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamListSort.vue?3e15","webpack:///./src/views/Programs/Divisions/Coaches/CoachManager.vue","webpack:///./src/views/Programs/Divisions/Coaches/CoachManager.vue?24e1","webpack:///./src/views/Programs/Divisions/Coaches/CoachManager.vue?659c","webpack:///./src/components/SwapCoachAssignment.vue?cc7b","webpack:///./src/components/SwapCoachAssignment.vue","webpack:///./src/components/SwapCoachAssignment.vue?cfac","webpack:///./src/components/SwapCoachAssignment.vue?71ec","webpack:///./src/views/Programs/Divisions/ext/divisionUtils.ts","webpack:///./src/views/Programs/Divisions/Coaches.vue","webpack:///./src/models/Calendar/enums.ts","webpack:///./src/views/Programs/Divisions/Coaches.vue?d3c6","webpack:///./src/views/Programs/Divisions/Coaches.vue?df5d","webpack:///./src/views/Programs/Divisions/Teams.vue?8238","webpack:///./src/filters/numberToFixed.ts","webpack:///./src/views/Programs/Divisions/vues/AutoCreateTeamsModal.vue?0e86","webpack:///./src/elements/ToggleSlot.vue?50ee","webpack:///./src/elements/ToggleSlot.vue","webpack:///./src/elements/ToggleSlot.vue?3c83","webpack:///./src/elements/ToggleSlot.vue?a262","webpack:///./src/views/Programs/Divisions/vues/AutoCreateTeamsModal.vue","webpack:///./src/views/Programs/Divisions/vues/AutoCreateTeamsModal.vue?0624","webpack:///./src/views/Programs/Divisions/vues/AutoCreateTeamsModal.vue?d345","webpack:///./src/views/Programs/Divisions/Teams.vue","webpack:///./src/views/Programs/Divisions/Teams.vue?e6d6","webpack:///./src/views/Programs/Divisions/Teams.vue?425e","webpack:///./src/views/Programs/Divisions/Practices.vue?97dd","webpack:///./src/views/Programs/Scheduling/Practices/PracticeScheduler.vue?3acf","webpack:///./src/elements/Calendar.vue?e8a7","webpack:///./src/elements/Calendar/CalendarNav.vue?39f1","webpack:///./src/elements/Calendar/CalendarNav.vue","webpack:///./src/elements/Calendar/CalendarNav.vue?9b2e","webpack:///./src/elements/Calendar/CalendarNav.vue?3c53","webpack:///./src/elements/Calendar/CalendarOptions.vue?9f0e","webpack:///./src/elements/Calendar/CalendarOptions.vue","webpack:///./src/elements/Calendar/CalendarOptions.vue?a9e4","webpack:///./src/elements/Calendar/CalendarOptions.vue?bcc3","webpack:///./src/elements/Calendar/CalendarableEvents.vue?97a6","webpack:///./src/elements/Calendar/CalendarableEvents.vue","webpack:///./src/elements/Calendar/CalendarableEvents.vue?d69f","webpack:///./src/elements/Calendar/CalendarableEvents.vue?eb3c","webpack:///./src/elements/Calendar/helper.ts","webpack:///./src/elements/Calendar.vue","webpack:///./src/elements/Calendar.vue?7ee9","webpack:///./src/elements/Calendar.vue?627d","webpack:///./src/components/HorizontalTabs.vue?f7af","webpack:///./src/components/HorizontalTabs.vue","webpack:///./src/components/HorizontalTabs.vue?7ddc","webpack:///./src/components/HorizontalTabs.vue?1d06","webpack:///./src/components/HorizontalTabFilter.vue?d62d","webpack:///./src/components/HorizontalTabFilter.vue","webpack:///./src/components/HorizontalTabFilter.vue?a324","webpack:///./src/components/HorizontalTabFilter.vue?cf23","webpack:///./src/lib/support/models/ScheduleBlocks/AvailabilityToScheduleBlock.ts","webpack:///./src/views/Programs/Scheduling/Practices/PracticeModal.vue?a6ee","webpack:///./src/models/Scheduling/PracticeModalInfoType.ts","webpack:///./src/views/Programs/Scheduling/Practices/PracticeModal.vue","webpack:///./src/views/Programs/Scheduling/Practices/PracticeModal.vue?093d","webpack:///./src/views/Programs/Scheduling/Practices/PracticeModal.vue?0360","webpack:///./src/lib/support/utilities/numbers/undefinedIsZero.ts","webpack:///./src/views/Programs/Scheduling/Squads/ScheduleDragItem.vue?e490","webpack:///./src/views/Programs/Scheduling/Squads/ScheduleDragItem.vue","webpack:///./src/views/Programs/Scheduling/Squads/ScheduleDragItem.vue?59f8","webpack:///./src/views/Programs/Scheduling/Squads/ScheduleDragItem.vue?1439","webpack:///./src/views/Programs/Scheduling/ext/colors.ts","webpack:///./src/views/Programs/Scheduling/Practices/PracticeScheduler.vue","webpack:///./src/views/Programs/Scheduling/Practices/PracticeScheduler.vue?35a7","webpack:///./src/views/Programs/Scheduling/Practices/PracticeScheduler.vue?7162","webpack:///./src/views/Programs/Divisions/Practices.vue","webpack:///./src/views/Programs/Divisions/Practices.vue?d0d1","webpack:///./src/views/Programs/Divisions/Practices.vue?9e2c","webpack:///./src/views/Programs/Divisions/TeamManagement.vue?1961","webpack:///./src/views/Programs/Divisions/TeamManagement/TeamManager.vue?f412","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantList.vue?921f","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantListElement.vue?5813","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantListElement.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantListElement.vue?b788","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantListElement.vue?b0bb","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantList.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantList.vue?0b75","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantList.vue?ccf6","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictList.vue?3de7","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictListElement.vue?10cb","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictListElement.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictListElement.vue?8451","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictListElement.vue?c8d4","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerAdminNoteEditModal.vue?4416","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerAdminNoteEditModal.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerAdminNoteEditModal.vue?9022","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerAdminNoteEditModal.vue?e33d","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictList.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictList.vue?ff3a","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictList.vue?dc11","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TabMenu.vue?23e1","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TabMenu.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TabMenu.vue?17be","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TabMenu.vue?1c84","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/UnassignDivisionParticipants.vue?8eac","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/UnassignDivisionParticipants.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/UnassignDivisionParticipants.vue?81a4","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/UnassignDivisionParticipants.vue?0573","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ColumnSelector.vue?5853","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ColumnSelector.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ColumnSelector.vue?2179","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ColumnSelector.vue?281d","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamColumnSelector.vue?4794","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamColumnSelector.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamColumnSelector.vue?8295","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamColumnSelector.vue?1836","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantSort.vue?bca8","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantSort.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantSort.vue?667c","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ParticipantSort.vue?2cb4","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictFilter.vue?73b9","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictFilter.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictFilter.vue?0079","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictFilter.vue?13c7","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamSort.vue?058a","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamSort.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamSort.vue?6d1a","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamSort.vue?6c38","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCardField.vue?f2de","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCard.vue?7a35","webpack:///./src/lib/support/models/TeamPlayerInfo/TeamPlayerInfoToLeaguePlayerInfo.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/logic/participantFilters.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCard.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/TeamManager.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCard.vue?9d0f","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCard.vue?c178","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCardField.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCardField.vue?8997","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCardField.vue?3b79","webpack:///./src/views/Programs/Divisions/TeamManagement/DraftOptionsInfo.vue?0dbd","webpack:///./src/views/Programs/Divisions/TeamManagement/DraftOptionsInfo.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/DraftOptionsInfo.vue?d1a4","webpack:///./src/views/Programs/Divisions/TeamManagement/DraftOptionsInfo.vue?6e80","webpack:///./src/views/Programs/Divisions/TeamManagement/logic/participantSort.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/TeamManager.vue?9911","webpack:///./src/views/Programs/Divisions/TeamManagement/TeamManager.vue?19c3","webpack:///./src/views/Programs/Divisions/vues/DraftSummaryReportModal.vue?3f47","webpack:///./src/components/ReportModal.vue?62db","webpack:///./src/lib/support/utilities/html2pdf/html2pdf.ts","webpack:///./src/components/ReportModal.vue","webpack:///./src/components/ReportModal.vue?ed48","webpack:///./src/components/ReportModal.vue?6e6f","webpack:///./src/clients/reportsClient.ts","webpack:///./src/views/Programs/Divisions/vues/DraftSummaryReportModal.vue","webpack:///./src/views/Programs/Divisions/vues/DraftSummaryReportModal.vue?b0ba","webpack:///./src/views/Programs/Divisions/vues/DraftSummaryReportModal.vue?9582","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/FilterModal.vue?a5c9","webpack:///./src/elements/RangeSlider.vue?ed0a","webpack:///./src/elements/RangeSlider.vue","webpack:///./src/elements/RangeSlider.vue?09e4","webpack:///./src/elements/RangeSlider.vue?f62a","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/FilterModal.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/FilterModal.vue?52c3","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/FilterModal.vue?6e17","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ReportFooter.vue?5685","webpack:///./src/lib/support/models/LeagueDivisionContactInfo/data.ts","webpack:///./src/lib/support/models/LeagueDivisionExtendedInfo/data.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/logic/reports.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCoachLinkReport.vue?55c9","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCoachLinkReport.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCoachLinkReport.vue?2771","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCoachLinkReport.vue?a244","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/CoachOverageReport.vue?d0a4","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/CoachOverageReport.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/CoachOverageReport.vue?9867","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/CoachOverageReport.vue?63ac","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/EvaluationsMissingReport.vue?f6c1","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/batchevals/BatchEval.vue?5e93","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/batchevals/BatchEval.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/batchevals/BatchEval.vue?3ada","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/batchevals/BatchEval.vue?8840","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/EvaluationsMissingReport.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/EvaluationsMissingReport.vue?4ae3","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/EvaluationsMissingReport.vue?0a29","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCarpoolLinkReport.vue?4758","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCarpoolLinkReport.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCarpoolLinkReport.vue?979c","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCarpoolLinkReport.vue?9130","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ReportFooter.vue","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ReportFooter.vue?5fc0","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/ReportFooter.vue?c76a","webpack:///./src/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentModal.vue?cc49","webpack:///./src/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentChoices.vue?2243","webpack:///./src/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentChoices.vue","webpack:///./src/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentChoices.vue?a569","webpack:///./src/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentChoices.vue?9c51","webpack:///./src/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentModal.vue","webpack:///./src/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentModal.vue?974a","webpack:///./src/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentModal.vue?2549","webpack:///./src/views/Programs/Divisions/TeamManagement.vue","webpack:///./src/views/Programs/Divisions/TeamManagement.vue?c67e","webpack:///./src/views/Programs/Divisions/TeamManagement.vue?be55","webpack:///./src/views/Programs/Divisions/StandingsAndScores.vue?b8e2","webpack:///./src/components/DivisionStandingList.vue?07c6","webpack:///./src/lib/support/models/GeneratedTypes/ListInfo/LeagueDivisionStandingsInfo.ts","webpack:///./src/components/DivisionStandingList.vue","webpack:///./src/components/DivisionStandingList.vue?b5f1","webpack:///./src/components/DivisionStandingList.vue?4ce9","webpack:///./src/components/DivisionGameList.vue?f441","webpack:///./src/views/Programs/Scheduling/Games/ext/GameModal.vue?ebfb","webpack:///./src/elements/ComboBoxInput.vue?3f0d","webpack:///./src/elements/ComboBoxInput.vue","webpack:///./src/elements/ComboBoxInput.vue?9344","webpack:///./src/elements/ComboBoxInput.vue?134d","webpack:///./src/views/Programs/Scheduling/Games/ext/GameModal.vue","webpack:///./src/views/Programs/Scheduling/Games/ext/GameModal.vue?7919","webpack:///./src/views/Programs/Scheduling/Games/ext/GameModal.vue?2361","webpack:///./src/lib/support/models/GeneratedTypes/ListInfo/LeagueDivisionGameInfo.ts","webpack:///./src/components/DivisionGameList.vue","webpack:///./src/components/DivisionGameList.vue?c807","webpack:///./src/components/DivisionGameList.vue?41dc","webpack:///./src/views/Programs/Divisions/vues/DivisionStandingScoresHeader.vue?22a1","webpack:///./src/components/DivisionStandingScoreSelect.vue?5272","webpack:///./src/components/DivisionStandingScoreSelect.vue","webpack:///./src/components/DivisionStandingScoreSelect.vue?aed7","webpack:///./src/components/DivisionStandingScoreSelect.vue?7ec4","webpack:///./src/views/Programs/Divisions/vues/DivisionStandingScoresHeader.vue","webpack:///./src/views/Programs/Divisions/vues/DivisionStandingScoresHeader.vue?5a2f","webpack:///./src/views/Programs/Divisions/vues/DivisionStandingScoresHeader.vue?6f6d","webpack:///./src/views/Programs/Divisions/StandingsAndScores.vue","webpack:///./src/views/Programs/Divisions/StandingsAndScores.vue?5c55","webpack:///./src/views/Programs/Divisions/StandingsAndScores.vue?198d","webpack:///./src/router/divisions.ts","webpack:///./src/views/Programs/Scheduling/Index.vue?ddcb","webpack:///./src/views/Programs/Scheduling/Index.vue","webpack:///./src/views/Programs/Scheduling/Index.vue?303b","webpack:///./src/views/Programs/Scheduling/Index.vue?167d","webpack:///./src/views/Programs/Scheduling/Facilities/Facilities.vue?eeba","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityList.vue?9a72","webpack:///./src/elements/GroupBox.vue?af41","webpack:///./src/elements/GroupBox.vue","webpack:///./src/elements/GroupBox.vue?0b94","webpack:///./src/elements/GroupBox.vue?5bc3","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityImport.vue?8ba0","webpack:///./src/views/Programs/Scheduling/Facilities/ext/logic.ts","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityImport.vue","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityImport.vue?440c","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityImport.vue?cc38","webpack:///./src/views/Programs/Scheduling/Facilities/ext/headers.ts","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityList.vue","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityList.vue?bb70","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityList.vue?cbfc","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityEditor.vue?e314","webpack:///./src/views/Programs/Scheduling/Facilities/AvailablePracticeDays.vue?7ecb","webpack:///./src/views/Programs/Scheduling/Facilities/AvailablePracticeDays.vue","webpack:///./src/views/Programs/Scheduling/Facilities/AvailablePracticeDays.vue?c06f","webpack:///./src/views/Programs/Scheduling/Facilities/AvailablePracticeDays.vue?e344","webpack:///./src/views/Programs/Scheduling/Facilities/AvailableGameDays.vue?c465","webpack:///./src/views/Programs/Scheduling/Facilities/AvailableGameDays.vue","webpack:///./src/views/Programs/Scheduling/Facilities/AvailableGameDays.vue?8e5e","webpack:///./src/views/Programs/Scheduling/Facilities/AvailableGameDays.vue?ad88","webpack:///./src/views/Programs/Scheduling/Facilities/GroupList.vue?05da","webpack:///./src/views/Programs/Scheduling/Facilities/GroupList.vue","webpack:///./src/views/Programs/Scheduling/Facilities/GroupList.vue?18fd","webpack:///./src/views/Programs/Scheduling/Facilities/GroupList.vue?6d47","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityEditor.vue","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityEditor.vue?a947","webpack:///./src/views/Programs/Scheduling/Facilities/FacilityEditor.vue?2a8a","webpack:///./src/views/Programs/Scheduling/Facilities/Facilities.vue","webpack:///./src/views/Programs/Scheduling/Facilities/Facilities.vue?b081","webpack:///./src/views/Programs/Scheduling/Facilities/Facilities.vue?b2a4","webpack:///./src/views/Programs/Scheduling/Practices.vue?0ffb","webpack:///./src/views/Programs/Scheduling/Practices.vue","webpack:///./src/views/Programs/Scheduling/Practices.vue?1bc7","webpack:///./src/views/Programs/Scheduling/Practices.vue?2740","webpack:///./src/views/Programs/Scheduling/Games/GameSchedule.vue?b1be","webpack:///./src/views/Programs/Scheduling/Games/vues/GameScheduleInfo.vue?034e","webpack:///./src/views/Programs/Scheduling/Games/vues/GameScheduleInfo.vue","webpack:///./src/views/Programs/Scheduling/Games/vues/GameScheduleInfo.vue?70bc","webpack:///./src/views/Programs/Scheduling/Games/vues/GameScheduleInfo.vue?3ec2","webpack:///./src/views/Programs/Scheduling/ext/helper.ts","webpack:///./src/elements/ToggleLinks.vue?360c","webpack:///./src/elements/ToggleLinks.vue","webpack:///./src/elements/ToggleLinks.vue?14ce","webpack:///./src/elements/ToggleLinks.vue?6dc3","webpack:///./src/views/Programs/Scheduling/ext/id_utils.ts","webpack:///./src/views/Programs/Scheduling/Games/ext/headers.ts","webpack:///./src/views/Programs/Scheduling/Games/GameSchedule.vue","webpack:///./src/views/Programs/Scheduling/Games/GameSchedule.vue?f30a","webpack:///./src/views/Programs/Scheduling/Games/GameSchedule.vue?c38b","webpack:///./src/views/Programs/Scheduling/Games/Games.vue?d2d7","webpack:///./src/views/Programs/Scheduling/Games/Games.vue","webpack:///./src/views/Programs/Scheduling/Games/Games.vue?8b04","webpack:///./src/views/Programs/Scheduling/Games/Games.vue?2b61","webpack:///./src/views/Programs/Scheduling/Games/AutomaticScheduling.vue?a8c1","webpack:///./src/views/Programs/Scheduling/Games/ext/FacilityTimeWarningModal.vue?ff8c","webpack:///./src/views/Programs/Scheduling/Games/ext/FacilityTimeWarningModal.vue","webpack:///./src/views/Programs/Scheduling/Games/ext/FacilityTimeWarningModal.vue?10da","webpack:///./src/views/Programs/Scheduling/Games/ext/FacilityTimeWarningModal.vue?bd70","webpack:///./src/lib/support/models/DivisionGameSchedulerPreference/data.ts","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionPreferences.vue?8a73","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionSettings.vue?af46","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilityDropper.vue?35b4","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilitySummaryBox.vue?bf42","webpack:///./src/views/Programs/Scheduling/Games/ext/augmented_facility_availability.ts","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilitySummaryBox.vue","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilitySummaryBox.vue?ae9c","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilitySummaryBox.vue?2fd9","webpack:///./src/lib/support/models/ScheduleBlocks/DivisionGameSchedulerFacilityToScheduleBlocks.ts","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionDayPreferencsModal.vue?2554","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionDayPreferencsModal.vue","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionDayPreferencsModal.vue?51c3","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionDayPreferencsModal.vue?6aa0","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilityDropper.vue","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilityDropper.vue?906f","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilityDropper.vue?71f9","webpack:///./src/views/Programs/Scheduling/Games/auto/SchedulerSettingsPanel.vue?fc5b","webpack:///./src/views/Programs/Scheduling/Games/auto/SchedulerSettingsPanel.vue","webpack:///./src/views/Programs/Scheduling/Games/auto/SchedulerSettingsPanel.vue?6e6d","webpack:///./src/views/Programs/Scheduling/Games/auto/SchedulerSettingsPanel.vue?2515","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionSettings.vue","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionSettings.vue?caf2","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionSettings.vue?9185","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionPreferences.vue","webpack:///./src/models/Scheduling/DivisionStatusEnum.ts","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionPreferences.vue?f8e3","webpack:///./src/views/Programs/Scheduling/Games/auto/DivisionPreferences.vue?f5b4","webpack:///./src/views/Programs/Scheduling/Games/AutomaticScheduling.vue","webpack:///./src/views/Programs/Scheduling/Games/AutomaticScheduling.vue?826d","webpack:///./src/views/Programs/Scheduling/Games/AutomaticScheduling.vue?83f3","webpack:///./src/views/Programs/Scheduling/Squads/Squads.vue?259e","webpack:///./src/views/Programs/Scheduling/Squads/Squads.vue","webpack:///./src/views/Programs/Scheduling/Squads/Squads.vue?2cc0","webpack:///./src/views/Programs/Scheduling/Squads/Squads.vue?7130","webpack:///./src/views/Programs/Scheduling/Squads/SquadsAutomaticScheduling.vue?54c8","webpack:///./src/views/Programs/Scheduling/Squads/ext/CheerSchedulingGrid.vue?a1d1","webpack:///./src/models/Scheduling/DivisionSquadMap.ts","webpack:///./src/views/Programs/Scheduling/Squads/ext/CheerSchedulingGrid.vue","webpack:///./src/views/Programs/Scheduling/Squads/ext/CheerSchedulingGrid.vue?dbd2","webpack:///./src/views/Programs/Scheduling/Squads/ext/CheerSchedulingGrid.vue?e413","webpack:///./src/views/Programs/Scheduling/Squads/SquadsAutomaticScheduling.vue","webpack:///./src/views/Programs/Scheduling/Squads/SquadsAutomaticScheduling.vue?dcd9","webpack:///./src/views/Programs/Scheduling/Squads/SquadsAutomaticScheduling.vue?7897","webpack:///./src/views/Programs/Scheduling/Squads/SquadsSchedule.vue?45c8","webpack:///./src/views/Programs/Scheduling/Games/vues/SquadScheduleInfo.vue?af02","webpack:///./src/views/Programs/Scheduling/Games/vues/SquadScheduleInfo.vue","webpack:///./src/views/Programs/Scheduling/Games/vues/SquadScheduleInfo.vue?3bd3","webpack:///./src/views/Programs/Scheduling/Games/vues/SquadScheduleInfo.vue?3800","webpack:///./src/views/Programs/Scheduling/Squads/ext/headers.ts","webpack:///./src/views/Programs/Scheduling/Squads/SquadsSchedule.vue","webpack:///./src/views/Programs/Scheduling/Squads/SquadsSchedule.vue?4ee7","webpack:///./src/views/Programs/Scheduling/Squads/SquadsSchedule.vue?2bd6","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventSchedule.vue?f4a9","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventCalendar.vue?4818","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventCalendar.vue","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventCalendar.vue?3b96","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventCalendar.vue?58de","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventModal.vue?06fb","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventModal.vue","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventModal.vue?34c4","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventModal.vue?a395","webpack:///./src/views/Programs/Scheduling/SpecialEvents/ext/colors.ts","webpack:///./src/views/Programs/Scheduling/SpecialEvents/ext/headers.ts","webpack:///./src/lib/support/models/LeagueSpecialEvent/data.ts","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventSchedule.vue","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventSchedule.vue?1b51","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventSchedule.vue?2e1d","webpack:///./src/router/scheduling.ts","webpack:///./src/views/Programs/Reports/Index.vue?52e7","webpack:///./src/views/Programs/Reports/Index.vue","webpack:///./src/views/Programs/Reports/Index.vue?f21c","webpack:///./src/views/Programs/Reports/Index.vue?3e61","webpack:///./src/views/Programs/Reports/ExcelReports.vue?f11c","webpack:///./src/components/InfoIcon.vue?67bc","webpack:///./src/components/InfoIcon.vue","webpack:///./src/components/InfoIcon.vue?a842","webpack:///./src/components/InfoIcon.vue?b479","webpack:///./src/views/Programs/Reports/ExcelReports.vue","webpack:///./src/views/Programs/Reports/ExcelReports.vue?df18","webpack:///./src/views/Programs/Reports/ExcelReports.vue?8aca","webpack:///./src/views/Programs/Reports/WebviewReports.vue?6c1a","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistReport.vue?f848","webpack:///./src/clients/registrationClient.ts","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistFormModal.vue?e909","webpack:///./src/lib/support/models/RegistrationCapacityWaitList/data.ts","webpack:///./src/views/Programs/Reports/WebviewReports/lib/Waitlist.ts","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistFormModal.vue","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistFormModal.vue?ad24","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistFormModal.vue?2aea","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistExpirationModal.vue?f277","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistReport.vue","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistExpirationModal.vue","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistExpirationModal.vue?eb21","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistExpirationModal.vue?368a","webpack:///./src/views/Programs/Reports/WebviewReports/ActionProgress.vue?39b8","webpack:///./src/views/Programs/Reports/WebviewReports/ActionProgress.vue","webpack:///./src/views/Programs/Reports/WebviewReports/ActionProgress.vue?f2f5","webpack:///./src/views/Programs/Reports/WebviewReports/ActionProgress.vue?6ba0","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistActions.vue?5b68","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistActions.vue","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistActions.vue?db0c","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistActions.vue?115f","webpack:///./src/components/Communication/SendEmailModal.vue?0592","webpack:///./src/components/Communication/SendEmailModal.vue","webpack:///./src/components/Communication/SendEmailModal.vue?b445","webpack:///./src/components/Communication/SendEmailModal.vue?9472","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistReport.vue?e9f7","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistReport.vue?cfb5","webpack:///./src/components/EFTReportControls.vue?8908","webpack:///./src/components/EFTReportControls.vue","webpack:///./src/components/EFTReportControls.vue?f52f","webpack:///./src/components/EFTReportControls.vue?9918","webpack:///./src/views/Programs/Reports/WebviewReports/EFTReport.vue?fee7","webpack:///./src/views/Programs/Reports/WebviewReports/EFTReport.vue","webpack:///./src/views/Programs/Reports/WebviewReports/EFTReport.vue?ed24","webpack:///./src/views/Programs/Reports/WebviewReports/EFTReport.vue?b30d","webpack:///./src/views/Programs/Reports/WebviewReports/CommunicationsOptOutReport.vue?f019","webpack:///./src/views/Programs/Reports/WebviewReports/CommunicationsOptOutReport.vue","webpack:///./src/views/Programs/Reports/WebviewReports/CommunicationsOptOutReport.vue?cae1","webpack:///./src/views/Programs/Reports/WebviewReports/CommunicationsOptOutReport.vue?4d12","webpack:///./src/views/Programs/Reports/WebviewReports.vue","webpack:///./src/views/Programs/Reports/WebviewReports.vue?36ed","webpack:///./src/views/Programs/Reports/WebviewReports.vue?bb1a","webpack:///./src/views/Programs/Reports/DynamicReports.vue?5ffe","webpack:///./src/views/Programs/Reports/vues/ActiveReport.vue?202d","webpack:///./src/views/Programs/Reports/vues/ActiveReport.vue","webpack:///./src/views/Programs/Reports/vues/ActiveReport.vue?1184","webpack:///./src/views/Programs/Reports/vues/ActiveReport.vue?9d6b","webpack:///./src/views/Programs/Reports/DynamicReports/BlankParticipantEvalForm.vue?333c","webpack:///./src/views/Programs/Reports/DynamicReports/BlankParticipantEvalForm.vue","webpack:///./src/views/Programs/Reports/DynamicReports/BlankParticipantEvalForm.vue?44a8","webpack:///./src/views/Programs/Reports/DynamicReports/BlankParticipantEvalForm.vue?08d3","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantEvalForm.vue?89a8","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantEvalForm.vue","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantEvalForm.vue?28d2","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantEvalForm.vue?5097","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantEvalActivity.vue?aaca","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantEvalActivity.vue","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantEvalActivity.vue?2298","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantEvalActivity.vue?73e0","webpack:///./src/views/Programs/Reports/DynamicReports/CoachRoster.vue?6713","webpack:///./src/views/Programs/Reports/DynamicReports/CoachRoster.vue","webpack:///./src/views/Programs/Reports/DynamicReports/CoachRoster.vue?0a26","webpack:///./src/views/Programs/Reports/DynamicReports/CoachRoster.vue?a815","webpack:///./src/views/Programs/Reports/DynamicReports/MailingLabels.vue?3a14","webpack:///./src/views/Programs/Reports/DynamicReports/MailingLabels.vue","webpack:///./src/views/Programs/Reports/DynamicReports/MailingLabels.vue?055f","webpack:///./src/views/Programs/Reports/DynamicReports/MailingLabels.vue?3ef3","webpack:///./src/views/Programs/Reports/DynamicReports/Siblings.vue?7df0","webpack:///./src/views/Programs/Reports/DynamicReports/Siblings.vue","webpack:///./src/views/Programs/Reports/DynamicReports/Siblings.vue?1489","webpack:///./src/views/Programs/Reports/DynamicReports/Siblings.vue?654f","webpack:///./src/views/Programs/Reports/DynamicReports/GameSchedule.vue?e68a","webpack:///./src/views/Programs/Reports/DynamicReports/GameSchedule.vue","webpack:///./src/views/Programs/Reports/DynamicReports/GameSchedule.vue?e437","webpack:///./src/views/Programs/Reports/DynamicReports/GameSchedule.vue?8e3b","webpack:///./src/views/Programs/Reports/DynamicReports/GameScheduleByTeam.vue?0b78","webpack:///./src/views/Programs/Reports/DynamicReports/GameScheduleByTeam.vue","webpack:///./src/views/Programs/Reports/DynamicReports/GameScheduleByTeam.vue?0f9b","webpack:///./src/views/Programs/Reports/DynamicReports/GameScheduleByTeam.vue?06b3","webpack:///./src/views/Programs/Reports/DynamicReports/PracticeSchedule.vue?5063","webpack:///./src/views/Programs/Reports/DynamicReports/PracticeSchedule.vue","webpack:///./src/views/Programs/Reports/DynamicReports/PracticeSchedule.vue?e62b","webpack:///./src/views/Programs/Reports/DynamicReports/PracticeSchedule.vue?8f26","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantIntros.vue?e93d","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantIntros.vue","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantIntros.vue?f305","webpack:///./src/views/Programs/Reports/DynamicReports/ParticipantIntros.vue?0934","webpack:///./src/views/Programs/Reports/DynamicReports/Payments.vue?9cfa","webpack:///./src/views/Programs/Reports/DynamicReports/Payments.vue","webpack:///./src/views/Programs/Reports/DynamicReports/Payments.vue?065d","webpack:///./src/views/Programs/Reports/DynamicReports/Payments.vue?2604","webpack:///./src/views/Programs/Reports/DynamicReports/PaymentsByType.vue?dee5","webpack:///./src/views/Programs/Reports/DynamicReports/PaymentsByType.vue","webpack:///./src/views/Programs/Reports/DynamicReports/PaymentsByType.vue?4c01","webpack:///./src/views/Programs/Reports/DynamicReports/PaymentsByType.vue?d126","webpack:///./src/views/Programs/Reports/DynamicReports/MissingEvals.vue?45fa","webpack:///./src/views/Programs/Reports/DynamicReports/MissingEvals.vue","webpack:///./src/views/Programs/Reports/DynamicReports/MissingEvals.vue?47ca","webpack:///./src/views/Programs/Reports/DynamicReports/MissingEvals.vue?052b","webpack:///./src/views/Programs/Reports/DynamicReports/OutstandingBalance.vue?c21a","webpack:///./src/views/Programs/Reports/DynamicReports/OutstandingBalance.vue","webpack:///./src/views/Programs/Reports/DynamicReports/OutstandingBalance.vue?c82b","webpack:///./src/views/Programs/Reports/DynamicReports/OutstandingBalance.vue?105b","webpack:///./src/views/Programs/Reports/DynamicReports/RefereeSchedule.vue?f200","webpack:///./src/views/Programs/Reports/DynamicReports/RefereeSchedule.vue","webpack:///./src/views/Programs/Reports/DynamicReports/RefereeSchedule.vue?6a03","webpack:///./src/views/Programs/Reports/DynamicReports/RefereeSchedule.vue?9e1a","webpack:///./src/views/Programs/Reports/DynamicReports/PlayerConflict.vue?51c6","webpack:///./src/views/Programs/Reports/DynamicReports/PlayerConflict.vue","webpack:///./src/views/Programs/Reports/DynamicReports/PlayerConflict.vue?7854","webpack:///./src/views/Programs/Reports/DynamicReports/PlayerConflict.vue?41b3","webpack:///./src/views/Programs/Reports/DynamicReports/CoachConflict.vue?7b2e","webpack:///./src/views/Programs/Reports/DynamicReports/CoachConflict.vue","webpack:///./src/views/Programs/Reports/DynamicReports/CoachConflict.vue?bed0","webpack:///./src/views/Programs/Reports/DynamicReports/CoachConflict.vue?7992","webpack:///./src/views/Programs/Reports/DynamicReports.vue","webpack:///./src/views/Programs/Reports/DynamicReports.vue?4622","webpack:///./src/views/Programs/Reports/DynamicReports.vue?b79d","webpack:///./src/router/reports.ts","webpack:///./src/views/Camps/Setup.vue?da43","webpack:///./src/components/MinistryAgreementModal.vue?fe84","webpack:///./src/views/WaitPage.vue?60ae","webpack:///./src/views/WaitPage.vue","webpack:///./src/views/WaitPage.vue?991a","webpack:///./src/views/WaitPage.vue?ae47","webpack:///./src/clients/ministryAgreementClient.ts","webpack:///./src/lib/components/MinistryAgreementModal/agreement.ts","webpack:///./src/components/MinistryAgreementModal.vue","webpack:///./src/components/MinistryAgreementModal.vue?68d9","webpack:///./src/components/MinistryAgreementModal.vue?f7ba","webpack:///./src/views/Camps/Setup.vue","webpack:///./src/views/Camps/Setup.vue?2121","webpack:///./src/views/Camps/Setup.vue?6a88","webpack:///./src/views/Camps/Information.vue?d3b1","webpack:///./src/views/Camps/CampSetupMixin.ts","webpack:///./src/components/GradeGenderSelector.vue?ca61","webpack:///./src/components/GradeGenderSelector.vue","webpack:///./src/components/GradeGenderSelector.vue?3505","webpack:///./src/components/GradeGenderSelector.vue?9749","webpack:///./src/components/AdditionalParticipantInformation.vue?3911","webpack:///./src/components/AdditionalParticipantInformation.vue","webpack:///./src/components/AdditionalParticipantInformation.vue?20f9","webpack:///./src/components/AdditionalParticipantInformation.vue?62e9","webpack:///./src/components/TimezoneSelect.vue?026b","webpack:///./src/components/TimezoneSelect.vue","webpack:///./src/components/TimezoneSelect.vue?7785","webpack:///./src/components/TimezoneSelect.vue?04b4","webpack:///./src/services/udfService.ts","webpack:///./src/services/registrationInfoService.ts","webpack:///./src/views/Camps/Information.vue","webpack:///./src/components/EvaluationForm/EvaluationForm.vue","webpack:///./src/views/Camps/Information.vue?8c08","webpack:///./src/views/Camps/Information.vue?d987","webpack:///./src/views/Camps/CampIndex.vue?c427","webpack:///./src/views/Camps/CampIndex.vue","webpack:///./src/views/Camps/CampIndex.vue?29cd","webpack:///./src/views/Camps/CampIndex.vue?b8e3","webpack:///./src/views/Camps/KeyDates.vue?783d","webpack:///./src/components/EvaluationForm/EvaluationForm.vue?32c8","webpack:///./src/components/EvaluationForm/data.ts","webpack:///./src/components/EvaluationForm/EvaluationForm.vue?9b44","webpack:///./src/components/EvaluationForm/EvaluationForm.vue?ff42","webpack:///./src/views/Camps/KeyDates.vue","webpack:///./src/views/Camps/KeyDates.vue?2062","webpack:///./src/views/Camps/KeyDates.vue?b9c8","webpack:///./src/views/Camps/Leadership.vue?ac2a","webpack:///./src/views/Camps/Leadership.vue","webpack:///./src/views/Camps/Leadership.vue?a9a6","webpack:///./src/views/Camps/Leadership.vue?bb02","webpack:///./src/views/Camps/Partnership.vue?5093","webpack:///./src/elements/IntegerPicker.vue?f43f","webpack:///./src/elements/IntegerPicker.vue","webpack:///./src/elements/IntegerPicker.vue?b403","webpack:///./src/elements/IntegerPicker.vue?b70e","webpack:///./src/components/PartnerForm.vue?c094","webpack:///./src/components/PartnerForm.vue","webpack:///./src/components/PartnerForm.vue?aab5","webpack:///./src/components/PartnerForm.vue?c6e7","webpack:///./src/views/Camps/Partnership.vue","webpack:///./src/views/Camps/Partnership.vue?2705","webpack:///./src/views/Camps/Partnership.vue?dc8b","webpack:///./src/views/Camps/Products.vue?62c2","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperCamp.vue?434e","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/AccessFeeStep.vue?5cc9","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/AccessFeeStep.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/AccessFeeStep.vue?b7ff","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/AccessFeeStep.vue?a00b","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/UpwardSystemStep.vue?0435","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/UpwardSystemStep.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/UpwardSystemStep.vue?8970","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/UpwardSystemStep.vue?0b15","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperCamp.vue","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperCamp.vue?112b","webpack:///./src/components/ProductFlow/ProductSetupStepper/SetupStepperCamp.vue?fe83","webpack:///./src/views/Leagues/ProductWarningModal.vue?c66f","webpack:///./src/views/Leagues/ProductWarningModal.vue","webpack:///./src/views/Leagues/ProductWarningModal.vue?8aad","webpack:///./src/views/Leagues/ProductWarningModal.vue?c283","webpack:///./src/components/SetupCompleteConfirmation.vue?db93","webpack:///./src/components/CampLeagueStarterBox.vue?309b","webpack:///./src/components/CampLeagueStarterBox.vue","webpack:///./src/components/CampLeagueStarterBox.vue?5970","webpack:///./src/components/CampLeagueStarterBox.vue?12ab","webpack:///./src/components/SetupCompleteConfirmation.vue","webpack:///./src/components/SetupCompleteConfirmation.vue?9443","webpack:///./src/components/SetupCompleteConfirmation.vue?63aa","webpack:///./src/views/Camps/Products.vue","webpack:///./src/views/Camps/Products.vue?7bee","webpack:///./src/views/Camps/Products.vue?c613","webpack:///./src/views/Camps/Registration.vue?4bb8","webpack:///./src/elements/DateTimeInput.vue?8d19","webpack:///./src/elements/DateTimeInput.vue","webpack:///./src/elements/DateTimeInput.vue?efc7","webpack:///./src/elements/DateTimeInput.vue?9d1c","webpack:///./src/components/EFTAuthorizationRequestModal.vue?e0ac","webpack:///./src/components/EFTAuthorizationRequestModal.vue","webpack:///./src/components/EFTAuthorizationRequestModal.vue?2b86","webpack:///./src/components/EFTAuthorizationRequestModal.vue?79b8","webpack:///./src/components/ManageDiscountCodes.vue?fb2c","webpack:///./src/components/EditDiscountCode.vue?58af","webpack:///./src/components/EditDiscountCode.vue","webpack:///./src/components/EditDiscountCode.vue?8bb6","webpack:///./src/components/EditDiscountCode.vue?1151","webpack:///./src/components/ManageDiscountCodes.vue","webpack:///./src/components/ManageDiscountCodes.vue?b8b0","webpack:///./src/components/ManageDiscountCodes.vue?1ebd","webpack:///./src/components/ManageCapacityRules.vue?3b80","webpack:///./src/components/ManageCapacityRule.vue?25f2","webpack:///./src/models/Program/RegistrationCapacityCount.ts","webpack:///./src/components/ManageCapacityRule.vue","webpack:///./src/components/ManageCapacityRule.vue?f779","webpack:///./src/components/ManageCapacityRule.vue?c8a2","webpack:///./src/components/ManageCapacityRules.vue","webpack:///./src/components/ManageCapacityRules.vue?8c1f","webpack:///./src/components/ManageCapacityRules.vue?9d27","webpack:///./src/components/ManageBypassLinks.vue?8ed6","webpack:///./src/components/EditBypassLink.vue?7095","webpack:///./src/components/EditBypassLink.vue","webpack:///./src/components/EditBypassLink.vue?99ec","webpack:///./src/components/EditBypassLink.vue?1c01","webpack:///./src/components/ManageBypassLinks.vue","webpack:///./src/components/ManageBypassLinks.vue?e7af","webpack:///./src/components/ManageBypassLinks.vue?ca6c","webpack:///./src/views/Camps/Registration.vue","webpack:///./src/views/Camps/Registration.vue?d25d","webpack:///./src/views/Camps/Registration.vue?839a","webpack:///./src/views/Camps/Archive.vue?05cd","webpack:///./src/views/Camps/Archive.vue","webpack:///./src/views/Camps/Archive.vue?800f","webpack:///./src/views/Camps/Archive.vue?cef0","webpack:///./src/router/participants.ts","webpack:///./src/router/volunteers.ts","webpack:///./src/router/communications.ts","webpack:///./src/router/camps.ts","webpack:///./src/views/Leagues/Setup.vue?2b78","webpack:///./src/views/Leagues/Setup.vue","webpack:///./src/views/Leagues/Setup.vue?2afb","webpack:///./src/views/Leagues/Setup.vue?dde5","webpack:///./src/views/Leagues/LeagueIndex.vue?8b1e","webpack:///./src/views/Leagues/LeagueIndex.vue","webpack:///./src/views/Leagues/LeagueIndex.vue?38c9","webpack:///./src/views/Leagues/LeagueIndex.vue?b123","webpack:///./src/views/Leagues/Information.vue?a97e","webpack:///./src/views/Leagues/LeagueSetupMixin.ts","webpack:///./src/elements/DayOfWeekMultiPicker.vue?640a","webpack:///./src/elements/DayOfWeekMultiPicker.vue","webpack:///./src/elements/DayOfWeekMultiPicker.vue?2577","webpack:///./src/elements/DayOfWeekMultiPicker.vue?3400","webpack:///./src/views/Leagues/Information.vue","webpack:///./src/views/Leagues/Information.vue?4e91","webpack:///./src/views/Leagues/Information.vue?71da","webpack:///./src/views/Leagues/DigitalInformation.vue?7718","webpack:///./src/views/Leagues/vues/DigitalSetupCompleteConfirmation.vue?8079","webpack:///./src/views/Leagues/vues/DigitalSetupCompleteConfirmation.vue","webpack:///./src/views/Leagues/vues/DigitalSetupCompleteConfirmation.vue?019e","webpack:///./src/views/Leagues/vues/DigitalSetupCompleteConfirmation.vue?46a2","webpack:///./src/components/LeagueDevotionTrackSelection.vue?f55c","webpack:///./src/models/ContentManagement/DevotionTrack.ts","webpack:///./src/components/LeagueDevotionTrackSelection.vue","webpack:///./src/components/LeagueDevotionTrackSelection.vue?ef45","webpack:///./src/components/LeagueDevotionTrackSelection.vue?bb01","webpack:///./src/views/Leagues/DigitalInformation.vue","webpack:///./src/views/Leagues/DigitalInformation.vue?ca3c","webpack:///./src/views/Leagues/DigitalInformation.vue?da31","webpack:///./src/views/Leagues/KeyDates.vue?c8d7","webpack:///./src/views/Leagues/KeyDates.vue","webpack:///./src/views/Leagues/KeyDates.vue?dd41","webpack:///./src/views/Leagues/KeyDates.vue?427f","webpack:///./src/views/Leagues/Leadership.vue?d1d1","webpack:///./src/views/Leagues/Leadership.vue","webpack:///./src/views/Leagues/Leadership.vue?c7c8","webpack:///./src/views/Leagues/Leadership.vue?732e","webpack:///./src/views/Leagues/Partnership.vue?6c81","webpack:///./src/views/Leagues/Partnership.vue","webpack:///./src/views/Leagues/Partnership.vue?4b44","webpack:///./src/views/Leagues/Partnership.vue?b8a9","webpack:///./src/views/Leagues/Products.vue?4e2c","webpack:///./src/components/ProgramRegistrationFee.vue?ed1b","webpack:///./src/components/ProgramRegistrationFee.vue","webpack:///./src/components/ProgramRegistrationFee.vue?aedf","webpack:///./src/components/ProgramRegistrationFee.vue?9e55","webpack:///./src/views/Leagues/Products.vue","webpack:///./src/views/Leagues/Products.vue?2503","webpack:///./src/views/Leagues/Products.vue?ed7b","webpack:///./src/views/Leagues/Registration.vue?5e55","webpack:///./src/views/Leagues/Registration.vue","webpack:///./src/views/Leagues/Registration.vue?f9d2","webpack:///./src/views/Leagues/Registration.vue?103d","webpack:///./src/views/Leagues/Archive.vue?8a89","webpack:///./src/views/Leagues/Archive.vue","webpack:///./src/views/Leagues/Archive.vue?9fd2","webpack:///./src/views/Leagues/Archive.vue?7320","webpack:///./src/router/leagues.ts","webpack:///./src/views/UpwardRunning/Setup.vue?094b","webpack:///./src/views/UpwardRunning/Setup.vue","webpack:///./src/views/UpwardRunning/Setup.vue?cf2d","webpack:///./src/views/UpwardRunning/Setup.vue?3f03","webpack:///./src/views/UpwardRunning/UpwardRunningIndex.vue?34bc","webpack:///./src/views/UpwardRunning/UpwardRunningIndex.vue","webpack:///./src/views/UpwardRunning/UpwardRunningIndex.vue?7d73","webpack:///./src/views/UpwardRunning/UpwardRunningIndex.vue?4c9f","webpack:///./src/views/UpwardRunning/Information.vue?ae59","webpack:///./src/views/UpwardRunning/UpwardRunningSetupMixin.ts","webpack:///./src/components/UpwardRunning/AdditionalParticipantInformationUR.vue?5078","webpack:///./src/components/UpwardRunning/AdditionalParticipantInformationUR.vue","webpack:///./src/components/UpwardRunning/AdditionalParticipantInformationUR.vue?a071","webpack:///./src/components/UpwardRunning/AdditionalParticipantInformationUR.vue?ac53","webpack:///./src/elements/UpwardRunning/SaveContinueButtonUR.vue?c316","webpack:///./src/elements/UpwardRunning/SaveContinueButtonUR.vue","webpack:///./src/elements/UpwardRunning/SaveContinueButtonUR.vue?eb18","webpack:///./src/elements/UpwardRunning/SaveContinueButtonUR.vue?8f6c","webpack:///./src/views/UpwardRunning/Information.vue","webpack:///./src/views/UpwardRunning/Information.vue?f6a9","webpack:///./src/views/UpwardRunning/Information.vue?4e6e","webpack:///./src/views/UpwardRunning/KeyDates.vue?e416","webpack:///./src/views/UpwardRunning/KeyDates.vue","webpack:///./src/views/UpwardRunning/KeyDates.vue?4da2","webpack:///./src/views/UpwardRunning/KeyDates.vue?9d86","webpack:///./src/views/UpwardRunning/Leadership.vue?daee","webpack:///./src/views/UpwardRunning/Leadership.vue","webpack:///./src/views/UpwardRunning/Leadership.vue?c48c","webpack:///./src/views/UpwardRunning/Leadership.vue?26f5","webpack:///./src/views/UpwardRunning/Products.vue?c5af","webpack:///./src/components/UpwardRunning/ProductFlow/SetupStepperRunning.vue?e3b4","webpack:///./src/components/UpwardRunning/ProductFlow/InfoStepUR.vue?97fe","webpack:///./src/components/UpwardRunning/ProductFlow/ProgramInformationFormUR.vue?46bb","webpack:///./src/components/UpwardRunning/ProductFlow/productFlowLogicUR.ts","webpack:///./src/components/UpwardRunning/ProductFlow/ProgramInformationFormUR.vue","webpack:///./src/components/UpwardRunning/ProductFlow/ProgramInformationFormUR.vue?01bd","webpack:///./src/components/UpwardRunning/ProductFlow/ProgramInformationFormUR.vue?870f","webpack:///./src/components/UpwardRunning/ProductFlow/InfoStepUR.vue","webpack:///./src/components/UpwardRunning/ProductFlow/InfoStepUR.vue?45d0","webpack:///./src/components/UpwardRunning/ProductFlow/InfoStepUR.vue?9efb","webpack:///./src/components/UpwardRunning/ProductFlow/StarterOrderItemStepUR.vue?0581","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderPickerUR.vue?cd9b","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderProductCardUR.vue?97fd","webpack:///./src/models/UpwardRunning/PartnerChallengeStartupProductConfig.ts","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderProductCardUR.vue","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderProductCardUR.vue?8673","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderProductCardUR.vue?56c1","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderPickerUR.vue","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderPickerUR.vue?e2bb","webpack:///./src/components/UpwardRunning/ProductFlow/StartupOrderPickerUR.vue?2c43","webpack:///./src/components/UpwardRunning/ProductFlow/StarterOrderItemStepUR.vue","webpack:///./src/components/UpwardRunning/ProductFlow/StarterOrderItemStepUR.vue?a717","webpack:///./src/components/UpwardRunning/ProductFlow/StarterOrderItemStepUR.vue?bc68","webpack:///./src/components/UpwardRunning/ProductFlow/ParticipantKitStepUR.vue?fc29","webpack:///./src/components/UpwardRunning/ProductFlow/ProductPickerUR.vue?e711","webpack:///./src/models/UpwardRunning/PartnerChallengeProductConfig.ts","webpack:///./src/components/UpwardRunning/ProductFlow/ProductPickerUR.vue","webpack:///./src/components/UpwardRunning/ProductFlow/ProductPickerUR.vue?7b3c","webpack:///./src/components/UpwardRunning/ProductFlow/ProductPickerUR.vue?d594","webpack:///./src/models/UpwardRunning/RunningOrderProductInfoEXT.ts","webpack:///./src/components/UpwardRunning/ProductFlow/ParticipantKitStepUR.vue","webpack:///./src/components/UpwardRunning/ProductFlow/ParticipantKitStepUR.vue?d670","webpack:///./src/components/UpwardRunning/ProductFlow/ParticipantKitStepUR.vue?60b7","webpack:///./src/components/UpwardRunning/ProductFlow/RunningTotalUR.vue?e141","webpack:///./src/components/UpwardRunning/ProductFlow/RunningTotalUR.vue","webpack:///./src/components/UpwardRunning/ProductFlow/RunningTotalUR.vue?0f52","webpack:///./src/components/UpwardRunning/ProductFlow/RunningTotalUR.vue?483e","webpack:///./src/components/UpwardRunning/ProductFlow/setupStepperLogicUR.ts","webpack:///./src/components/UpwardRunning/ProductFlow/SetupStepperRunning.vue","webpack:///./src/components/UpwardRunning/ProductFlow/SetupStepperRunning.vue?26a1","webpack:///./src/components/UpwardRunning/ProductFlow/SetupStepperRunning.vue?6597","webpack:///./src/components/UpwardRunning/ProductFlow/RunningRegistrationFee.vue?9d2c","webpack:///./src/components/UpwardRunning/ProductFlow/RunningRegistrationFee.vue","webpack:///./src/components/UpwardRunning/ProductFlow/RunningRegistrationFee.vue?04fd","webpack:///./src/components/UpwardRunning/ProductFlow/RunningRegistrationFee.vue?aa73","webpack:///./src/views/UpwardRunning/Products.vue","webpack:///./src/views/UpwardRunning/Products.vue?a3d9","webpack:///./src/views/UpwardRunning/Products.vue?a5ad","webpack:///./src/views/UpwardRunning/Registration.vue?00f6","webpack:///./src/components/UpwardRunning/SetupCompleteConfirmationUR.vue?0dde","webpack:///./src/components/UpwardRunning/SetupCompleteConfirmationUR.vue","webpack:///./src/components/UpwardRunning/SetupCompleteConfirmationUR.vue?6f76","webpack:///./src/components/UpwardRunning/SetupCompleteConfirmationUR.vue?f792","webpack:///./src/components/UpwardRunning/ManageDiscountCodesUR.vue?6120","webpack:///./src/components/UpwardRunning/EditDiscountCodeUR.vue?e367","webpack:///./src/components/UpwardRunning/EditDiscountCodeUR.vue","webpack:///./src/components/UpwardRunning/EditDiscountCodeUR.vue?ec3a","webpack:///./src/components/UpwardRunning/EditDiscountCodeUR.vue?2830","webpack:///./src/components/UpwardRunning/ManageDiscountCodesUR.vue","webpack:///./src/components/UpwardRunning/ManageDiscountCodesUR.vue?62d9","webpack:///./src/components/UpwardRunning/ManageDiscountCodesUR.vue?0300","webpack:///./src/views/UpwardRunning/Registration.vue","webpack:///./src/views/UpwardRunning/Registration.vue?06bb","webpack:///./src/views/UpwardRunning/Registration.vue?2d1f","webpack:///./src/views/UpwardRunning/Archive.vue?f79c","webpack:///./src/views/UpwardRunning/Archive.vue","webpack:///./src/views/UpwardRunning/Archive.vue?4960","webpack:///./src/views/UpwardRunning/Archive.vue?9a3a","webpack:///./src/views/UpwardRunning/Resources/Resources.vue?6638","webpack:///./src/views/UpwardRunning/Resources/ResourceList.vue?d482","webpack:///./src/views/UpwardRunning/Resources/ResourceTile.vue?bbff","webpack:///./src/views/UpwardRunning/Resources/ResourceTile.vue","webpack:///./src/views/UpwardRunning/Resources/ResourceTile.vue?c29b","webpack:///./src/views/UpwardRunning/Resources/ResourceTile.vue?3805","webpack:///./src/views/UpwardRunning/Resources/ResourceList.vue","webpack:///./src/views/UpwardRunning/Resources/ResourceList.vue?7226","webpack:///./src/views/UpwardRunning/Resources/ResourceList.vue?ce44","webpack:///./src/views/UpwardRunning/Resources/Resources.vue","webpack:///./src/views/UpwardRunning/Resources/Resources.vue?cc9e","webpack:///./src/views/UpwardRunning/Resources/Resources.vue?bf5c","webpack:///./src/router/upwardRunning.ts","webpack:///./src/router/digitalleague.ts","webpack:///./src/router/programs.ts","webpack:///./src/views/Account/Index.vue?1f38","webpack:///./src/views/Account/Index.vue","webpack:///./src/views/Account/Index.vue?ca31","webpack:///./src/views/Account/Index.vue?1fea","webpack:///./src/views/Account/UserManagement.vue?16c9","webpack:///./src/views/Account/vues/AddUserModal.vue?a64a","webpack:///./src/views/Account/vues/AddUserModal.vue","webpack:///./src/views/Account/vues/AddUserModal.vue?b78b","webpack:///./src/views/Account/vues/AddUserModal.vue?1a84","webpack:///./src/views/Account/vues/ResetPasswordModal.vue?0624","webpack:///./src/views/Account/vues/ResetPasswordModal.vue","webpack:///./src/views/Account/vues/ResetPasswordModal.vue?7fcf","webpack:///./src/views/Account/vues/ResetPasswordModal.vue?6a97","webpack:///./src/views/Account/vues/ResendInvitationModal.vue?0aee","webpack:///./src/views/Account/vues/ResendInvitationModal.vue","webpack:///./src/views/Account/vues/ResendInvitationModal.vue?6e57","webpack:///./src/views/Account/vues/ResendInvitationModal.vue?a65a","webpack:///./src/views/Account/vues/PartnerRoleSelectInput.vue?91b5","webpack:///./src/views/Account/vues/PartnerRoleSelectInput.vue","webpack:///./src/views/Account/vues/PartnerRoleSelectInput.vue?948a","webpack:///./src/views/Account/vues/PartnerRoleSelectInput.vue?0707","webpack:///./src/views/Account/UserManagement.vue","webpack:///./src/views/Account/UserManagement.vue?3c93","webpack:///./src/views/Account/UserManagement.vue?1b44","webpack:///./src/views/Account/Billing.vue?586b","webpack:///./src/views/Account/Billing.vue","webpack:///./src/views/Account/Billing.vue?bc42","webpack:///./src/views/Account/Billing.vue?2a3d","webpack:///./src/views/Account/PartnerSocialMedia.vue?1c61","webpack:///./src/views/Account/PartnerSocialMedia.vue","webpack:///./src/views/Account/PartnerSocialMedia.vue?82cd","webpack:///./src/views/Account/PartnerSocialMedia.vue?5125","webpack:///./src/views/Account/EftReports.vue?0df3","webpack:///./src/views/Account/EftReports.vue","webpack:///./src/views/Account/EftReports.vue?948b","webpack:///./src/views/Account/EftReports.vue?28d4","webpack:///./src/views/Account/Questions.vue?e58b","webpack:///./src/views/Account/Questions.vue","webpack:///./src/views/Account/Questions.vue?f092","webpack:///./src/views/Account/Questions.vue?e7b6","webpack:///./src/views/Account/MilitaryDiscount.vue?eb10","webpack:///./src/views/Account/MilitaryDiscount.vue","webpack:///./src/views/Account/MilitaryDiscount.vue?04fc","webpack:///./src/views/Account/MilitaryDiscount.vue?2f8c","webpack:///./src/views/Account/GrantApplication.vue?5a22","webpack:///./src/views/Account/GrantApplication.vue","webpack:///./src/views/Account/GrantApplication.vue?9130","webpack:///./src/views/Account/GrantApplication.vue?9076","webpack:///./src/router/account.ts","webpack:///./src/views/Training/Index.vue?c347","webpack:///./src/views/Training/Index.vue","webpack:///./src/views/Training/Index.vue?053b","webpack:///./src/views/Training/Index.vue?6579","webpack:///./src/views/Training/Training.vue?ecc5","webpack:///./src/views/Training/Training.vue","webpack:///./src/views/Training/Training.vue?6039","webpack:///./src/views/Training/Training.vue?ec70","webpack:///./src/router/training.ts","webpack:///./src/views/MyProfile/Info.vue?cf40","webpack:///./src/views/MyProfile/VerificationCode.vue?5d68","webpack:///./src/views/MyProfile/VerificationCode.vue","webpack:///./src/views/MyProfile/VerificationCode.vue?b7cb","webpack:///./src/views/MyProfile/VerificationCode.vue?2261","webpack:///./src/views/MyProfile/Info.vue","webpack:///./src/models/Dashboard/TransactionSearch/index.ts","webpack:///./src/views/MyProfile/Info.vue?78b6","webpack:///./src/views/MyProfile/Info.vue?0c86","webpack:///./src/views/MyProfile/ManagePassword.vue?7325","webpack:///./src/views/MyProfile/ManagePassword.vue","webpack:///./src/views/MyProfile/ManagePassword.vue?7c1e","webpack:///./src/views/MyProfile/ManagePassword.vue?909c","webpack:///./src/views/MyProfile/Index.vue?d6fd","webpack:///./src/views/MyProfile/Index.vue","webpack:///./src/views/MyProfile/Index.vue?332a","webpack:///./src/views/MyProfile/Index.vue?552d","webpack:///./src/views/MyProfile/Manage2FA.vue?77ad","webpack:///./src/clients/userClient.ts","webpack:///./src/views/MyProfile/Manage2FA.vue","webpack:///./src/views/MyProfile/Manage2FA.vue?1775","webpack:///./src/views/MyProfile/Manage2FA.vue?e23e","webpack:///./src/router/myProfile.ts","webpack:///./src/views/Resources.vue?9e92","webpack:///./src/views/Resources.vue","webpack:///./src/views/Resources.vue?7a63","webpack:///./src/views/Resources.vue?c50f","webpack:///./src/views/AdminDash/Dashboard.vue?547f","webpack:///./src/components/Card.vue?5c11","webpack:///./src/components/Card.vue","webpack:///./src/components/Card.vue?c496","webpack:///./src/components/Card.vue?284e","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsPanel.vue?521a","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/useRegistrationFinder.ts","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/OPRTransactionItem.vue?11a4","webpack:///./src/models/Registration/CreditCardTypeEnum.ts","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/CompleteRegistrationTransaction.vue?09c0","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/CompleteRegistrationTransaction.vue","webpack:///./src/models/Registration/RefundRemoveTransactionType.ts","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/CompleteRegistrationTransaction.vue?25b6","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/CompleteRegistrationTransaction.vue?2dc2","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/RefundRemoveTransaction.vue?5854","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/RefundRemoveTransaction.vue","webpack:///./src/models/Registration/RegistrationStatusEnum.ts","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/RefundRemoveTransaction.vue?2356","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/RefundRemoveTransaction.vue?78b4","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/ChargebackDetails.vue?57e0","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/ChargebackDetails.vue","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/ChargebackDetails.vue?f357","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/ChargebackDetails.vue?d884","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/OPRTransactionItem.vue","webpack:///./src/views/AdminDash/vues/UserManagement/PasswordResetModal.vue","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/OPRTransactionItem.vue?ab71","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/OPRTransactionItem.vue?a664","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsPanel.vue","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsPanel.vue?2ec7","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsPanel.vue?f9c2","webpack:///./src/views/AdminDash/vues/UserManagementPanel.vue?3859","webpack:///./src/views/AdminDash/vues/UserManagement/PasswordResetModal.vue?dfdc","webpack:///./src/models/Dashboard/OrderHistory/index.ts","webpack:///./src/views/AdminDash/vues/UserManagement/PasswordResetModal.vue?68d5","webpack:///./src/views/AdminDash/vues/UserManagement/PasswordResetModal.vue?bd42","webpack:///./src/views/AdminDash/vues/UserManagementPanel.vue","webpack:///./src/views/AdminDash/vues/UserManagementPanel.vue?f1b9","webpack:///./src/views/AdminDash/vues/UserManagementPanel.vue?354c","webpack:///./src/views/AdminDash/vues/RecentOrderHistoryPanel.vue?7379","webpack:///./src/views/AdminDash/vues/OrderHistory/useOrderHistory.ts","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderItem.vue?00e5","webpack:///./src/models/Dashboard/ReturnsOrder/index.ts","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderItem.vue","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderItem.vue?0884","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderItem.vue?5333","webpack:///./src/views/AdminDash/vues/OrderHistory/HoldReasonDialog.vue?5d3e","webpack:///./src/views/AdminDash/vues/OrderHistory/HoldReasonDialog.vue","webpack:///./src/views/AdminDash/vues/OrderHistory/HoldReasonDialog.vue?4389","webpack:///./src/views/AdminDash/vues/OrderHistory/HoldReasonDialog.vue?40a2","webpack:///./src/views/AdminDash/vues/RecentOrderHistoryPanel.vue","webpack:///./src/views/AdminDash/vues/RecentOrderHistoryPanel.vue?a783","webpack:///./src/views/AdminDash/vues/RecentOrderHistoryPanel.vue?fc5b","webpack:///./src/views/AdminDash/vues/ReturnsOrderPanel.vue?d2f0","webpack:///./src/views/AdminDash/vues/ReturnsOrderPanel.vue","webpack:///./src/views/AdminDash/vues/ReturnsOrderPanel.vue?7c0a","webpack:///./src/views/AdminDash/vues/ReturnsOrderPanel.vue?b229","webpack:///./src/views/AdminDash/vues/PartnerSearchPanel.vue?0b8c","webpack:///./src/views/AdminDash/vues/PartnerSearchPanel.vue","webpack:///./src/views/AdminDash/vues/PartnerSearchPanel.vue?9b8e","webpack:///./src/views/AdminDash/vues/PartnerSearchPanel.vue?8265","webpack:///./src/views/AdminDash/vues/ProgramSearchPanel.vue?4624","webpack:///./src/models/League/LeagueProgramAugusta.ts","webpack:///./src/views/AdminDash/vues/ProgramSearchPanel.vue","webpack:///./src/views/AdminDash/vues/ProgramSearchPanel.vue?86ec","webpack:///./src/views/AdminDash/vues/ProgramSearchPanel.vue?52a3","webpack:///./src/views/AdminDash/Dashboard.vue","webpack:///./src/views/AdminDash/Dashboard.vue?9f69","webpack:///./src/views/AdminDash/Dashboard.vue?cc66","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsScreen.vue?9fb1","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsScreen.vue","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsScreen.vue?ba87","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsScreen.vue?a4dd","webpack:///./src/views/AdminDash/vues/OrderSearchScreen.vue?696e","webpack:///./src/views/AdminDash/vues/OrderSearchScreen.vue","webpack:///./src/views/AdminDash/vues/OrderSearchScreen.vue?ed40","webpack:///./src/views/AdminDash/vues/OrderSearchScreen.vue?451f","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderDetailScreen.vue?ae32","webpack:///./src/views/AdminDash/vues/OrderHistory/IntegrationNotesDialog.vue?bb3f","webpack:///./src/views/AdminDash/vues/OrderHistory/NoteItem.vue?62db","webpack:///./src/views/AdminDash/vues/OrderHistory/NoteItem.vue","webpack:///./src/views/AdminDash/vues/OrderHistory/NoteItem.vue?56fd","webpack:///./src/views/AdminDash/vues/OrderHistory/NoteItem.vue?7194","webpack:///./src/views/AdminDash/vues/OrderHistory/IntegrationNotesDialog.vue","webpack:///./src/views/AdminDash/vues/OrderHistory/IntegrationNotesDialog.vue?6d83","webpack:///./src/views/AdminDash/vues/OrderHistory/IntegrationNotesDialog.vue?0492","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderXMLEditDialog.vue?6d5e","webpack:///./src/models/Order/OrderXMLEdit.ts","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderXMLEditDialog.vue","webpack:///./src/views/AdminDash/vues/TwilioApplicationPanel.vue","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderXMLEditDialog.vue?8630","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderXMLEditDialog.vue?ec17","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderDetailScreen.vue","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderDetailScreen.vue?d318","webpack:///./src/views/AdminDash/vues/OrderHistory/OrderDetailScreen.vue?9c6d","webpack:///./src/views/AdminDash/vues/OrderHistory/RunningOrderDetailScreen.vue?4c25","webpack:///./src/views/AdminDash/vues/OrderHistory/RunningOrderDetailScreen.vue","webpack:///./src/views/AdminDash/vues/OrderHistory/RunningOrderDetailScreen.vue?0a00","webpack:///./src/views/AdminDash/vues/OrderHistory/RunningOrderDetailScreen.vue?0219","webpack:///./src/views/AdminDash/vues/AdminTools/Tools.vue?0fd5","webpack:///./src/views/AdminDash/vues/ProductCachePanel.vue?1055","webpack:///./src/views/AdminDash/vues/ProductCachePanel.vue","webpack:///./src/views/AdminDash/vues/ProductCachePanel.vue?f29b","webpack:///./src/views/AdminDash/vues/ProductCachePanel.vue?4bfa","webpack:///./src/views/AdminDash/vues/TwilioApplicationPanel.vue?bcde","webpack:///./src/views/AdminDash/vues/TwilioApplicationPanel.vue?8a22","webpack:///./src/views/AdminDash/vues/TwilioApplicationPanel.vue?af01","webpack:///./src/views/AdminDash/vues/EmailSuppressionPanel.vue?5607","webpack:///./src/views/AdminDash/vues/EmailSuppressionPanel.vue","webpack:///./src/views/AdminDash/vues/EmailSuppressionPanel.vue?8b4b","webpack:///./src/views/AdminDash/vues/EmailSuppressionPanel.vue?6eee","webpack:///./src/views/AdminDash/vues/StripeBalanceTransactionPanel.vue?d823","webpack:///./src/lib/support/utilities/address/stateAbbreviations.ts","webpack:///./src/views/AdminDash/vues/StripeBalanceTransactionPanel.vue","webpack:///./src/views/AdminDash/vues/StripeBalanceTransactionPanel.vue?47ff","webpack:///./src/views/AdminDash/vues/StripeBalanceTransactionPanel.vue?cb7e","webpack:///./src/views/AdminDash/vues/AdminTools/Tools.vue","webpack:///./src/views/AdminDash/vues/AdminTools/Tools.vue?46be","webpack:///./src/views/AdminDash/vues/AdminTools/Tools.vue?7336","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetailScreen.vue?86bc","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetail.vue?4c09","webpack:///./src/views/AdminDash/vues/ReturnsOrderListSection.vue?c8b6","webpack:///./src/views/AdminDash/vues/ReturnsOrderListSection.vue","webpack:///./src/views/AdminDash/vues/ReturnsOrderListSection.vue?94ff","webpack:///./src/views/AdminDash/vues/ReturnsOrderListSection.vue?6fd1","webpack:///./src/models/Order/ReturnOrderStatus.ts","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetail.vue","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetail.vue?b08b","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetail.vue?cb4c","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetailScreen.vue","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetailScreen.vue?baa9","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetailScreen.vue?d048","webpack:///./src/views/AdminDash/vues/OrdersAdmin/Reports/MinistryImpactReport.vue?96d7","webpack:///./src/views/AdminDash/vues/OrdersAdmin/Reports/MinistryImpactReport.vue","webpack:///./src/views/AdminDash/vues/OrdersAdmin/Reports/MinistryImpactReport.vue?38a2","webpack:///./src/views/AdminDash/vues/OrdersAdmin/Reports/MinistryImpactReport.vue?98a9","webpack:///./src/views/AdminDash/vues/OrdersAdmin/ManualOrders/ManualOrderFrame.vue?a7dd","webpack:///./src/views/AdminDash/vues/OrdersAdmin/ManualOrders/ManualOrderFrame.vue","webpack:///./src/views/AdminDash/vues/OrdersAdmin/ManualOrders/ManualOrderFrame.vue?8611","webpack:///./src/views/AdminDash/vues/OrdersAdmin/ManualOrders/ManualOrderFrame.vue?7e9d","webpack:///./src/router/adminDashboard.ts","webpack:///./src/views/AllAccess/Reports.vue?fe0e","webpack:///./src/views/AllAccess/Reports/CoachRoster.vue?4c74","webpack:///./src/views/AllAccess/Reports/CoachRoster.vue","webpack:///./src/views/AllAccess/Reports/CoachRoster.vue?d383","webpack:///./src/views/AllAccess/Reports/CoachRoster.vue?7340","webpack:///./src/views/AllAccess/Reports.vue","webpack:///./src/views/AllAccess/Reports.vue?86cc","webpack:///./src/views/AllAccess/Reports.vue?ae3d","webpack:///./src/router/allAccess.ts","webpack:///./src/views/Home.vue?813a","webpack:///./src/views/Home.vue","webpack:///./src/views/Home.vue?2823","webpack:///./src/views/Home.vue?1e69","webpack:///./src/views/Partner.vue?f772","webpack:///./src/views/Partner.vue","webpack:///./src/views/Partner.vue?cd5e","webpack:///./src/views/Partner.vue?f91e","webpack:///./src/views/Planning.vue?8f93","webpack:///./src/views/Planning.vue","webpack:///./src/views/Planning.vue?2682","webpack:///./src/views/Planning.vue?3edf","webpack:///./src/views/Contact.vue?cc80","webpack:///./src/singletons/TheChat.vue?d2f6","webpack:///./src/singletons/TheChat.vue","webpack:///./src/singletons/TheChat.vue?94d6","webpack:///./src/singletons/TheChat.vue?8bed","webpack:///./src/views/Contact.vue","webpack:///./src/views/Contact.vue?e835","webpack:///./src/views/Contact.vue?a527","webpack:///./src/views/ComponentTest.vue?6a9c","webpack:///./src/views/TestComponents/DataTableTest/DataTableTest.vue?9774","webpack:///./src/views/TestComponents/DataTableTest/data.ts","webpack:///./src/views/TestComponents/DataTableTest/DataTableTest.vue","webpack:///./src/views/TestComponents/DataTableTest/DataTableTest.vue?04f5","webpack:///./src/views/TestComponents/DataTableTest/DataTableTest.vue?f14b","webpack:///./src/views/TestComponents/Tree/TreeTest.vue?890c","webpack:///./src/views/TestComponents/Tree/data.ts","webpack:///./src/views/TestComponents/Tree/TreeTest.vue","webpack:///./src/views/TestComponents/Tree/TreeTest.vue?846c","webpack:///./src/views/TestComponents/Tree/TreeTest.vue?672f","webpack:///./src/views/TestComponents/CarouselTest/CarouselTest.vue?ae3b","webpack:///./src/views/TestComponents/CarouselTest/sampleDeck.ts","webpack:///./src/views/TestComponents/CarouselTest/CarouselTest.vue","webpack:///./src/views/TestComponents/CarouselTest/CarouselTest.vue?d6bd","webpack:///./src/views/TestComponents/CarouselTest/CarouselTest.vue?67b4","webpack:///./src/views/TestComponents/ComboboxTest.vue?98a4","webpack:///./src/views/TestComponents/ComboboxTest.vue","webpack:///./src/views/TestComponents/ComboboxTest.vue?b6e6","webpack:///./src/views/TestComponents/ComboboxTest.vue?e4a0","webpack:///./src/views/TestComponents/CalendarTest/CalendarTest.vue?1e7e","webpack:///./src/views/TestComponents/CalendarTest/data.ts","webpack:///./src/views/TestComponents/CalendarTest/CalendarTest.vue","webpack:///./src/views/TestComponents/CalendarTest/CalendarTest.vue?615f","webpack:///./src/views/TestComponents/CalendarTest/CalendarTest.vue?d234","webpack:///./src/views/TestComponents/ModalDateTimePickerTest.vue?6da3","webpack:///./src/views/TestComponents/ModalDateTimePickerTest.vue","webpack:///./src/views/TestComponents/ModalDateTimePickerTest.vue?c103","webpack:///./src/views/TestComponents/ModalDateTimePickerTest.vue?3c64","webpack:///./src/views/TestComponents/DropDownMultiSelectTest.vue?5b3c","webpack:///./src/views/TestComponents/DropDownMultiSelectTest.vue","webpack:///./src/views/TestComponents/DropDownMultiSelectTest.vue?8bb3","webpack:///./src/views/TestComponents/DropDownMultiSelectTest.vue?9e6c","webpack:///./src/views/TestComponents/ModalConfirmationTest.vue?5ca5","webpack:///./src/views/TestComponents/ModalConfirmationTest.vue","webpack:///./src/views/TestComponents/ModalConfirmationTest.vue?a135","webpack:///./src/views/TestComponents/ModalConfirmationTest.vue?e1d0","webpack:///./src/views/ComponentTest.vue","webpack:///./src/views/ComponentTest.vue?3657","webpack:///./src/views/ComponentTest.vue?96c6","webpack:///./src/views/ForgotPassword.vue?6962","webpack:///./src/views/ForgotPassword.vue","webpack:///./src/views/ForgotPassword.vue?7186","webpack:///./src/views/ForgotPassword.vue?2d1d","webpack:///./src/views/ResetPassword.vue?04eb","webpack:///./src/views/ResetPassword.vue","webpack:///./src/views/ResetPassword.vue?c861","webpack:///./src/views/ResetPassword.vue?ca09","webpack:///./src/views/FeatureInterface.vue?51e5","webpack:///./src/views/FeatureInterface.vue","webpack:///./src/views/FeatureInterface.vue?2f59","webpack:///./src/views/FeatureInterface.vue?7ab3","webpack:///./src/router/index.ts","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventSchedule.vue?be93","webpack:///./src/components/TypeProgramTab.vue?9ada","webpack:///./src/components/TypeProgramTab.vue","webpack:///./src/components/TypeProgramTab.vue?c965","webpack:///./src/components/TypeProgramTab.vue?b88a","webpack:///./src/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardSystemsStep.vue?cf47","webpack:///./src/lib/support/models/IndividualPhone/data.ts","webpack:///./src/views/AdminDash/vues/ReturnsOrderDetailScreen.vue?6cfe","webpack:///./src/clients/contentManagementClient.ts","webpack:///./src/elements/Calendar/CalendarNav.vue?5ada","webpack:///./src/lib/support/store/orders/upwardRunningOrderState.ts","webpack:///./src/elements/ToggleLinks.vue?0509","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventCalendar.vue?d7ca","webpack:///./src/lib/support/models/IndividualAddressInfo/data.ts","webpack:///./src/lib/support/models/LeaguePlayerInfo/data.ts","webpack:///./src/filters/currency.ts","webpack:///./src/components/UpwardRunning/ManageDiscountCodesUR.vue?d1a0","webpack:///./src/lib/support/models/Communication/CommunicationCriteria.ts","webpack:///./src/lib/support/models/Communication/EmailMessage.ts","webpack:///./src/services/communicationService.ts","webpack:///./src/GeneratedTypes/Communication/Attachment.ts","webpack:///./src/store/communications.ts","webpack:///./src/components/ProductFlow/ProductSetupStepper/CampOnlySteps/UpwardSystemStep.vue?addf","webpack:///./src/components/DivisionGrid.vue?f8dd","webpack:///./src/components/HorizontalNavTabs.vue?f31f","webpack:///./src/components/HorizontalNavTabs.vue","webpack:///./src/components/HorizontalNavTabs.vue?178e","webpack:///./src/components/HorizontalNavTabs.vue?0752","webpack:///./src/clients/upwardTypesClient.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/reports/EvaluationsMissingReport.vue?9035","webpack:///./src/clients/appointmentClient.ts","webpack:///./src/components/ModalMultiSelect.vue?2924","webpack:///./src/views/AdminDash/vues/RegistrationTransactionPanel/CompleteRegistrationTransaction.vue?f130","webpack:///./src/views/Programs/Resources/ResourceTile.vue?6907","webpack:///./src/views/Programs/Reports/ExcelReports.vue?f400","webpack:///./src/views/Programs/Scheduling/Index.vue?5d88","webpack:///./src/views/AdminDash/vues/ReturnsOrderPanel.vue?b10e","webpack:///./src/components/OrderHistory/OrderListSection.vue?fb22","webpack:///./src/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/UnassignDivisionParticipants.vue?5582","webpack:///./src/lib/support/models/UpwardTypes/OfferingOptionType.ts","webpack:///./src/components/Orders/ProductSelect.vue?b3a9","webpack:///src/components/Orders/ProductSelect.vue","webpack:///./src/components/Orders/ProductSelect.vue?bd13","webpack:///./src/components/Orders/ProductSelect.vue?2cff","webpack:///./src/views/Programs/Reports/WebviewReports/EFTReport.vue?048a","webpack:///./src/views/Leagues/Archive.vue?c540","webpack:///./src/views/AdminDash/vues/OrderSearchScreen.vue?133d","webpack:///./src/lib/common/LeagueTypes.ts","webpack:///./src/views/Programs/Orders/orders/steps/SelectPromoCards.vue?2bbc","webpack:///./src/elements/RangeSlider.vue?bd0f","webpack:///./src/elements/Calendar.vue?8fc8","webpack:///./src/components/PartnerList.vue?2ef7","webpack:///./src/components/ManageDiscountCodes.vue?0083","webpack:///./src/views/Programs/Orders/compositions/useProductSelector.ts","webpack:///./src/store/leagues.ts","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/Packages.vue?08af","webpack:///./src/elements/SearchInput.vue?4b75","webpack:///./src/elements/SearchInput.vue","webpack:///./src/elements/SearchInput.vue?bd67","webpack:///./src/elements/SearchInput.vue?88db","webpack:///./src/lib/support/models/PlayerPracticeNightExclusion/data.ts","webpack:///./src/lib/support/models/LeaguePlayer/data.ts","webpack:///./src/components/AlertCloak.vue?0768","webpack:///./src/clients/gamesClient.ts","webpack:///./src/views/Programs/Divisions/common/vue/CoachListElement.vue?e0dd","webpack:///./src/elements/DataTable/DataTable.vue?feb1","webpack:///./src/elements/DataTable/DataTable.vue","webpack:///./src/elements/DataTable/DataTable.vue?0c66","webpack:///./src/elements/DataTable/DataTable.vue?08a5","webpack:///./src/lib/support/utilities/time/time.ts","webpack:///./src/lib/support/models/Partner/Contact/data.ts","webpack:///./src/lib/common/exceptions/login/UserNotFoundException.ts","webpack:///./src/clients/authorizationClient.ts","webpack:///./src/clients/programsClient.ts","webpack:///./src/components/DivisionSelect.vue?789c","webpack:///./src/views/UpwardRunning/Registration.vue?3aaa","webpack:///./src/store/colorTypes.ts","webpack:///./src/components/Orders/OrderListSection.vue?63a8","webpack:///./src/components/Orders/OrderListSection.vue","webpack:///./src/components/Orders/OrderListSection.vue?6988","webpack:///./src/components/Orders/OrderListSection.vue?117a","webpack:///./src/views/Programs/Scheduling/Squads/SquadsAutomaticScheduling.vue?53b8","webpack:///./src/views/Programs/Orders/vues/components/PreviewButton.vue?6cce","webpack:///./src/models/PromoCards/PromoCardMedia.ts","webpack:///./src/clients/leaguesClient.ts","webpack:///./src/elements/DataTable/DataTable.vue?e2af","webpack:///./src/lib/common/ProdConfigTypes.ts","webpack:///./src/views/AdminDash/vues/OrdersAdmin/Reports/MinistryImpactReport.vue?d6b0","webpack:///./src/components/Orders/OrderSummary.vue?f0ab","webpack:///./src/components/Orders/OrderSummary.vue","webpack:///./src/components/Orders/OrderSummary.vue?9e45","webpack:///./src/components/Orders/OrderSummary.vue?9be2","webpack:///./src/components/ManageBypassLinks.vue?2d77","webpack:///./src/clients/sessionObjectsClient.ts","webpack:///./src/App.vue?572a","webpack:///./src/CoachApp.vue?3e91","webpack:///./src/singletons/TheAuthWall.vue?fda6","webpack:///./src/components/PartnerList.vue?332f","webpack:///./src/components/PartnerList.vue","webpack:///./src/components/PartnerList.vue?adfc","webpack:///./src/components/PartnerList.vue?a008","webpack:///./src/services/browserService.ts","webpack:///./src/singletons/TheAuthWall.vue","webpack:///./src/singletons/TheAuthWall.vue?f298","webpack:///./src/singletons/TheAuthWall.vue?04d4","webpack:///./src/singletons/TheErrorRenderer.vue?ecfe","webpack:///./src/singletons/TheErrorRenderer.vue","webpack:///./src/singletons/TheErrorRenderer.vue?22f6","webpack:///./src/singletons/TheErrorRenderer.vue?5607","webpack:///./src/CoachApp.vue","webpack:///./src/CoachApp.vue?76b8","webpack:///./src/CoachApp.vue?046d","webpack:///./src/MainApp.vue?a84b","webpack:///./src/singletons/TheSidebar.vue?cabf","webpack:///./src/singletons/TheSidebar.vue?8aa8","webpack:///./src/singletons/TheSidebar.vue?0427","webpack:///./src/singletons/TheHeader.vue?6844","webpack:///./src/components/Notifications/NotificationsBtn.vue?4639","webpack:///./src/components/Notifications/NotificationsBtn.vue","webpack:///./src/components/Notifications/NotificationsBtn.vue?d781","webpack:///./src/components/Notifications/NotificationsBtn.vue?d3e0","webpack:///./src/singletons/TheHeader.vue","webpack:///./src/singletons/TheHeader.vue?87a8","webpack:///./src/singletons/TheHeader.vue?d62f","webpack:///./src/singletons/ThePromptToSave.vue?b77c","webpack:///./src/singletons/ThePromptToSave.vue","webpack:///./src/singletons/ThePromptToSave.vue?a39b","webpack:///./src/singletons/ThePromptToSave.vue?504e","webpack:///./src/singletons/TheFooter.vue?5265","webpack:///./src/singletons/TheFooter.vue","webpack:///./src/singletons/TheFooter.vue?f43e","webpack:///./src/singletons/TheFooter.vue?fa55","webpack:///./src/components/SiteLoading.vue?d584","webpack:///./src/components/SiteLoading.vue","webpack:///./src/components/SiteLoading.vue?804d","webpack:///./src/components/SiteLoading.vue?3c0e","webpack:///./src/components/Notifications/Notifications.vue?a198","webpack:///./src/components/Notifications/Notification.vue?08f6","webpack:///./src/components/LessButton.vue?287a","webpack:///./src/components/LessButton.vue","webpack:///./src/components/LessButton.vue?62c0","webpack:///./src/components/LessButton.vue?3e10","webpack:///./src/components/MoreButton.vue?71ea","webpack:///./src/components/MoreButton.vue","webpack:///./src/components/MoreButton.vue?083b","webpack:///./src/components/MoreButton.vue?fbe3","webpack:///./src/components/Notifications/NotificationCard.vue?6140","webpack:///./src/components/Notifications/NotificationCard.vue","webpack:///./src/components/Notifications/NotificationCard.vue?e8b9","webpack:///./src/components/Notifications/NotificationCard.vue?080f","webpack:///./src/components/Notifications/Notification.vue","webpack:///./src/components/Notifications/Notification.vue?ac07","webpack:///./src/components/Notifications/Notification.vue?c8b7","webpack:///./src/components/Notifications/Notifications.vue","webpack:///./src/components/Notifications/Notifications.vue?1004","webpack:///./src/components/Notifications/Notifications.vue?8b38","webpack:///./src/MainApp.vue","webpack:///./src/MainApp.vue?cc1d","webpack:///./src/MainApp.vue?6187","webpack:///./src/App.vue","webpack:///./src/App.vue?4dbd","webpack:///./src/App.vue?4195","webpack:///./src/registerServiceWorker.ts","webpack:///./src/plugins/vuetify.ts","webpack:///./src/main.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/PlayerConflictListElement.vue?23a5","webpack:///./src/views/Programs/Scheduling/Games/ext/GameModal.vue?2aef","webpack:///./src/components/VerticalTabs.vue?8de7","webpack:///./src/components/MenuTab.vue?125d","webpack:///./src/components/MenuTab.vue","webpack:///./src/components/MenuTab.vue?924d","webpack:///./src/components/MenuTab.vue?6792","webpack:///./src/components/VerticalTabs.vue","webpack:///./src/components/VerticalTabs.vue?ac0c","webpack:///./src/components/VerticalTabs.vue?f78e","webpack:///./src/clients/divisionsClient.ts","webpack:///./src/store/helper.ts","webpack:///./src/elements/ButtonGroup.vue?ec8f","webpack:///./src/components/VerticalTabs.vue?8e3e","webpack:///./src/elements/NumberInput.vue?b226","webpack:///./src/elements/NumberInput.vue","webpack:///./src/elements/NumberInput.vue?c4d5","webpack:///./src/elements/NumberInput.vue?4c59","webpack:///./src/views/Programs/Orders/vues/components/PromoCardOverflowWarning.vue?7b32","webpack:///./src/lib/support/models/LeagueProgram/data.ts","webpack:///./src/components/Card.vue?f15d","webpack:///./src/views/Programs/Orders/league/components/OrderRollup.vue?b493","webpack:///./src/lib/support/models/League/data.ts","webpack:///./src/components/ProductFlow/ParticipantKitStepper/ProductPickers/GradeGenderPicker.vue?79dd","webpack:///./src/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades.ts","webpack:///./src/elements/SelectInput.vue?54d1","webpack:///./src/elements/SelectInput.vue","webpack:///./src/elements/SelectInput.vue?2fff","webpack:///./src/elements/SelectInput.vue?5d62","webpack:///./src/components/Accordion.vue?75c4","webpack:///./src/components/Accordion.vue","webpack:///./src/components/Accordion.vue?cf07","webpack:///./src/components/Accordion.vue?c72e","webpack:///./src/components/ShippingMethodSelect.vue?216b","webpack:///./src/composables/TextLike.ts","webpack:///./src/models/UpwardRunning/PartnerChallenge.ts","webpack:///./src/models/Partner/RootContact.ts","webpack:///./src/store/upwardRunning.ts","webpack:///./src/lib/support/models/UpwardTypes/TypeProductOption.ts","webpack:///./src/views/Programs/Reports/WebviewReports/WaitlistReport.vue?1a20","webpack:///./src/store/leagueAbstraction.ts","webpack:///./src/views/AdminDash/vues/RegistrationTransactionsPanel.vue?7555","webpack:///./src/components/Orders/ProductSelect.vue?2124","webpack:///./src/components/PlayerEvaluationEditGrid.vue?b0d3","webpack:///./src/store/gradeTypes.ts","webpack:///./src/clients/inviteClient.ts","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TeamCard.vue?9f7c","webpack:///./src/views/AdminDash/vues/StripeBalanceTransactionPanel.vue?9939","webpack:///./src/elements/Icons.ts","webpack:///./src/views/Programs/Orders/orders/steps/SelectPromoCards.vue?b5ad","webpack:///./src/views/Programs/Orders/vues/components/PromoCardModal.vue?2264","webpack:///./src/components/Editor.vue?464f","webpack:///./src/components/Editor.vue","webpack:///./src/components/Editor.vue?3f13","webpack:///./src/components/Editor.vue?14c9","webpack:///./src/views/Programs/Orders/vues/components/PromoCardOverflowWarning.vue?72cc","webpack:///./src/views/Programs/Orders/vues/components/PromoCardOverflowWarning.vue","webpack:///./src/views/Programs/Orders/vues/components/PromoCardOverflowWarning.vue?de41","webpack:///./src/views/Programs/Orders/vues/components/PromoCardOverflowWarning.vue?b5e3","webpack:///./src/views/Programs/Orders/vues/components/FormatHelpButton.vue?19c6","webpack:///./src/views/Programs/Orders/vues/components/FormatHelpButton.vue","webpack:///./src/views/Programs/Orders/vues/components/FormatHelpButton.vue?907a","webpack:///./src/views/Programs/Orders/vues/components/FormatHelpButton.vue?a80c","webpack:///./src/views/Programs/Orders/vues/components/PreviewButton.vue?2f4f","webpack:///./src/views/Programs/Orders/vues/components/PreviewButton.vue","webpack:///./src/views/Programs/Orders/vues/components/PreviewButton.vue?2f21","webpack:///./src/views/Programs/Orders/vues/components/PreviewButton.vue?5bd6","webpack:///./src/views/Programs/Orders/vues/components/PromoCardModal.vue","webpack:///./src/views/Programs/Orders/vues/components/PromoCardModal.vue?717c","webpack:///./src/views/Programs/Orders/vues/components/PromoCardModal.vue?924b","webpack:///./src/views/Programs/Orders/vues/components/PromoCardDisplay.vue?65ae","webpack:///./src/views/Programs/Orders/vues/components/PromoCardDisplay.vue","webpack:///./src/views/Programs/Orders/vues/components/PromoCardDisplay.vue?2895","webpack:///./src/views/Programs/Orders/vues/components/PromoCardDisplay.vue?9c3a","webpack:///./src/views/Programs/Orders/orders/steps/SelectPromoCards.vue","webpack:///./src/views/Programs/Orders/orders/steps/SelectPromoCards.vue?578e","webpack:///./src/views/Programs/Orders/orders/steps/SelectPromoCards.vue?0553","webpack:///./src/elements/SwitchSlot.vue?59fa","webpack:///./src/elements/ButtonGroup.vue?f7b3","webpack:///./src/elements/ButtonGroup.vue","webpack:///./src/elements/ButtonGroup.vue?3642","webpack:///./src/elements/ButtonGroup.vue?6561","webpack:///./src/elements/SwitchSlot.vue","webpack:///./src/elements/SwitchSlot.vue?0baf","webpack:///./src/elements/SwitchSlot.vue?d9b0","webpack:///./src/clients/volunteersClient.ts","webpack:///./src/lib/support/store/orders/upwardRunningCache.ts","webpack:///./src/store/upwardRunningOrders.ts","webpack:///./src/views/Programs/Scheduling/Games/auto/FacilitySummaryBox.vue?40fa","webpack:///./src/lib/support/models/LeagueVolunteer/data.ts","webpack:///./src/elements/DataTable/vue/DeleteBtn.vue?3d9d","webpack:///./src/elements/DataTable/vue/DeleteBtn.vue","webpack:///./src/elements/DataTable/vue/DeleteBtn.vue?9849","webpack:///./src/elements/DataTable/vue/DeleteBtn.vue?79dc","webpack:///./src/lib/common/exceptions/login/LockedAccountException.ts","webpack:///./src/views/Programs/Scheduling/Facilities/AvailableGameDays.vue?ab7e","webpack:///./src/store/volunteers.ts","webpack:///./src/components/HorizontalTabs.vue?c779","webpack:///./src/clients/partnersClient.ts","webpack:///./src/views/UpwardRunning/Resources/ResourceTile.vue?b680","webpack:///./src/components/TypeProgramTab.vue?60c1","webpack:///./src/lib/common/exceptions/login/PasswordExpiredException.ts","webpack:///./src/views/Programs/Scheduling/SpecialEvents/SpecialEventCalendar.vue?5ef5","webpack:///./src/elements/ShowToggle.vue?ec2b","webpack:///./src/views/Leagues/ProductWarningModal.vue?e6b6","webpack:///./src/composables/SelectListProperties.ts","webpack:///./src/views/Programs/Reports/WebviewReports/CommunicationsOptOutReport.vue?8e47","webpack:///./src/lib/components/OrderDetail/loadOrder.ts","webpack:///./src/lib/support/models/LeagueFacility/data.ts","webpack:///./src/lib/support/models/LeagueListItem/data.ts","webpack:///./src/components/ProductFlow/ParticipantKitStepper/Packages/PackageIcon.vue?6798","webpack:///./src/views/Programs/Orders/league/components/OrderRollup.vue?ade7","webpack:///./src/views/Programs/Orders/league/components/OrderRollup.vue","webpack:///./src/views/Programs/Orders/league/components/OrderRollup.vue?c7e6","webpack:///./src/views/Programs/Orders/league/components/OrderRollup.vue?5c2d","webpack:///./src/views/Programs/Divisions/Teams.vue?f030","webpack:///./src/components/OrderHistory/ParticipantOrderGrouped.vue?b9f1","webpack:///./src/components/OrderHistory/ParticipantOrderGrouped.vue","webpack:///./src/components/OrderHistory/ParticipantOrderGrouped.vue?9e53","webpack:///./src/components/OrderHistory/ParticipantOrderGrouped.vue?18c7","webpack:///./src/components/UpwardRunning/ProductFlow/ParticipantKitStepUR.vue?d7fd","webpack:///./src/views/Camps/Registration.vue?f256","webpack:///./src/MainApp.vue?feef","webpack:///./src/views/Account/UserManagement.vue?862c","webpack:///./src/models/Order/OrderProduct.ts","webpack:///./src/components/OrderHistory/OrderDetail.vue?a704","webpack:///./src/components/OrderHistory/OrderDetail.vue","webpack:///./src/components/OrderHistory/OrderDetail.vue?ebfe","webpack:///./src/components/OrderHistory/OrderDetail.vue?d7e9","webpack:///./src/components/ConfirmDeleteModal.vue?a415","webpack:///./src/components/ConfirmDeleteModal.vue","webpack:///./src/components/ConfirmDeleteModal.vue?2fb4","webpack:///./src/components/ConfirmDeleteModal.vue?c5c0","webpack:///./src/elements/MaskedInputElement.vue?e78c","webpack:///./src/elements/MaskedInputElement.vue","webpack:///./src/elements/MaskedInputElement.vue?13d4","webpack:///./src/elements/MaskedInputElement.vue?b623","webpack:///./src/components/Notifications/Notification.vue?c246","webpack:///./src/views/Programs/Divisions/TeamManagement/vues/TabMenu.vue?6d94","webpack:///./src/views/ForgotPassword.vue?7ad2","webpack:///./src/components/ProductFlow/ProductFlowLogic.ts","webpack:///./src/views/Programs/Orders/vues/components/PromoCardDisplay.vue?d750","webpack:///./src/lib/support/models/LeagueListItem/LeaguePrograms2LeagueListItem.ts","webpack:///./src/views/Programs/Reports/WebviewReports.vue?ede4","webpack:///./src/components/Carousel/Slide.vue?6365","webpack:///./src/components/GridCard.vue?0f26","webpack:///./src/components/GridCard.vue","webpack:///./src/components/GridCard.vue?ecf4","webpack:///./src/components/GridCard.vue?2dc5","webpack:///./src/elements/BaseInputWrapper.vue?a8e0","webpack:///./src/elements/BaseInputWrapper.vue","webpack:///./src/elements/BaseInputWrapper.vue?c8cb","webpack:///./src/elements/BaseInputWrapper.vue?2a13","webpack:///./src/components/Modal.vue?3069","webpack:///./src/components/AlertCloak.vue?1f90"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","eventTypes","viewModes","getterNames","actionNames","mutationNames","mutations","setCurrent","state","item","currentItem","setItems","items","updateViewMode","viewMode","addItem","removeItem","id","itemToRemove","find","f","facilityID","itemIndex","indexOf","setPracticeNights","practiceNights","setPracticeDays","practiceDays","setInEditItem","inEdit","setCurrentLeague","currentLeague","setEmptyFacility","emptyFacility","getters","editorItem","leagueFacilityState","Array","list","actions","load","commit","retrieveAll","facilities","retrieve","league","set","facility","beginCreating","credentials","getCredentialsFromStoredAuthToken","accountNumber","getPrimaryAccountFromCredentials","toString","leagueID","availability","beginCreatingFrom","endCreating","beginEdit","edit","endEdit","loadPracticeNights","map","typeDayID","startTime","start","endTime","end","copyFacility","loadSelectedPracticeDays","selectedDays","program","loadGroup","retrieveGroups","groupData","validate","leagueId","upwardLeagueID","validateNew","validationResult","isSuccess","save","createNew","createResults","update","updateResults","errorObject","delete","deleteFacility","deleteResult","namespace","namespaced","timezoneState","getterTree","allItems","setAll","fetchAll","force","retrieveTimezoneTypes","timezoneTypes","getEmptyDataTablePagination","page","itemsPerPage","pageStart","pageStop","pageCount","itemsLength","getEmptyDataTableRemovedPagination","removedPage","removedItemsPerPage","removedPageStart","removedPageStop","removedPageCount","removedItemsLength","LoginException","errorsState","errorItems","validationItems","allErrors","allValidationErrors","currentError","currentValidationError","KEEP_ERROR_HISTORY_FEATURE","addError","timestamp","Date","clearCurrentError","pop","addValidationError","clearCurrentValidationError","clearAll","errors","opportunityTypesState","upwardTypesClient","retrieveOpportunityTypes","opportunityTypes","leagueTypesState","byOpportunityTypeId","opportunityTypeId","filter","x","typeOpportunityID","byUpwardTypeId","upwardTypeId","upwardTypeID","byId","retrieveLeagueTypes","leagueTypes","baseUrl","clinic","restService","post","put","newTemplate","upwardLeagueTypeID","getEmptyClinic","clinicDate","typeLeagueID","leagueName","typeProductGroupID","programMissionObjective","typeTimezoneID","typeCountryID","leagueDirectorPartnerID","partnerContact","canEdit","canEditReason","playerEstimate","leagueFinderURLOverride","programs","gradeDescriptions","clinicsState","leagueAbstraction","setCurrentClinic","retrieveAndSetAsCurrent","clinicsClient","rootGetters","uniqueUserId","sessionObjectsClient","cache","isNew","cacheKey","createOrUpdate","cacheResult","loadFromCache","dispatch","firstName","lastName","emailAddress","emailValid","emailValidReason","primaryPhoneNumber","primaryPhone","primaryPhoneTypeID","secondaryPhoneNumber","secondaryPhone","secondaryPhoneTypeID","alternatePhoneNumber","alternatePhone","alternatePhoneTypeID","yearsExperience","isFullTime","typePartnerRoleID","typePreferredDayOfWeekID","preferredContactDayOfWeek","typePreferredTimeOfDayID","preferredContactTimeOfDay","typePreferredContactMethodID","preferredContactMethod","clinics","connect","ruleSet","params","validateExisting","getEmptyConnect","connectDate","connectsState","setCurrentConnect","connects","productGroupTypeState","byLeagueUpwardTypeId","leagueUpwardTypeId","setForLeagueUpwardTypeId","fetchForProductGroupTypes","programStartDate","retrieveProductGroupTypes","productGroupTypes","phoneTypesState","retrievePhoneTypes","phoneTypes","addressTypesState","retrieveAddressTypes","addressTypes","generic","genericUpwardTypes","retrievePartnerDayTypes","partnerDayTypesState","partnerDayTypes","retrievePartnerPhoneTypes","typeState","partnerPhoneTypes","retrievePartnerPreferredContactMethods","partnerPreferredContactMethodTypes","retrievePartnerPreferredTimesOfDay","partnerPreferredTimeOfDayTypes","retrievePartnerRoles","partnerRoleTypes","alertState","notifications","unreadNotificationCount","userHasRead","setNotifications","fetchNotifications","alertClient","retrieveMyNotifications","markMyNotificationsRead","calls","forEach","markNotificationRead","results","success","some","alerts","retrieveReturnStatusTypes","returnStatusTypes","retrievePositionTypes","positionTypes","initState","viewedSteps","prodConfigType","isNewProdConfig","steps","productOfferingLoading","currentProgramType","currentParticipantKit1Step","maxTouchedParticipantKit1Step","currentParticipantKit2Step","maxTouchedParticipantKit2Step","currentProductSetupStep","maxTouchedProductSetupStep","productFlowState","currentProgramTypeId","currentProgramUpwardTypeId","setCurrentProductSetupStep","step","setMaxTouchedProductSetupStep","setCurrentParticipantKit1Step","setMaxTouchedParticipantKit1Step","setCurrentParticipantKit2Step","setMaxTouchedParticipantKit2Step","setProdConfigType","setIsNewProdConfig","setStepList","stepList","addViewedStep","Set","setProductOfferingLoading","loading","setCurrentTypeProgram","clear","assign","productFlow","creationParametersState","opportunityType","leagueType","setOpportunityType","setLeagueType","creationParameters","retrieveGPOrderTypes","gpOrderTypes","retrieveRelationshipTypes","relationshipTypes","productOfferingStartupProducts","detailsStartupOrder","productOfferingConfig","initialProductFlowLoadingComplete","childProductsLoadedCount","offeringsByProgram","productCatalogs","displayableProductCatalogs","selectedProductOfferings","selectedProductDetails","configList","productOfferingState","availableProductGroups","productOffering","availableStartupProducts","startupOrderProducts","pocStarterOrderItems","selectedProductOfferingConfig","buildSavedProductOfferingConfig","offeringProgramTypes","getOfferingProgramTypes","setProductOfferingStartupProducts","setProductOfferingConfig","setInitialProductFlowLoadingComplete","status","setPOTypeLeagueID","setFirstPracticeDateEstimate","firstPracticeDateEstimate","setGradeGender","gradeGenders","gradesByGender","setOfferingId","setAccountNumber","incrementChildProductsLoadedCount","setDetailsStartupOrders","details","setDetailsOnSavedProductOffering","setOfferingByProgram","setSelectedProductOfferings","selectedOffering","cleanedOfferings","isCheer","removeFromSelectedProductDetailByOfferingId","removeOldDetails","setProductCatalog","productCatalog","catalog","catalogs","typeProgramID","setDisplayableCatalogs","categories","displayableCategoryFilter","tierDiscoundFilter","setSelectedProductDetails","productDetails","setSelectedProducts","setSelectedProductDetailsByGroup","groupID","setConfigList","productOfferingId","productOfferingID","categoryId","categoryID","category","groups","g","products","groupDetails","productID","gd","pd","oldOffering","cleanDetails","fetchTopLevelProducts","firstPracticeDate","productOfferingClient","retrieveTopLevelProducts","fetchChildOfferings","retrieveChildOfferings","fetchProductOfferingConfig","configId","retrieveProductOfferingConfig","upsertOfferings","upsertOffering","reset","fetchConfigList","firstAccountNumber","retrieveProductOfferingConfigList","poc","buildSavedProductOfferingConfigDetails","autoIncludes","getAutoIncludes","pc","cat","typeProductOfferingOptionID","OfferingOptionType","AUTOINCLUDE","typeProductOptionID","TypeProductOption","INCLUDED","UPWARD_FEES","UPWARD_DISCOUNT","tierRestriction","partner","partners","partnerInfo","upwardTierID","retval","prog","programTypes","productOfferings","orderState","los","root","setProgramSizing","sizingArr","sizing","newsizing","eraseState","setOrderStatus","filterbyprogram","orderStatus","setLoading","setPendingAddOnItems","pendingAddOnItems","addPendingAddOnItems","setPrograms","incrementDoNotOrderWarningCount","doNotOrderWarningCount","incrementSkipThisOrderWarningCount","skipThisOrderWarningCount","setMissingSizing","setValidated","validated","setTemplate","template","setCurrentStep","currentProgram","currentStep","setParticipantProductLoading","participantID","productIndividualPending","setProductSize","product","programIndex","findIndex","programreplacement","programStatusIx","newProgram","divisions","div","teams","team","coaches","players","sizingUpdate","context","a","sendproduct","ProductID","TypeColorID","typeColorID","TypeSizeID","typeSizeID","Quantity","quantity","DoNotOrder","doNotOrder","SkipNextOrder","skipNextOrder","ordersClient","setMissingSize","whoIsUpdated","PLAYER","VOLUNTEER","addToExchange","updateProductQuantity","exchangeCost","orderQuantity","orderFreeQuantity","costOffset","colorDescription","previouslyOrdered","sizeDescription","individualID","jerseyNumber","replaced","removeFromExchange","newPayload","resetOrder","retrieveTemplate","getPendingProduct","pendingProduct","getMissingSizes","getLeagueOrderStatus","os","validateOrder","validateOrderShipping","rv","shippingInfo","notes","orderLines","purchaseOrderNumber","totalPlayerCount","salesTax","longevityDiscountAmount","totalOrderedProductAmount","upwardOrderID","confirmOrder","totalParticipantCount","clientOrderDate","addProduct","account","newProducts","sizeID","productColorSize","colorID","quantityFree","addOrUpdate_AddOnProduct","upwId","exist","findExistingProduct","updateAddOnProduct","newProduct","clean","newAddOnProduct","remove_AddOnProduct","deleteProductByIndex","old","newProd","leagueOrders","moduleActionContext","divisionGameTypes","upwardRunningAuthState","urCreds","displayName","setURCreds","creds","getURCreds","isAfter","expiration","subtract","getURCredsFromAPI","authorization","userData","upwardRunningAuth","restServiceUR","setToken","upwardRunningClient","loginWithLegacyToken","urToken","decodedJwt","decode","upwrJWToken","complete","jwtPayload","payload","log","exp","activities","initProductFlowState","currentParticipantKitStep","maxTouchedParticipantKitStep","urProductFlowState","setCurrentParticipantKitStep","setMaxTouchedParticipantKitStep","urProductFlow","use","startTimekeeping","setInterval","initialState","now","userLastSeen","updateTime","updateUserLastSeen","userInactiveMS","getTime","strict","camps","colorTypes","communications","gradeTypes","leagues","leagueScoringTypes","orders","participants","partnerNearByAccounts","paymentTypes","productOfferingProductPackageTypes","promptToSave","returnReasonTypes","scheduling","sizeTypes","teamPageAlerts","upwardRunning","upwardRunningOrders","volunteers","store","rootActionContext","rootGetterContext","moduleGetterContext","render","_vm","this","_h","$createElement","_c","_self","class","inline","noIndent","_t","_e","attrs","label","required","enabled","directives","rawName","expression","elementId","domProps","isArray","internalValue","_i","on","$event","$$a","$$el","$$c","checked","$$v","$$i","concat","handleChange","staticClass","labelClass","staticStyle","nativeOn","helpClicked","staticRenderFns","props","String","default","Boolean","showHelp","components","InputLabel","HelpIcon","setup","ctx","guid","v4","emit","component","RuntimeException","isRuntime","getEmptyTeamPageAlertInfo","typeAlertMessageID","typeAlertTargetID","typeAlertPriorityID","startDate","expireDate","expireViewCount","registeredViewCount","userCanHide","userDidHide","divisionID","divisionName","teamID","teamName","upwardTeamID","retrieveProgramTypes","SizeTypeEnum","OrderClientException","getOrderList","orderType","upwardOrderTypeID","toUpperCase","verificationDetails","order","convertedOrder","model","createOrder","getPromoCards","LeagueID","generateRMA","note","getRMA","url","setRMAStatus","getPromoCardTemplate","card","escapeString","text","upwardleagueID","content","defaultContent","shellUrl","mediaShellUrl","defaultRegistrationURL","getLeagueOrderItems","getOrderHistory","releaseFromHold","orderID","reason","resendToASB","searchOrderHistory","typeOrderID","typeOrderStatusID","sort","sortDirection","pageSize","pageIndex","getOrder","format","getOrderRollup","getOrderInfo","savePromoCard","isPreview","newcard","deletePromoCard","deadcard","orderStati","getOrderStati","si","active","description","sortOrder","b","sizes","getSizes","cacheValidOrderTypes","cacheValidOrderStati","getValidOrderTypes","getValidOrderStati","participantType","upwardOrderType","who","service","productIndexID","thing","putProduct","findProduct","existingProduct","getNotes","getNotesByUpwardOrderID","putNote","deleteNote","noteID","getPendingReturnProductList","deletePendingReturnProductByIndex","updatePendingReturnProduct","newPendingReturnProduct","getReturnsOrderProductList","findPendingReturnProduct","typeReturnReasonID","addOrUpdate_PendingReturnProduct","upw","newCargo","cargo","getRawOrderXML","upwardOrderid","editOrderXML","xml","RunningClientException","challenge","retrieveParticipants","userToken","setParticipantCartProduct","challengeID","createChallengeCartProduct","updateChallengeCartProduct","deleteChallengeCartProduct","retrieveBalanceTransactionReport","title","isSmall","callback","show","slot","onYes","_v","onNo","Modal","_l","readOnly","remove","_s","currency","cost","qty","qtyFree","variation","cmsProductName","variationDesc","filterNA","methods","CartLine","XStartupOrderExt","productsSelected","selectorMethod","Function","isSelected","localStorageKey","oldLocalStorageKey","getCredentialsFromNewAuthToken","authToken","getCredentialsFromToken","hasValidCredentials","upwardJWToken","setAccountHeader","accountNumbers","getParsed","getAuthToken","clearStoredAuthToken","getCsvFromPayload","propertyName","raw","split","deleteOldToken","retrieveOldToken","oldtoken","backupToken","token","isImpersonating","setHTTPHeaderAndLocalStorage","claimAccountNumber","rootAccountNumber","rolesByLeague","rootIsImpersonating","accountName","fullName","impersonatedAccount","impersonationActive","email","roles","daysUntilPasswordExpiration","Number","leagueRoles","JSON","parse","totpInfo","alertUrl","retrieveLeagueAlerts","retrieveSalesTaxAlerts","retrieveOrderAlerts","hideAlerts","alert","retrievePartnerAlerts","retrieveAdminAlerts","retrieveTeamPageAlerts","saveTeamPageAlert","removeTeamPageAlert","alertId","getEmptyDivisionGame","seed","awayTeamID","gameEnd","gameID","gameStart","homeTeamID","roundNumber","winningTeamID","homeTeamScore","awayTeamScore","typeDivisionGameID","DivisionGameSeed","GAME_ID","decrementingDGStrategy","isEmptyDivisionGame","which","DivisionGameTypes","REGULAR_GAME","TOURNAMENT_GAME","getEmptyxShipToBase","attention","contactInfo","street1","street2","subdivision1","subdivision2","postalCode","countryCode","useOrderRollup","orderRollup","getRollup","orderId","getEmptyRollup","position","warehouse","total","discount","rollup","formatted","shippment","internalOrderPosition","warehouseName","upwardProductID","extendedCost","rawRollup","inputId","$emit","subLabelInline","subLabel","noBottomPadding","VeeValidateRules","veeValidateMode","validationProviderName","scopedSlots","_u","fn","ref","classes","failedRules","placeholder","isTypeable","disabledDates","disabled","displayCalendarTop","onIconClick","ValidationProvider","Datepicker","strictMode","time","minDate","setDate","getDate","maxDate","disabledWeekDays","once","setInternalValue","min","valueOf","to","from","days","input","refs","datepicker","$el","querySelectorAll","click","focus","setTime","date","parts","immediate","getGenderFromRole","role","STEPMOTHER","MOTHER","GRANDMOTHER","AUNT","FATHER","GRANDFATHER","UNCLE","STEPFATHER","PlayerContactToLeagueVolunteer","churchName","staff","thirdPartyClientIDs","coachPreferences","gender","typeRelationshipID","birthDate","addresses","phoneNumbers","middleInitial","emailAddresses","optOutEmails","optOutSMS","inviteAllowed","registrationNote","FillMinimumLVDetail","existingLeagueVolunteer","copyIntoVolunteer","typeAddressID","typeEmailID","typePhoneID","typeThirdPartyClientID","noProductGroupError","dt","convertToLocalDateString","includes","offeringConfig","month","getMonth","monthStr","day","dayStr","dateStr","getFullYear","isModalOpen","index","toggleValue","internalDisabledIds","internalSelectedIds","selectAll","cancel","values","disabledIds","selectedIds","closeModal","updateSelected","CombineDataArray","azureKey","getCorrectedEmail","headers","response","download","orderList","columns","SimpleGrid","itemList","field","headerText","width","size","textAlign","GridColumn","RIGHT","getProductLabel","ilProd","prod","supressNA","orderLinesExt","productLabel","participantName","getCost","downloadCSV","camp","SynthesizeGameInfo","serverGameEnd","serverGameStart","homeTeamName","awayTeamName","facilityName","v","SynthesizeGameToEvent","eventID","typeFacilityEventID","GAMES","eventStart","eventEnd","eventName","SchedulingException","games","events","appointments","specialEvents","statusText","gamesStatusText","teamsLoading","scheduleChanging","setAppointments","setStatus","setGameStatusText","setGames","setProgram","removeGame","eventIndex","setTeams","setEvents","setTeamsLoading","isLoading","setScheduleChanging","isChanging","setSpecialEvents","updateGame","game","k","loadAppointments","actionContext","retrieveAllAppointments","removeAppointment","appointmentID","loadGames","retrieveAllGames","deletePractice","programID","practiceIDs","deletePractices","addPractices","practices","teamMap","Map","keys","setPractices","clearPractices","teamIDs","Math","floor","clearAppointments","loadEvents","clearGames","gameIDs","gameId","retrieveEvents","loadTeams","retrieveTeamList","divisionId","typeProgramId","pairTeams","upsertGame","newGame","upsertAppointments","newappts","updates","apt","loadSpecialEvents","retrieveAllSpecialEvents","upsertSpecialEvent","specialEvent","saveSpecialEvent","updateSpecialEvent","removeSpecialEvent","onChange","areaCodeAndNumber","modifiers","composing","extension","_n","$forceUpdate","phoneTypeId","TextInput","PhoneTypeSelect","MaskedInputElement","newPhoneObject","phone","phoneNumber","phoneID","priority","allowSMS","isValid","replace","deep","setProduct","pI","qI","productColorSizes","y","q","getEmptyCamp","campStartDate","campEndDate","publicDisplayName","registrationBeginDate","registrationEndDate","evalDescription","lateDate","isPrivate","bailedReason","allowAssistantCoachLinks","isMailIn","isOPRLeague","otherRegistrationVendorName","leagueRegistrationURL","leagueFinderMessage","defaultTypePaymentMethodID","useInternationalDateFormat","fromEmailAddress","fromEmailDisplayName","registrationInfo","accounts","playerUDFs","requestRiskMitigationInfo","ageCutoffDate","campsState","setCurrentCamp","campsClient","programTypeId","allowCreditCard","allowPayLater","allowSizingEntry","allowGeneralNotes","allowDonations","allowWaitlist","onlineRegistrationBeginDate","onlineRegistrationEndDate","donationExplanation","registrationStartMessage","confirmationMessage","twoChildDiscountAmount","threeChildDiscountAmount","fourOrMoreChildDiscountAmount","allowDiscountCodes","emailLDOnDiscountCodeUse","discountCodes","bypassLinks","contactLine1","contactLine2","contactLine3","contactLine4","contactLine5","getEmptySavedProductOfferingConfig","cheerEstimate","sportCoachEstimate","cheerCoachEstimate","GetEmptyContactInfo","trained","ContactToContactInfo","contact","emptyContact","ContactInfoToContact","SidebarItem","flavor","features","impersonationAccountNumber","isCurrentUserASuperUser","activeListItem","clickedDirectorPortal","mobileSiteURL","process","VUE_APP_URL_MOBILE_REDIRECT","chit","encodeURIComponent","location","regularFlavor","dashboardFlavor","navigate","route","$route","path","$router","catch","logout","clearCurrentCredentials","getProps","useModalValue","changeVisible","changeShowModal","emptyEmailSuppressionStatus","links","total_count","MessageTypes","PreviewMessageTypes","retrieveProviderInfo","upwID","retrieveMessagePreview","preview","retrieveLeagueSettings","emailSMSAccountID","updateLeagueSettings","setting","retrieveMessages","messageType","showArchived","messages","Email","retrieveMessage","emailSmsMessageID","sendEmailMessage","sendSMSMessage","sendMessage","getContactBuilder","playerPaymentStatus","playerEvalStatus","coachTeamStatus","programTypeID","viewAllLeagueContacts","sendTeamPageLinkGroupMessage","upwardLeagueId","parameters","sendTeamRosterGroupMessage","getQueuedGroupMessage","messageID","getScheduledCommunications","endpoint","deleteScheduledCommunication","upwardType","getTollFreeApp","canSubmitTollFreeApp","createTwilioTollFreeApplication","twilioApplicationRequest","updateTwilioTollFreeApplication","getPendingApplicationsCSV","setPendingApplicationsToSubmitted","getCommunicationStatuses","getTwilioApplicationRequestList","search","submitTwilioVerificationRequest","completeTwilioApplicationRequest","revertTwilioApplicationRequest","getEmailSuppressionStatus","setupURComms","upwardChallengeID","maxStringLength","val","maxLength","substring","_m","tabIndex","append","subText","convertToString","isNaN","toFixed","convertToNumber","valueAsNumber","round","GridColumnAlignEnum","wrapperClass","prependIcon","appendIcon","subTextWithLink","redisplay","itemClass","getOptionValue","_q","getOptionText","BaseInputWrapper","textPropertyName","valuePropertyName","itemsList","getEmptyPlayerUDFs","selected","_f","extendedDescription","getEmptyXShipMethodBase","getEmptyXShipMethodBaseArray","filters","getSelected","selMethod","method","SectionHeader","ShippingMethodSelect","modalTitle","modalIsVisible","$set","toggleModal","VeeValidateForm","ShippingAddressDisplay","AddAddressModal","editable","showTitle","TwoFactorAuthRequiredException","accountToImpersonateAfterAuth","pageContentDocument","markup","Loading","documentId","documentID","documentContent","updatePageContent","contentManagementClient","getPageContentDocument","pcd","replaceAll","toggleDrop","theLabel","select","mixins","buildDictionary","count","first","dropAway","dict","FacilitiesClientRuntimeException","historical","retrieveNew","retrieveEventsForDivision","programId","facilityId","selectedItem","SelectInput","businessPhoneTypesItems","loadItems","getPhoneTypes","ProductCategoryEnum","VolunteerSectionTypes","VolunteerRoleIDs","approvableRoles","COACH","REFEREE","CategoryNameToProgramName","toLocaleUpperCase","CategoryNameWithoutProgram","toLowerCase","CategoryWithProgram","CategoryNameToCategory","ALL","COACHES","COMMISSIONERS","OTHER","REFEREES","CHEERDIRECTOR","categoryToRoles","categoryToTitle","cName","refLabel","RoleHasCoachPreferences","RoleRequiresApproval","RoleIDToRoleName","COACHCOMMISSIONER","PRAYERCOMMISSIONER","REFEREECOMMISSIONER","HALFTIMECOMMISSIONER","HOSTCOMMISSIONER","ADCOMMISSIONER","GAMEDAYCOMMISSIONER","ToXRunningStartupOrder","localOrder","orderLine","processingInstructions","normalizeOrder","setSalesTaxNotCalculatedYet","lines","line","productUniqueID","ToXRunningStartupOrderExt","orderExt","newOrderExt","getEmptyXRunningStartupOrderExt","dueDate","typeOrderingContextID","shipTo","shipMethods","open","selectedText","inputKeydown","isOpen","selectedIndex","onClickaway","listItems","close","startsWith","scrollTo","setOption","optionIndex","listbox","getElementById","option","parentOffsetHeight","offsetHeight","parentScrollTop","scrollTop","offsetTop","isAbove","isBelow","max","action","getActionFromKey","MenuActions","Next","Last","First","Previous","preventDefault","getUpdatedIndex","CloseSelect","Close","Open","Keys","Backspace","Clear","Down","End","Enter","Escape","Home","Left","PageDown","PageUp","Right","Space","Tab","Up","Select","Type","menuOpen","current","orderInfo","orderTitle","orderDate","createdBy","sl","formatDate","createDate","statusDescription","OrderListSection","OrderShipper","CostSummary","SwitchSlot","OrderRollup","ParticipantOrderGrouped","trackingNumbers","trackingNumber","shippingMethods","shipDate","statusList","upwardOrderStatusID","teamPageAlertState","emptyTeamPageAlert","setEmptyTeamPageAlert","alertID","getEmptyPreviewMessage","selectedGroups","individualContactInfo","practiceNight","startGrade","endGrade","communicationType","replyTo","emailSubject","messageBody","toDelimited","paymentStatus","evalStatus","practiceFacilityIDs","getEmptyMessageData","recipientTokens","individualRecipients","recipientCount","subject","attachments","sentDate","thirdPartyResponse","toMessageDataFromEmailSMSLeagueMessageInfo","messageData","recipients","createDateLocal","emailAttachments","getGenericUpwardTypes","clientMethod","genericTypesState","isEmptyCheerSquadAppointment","tableStriped","column","alignment","clickable","disableHeaderSort","style","calcwidth","headerClick","sortColumn","internalData","internalColumns","entry","handleRowClicked","getColumnComponent","customRender","resolvePath","editButtonClasses","editButtonInnerHtml","stopPropagation","handleEditClicked","deleteButtonClasses","deleteButtonInnerHtml","handleDeleteClicked","gridData","gridColumns","showEditButton","showDeleteButton","showDeleteButtonHeader","showEditButtonHeader","isInteger","entity","ComponentArgumentRuntimeException","bit","val1","val2","defaultValue","reduce","webpackContext","req","webpackContextResolve","ToXStartupOrder","getSalesTaxNotCalculatedYet","ToXStartupOrderExt","getEmptyXStartupOrderExt","lastOrderSubmitDate","showRangeHint","validGrades","gradeRange","isByAge","availableStartGrades","availableStopGrades","endSortOrder","startSortOrder","validGradeRange","gradeList","idx1","idx2","emitGrades","grades","ageByCutoff","GeneralError","exception","innerException","shipmentMessage","orderShipmentInfo","shippedFromName","trackingNumbersExist","trackingNumbersRemaining","viewAll","shipComplete","trackingMessage","isModalVisible","maxCount","TrackingNumber","allTrackingNumbers","shippedFromID","trackingNumbersToShow","OrderShipment","shipmentCount","shipmentList","iconClass","exact","VIcon","VListItem","leagueVolunteerRoleToLeagueVolunteerRoleInfo","serverAuthorizedExpireDate","volunteerIndividualID","udFs","leagueVolunteerRoleInfoToLeagueVolunteerRole","roleID","approved","authorizedExpireDate","upwardAuthInvitationID","individualAddressInfoToIndividualAddress","addressID","individualEmailInfoToIndividualEmail","valid","validityReason","emailID","individualPhoneInfoToIndividualPhone","individualEmailToIndividualEmailInfo","individualPhoneToIndividualPhoneInfo","CoachProgramInfoToCoachProgram","assistantCoachLink","gendersAndGrades","assistantCoachPreferred","LeagueCoachInfoToLeagueCoach","leagueVolunteerInfoToLeagueVolunteer","incoming","leagueVolunteerToLeagueVolunteerInfo","registrationTransactionID","formattedNameFirstLast","formattedNameLastFirst","formattedNamePrivate","coachRoleApproved","refereeRoleApproved","inviteAcceptDate","inviteExpireDate","leagueVolunteerToLeagueVolunteerInfoMerge","lv","lvi","slide","history","back","warning","subtitle","body","fnc","Slide","deck","previousId","setCache","createdDate","localStorageService","getCached","OneDay","deleteCached","currentOrderTemplate","lastCompletedOrder","selectedProducts","selectedCards","internalOrderTypeUpdateHack","currentOrderProducts","isActive","currentOrderShipTo","currentOrderNotes","currentOrderShippingMethods","currentOrderInternalOrderType","hack","pi","currentOrderAdminNote","cardsSelected","makeKey","resetSalesTaxAndShipping","resetCurrentOrder","u","setCurrentOrderTemplate","setCardsSelected","cards","prods","promocard","setLastCompletedOrder","setCurrentOrderSelectedProducts","setCurrentOrderProducts","setCurrentOrderShipTo","setCurrentOrderNotes","setPurchaseOrderNumber","setCurrentOrderShippingMethods","setCurrentOrderInternalOrderType","setCurrentOrderAdminNote","setProductQuantity","orderData","curproducts","retrieveLastOrder","clearCachedOrder","handleInput","SectionNameConversion","STARTUPORDER","LEAGUEORDER","RETURNORDER","MERCHANDISEORDER","AWARDORDER","CLINICORDER","MANUALORDER","RUNNINGORDER","RUNNINGSTARTUPORDER","AlertCloakTypes","sanitizedMessage","currentAlert","hide","hasAlerts","FullBody","uncloak","notShowing","msg","allowedTags","defaults","hiding","accountId","fetchAlerts","SALES_TAX","LEAGUE","upwardId","PARTNER","ORDER","ready","partnerState","hasAcceptedCurrencyWarning","hasInfo","isGlobal","currencyWarningNeeded","setPartnerInfo","setPartners","setHasAcceptedCurrencyWarning","hasAccecpted","retrievePartnerInfo","getPartnerInfo","myLeagueInfo","multiple","isHighlighted","isSecondary","dark","$slots","proxy","dismiss","toggle","unSelect","GridCard","selectable","showDismiss","cancelled","dateValue","cancelLabel","picked","pickLabel","toLocaleTimeString","year","hour","minute","internalDateValue","toLocaleDateString","handleDateInput","minTime","internalTimeValue","today","TimePicker","toDate","isToday","nowMinutes","getMinutes","nowHours","getHours","isValidTime","isValidDate","timeParts","validDate","DateTimeInput","PlayerContactTypeEnum","getEmptyPlayerContact","isEmergencyContact","RELATIONSHIPS","UpwardRelationshipTypeID","Description","SortOrder","LEGALGUARDIAN","relationshipKVMap","PlayerContactSeed","playerID","decrementingPlayerContactIDSeedStrategy","hasContact","hasPhone","isCompleteContact","iconClick","underlineOnly","maxlength","handleBlur","inputType","TextLikeWrapper","setFocus","elementToFocus","inputField","rows","cols","isReadOnly","canInput","haltInput","sortGrades","filterGrades","gradeMin","gradeMax","grade","gradeIndex","maxGradeIndex","minGradeIndex","getListFromSavedEstimate","typeGradeID","populateProgramGrades","productConfigGrades","converted","overrideRegistrationFee","overrideEarlyRegistrationFee","getGradesList","getGradesListFromAccount","uniqueGrades","getGradeUsage","programGrades","femaleGradeExists","pg","maleGradeExists","femaleUsed","maleUsed","initializeNewProgramGradeData","loadGradeDataIntoProgram","loadGradeDataIntoAccount","shouldReloadGradesForAccount","loadGradeInformationIntoAccount","shouldReloadGrades","loadGradeInformationIntoProgram","accountGrades","controlGrades","itemsNotForProgram","itemsNotBeingUpdated","accountGradeMale","accountGradeFemale","programDetails","programGradeMale","programGradeFemale","prettyGradeGender","acct","group","sorted","join","getProperGradeLabel","ageSuffix","typeID","getGradeTypeIDFromBirthDate","age","parseInt","getTypeIDByAge","getDateRangeForGrades","fromTypeGradeID","toTypeGradeID","fromDate","add","fromTypeID","toTypeID","authState","timeSet","isMinistryAgreementSigned","codeReloadRequired","activeAccount","isAuthenticated","rootState","isMultiAccountUser","isImpersonated","isCurrentUserASuperAdmin","isCurrentUserAnAdmin","hasSuperUserRole","isSystemsAndSupport","isUpwardStaff","refreshTime","msPerMinute","setCurrentCredentials","setMinistryAgreementIsSigned","resetMinistryAgreementIsSigned","setActiveAccount","setCodeReloadRequired","login","password","restResult","handleSuccessfulLogin","validateTOTP","totpCode","loginByTokenWithImpersonation","impersonatingAccountNumber","userName","usersAuthToken","tokenLogin","ex","passthoughImpersonation","setPartner","impersonate","unimpersonate","passwordChange","newPassword","refreshToken","tryLoadSavedToken","updateProfile","username","hasMultipleAccounts","incompleteToken","impersonatedAuthToken","credential","practiceInfo2practice","practiceEnd","practiceStart","ourURL","TeamsClientException","teamsClient","individualId","suffix","teamGenerationData","teamId","isHeadCoach","headCoach","teamid","newPractices","getTeam","existingPractice","pti","newPractice","saveTeam","lockPlayerToTeam","typePositionID","isExpanded","SlideUpDown","accordionData","currentGuid","getEmptyProductOfferingInfo","cmsProductDescription","cmsProductImageUrls","productPackages","digitalFormatAvailable","productCostOffsetLabels","radioItemList","RadioGroupInput","Value","Text","getEmptyLeagueCoach","dateTransformer","fromEntries","entries","axiosInstance","transformRequest","getAPIBaseURL","convertToRestServiceResult","instance","implementsInterface","convertToVerificationDetails","interceptors","config","endsWith","Authorization","isUpwardExceptionResult","getRestServiceResult","axiosResponse","isSuccessCode","isErrorObject","wrapApiCall","resource","fullUrl","other_config","args","deleteMethod","patch","common","getToken","$1","divisionsState","selectedDivision","currentDivision","setDivision","division","clearSelectedDivision","hasTwoOptions","hasOneOption","hasNoOptions","handleLocalBlur","handleLocalChange","handleLocalInput","internalNumber","handleExtChange","handleTypeChange","showExtension","showPhoneType","handleAndKick","handler","UpwardOpportunityTypes","UpwardOpportunityTypesByUpwardTypeID","filteredText","collapsible","horizontal","isChecked","CheckboxInput","otherthing","change","onValueChanged","updateFilteredText","equal","options","showBlankItem","blankItemText","blankItemValue","adult","limitSelectionTo","Gender","both","female","abbreviation","male","objectWithoutProperties","obj","exclude","handleSubmit","rest","match","numberValues","dateVal","setFullYear","isBefore","endDate","beginDate","setHours","ValidationObserver","checkValidity","observer","silent","reportValidity","hasIcon","getEmptySavedProductOfferingConfigDetail","lockedInCost","costToCharge","orderTypes","orderTypeRef","selectOrderType","adminNoteRef","adminNoteChange","MemoInput","isErrorOrderType","selectedType","manual","newValue","isPhoneValid","re","addDisabled","isAdding","colors","colorRef","selectColor","sizeRef","selectSize","jerseyNoRef","makeQtyFree","internalProduct","orderMaximumQuantity","MAX_SAFE_INTEGER","quantityRef","cs","getEmptyPendingOrderAdditionalProductInfo","typeParticipantID","ADD_TIMEOUT","NumberInput","EnlargeableProduct","validSizes","isAddOnItem","showIsFreeCheckbox","isFreeCheckboxDefault","unique","desc","isSystemInternal","isCustomJersey","requiresJerseyNumber","showColors","resetDropdownSelection","currentVariation","price","priceLine","cmsUnitDescription","newSize","isSCCombo","color","newColor","addOnItem","productSummary","participantTeamName","renderConditionally","isVisible","enableFocusTrap","headerClass","headerIcon","closeIconClass","onBodyScroll","FocusTrap","showClose","disableBodyScrolling","el","classList","enableBodyScrolling","modalBody","firstElement","querySelector","LOSStates","getEmptyXLeagueOrderDetailProduct","parentProductID","SizeAffectsEnum","ORDER_COUNT_NOT_INITIALIZED","getEmptyLeagueOrderDetail","orderCount","coachCount","playerCount","coachProductsAvailable","programCost","newLOS","newprograms","volunteerSizing","PRE_STEP","replaceProduct","recordIndex","productIndex","copyOfSizing","copyOfRecord","setProductSizeInCoaches","teamCoaches","cI","setProductInPlayers","teamPlayers","_b","$attrs","local","VTreeview","retrieveReturnReasonTypes","formatTemplate","buttonText","retrievePaymentTypes","AddressType","stringToAddressTypeID","MAILING","SHIPPING","getEmptyIndividualAddress","IndividualAddressSeedInfo","trackingURL","trackingNumberInfo","carrierURLBasePath","postalCodeLooksValid","RegExp","zipCode","test","abbr3","abbr2","ordinal","subTotal","shipping","showModal","typeProductOfferingProductPackageID","showPrice","productName","isModalShown","small","currentImg","img","images","getPrices","formattedCost","getUnitDescription","toLocaleLowerCase","savedProductOffering","showTestData","VUE_APP_USE_TEST_DATA","imgs","productDescription","prices","lockedInProductCost","productCost","programType","CAMP","savedProduct","offering","VCarousel","VCarouselItem","ProductDetail","PackageIcon","logic","kits","showIcons","ProdConfigTypes","ESTIMATE","getEmptyRunningOrderDetail","getEmptyxRunningOrderDetailIndividual","Genders","GenderIdToText","genderId","internalEvaluation","templateClosure","sendEvent","parseFloat","updatingInternalEvaluation","setEditValue","activityID","activityValue","setInternalEvaluation","cssClasses","packageId","icon","icons","retrieveProductOfferingProductPackageTypes","getStepProperty","nextStep","maxTouchedStep","minDisabledStep","providesNext","productSelectorLogic","disable","enable","removeProduct","upwardID","toggleProduct","SelectorCard","ProductSelect","ps","useProductSelector","commitAddress","specialRequestChange","purchaseOrderNumberChanged","ShippingAddressSection","address","goNext","ShippingMethodSection","currentOrderProductsRef","isErrorOrder","ProductQuantitySelector","hasQuantities","ConfigurationWithPromoCard","SelectKit","SelectPromoCards","SelectQuantities","Shipping","Review","productSelectorLogicGenerator","ConfigurationWithoutPromoCard","ConfigurationForManualOrder","SelectManualOrderType","orderingWorks","reloadOrder","newroute","oldroute","resetState","orderStepChanged","stepIndex","placeOrder","retrieveTaxesAndShipping","orderConfig","gameday","startup","isOnLastStep","Stepper","StepperContent","Cart","StepperStep","OrderSummary","cleanPhoneNumber","digits","formatPhoneNumber","phoneAndAreaCode","cleanPhone","LeagueTypeEnum","nearByAccountsState","getAccountsInRadius","setAccountsInRadius","fetchAccountsInRadius","archived","getAccountsNearBy","RunningOrderClientException","getRunningOrderProductList","getxOrder","getRunningOrderItems","getRunningOrderStatus","ParticipantClientException","participantsClient","participant","matched","idpart","xlsImport","isNewPlayer","header","AutoMapPendingLinks","participantId","last","orSearch","includePastLeagues","historyLimit","guardianFullName","currentLeagueID","currentUpwardLeagueID","includeCurrentLeague","useStartsWith","otherParams","endpointURI","res","importLeagueID","CopyContactsFromUPW","pcURL","promptToSaveState","isDirty","internalMutationNames","setIsDirty","setModalIsVisible","setPayload","onNavigation","continue","onCancel","getEmptyLeagueAbstraction","productSeasonDate","genderGrades","leagueToAbstraction","campToAbstraction","clinicToAbstraction","CLINIC","connectToAbstraction","CONNECT","runningToAbstraction","challengeName","RUNNING","parentComponent","focusEditor","openModal","editor","hideLinkMenu","commands","menu","getMarkAttrs","linkMenuIsActive","setLinkUrl","link","linkUrl","_k","keyCode","bold","italic","underline","bullet_list","menuBubbleIsActive","showLinkMenu","heading","level","charactersRemaining","schema","nodes","list_item","node","childCount","parseDOM","getAttrs","dom","hasAttribute","toDOM","EditorContent","EditorMenuBar","EditorMenuBubble","DivWrapper","editorElement","menuBubbleElement","menuBarElement","provider","editorAreaElement","linkInputElement","isSame","getHTML","limit","setContent","onInit","command","validator","onUpdate","textContent","trim","isEmpty","html","extensions","levels","destroy","handleClick","caption","StepHeader","VStepperStep","getOrderProductTotal","getEmptyXRunningOrderExt","teamState","fetchTeams","retrieveLeagueTeams","leaguePlayerToLeaguePlayerInfo","lp","medicalNotes","isImported","generalNotes","isPlayerSizingComplete","RetrieveEnum","NEW_PARTICIPANT","NO_ACTIVE_PARTICIPANT","throwError","setError","currentRemovedPartcipant","removedParticipants","lastLeagueLoaded","lastError","lastException","participantUnderEdit","participantUnderEditId","operation","nothing","playerLoading","skipParticipantListRefresh","pagination","removedPagination","participantState","currentRemovedParticipant","setPlayerLoading","setRetrieveType","setCurrentRemovedParticipant","clearCurrent","clearCurrentRemovedParticipant","setUpdatedPlayer","idx","removeParticipant","updateParticipantData","playerInfo","participantIndex","setParticipants","setRemovedParticipants","warn","setLastLeagueLoaded","setParticipantUnderEdit","setParticipantUnderEditId","setCurrentProgram","setSkipParticipantListRefresh","flag","clearParticipant","realContactFromFakers","contacts","setAccountOnParticipant","ids","newAccount","i1","retrieveParticipant","getMessage","upsertParticipant","newplayer","loadProgramParticipants","shouldForceRefresh","loadRemovedParticipants","retrieveRemoved","setCurrentParticipantByID","getParticipant","setCurrentRemovedParticipantByID","unRemoveParticipant","unRemove","clearCurrenRemovedParticipant","getNewTemplate","getEmptyOrderProduct","cmsSizingGuideUrl","orderMinimumQuantity","orderSelectionRequired","registrationLabel","getEmptyOrderProductSize","hasSNumbers","duplicateProductMatchingKey","getEmptyOrderProductList","retrieveLeagueScoringTypes","AlertTypeEnum","classNames","dismissable","DANGER","timeoutHandle","typeClass","NOTICE","isButtonDisabled","buttonLabel","defaultButton","VBtn","VStepperContent","retrieveSizeTypes","FeaturesEnum","featuresExcludedArr","fetch","ok","json","getExcludedFeatures","useFeatureFlags","isFeatureInitialized","__UNSET__","bootstrapFeatures","isFeatureOn","feature","setExcludedFeatures","featureClient","featuresExcluded","featuresValid","keyPrefix","getRaw","fullKey","getFullKey","localStorage","getItem","stringify","setItem","vertical","VStepper","VStepperHeader","DivisionGameInfoToDivisionGame","FacilityAvailabilityModel","FACILITY_DEFAULT_TIMES","updatePracticeDays","existingDay","Practices","practice","daysToRemove","selectedDay","dayIndx","updateGameDays","Games","fileName","csvData","encodedUri","encodeURI","valueProperty","warpperClass","showDays","allOption","unshift","times","invalid","customParseFormat","interval","Combobox","extend","elemId","displayFormat","FacilityEventEnum","typeCounter","programTypeDescription","shortDescription","ProgramTypes","BASKETBALL","BASKETBALLCHEERLEADING","SOCCER","FOOTBALL","BASKETBALLCAMP","CHEERLEADINGCAMP","SOCCERCAMP","FOOTBALLCHEERLEADING","FOOTBALLCAMP","VOLLEYBALL","BASEBALL","SOFTBALL","UPWARDSELECTMSS","PICKLEBALL","leagueTypeId","isLeague","allowContinue","saveAndContinue","cmsDocumentId","readFirstConfirmed","getByOpportunityTypeId","tempList","selectType","LeagueTypes","UPWARDSELECT","readMeFirstTitle","internalVal","onIsLoadingChange","onDocumentChange","isReadMeFirstLoading","onTotalAccessClickedConfirmed","PageContent","canCreatePartnerChallenge","canViewStripeReport","LeagueTypeSelect","OpportunityTypeSelect","ReadFirstModal","allOpportunities","UPWARDRUNNING","ot","isLicense","LICENSING","isConnect","isRunning","showRunningWarning","confirmed","isClinic","isCamp","setStartingSelection","selection","addToCache","beginLeague","startingSelection","getLeagueTypeById","isEstimate","ProgramCreationPicker","PreviousEstimates","noProgramsText","resourceOnlyView","includeHistorical","setPartialCount","sortedPrograms","programInfo","resourceLink","programsToShow","defaultLink","showNameOnly","isResourceOnlyLeague","baseLink","isUpwardSelect","firstEvalDate","firstGameDate","seasonEndDate","registrationUrl","volunteerApplicationUrl","iconCssClass","defaultIcon","participantSportCount","participantCheerCount","totalPaid","outstandingBalanceLink","donations","showCounts","showAmounts","isHistorical","hasCheer","ProgramIcon","ProgramOverview","typeSystemsAccessID","base","SmartRouterLink","clicked","runningCache","removeRunning","clickedRunning","prettyLeagueTypes","LT_BASKETBALL","LT_BASKETBALL_BASKETBALLCHEERLEADING","LT_SOCCER","LT_FOOTBALL","LT_BASKETBALLCAMP","LT_CHEERLEADINGCAMP","LT_SOCCERCAMP","LT_FOOTBALL_FOOTBALLCHEERLEADING","LT_FOOTBALLCAMP","LT_VOLLEYBALL","LT_BASEBALL","LT_FOOTBALLONE","LT_BASKETBALLONE","LT_SOCCERONE","LT_CHEERLEADINGONE","LT_KICKBALLCONNECT","LT_DODGEBALLCONNECT","LT_BASKETBALLCONNECT","LT_FOOTBALLCONNECT","LT_SOCCERCONNECT","LT_FUTSALCONNECT","LT_UPWARDSELECTMSS","LT_PICKLEBALL","cheer","sport","programCache","getEmptyStartingSelection","ResumeProgramItem","ResumeURProgram","firstAccount","allSettled","cachedLeague","cachedCamp","cachedClinic","cachedConnect","getCachedRunning","uniqueId","retrieveData","uniqueKey","setCurrentChallenge","setCurrentPartnerContact","ConnectOverview","LeagueOverview","ClinicOverview","CampOverview","UpwardRunningOverview","ResumeProgram","sortByDate","partialProgramCount","programsClient","restResultUR","noPrograms","CurrentPrograms","loadingComplete","saveEstimateClick","startLeague","showEstimateSavedModal","closeEstimateSavedModal","showCurrencyWarning","stepTitle","nextOfferingIndex","listOfPrograms","currentUpwardProgrmType","productSetupMaxTouchedStep","hooks","productSetupNextStep","productSetupStepClicked","leaguePrograms","onProgramInformationValidation","buttonDisabled","localNextStep","hookDefinitions","beforeNextStep","afterNextStep","onValidEvent","sendDataToStore","localInfo","dateLimits","getEmptyUpwardProgramTypeID","averageNumberTeams","averageNumberPlayers","maxEvalScore","draftVariance","minPlayersPerTeam","maxPlayersPerTeam","suggestedPlayersPerTeam","parentProgramID","playersPerCoachShirt","orderUnassignedParticipant","isPilot","numberOfSegments","getEmptyUpwardProgramTypeIDList","allProducts","mySelectedProducts","getProductsByCategory","indexes","hasId","getProductOptionID","getProductPrice","getProductByID","allDetails","buildGradeArray","acc","programByType","progs","_","scopedSlotName","slotData","slotName","upwardObserver","upwObserver","obs","flags","includeGirls","girlGrades","includeBoys","boyGrades","includeGirlsCheer","cheerGirlGrades","includeBoysCheer","cheerBoyGrades","tickLabels","readonly","showAges","allGrades","allAges","allGradeDescs","maxTick","minTick","selectedGrades","selGrades","setDefaults","VRangeSlider","GradeRangeSlider","initValues","initSport","initCheer","sportProgramTypeId","cheerProgramTypeId","mapGrades","emitChange","girls","boys","girlCheer","boyCheer","oldVal","newVal","getEmptyProgramInformation","IntegerInput","DateInput","UpwardValidationObserver","GradeGenderEstimateSelector","defaultDateRange","setLocalData","setLocalGrades","setTestData","cheerProgram","areEstimatedValuesValid","markAsDirty","info","prepData","clone","toNumber","estimateName","nonZero","defaultFirstPracticeDate","configDate","setDatesForNewEstimate","ProgramInformationForm","Step","fetchProductCatalog","showInforWarning","programInfoClicked","programInformationIsValid","leagueUpwardProgramTypeID","bigItems","bullets","starupProducts","chosen","getEmptyStartupOrderProductInfo","getEmptyStartupOrderProductInfoList","getEmptySavedProductOfferingConfigStartupOrderProduct","setSaved","buildStartupOrderProduct","sortOffering","arr","TypeProductOfferingProductPackage","StartupOrderProductCard","chosenChanged","sortedProducts","localClone","buildProductArray","StartupOrderPicker","loadingOfferings","nextStepClicked","stepClicked","packageClick","selectedPackageForOfferings","productOfferingChanged","adjustIndex","selectedPackageForChildProducts","selectedProductOfferingId","stepLabel","isSport","kitStepClicked","validProductOfferings","selectedPackage","setSelectedProductGroup","valueLocal","firstProductOfferingId","package","findId","defaultProductOfferingIndex","findIndexByProductId","sortedProductOfferings","offeringIdx","CUSTOM","firstMatchingProduct","sel","VItem","VItemGroup","ProductGroupPicker","kit1MaxTouchedStep","kit2MaxTouchedStep","uniqueProductOfferingConfigIds","firstMatch","offeringForThisProgram","offerings","fetchChildProducts","selectedId","fetchKitProducts","componentName","isSingleProduct","isRequired","isSelectMultiple","groupIsSingleProduct","groupProducts","groupIsRequired","groupIsSelectMultiple","selectMultiple","manageButtonAction","showColorMessage","getProductSelectedColor","getColorDropDown","controlColorCard","getEmptyProductOfferingProductInfo","selectByDefault","getEmptyProductOfferingProductInfoList","getColorDescription","upwardColor","getColorDropDownItems","selectedColors","getLocal","setPackage","resetSelection","selectAllInPackage","selectFirstInPackage","poppInfo","psc","selectedColor","matchIdx","productId","selectButtonOnColorCard","deselectButtonOnColorCard","getSelectedColorsArray","detail","convertToSaveFormat","commitSavedProductDetails","arrayCommit","soloCommit","setChangedProductDetails","setSelected","ProductOfferingTypes","isCardSelected","internal","CurrencyInput","productOptionID","productPrice","NOTAVAILABLE","OPTIONAL","prodPackage","NOTSET","OptionalProductCard","buildConfigDetailArray","configDetails","configDetail","choices","programChoice","genders","genderChange","addClicked","gridError","deleteItem","SPORT","localGradeGender","setLocalGradeGender","setValues","setDefaultGrades","sortable","setRadioButtons","populateGridOfGrades","gradeCount","showGradeGender","myGender","clearGridError","getSelectedGradeList","startIndex","endIndex","invalidDups","dupes","newEntry","row","startLessThanEnd","orderError","emitData","progChoice","gridLength","buildSavedProductOfferingConfigDetail","createGradeGenderObjectArray","reassembleGradesList","loadGridFromSaved","genderParm","listOfReassembledGrades","gradesForOneRowInGrid","savedGradesForOneGender","buildGradesForGender","progType","showAddGradeWarning","VDataTable","GradeGenderCard","ProductPicker","OptionalProductPicker","GradeGenderPicker","useTestData","ADDBYGRADEGENDER","HYBRID","SELECT","ADD","CHEER","publicDescription","actionText","pkg","packages","ProductOfferingStep","ProductStep","Packages","showPackages","showStepper","savedProducts","childProducts","activeChildProducts","cleanProducts","savedProd","displayableCategories","maxAccessibleStep","ParticipantKitStepper","updateCurrentProgram","getUpwardProgramTypeByIsCheer","updateNextProgram","nextOffering","toolName","sortedLeaguePrograms","selectedProgram","optionalText","participantSubtotal","participantTotal","getIndexFromOptions","emitSelectedObject","campColorSelectionProducts","ButtonPicker","currentProductConfigProgram","showOptionalProductText","showMultiPriceWarning","showAwardWarning","hasMultiplePrograms","lockedInObj","uniform","hideMe","emptyDisplayableProduct","colorSelectionExists","isMultiPrice","modifyForMultiPrice","estimatedNumberOfCheerleaders","estimatedNumberOfPlayer","startupOrderItems","allCosts","totalOfAllStartupOrderItems","participantProducts","createDisplayableProductArray","fees","displayableFees","offs","categoriesForCurrentProgram","myFees","lic","categorySortOrder","productSortOrder","skipSimpleTotal","hasGradeGender","isOptionalApparel","starupOrderTotal","uniformTotal","simpleProductTotal","mostExpensiveGradeGenderAward","selectedProductDetailsForCurrentProgram","selectedProduct","buildDisplayableProduct","selectedOfferingForCurrentProgram","modifyForAwards","modifyForOptionalApparel","cCount","pCount","participantCount","liCost","modifiedProducts","hasMultiple","hasOptional","hasAward","setupStepperLogic","stepComponents","openAllSteps","loadedCount","maxoutProductStepperTouchedSteps","initialize","primeStepperValues","primeProductOfferingStore","isNewProgram","initializeEstimate","prodConfigId","primeStepperValuesEstimate","primeProductOfferingStoreEstimate","hasSystemFee","currIndex","prettyProgramName","newDate","oldDate","detailsCount","buildOfferingByProgram","setOfferingByProgarm","InfoStep","UpwardAccessStep","UpwardBaseFeeStep","UpwardSystemsStep","StarterItemsStep","ParticipantKitStep","RunningTotal","CurrencyWarning","stepperLogic","offeringConfigId","SetupStepperLeague","InfoModal","isSavingEstimate","isStartingNewLeague","canBeSaved","lockEstimator","saveEstimate","routeToCreateLeague","saveResult","initializer","beginCreatingFromEstimate","loadComplete","beforeResolve","redirect","next","tabs","VerticalTabs","routeId","baseRoute","archivedRoute","useConnectSetup","beforeRouteLeave","initialLoadDone","nextRoute","beforeSave","afterUpdateExisting","afterSaveNew","storeConnect","continueNext","onConnectChange","run","asyncFn","updateExistingConnect","saveNewConnect","ResourceFileType","ResourceFileTypeCategory","showSave","Alert","SaveContinueButton","alertTypes","currentConnect","HorizontalTabs","AlertCloak","isDisabled","idExpression","urIDExpression","OrdersIndex","OrderLeague","Awards","Returns","ShippingTimelines","Exchanges","OrderHistory","OrderFrame","OrderDetailPage","children","classicView","currentRole","leagueListItem","marketingResources","currentRoleResources","featuredResources","resourceID","leagueTypeAbbreviation","allResources","resources","taxonomyFilterOptions","taxonomyTitleIndex","searchKeyword","doSearch","showFilter","searchDesciption","downloadResource","shortDescriptionContent","postResourceUsage","resourceItem","pdf","zip","jpg","png","ppt","keynote","mp4","youtube","unknown","resourceFileType","image","archive","slides","video","roleDescription","userEmail","fileType","getResourceFileType","resourceUrl","getResourceFileTypeIcon","resourceTitle","userID","pageAccessedFrom","resourceUsageClient","mediaUrl","allCategoriesLabel","ResourceTile","committedTaxonomyTitle","committedSearchKeyword","isAllCategories","allText","displayedResources","taxonomyTitles","taxonomies","leagueDirectoryTaxonomy","taxonomyTitle","taxonomiesToDisplay","asArray","flat","resourceTypes","selectedResourceTypes","categoryCount","categorySelected","toggleCategory","ToggleSwitchInput","DropDownMultiSelect","selectedCategories","resourceCategories","myResources","resourceType","getResourceFileTypeCategory","localeCompare","word","w","fileTypeCategories","fileTypeCategory","committedFileTypeCategory","resourcesWithType","hasSearchCriteria","RoleResources","AdCommissionerResources","ResourceList","storeleague","storeCamp","storeClinic","resourcesViewTypeId","resourcesViewTypeDefault","resourcesViewTypeCurrent","isAdCommissioner","resourcesViewType","myResourcesViewType","directorId","directorRole","system","isGameRole","udfDefinitions","allowInOPR","allowInOVR","cheerDirectorId","cheerDirectorRole","programRoles","roleId","currentRoleDesc","tabData","roleDesc","getResourceTabRoute","fetchProgram","fetchResources","cheerProgramTypeID","productYear","volunteerResources","getVolunteerResources","myMarketingResources","getMarketingResources","marketing","dateFilter","devotionTrackFilter","featuredItem","expirationDate","devotionTrack","typeDevotionTrackID","namePrefix","Resources","canChangeName","isClean","onSubmit","sportContact","onModalStateChange","isNewMode","editingValue","hideModal","onClickNew","onClick","SmallCard","EditIcon","refreshData","clearSelection","partnersClient","retrieveAccountContacts","selectedContact","trainedContact","contactsToDisplay","internalContact","addPhoneNumber","removePhoneNumber","onEmailConfirm","confirmEmail","PhoneInput","YesNoInput","PreferredContactTimeSelect","PreferredContactMethodSelect","PreferredContactDaySelect","PartnerRoleTypeSelect","getEmptyContact","createIndividualPhoneNumber","number","hasEmailMismatch","emailServiceClient","correctedEmail","phoneType","ContactPicker","ContactForm","didSubmit","editingValueAsContactInfo","onModalChange","ContactPickerAndEditor","SetupCompleteConfirmation","newId","afterSaveNewMethod","afterUpdateExistingMethod","ConnectIndex","Setup","useClinicSetup","onClinicChange","updateExistingClinic","saveNewClinic","currentClinic","ClinicIndex","isNoStanding","typeLeagueScoringID","leagueScoring","LeagueScoringTypes","NOSTANDINGS","WIN_LOSS","WIN_LOSS_SCORING","UpwId","divisionsClient","hasScoringDiv","fullPath","selectedProgramId","onProgramChanged","onDeleteDivision","onEditDivision","addNew","divisionsWithExclusions","onEditCanceled","onDivisionSaved","programIsByAge","showAddDivisionModal","showImportModal","previousDivisions","onImportResponse","internalSelectedProgram","editClicked","deleteClicked","showDeleteConfirmation","onDeleteConfirmationResponse","TypeProgramTab","ConfirmationModal","getEmptyDivision","grid","genderLabel","gradeLabel","countLabel","divisionObject","gameCount","practiceLength","gameLength","typeGameFormatID","typePracticePlanID","showStandingsTeamPage","lastPracticeDate","overrideNumberOfSegments","isInCheerSchedulerMapping","exclusionDates","submit","programList","internalDivision","validGenders","practicePlanLabel","validGradeTypeIDs","setGrades","clickCopyExclusions","isPracticeNight","hasPracticeEvent","minCalendarDate","maxCalendarDate","scrollToDate","dates","datesSorted","removePractices","shortDateFormat","divisionPracticeEvents","showCopyExclusionsModal","confirmCopyExclusions","divisionToCopy","allowedDateMethod","dateHasEventMethod","toISOString","internalValueAsString","intValue","VDatePicker","gameFormatList","retrieveGameFormats","gameFormats","practicePlanList","retrievePracticePlans","practicePlans","cheerProgramTypeDescription","getLeagueScoringTypes","NULL_DATE","isNullDate","SERVER_DATE_FORMAT","isSaving","validGradesForGender","isNewDivision","divisionEvents","hasPracticesScheduled","setFieldsForNewDivision","excludeDate","saveNew","saveExisting","formatGradesForSave","djs","practiceEvent","PRACTICES","initGrades","initDates","initEvents","divisionGrades","facilitiesClient","minGrade","maxGrade","substr","opportunityTypeDescription","eitherCheerGradeMin","maleCheerGradeMin","femaleCheerGradeMin","eitherGradeMin","maleGradeMin","femaleGradeMin","eitherCheerGradeMax","maleCheerGradeMax","femaleCheerGradeMax","eitherGradeMax","maleGradeMax","femaleGradeMax","DatesInput","GenderSelect","GameFormatSelect","PracticePlanSelect","GradeRangeDropdowns","LeagueScoringSelect","onYesNoResponse","confirmation","gradeGenderList","gradesGroupedByGender","femaleCount","maleCount","ProgramId","loadList","retrieveGradeGenderList","gradeDescription","DivisionGrid","DivisionForm","DivisionGradeGenderList","DivisionImportModal","allDivisions","cheerProgamId","sportProgramId","loadPrograms","loadDivisions","divisionsFilteredByProgram","loadPreviousDivisions","retrieveAllPreviousLeagueDivisions","divs","divisionCount","newDivision","importAllDivisions","newDiv","refreshingAll","onDivisionChanged","showSwapCoachAssignment","teamsCount","templateDivision","toggleHeader","updateTeamList","hasDivisions","getEmptyLeagueDivisionInfo","hasGameSchedulerPreferences","maxRoundNumber","orderedPlayerCount","allowTeamColorSelection","IsEmptyLeagueDivisionInfo","CoachConflictTypeEnum","fetchItems","retrieveByProgram","emptyLeague","divisionInCurrentList","DivisionSelect","emitValues","headerValues","selectedTypeProgramID","showHeader","managerReady","refreshing","coachListSwitch","searchTerm","isOnlyMatchingCoaches","setIsOnlyMatchingCoaches","coachListOptions","coachesToShow","selectCoach","coachConflicts","teamOptions","teamSwitch","teamsChecked","toggleTeam","sortTeamBy","teamsOnField","selectedCoach","addCoach","getPayload","accepting","onDrop","coach","coachToTeamNumber","coachOrder","coachLinkID","coachLinkFirstName","coachLinkLastName","teamCount","coachNights","boyString","girlString","selectedCoachID","Container","Draggable","CoachListElement","movedEvent","removedIndex","addedIndex","copyList","coachId","teamsCoachedCount","clearSelectedCoach","isCalendarMode","coachConflictOrder","coachConflict","conflict","teamsCoached","exceptionIconClass","conflictDescription","coachLink","linkTeamsCoached","isCoachLinkConflict","formatAppt","allConflictType","appointmentStart","formatTime","appointmentEnd","showAllConflicts","typeCoachConflictID","CoachLinkNotHonored","PracticeDoubleBooked","GameDoubleBooked","useParticipants","refreshParticipants","TapeDownReasonEnum","LeagueCoachProgramInfoFLATToTeamCoachInfo","LeaguePlayerInfoToTeamPlayerInfo","evaluationScore","athleticScore","draftNumber","rosterRanking","coachAssignedJerseyNumber","extraScore","manualAssignment","positionScore","typeTapeDownReasonID","draftExceptions","useTeamsRO","operationProgress","teamStructureChanging","unassignDivisionParticipants","unassignLocked","lockedPlayers","unlocked","playerIndividualID","refreshTeams","addCoachToTeam","hasHeadCoach","addCoachToLocalState","teamList","teamIdx","newteam","updateTeam","addParticipantToTeam","player","removeCoach","coachID","removeLocalCoach","newTeam","changeHeadCoach","clearOperationProgress","togglePlayerLock","newState","LOCKED_TO_TEAM","togglePlayerPosition","posType","useTeams","lastDivisionID","lastLeagueID","lastProgramID","manager","isHead","addPlayerToTeam","removeCoachFromTeam","removePlayerFromTeam","makeCoachHeadCoach","newLockState","updatePlayerOnTeam","newPositionState","unassignAllDivisionParticipants","useCoaches","refreshCoaches","volunteersClient","getCoachProgramListFLAT","refreshCoachesById","isOnlyMatching","incrementCoachTeamCount","coachid","increment","useFacilities","refreshFacilities","stateRef","participantOps","teamOps","coachOps","facilityOps","coachToTeams","participantsInTeams","teamsOffField","tapeDownReasons","working","currentView","coachRefreshing","participantsRefreshing","assignedParticipantSorting","useManagerLogic","unassignDivisionParticipant","refresh","retrieveTapeDownReasons","setDivisionAndRefresh","setCurrentView","view","setTeamsOnField","assignedParticipantCount","cnt","participantsLoading","teamsProgress","currentProgramID","draftedParticipantCount","assignedParticipantSort","persistedPreferences","teamColumns","sortBy","teamSortBy","teamListSortBy","coachTeamListSortBy","preferenceState","filterTarget","hideLocked","heightRange","scoreRange","isFiltering","persistedConflictPreferences","typeDraftExceptionID","persistedCoachConflictPreferences","userPreferences","teamMgtPreferenceKey","teamMgConflictPreferencesKey","teamMgCoachConflictPreferencesKey","storedPreferences","storedConflictPreferences","storedCoachConflictPreferences","preferences","conflictState","coachConflictState","resetFilters","setScoreRange","getScoreMinMax","setHeightRange","getHeightMinMax","setFilterTarget","setGender","setGradeRange","setHideLocked","setColumns","columnID","setTeamColumns","setConflictFilters","filterID","setCoachConflictFilters","setShowHeader","setSort","setTeamSort","setTeamListSort","setCoachTeamListSort","range","setIsByAge","iba","col","teamCol","getShowHeader","getColumns","getTeamColumns","getSort","getTeamSort","getTeamListSort","getCoachTeamListSort","getHideLocked","getIsByAge","getGender","getFilterTarget","getHeightRange","getScoreRange","getGradeRange","getConflictFilters","getCoachConflictFilters","getIsFilteringTeams","filtersDirty","hideLockedClean","gradeFilterClean","getIsFilteringUnassigned","heightFilterClean","usingHeight","usingHideLock","scoreFilterClean","usingScore","lastIndex","genderFilterClean","usingPosition","currentFilters","isFinite","CoachConflictListElement","conflicts","applyFilters","filteredList","groupedByCoachList","groupedList","dictConflictsByType","newList","typeKey","conflictsByType","matchingConflicts","filterList","teamOrder","left","showLeft","toggleVisible","right","showRight","fullLabel","showLabel","hideLabel","ShowToggle","useTopOffset","showToggles","aboveTheScroll","windowHeight","footerTop","top","dimensions","scrollArea","getElementsByClassName","footer","myTop","getBoundingClientRect","height","innerHeight","side","addEventListener","removeEventListener","styleScrollHeight","addSelectedCoach","teamPageUrl","evalScore","yearsExperienceAvg","practiceInfo","acceptingCoaches","droppingCoaches","getEmptyDivisionTeamInfo","headCoachName","currentPracticeNumber","currentGameID","currentGameOffenseFirst","overrideTypeGameFormatID","hideTeamPageRoster","hideCoachEmailOnTeamPage","hideCoachPhoneOnTeamPage","hideAssistantCoachEmailOnTeamPage","hideAssistantCoachPhoneOnTeamPage","hideScheduleOnTeamPage","hidePracticeScheduleOnTeamPage","ruleLevel","hideHeadCoachLabel","getCoachNights","getTotalTeamHeight","getTotalTeamEvalScore","getTotalYearsExperience","useTeamCard","dayName","getDay","time2","score","showAssignCoach","finally","sortName","isDesc","sortFirstName","sortScore","sortTeamName","sortTeamAvgEval","teamAvgEvalScore","sortExperience","teamAvgYearsExperience","sortFunctions","name_asc","name_desc","firstname_asc","firstname_desc","score_asc","score_desc","grade_asc","grade_desc","team_name_asc","team_name_desc","avg_eval_asc","avg_eval_desc","avg_years_asc","avg_years_desc","resolvePromise","okLabel","showOk","showCancel","rejectPromise","settings","CoachTeamCard","ModalConfirmation","approvedCoaches","userPrefs","innerCoaches","sorter","ordersort","addedTeam","displacedTeam","hasTeams","newTeams","addTeams","removeTeams","teamsCopy","propCopy","getApprovedCoach","addLinkedCoachPrompt","shouldPrompt","confirm","addLinkedCoachConfirm","yes","linked","optionList","hideScore","TeamCardField","CoachList","CoachConflictList","CoachConflictFilter","SideBySideScroll","TeamToggle","TeamListSort","coachListChildRef","coachesInDivision","searchTermValue","refreshConflicts","retrieveCoachConflicts","coachList","swapAction","filteredTeamList","selectedTeam","swapCoachList","teamGridColumns","handleRowSelected","saveButtonText","swapCoach","teamNames","coachName","selectedSwapCoach","getEmptyTeamCoachInfo","headCoachTemplate","saveAndClose","getCoachesFromTeams","getSwapCoachList","selectedCoachTeams","cl","ct","getFilteredTeamList","canSave","moveCoachToTeam","swapTeamCoaches","previousTeamId","teamId1","teamId2","getUpwardLeagueId","vue","DisplayType","OverlapMode","CoachManager","DivisionHeader","SwapCoachAssignment","allLeagueDivisions","showHeaders","hdrVals","setTeamsCount","divID","previousDivisionID","previousTypeProgramID","teamSquadText","doShowCreateTeamModal","doShowAutoGenerationModal","showCreateTeamModal","colorDDLBLabel","focusTeamNameInput","programHasTeamColors","createTeam","availableColors","hideCreateTeamModal","isTeamInEditMode","teamColorDesc","calculateTeamAverage","editTeam","onDeleteClick","teamSquadTextLower","currentTeam","showAutoGenerationModal","decimalDigits","lowerCaseTeamSquadText","guidelineInfo","registrantCount","minimumTeamCount","maximumTeamCount","suggestedTeamCount","teamCategories","generationData","hideAutoGenerationModal","createRecommendedTeams","ToggleSlot","getEmptyGenerationData","typeTeamCategoryID","prefix","removeDupes","generateTeams","getTeamGenerationGuidelines","Accordion","AccordionItem","AutoCreateTeamsModal","numberToFixed","teamsInEditMode","productItems","productWithTeamColors","onSelectedTypeProgramIDChanged","isColorBasedOnTeamAssignment","collectColorInfoWithTeam","isTeamColor","getDivisionTeam","divisionTeam","saved","getTeamTemplate","teamCreated","deleteTeam","totalScore","runningTotal","hasFacilites","onLoadingChange","divisionLink","divisionSelect","internalDivisionID","teamsList","clickAddPractice","clickClearPractices","teamLink","showUnscheduledOnly","weekdays","practiceDuration","schedule","scheduleTeamsList","coachConflictTypeEnum","eventDropped","eventMoved","eventClick","facilitiesToFilter","facilityFilterUpdated","facilitiesAsTabs","currentFacility","eventFacilities","currentPractice","practiceSaving","confirmPractice","practiceModalShowing","confirmClearPracticesShowing","confirmClearPractices","teamsListAndAllTeams","teamToClear","alertType","showPracticesCleared","showDeleteConfirmed","calendarListOptions","calendarListSwitch","lMatchups","groupName","matchupDropped","weeks","weekId","lWeekdays","lFirstTime","lLastTime","lEvents","CUSTOM_DAILY","intervalCount","intervalMinutes","intervalFormat","intervalStyle","maxDays","getEventColor","getEventTextColor","startDrag","mouseMove","endDrag","mouseMoveNative","cancelDrag","weekday","allowed","timed","eventSummary","initialDate","prev","isBetween","showToday","lDaysToShow","startTimes","lStartTime","endTimes","lEndTime","CheckboxGroupInput","daysToShow","showTime","padStart","createWeeks","minEventDate","sunday","previousSunday","saturday","getDateById","roundTime","roundTo","down","roundDownTime","rounded","CalendarNav","CalendarOptions","CalendarableEvents","overlapMode","COLUMN","overlapThreshold","firstDay","firstTime","lastTime","defaultEventDuration","selectedWeek","require","matchups","coachConflictType","allowableDays","newCoachConflicts","totalIntervalMinutes","diff","ceil","second","textColor","dragEvent","eventDuration","startXY","currentXY","isAllowed","nativeEvent","clientX","clientY","mouseHasMoved","tms","newStart","newEnd","dayOfWeek","minPixels","abs","createCalendarEvent","weekNumber","VCalendar","tab","activeTab","tabClicked","handleValueChange","filtersToShow","internalFilters","setFiltersToShow","selectedFilters","AvailabilityToScheduleBlocks","timeStart","timeEnd","practiceNoun","facilityList","futureNoun","repeat","enableLastDay","lastDay","changeType","shouldSubmitShow","deleted","getEmptyPracticeModalInfoType","lastDate","updateSeason","duration","eventType","storeLeague","unwatch","isNewPractice","showPracticeExclusionsForNew","showPracticeExclusions","dayObj","myDay","practiceValue","startTimeChanged","dayjs","undefinedIsZero","nights","reuired","showCoaches","eventBgColor","eventTextColor","inactiveBgColor","inactiveTextColor","eventInactiveBgColor","eventInactiveTextColor","WEEK_IN_SECONDS","START_DAY","divisionLoading","loadingTeams","currentSelectedFacility","week","practiceID","dateList","lastDateOnSchedule","twelveWeeksLater","defaultStartDt","currentFacilityID","eventSelected","eventid2id","teamPractices","makeNewPractice","divisionTeams","refreshEvents","SQUADS","meetsDivisionCriteria","endEpoch","startEpoch","ev","validDayOfWeek","practiceId","newelement","deleteFuturePractices","modalInfo","evtStart","eventsToUpdate","eventsToDelete","activeStart","eodLastDay","basicPractice","z","fetchAllDivisions","refreshLeagues","retrieveFacilities","practiceDivisionList","$store","direct","divisionList","practicedate","gamedate","millisecond","meetsFacilityCriteria","id2eventid","Getter","Mutation","Action","HorizontalTabFilter","Calendar","PracticeModal","DeleteIcon","AddIcon","ScheduleDragItem","PracticeScheduler","clearFilter","showFilters","reportCount","showReports","getTeamSquadText","hasPlayersAssigned","onPlayersDrafted","showDraftSummaryReport","currentTab","toggled","showDraftChoice","hideDraftChoice","sideBySideStateChange","unassignedOptions","unassignedSwitch","participantsNotAssigned","selectPlayer","playerConflicts","showingTeamsOnly","selectedPlayer","addPlayer","participantOrder","showScore","showPositionScore","positionScoreLabel","typeGradeIDValue","sportUsesHeight","showHeight","carPoolLink","selectedPlayerID","actualCarpoolLinkLastName","actualCarpoolLinkFirstName","actualCoachLinkLastName","actualCoachLinkFirstName","pendingCoachLinkLastName","pendingCoachLinkFirstName","practiceNightExclusions","positionType","showExperience","showGrade","showGender","showExclude","showCarpool","showCoach","showNotes","showChurch","ParticipantListElement","clearSelectedPlayer","originator","popupAdminNoteModal","conflictOrder","adminNoteConflict","isAdminNoteModalVisible","saveAdminNote","closeAdminNote","udf","udfid","udfValue","showAdminNoteModal","adminNotes","scrollToTeam","draftExceptionDescription","teamPracticeNights","loadSiblingInfo","siblings","carpoolLinkFirstName","carpoolLinkLastName","manuallyAssigned","lockedToTeam","playerIsLockedToTeam","showCarpoolLink","showPracticeNights","showSiblingInfoLink","showUDFs","udfsWithValues","selector","nextTick","scrollIntoView","behavior","playerDiv","className","orgClassName","retrieveSiblingLinks","siblingList","sibling","getSiblingTeamInfo","retrieveTeamInfo","teamsInfo","assignmentInfo","practiceNightFormatter","internalVisibleRef","adminNote","visible","PlayerConflictListElement","PlayerAdminNoteEditModal","progress","showConfirmation","confirmationResponse","columnList","columnsList","exists","gridClass","addParticipant","addSelectedCoachOrPlayer","heightAvg","isCheerSquad","showPosition","showingPosition","positionLabel","showingHeight","getParticipantPayload","acceptingParticipants","droppingParticipants","positionToggle","playerYearsExperienceByTeamPlayer","playerExclusionByTeamPlayer","locked","TeamPlayerInfoToLeaguePlayerInfo","pendingCoachLinkIndividualID","registrationFeeExpectedToPay","amountExpectedToPay","amountPaid","registrationCompletionInformation","hasBrokenCarpoolLink","hasBrokenCoachLink","actualCoachLinkIndividualID","actualCarpoolLinkIndividualID","participantFilters","genderPasses","heightPasses","scorePasses","unassignedParticipantFilters","assignedParticipantFilter","passesLocked","passesGrade","tmTabType","filteredParticipants","boysCount","girlsCount","boysString","girlsString","trr","verbiageTemplate","linkedToPlayer","fp","pp","playerExclusionByLeaguePlayer","useShort","exclusion","teamParticipant","playerId","showAssignCoachOrPlayer","TeamCard","selectedColumns","sortHeight","sortGender","exp_asc","exp_desc","gender_asc","gender_desc","height_asc","height_desc","TabMenu","ParticipantList","PlayerConflictList","UnassignDivisionParticipants","ColumnSelector","TeamColumnSelector","ParticipantSort","PlayerConflictFilter","DraftOptionsInfo","TeamSort","sideBySide","PARTICIPANTS","resize","userWantsManualDraft","sideBySideState","playerOptions","coachOptions","lastPlayerOption","lastCoachOption","playerListChildRef","isFilteringUnassigned","notInTeam","inProgram","inGender","inGrade","filtering","draftedCount","setShowDraftChoice","retrievePlayerConflicts","ParticipantName","TeamName","Note","reportResults","internalTitle","downloadPDF","html2pdf","doc","filename","margin","html2canvas","allowTaint","scale","doc1","slotRef","slotref","getCoachLinksBroken","DivisionID","TypeProgramID","getCoachLinksOverage","getCarPoolLinks","getEvaluationsMissing","getReport","reportName","saveAs","jsonData","saveType","JSONData","responseType","getDraftLog","getEvaluationData","createBlankReport","showAll","filterByDate","filterByGrade","noEvalScoresOnly","AccountNumber","ShowAll","FilterByDate","FilterByGrade","StartDate","EndDate","StartGrade","EndGrade","NoEvalScoresOnly","CreateBlankReport","getEvaluationActivityData","StartGradeID","EndGradeID","getReportTemplate","templateID","getEvaluationQuestionsData","getEvaluationSizeData","getCoachRoster","TeamID","getCoachRosterByTeamRosterID","UpwardTeamID","getCoachSubReport","getMailingLabels","includeParticipants","includeVolunteers","IncludeParticipants","IncludeVolunteers","getGameSchedule","PreserveColumnNames","getGameScheduleByTeam","getPracticeSchedule","getSiblingsReport","getParticipantIntroReport","getPaymentReportData","PaymentStatus","getShippedCompletedOrdersData","statusBeginDate","statusEndDate","StatusBeginDate","StatusEndDate","OrderType","OrderStatus","PageSize","getMinistryImpactData","compareType","getOutstandingBalanceReportData","getRefereeSchedule","ReportModal","doShowDraftResultsModal","reportsClient","targets","RangeSlider","summary","brokenCoachLinkCount","coachLinksExceededCount","brokenCarpoolLinkCount","missingEvalScoresCount","seeBrokenCoachLink","seeBrokenCarpoolLink","seeMissingEvaluations","seeCoachLinkStatus","reportCoachLinks","reportCarpoolLinks","reportEvaluationsMissing","reportCoachOverage","getEmptyLeagueDivisionContactInfo","cityStateZip","latitude","longitude","getEmptyLeagueDivisionExtendedInfo","useReports","fetchAndSetBrokenCarpoolLinks","retrieveSummaryInfo","DivisionName","RequestedCoachName","report","internalReport","CoachName","MaleGradesToCoach","FemaleGradesToCoach","kid","Grade","selectedID","ParticipantID","saveParticipant","PlayerEvaluationEditGrid","internalLeagueID","parent","refreshParticipant","evaluations","BatchEval","participantLoaded","RequestedParticipantName","CoachOverageReport","BrokenCoachLinkReport","EvaluationsMissingReport","BrokenCarpoolLinkReport","reports","readyToDraft","brokenLinksCount","optionsSelected","overrideBrokenLinkWarning","goToParticipants","draftParticipants","practiceNightsFirst","draftingMode","drafting","AutoTeamPlayerAssignmentChoices","overrideWarning","runPlayerDraft","fetchAndSetBrokenLinks","TeamManager","ReportFooter","FilterModal","AutoTeamPlayerAssignmentModal","DraftSummaryReportModal","lower","VBadge","onIncompleteGameChanged","onTeamRoundChanged","selectedDivisionId","selectedTeamId","selectedRoundId","incompleteGamesOnly","currentIncrementID","onGameScoreChanged","divisionStandingList","divisionStandings","wpctA","teamWins","teamTies","teamLosses","wpctB","standings","DivisionId","IncrementId","retrieveStandingByDivision","divisionNameEx","divisionGameList","columnsWinLoss","columnsWinLossScoring","gameDivisionList","roundList","currentGame","currentDivisionRoundMax","currentDivisionLeagueScoringID","confirmGame","deleteGame","gameModalShowing","editGameScheduleMode","rounds","roundID","homeTeam","swap","awayTeam","tournamentGame","gameResultsEnabled","divisionWithScoring","divisionWinLoss","winningteams","maxTime","approvedRefs","referees","gameValue","chips","deletableChips","dense","textProperty","VAutocomplete","ComboBoxInput","editScores","startTimeGuard","random","tiesItem","divisionGameType","newTypeDivisionGameID","setTimeInAvailabilityWindow","gmLength","gameTime","home","away","refereeList","listCopy","defaultTimes","fetchReferees","divisionGames","winningTeamName","prettyStartDate","prettyStartTime","prettyEndDate","prettyEndTime","prettyTimeRange","gameName","gameResult","GameModal","TeamId","RoundId","IncompleteGamesOnly","currentGameDivisionGameID","internalGames","selectedGame","isWinLossDivision","isWinLossScoringDivision","emitValuesGameScores","selectedTeamID","selectedRoundID","localGame","localTeams","localLeague","localDivision","localFacilities","roundlimit","retrieveTeams","retrieveGames","refreshGames","formatGameResults","getPrettyTime","evtEnd","startJS","endJS","startOf","gamesSort","dateStartA","dateStartB","same","facilityNameA","facilityNameB","newGames","leagueStoreName","volunteerStoreName","facilitiesStoreName","divisionsStoreName","selectedRound","filterByWeek","myTeams","emitValuesTeamWeek","emitValuesIncompleteGames","DivisionGameList","DivisionStandingList","DivisionsAndTeams","Divisions","Teams","Coaches","Participants","TeamManagement","StandingsAndScores","resolver","showFacilityImport","getFacilities","rowSelected","rowDoubleClick","editItem","renderGameDayList","renderPracticeDayList","confirmDeleteFacility","cancelDeleteFacility","showConfirmDelete","showImport","importFacility","canSelect","selectForImport","weekDaysList","renderGameDays","avl","renderPracticeDays","selectedFacility","facilties","prettyGameDays","prettyPracticeDays","DataTable","selectedFacilityId","isDeleting","setCurrentFacility","leagueFacility","isShared","street","renderGroupDetails","GroupBox","ConfirmDeleteModal","FacilityImport","EditBtn","DeleteBtn","saveItem","cancelEdit","localInEditItem","editPracticeDays","getPracticeDays","editGameDays","getGameDays","getGroupDetails","inputValueChanged","selectGroup","practiceDaysUpdated","gameDaysUpdated","groupSelectionChanged","disableds","ModalMultiSelect","disabledDays","currentDays","programDays","sd","myPracticeNights","pn","night","myCurrentDays","loadGroups","facilityGroups","selectedGroup","getEmptyLeagueFacility","loaded","updateView","inEditItem","childFacilities","parseGroupDetails","getDays","sortDays","localDays","monday","tuesday","wednesday","thursday","friday","day1","day2","$refs","availablePracticeDays","gameDays","availableGameDays","formIsValid","validData","facilityService","$nextTick","srcElement","AvailablePracticeDays","AvailableGameDays","GroupList","FacilityList","FacilityEditor","isInEditOrCreateMode","facilitiesLink","programIsCheer","couldBeCheer","autoSchedule","clickAddGame","clickPairGames","clearDivisionGames","viewtype","gameDuration","unscheduledData","calendarWeekNumber","currentRange","totalUnscheduled","schedulingStatus","gridSchedule","dblClickGrid","showConfirmPairings","pairingsConfirmed","showPairingsConfirmed","deleteConfirmed","clearGameWarning","clearGameConfirmed","autoscheduleWarning","autoscheduleConfirmed","hasNoSchedule","unscheduledMatchupCount","unscheduled","scheduleSort","getOptionKey","dormant","searchprefix","schedules","idTODelete","newevent","move","divisionGameCount","autoScheduleRoute","gameIds","makeNewGame","defaultStart","idToFind","elementIdx","currentLengthMs","lengthMinutes","prettyDate","prettyTime","meetsRoundCriteria","ToggleLinks","GameScheduleInfo","ScheduleSquadItem","gamepath","isReadyToSchedule","clickSchedule","divisionsList","continueScheduling","showTimeWarning","getEmptyDivisionGameSchedulerPreference","typeScheduleAssignmentID","typeOddTeamCountSchedulingID","gamesPerWeek","facilityPreferences","byeGamesStartAfterRoundNumber","byeGamesPerTeam","isValidDivisionGameSchedulerPreference","divisionSelectList","divisionsWithSettings","clickCopySettings","updateSettings","showApplyAllSettingsConfirmationModal","confirmApplyAllSettings","showCopySettingsModal","confirmCopySettings","facilityOptions","internalFacilityOptions","setInactivePayload","moveToInactive","assignFacility","facilityWarning","setActivePayload","moveToActive","subScheduleForFacility","superScheduleForFacility","isTopPriority","isLowestPriority","editFacilityAvailability","unassignFacility","moveFacilityUp","moveFacilityDown","facilityAssignedAvailabilityUnderEdit","facilityAvailabilityUnderEdit","updateFacilityAvailability","areDivisionPreferencesShowing","removeClicked","upClicked","downClicked","isCollapsed","av","dayIDToName","millisecondsToTimeString","assigned","dayNameToID","dayid","FacilityAvailabilityByDay","superSchedule","subSchedule","daymap","superDay","subDay","available","DivisionGameSchedulerFacilityToScheduleBlocks","toggleAssigned","updateTimeStart","updateTimeEnd","areTimesValid","internalSubSchedule","updateSchedule","facilityAvailabilityByDay","PRIORITY_OFFSET","facilityIDUnderEdit","typeRoundNumberModeID","faclityPriority","facilityForID","dropResult","activeFacilityList","toggleFacilityWarning","facilityCopy","maxPriority","createFacilityOptions","dgsf","inactiveFacilityList","copyFacilities","facilityIDsInOrder","FacilitySummaryBox","DivisionDayPreferencesModal","detectChangeAndFire","oddTeamPreference","assignment","calculatedSettings","FacilityDropper","SchedulerSettingsPanel","calculatedValue","settingsByDivision","gamesClient","getPreferences","putDivisionPreference","loadDivisionPreferences","savedSettings","saveSettings","savePreferences","areSettingsValid","existingSettings","saveBackSettings","divisionsNeedingSettings","settingsValid","DivisionSettings","DivisionStatusEnum","schedulingStore","excludedDates","dateString","getUTCFullYear","getUTCMonth","getUTCDate","hasFacilityTimesOutsideRange","scheduleSettings","divisionStatusList","ds","clearExistingSchedule","shouldOverwrite","createDefaultPairings","scheduledGames","generateGameSchedule","settingToRemoveIndex","divisionInfo","divisionPreference","shouldSkip","PENDING","DivisionPreferences","FacilityTimeWarningModal","LeagueInfoMoreThanOneProgram","hasGames","hasAppointments","STRATEGY_DIVISION","strategy","STRATEGY_RANDOM","offsetList","offset","mapping","confirmCheerScheduledShowing","showScheduleConfirm","scheduleCheerConfirmed","sportDivisions","sportDivision","cheerDivision","isMapping","toggleMapping","getEmptyDivisionSquadMap","getMappingIndex","sportDivisionID","cheerDivisionID","isConnected","mappingIndex","cheerDivisions","sportProgramID","cheerProgramID","internalSquadMapping","appointmentClient","squadMapping","$watch","squadMappingUpdated","clearSchedule","cheerTypeProgramID","sportTypeProgramID","CheerSchedulingGrid","auto","clickClearAppointments","unscheduledTeams","doubleClickGrid","currentAppointment","schedulingType","confirmAppointment","deleteAppointment","schedulingModalShowing","confirmClearAppointmentsShowing","confirmClearAppointments","unscheduledTeamCount","CSGAI2PracticeModal","makeNewAppointment","newgames","apptlength","activestart","basicAppointmentInfo","refreshAppointments","scheduledSquads","tname","meetsTypeCriteria","teamFromID","facilityFromID","divisionFromID","SquadScheduleInfo","clickAddSpecialEvent","calendarStartDate","dateClick","moreClick","leagueDivisionList","currentSpecialEvent","confirmSpecialEvent","deleteSpecialEvent","showMoreTitle","showMoreModalShowing","showMoreHeaders","showMoreSchedule","prevMonth","nextMonth","calendarTitle","MONTH","monthChanged","getEventHover","getEventTime","evt","thisCalendar","eventLabel","programDesc","internalSpecialEvent","allDayNoTime","divisionListForProgram","teamListForDivision","isNewSpecialEvent","genericEventBgColor","genericEventTextColor","teamEventBgColor","teamEventTextColor","divisionEventBgColor","divisionEventTextColor","programEventBgColor","programEventTextColor","getEmptyLeagueSpecialEvent","eventDescription","getLSEfromLSEInfo","lseInfo","makeNewSpecialEvent","startDayJS","refreshSpecialEvents","evalDate","sed","SpecialEventCalendar","SpecialEventModal","Facilities","Squads","selectedReport","openNode","evaluationText","scheduleText","participantText","financialText","communicationText","excelText","excelReports","evaluationReports","scheduleReports","participantReports","churchAffiliationReports","volunteerReports","financialReports","communicationReports","webReports","dynamicReports","setOpenNode","reportPath","reportParent","currentReportName","displayProgramPath","isParticipant","currentReportType","isVolunteer","exportGrid","gridOptions","rowData","resizable","onReady","AgGridVue","InfoIcon","api","currentReport","currentSelectedReportType","stringSorter","showPrograms","defaultColDefs","unSortIcon","columnDefs","FirstName","sortingOrder","comparator","LastName","IndividualId","sortModel","colId","churchAffiliation","Guardian1FirstName","Guardian1LastName","headerName","commissioners","StartTimeSortOrder","reportType","currentReportPath","showParticipantVolunteerTabs","reportTypeParams","ReportType","getColumnDefs","getDefaultColDefs","loadReport","exportDataAsCsv","dataSource","fieldNames","defColDefs","setColumnDefs","setSortModel","updateParams","downloadCsv","removeDeclined","removeAccepted","emailAllSelected","inviteAllSelected","spinner","inviteStatusDisplay","doShowAddWaitlistModal","internalReportData","rec","ID","sendable","UpwardWaitListStatusID","ChildFirstName","ChildLastName","ParentFullName","fmtPhone","Phone","maxLen","idUpdating","fullStatus","UpwardWaitListStatusDescription","InvitationExpire","InvitationDeclined","InvitationSent","waitlistDate","WaitListDate","actionClicked","removeTargetDesc","expirationSelected","showExpirationModal","bulkExpirationSelected","showBulkExpirationModal","onWaitlistSubmitted","showAddWaitlistModal","isConfirming","confirmRemove","selectedEmails","emailSendCompleted","showEmailComposerModal","showEmailSentConfirmation","closeEmailSentConfirmation","viewMessageHistory","terms","refund","typePaymentMethodID","authorizationCode","creditCardLastFour","upwid","invitationList","inviteId","invite","showSuccess","formData","genderList","gradesList","contactPhone","childFirstName","childLastName","isFormValid","getEmptyRegistrationCapacityWaitList","parentFullName","childMiddleInitial","invitationCode","invitationSent","invitationExpire","invitationDeclined","InviteStatus","WaitlistActionsEnum","PhoneInputMask","showError","showDuplicateError","observerRef","myLeague","registrationCapacityWaitList","addToWaitlist","isDuplicateError","RemoveEnum","playerName","send","expires","SEND","CANCEL","REMOVE","WAITING","canRemove","INVITATIONSENT","canSend","canCancel","canResend","INVITATIONEXPIRED","hasCredits","HtmlEditor","form","isSending","sendCommunicationOn","minutesToAdd","recipientCriteria","providerInfo","emailMaxCredits","emailCredits","isEmailAllowed","communicationsClient","WaitlistActions","WaitlistExpirationModal","ActionProgress","SendEmailModal","WaitlistFormModal","reportData","leagueNumber","pendingID","setPendingParticipant","sendInvite","cancelInvite","removeFromWaitlist","participantById","headerTitles","csvLines","rowValues","csvLine","removeTarget","BULK_DECLINED","BULK_ACCECPTED","SINGLE","removeAllDeclined","removeAllAccepted","inviteClient","unwaitlist","accepted","INVITATIONACCEPTED","removeBulk","declined","INVITATIONDECLINED","ChildMiddleInitial","typeWaitListStatusID","selecting","waitlistId","expire","sendSingleInvite","SentDate","InviteExpireDate","WaitListIDs","inviteBulk","inviteList","updated","decline","sent","showSelectAll","showCapacityWarning","UpwardProgramID","currentRoutePart","historyRoutePart","historyRoute","currentRoute","updateParameters","BeginDate","EftNumber","showDetails","EftDate","cash","EftAmount","none","showing","bg","ConfirmationNumber","TransactionCompletedDate","UpwardLeagueID","AmountExpectedToPay","reportNormalized","CashRecAmount","CashRecNbr","lastConfirmationNumber","Regid","sortList","ContactType","ParticipantFirstName","ParticipantLastName","ContactFirstName","ContactLastName","ContactCommunicationType","ContactCommunicationID","sortedData","cullData","sortedbyASC","mounted","WaitlistReport","EFTReport","EFTReportControls","CommunicationsOptOutReport","waitlist","communicationsoptout","currentReportDefaultParams","reportSelected","reportComponent","documentLoaded","reportLoaded","showExporting","currentPage","PageReport","LicenseKey","FontStore","registerFonts","Viewer","exportReportProgress","pageNumber","exportCancel","exportPdf","exportDocument","loadReportData","reportOptions","viewer","reportViewer","pdfExportButton","toolbar","updateLayout","hideCarpoolLinks","hidePracticeNightExclusion","loadStatus","ActiveReport","schoolYear","reportTemplates","jsonContent","sizeSubReport","questionSubReport","mainData","Name","DataSources","ConnectionProperties","ConnectString","resourceLocator","getResource","activeReport","activereport","ReportParams","ResourceLocator","importOptions","selectedAllOrImported","genderOptions","selectedGender","filterByRegDate","selectedRegStartDate","selectedRegEndDate","selectedStartGrade","selectedEndGrade","noEvalsOnly","currentDateMinusOne","currentDate","importName","importValue","genderName","genderValue","accts","hideEvalScores","incomplete","reportTypes","myDivisions","isIncomplete","subData","subReport","parentReport","prefixText","weekNumbers","displayHeadCoach","displayRefereeName","weekName","weekValue","roundReport","locationReport","divisionReport","teamReport","weekReport","paymentOptions","selectedPaymentStatus","refereeReport","onFirstDataRendered","suppressColumnVirtualisation","columnApi","capitalizeFormatter","str","booleanFormatter","bool","teamPracticeNightFormatter","names","practiceNightExclusionFormatter","teamCoachesFormatter","udfFormatter","udfs","gradeToAgeFormatter","gradeDescriptionFormatter","valueFormatter","conflictList","applyColumnState","sortIndex","defaultState","autoSizeColumns","parms","processCellCallback","csvProcessCellCallback","getColId","programName","dateFormatter","ParticipantEvalForm","ParticipantEvalActivity","BlankParticipantEvalForm","CoachRoster","MailingLabels","Siblings","GameSchedule","GameScheduleByTeam","PracticeSchedule","ParticipantIntros","Payments","PaymentsByType","MissingEvals","OutstandingBalance","RefereeSchedule","PlayerConflict","CoachConflict","blankevalform","evalform","evalactivity","missingevals","mailinglabels","gamebyteam","referee","intros","payments","paymentsbytype","outstandingbalance","playerconflict","coachconflict","ExcelReports","WebviewReports","DynamicReports","reloadMinistryAgreement","ministryAgreementShowClosed","handleScroll","ministryAgreementRequired","showWaitPage","agreementText","toLocaleString","scrolled","nextClicked","backClicked","hasCollectedData","agreeClicked","timePassed","timeLimit","showWaitMessage","timerInterval","timeLeft","startTimer","clearInterval","postMessage","checkMinistryAgreementStatus","signAgreement","fullname","WaitPage","reload","compareDate","ministryAgreementClient","isScrolledToBottom","container","parentElement","distanceToScroll","scrollHeight","clientHeight","percentScrolled","checkMinistryAgreementRequired","isExpired","shouldRequireSigniture","expired","updateMinistryAgreementRequired","MinistryAgreementModal","runCampByTypeList","campRunByType","gradeGenderChange","helpIsVisible","registrationOption","coachUdfs","saveUdfs","onCampChange","updateExistingCamp","saveNewCamp","pathParts","thisPath","self","emptySelectedGrades","cheerProgramGrades","sportProgramGrades","newLeague","beforeEmit","done","playerUdfs","wasCancelled","internalPlayerUdfs","internalCoachUdfs","getRetunArray","createPlayerUdf","createRoleUdf","setInternalUdfArrays","originalArray","internalArray","resultArray","updateUdf","originalUdfResult","originalUdf","ensureArrayHasElementsCount","srcArray","elementCount","destArray","numberOfItemsToAdd","udfId","getCoachUdfs","coachRoleResults","updateUdfs","getProgramRegistrationOption","registrationTypes","onlineRegistrationType","setProgramRegistrationOption","isMailInOnly","lastCutoffDate","handleBeforeSave","setInformationForNewCamp","setRegistrationOption","TimezoneSelect","GradeGenderSelector","AdditionalParticipantInformation","EFTypes","currentCamp","retrieveAndSetPartners","LEAGUE_ORDERS","efTypes","evaluationDescription","EvaluationFormOptions","setKeyDatesForNewCamp","earlyRegistrationFee","registrationFee","EvaluationForm","partnership","churchCount","integerList","internalAccount","partnersInRadius","masterAccountNumber","leagueOwner","cheerGrades","isHostChurch","setInternalAccount","setGradesValue","cheerTypeProgramId","charAt","partnerDirty","partnerChanged","updatePartner","accountDelta","expectLeagueOrder","coachShirtRequired","PartnerForm","IntegerPicker","earlyRegistrationCost","hasEarlyRegistration","freeEarlyRegistrationFeeConfirmed","registrationCost","freeRegistrationFeeConfirmed","warnings","ignoreWarnings","showWarnings","AccessFeeStep","UpwardSystemStep","internalVisible","CampLeagueStarterBox","hasOnlineRegistration","userWantsToIgnoreWarnings","productBeforeSave","getRegistrationCost","selectedProductOffering","savedCamp","isDate","SetupStepperCamp","ProductWarningModal","isGlobalPartner","ccEnabled","showCreditCardHelp","eftBankAcctLast4","eftModalIsVisible","accessCode","envStatus","hasMultiChildDiscount","showManageCapactiy","capacityMessage","getCampGradesList","eftStatus","eftAuthSent","accessCodeEnabled","sendClicked","currentUserFullName","currentUserEmail","eftAuth","sendEFTAuthorizationRequest","internalDiscountCodes","handleEditBottonClicked","handleDeleteBottonClicked","activeDiscountCode","saveDiscountCode","showEditScreen","manageButtonTitle","internalModalIsVisible","internalDiscountCode","SaveIcon","discountCode","discountAmount","maxUsages","numberOfUsages","defaultDiscountCode","defaultManageButtonTitle","renderActive","EditDiscountCode","isEditing","addNewRule","editingRule","availableGenders","saveRow","deleteRow","cap","editId","saveRowEdit","editRow","isEditting","startDisplayValue","endDisplayValue","capacity","regCapCounts","currentCount","waitlistCount","isNewRow","getEmptyRegistrationCapacityCount","setRegistrationCount","startTypeGradeID","stopTypeGradeID","getRegistrationCount","startGradeID","endGradeID","gradeUsages","internalRegistrationCapacities","updateGradeUsageMap","errMsg","itemToDeleteIndex","rule","gradeUsage","stopIndex","gradeId","startGrades","gradeIsGreaterThenStopGrade","capacityGradeMatchesStartGrade","capacityGradeMatchesStopGrade","getUpwardGradeTypeID","endGrades","gradeIsLessThenStartGrade","maleAvailable","femaleAvailable","ManageCapacityRule","internalBypassLinks","activeBypassLink","saveBypassLink","bypassLinkURL","internalBypassLink","startDateRule","endDateRule","showignoreCapacityRulesHelp","defaultBypassLink","bypassLink","setBypassLinkURL","urlSuffix","upwURL","bypassLinkID","ignoreCapacityRules","renderURLSuffix","renderDate","renderIgnore","EditBypassLink","maxNumberOfRegistrations","registrationLoaded","beforeSaveProcessing","getEFTRequestStatus","registrationCapacitiesByGradeGender","address1_Line1","address1_Line2","address1_City","address1_StateOrProvince","address1_PostalCode","updateCapacityMessage","rcbgg","ManageDiscountCodes","ManageCapacityRules","ManageBypassLinks","EFTAuthorizationRequestModal","getCoachUdfList","campOwner","getGradeString","fourChildDiscountAmount","internalPracticeNights","isBoys","properCase","ParticipantsView","ParticipantsIndex","ParticipantEdit","ParticipantsBatchEdit","VolunteerView","VolunteersIndex","VolunteerEdit","routes","History","Settings","Sms","Communications","GroupMessages","Scheduled","Failures","TeamPageAlerts","CampIndex","isDigital","isLicenseProgram","runLeagueByTypeList","leagueRunByType","cutOffHelpIsVisible","allCarPoolLinkLabelOverrides","onInternalPracticeNightsChange","updateExistingLeague","saveNewLeague","onLeagueChange","setInformationForNewLeague","leaguesClient","retrieveCarPoolLinkLabelOverride","prog0","prog1","DayOfWeekMultiPicker","sportSwitch","clearContact","onSportContactUpdated","goToResources","devoTrackInfo","devotionTracks","summaryPDFURL","selectedDevotion","devotionType","descriptionContent","getEmptyDevotionTrackInfo","loadDevoInfo","leagueAbbreviation","getDevotionTracks","savedLeague","beforeSaveMethod","LeagueDevotionTrackSelection","DigitalSetupCompleteConfirmation","awardHelpIsVisible","seasonendHelpIsVisible","numberOfEvaluations","setKeyDatesForNewLeague","saveDisabled","sportName","isEarlyFeeRegistration","sportCanSave","sportCatalog","cheerCanSave","cheerCatalog","ProgramRegistrationFee","showCheerCapacities","getSportName","sportCapacityMessage","getLeagueGradesList","cheerCapacityMessage","selectedCapacityTab","allowCoachLinks","allowCarpoolLinks","allowPracticeNightExclusions","awardsOrderDate","formattedProgram","productList","productsLoading","getProducts","offeringIds","selProducts","filterToSelected","LeagueIndex","storeChallenge","currentChallenge","coachContact","storeContact","updateExistingChallenge","saveNewChallenge","onChallengeChange","currentPartnerContact","internalUdfs","createUdf","DayOfWeekPicker","AdditionalParticipantInformationUR","SaveContinueButtonUR","updateAccountContact","estimate","productFlowLogicUR","stepName","kitMaxTouchedStep","kitNextStep","kitClicked","setStartupOrderProducts","setChallengeStartupConfig","setProductConfig","setChallengeProductConfig","loadRunningOrderProducts","participantEstimate","setChallengeParticipantEstimate","est","ProgramInformationFormUR","getEmptyPartnerChallengeStartupProductConfig","upwardColorTypeID","upwardSizeTypeID","startupConfig","startupProductConfig","StartupOrderProductCardUR","StartupOrderPickerUR","availableProducts","getEmptyPartnerChallengeProductConfig","isOptional","optionalProductCost","productConfig","getSelectedIndexes","getRunningOrderProductInfoExt","colorActive","retColor","colorSortOrder","colorCostOffset","ProductPickerUR","runningOrderProducts","availableRunningProducts","estimatedNumberOfParticipants","prodInfo","setupStepperLogicUR","stepListNames","InfoStepUR","StarterOrderItemStepUR","ParticipantKitStepUR","RunningTotalUR","setChallengeEarlyRegistrationFee","fee","setChallengeRegistrationFee","earlyRegistrationEndDate","SetupStepperRunning","RunningRegistrationFee","EditDiscountCodeUR","savedChallenge","SetupCompleteConfirmationUR","ManageDiscountCodesUR","classDay","classTime","missionObjective","getProductDescription","getVolunteerResourcesRunning","OrderRunning","UpwardRunningIndex","runningStartup","baseName","Index","CreateOrEdit","ChooseEditOrNew","New","Welcome","Estimator","selectedTab","isPending","isAddUserModalVisible","deleteUser","selectedUser","friendlyName","partnerRoles","saveSelectedUser","isResetPasswordModalVisible","pendingInvitations","pendingInvitationColumns","resendInvitation","deleteInvitation","selectedInvitation","isResendInvitationModalVisible","sendSms","hasValidationError","invitePartnerUser","user","resetPassword","authorizationClient","getPasswordResetLink","recipient","invitationMessage","renderPartnerRoles","renderInviteStatus","renderDateSent","getUserList","retrieveUsers","getOpenPartnerInvitations","getPendingInvites","deletePartnerUser","handleSelectedTabChanged","updatePartnerRole","AddUserModal","PartnerRoleSelectInput","ResetPasswordModal","ResendInvitationModal","smType","scores","socialMediaAccountTypes","socialMediaData","typeSocialMediaID","retreivePartnerSocialMediaTypes","retreivePartnerSocialMediaData","socialMediaDataToSave","existingData","updatePartnerSocialMediaData","discountUrl","scripttag","jwtService","Billing","EftReports","MilitaryDiscount","GrantApplication","Questions","pageDocumentMap","pageName","Training","cancelVerification","saveUser","verificationComplete","newFullName","newEmail","verify","saveProfile","newUsername","usernameChangeCode","isNewEmail","isNewFullName","updateUserProfile","currentFullName","currentEmail","VerficationCode","TransactionSearchByEnum","currentPassword","saveIsDisabled","submitPasswordChange","onNewPasswordsChange","confirmNewPassword","PasswordInput","updatePassword","showConfirmPasswordError","showDisableConfirmation","showEnableConfirmation","onEnableConfirmation","onDisableConfirmation","term","searchFilter","appID","is2FAEnabled","isAdmin","check2FAStatus","get2FAStatus","set2FAStatus","Manage2FA","noProgramsTest","isUserReallyASuperAdmin","showAdminAlertsModal","cardBodyClasses","slots","searchByList","searchBy","errorMessage","useRegistrationFinder","registrationResults","findRegistration","CreditCardTypeEnum","internalTransaction","typeRegistrationTransactionStatusID","authorizationName","RegistrationStatusEnum","markComplete","COMPLETE","showChargebackDetails","isMarkCompleteShowing","transaction","onMarkComplete","isRefundShowing","onRefundComplete","onRemoveComplete","isChargebackDetailsShowing","chargebackDetails","onChargebackClose","internalShowing","registration","confirmationNumber","ccAuthorization","ccLast4","ccList","ccType","areWeReadyToConfirm","doWhatType","VISA","MASTERCARD","DISCOVER","AMEX","last4","doWhatList","doWhat","REFUND","chargeback","gardians","ResetTypeEnum","RefundRemoveTransaction","CompleteRegistrationTransaction","ChargebackDetails","transactionCompletedDate","markRefundRemove","REFUNDED","REMOVED","transactionId","getChargebackDetails","OPRTransactionItem","SearchInput","CONFIRMATION","INVOICE","registrationFinder","invoiceNumber","uniqueID","failedLoginAttemptCount","lastLoginDate","impersonateUser","resetUser","disableUser","twoFactorAuthEnabled","change2FA","confirmDisable","disableConfirmed","userToDisable","canCurrentUserResetPassword","isResetDialogShowing","userToReset","passwordWasReset","notice","isPasswordResetShowing","userTo2FA","is2FADialogShowing","change2FAConfirmed","howRef","currentSelectionRef","validation","triggerValidate","inputRef","OrderHistorySearchByEnum","canResetPassword","MANUAL","MAIL","SMS","resetInitialState","adminResetPassword","adminResetPasswordEmail","adminResetPasswordSMS","PasswordResetModal","isCurrentUserIsSuperAdmin","searchUsers","isSuperAdmin","an","loadingOrders","runSearch","orderErrors","programFor","popupReleaseDialog","holdingOrder","isHoldVisible","releaseOrder","closeHold","showReleaseMessage","releaseMessage","useOrderHistory","orderHistoryRef","searchOrders","useHoldDialog","release","upwardProgramID","ReturnsOrderSearchByEnum","orderClick","statusNote","releaseOnHold","shippingStatus","userSubmitDate","HoldReasonDialog","OrderItem","ORDER_ID","ACCOUNT_NUMBER","HOLDS","PARTIALS","uh","uho","NEW","RETURNS_SCM","RETURNS_ACCOUNTING","RETURNS_PS","RETURNS_PENDING_ITEM_RETURN","retOrderTypeString","searchResults","city","ministryImpactClick","fanGearCustomURL","placeOrdersOnHoldNote","profileClicked","isProfileConfirmShowing","confirmProfileClick","eftLast4","fanGearURL","onHoldNote","showAlert","alertText","split_result","searchPartners","setProfile","eft","updateAccountProfile","getLeagueOwnerName","notPrivateClicked","privateClicked","cancelClicked","removeCheerClicked","noLimitsDraft","enableOverrideDraftClicked","disableOverrideDraftClicked","deleteProgramClicked","manageSNumbers","placeManualOrderClicked","isConfirmShowing","confirmClick","confirmText","isSNumbersShowing","setSNumbers","sNumbers","prodIndex","even","isEven","odd","getEmptyLeagueProgramAugusta","getEmptyLeagueProgramAugustaProduct","getEmptyLeagueProgramAugustaSNumber","adultMaleProductItemCode","adultFemaleProductItemCode","youthMaleProductItemCode","youthFemaleProductItemCode","showReason","confirmAction","successAlertText","wrapCallNotify","thingConfirming","successText","showReasonFlag","removeCheer","deleteProgram","setPrivacyMode","retrieveLeagueProgramAugusta","overrideDraft","setCancelled","deleteLeague","setPrivacy","hasError","updateLeagueProgramAugusta","getLeagueOwner","hasCustomJersey","showManualOrder","Card","ProgramSearchPanel","PartnerSearchPanel","RecentOrderHistoryPanel","ReturnsOrderPanel","UserManagementPanel","RegistrationTransactionsPanel","adminAlerts","searchTermLeague","searchTermConfirmation","searchTermAccount","searchTermCredit","isLastNameDisabled","searchTermLast","searchTermInvoice","areWeReadyToSearch","searchUpwardOrderID","searchUpwardLeagueID","validType","searchOrderType","validStatus","searchOrderStatus","validSorts","searchField","validDirection","searchDirection","runSearchClicked","loadMoreClicked","stats","types","hasMore","integrationClicked","clearErrorClicked","editOrderXMLClicked","resendASBClicked","currentOrderInfo","currentOrder","internalNotesVisible","integrationNotesClosed","integrationNotesChanged","internalXMLEditVisible","xmlEditClosed","resendASBVisible","resendToASBConfirmed","internalNotes","internalIntegrate","canSaveNote","saveNote","removeNote","noteText","gpIntegrate","NoteItem","xmlEdit","orderXML","saveXML","getEmptyOrderXMLEdit","clearNotification","ApplicationStatus","IntegrationNotesDialog","OrderDetail","OrderXMLEditDialog","showASBResendSection","showOrderSuperAdminOptions","getOrderByRoute","orderid","loadOrder","refreshNotes","clearProductCache","isProductCachedCleared","clearCache","deleteProductCache","productCacheWasCleared","selectedStatus","selectedRequest","editMode","estimatedVolume","canSubmit","canComplete","canRevert","revert","Pending","detailLoading","Approved","Completed","partnerName","num","estVol","approveApplication","generateCSV","toJSON","exportType","csv","markAsSubmitted","doesExist","source","created","TO_NAME","TO_ABBREVIATED","convertRegion","states","provinces","regions","txt","endOf","utc","dateCsvFormatter","intlNumberFormatter","Intl","NumberFormat","signDisplay","moneyFormatter","baseValue","moneyClassSelector","warningFormatter","warningClassSelector","stateFormatter","cellClass","amount","net","tax","revenue","owedToChurch","ProductCachePanel","TwilioApplicationPanel","EmailSuppressionPanel","StripeBalanceTransactionPanel","canRunStripeReport","statusChanged","currStatusNote","statusButtonDisabled","statusButtonText","statusCheckboxEnabled","statusCheckboxText","moveToNextStatus","showNextStatus","returnStatuses","gpItems","getGPItemCodes","programDescription","reasonDescription","extLine","gpItemCodes","getEmptyReturnOrderStatus","fromTypeOrderStatusID","toTypeOrderStatusID","ReturnsOrderListSection","statusNoteBlockVisible","rmaStatusModel","updateStatusNoteSection","ReturnsOrderDetail","selectedBeginDate","selectedEndDate","areWeReady","runReportClicked","pageSettings","defaultStartDate","ministryImpactData","orderStep","Order","lowerStep","Dashboard","RegistrationTransactionsScreen","OrderSearchScreen","ManualOrderFrame","OrderDetailScreen","RunningOrderDetailScreen","ReturnsOrderDetailScreen","MinistryImpactReport","coachroster","Reports","currentBannerImg","bannerItem","bannerGraphicUrl","actionLink","visibleBannerItems","configCount","bannerItems","getBannerItems","getGatewayBanners","showBannerItem","bothDatesAreNull","displayStartDate","displayEndDate","onlyStartDateIsUsedAndValid","onlyEndDateIsUsedAndValid","bothStartAndEndUsedAndValid","VCol","VImg","VRow","partnerSupportPage","pageHeader","additionalHtmlContentString","representativePictureUrl","representativeFullName","tagline","mainBodyContent","representativeEmail","cellPhoneNumber","field1Label","field1ResponseContent","field2Label","field2ResponseContent","field3Label","field3ResponseContent","field4Label","field4ResponseContent","field5Label","field5ResponseContent","field6Label","field6ResponseContent","field7Label","field7ResponseContent","es","ys","arguments","async","environment","deploymentId","initChat","chat","TheChat","updatePartnerSupportPage","currentAccountInfo","getPartnerSupportRep","setChatClasses","candy","dblClick","actionEvent","rowDblClick","align","calories","fat","carbs","protein","iron","Tree","tree","createDeck","nextHandler","navigateHandler","participantAssignmentQuestion","buttons","participantKitQuestion","participantAssignmentWarning","coachAssignmentQuestion","participantKitChange","readyToOrder","coachAssignmentWarning","Carousel","slideId","list1","list2","list3","val3","testEvents","testMatchups","currentDateRage","removeFromList","pickedDateTime","ModalDatePicker","selections","delayedConfirm","simulateTask","modalConfirmation","testComponents","CalendarTest","TreeTest","ComboboxTest","CarouselTest","ModalDateTimePicker","DropDownMultiSelectTest","ModalConfirmationTest","componentsToRender","toRender","VApp","allowSubmit","successIsVisible","currentYear","localStorageEmailKey","rememberedEmail","query","rsr","isExpiredPassword","isLockedAccount","showCode","isDone","isInvite","acceptInvitation","featureJSON","setFeaturesFromText","allFlags","ff","allGood","ffval","router","meta","isHome","isPublic","adminDashboard","allAccess","Planning","training","Partner","Contact","ComponentTest","FeatureInterface","myProfile","cheerLabel","validProgramTypes","programTypesChange","newLLI","PhoneTypeEnum","getEmptyPhone","PhoneSeedInfo","HOME","NameToType","WORK","MOBILE","mobilePhoneSeed","homePhoneSeed","nextPhoneSeed","decrementingPhoneIDStrategy","getLegalResource","version","UROSStates","newUROS","setProductInParticipants","participantsParm","getEmptyAddress","getEmptyLeaguePlayerInfo","newPlayerID","gradeIsOverridden","doNotDraft","LeaguePlayerSeedInfo","formatter","minimumFractionDigits","maximumFractionDigits","getEmptyCommunicationCriteria","headCoachOnly","getEmptyEmailMessage","attachment1","attachment2","allRecipients","createAttachementArray","selectedRecipients","getEmptyAttachment","getNewProviderInfo","EmailSMSProviderInfo","emailSmsAccountID","emailAcctID","emailAcctName","emailAcctApiKey","smsAcctID","smsAcctName","smsAcctApiKey","smsCredits","smsMaxCredits","isSMSAllowed","smsTypeProviderID","smsAssignedNumber","CommunicationsState","currentProviderInfo","messagePreview","isTollFreeApplicationPending","statuses","messagePreviewLoading","leagueSettings","setPreviewMessage","setTollFreeApplicationPending","setStatuses","clearStatuses","setSelectedGroups","setUpwardLeagueID","setCommunicationType","setToDelimited","setTo","setMessageBody","setMessagePreviewLoading","setTypeProgramID","setPracticeNight","setStartGrade","setEndGrade","setPaymentStatus","setEvalStatus","setCoachTeamStatus","setViewAllLeagueContacts","setPracticeFacilityIDs","setEmailSubject","setLeagueSettings","setEmailDisplayName","emailDisplayName","setEmailReplyTo","emailReplyTo","setAttachment","attachment","removeAttachment","setRecipients","clearMessageInformation","hasSelectedRecipients","hasSelectedInList","hasToRecipients","hasToDelimited","retrieveStatuses","previewMessage","retrieveRecipientList","currentLeagueId","updateTo","emailMessage","previewMessageToMessage","fetchLeagueSettings","updatedSettings","setRecipientsFromRunningParticipants","upwardRunningId","formattedName","updateRecipientsAndPreview","listOfSelectedEmailsOrPhones","retrieveGradeTypes","retrieveDevotionTrackTypes","mockResponse","retrieveColorTypes","retrieveDivisionGameTypes","ourCheerURL","ourSpecialEventURL","programURL","AppointmentClientException","appointment","squadid","OrderTypesEnum","useNoProductSelector","leaguesState","commonInit","handleButtonInput","searchButtonText","allowBlankInput","searchClick","getEmptyPracticeNightExclusions","newAccountID","newPlayerId","PlayerId","IsNewPlayer","divisionUrl","divisionURL","GameClientException","lItems","itemKey","singleSelect","hideHeader","hideFooter","showExpand","singleExpand","currentData","onPagination","allSelected","removeLocalId","localIdRemoved","$internalid$","timeStringSplit","NaN","timeStringToMilliseconds","secs","ms","dateToTimeString","getUTCHours","getUTCMinutes","timeStringLooksValid","getDateWithTime","hours","minutes","seconds","convertToOldFashionDateTime","fullDate","appId","PasswordExpiredException","LockedAccountException","getSystemToken","systemToken","phone_number","ProgramClientException","retrieveImportProductMapping","getCurrentCapacities","overrideDraftByProgram","sectionName","orderProductList","getEmptyPromoCardMedia","marketingID","qrCodeURL","pageHeight","pageWidth","publicUrl","getEmptyDisplayablePromoCardMedia","baseLeagueUrl","baseSelectUrl","getUrl","LeagueClientException","noProdCatalogRule","brokenRules","retrieveWinnerKitProductList","productGroupID","retrieveAwardProductOptions","getRestResult","methodName","progID","createLeagueProgramAugusta","lpa","summaryThing","totalOnly","isSalesTaxCalculatedYet","shippingCost","salestax","pv","displayComponent","showReport","alertIsVisible","show2FAPrompt","show2FAQRCode","loginWithPartner","sitekey","doRememberEmail","focusVerificationCodeReturning","showAuthKey","qrCodeImage","focusVerificationCodeInitial","accountID","selectPartner","getParser","navigator","userAgent","getPlatformType","PartnerList","VueRecaptcha","isSuperUser","qriousInstance","lastValidTotp","isReplaying","redirectFlag","accountToImpersonateAfter2FA","verified","tfaEx","redirectCheck","accountNo","replayTOTPCode","isVerified","retreivePartners","uri","generateTOTPUri","generateQRCode","handleLoginException","toDataURL","fullNameEncoded","charCodeAt","THE_AUTH_WALL__REDIRECT_TO_MOBILE","isDesktopBrowser","onAlertIsVisibleChange","errorDetailMessage","highestTimeStamp","brokenRule","itemCount","highWaterTimeStamp","TheErrorRenderer","TheAuthWall","lr","isCurrentRoutePublic","showNotifications","mini","drawerOpen","sideBarFlavor","clickHamburger","clickNotification","updateExists","refreshApp","VList","VListItemGroup","isHomeRoute","HOME__SEARCH_AND_NOTIFICATION","notificationsCount","notificationsClick","_g","endImpersonation","avatarText","doLogout","VAvatar","NotificationsBtn","firstInitial","lastSpace","lastIndexOf","lastInitial","VCard","VDivider","VListItemContent","VMenu","notification","showFlipper","expanded","fmtDt","flipper","LessButton","MoreButton","NotificationCard","msgArea","totalHeight","smallHeight","sizeText","h","Notification","retrieveNotifications","VNavigationDrawer","TheSidebar","TheFooter","TheHeader","ThePromptToSave","Notifications","SiteLoading","userHasBeenSeenThisTimePeriod","$vuetify","breakpoint","smAndDown","watchForActivity","onActivity","genericResult","generalError","setServiceWorkerListener","updateAvailable","serviceWorker","waiting","VAppBar","VFooter","VMain","VSnackbar","CoachApp","MainApp","cached","dispatchEvent","CustomEvent","offline","iconfont","theme","themes","light","primary","danger","init","network","requestSanitizer","productionTip","original","vuetify","App","$mount","IsOnRoute","toggleHidden","currentTarget","tab2","i2","MenuTab","tabElement","contains","retrievePreviousLeagueDivisions","cheerProgramId","removePracticesOnExcludedDates","toLeagueId","fromLeagueId","uniqueUserIdCheck","spinStep","handleKeyUp","MAX_VALUE","MIN_VALUE","showSpinButton","changeOnKeyUp","getEmptyLeagueProgram","approveAdminAddedVolunteers","approveQuickAddVolunteers","ProgramHasGradeAndGender","volunteerTemplate","isCheerProgram","leagueProductImportMapping","uniqueColumnNames","mappings","importColumnName","leagueProductMappings","columnNames","getEmptyLeague","carPoolLinkLabelOverride","optOutFanGear","selectSportName","hideRosterOnSportsApp","hideScheduleOnSportsApp","hidePracticeScheduleOnSportsApp","getAllGrades","getAllGradeDescriptions","getAllAges","initialGrades","getGrades","includeInvalid","getGradeDescriptions","includeBlank","getAges","getDefaultGrades","$$selectedVal","_value","assertItemListType","useTextlike","blur","getEmptyPartnerChallenge","coachPartnerContactID","devotionTrackCMSID","hideFromLeagueFinder","contactEmail","getEmptyRootContact","ContactInfoToRootContact","upwardRunningState","currentParticipant","setCurrentParticipant","setCurrentRunning","setRunningOrderProducts","setPagination","clearCurrentParticipant","createAccountContact","savedContact","retrieveAccountContact","retrieveAccountContactsFullList","contactsResult","matchedContact","nameParts","upwardRunningOrderClient","loadRunningParticipants","leagueUpwardProgramTypes","leagueAbstractionMutationNames","isInPartnership","userIsLeagueOwner","loggedInAccount","owner","shortPrograms","typeId","getLeagueProgramTypes","updateDescriptionsFromLeague","descriptions","leagueAbstractionNamespace","customGetterNames","customMutationNames","customMutations","alternateDescription","DEFAULT_APPLICATION_ID","InvitePostParams","applicationID","InviteClientException","emailInvites","invitations","smsInvites","invitationId","waitListID","AddIconCssClass","EditIconCssClass","DeleteIconCssClass","SaveIconCssClass","HelpIconCssClass","toggleCard","copyCard","editCard","removeCard","createNewCardClicked","isPromoCardCreateShowing","promoPreview","promoCardClosed","promoCardUpdated","isPromoCardDeleteConfirmShowing","deleteCardResponded","setQRDefault","dirty","contentOverflowing","fetchingPdf","doPreview","inputContent","updateValue","overflowChanged","editorContainer","scrollHeightLast","contentOverflows","hasScrollBar","hasScrolled","isContentOverflowing","scrollToBottom","defautl","internalPreview","outputContent","closed","saveAndFetchPdf","promoCard","pm","overflowing","checkLoading","contentDocument","urlChange","Editor","PromoCardOverflowWarning","FormatHelpButton","PreviewButton","copy","emptyProduct","PromoCardDisplay","PromoCardModal","hasSelectedACard","cardfind","loadingPromoCard","saveCard","nv","promoCardToDelete","selectedValue","showBorder","off","onInternalValueChange","ButtonGroup","slotNames","VolunteerClientException","volunteerID","volunteer","forceAsNew","coachTypeProgramID","coachPrefs","retrieveVolunteer","roleid","cp","roleIDs","roleIDQueryString","uros","newStatus","running","validateRunningOrder","RolesEnum","getEmptyLeagueVolunteer","newVolunteerID","isNewVolunteer","isImportedVolunteer","editVolunteer","LeagueVolunteerSeedInfo","VolunteerID","IsNewVolunteer","VolunteerRetrieveEnum","NEW_VOLUNTEER","NO_ACTIVE_VOLUNTEER","VolunteerRoleException","VolunteerException","VolunteerRuntimeException","volunteerState","volunteerUnderEdit","volunteerUnderEditId","changeRole","x1","nextyear","setAllInvited","setAllApproved","setReferees","removeVolunteer","setOperation","setVolunteers","forceVolunteerListReload","setVolunteerUnderEdit","clearVolunteerUnderEdit","setVolunteerUnderEditId","setUpdatedVolunteer","setUpdatedAndMergeVolunteer","existingVolunteer","merged","inviteVolunteers","setAllInvitedViaSms","inviteVolunteersWithSms","approve","upsertVolunteer","forceNew","newvolunteer","getVolunteer","getVolunteerByRole","loadProgramVolunteers","shouldForce","setCurrentVolunteerByID","getFullVolunteerInfo","removeRole","roleIndex","removeExtraneousTemplateInfo","transferVolunteers","loadLeanVolunteersByProgramRole","getLeanVolunteerListByProgram","getLeanVolunteerListByProgramAndRoles","PartnerClientException","userId","profile","valueAndTextTheSame","useSelectList","rej","getorder","race","loadReturnsOrder","loadRunningOrder","getEmptyLeagueListItem","opportunityTypeID","canDelete","isHost","partnerCount","LeagueListItemSeed","lli","unitCost","subtotal","rollups","rollupTotal","divisionPanelsValue","divIndex","divPanelChange","expandDisabled","expandAllDivision","collapseDisabled","collapseAllDivision","divsionItemCount","teamIndex","panelValue","sortedLines","divSortNameA","participantDivisionName","divSortNameB","teamSortNameA","teamSortNameB","playerSortNameA","playerSortNameB","ordLine","divName","ordLineDetail","VExpansionPanel","VExpansionPanelContent","VExpansionPanelHeader","VExpansionPanels","makeOrderLine","isSizeUnselected","getFilteredProductList","generateIsSelected","viewOptions","viewSwitch","modalClose","hasConfirmBox","mask","TheMask","productFlowLogic","currentTypeProgramId","currentTypeLeagueId","kit1NextStep","kit1Clicked","kit2Clicked","kit2NextStep","LeagueProgams2LeagueListItem","pts"],"mappings":"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","file":"js/app.7bdd1407.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-038ba39a\":\"af3f6c1f\",\"chunk-0827d95c\":\"4950bab1\",\"chunk-14418f17\":\"d5677404\",\"chunk-181401e3\":\"5d27dce8\",\"chunk-2d0b1e06\":\"92580eb2\",\"chunk-2d0b6aad\":\"62ecc665\",\"chunk-2d0b9d3b\":\"41e4bd56\",\"chunk-2d0ba755\":\"014e7122\",\"chunk-2d0c1176\":\"5e7d032d\",\"chunk-2d0cc056\":\"a9184cd4\",\"chunk-2d0d03d7\":\"df602e49\",\"chunk-2d0d0b9a\":\"15f7af51\",\"chunk-2d0da04b\":\"e61d1416\",\"chunk-2d0da315\":\"c5d51a6a\",\"chunk-2d0db22c\":\"0362d814\",\"chunk-2d0e96e6\":\"715b1df1\",\"chunk-2d0f0033\":\"cfff5133\",\"chunk-2d20e883\":\"960cab08\",\"chunk-2d210fb9\":\"babb3908\",\"chunk-2d216214\":\"6c017dde\",\"chunk-2d216257\":\"9a1ce9b2\",\"chunk-2d21b135\":\"ce2f371b\",\"chunk-2d2213d8\":\"ef711c54\",\"chunk-42b6650b\":\"9f73ce8b\",\"chunk-44814acc\":\"e900689d\",\"chunk-4932ca83\":\"ef5276a3\",\"chunk-4caf4c9e\":\"9cd73a84\",\"chunk-51713a00\":\"52a15b79\",\"chunk-543e12bc\":\"42ec7046\",\"chunk-45e77971\":\"cb7371f0\",\"chunk-0359f5b6\":\"13c2e462\",\"chunk-9e1e1340\":\"55f43e3d\",\"chunk-6c411fde\":\"eb60e0bd\",\"chunk-0dca78d6\":\"2137d38d\",\"chunk-4ba1d878\":\"16d859a4\",\"chunk-557876ea\":\"63c7c60f\",\"chunk-bcf15e72\":\"2581940a\",\"chunk-bd370d52\":\"f1b93c36\",\"chunk-594cd3a1\":\"ea819984\",\"chunk-612e145c\":\"bbc7c715\",\"chunk-62be680b\":\"037c9209\",\"chunk-73d9739a\":\"90d0d823\",\"chunk-74a74734\":\"15d6f574\",\"chunk-82c070a8\":\"e19a52cf\",\"chunk-b56a5a56\":\"79006798\",\"chunk-c04cf32a\":\"12d9c133\",\"chunk-d194af2a\":\"6288059f\",\"chunk-ee3a974e\":\"4bd7e196\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-0827d95c\":1,\"chunk-14418f17\":1,\"chunk-181401e3\":1,\"chunk-42b6650b\":1,\"chunk-44814acc\":1,\"chunk-4932ca83\":1,\"chunk-4caf4c9e\":1,\"chunk-51713a00\":1,\"chunk-543e12bc\":1,\"chunk-45e77971\":1,\"chunk-0359f5b6\":1,\"chunk-9e1e1340\":1,\"chunk-6c411fde\":1,\"chunk-0dca78d6\":1,\"chunk-557876ea\":1,\"chunk-bcf15e72\":1,\"chunk-bd370d52\":1,\"chunk-594cd3a1\":1,\"chunk-612e145c\":1,\"chunk-62be680b\":1,\"chunk-73d9739a\":1,\"chunk-b56a5a56\":1,\"chunk-c04cf32a\":1,\"chunk-d194af2a\":1,\"chunk-ee3a974e\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-038ba39a\":\"31d6cfe0\",\"chunk-0827d95c\":\"2012262a\",\"chunk-14418f17\":\"784290a8\",\"chunk-181401e3\":\"0426abf0\",\"chunk-2d0b1e06\":\"31d6cfe0\",\"chunk-2d0b6aad\":\"31d6cfe0\",\"chunk-2d0b9d3b\":\"31d6cfe0\",\"chunk-2d0ba755\":\"31d6cfe0\",\"chunk-2d0c1176\":\"31d6cfe0\",\"chunk-2d0cc056\":\"31d6cfe0\",\"chunk-2d0d03d7\":\"31d6cfe0\",\"chunk-2d0d0b9a\":\"31d6cfe0\",\"chunk-2d0da04b\":\"31d6cfe0\",\"chunk-2d0da315\":\"31d6cfe0\",\"chunk-2d0db22c\":\"31d6cfe0\",\"chunk-2d0e96e6\":\"31d6cfe0\",\"chunk-2d0f0033\":\"31d6cfe0\",\"chunk-2d20e883\":\"31d6cfe0\",\"chunk-2d210fb9\":\"31d6cfe0\",\"chunk-2d216214\":\"31d6cfe0\",\"chunk-2d216257\":\"31d6cfe0\",\"chunk-2d21b135\":\"31d6cfe0\",\"chunk-2d2213d8\":\"31d6cfe0\",\"chunk-42b6650b\":\"b2ed0c19\",\"chunk-44814acc\":\"0f499d21\",\"chunk-4932ca83\":\"9c65573e\",\"chunk-4caf4c9e\":\"503a1eb9\",\"chunk-51713a00\":\"47077d54\",\"chunk-543e12bc\":\"f31517a5\",\"chunk-45e77971\":\"14e8fdbe\",\"chunk-0359f5b6\":\"8731bee7\",\"chunk-9e1e1340\":\"d01ad90e\",\"chunk-6c411fde\":\"f6036334\",\"chunk-0dca78d6\":\"8c657186\",\"chunk-4ba1d878\":\"31d6cfe0\",\"chunk-557876ea\":\"105dc057\",\"chunk-bcf15e72\":\"0364a05a\",\"chunk-bd370d52\":\"1f01fec0\",\"chunk-594cd3a1\":\"627f7c11\",\"chunk-612e145c\":\"5b72a922\",\"chunk-62be680b\":\"1a267a45\",\"chunk-73d9739a\":\"aec1c9eb\",\"chunk-74a74734\":\"31d6cfe0\",\"chunk-82c070a8\":\"31d6cfe0\",\"chunk-b56a5a56\":\"2ea4ade6\",\"chunk-c04cf32a\":\"6150ce9f\",\"chunk-d194af2a\":\"95cc4487\",\"chunk-ee3a974e\":\"0426abf0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([4,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductDetail.vue?vue&type=style&index=0&id=7edff09e&lang=scss&scoped=true&\"","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport { LeaguePracticeNight } from '@/GeneratedTypes/LeaguePracticeNight'\nimport leagueClient from '@/clients/leaguesClient'\nimport programsClient from '@/clients/programsClient'\nimport facilitiesClient from '@/clients/facilitiesClient'\nimport jwtService from '@/services/jwtService'\nimport { League } from '@/GeneratedTypes/League'\nimport { getEmptyLeague } from '@/lib/support/models/League/data'\nimport { getEmptyLeagueFacility } from '@/lib/support/models/LeagueFacility/data'\nimport { ActionsImpl } from 'direct-vuex'\nimport credentialsService from '@/services/credentialsService'\nimport { FACILITY_DEFAULT_TIMES } from '@/services/facilityService'\n\nexport enum eventTypes {\n Games = 'GAMES',\n Practices = 'PRACTICES',\n}\n\nexport enum viewModes {\n list = 'list',\n create = 'create',\n edit = 'edit',\n}\n\nexport enum getterNames {\n currentItem = 'currentItem',\n items = 'items',\n editorItem = 'editorItem',\n viewMode = 'viewMode',\n emptyFacility = 'emptyFacility',\n currentLeague = 'currentLeague',\n}\n\nexport enum actionNames {\n create = 'create',\n update = 'update',\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n validate = 'validate',\n cache = 'cache',\n loadFromCache = 'loadFromCache',\n load = 'load',\n set = 'set',\n beginCreating = 'beginCreating',\n endCreating = 'endCreating',\n beginEdit = 'beginEdit',\n endEdit = 'endEdit',\n loadPracticeNights = 'loadPracticeNights',\n loadSelectedPracticeDays = 'loadSelectedPracticeDays',\n loadGroup = 'loadGroup',\n createNewFacility = 'createNewFacility',\n getEmptyFacility = 'getEmptyFacility',\n save = 'save',\n delete = 'delete',\n copyFacility = 'copyFacility',\n beginCreatingFrom = 'beginCreatingFrom',\n}\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n setItems = 'setItems',\n setInEdit = 'setInEdit',\n updateViewMode = 'updateViewMode',\n addItem = 'addItem',\n removeItem = 'removeItem',\n setPracticeNights = 'setPracticeNights',\n setPracticeDays = 'setPracticeDays',\n setInEditItem = 'setInEditItem',\n setCurrentLeague = 'setCurrentLeague',\n setEmptyFacility = 'setEmptyFacility',\n}\n\ninterface LeagueFacilityState {\n currentItem: LeagueFacility\n items: LeagueFacility[]\n viewMode: viewModes\n practiceNights: LeaguePracticeNight[] | null\n practiceDays: string[]\n inEdit: LeagueFacility\n emptyFacility: LeagueFacility | null\n currentLeague: League\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setCurrent](state: LeagueFacilityState, { item }: { item: LeagueFacility }) {\n state.currentItem = item\n },\n [mutationNames.setItems](state: LeagueFacilityState, { items }: { items: LeagueFacility[] }) {\n state.items = items\n\n if (items && items.length > 0) {\n state.currentItem = items[0]\n }\n },\n [mutationNames.updateViewMode](state: LeagueFacilityState, { item }: { item: viewModes }) {\n state.viewMode = item\n },\n [mutationNames.addItem](state: LeagueFacilityState, { item }: { item: LeagueFacility }) {\n state.items.push(item)\n },\n [mutationNames.removeItem](state: LeagueFacilityState, { id }: { id: number }) {\n const itemToRemove = state.items.find((f) => f.facilityID === id)\n\n if (itemToRemove) {\n const itemIndex = state.items.indexOf(itemToRemove)\n state.items.slice(itemIndex, 1)\n }\n },\n [mutationNames.setPracticeNights](state: LeagueFacilityState, { item }: { item: LeaguePracticeNight[] }) {\n state.practiceNights = item\n },\n [mutationNames.setPracticeDays](state: LeagueFacilityState, { item }: { item: string[] }) {\n state.practiceDays = item\n },\n [mutationNames.setInEditItem](state: LeagueFacilityState, { item }: { item: LeagueFacility }) {\n state.inEdit = item\n },\n [mutationNames.setCurrentLeague](state: LeagueFacilityState, { item }: { item: League }) {\n state.currentLeague = item\n },\n [mutationNames.setEmptyFacility](state: LeagueFacilityState, { item }: { item: LeagueFacility }) {\n state.emptyFacility = item\n },\n}\n\nconst getters: GetterTree = {\n [getterNames.currentItem]: (state: LeagueFacilityState) => state.currentItem,\n [getterNames.items]: (state: LeagueFacilityState) => state.items,\n [getterNames.emptyFacility]: () => getEmptyLeagueFacility(),\n [getterNames.editorItem]: (state: LeagueFacilityState) => state.inEdit,\n [getterNames.currentLeague]: (state: LeagueFacilityState) => state.currentLeague,\n [getterNames.viewMode]: (state: LeagueFacilityState) => state.viewMode,\n}\n\nconst leagueFacilityState: LeagueFacilityState = {\n currentLeague: getEmptyLeague(),\n currentItem: getEmptyLeagueFacility(),\n inEdit: getEmptyLeagueFacility(),\n emptyFacility: null,\n items: new Array(),\n viewMode: viewModes.list,\n practiceNights: [],\n practiceDays: [],\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.load]({ commit }, { id }: { id: string }): Promise {\n const facilities = await facilitiesClient.retrieveAll(id)\n\n const league = await leagueClient.retrieve(id)\n\n commit(mutationNames.setCurrentLeague, { item: league })\n\n if (facilities) {\n commit(mutationNames.setItems, { items: facilities })\n return facilities\n }\n\n return null\n },\n // eslint-disable-next-line require-await\n async [actionNames.set]({ commit }, { id }: { id: number }): Promise {\n const facility = leagueFacilityState.items.find((item) => item.facilityID === id)\n\n if (facility) {\n commit(mutationNames.setCurrent, { item: facility })\n\n return facility\n }\n\n return null\n },\n // eslint-disable-next-line require-await\n async [actionNames.beginCreating]({ commit, state }): Promise {\n commit(mutationNames.updateViewMode, { item: viewModes.create })\n\n const facility: LeagueFacility = getEmptyLeagueFacility()\n const credentials = jwtService.getCredentialsFromStoredAuthToken()\n const accountNumber = credentialsService.getPrimaryAccountFromCredentials(credentials)\n facility.accountNumber = (accountNumber || '').toString()\n facility.leagueID = state.currentLeague ? state.currentLeague.id : -1\n facility.availability = []\n\n commit(mutationNames.setInEditItem, { item: facility })\n },\n // eslint-disable-next-line require-await\n async [actionNames.beginCreatingFrom](\n { commit, state },\n { facility }: { facility: LeagueFacility }\n ): Promise {\n const credentials = jwtService.getCredentialsFromStoredAuthToken()\n const accountNumber = credentialsService.getPrimaryAccountFromCredentials(credentials)\n facility.accountNumber = (accountNumber || '').toString()\n facility.leagueID = state.currentLeague ? state.currentLeague.id : -1\n\n commit(mutationNames.setInEditItem, { item: facility })\n commit(mutationNames.updateViewMode, { item: viewModes.create })\n },\n [actionNames.endCreating]({ commit }): void {\n commit(mutationNames.updateViewMode, { item: viewModes.list })\n },\n [actionNames.beginEdit]({ commit }): void {\n commit(mutationNames.updateViewMode, { item: viewModes.edit })\n commit(mutationNames.setInEditItem, { item: leagueFacilityState.currentItem })\n },\n [actionNames.endEdit]({ commit }): void {\n commit(mutationNames.updateViewMode, { item: viewModes.list })\n },\n // eslint-disable-next-line require-await\n async [actionNames.loadPracticeNights]({ commit, state }): Promise {\n let practiceNights: LeaguePracticeNight[] | null = []\n\n try {\n if (state.currentLeague) {\n commit(mutationNames.setPracticeNights, { item: state.currentLeague.practiceNights })\n // practice nights for facilities should used the days for the leagues, but ignore the league practice night times\n practiceNights = (state.currentLeague.practiceNights as LeaguePracticeNight[]).map((n) => ({\n typeDayID: n.typeDayID,\n startTime: FACILITY_DEFAULT_TIMES.start,\n endTime: FACILITY_DEFAULT_TIMES.end,\n }))\n\n return practiceNights\n }\n\n return null\n } catch (error) {\n throw new error('problem retrieving practice nights')\n }\n },\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async [actionNames.copyFacility]({ commit, state }, { id }: { id: string }): Promise {\n //todo: fill out\n },\n // the practice days selected at league set up\n async [actionNames.loadSelectedPracticeDays]({ commit }, { id }: { id: string }): Promise {\n let selectedDays: string[] | null = []\n\n try {\n const program = await programsClient.retrieve(id)\n if (program) {\n commit(mutationNames.setPracticeDays, { item: program.practiceDays })\n selectedDays = program.practiceDays\n }\n } catch (error) {\n throw new error('problem retrieving program practice days')\n }\n\n return selectedDays\n },\n async [actionNames.loadGroup]({}, { id }: { id: string }): Promise {\n const groupData = await facilitiesClient.retrieveGroups(id)\n\n if (groupData && groupData.data) {\n return groupData.data\n }\n return null\n },\n\n async [actionNames.validate]({ state }): Promise {\n if (state.viewMode == viewModes.create) {\n const facility = state.inEdit\n const leagueId = state.currentLeague.upwardLeagueID || ''\n\n const validationResult = await facilitiesClient.validateNew(leagueId, facility)\n\n if (!validationResult.isSuccess) return false\n }\n\n return true\n },\n async [actionNames.save]({ commit, state }): Promise {\n const facility = state.inEdit\n const leagueId = state.currentLeague.upwardLeagueID || ''\n\n if (state.viewMode === viewModes.create) {\n const createResults = await facilitiesClient.createNew(leagueId, facility)\n\n if (!createResults.isSuccess) {\n throw new Error('unable to create new Facility')\n }\n\n commit(mutationNames.addItem, { item: createResults.data })\n\n return createResults.data\n } else {\n //update facility\n const updateResults = await facilitiesClient.update(leagueId, facility)\n const facilities = await facilitiesClient.retrieveAll(leagueId)\n\n if (!updateResults.isSuccess) {\n throw updateResults.errorObject || new Error('unable to update Facility')\n }\n\n if (facilities) {\n commit(mutationNames.setItems, { items: facilities })\n }\n\n return updateResults.data\n }\n },\n async [actionNames.delete]({ state }): Promise {\n const leagueID = state.currentLeague.upwardLeagueID\n\n if (leagueID) {\n const facilityID = state.currentItem.facilityID\n\n const deleteResult = await facilitiesClient.deleteFacility(leagueID, facilityID)\n\n return deleteResult.isSuccess\n }\n\n return false\n },\n}\n\nexport const namespace = 'facilities'\n\nexport const facilities = {\n namespaced: true as true,\n state: leagueFacilityState,\n actions,\n getters,\n mutations,\n ...viewModes,\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportModal.vue?vue&type=style&index=0&lang=scss&\"","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { UpwardTimezoneTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardTimezoneTypeID'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport { ActionsImpl } from 'direct-vuex'\n\ninterface TimezoneState {\n items: UpwardTimezoneTypeID[]\n}\n\nconst timezoneState: TimezoneState = {\n items: [],\n}\n\nexport enum getterNames {\n allItems = 'allItems',\n}\n\nconst getterTree: GetterTree = {\n [getterNames.allItems]: (state) => state.items,\n}\n\nexport enum mutationNames {\n setAll = 'setAll',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setAll](state, { items }) {\n state.items = items\n },\n}\n\nexport enum actionNames {\n fetchAll = 'fetchAll',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.fetchAll]({ commit, getters }, { force = false }): Promise {\n if (getters[getterNames.allItems].length && !force) {\n return false\n }\n\n const result = await upwardTypesClient.retrieveTimezoneTypes()\n\n if (result.isSuccess) {\n const items = result.data\n commit(mutationNames.setAll, { items })\n return true\n }\n\n return false\n },\n}\n\nexport const namespace = 'timezoneTypes'\n\nexport const timezoneTypes = {\n namespaced: true as true,\n state: timezoneState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { DataTableHeader } from 'vuetify/types'\nexport interface DataTableSelection {\n expand: (value: boolean) => void\n headers: DataTableHeader[]\n isExpanded: boolean\n isMobile: boolean\n isSelected: boolean\n item: T\n select: (value: boolean) => void\n}\n\nexport interface DataTablePagination {\n page: number\n itemsPerPage: number\n pageStart: number\n pageStop: number\n pageCount: number\n itemsLength: number\n}\n\nexport interface DataTableRemovedPagination {\n removedPage: number\n removedItemsPerPage: number\n removedPageStart: number\n removedPageStop: number\n removedPageCount: number\n removedItemsLength: number\n}\n\nexport function getEmptyDataTablePagination() {\n return {\n page: 1,\n itemsPerPage: 15,\n pageStart: 1,\n pageStop: 1,\n pageCount: 1,\n itemsLength: 1,\n }\n}\n\nexport function getEmptyDataTableRemovedPagination() {\n return {\n removedPage: 1,\n removedItemsPerPage: 5,\n removedPageStart: 1,\n removedPageStop: 1,\n removedPageCount: 1,\n removedItemsLength: 1,\n }\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpwardAccessStep.vue?vue&type=style&index=0&id=48c9326e&lang=scss&scoped=true&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordResetModal.vue?vue&type=style&index=0&lang=scss&\"","import { GeneralError } from '@/lib/common/exceptions/GeneralError'\n\nexport class LoginException extends GeneralError {\n name = 'General Login Exception'\n}\n","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { UpwardExceptionResult } from '@/models/UpwardExceptionResult'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport {\n UpwardExceptionResultWithTimestamp,\n UpwardValidationDetailsWithTimestamp,\n} from '@/models/error_timestamp_types'\n\ninterface ErrorsState {\n errorItems: UpwardExceptionResultWithTimestamp[]\n validationItems: UpwardValidationDetailsWithTimestamp[]\n}\n\nconst errorsState: ErrorsState = {\n errorItems: [],\n validationItems: [],\n}\n\nexport enum getterNames {\n allErrors = 'allErrors',\n allValidationErrors = 'allValidationErrors',\n currentError = 'currentError',\n currentValidationError = 'currentValidationError',\n}\n\nconst getters: GetterTree = {\n [getterNames.allErrors]: (state) => state.errorItems,\n [getterNames.allValidationErrors]: (state) => state.validationItems,\n [getterNames.currentError]: (state) =>\n state.errorItems?.length ? state.errorItems[state.errorItems.length - 1] : null,\n [getterNames.currentValidationError]: (state) =>\n state.validationItems?.length ? state.validationItems[state.validationItems.length - 1] : null,\n}\n\n/**\n * Change strategy for if we keep history of errors\n * if false we still track errors vs validation problems but we\n * only hang on to the last validation error and last error\n */\nconst KEEP_ERROR_HISTORY_FEATURE = false\n\nexport enum mutationNames {\n addError = 'addError',\n clearCurrentError = 'clearCurrentError',\n clearAll = 'clearAll',\n addValidationError = 'addValidationError',\n clearCurrentValidationError = 'clearCurrentValidationError',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.addError](state, { item }: { item: UpwardExceptionResult }) {\n if (!KEEP_ERROR_HISTORY_FEATURE) {\n state.errorItems = []\n }\n state.errorItems.push({ error: item, timestamp: new Date() })\n },\n [mutationNames.clearCurrentError](state) {\n if (state.errorItems.length) {\n state.errorItems.pop()\n }\n },\n [mutationNames.addValidationError](state, { item }: { item: UpwardVerificationDetails }) {\n if (!KEEP_ERROR_HISTORY_FEATURE) {\n state.validationItems = []\n }\n state.validationItems.push({ error: item, timestamp: new Date() })\n },\n [mutationNames.clearCurrentValidationError](state) {\n if (state.validationItems.length) {\n state.validationItems.pop()\n }\n },\n [mutationNames.clearAll](state) {\n state.errorItems = []\n state.validationItems = []\n },\n}\n\nexport const namespace = 'errors'\n\nexport const errors = {\n namespaced: true as true,\n state: errorsState,\n getters,\n mutations,\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { UpwardOpportunityTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardOpportunityTypeID'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport { ActionsImpl } from 'direct-vuex'\n\ninterface OpportunityTypesState {\n items: UpwardOpportunityTypeID[]\n}\n\nconst opportunityTypesState: OpportunityTypesState = {\n items: [],\n}\n\nexport enum getterNames {\n allItems = 'allItems',\n}\n\nconst getterTree: GetterTree = {\n [getterNames.allItems]: (state) => state.items,\n}\n\nexport enum mutationNames {\n setAll = 'setAll',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setAll](state, { items }) {\n state.items = items\n },\n}\n\nexport enum actionNames {\n fetchAll = 'fetchAll',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.fetchAll]({ commit, getters }, force = true): Promise {\n if (getters[getterNames.allItems].length && !force) {\n return false\n }\n\n const result = await upwardTypesClient.retrieveOpportunityTypes()\n\n if (result.isSuccess) {\n const items = result.data\n commit(mutationNames.setAll, { items })\n return true\n }\n\n return false\n },\n}\n\nexport const namespace = 'opportunityTypes'\n\nexport const opportunityTypes = {\n namespaced: true as true,\n state: opportunityTypesState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { UpwardLeagueTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardLeagueTypeID'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport { ActionsImpl } from 'direct-vuex'\n\ninterface LeagueTypesState {\n items: UpwardLeagueTypeID[]\n}\n\nconst leagueTypesState: LeagueTypesState = {\n items: [],\n}\n\nexport enum getterNames {\n allItems = 'allItems',\n byOpportunityTypeId = 'byOpportunityTypeId',\n byUpwardTypeId = 'byUpwardTypeId',\n byId = 'byId',\n}\n\nconst getters: GetterTree = {\n [getterNames.allItems]: (state) => state.items,\n [getterNames.byOpportunityTypeId]: (state) => (opportunityTypeId: string) =>\n state.items.filter((x) => x.typeOpportunityID == opportunityTypeId),\n [getterNames.byUpwardTypeId]: (state) => (upwardTypeId: string) =>\n state.items.find((x) => x.upwardTypeID == upwardTypeId) ?? null,\n [getterNames.byId]: (state) => (id: number) => state.items.find((x) => x.id == id) ?? null,\n}\n\nexport enum mutationNames {\n setAll = 'setAll',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setAll](state, { items }) {\n state.items = items\n },\n}\n\nexport enum actionNames {\n fetchAll = 'fetchAll',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.fetchAll]({ commit, getters }, force = true): Promise {\n if (getters[getterNames.allItems].length && !force) {\n return false\n }\n\n const result = await upwardTypesClient.retrieveLeagueTypes()\n\n if (result.isSuccess) {\n const items = result.data\n commit(mutationNames.setAll, { items })\n return true\n }\n\n return false\n },\n}\n\nexport const namespace = 'leagueTypes'\n\nexport const leagueTypes = {\n namespaced: true as true,\n state: leagueTypesState,\n getters,\n actions,\n mutations,\n}\n","import restService from '@/services/restService'\nimport { Clinic } from '@/GeneratedTypes/Clinic'\n\nconst baseUrl = 'Clinics/'\n\nconst create = async (clinic: Clinic) => {\n return await restService.post(`${baseUrl}`, clinic)\n}\n\nconst update = async (id: string, clinic: Clinic) => {\n return await restService.put(`${baseUrl}${id}`, clinic)\n}\n\nconst retrieve = async (id: string) => {\n return await restService.get(`${baseUrl}${id}`)\n}\n\nconst newTemplate = async (upwardLeagueTypeID: string) => {\n return await restService.get(`${baseUrl}new/${upwardLeagueTypeID}`)\n}\n\nexport default {\n create,\n retrieve,\n update,\n newTemplate,\n}\n","import { Clinic } from '@/GeneratedTypes/Clinic'\nimport { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\n\nexport function getEmptyClinic(): Clinic {\n return {\n clinicDate: new Date(),\n id: 0,\n typeLeagueID: '',\n leagueName: '',\n typeProductGroupID: '',\n upwardLeagueID: null,\n programMissionObjective: '',\n typeTimezoneID: 'EASTERN', //default value to pass API validation\n typeCountryID: 'US',\n leagueDirectorPartnerID: 0,\n partnerContact: getEmptyContact(),\n canEdit: true,\n canEditReason: null,\n playerEstimate: null,\n leagueFinderURLOverride: null,\n programs: [],\n gradeDescriptions: [],\n }\n}\n","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport clinicsClient from '@/clients/clinicsClient'\nimport { Clinic } from '@/GeneratedTypes/Clinic'\nimport { defineActions } from 'direct-vuex'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { getEmptyClinic } from '@/lib/support/models/Clinic/data'\nimport sessionObjectsClient from '@/clients/sessionObjectsClient'\nimport { uniqueUserIdCheck } from '@/store/helper'\nimport store from '@/store'\n\ninterface ClinicsState {\n currentItem: Clinic\n}\n\nconst clinicsState: ClinicsState = {\n currentItem: getEmptyClinic(),\n}\n\nexport enum getterNames {\n currentItem = 'currentItem',\n}\n\nconst getterTree: GetterTree = {\n [getterNames.currentItem]: (state) => state.currentItem,\n}\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setCurrent](state, { item }: { item: Clinic }) {\n state.currentItem = item\n store.commit.leagueAbstraction.setCurrentClinic({ item })\n },\n}\n\nexport enum actionNames {\n create = 'create',\n update = 'update',\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n cache = 'cache',\n loadFromCache = 'loadFromCache',\n beginCreating = 'beginCreating',\n}\n\nconst actions = defineActions({\n async [actionNames.retrieveAndSetAsCurrent]({ commit }, { id }: { id: string }): Promise {\n const result = await clinicsClient.retrieve(id)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n return result.data\n }\n\n return null\n },\n async [actionNames.create]({ commit, rootGetters }, { item }: { item: Clinic }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const result = await clinicsClient.create(item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n await sessionObjectsClient.delete(`clinic.new.${uniqueUserId}`)\n return result.data\n }\n\n return null\n },\n async [actionNames.update]({ commit }, { id, item }: { id: string; item: Clinic }): Promise {\n const result = await clinicsClient.update(id, item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n return result.data\n }\n\n return null\n },\n async [actionNames.cache]({ commit, rootGetters }, { item }: { item: Clinic }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const isNew = !item.upwardLeagueID\n const cacheKey = `clinic.${isNew ? `new.${uniqueUserId}` : item.upwardLeagueID}`\n const cacheResult = await sessionObjectsClient.createOrUpdate(cacheKey, item)\n\n if (!cacheResult.isSuccess) {\n return false\n }\n\n commit(mutationNames.setCurrent, { item })\n return true\n },\n async [actionNames.loadFromCache]({ commit, rootGetters }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const result = await sessionObjectsClient.retrieve(`clinic.new.${uniqueUserId}`)\n\n if (!result.isSuccess) {\n return false\n }\n\n const item = result.data!\n commit(mutationNames.setCurrent, { item })\n return true\n },\n async [actionNames.beginCreating](\n { commit, dispatch },\n {\n name,\n typeLeagueID,\n partnerContact,\n }: { name: string; typeLeagueID: string; partnerContact: ContactInfo | null }\n ): Promise {\n const result = await clinicsClient.newTemplate(typeLeagueID)\n\n if (!result.isSuccess) {\n return false\n }\n\n const item = result.data!\n\n item.leagueName = name\n item.typeLeagueID = typeLeagueID\n item.typeCountryID = 'US' //hack since API doesn't return this for some reason\n\n if (partnerContact) {\n item.partnerContact = {\n firstName: partnerContact.firstName!,\n lastName: partnerContact.lastName!,\n emailAddress: partnerContact.emailAddress!,\n emailValid: partnerContact.emailValid,\n emailValidReason: partnerContact.emailValidReason,\n primaryPhoneNumber: partnerContact.primaryPhone!,\n primaryPhoneTypeID: partnerContact.primaryPhoneTypeID!,\n secondaryPhoneNumber: partnerContact.secondaryPhone,\n secondaryPhoneTypeID: partnerContact.secondaryPhoneTypeID,\n alternatePhoneNumber: partnerContact.alternatePhone,\n alternatePhoneTypeID: partnerContact.alternatePhoneTypeID,\n yearsExperience: partnerContact.yearsExperience,\n isFullTime: partnerContact.isFullTime,\n typePartnerRoleID: partnerContact.typePartnerRoleID!,\n typePreferredDayOfWeekID: partnerContact.preferredContactDayOfWeek!,\n typePreferredTimeOfDayID: partnerContact.preferredContactTimeOfDay!,\n typePreferredContactMethodID: partnerContact.preferredContactMethod!,\n }\n\n item.leagueDirectorPartnerID = partnerContact.id\n }\n commit(mutationNames.setCurrent, { item })\n\n await dispatch(actionNames.cache, { item })\n\n return true\n },\n})\n\nexport const namespace = 'clinics'\n\nexport const clinics = {\n namespaced: true as true,\n state: clinicsState,\n getters: getterTree,\n mutations,\n actions,\n}\n","import restService from '@/services/restService'\nimport { Connect } from '@/GeneratedTypes/Connect'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\n\nconst baseUrl = 'connects/'\n\nconst create = async (connect: Connect) => {\n return await restService.post(`${baseUrl}`, connect)\n}\n\nconst update = async (id: string, connect: Connect) => {\n return await restService.put(`${baseUrl}${id}`, connect)\n}\n\nconst retrieve = async (id: string) => {\n return await restService.get(`${baseUrl}${id}`)\n}\n\nconst validateNew = async (connect: Connect, ruleSet = '') => {\n return await restService.post(`${baseUrl}validate`, connect, {\n params: {\n ruleSet,\n },\n })\n}\n\nconst validateExisting = async (id: string, connect: Connect) => {\n return await restService.post(`${baseUrl}${id}/validate`, connect)\n}\n\nconst newTemplate = async (upwardLeagueTypeID: string) => {\n return await restService.get(`${baseUrl}new/${upwardLeagueTypeID}`)\n}\n\nexport default {\n create,\n retrieve,\n update,\n validateNew,\n validateExisting,\n newTemplate,\n}\n","import { Connect } from '@/GeneratedTypes/Connect'\nimport { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\n\nexport function getEmptyConnect(): Connect {\n return {\n connectDate: new Date(),\n id: 0,\n typeLeagueID: '',\n leagueName: '',\n typeProductGroupID: '',\n upwardLeagueID: null,\n programMissionObjective: '',\n typeTimezoneID: 'EASTERN',\n typeCountryID: 'US',\n leagueDirectorPartnerID: 0,\n partnerContact: getEmptyContact(),\n canEdit: true,\n canEditReason: null,\n playerEstimate: null,\n leagueFinderURLOverride: null,\n programs: [],\n gradeDescriptions: [],\n }\n}\n","import connectsClient from '@/clients/connect'\nimport { Connect } from '@/GeneratedTypes/Connect'\nimport { defineActions, defineMutations, defineGetters } from 'direct-vuex'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { getEmptyConnect } from '@/lib/support/models/Connect/data'\nimport sessionObjectsClient from '@/clients/sessionObjectsClient'\nimport { uniqueUserIdCheck } from '@/store/helper'\nimport store from '@/store'\n\ninterface ConnectsState {\n currentItem: Connect\n}\n\nconst connectsState: ConnectsState = {\n currentItem: getEmptyConnect(),\n}\n\nexport enum getterNames {\n currentItem = 'currentItem',\n}\n\nconst getterTree = defineGetters()({\n currentItem: (state) => state.currentItem,\n})\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n}\n\nconst mutations = defineMutations()({\n setCurrent(state, { item }: { item: Connect }) {\n state.currentItem = item\n store.commit.leagueAbstraction.setCurrentConnect({ item })\n },\n})\n\nexport enum actionNames {\n create = 'create',\n update = 'update',\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n cache = 'cache',\n loadFromCache = 'loadFromCache',\n beginCreating = 'beginCreating',\n}\n\nconst actions = defineActions({\n async [actionNames.retrieveAndSetAsCurrent]({ commit }, { id }: { id: string }): Promise {\n const result = await connectsClient.retrieve(id)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n return result.data\n }\n\n return null\n },\n async [actionNames.create]({ commit, rootGetters }, { item }: { item: Connect }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const result = await connectsClient.create(item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n await sessionObjectsClient.delete(`connect.new.${uniqueUserId}`)\n return result.data\n }\n\n return null\n },\n async [actionNames.update](\n { commit },\n { id, item }: { id: string; item: Connect }\n ): Promise {\n const result = await connectsClient.update(id, item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n return result.data\n }\n\n return null\n },\n async [actionNames.cache]({ commit, rootGetters }, { item }: { item: Connect }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const isNew = !item.upwardLeagueID\n const cacheKey = `connect.${isNew ? `new.${uniqueUserId}` : item.upwardLeagueID}`\n const cacheResult = await sessionObjectsClient.createOrUpdate(cacheKey, item)\n\n if (!cacheResult.isSuccess) {\n return false\n }\n\n commit(mutationNames.setCurrent, { item })\n return true\n },\n async [actionNames.loadFromCache]({ commit, rootGetters }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const result = await sessionObjectsClient.retrieve(`connect.new.${uniqueUserId}`)\n\n if (!result.isSuccess) {\n return false\n }\n\n const item = result.data!\n commit(mutationNames.setCurrent, { item })\n return true\n },\n async [actionNames.beginCreating](\n { commit, dispatch },\n {\n name,\n typeLeagueID,\n partnerContact,\n }: { name: string; typeLeagueID: string; partnerContact: ContactInfo | null }\n ): Promise {\n const result = await connectsClient.newTemplate(typeLeagueID)\n\n if (!result.isSuccess) {\n return false\n }\n\n const item = result.data!\n item.leagueName = name\n item.typeLeagueID = typeLeagueID\n item.typeCountryID = 'US' //hack since API doesn't return this for some reason\n\n if (partnerContact) {\n item.partnerContact = {\n firstName: partnerContact.firstName!,\n lastName: partnerContact.lastName!,\n emailAddress: partnerContact.emailAddress!,\n emailValid: partnerContact.emailValid,\n emailValidReason: partnerContact.emailValidReason,\n primaryPhoneNumber: partnerContact.primaryPhone!,\n primaryPhoneTypeID: partnerContact.primaryPhoneTypeID!,\n secondaryPhoneNumber: partnerContact.secondaryPhone,\n secondaryPhoneTypeID: partnerContact.secondaryPhoneTypeID,\n alternatePhoneNumber: partnerContact.alternatePhone,\n alternatePhoneTypeID: partnerContact.alternatePhoneTypeID,\n yearsExperience: partnerContact.yearsExperience,\n isFullTime: partnerContact.isFullTime,\n typePartnerRoleID: partnerContact.typePartnerRoleID!,\n typePreferredDayOfWeekID: partnerContact.preferredContactDayOfWeek!,\n typePreferredTimeOfDayID: partnerContact.preferredContactTimeOfDay!,\n typePreferredContactMethodID: partnerContact.preferredContactMethod!,\n }\n\n item.leagueDirectorPartnerID = partnerContact.id\n }\n commit(mutationNames.setCurrent, { item })\n\n await dispatch(actionNames.cache, { item })\n\n return true\n },\n})\n\nexport const namespace = 'connects'\n\nexport const connects = {\n namespaced: true as true,\n state: connectsState,\n getters: getterTree,\n mutations,\n actions,\n}\n","import Vue from 'vue'\nimport { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { UpwardProductGroupTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProductGroupTypeID'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport { ActionsImpl } from 'direct-vuex'\n\ninterface ProductGroupTypesState {\n items: { [id: string]: UpwardProductGroupTypeID[] } // key is leagueUpwardTypeId\n}\n\nconst productGroupTypeState: ProductGroupTypesState = {\n items: {},\n}\n\nexport enum getterNames {\n byLeagueUpwardTypeId = 'byLeagueUpwardTypeId',\n}\n\nconst getters: GetterTree = {\n [getterNames.byLeagueUpwardTypeId]: (state) => (leagueUpwardTypeId: string) => {\n return state.items[leagueUpwardTypeId] || []\n },\n}\n\nexport enum mutationNames {\n setForLeagueUpwardTypeId = 'setForLeagueUpwardTypeId',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setForLeagueUpwardTypeId](state, { items, leagueUpwardTypeId }) {\n Vue.set(state.items, leagueUpwardTypeId, items)\n },\n}\n\nexport enum actionNames {\n fetchForProductGroupTypes = 'fetchForProductGroupTypes',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.fetchForProductGroupTypes](\n { commit },\n {\n leagueUpwardTypeId,\n programStartDate = null,\n }: { leagueUpwardTypeId: string; programStartDate: Date | null }\n ): Promise {\n const result = await upwardTypesClient.retrieveProductGroupTypes(leagueUpwardTypeId, programStartDate)\n\n if (result.isSuccess) {\n const items = result.data\n commit(mutationNames.setForLeagueUpwardTypeId, { items, leagueUpwardTypeId })\n return result.data ? result.data.length : 0\n }\n\n return 0\n },\n}\n\nexport const namespace = 'productGroupTypes'\n\nexport const productGroupTypes = {\n namespaced: true as true,\n state: productGroupTypeState,\n getters,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { UpwardPhoneTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPhoneTypeID'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport { ActionsImpl } from 'direct-vuex'\n\ninterface PhoneTypesState {\n items: UpwardPhoneTypeID[]\n}\n\nconst phoneTypesState: PhoneTypesState = {\n items: [],\n}\n\nexport enum getterNames {\n allItems = 'allItems',\n}\n\nconst getterTree: GetterTree = {\n [getterNames.allItems]: (state) => state.items,\n}\n\nexport enum mutationNames {\n setAll = 'setAll',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setAll](state, { items }) {\n state.items = items\n },\n}\n\nexport enum actionNames {\n fetchAll = 'fetchAll',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.fetchAll]({ commit, getters }, { force = false }): Promise {\n if (getters[getterNames.allItems].length && !force) {\n return false\n }\n\n const result = await upwardTypesClient.retrievePhoneTypes()\n\n if (result.isSuccess) {\n const items = result.data\n commit(mutationNames.setAll, { items })\n return true\n }\n\n return false\n },\n}\n\nexport const namespace = 'phoneTypes'\n\nexport const phoneTypes = {\n namespaced: true as true,\n state: phoneTypesState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { UpwardAddressTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardAddressTypeID'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport { ActionsImpl } from 'direct-vuex'\n\ninterface AddressTypesState {\n items: UpwardAddressTypeID[]\n}\n\nconst addressTypesState: AddressTypesState = {\n items: [],\n}\n\nexport enum getterNames {\n allItems = 'allItems',\n}\n\nconst getterTree: GetterTree = {\n [getterNames.allItems]: (state) => state.items,\n}\n\nexport enum mutationNames {\n setAll = 'setAll',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setAll](state, { items }) {\n state.items = items\n },\n}\n\nexport enum actionNames {\n fetchAll = 'fetchAll',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.fetchAll]({ commit, getters }, { force = false }): Promise {\n if (getters[getterNames.allItems].length && !force) {\n return false\n }\n\n const result = await upwardTypesClient.retrieveAddressTypes()\n\n if (result.isSuccess) {\n const items = result.data\n commit(mutationNames.setAll, { items })\n return true\n }\n\n return false\n },\n}\n\nexport const namespace = 'addressTypes'\n\nexport const addressTypes = {\n namespaced: true as true,\n state: addressTypesState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { defineGetters, defineActions, defineMutations } from 'direct-vuex'\nimport { NotificationInfo } from '@/models/Notification/NotificationInfo'\nimport alertClient from '@/clients/alertClient'\nimport { cloneDeep } from 'lodash'\ninterface AlertState {\n notifications: NotificationInfo[]\n}\n\nconst alertState: AlertState = {\n notifications: [] as NotificationInfo[],\n}\n\nexport enum getterNames {\n notifications = 'notifications',\n unreadNotificationCount = 'unreadNotificationCount',\n}\n\nconst getterTree = defineGetters()({\n notifications: (state) => {\n return state.notifications\n },\n unreadNotificationCount: (state) => {\n return state.notifications.filter((n) => !n.userHasRead).length\n },\n})\n\nexport enum mutationNames {\n setNotifications = 'setNotifications',\n}\n\nconst mutations = defineMutations()({\n setNotifications(state, { notifications }: { notifications: NotificationInfo[] }) {\n state.notifications = notifications\n },\n})\n\nexport enum actionNames {\n fetchNotifications = 'fetchNotifications',\n}\n\nconst actions = defineActions({\n async fetchNotifications({ commit }) {\n const notifications = await alertClient.retrieveMyNotifications()\n commit(mutationNames.setNotifications, { notifications: notifications ?? ([] as NotificationInfo[]) })\n },\n async markMyNotificationsRead({ commit, getters }): Promise {\n const n = cloneDeep(getters[getterNames.notifications] as NotificationInfo[])\n const calls: Array> = []\n n.forEach((n) => {\n calls.push(alertClient.markNotificationRead(n.id))\n n.userHasRead = true\n })\n const results = await Promise.all(calls)\n const success = results.some((r) => !r)\n if (success) {\n commit(mutationNames.setNotifications, { notifications: n })\n }\n return success\n },\n})\n\nexport const namespace = 'alerts'\n\nexport const alerts = {\n namespaced: true as true,\n state: alertState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardPartnerDayTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerDayTypeID'\nimport { ActionsImpl } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrievePartnerDayTypes\n)\n\nconst partnerDayTypesState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions: ActionTree, RootState> &\n ActionsImpl = {\n ...generic.actions,\n}\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'partnerDayTypes'\n\nexport const partnerDayTypes = {\n namespaced: true as true,\n state: partnerDayTypesState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardPartnerPhoneTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerPhoneTypeID'\nimport { ActionsImpl } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrievePartnerPhoneTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions: ActionTree, RootState> &\n ActionsImpl = {\n ...generic.actions,\n}\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'partnerPhoneTypes'\n\nexport const partnerPhoneTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardPartnerPreferredContactMethodTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerPreferredContactMethodTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrievePartnerPreferredContactMethods\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree<\n genericUpwardTypes.GenericTypeState,\n RootState\n> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree<\n genericUpwardTypes.GenericTypeState\n> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'partnerPreferredContactMethodTypes'\n\nexport const partnerPreferredContactMethodTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardPartnerPreferredTimeOfDayTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerPreferredTimeOfDayTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrievePartnerPreferredTimesOfDay\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree<\n genericUpwardTypes.GenericTypeState,\n RootState\n> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'partnerPreferredTimeOfDayTypes'\n\nexport const partnerPreferredTimeOfDayTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardPartnerRoleTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerRoleTypeID'\nimport { ActionsImpl } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrievePartnerRoles\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions: ActionTree, RootState> &\n ActionsImpl = {\n ...generic.actions,\n}\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'partnerRoleTypes'\n\nexport const partnerRoleTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { defineGetters, defineMutations } from 'direct-vuex'\ninterface CreationParametersState {\n opportunityType: string | null\n leagueType: string | null\n}\n\nconst creationParametersState: CreationParametersState = {\n opportunityType: null,\n leagueType: null,\n}\n\nexport enum getterNames {\n opportunityType = 'opportunityType',\n leagueType = 'leagueType',\n}\n\nconst getterTree = defineGetters()({\n opportunityType: (state) => {\n return state.opportunityType\n },\n leagueType: (state) => {\n return state.leagueType\n },\n})\n\nexport enum mutationNames {\n setOpportunityType = 'setOpportunityType',\n setleagueType = 'setLeagueType',\n}\n\nconst mutations = defineMutations()({\n setOpportunityType(state, { opportunityType }: { opportunityType: string | null }) {\n state.opportunityType = opportunityType\n },\n setLeagueType(state, { leagueType }: { leagueType: string | null }) {\n state.leagueType = leagueType\n },\n})\n\nexport const namespace = 'creationParameters'\n\nexport const creationParameters = {\n namespaced: true as true,\n state: creationParametersState,\n getters: getterTree,\n mutations,\n}\n","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardOrderStatusTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardOrderStatusTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveReturnStatusTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'returnStatusTypes'\n\nexport const returnStatusTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardPositionTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPositionTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrievePositionTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'positionTypes'\n\nexport const positionTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","/**\n * Store module used to track state shared between the many components that\n * make up the stepper used to select products. This is for managing the display\n * state of the components. Data received/sent to API is in productOfferingConfig.\n */\n\nimport { defineGetters, defineMutations } from 'direct-vuex'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport { ProdConfigTypes } from '@/lib/common/ProdConfigTypes'\n\ninterface ProductFlowState {\n viewedSteps: string[]\n prodConfigType: ProdConfigTypes | null // League or Estimate\n isNewProdConfig: boolean | null\n steps: string[]\n productOfferingLoading: boolean\n currentProgramType: UpwardProgramTypeID | null\n\n //ProductSetup\n currentProductSetupStep: number\n maxTouchedProductSetupStep: number\n\n //Kit1\n currentParticipantKit1Step: number\n maxTouchedParticipantKit1Step: number\n\n //Kit2\n currentParticipantKit2Step: number\n maxTouchedParticipantKit2Step: number\n}\n\nconst initState = (): ProductFlowState => {\n return {\n viewedSteps: [],\n prodConfigType: null,\n isNewProdConfig: null,\n steps: [],\n productOfferingLoading: true,\n currentProgramType: null,\n\n //ProductSetup\n currentParticipantKit1Step: 1,\n maxTouchedParticipantKit1Step: 1,\n\n //Kit1\n currentParticipantKit2Step: 1,\n maxTouchedParticipantKit2Step: 1,\n\n //Kit2\n currentProductSetupStep: 1,\n maxTouchedProductSetupStep: 1,\n }\n}\n\nconst productFlowState = initState()\n\nconst getterTree = defineGetters()({\n currentProductSetupStep: (state) => {\n return state.currentProductSetupStep\n },\n maxTouchedProductSetupStep: (state) => {\n return state.maxTouchedProductSetupStep\n },\n\n currentParticipantKit1Step: (state) => {\n return state.currentParticipantKit1Step\n },\n maxTouchedParticipantKit1Step: (state) => {\n return state.maxTouchedParticipantKit1Step\n },\n\n currentParticipantKit2Step: (state) => {\n return state.currentParticipantKit2Step\n },\n maxTouchedParticipantKit2Step: (state) => {\n return state.maxTouchedParticipantKit2Step\n },\n\n viewedSteps: (state) => {\n return state.viewedSteps\n },\n prodConfigType: (state) => {\n return state.prodConfigType\n },\n isNewProdConfig: (state) => {\n return state.isNewProdConfig\n },\n steps: (state) => {\n return state.steps\n },\n productOfferingLoading: (state) => {\n return state.productOfferingLoading\n },\n currentProgramType: (state) => {\n return state.currentProgramType\n },\n currentProgramTypeId: (state) => {\n return state.currentProgramType ? state.currentProgramType.id : null\n },\n currentProgramUpwardTypeId: (state) => {\n return state.currentProgramType ? state.currentProgramType.upwardTypeID : null\n },\n})\n\nconst mutations = defineMutations()({\n setCurrentProductSetupStep(state, { step }: { step: number }) {\n state.currentProductSetupStep = step\n },\n setMaxTouchedProductSetupStep(state, { step }: { step: number }) {\n state.maxTouchedProductSetupStep = step\n },\n\n setCurrentParticipantKit1Step(state, { step }: { step: number }) {\n state.currentParticipantKit1Step = step\n },\n setMaxTouchedParticipantKit1Step(state, { step }: { step: number }) {\n state.maxTouchedParticipantKit1Step = step\n },\n\n setCurrentParticipantKit2Step(state, { step }: { step: number }) {\n state.currentParticipantKit2Step = step\n },\n setMaxTouchedParticipantKit2Step(state, { step }: { step: number }) {\n state.maxTouchedParticipantKit2Step = step\n },\n setProdConfigType(state, { type }: { type: ProdConfigTypes }) {\n state.prodConfigType = type\n },\n setIsNewProdConfig(state, { isNew }: { isNew: boolean }) {\n state.isNewProdConfig = isNew\n },\n setStepList(state, { stepList }: { stepList: string[] }) {\n state.steps = stepList\n },\n addViewedStep(state, { step }: { step: string }) {\n state.viewedSteps.push(step)\n state.viewedSteps = [...new Set(state.viewedSteps)]\n },\n setProductOfferingLoading(state, { loading }: { loading: boolean }) {\n state.productOfferingLoading = loading\n },\n setCurrentTypeProgram(state, { program }: { program: UpwardProgramTypeID }) {\n state.currentProgramType = program\n },\n clear(state) {\n Object.assign(state, initState())\n },\n})\n\nexport const namespace = 'productFlow'\n\nexport const productFlow = {\n namespaced: true as true,\n state: productFlowState,\n getters: getterTree,\n mutations,\n}\n","import { defineGetters, defineActions, defineMutations } from 'direct-vuex'\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\nimport productOfferingClient from '@/clients/productOfferingClient'\nimport { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail'\nimport { OfferingOptionType } from '@/lib/support/models/UpwardTypes/OfferingOptionType'\nimport { TypeProductOption } from '@/lib/support/models/UpwardTypes/TypeProductOption'\nimport { getEmptySavedProductOfferingConfigDetail } from '@/lib/support/models/SavedProductOfferingConfigDetail/SavedProductOfferingConfigDetail'\nimport { SavedProductOfferingConfig } from '@/GeneratedTypes/SavedProductOfferingConfig'\nimport { ProductOfferingStartupProducts } from '@/models/ProductOfferingConfig/ProductOfferingStartupProducts'\nimport { SavedProductOfferingConfigStartupOrderProduct } from '@/GeneratedTypes/SavedProductOfferingConfigStartupOrderProduct'\nimport { SavedProductOfferingConfigGenderGrade } from 'src/GeneratedTypes/SavedProductOfferingConfigGenderGrade'\nimport { OfferingsByProgram } from '@/components/ProductFlow/models/OfferingsByProgram'\nimport { cloneDeep } from 'lodash'\nimport { ProductCategoryEnum } from '@/lib/common/LeagueProductCategories'\nimport { ProductOfferingCategoryInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingCategoryInfo'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport store from '@/store'\n\ninterface ProductOfferingState {\n productOfferingStartupProducts: ProductOfferingStartupProducts\n detailsStartupOrder: SavedProductOfferingConfigStartupOrderProduct[]\n productOfferingConfig: SavedProductOfferingConfig\n childProductsLoadedCount: number\n initialProductFlowLoadingComplete: boolean\n offeringsByProgram: OfferingsByProgram[]\n productCatalogs: ProductOfferingInfo[] // all categories from the BE\n displayableProductCatalogs: ProductOfferingInfo[] // categories visible in the UI\n selectedProductOfferings: ProductOfferingInfo[]\n selectedProductDetails: SavedProductOfferingConfigDetail[]\n configList: SavedProductOfferingConfig[] | null\n}\n\nconst initState = (): ProductOfferingState => {\n return {\n productOfferingStartupProducts: {} as ProductOfferingStartupProducts,\n detailsStartupOrder: [] as SavedProductOfferingConfigStartupOrderProduct[],\n productOfferingConfig: {} as SavedProductOfferingConfig,\n initialProductFlowLoadingComplete: false,\n childProductsLoadedCount: 1,\n offeringsByProgram: [] as OfferingsByProgram[],\n productCatalogs: [] as ProductOfferingInfo[],\n displayableProductCatalogs: [] as ProductOfferingInfo[],\n selectedProductOfferings: [] as ProductOfferingInfo[],\n selectedProductDetails: [] as SavedProductOfferingConfigDetail[],\n configList: [] as SavedProductOfferingConfig[],\n }\n}\n\nconst productOfferingState = initState()\n\nexport enum getterNames {\n availableProductGroups = 'availableProductGroups',\n availableStartupProducts = 'availableStartupProducts',\n productOfferingDetails = 'productOfferingDetails',\n productOfferingConfig = 'productOfferingConfig',\n selectedProductOfferingConfig = 'selectedProductOfferingConfig',\n pocStarterOrderItems = 'pocStarterOrderItems',\n detailsStartupOrder = 'detailsStartupOrder',\n hasAlertedChanges = 'hasAlertedChanges',\n childProductsLoadedCount = 'childProductsLoadedCount',\n initialProductFlowLoadingComplete = 'initialProductFlowLoadingComplete',\n detailsSport = 'detailsSport',\n detailsCheer = 'detailsCheer',\n\n offeringsByProgram = 'offeringsByProgram',\n selectedProductOfferings = 'selectedProductOfferings',\n productCatalogs = 'productCatalogs',\n displayableProductCatalogs = 'displayableProductCatalogs',\n selectedProductDetails = 'selectedProductDetails',\n offeringProgramTypes = 'offeringProgramTypes',\n configList = 'configList',\n}\n\nconst getterTree = defineGetters()({\n [getterNames.availableProductGroups]: (state) => state.productOfferingStartupProducts.productOffering,\n [getterNames.availableStartupProducts]: (state) =>\n state.productOfferingStartupProducts.startupOrderProducts,\n [getterNames.productOfferingConfig]: (state) => state.productOfferingConfig,\n [getterNames.detailsStartupOrder]: (state) => state.detailsStartupOrder,\n [getterNames.pocStarterOrderItems]: (state) => state.productOfferingConfig.startupOrderProducts,\n\n /* Assemble all the pieces into a complete productOfferingConfig */\n [getterNames.selectedProductOfferingConfig]: () => buildSavedProductOfferingConfig(),\n\n [getterNames.childProductsLoadedCount]: (state) => state.childProductsLoadedCount,\n [getterNames.offeringsByProgram]: (state) => state.offeringsByProgram,\n [getterNames.initialProductFlowLoadingComplete]: (state) => state.initialProductFlowLoadingComplete,\n [getterNames.productCatalogs]: (state) => state.productCatalogs,\n [getterNames.displayableProductCatalogs]: (state) => state.displayableProductCatalogs,\n [getterNames.selectedProductOfferings]: (state) => state.selectedProductOfferings,\n [getterNames.selectedProductDetails]: (state) => state.selectedProductDetails,\n [getterNames.offeringProgramTypes]: (state) => {\n return getOfferingProgramTypes(state.productCatalogs)\n },\n [getterNames.configList]: (state) => state.configList,\n})\n\nexport enum mutationNames {\n setProductOfferingStartupProducts = 'setProductOfferingStartupProducts',\n setDetailsOnSavedProductOffering = 'setDetailsOnSavedProductOffering',\n clear = 'clear',\n setOfferingId = 'setOfferingId',\n setProductOfferingConfig = 'setProductOfferingConfig',\n setPOTypeLeagueID = 'setPOTypeLeagueID',\n setAccountNumber = 'setAccountNumber',\n setDetailsStartupOrders = 'setDetailsStartupOrders',\n setFirstPracticeDateEstimate = 'setFirstPracticeDateEstimate',\n setGradeGender = 'setGradeGender',\n setHasAlertedChanges = 'setHasAlertedChanges',\n incrementChildProductsLoadedCount = 'incrementChildProductsLoadedCount',\n setInitialProductFlowLoadingComplete = 'setInitialProductFlowLoadingComplete',\n\n setOfferingByProgram = 'setOfferingByProgarm',\n setSelectedProductOfferings = 'setSelectedProductOfferings',\n setProductCatalog = 'setProductCatalog',\n setSelectedProductDetails = 'setSelectedProductDetails',\n setSelectedProductDetailsByGroup = 'setSelectedProductDetailsByGroup',\n removeFromSelectedProductDetailByOfferingId = 'removeFromSelectedProductDetailByOfferingId',\n clearSelectedProductDetails = 'clearSelectedProductDetails',\n setDisplayableCatalogs = 'setDisplayableCatalogs',\n setConfigList = 'setConfigList',\n}\n\nconst mutations = defineMutations()({\n [mutationNames.setProductOfferingStartupProducts](\n state,\n { item }: { item: ProductOfferingStartupProducts }\n ) {\n state.productOfferingStartupProducts = item\n },\n [mutationNames.setProductOfferingConfig](state, { item }: { item: SavedProductOfferingConfig }) {\n state.productOfferingConfig = item\n },\n [mutationNames.setInitialProductFlowLoadingComplete](state, { status }: { status: boolean }) {\n state.initialProductFlowLoadingComplete = status\n },\n [mutationNames.setPOTypeLeagueID](state, { id }: { id: string }) {\n state.productOfferingConfig.typeLeagueID = id\n },\n [mutationNames.setFirstPracticeDateEstimate](\n state,\n { firstPracticeDateEstimate }: { firstPracticeDateEstimate: Date }\n ) {\n state.productOfferingConfig.firstPracticeDateEstimate = firstPracticeDateEstimate\n },\n [mutationNames.setGradeGender](\n state,\n { gradeGenders }: { gradeGenders: SavedProductOfferingConfigGenderGrade[] }\n ) {\n state.productOfferingConfig.gradesByGender = gradeGenders\n },\n [mutationNames.setOfferingId](state, { id }: { id: number }) {\n state.productOfferingConfig.id = id\n },\n [mutationNames.setAccountNumber](state, { id }: { id: string }) {\n state.productOfferingConfig.accountNumber = id\n },\n [mutationNames.incrementChildProductsLoadedCount](state) {\n state.childProductsLoadedCount++\n },\n [mutationNames.setDetailsStartupOrders](\n state,\n { details }: { details: SavedProductOfferingConfigStartupOrderProduct[] }\n ) {\n state.detailsStartupOrder = details\n },\n [mutationNames.clear](state) {\n Object.assign(state, initState())\n },\n [mutationNames.setDetailsOnSavedProductOffering](\n state,\n { details }: { details: SavedProductOfferingConfigDetail[] }\n ) {\n state.productOfferingConfig.details = details\n },\n\n [mutationNames.setOfferingByProgram](\n state,\n { offeringsByProgram }: { offeringsByProgram: OfferingsByProgram[] }\n ) {\n state.offeringsByProgram = offeringsByProgram\n },\n [mutationNames.setSelectedProductOfferings](\n state,\n { selectedOffering }: { selectedOffering: ProductOfferingInfo }\n ) {\n //remove old offering of this program type (aka cheer or not cheer) from selectedProductOfferings\n const cleanedOfferings = state.selectedProductOfferings.filter(\n (o) => o.isCheer != selectedOffering.isCheer\n )\n //add the incoming offering\n cleanedOfferings.push(selectedOffering)\n state.selectedProductOfferings = cleanedOfferings\n },\n [mutationNames.removeFromSelectedProductDetailByOfferingId](\n state,\n { selectedOffering }: { selectedOffering: ProductOfferingInfo }\n ) {\n removeOldDetails(state, selectedOffering)\n },\n [mutationNames.setProductCatalog](state, { productCatalog }: { productCatalog: ProductOfferingInfo }) {\n const catalog = cloneDeep(productCatalog)\n const catalogs = state.productCatalogs.filter((p) => p.typeProgramID != catalog.typeProgramID)\n catalogs.push(catalog)\n state.productCatalogs = catalogs\n },\n [mutationNames.setDisplayableCatalogs](state, { productCatalog }: { productCatalog: ProductOfferingInfo }) {\n const catalog = cloneDeep(productCatalog)\n //remove unnecessary categories\n if (catalog.categories) {\n catalog.categories = catalog.categories.filter(displayableCategoryFilter).filter(tierDiscoundFilter)\n }\n // remove this catalog if it already exists\n const catalogs = state.displayableProductCatalogs.filter((p) => p.typeProgramID != catalog.typeProgramID)\n //add the clean catalog\n catalogs.push(catalog)\n state.displayableProductCatalogs = catalogs\n },\n [mutationNames.setSelectedProductDetails](\n state,\n { productDetails }: { productDetails: SavedProductOfferingConfigDetail[] }\n ) {\n setSelectedProducts(state, null, productDetails)\n },\n [mutationNames.setSelectedProductDetailsByGroup](\n state,\n { productDetails }: { productDetails: { groupID: number; details: SavedProductOfferingConfigDetail[] } }\n ) {\n setSelectedProducts(state, productDetails.groupID, productDetails.details)\n },\n [mutationNames.setConfigList](state, { configList }: { configList: SavedProductOfferingConfig[] }) {\n state.configList = configList\n },\n})\n\nfunction setSelectedProducts(\n state: ProductOfferingState,\n groupID: number | null,\n productDetails: SavedProductOfferingConfigDetail[]\n) {\n if (!productDetails.length) return\n\n const productOfferingId = productDetails[0].productOfferingID\n const categoryId = productDetails[0].categoryID\n const categories = state.selectedProductDetails.filter(\n (p) => !(p.categoryID == categoryId && p.productOfferingID == productOfferingId)\n )\n\n if (groupID && groupID > 0) {\n //also add in the products from this cateogry that are NOT in this group (yes this is ugly)\n const category = state.productCatalogs\n .find((x) => x.id == productOfferingId)\n ?.categories?.find((c) => c.categoryID == categoryId)\n if (category) {\n category.groups?.forEach((g) => {\n if (g.groupID != groupID) {\n category.products?.forEach((p) => {\n if (p.groupID != groupID) {\n const groupDetails = state.selectedProductDetails.filter(\n (d) =>\n d.categoryID == categoryId &&\n d.productOfferingID == productOfferingId &&\n d.productID == p.productID\n )\n groupDetails.forEach((gd) => categories.push(gd))\n }\n })\n }\n })\n }\n }\n\n productDetails.forEach((pd) => {\n if (pd.productID) {\n categories.push(pd)\n }\n })\n state.selectedProductDetails = categories\n}\n\nfunction removeOldDetails(state: ProductOfferingState, selectedOffering: ProductOfferingInfo) {\n if (!selectedOffering) return\n //get the existing offering that matches this program type (aka cheer or not cheer) in selectedProductOfferings\n const oldOffering = state.selectedProductOfferings.find((o) => o.isCheer == selectedOffering.isCheer)\n //remove any details related to the old offering\n const details = cloneDeep(state.selectedProductDetails)\n if (oldOffering) {\n const cleanDetails = details.filter((d) => d.productOfferingID != oldOffering.id)\n state.selectedProductDetails = cleanDetails\n }\n}\n\nexport enum actionNames {\n fetchTopLevelProducts = 'fetchTopLevelProducts',\n fetchChildOfferings = 'fetchChildOfferings',\n fetchProductOfferingConfig = 'fetchProductOfferingConfig',\n upsertOfferings = 'upsertOfferings',\n reset = 'reset',\n fetchConfigList = 'fetchConfigList',\n}\n\nconst actions = defineActions({\n async [actionNames.fetchTopLevelProducts](\n { commit },\n {\n accountNumber,\n leagueType,\n firstPracticeDate,\n }: { accountNumber: string; leagueType: string; firstPracticeDate: Date | null }\n ): Promise {\n const result = await productOfferingClient.retrieveTopLevelProducts(\n accountNumber,\n leagueType,\n firstPracticeDate\n )\n\n if (result) {\n commit(mutationNames.setProductOfferingStartupProducts, { item: result })\n return result\n }\n },\n\n async [actionNames.fetchChildOfferings](\n { commit },\n { id }: { id: number }\n ): Promise {\n const result = await productOfferingClient.retrieveChildOfferings(id)\n\n if (result) {\n commit(mutationNames.setProductCatalog, { productCatalog: result })\n commit(mutationNames.setDisplayableCatalogs, { productCatalog: result })\n commit(mutationNames.incrementChildProductsLoadedCount)\n\n return result\n }\n },\n async [actionNames.fetchProductOfferingConfig](\n { commit },\n { configId }: { configId: string }\n ): Promise {\n const result = await productOfferingClient.retrieveProductOfferingConfig(configId)\n\n if (result) {\n commit(mutationNames.setProductOfferingConfig, { item: result })\n return result\n }\n },\n async [actionNames.upsertOfferings]({ commit }): Promise {\n const result = await productOfferingClient.upsertOffering(buildSavedProductOfferingConfig())\n\n if (result) {\n if (result.data) commit(mutationNames.setOfferingId, { id: result.data.id })\n return result.data\n }\n return null\n },\n [actionNames.reset]({ commit }): void {\n commit(mutationNames.clear)\n },\n async [actionNames.fetchConfigList](\n { commit },\n { firstAccountNumber }: { firstAccountNumber: string }\n ): Promise {\n const result = await productOfferingClient.retrieveProductOfferingConfigList(firstAccountNumber, '')\n\n //Only show last 5 configs. (Items sorted by API)\n commit(mutationNames.setConfigList, { configList: result })\n return result\n },\n})\n\nfunction buildSavedProductOfferingConfig() {\n const poc = cloneDeep(productOfferingState.productOfferingConfig)\n if (productOfferingState.selectedProductOfferings.length) {\n poc.details = buildSavedProductOfferingConfigDetails()\n poc.typeProductGroupID = productOfferingState.selectedProductOfferings[0].typeProductGroupID\n poc.startupOrderProducts = cloneDeep(productOfferingState.detailsStartupOrder)\n }\n return poc\n}\n\nfunction buildSavedProductOfferingConfigDetails() {\n const autoIncludes = getAutoIncludes()\n const details = cloneDeep(productOfferingState.selectedProductDetails)\n return [...autoIncludes, ...details]\n}\n\n/*\n * The api requires that products in the autoinclude categories be converted\n * to SavedProductOfferingConfigDetail and added to the product config when saved\n */\nfunction getAutoIncludes(): SavedProductOfferingConfigDetail[] {\n const all = [] as SavedProductOfferingConfigDetail[]\n\n //get all product catalogs\n const catalogs = cloneDeep(productOfferingState.productCatalogs)\n catalogs.forEach((pc) => {\n //for each category in a catalog\n pc.categories?.forEach((cat) => {\n //if the category is AUTOINCLUDE\n if (cat.typeProductOfferingOptionID === OfferingOptionType.AUTOINCLUDE) {\n //foreach product in an AUTOINCLUDE category\n cat.products?.forEach((p) => {\n // convert from ProductOfferingProductInfo to SavedProductOfferingConfigDetail\n all.push({\n ...getEmptySavedProductOfferingConfigDetail(),\n productOfferingID: pc.id,\n categoryID: cat.categoryID,\n productID: p.productID,\n typeProductOptionID: TypeProductOption.INCLUDED,\n } as SavedProductOfferingConfigDetail)\n })\n }\n })\n })\n return all\n}\n\n/*\n * Displayable Category Filters\n */\n\nfunction displayableCategoryFilter(c: ProductOfferingCategoryInfo) {\n return (\n c.categoryID != ProductCategoryEnum.AUTOINCLUDE &&\n c.categoryID != ProductCategoryEnum.UPWARD_FEES &&\n c.categoryID != ProductCategoryEnum.UPWARD_DISCOUNT\n )\n}\n\nfunction tierDiscoundFilter(c: ProductOfferingCategoryInfo) {\n if (!c.tierRestriction) return true\n const partner = store.getters.partners.partnerInfo\n if (partner && partner.upwardTierID === c.tierRestriction) return true\n return false\n}\n\nfunction getOfferingProgramTypes(items: ProductOfferingInfo[]): UpwardProgramTypeID[] {\n const retval: UpwardProgramTypeID[] = []\n items.forEach((x) => {\n const prog = store.getters.programTypes.byUpwardTypeId(x.typeProgramID)\n if (prog && !retval.some((r) => r.id == prog.id)) {\n retval.push(prog)\n }\n })\n return retval\n}\n\nexport const namespace = 'productOfferings'\n\nexport const productOfferings = {\n namespaced: true as true,\n state: productOfferingState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardGPOrderTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGPOrderTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveGPOrderTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'gpOrderTypes'\n\nexport const gpOrderTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardRelationshipTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardRelationshipTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveRelationshipTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'relationshipTypes'\n\nexport const relationshipTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { defineActions, defineGetters, defineMutations } from 'direct-vuex'\nimport { moduleActionContext } from '@/store/index'\nimport {\n getEmptyXLeagueOrderDetailProduct,\n LeagueOrderState,\n LOSStates,\n newLOS,\n replaceProduct,\n setProductInPlayers,\n setProductSizeInCoaches,\n SizeAffectsEnum,\n SizeUpdatedPayload,\n} from '@/lib/support/store/leagueOrder/leagueOrderState'\nimport ordersClient, { SizeTypeEnum, ValidateLeagueOrderShippingPayload } from '@/clients/ordersClient'\nimport { xLeagueOrderDetail, xLeagueOrderDetailProduct } from '@/GeneratedTypes/xOrder/xStartupOrder'\nimport { PlayerMissingSize } from '@/models/Order/PlayerMissingSize'\nimport { cloneDeep } from 'lodash'\nimport { isCheerProgram } from '@/lib/support/models/LeagueProgram/data'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport { getEmptyXStartupOrderExt } from '@/lib/support/models/GeneratedTypes/xOrders/xStartupOrderExt'\nimport { setProduct } from '@/lib/support/store/orders/operations'\nimport { makeOrderLine, OrderProductLine } from '@/models/Order/OrderProduct'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { getEmptyOrderProduct } from '@/lib/support/models/GeneratedTypes/xOrders/xOrderProduct'\nimport { PendingOrderAdditionalProductInfo } from '@/GeneratedTypes/ListInfo/PendingOrderAdditionalProductInfo'\n\ninterface LeagueOrderStateRootInterface {\n los: LeagueOrderState\n}\n\nconst orderState: LeagueOrderStateRootInterface = {\n los: newLOS('', ['']),\n}\n\nexport enum getterNames {\n root = 'root',\n}\n\n/*\nclass LeagueOrderRuntimeException extends RuntimeException {\n name = 'Order Problem'\n}\n*/\nconst getterTree = defineGetters()({ root: (state) => state.los })\n\nexport enum mutationNames {\n setOrderStatus = 'setOrderStatus',\n setPrograms = 'setPrograms',\n eraseState = 'eraseState',\n setMissingSizing = 'setMissingSizing',\n setMissingVolunteerSizing = 'setMissingVolunteerSizing',\n setParticipantProductLoading = 'setParticipantProductLoading',\n setProduct = 'setProduct',\n setLoading = 'setLoading',\n setValidated = 'setValidated',\n incrementDoNotOrderWarningCount = 'incrementDoNotOrderWarningCount',\n incrementSkipThisOrderWarningCount = 'incrementSkipThisOrderWarningCount',\n setPendingAddOnItems = 'setPendingAddOnItems',\n addPendingAddOnItems = 'addPendingAddOnItems',\n}\n\n/**\n * Sets program sizing for the volunteer or player sizing using the first-is-sport rule\n * @param sizingArr\n * @param program\n * @param sizing\n */\nfunction setProgramSizing({\n sizingArr,\n program,\n sizing,\n}: {\n sizingArr: PlayerMissingSize[][]\n program: string\n sizing: PlayerMissingSize[]\n}) {\n const newsizing = cloneDeep(sizing)\n if (isCheerProgram(program)) {\n if (sizingArr.length > 1) {\n sizingArr.splice(1, 1, newsizing)\n } else {\n sizingArr.push(newsizing)\n }\n } //sport program is index 0\n else {\n sizingArr.splice(0, 1, newsizing)\n }\n}\n\nconst mutations = defineMutations()({\n eraseState(state) {\n state.los = newLOS('', [''])\n },\n /**\n * Clear out the old orders detail and zero out sales tax and shipping.\n * @param state\n * @param status\n */\n setOrderStatus(state, status: xLeagueOrderDetail) {\n const filterbyprogram = (program: string) =>\n state.los.orderStatus.filter((x) => x.typeProgramID != program)\n //prune state if initialized with nothing-values\n state.los.orderStatus = filterbyprogram('')\n state.los.orderStatus = filterbyprogram(status.typeProgramID)\n\n state.los.orderStatus.push(cloneDeep(status))\n },\n setLoading(state, { loading }: { loading: boolean }) {\n state.los.loading = loading\n },\n setPendingAddOnItems(state, { items }: { items: PendingOrderAdditionalProductInfo[] }) {\n state.los.pendingAddOnItems = items\n },\n addPendingAddOnItems(state, { item }: { item: PendingOrderAdditionalProductInfo }) {\n state.los.pendingAddOnItems.push(item)\n },\n setPrograms(state, { programs }: { programs: string[] }) {\n state.los.programs = cloneDeep(programs)\n },\n incrementDoNotOrderWarningCount(state) {\n state.los.doNotOrderWarningCount = state.los.doNotOrderWarningCount + 1\n },\n incrementSkipThisOrderWarningCount(state) {\n state.los.skipThisOrderWarningCount = state.los.skipThisOrderWarningCount + 1\n },\n setMissingSizing(state, { program, sizing }: { program: string; sizing: PlayerMissingSize[] }) {\n setProgramSizing({ sizingArr: state.los.sizing, program, sizing })\n },\n setValidated(state, { validated }: { validated: boolean }) {\n state.los.validated = cloneDeep(validated)\n },\n setTemplate(state, { template }: { template: xStartupOrderExt }) {\n state.los.template = cloneDeep(template)\n },\n /**\n * Used to update the current program and step\n * @param state\n * @param currentProgram, sometimes optional\n * @param currentStep, what the UI should reflect\n */\n setCurrentStep(state, { currentProgram, currentStep }: { currentProgram: string; currentStep: LOSStates }) {\n state.los.currentStep = currentStep\n state.los.currentProgram = currentProgram\n },\n\n setParticipantProductLoading(\n state,\n { participantID, productID, loading }: { participantID: number; productID: number; loading: boolean }\n ) {\n const i = state.los.productIndividualPending.indexOf(`${participantID}-${productID}`)\n if (i >= 0) {\n if (!loading) {\n state.los.productIndividualPending.splice(i, 1)\n }\n } else if (loading) {\n state.los.productIndividualPending.push(`${participantID}-${productID}`)\n }\n },\n\n /**\n * takes product size and propagates it through the various places where it is held in state\n * @param state\n * @param participantID\n * @param product\n * @param program\n */\n setProductSize(\n state,\n {\n participantID,\n product,\n program,\n }: { participantID: string; product: xLeagueOrderDetailProduct; program: string }\n ) {\n //first address it in the program.\n const programIndex = state.los.programs.findIndex((x) => x == program)\n if (programIndex >= 0) {\n // replace the missing sizes for players in the program.\n const programreplacement = replaceProduct(state.los.sizing[programIndex], participantID, product)\n if (programreplacement) {\n state.los.sizing[programIndex] = cloneDeep(programreplacement)\n }\n }\n //next in the product sizing for everyone.\n const programStatusIx = state.los.orderStatus.findIndex((x) => x.typeProgramID == program)\n if (programStatusIx >= 0) {\n const newProgram = cloneDeep(state.los.orderStatus[programStatusIx])\n // enter the program, drill down to the team.\n newProgram.divisions.forEach((div) => {\n div.teams.forEach((team) => {\n team.coaches = setProductSizeInCoaches(team.coaches, participantID, product)\n team.players = setProductInPlayers(team.players, participantID, product)\n })\n })\n\n state.los.orderStatus[programStatusIx] = newProgram\n }\n },\n})\n\nexport enum actionNames {\n setOrderParams = 'createOrder',\n sizingUpdate = 'sizingUpdate',\n resetOrder = 'resetOrder',\n validateOrder = 'validateOrder',\n confirmOrder = 'confirmOrder',\n addOrUpdate_AddOnProduct = 'addOrUpdate_AddOnProduct',\n remove_AddOnProduct = 'remove_AddOnProduct',\n}\n\nconst actions = defineActions({\n async sizingUpdate(context, a: SizeUpdatedPayload) {\n const { commit } = ordersActionContext(context)\n commit.setParticipantProductLoading({\n participantID: a.participantID,\n productID: a.product.productID,\n loading: true,\n })\n const sendproduct = {\n ProductID: a.product.productID,\n TypeColorID: a.product.typeColorID,\n TypeSizeID: a.product.typeSizeID,\n Quantity: a.product.quantity,\n DoNotOrder: a.product?.doNotOrder ?? false,\n SkipNextOrder: a.product?.skipNextOrder ?? false,\n }\n try {\n commit.setLoading({ loading: true })\n await ordersClient.setMissingSize(\n a.whoIsUpdated == SizeAffectsEnum.PLAYER ? SizeTypeEnum.PLAYER : SizeTypeEnum.VOLUNTEER,\n a.upwardLeagueID,\n a.program,\n a.participantID,\n [sendproduct]\n )\n commit.setProductSize({\n participantID: a.participantID.toString(),\n program: a.program,\n product: a.product,\n })\n } finally {\n //commit.setParticipantProduct\n commit.setParticipantProductLoading({\n participantID: a.participantID,\n productID: a.product.productID,\n loading: false,\n })\n commit.setLoading({ loading: false })\n }\n },\n /**\n * Specifically set a product that was ordered for an individual to\n * be replaced by another, when quantity is zero it is removed.\n *\n * @param context\n * @param a\n */\n async addToExchange(context, a: SizeUpdatedPayload) {\n const { commit, state } = ordersActionContext(context)\n commit.setParticipantProductLoading({\n participantID: a.participantID,\n productID: a.product.productID,\n loading: true,\n })\n try {\n commit.setLoading({ loading: true })\n\n await ordersClient.updateProductQuantity(\n a.upwardLeagueID,\n a.leagueID,\n\n state.los.template.accountNumber ?? '0',\n {\n ...makeOrderLine(getEmptyOrderProduct(), {\n exchangeCost: 0,\n orderQuantity: a.product.quantity,\n orderFreeQuantity: 0,\n costOffset: 0,\n typeColorID: a.product.typeColorID,\n typeSizeID: a.product.typeSizeID,\n colorDescription: '',\n previouslyOrdered: 0,\n sizeDescription: '',\n }),\n id: a.product.productID,\n individualID: a.participantID,\n orderQuantity: a.product.quantity,\n typeProgramID: a.program,\n jerseyNumber: a.product.jerseyNumber,\n }\n )\n commit.setProductSize({\n participantID: a.participantID.toString(),\n program: a.program,\n product: { ...a.product, replaced: !!a.product.quantity },\n })\n } finally {\n //commit.setParticipantProduct\n commit.setParticipantProductLoading({\n participantID: a.participantID,\n productID: a.product.productID,\n loading: false,\n })\n commit.setLoading({ loading: false })\n }\n },\n /**\n * Remove from exchange list.\n * @param context\n * @param a\n */\n async removeFromExchange(context, a: SizeUpdatedPayload) {\n const { dispatch } = ordersActionContext(context)\n\n const newPayload = cloneDeep(a)\n newPayload.product.quantity = 0\n\n await dispatch.addToExchange(newPayload)\n },\n\n /**\n * Used when the league is simply not set.\n * @param state\n * @param context\n */\n\n async resetOrder(\n context,\n {\n league,\n programs,\n }: {\n league: string\n programs: string[]\n }\n ) {\n const { commit } = ordersActionContext(context)\n commit.eraseState()\n commit.setPrograms({ programs })\n try {\n commit.setLoading({ loading: true })\n const template =\n (await ordersClient.retrieveTemplate(league, OrderTypesEnum.league)) ?? getEmptyXStartupOrderExt()\n\n const pendingProduct = await ordersClient.getPendingProduct(league, template?.accountNumber ?? '0')\n if (pendingProduct) {\n commit.setPendingAddOnItems({ items: pendingProduct })\n }\n\n if (programs?.length) {\n for (const program of programs) {\n const [sizing, os] = await Promise.all([\n ordersClient.getMissingSizes(league, program, SizeTypeEnum.PLAYER),\n ordersClient.getLeagueOrderStatus(league, program),\n ])\n\n commit.setOrderStatus(os)\n commit.setMissingSizing({ program, sizing })\n }\n }\n\n //set sizes sent up from pending additional products.\n // reflect current pending product quantity for add-on items.\n pendingProduct.forEach((product) => {\n if (product.individualID) {\n commit.setProductSize({\n participantID: product.individualID.toString(),\n product: {\n ...getEmptyXLeagueOrderDetailProduct(),\n productID: product.productID,\n quantity: product.quantity,\n doNotOrder: false,\n skipNextOrder: false,\n typeColorID: product.typeColorID ?? '',\n typeSizeID: product.typeSizeID ?? '',\n replaced: true,\n },\n program: product.typeProgramID ?? '',\n })\n }\n })\n\n commit.setTemplate({ template })\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n\n async validateOrder(context, p: ValidateLeagueOrderShippingPayload) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n commit.setValidated({ validated: false })\n const rv = await ordersClient.validateOrderShipping(p)\n\n if (rv) {\n commit.setTemplate({\n template: cloneDeep({\n ...state.los.template,\n shippingInfo: rv.shippingInfo,\n notes: rv.notes,\n orderLines: rv.orderLines,\n purchaseOrderNumber: rv.purchaseOrderNumber,\n totalPlayerCount: rv.totalPlayerCount,\n salesTax: rv.salesTax,\n longevityDiscountAmount: rv.longevityDiscountAmount,\n totalOrderedProductAmount: rv.totalOrderedProductAmount,\n upwardOrderID: rv.upwardOrderID,\n } as xStartupOrderExt),\n })\n commit.setValidated({ validated: true })\n }\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n\n async confirmOrder(context, p: ValidateLeagueOrderShippingPayload) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n commit.setValidated({ validated: false })\n const rv = await ordersClient.confirmOrder(p)\n if (rv) {\n commit.setTemplate({\n template: cloneDeep({\n ...state.los.template,\n shippingInfo: rv.shippingInfo,\n notes: rv.notes,\n purchaseOrderNumber: rv.purchaseOrderNumber,\n totalParticipantCount: rv.totalParticipantCount,\n salesTax: rv.salesTax,\n orderLines: rv.orderLines,\n longevityDiscountAmount: rv.longevityDiscountAmount,\n totalOrderedProductAmount: rv.totalOrderedProductAmount,\n upwardOrderID: rv.upwardOrderID,\n clientOrderDate: rv.clientOrderDate,\n } as xStartupOrderExt),\n }) // } )\n commit.setValidated({ validated: true })\n }\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n\n async addProduct(\n context,\n {\n league,\n leagueID,\n account,\n product,\n }: { league: UpwardLeagueIDType; leagueID: number; account: string; product: OrderProductLine }\n ) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n\n await ordersClient.updateProductQuantity(league, leagueID, account, product)\n\n const newProducts = setProduct(cloneDeep(state.los.template.products), {\n productID: product.id,\n sizeID: product.productColorSize.typeSizeID,\n colorID: product.productColorSize.typeColorID,\n quantity: product.orderQuantity,\n quantityFree: 0,\n })\n\n commit.setTemplate({\n template: cloneDeep({\n ...state.los.template,\n products: newProducts,\n } as xStartupOrderExt),\n }) // } )\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n async addOrUpdate_AddOnProduct(\n context,\n { upwId, product }: { upwId: string; product: PendingOrderAdditionalProductInfo }\n ) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n const exist = state.los.pendingAddOnItems.find((p) => findExistingProduct(p, product))\n let newProduct!: PendingOrderAdditionalProductInfo\n\n if (exist) {\n // **** update existing add-on product ****\n product.id = exist.id\n newProduct = await ordersClient.updateAddOnProduct(upwId, product)\n\n //remove existing add-on product\n const clean = cloneDeep(state.los.pendingAddOnItems).filter((p) => !findExistingProduct(p, product))\n commit.setPendingAddOnItems({ items: clean })\n } else {\n // **** add new add-on product ****\n newProduct = await ordersClient.newAddOnProduct(product)\n }\n commit.addPendingAddOnItems({ item: newProduct })\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n async remove_AddOnProduct(\n context,\n { upwId, product }: { upwId: string; product: PendingOrderAdditionalProductInfo }\n ) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n\n //remove from store\n const clean = cloneDeep(state.los.pendingAddOnItems).filter((p) => !findExistingProduct(p, product))\n commit.setPendingAddOnItems({ items: clean })\n\n //DELETE\n await ordersClient.deleteProductByIndex(upwId, product.accountNumber ?? '', product.id)\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n})\n\nfunction findExistingProduct(\n old: PendingOrderAdditionalProductInfo,\n newProd: PendingOrderAdditionalProductInfo\n) {\n return (\n old.productID == newProd.productID &&\n old.typeSizeID == newProd.typeSizeID &&\n old.typeColorID == newProd.typeColorID &&\n old.jerseyNumber == newProd.jerseyNumber\n )\n}\n\nexport const namespace = 'leagueOrders'\n\nexport const leagueOrders = {\n namespaced: true as true,\n state: orderState as LeagueOrderStateRootInterface,\n getters: getterTree,\n mutations,\n actions,\n}\n\nconst ordersActionContext = (context: any) => moduleActionContext(context, leagueOrders)\n","import { UpwardRunningCredentials } from '@/models/UpwardRunning/Auth/UpwardRunningCredentials'\nimport { defineGetters, defineActions, defineMutations } from 'direct-vuex'\nimport store from '.'\nimport restServiceUR from '@/services/restServiceUR'\nimport upwardRunningClient from '@/clients/upwardRunningClient'\nimport jsonwebtoken from 'jsonwebtoken'\nimport { UpwardRunningJwtPayload } from '@/models/UpwardRunning/Auth/UpwardRunningJwtPayload'\nimport dayjs from 'dayjs'\n\ninterface UpwardRunningAuthState {\n urCreds: UpwardRunningCredentials | null\n}\n\nconst upwardRunningAuthState: UpwardRunningAuthState = {\n urCreds: null,\n}\n\nexport enum getterNames {\n urCreds = 'urCreds',\n}\n\nconst getterTree = defineGetters()({\n urCreds: (state) =>\n state.urCreds == null || state.urCreds.displayName == '@@_NOT_SUBSCRIBED_@@' ? null : state.urCreds,\n})\n\nexport enum mutationNames {\n setURCreds = 'setURCreds',\n}\n\nconst mutations = defineMutations()({\n setURCreds(state, { creds }: { creds: UpwardRunningCredentials | null }) {\n state.urCreds = creds\n },\n})\n\nexport enum actionNames {\n getURCreds = 'getURCreds',\n}\n\nconst actions = defineActions({\n async getURCreds({ state }): Promise {\n if (state.urCreds == null || dayjs().isAfter(dayjs(state.urCreds.expiration).subtract(10, 'minute'))) {\n await getURCredsFromAPI(store.getters.authorization.userData)\n }\n if (state.urCreds == null || state.urCreds.displayName == '@@_NOT_SUBSCRIBED_@@') {\n return null\n } else {\n return state.urCreds\n }\n },\n})\n\nasync function getURCredsFromAPI(userData: string) {\n store.commit.upwardRunningAuth.setURCreds({ creds: null })\n restServiceUR.setToken(null)\n const urToken = await upwardRunningClient.loginWithLegacyToken(userData)\n if (urToken != null /*&& urToken.hasUpwardRunningSubscription*/) {\n const decodedJwt = jsonwebtoken.decode(urToken.upwrJWToken, { complete: true })\n\n if (decodedJwt != null && typeof decodedJwt !== 'string') {\n const jwtPayload = decodedJwt.payload as UpwardRunningJwtPayload\n console.log('TNT - UR token is good')\n store.commit.upwardRunningAuth.setURCreds({\n creds: {\n displayName: jwtPayload['upwr-name'],\n emailAddress: jwtPayload['upwr-email'],\n expiration: new Date(jwtPayload.exp * 1000),\n activities: jwtPayload['upw-activities'],\n },\n })\n restServiceUR.setToken(urToken.upwrJWToken)\n }\n } else {\n console.log(urToken == null ? 'TNT - token came back null' : 'TNT token came back unsubscribed')\n store.commit.upwardRunningAuth.setURCreds({\n creds: {\n displayName: '@@_NOT_SUBSCRIBED_@@',\n emailAddress: '@@_NO_EMAIL@@',\n expiration: new Date(30 * 60 * 1000),\n activities: '',\n },\n })\n }\n}\n\nexport const namespace = 'upwardRunningAuth'\n\nexport const upwardRunningAuth = {\n namespaced: true as true,\n state: upwardRunningAuthState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardDivisionGameTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardDivisionGameTypeID'\nimport { ActionsImpl } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrievePartnerPhoneTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions: ActionTree, RootState> &\n ActionsImpl = {\n ...generic.actions,\n}\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'divisionGameTypes'\n\nexport const divisionGameTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import Vue from 'vue'\nimport { RootState } from '@/store/rootState'\nimport { ActionsImpl, createDirectStore } from 'direct-vuex'\nimport { orders } from '@/store/orders'\n\nimport { errors } from '@/store/errors'\nimport { authorization } from '@/store/authorization'\nimport { opportunityTypes } from '@/store/opportunityTypes'\nimport { leagueTypes } from '@/store/leagueTypes'\nimport { clinics } from '@/store/clinics'\nimport { connects } from '@/store/connects'\nimport { camps } from '@/store/camps'\nimport { communications } from '@/store/communications'\nimport { leagues } from '@/store/leagues'\nimport { productGroupTypes } from '@/store/productGroupTypes'\nimport { timezoneTypes } from '@/store/timezoneTypes'\nimport { phoneTypes } from '@/store/phoneTypes'\nimport { addressTypes } from '@/store/addressTypes'\nimport { promptToSave } from '@/store/promptToSave'\nimport { facilities } from '@/store/facilities'\nimport { partnerDayTypes } from '@/store/partnerDayTypes'\nimport { partnerPhoneTypes } from '@/store/partnerPhoneTypes'\nimport { partnerPreferredContactMethodTypes } from '@/store/partnerPreferredContactMethodTypes'\nimport { partnerPreferredTimeOfDayTypes } from '@/store/partnerPreferredTimeOfDayTypes'\nimport { partnerRoleTypes } from '@/store/partnerRoleTypes'\nimport { programTypes } from '@/store/programTypes'\nimport { participants } from '@/store/participants'\nimport { partners } from '@/store/partners'\nimport { volunteers } from '@/store/volunteers'\nimport { alerts } from '@/store/alerts'\nimport { sizeTypes } from '@/store/sizeTypes'\nimport { gradeTypes } from '@/store/gradeTypes'\nimport { teams } from '@/store/teams'\nimport { colorTypes } from '@/store/colorTypes'\nimport { returnReasonTypes } from '@/store/returnReasonTypes'\nimport { returnStatusTypes } from '@/store/returnStatusTypes'\nimport { productOfferingProductPackageTypes } from '@/store/productOfferingProductPackageTypes'\nimport { positionTypes } from '@/store/positionTypes'\nimport { paymentTypes } from '@/store/paymentTypes'\nimport { productFlow } from '@/store/ProductFlow'\nimport { creationParameters } from '@/store/creationParameters'\nimport { teamPageAlerts } from '@/store/teamPageAlerts'\nimport { gpOrderTypes } from '@/store/gpOrderTypes'\nimport { relationshipTypes } from '@/store/relationshipTypes'\nimport { divisions } from '@/store/divisions'\nimport { scheduling } from '@/store/scheduling'\nimport { partnerNearByAccounts } from '@/store/partnerNearByAccounts'\nimport { productOfferings } from '@/store/productOffering'\nimport Vuex, { ActionTree, GetterTree, MutationTree } from 'vuex'\nimport { leagueOrders } from '@/store/leagueOrder'\nimport { leagueAbstraction } from '@/store/leagueAbstraction'\nimport { divisionGameTypes } from '@/store/divisionGameTypes'\nimport { leagueScoringTypes } from '@/store/leagueScoringTypes'\nimport { upwardRunning } from '@/store/upwardRunning'\nimport { upwardRunningAuth } from '@/store/upwardRunningAuth'\nimport { upwardRunningOrders } from '@/store/upwardRunningOrders'\nimport { urProductFlow } from '@/store/urProductFlow'\n\nVue.use(Vuex)\n\nexport enum actionNames {\n startTimekeeping = 'startTimekeeping',\n}\n\nexport enum getterNames {\n now = 'now',\n userLastSeen = 'userLastSeen',\n userInactiveMS = 'userInactiveMS',\n}\nconst actions: ActionTree & ActionsImpl = {\n [actionNames.startTimekeeping]: ({ commit }, payload?: boolean) => {\n if (!payload) setInterval(() => commit('updateTime'), 1000 * 30)\n },\n}\n\nexport enum mutationNames {\n updateTime = 'updateTime',\n updateUserLastSeen = 'updateUserLastSeen',\n}\n\nconst initialState: RootState = {\n now: new Date(),\n userLastSeen: new Date(),\n}\n\nconst mutations: MutationTree = {\n [mutationNames.updateTime]: (state) => {\n state.now = new Date()\n },\n [mutationNames.updateUserLastSeen]: (state) => {\n state.userLastSeen = new Date()\n },\n}\nconst getters: GetterTree = {\n [getterNames.now]: (state) => state.now,\n [getterNames.userLastSeen]: (state) => state.userLastSeen,\n [getterNames.userInactiveMS]: (state) => state.now.getTime() - state.userLastSeen.getTime(),\n}\n\nconst {\n store,\n rootActionContext,\n moduleActionContext,\n rootGetterContext,\n moduleGetterContext,\n} = createDirectStore({\n strict: process.env.NODE_ENV !== 'production',\n state: initialState,\n getters,\n actions,\n mutations,\n modules: {\n addressTypes,\n alerts,\n authorization,\n camps,\n clinics,\n colorTypes,\n communications,\n connects,\n creationParameters,\n divisionGameTypes,\n divisions,\n errors,\n facilities,\n gpOrderTypes,\n gradeTypes,\n leagueAbstraction,\n leagueOrders,\n leagues,\n leagueScoringTypes,\n leagueTypes,\n opportunityTypes,\n orders,\n participants,\n partnerDayTypes,\n partnerNearByAccounts,\n partnerPhoneTypes,\n partnerPreferredContactMethodTypes,\n partnerPreferredTimeOfDayTypes,\n partnerRoleTypes,\n partners,\n paymentTypes,\n phoneTypes,\n positionTypes,\n productFlow,\n productGroupTypes,\n productOfferingProductPackageTypes,\n productOfferings,\n programTypes,\n promptToSave,\n relationshipTypes,\n returnReasonTypes,\n returnStatusTypes,\n scheduling,\n sizeTypes,\n teamPageAlerts,\n teams,\n timezoneTypes,\n upwardRunning,\n upwardRunningAuth,\n upwardRunningOrders,\n urProductFlow,\n volunteers,\n },\n})\n\n// The following exports will be used to enable types in the\n// implementation of actions and getters.\nexport { rootActionContext, moduleActionContext, rootGetterContext, moduleGetterContext }\n\n// export the typed store.\nexport default store\n\n// The following lines enable types in the injected store '$store'.\nexport type AppStore = typeof store\ndeclare module 'vuex' {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n interface Store {\n direct: AppStore\n }\n}\n","import { defineMutations, defineGetters } from 'direct-vuex'\n\nexport interface ProductFlowState {\n viewedSteps: string[]\n isNewProdConfig: boolean | null\n steps: string[]\n productOfferingLoading: boolean\n\n //ProductSetup\n currentProductSetupStep: number\n maxTouchedProductSetupStep: number\n\n //Kit\n currentParticipantKitStep: number\n maxTouchedParticipantKitStep: number\n}\n\nconst initProductFlowState = (): ProductFlowState => {\n return {\n viewedSteps: [],\n isNewProdConfig: null,\n steps: [],\n productOfferingLoading: true,\n currentProductSetupStep: 1,\n maxTouchedProductSetupStep: 1,\n currentParticipantKitStep: 1,\n maxTouchedParticipantKitStep: 1,\n }\n}\n\nconst urProductFlowState = initProductFlowState()\n\nconst getterTree = defineGetters()({\n currentProductSetupStep: (state) => {\n return state.currentProductSetupStep\n },\n maxTouchedProductSetupStep: (state) => {\n return state.maxTouchedProductSetupStep\n },\n\n currentParticipantKitStep: (state) => {\n return state.currentParticipantKitStep\n },\n maxTouchedParticipantKitStep: (state) => {\n return state.maxTouchedParticipantKitStep\n },\n\n viewedSteps: (state) => {\n return state.viewedSteps\n },\n isNewProdConfig: (state) => {\n return state.isNewProdConfig\n },\n steps: (state) => {\n return state.steps\n },\n productOfferingLoading: (state) => {\n return state.productOfferingLoading\n },\n})\n\nconst mutations = defineMutations()({\n setCurrentProductSetupStep(state, { step }: { step: number }) {\n state.currentProductSetupStep = step\n },\n setMaxTouchedProductSetupStep(state, { step }: { step: number }) {\n state.maxTouchedProductSetupStep = step\n },\n\n setCurrentParticipantKitStep(state, { step }: { step: number }) {\n state.currentParticipantKitStep = step\n },\n setMaxTouchedParticipantKitStep(state, { step }: { step: number }) {\n state.maxTouchedParticipantKitStep = step\n },\n setIsNewProdConfig(state, { isNew }: { isNew: boolean }) {\n state.isNewProdConfig = isNew\n },\n setStepList(state, { stepList }: { stepList: string[] }) {\n state.steps = stepList\n },\n addViewedStep(state, { step }: { step: string }) {\n state.viewedSteps.push(step)\n state.viewedSteps = [...new Set(state.viewedSteps)]\n },\n setProductOfferingLoading(state, { loading }: { loading: boolean }) {\n state.productOfferingLoading = loading\n },\n clear(state) {\n Object.assign(state, initProductFlowState())\n },\n})\n\nexport const namespace = 'urProductFlow'\n\nexport const urProductFlow = {\n namespaced: true as true,\n state: urProductFlowState,\n getters: getterTree,\n mutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderDetail.vue?vue&type=style&index=0&id=b6671954&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Index.vue?vue&type=style&index=0&id=ccfe9c7a&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{ 'form-check': _vm.inline, 'form-group': !_vm.inline, 'pl-0': _vm.noIndent }},[_vm._t(\"label\",[(!_vm.inline)?_c('input-label',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"enabled\":_vm.enabled}}):_vm._e()]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],class:{ 'form-control': !_vm.inline },attrs:{\"type\":\"checkbox\",\"required\":_vm.required,\"disabled\":!_vm.enabled,\"id\":_vm.elementId},domProps:{\"checked\":Array.isArray(_vm.internalValue)?_vm._i(_vm.internalValue,null)>-1:(_vm.internalValue)},on:{\"change\":[function($event){var $$a=_vm.internalValue,$$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.internalValue=$$a.concat([$$v]))}else{$$i>-1&&(_vm.internalValue=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.internalValue=$$c}},_vm.handleChange]}}),_vm._t(\"inline-label\",[(_vm.inline)?_c('input-label',{staticClass:\"pl-2\",attrs:{\"label\":_vm.label,\"labelClass\":_vm.labelClass,\"required\":_vm.required,\"enabled\":_vm.enabled,\"input-id\":_vm.elementId}}):_vm._e()]),(_vm.showHelp)?_c('help-icon',{staticClass:\"ml-2\",staticStyle:{\"cursor\":\"pointer\",\"font-size\":\"0.8rem\"},nativeOn:{\"click\":function($event){return _vm.helpClicked($event)}}}):_vm._e()],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\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport uuid from 'uuid'\nimport { HelpIcon } from './Icons'\n\nexport default defineComponent({\n name: 'CheckboxInput',\n props: {\n label: { type: String, default: '', required: false },\n inline: { type: Boolean, default: true, required: false },\n required: { type: Boolean, default: false, required: false },\n value: { type: Boolean, required: true },\n enabled: { type: Boolean, required: false, default: true },\n labelClass: { type: String, required: false },\n showHelp: { type: Boolean, default: false, required: false },\n noIndent: { type: Boolean, required: false, default: false },\n },\n components: {\n InputLabel,\n HelpIcon,\n },\n setup(props, ctx) {\n const guid = uuid.v4()\n\n const internalValue = ref(props.value)\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n function helpClicked() {\n ctx.emit('helpClicked')\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n const elementId = computed(() => `checkbox-${guid}`)\n\n return {\n internalValue,\n handleChange,\n elementId,\n helpClicked,\n }\n },\n})\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!./CheckboxInput.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!./CheckboxInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CheckboxInput.vue?vue&type=template&id=ab499ec6&\"\nimport script from \"./CheckboxInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./CheckboxInput.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","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CoachManager.vue?vue&type=style&index=0&id=05d8e4aa&lang=scss&scoped=true&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TeamToggle.vue?vue&type=style&index=0&id=1ac5f2ce&lang=scss&scoped=true&\"","import { GeneralError } from '@/lib/common/exceptions/GeneralError'\n\nexport class RuntimeException extends GeneralError {\n public isRuntime = true\n public name = 'Runtime Exception'\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductCachePanel.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductStep.vue?vue&type=style&index=0&id=90919e20&lang=scss&scoped=true&\"","import { TeamPageAlertInfo } from '@/GeneratedTypes/ListInfo/TeamPageAlertInfo'\n\nexport const getEmptyTeamPageAlertInfo = () => {\n const retval: TeamPageAlertInfo = {\n id: 0,\n typeAlertMessageID: null,\n typeAlertTargetID: null,\n typeAlertPriorityID: null,\n message: '',\n startDate: null,\n expireDate: null,\n expireViewCount: 0,\n registeredViewCount: 0,\n userCanHide: false,\n userDidHide: false,\n typeProgramID: 'NONE',\n divisionID: 0,\n divisionName: null,\n teamID: 0,\n teamName: null,\n upwardTeamID: '',\n }\n\n return retval\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SquadsSchedule.vue?vue&type=style&index=0&id=23c91662&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SwapCoachAssignment.vue?vue&type=style&index=0&id=9b1a1354&lang=scss&scoped=true&\"","import { defineMutations, defineGetters, defineActions } from 'direct-vuex'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveProgramTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree = defineGetters>()({\n ...generic.getterTree,\n})\n\nconst mutations = defineMutations>()({\n ...generic.mutations,\n})\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'programTypes'\n\nexport const programTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import restService, { RestServiceResult } from '@/services/restService'\nimport { CFormatOrder, xStartupOrderExt, OrderLineRollupInfo } from '@/models/Order/xStartupOrderExt'\nimport { xLeagueOrderDetail, xStartupOrder } from '@/GeneratedTypes/xOrder/xStartupOrder'\nimport { xReturnOrderExt } from '@/models/Order/xReturnOrderExt'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport { ToXStartupOrder } from '@/lib/support/models/GeneratedTypes/xOrders/xStartupOrderExt'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { getEmptyDisplayablePromoCardMedia, PromoCardMedia } from '@/models/PromoCards/PromoCardMedia'\nimport { ParticipantOrderProductInfo } from '@/GeneratedTypes/ListInfo/ParticipantOrderProductInfo'\nimport { OrderInfo } from '@/GeneratedTypes/Order/ListInfo/OrderInfo'\nimport { UpwardSizeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardSizeTypeID'\nimport { PlayerMissingSize } from '@/models/Order/PlayerMissingSize'\nimport { xShippingInfoBase } from '@/GeneratedTypes/xOrder/xShippingInfoBase'\nimport { OrderProductLine } from '@/models/Order/OrderProduct'\nimport { cloneDeep } from 'lodash'\nimport { OrderFindInfo } from '@/GeneratedTypes/Order/ListInfo/OrderFindInfo'\nimport { OrderNoteInfo } from '@/GeneratedTypes/Order/ListInfo/OrderNoteInfo'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\nimport { PendingOrderAdditionalProductInfo } from '@/GeneratedTypes/ListInfo/PendingOrderAdditionalProductInfo'\nimport { PendingReturnOrderProduct } from '@/GeneratedTypes/PendingReturnOrderProduct'\nimport { PendingReturnOrderProductInfo } from '@/GeneratedTypes/ListInfo/PendingReturnOrderProductInfo'\nimport { OrderProduct } from '@/models/Order/OrderProduct'\nimport { ReturnOrderStatus } from '@/models/Order/ReturnOrderStatus'\nimport { OrderXMLEdit } from '@/models/Order/OrderXMLEdit'\n\nconst baseUrl = 'orders/'\n\nclass OrderClientException extends GeneralError {\n name = 'Order Client API Error'\n}\n\nconst getOrderList = async (id: string) => {\n const results = await restService.get(`${baseUrl}${id}`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new OrderClientException('Error in ordersClient.getOrderList')\n }\n}\n\nconst retrieveTemplate = async (id: string, orderType: OrderTypesEnum) => {\n const results = await restService.get(`${baseUrl}${id}/new`, {\n upwardOrderTypeID: orderType.toUpperCase(),\n })\n if (results.isSuccess) {\n return results.data\n } else {\n throw new OrderClientException('Error in ordersClient.retrieveTemplate')\n }\n}\n\nconst verificationDetails = async (id: string, order: xStartupOrderExt) => {\n const convertedOrder = ToXStartupOrder(order)\n const results = await restService.post(\n `${baseUrl}${id}/verificationDetails`,\n convertedOrder\n )\n if (results.isSuccess) {\n return results.data?.model as xStartupOrder\n } else {\n throw new OrderClientException('Error in ordersClient.verificationDetails')\n }\n}\n\nconst createOrder = async (id: string, order: xStartupOrderExt) => {\n const convertedOrder = ToXStartupOrder(order)\n const results = await restService.post(`${baseUrl}${id}`, convertedOrder)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new OrderClientException('Error in ordersClient.createOrder')\n }\n}\n\nconst getPromoCards = async (LeagueID: UpwardLeagueIDType) => {\n const results = await restService.get('pdfmedia/promocard/' + LeagueID)\n if (results.isSuccess) {\n return results.data ?? []\n } else {\n throw new OrderClientException('pdf media collection request')\n }\n}\n\nconst generateRMA = async (leagueID: UpwardLeagueIDType, account: string, note: string | null) => {\n const results = await restService.post(`${baseUrl}${leagueID}/generateRMA`, {\n accountNumber: account,\n notes: note,\n })\n if (results.isSuccess) {\n return results.data ?? ''\n } else {\n throw new OrderClientException('generate RMA request')\n }\n}\n\nconst getRMA = async ({ leagueID, id }: { leagueID: string; id: string }) => {\n const url = `orders/${leagueID}/retrieveRMA/${id}`\n const results = await restService.get(url)\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException(`could not gather RMA information for ${leagueID} and ${id}`)\n}\n\nconst setRMAStatus = async (upwardOrderID: string, status: ReturnOrderStatus) => {\n const url = `orders/returnsOrderStatus/${upwardOrderID}`\n const results = await restService.post(url, status)\n if (results.isSuccess) {\n return true\n }\n throw new OrderClientException(`could not set RMA status for ${upwardOrderID}`)\n}\n\ninterface MediaInfo {\n defaultContent: string\n mediaShellUrl: string\n defaultRegistrationURL: string | null\n}\n\n/**\n * Pulls a promo card template information from the server and builds an\n * empty card.\n * @param LeagueID\n * @return card\n */\nconst getPromoCardTemplate = async (LeagueID: UpwardLeagueIDType) => {\n const card = getEmptyDisplayablePromoCardMedia()\n const text = await restService.get('pdfmedia/mediainfo/' + LeagueID, { escapeString: false })\n if (text.isSuccess) {\n card.upwardleagueID = LeagueID\n card.content = text.data?.defaultContent ?? ''\n card.shellUrl = text.data?.mediaShellUrl ?? ''\n card.defaultRegistrationURL = text.data?.defaultRegistrationURL ?? ''\n return card\n }\n throw new OrderClientException(`trouble getting promo card template for league ${LeagueID}`)\n}\n\nconst getLeagueOrderItems = async (LeagueID: UpwardLeagueIDType) => {\n const t = await restService.get(`${baseUrl}${LeagueID}/products`, {\n upwardOrderTypeID: 'LEAGUEORDER',\n })\n if (t.isSuccess) {\n return t.data\n }\n throw new OrderClientException('could not gather league items required by participant')\n}\n\nconst getOrderHistory = async ({ league, account }: { league?: string; account?: string }) => {\n let url = 'orders/'\n if (league) {\n if (account) {\n url = `orders/${league}?accountNumber=${account}`\n } else {\n url = `orders/${league}`\n }\n } else if (account) {\n url = `orders/account/${account}`\n }\n const results = await restService.get(url)\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException('could not gather order information')\n}\n\nconst releaseFromHold = async (upwardLeagueID: UpwardLeagueIDType, orderID: string, reason: string) => {\n const results = await restService.post(`${baseUrl}${upwardLeagueID}/${orderID}/releaseFromHold`, {\n value: reason,\n })\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException('could not release order')\n}\n\nconst resendToASB = async (upwardLeagueID: UpwardLeagueIDType, orderID: string) => {\n const results = await restService.post(`${baseUrl}${upwardLeagueID}/${orderID}/augustaresend`, {})\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException('could not resend order to Augusta')\n}\n\nexport interface OrderSearchParams {\n upwardOrderID?: string\n accountNumber?: string\n upwardLeagueID?: string\n typeOrderID?: string\n typeOrderStatusID?: string\n sort?: string\n sortDirection?: string\n pageSize?: number\n pageIndex?: number\n}\n\nconst searchOrderHistory = async ({\n upwardOrderID,\n accountNumber,\n upwardLeagueID,\n typeOrderID,\n typeOrderStatusID,\n sort,\n sortDirection,\n pageSize,\n pageIndex,\n}: OrderSearchParams) => {\n const url = 'orders/search'\n\n const results = await restService.post(url, {\n upwardOrderID,\n accountNumber,\n upwardLeagueID,\n typeOrderID,\n typeOrderStatusID,\n pageIndex: pageIndex || 1,\n pageSize: pageSize || 100,\n sort: sort || 'StatusDate',\n sortDirection: sortDirection || 'DESC',\n })\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException('could not gather order information')\n}\n\nconst getOrder = async ({ leagueID, id }: { leagueID: string; id: string }) => {\n const url = `orders/${leagueID}/${id}`\n const results = await restService.get(url, { format: 'c' })\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException(`could not gather order information for ${leagueID} and ${id}`)\n}\n\nconst getOrderRollup = async ({ leagueID, id }: { leagueID: string; id: string }) => {\n const url = `orders/${leagueID}/${id}`\n const results = await restService.get(url, { format: 'r' })\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException(`could not gather order information for ${leagueID} and ${id}`)\n}\n\nconst getOrderInfo = async ({ leagueID, id }: { leagueID: string; id: string }) => {\n const url = `orders/${leagueID}/${id}`\n const results = await restService.get(url, { format: 'i' })\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException(`could not gather order information for ${leagueID} and ${id}`)\n}\n\n/**\n * Save ( or preview ) a promo card\n * @param card - card info\n * @param isPreview - don't save it, just preview\n * @return {PromoCardMedia} media information about the card.\n */\nconst savePromoCard = async (card: PromoCardMedia, isPreview: boolean) => {\n const newcard = await restService.post(\n `pdfmedia/promocard${isPreview ? '/preview' : ''}`,\n card\n )\n if (newcard.isSuccess) {\n return newcard.data\n }\n throw new OrderClientException('saving card failed')\n}\n\n/**\n * Remove a promo card\n * @return nothing, but throws ane exception on error\n * @param id\n */\nconst deletePromoCard = async (id: number) => {\n const deadcard = await restService.delete(`pdfmedia/promocard/${id}`)\n if (deadcard.isSuccess) {\n return deadcard.data\n } else throw new OrderClientException(`problem deleting card id ${id}`)\n}\ninterface StatusResult {\n active: boolean\n sortOrder: number\n upwardTypeID: string\n description: string\n}\nlet orderStati: { id: string; sortOrder: number; description: string }[] = []\nconst getOrderStati = async () => {\n if (!orderStati.length) {\n const si = await restService.get('upwardTypes/orderStatus')\n if (si.isSuccess && si.data?.length) {\n orderStati = si.data\n .filter((x) => x.active == true)\n .map((x) => ({\n id: x.upwardTypeID ?? '',\n description: x.description,\n sortOrder: x.sortOrder ?? -100,\n }))\n .sort((a, b) => (a.sortOrder == b.sortOrder ? 0 : a.sortOrder > b.sortOrder ? 1 : -1))\n }\n }\n return orderStati\n}\n\nlet sizes: UpwardSizeTypeID[] = []\nconst getSizes = async () => {\n if (!sizes.length) {\n const si = await restService.get('upwardTypes/size')\n if (si.isSuccess && si.data?.length) {\n sizes = si.data.sort((a, b) => (a.sortOrder == b.sortOrder ? 0 : a.sortOrder > b.sortOrder ? 1 : -1))\n }\n }\n return sizes\n}\n//api/orderproducts/UPW80147/SOCCER?type=LEAGUEORDER\nconst getLeagueOrderStatus = async (\n league: UpwardLeagueIDType,\n program: string\n): Promise => {\n const si = await restService.get(`orders/${league}/participantproducts/${program}`)\n if (si.isSuccess && si.data) {\n return si.data\n }\n\n throw new OrderClientException('Could not retrieve list of sizes for the order')\n}\n\nexport interface OrderTypeInfo {\n active: boolean\n sortOrder: number\n id: number\n upwardTypeID: string\n description: string\n}\n\nlet cacheValidOrderTypes: OrderTypeInfo[] = []\nlet cacheValidOrderStati: OrderTypeInfo[] = []\n\nconst getValidOrderTypes = async () => {\n if (!cacheValidOrderTypes.length) {\n cacheValidOrderTypes = (await restService.get(`upwardTypes/order`)).data ?? []\n }\n return cacheValidOrderTypes\n}\n\nconst getValidOrderStati = async () => {\n if (!cacheValidOrderStati.length) {\n cacheValidOrderStati = (await restService.get(`upwardTypes/orderStatus`)).data ?? []\n }\n return cacheValidOrderStati\n}\n\n/**\n * Returns participants that are missing sizing info used in the first step of reconciling a league orders.\n * @param league\n * @param account\n */\nconst getPendingProduct = async (league: UpwardLeagueIDType, account: string) => {\n const si = await restService.get(\n `orders/pendingAdditionalProductList/${league}/${account}`\n )\n if (si.isSuccess) {\n return si.data ?? ([] as PendingOrderAdditionalProductInfo[])\n }\n\n throw new OrderClientException('Trouble pending products')\n}\n\nexport enum SizeTypeEnum {\n PLAYER = 'PLAYER',\n VOLUNTEER = 'COACH',\n}\n\n/**\n * Returns participants that are missing sizing info used in the first step of reconciling a league orders.\n * @param league\n * @param program\n * @param type\n */\nconst getMissingSizes = async (league: UpwardLeagueIDType, program: string, type: SizeTypeEnum) => {\n const root = SizeTypeEnum.VOLUNTEER == type ? 'volunteers' : 'participants'\n const si = await restService.get(`${root}/${league}/missingSizes/${program}`, {\n participantType: type,\n })\n if (si.isSuccess) {\n return si.data ?? []\n }\n\n throw new OrderClientException('Trouble getting missing sizes')\n}\nexport interface ProductPayload {\n ProductID: number\n TypeColorID: string\n TypeSizeID: string\n Quantity: number\n DoNotOrder: boolean\n}\n\nexport interface ValidateLeagueOrderShippingPayload {\n upwardLeagueID: UpwardLeagueIDType\n accountNumber: string\n notes: string\n purchaseOrderNumber: string\n shippingInfo: xShippingInfoBase\n processingInstructions: string[]\n}\n\n/**\n * confirm a league order\n * @param p\n */\nconst confirmOrder = async (p: ValidateLeagueOrderShippingPayload) => {\n const si = await restService.post(`orders/${p.upwardLeagueID}`, {\n ...p,\n upwardOrderType: 'LEAGUEORDER',\n })\n\n if (si.isSuccess && si.data) {\n return si.data\n }\n\n throw new OrderClientException('Verification error on order')\n}\n\n/**\n * validate shipping for a league order, similiar to verificationDetails above, but using league specific payload.\n * @param p\n */\nconst validateOrderShipping = async (p: ValidateLeagueOrderShippingPayload) => {\n const si = await restService.post<{ brokenRules: string[]; model: xStartupOrderExt }>(\n `orders/${p.upwardLeagueID}/verificationDetails`,\n {\n ...p,\n upwardOrderType: 'LEAGUEORDER',\n }\n )\n\n if (si.isSuccess && si.data) {\n return si.data?.model\n }\n\n throw new OrderClientException('Verification error on order')\n}\n\n/**\n * sets size on volunteers/participants\n * @param who -player or volunteer\n * @param league\n * @param program - program name.\n * @param participantID - participant id.\n * @param products - products to update size on\n */\nconst setMissingSize = async (\n who: SizeTypeEnum,\n league: UpwardLeagueIDType,\n program: string,\n participantID: number,\n products: ProductPayload[]\n) => {\n const service = who === SizeTypeEnum.PLAYER ? 'participants' : 'volunteers'\n const si = await restService.post(\n `${service}/${league}/${participantID}/${program}/productsizes`,\n products\n )\n if (si.isSuccess) {\n return si.data\n }\n throw new OrderClientException('Trouble setting missing sizes')\n}\n/**\n * Removes a product on the server side using the product Index.\n * @param league\n * @param account\n * @param productIndexID\n */\nconst deleteProductByIndex = async (league: UpwardLeagueIDType, account: string, productIndexID: number) => {\n let thing: RestServiceResult | null = null\n\n thing = await restService.delete(\n `orders/pendingAdditionalProduct/${league}/${account}/${productIndexID}`\n )\n\n if (thing?.isSuccess) {\n return true\n }\n throw new OrderClientException('Trouble updating pending product quantity')\n}\n/**\n * Put product for a league order. Sets product quantity on the server for a league order.\n * @param league\n * @param account\n * @param product\n */\nconst putProduct = async (\n league: UpwardLeagueIDType,\n account: string,\n product: PendingOrderAdditionalProductInfo\n) => {\n let thing: RestServiceResult | null = null\n if (product.id) {\n thing = await restService.put(\n `orders/pendingAdditionalProduct/${league}/${account}/${product.id}`,\n product\n )\n } else {\n thing = await restService.post(\n `orders/pendingAdditionalProduct`,\n product\n )\n }\n\n if (thing?.isSuccess && thing.data) {\n return thing.data\n }\n throw new OrderClientException('Trouble updating pending product quantity')\n}\n\n/**\n * Put product for a league order. Sets product quantity on the server for a league order.\n * @param league\n * @param account\n * @param product\n */\nconst newAddOnProduct = async (product: PendingOrderAdditionalProductInfo) => {\n const result = await restService.post(\n `orders/pendingAdditionalProduct`,\n product\n )\n\n if (result?.isSuccess && result.data) {\n return result.data\n }\n throw new OrderClientException('Trouble updating pending product quantity')\n}\n\nconst updateAddOnProduct = async (upwId: string, product: PendingOrderAdditionalProductInfo) => {\n const result = await restService.put(\n `orders/pendingAdditionalProduct/${upwId}/${product.accountNumber}/${product.id}`,\n product\n )\n\n if (result?.isSuccess && result.data) {\n return result.data\n }\n throw new OrderClientException('Trouble updating pending product quantity')\n}\n\n/**\n * This is the find product logic for two scenarios.\n * a) you pass an individual ordering a product in which case the size needs to be replaced.\n * b) you pass a color/size combo that isn't attached to a person, so you want that quantity updated.\n * @param league\n * @param account\n * @param id\n * @param typeColorID\n * @param individualID\n * @param typeSizeID\n * @return matching product on the server.\n */\nasync function findProduct(\n league: string,\n account: string,\n id: number,\n typeColorID: string,\n individualID: number,\n typeSizeID: string\n) {\n const products = await getPendingProduct(league, account)\n const p = products.find((x) =>\n individualID\n ? x.productID == id && x.typeColorID == typeColorID && x.individualID == individualID\n : x.productID == id && x.typeColorID == typeColorID && x.typeSizeID == typeSizeID\n )\n if (p && !individualID) p.individualID = 0\n return p\n}\n\n/**\n * For a league order, will sift through existing pending products and update the one passed to\n * it from the UI.\n *\n * If product.orderQuantity is zero, it will delete the pending product.\n *\n *\n * Also, it will add a product it can't find, for non-zero quantities.\n *\n *\n *\n * @param league\n * @param leagueID\n * @param account\n * @param product\n */\nconst updateProductQuantity = async (\n league: UpwardLeagueIDType,\n leagueID: number,\n account: string,\n product: OrderProductLine\n) => {\n const existingProduct = await findProduct(\n league,\n account,\n product.id,\n product.productColorSize.typeColorID,\n product.individualID,\n product.productColorSize.typeSizeID\n )\n\n if (existingProduct) {\n //remove an existing product\n if (product.orderQuantity == 0) {\n await deleteProductByIndex(league, account, existingProduct.id)\n } //if not deleting then update the character\n else {\n const newProduct = cloneDeep({\n ...existingProduct,\n quantity: product.orderQuantity,\n typeSizeID: product.productColorSize.typeSizeID,\n })\n await putProduct(league, account, newProduct)\n }\n } //got to be a new product with an order-able quantity.\n else {\n if (product.orderQuantity) {\n const newProduct = {\n quantity: product.orderQuantity,\n typeColorID: product.productColorSize.typeColorID,\n accountNumber: account.toString(),\n id: 0,\n individualID: product.individualID,\n leagueID: leagueID,\n productID: product.id,\n typeProgramID: product.typeProgramID,\n typeSizeID: product.productColorSize.typeSizeID,\n jerseyNumber: product.jerseyNumber,\n } as PendingOrderAdditionalProductInfo\n await putProduct(league, account, newProduct)\n }\n }\n}\n\n/**\n * Order ID is a number not the league-dash-number\n * @param orderID\n */\nconst getNotes = async (orderID: number) => {\n const thing = await restService.get(`orders/notes/${orderID}`)\n\n if (thing?.isSuccess) {\n return thing.data\n }\n throw new OrderClientException('Trouble getting order notes')\n}\n\nconst getNotesByUpwardOrderID = async (upwardOrderID: string) => {\n const thing = await restService.get(`orders/notes/upwardOrderID/${upwardOrderID}`)\n\n if (thing?.isSuccess) {\n return thing.data\n }\n throw new OrderClientException('Trouble getting order notes')\n}\n\n/**\n * Order ID is a number not the league-dash-number\n * @param orderID\n */\nconst putNote = async (orderID: number, note: OrderNoteInfo) => {\n const rv = await restService.post(`orders/notes/${orderID}`, note)\n\n if (rv?.isSuccess) {\n return true\n }\n throw new OrderClientException('Trouble updating order note')\n}\n\n/**\n * Order ID is a number not the league-dash-number\n * @param orderID\n */\nconst deleteNote = async (orderID: number, noteID: number) => {\n const rv = await restService.delete(`orders/notes/${orderID}/${noteID}`)\n\n if (rv?.isSuccess) {\n return true\n }\n throw new OrderClientException('Trouble deleting order note')\n}\n\nconst getPendingReturnProductList = async (league: UpwardLeagueIDType, account: string) => {\n const si = await restService.get(\n `orders/pendingReturnOrderProductList/${league}/${account}`\n )\n if (si.isSuccess) {\n return si.data ?? ([] as PendingReturnOrderProductInfo[])\n }\n\n throw new OrderClientException('Trouble pending return products')\n}\n\nconst deletePendingReturnProductByIndex = async (\n league: UpwardLeagueIDType,\n account: string,\n productIndexID: number\n) => {\n let thing: RestServiceResult | null = null\n\n thing = await restService.delete(\n `orders/pendingReturnOrderProduct/${league}/${account}/${productIndexID}`\n )\n\n if (thing?.isSuccess) {\n return true\n }\n throw new OrderClientException('Trouble deleting pending return product')\n}\n\nconst updatePendingReturnProduct = async (upwId: string, product: PendingReturnOrderProduct) => {\n const result = await restService.put(\n `orders/pendingReturnOrderProduct/${upwId}/${product.accountNumber}/${product.id}`,\n product\n )\n\n if (result?.isSuccess && result.data) {\n return result.data\n }\n throw new OrderClientException('Trouble updating pending return product')\n}\n\nconst newPendingReturnProduct = async (product: PendingReturnOrderProduct) => {\n const result = await restService.post(\n `orders/pendingReturnOrderProduct`,\n product\n )\n\n if (result?.isSuccess && result.data) {\n return result.data\n }\n throw new OrderClientException('Trouble creating pending return product')\n}\n\nconst getReturnsOrderProductList = async (league: UpwardLeagueIDType, account: string) => {\n const si = await restService.get(`orders/returnsOrderProductList/${league}/${account}`)\n if (si.isSuccess) {\n return si.data ?? ([] as OrderProduct[])\n }\n\n throw new OrderClientException('Trouble pending return products')\n}\n\nasync function findPendingReturnProduct(\n league: string,\n account: string,\n typeProgramID: string,\n productID: number,\n typeColorID: string,\n typeSizeID: string,\n typeReturnReasonID: string\n) {\n const products = await getPendingReturnProductList(league, account)\n const p = products.find(\n (x) =>\n x.typeProgramID == typeProgramID &&\n x.productID == productID &&\n x.typeColorID == typeColorID &&\n x.typeSizeID == typeSizeID &&\n x.typeReturnReasonID == typeReturnReasonID\n )\n return p\n}\n\nconst addOrUpdate_PendingReturnProduct = async (\n upw: UpwardLeagueIDType,\n product: PendingReturnOrderProduct\n) => {\n const existingProduct = await findPendingReturnProduct(\n upw,\n product.accountNumber,\n product.typeProgramID,\n product.productID,\n product.typeColorID,\n product.typeSizeID,\n product.typeReturnReasonID\n )\n\n if (existingProduct) {\n let newCargo = existingProduct.cargo\n if (newCargo && newCargo.length > 0) {\n newCargo += ', '\n }\n\n newCargo += product.cargo ?? ''\n\n const newProduct = {\n leagueID: existingProduct.leagueID,\n accountNumber: existingProduct.accountNumber,\n id: existingProduct.id,\n typeProgramID: existingProduct.typeProgramID,\n productID: existingProduct.productID,\n typeColorID: existingProduct.typeColorID,\n typeSizeID: existingProduct.typeSizeID,\n quantity: existingProduct.quantity + product.quantity,\n typeReturnReasonID: existingProduct.typeReturnReasonID,\n cargo: newCargo,\n } as PendingReturnOrderProduct\n\n await updatePendingReturnProduct(upw, newProduct)\n } //got to be a new product with an order-able quantity.\n else {\n await newPendingReturnProduct(product)\n }\n}\n\nconst getRawOrderXML = async (upwardOrderid: string) => {\n const url = `orders/${upwardOrderid}/rawOrderXML`\n const results = await restService.get(url)\n if (results.isSuccess) {\n return results.data\n }\n throw new OrderClientException(`could not get Order information for ${upwardOrderid}`)\n}\n\nconst editOrderXML = async (xml: OrderXMLEdit) => {\n const result = await restService.post(`orders/${xml.upwardOrderID}/editOrderXML`, xml)\n\n if (result?.isSuccess) {\n return true\n }\n throw new OrderClientException('Trouble updating order xml')\n}\n\nexport default {\n getNotes,\n getNotesByUpwardOrderID,\n deleteNote,\n putNote,\n retrieveTemplate,\n updateProductQuantity,\n getLeagueOrderItems,\n verificationDetails,\n createOrder,\n getOrderInfo,\n releaseFromHold,\n getOrderList,\n getPromoCards,\n deletePromoCard,\n savePromoCard,\n getPromoCardTemplate,\n getOrderHistory,\n getOrder,\n searchOrderHistory,\n getOrderStati,\n getPendingProduct,\n getMissingSizes,\n getSizes,\n getLeagueOrderStatus,\n setMissingSize,\n validateOrderShipping,\n confirmOrder,\n generateRMA,\n getRMA,\n setRMAStatus,\n getValidOrderTypes,\n getValidOrderStati,\n getOrderRollup,\n updateAddOnProduct,\n newAddOnProduct,\n deleteProductByIndex,\n getPendingReturnProductList,\n deletePendingReturnProductByIndex,\n updatePendingReturnProduct,\n newPendingReturnProduct,\n getReturnsOrderProductList,\n addOrUpdate_PendingReturnProduct,\n getRawOrderXML,\n editOrderXML,\n resendToASB,\n}\n","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BrokenCoachLinkReport.vue?vue&type=style&index=0&lang=scss&\"","import restServiceUR from '@/services/restServiceUR'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { PartnerChallenge } from '@/models/UpwardRunning/PartnerChallenge'\nimport { PartnerChallengeParticipantCart } from '@/models/UpwardRunning/PartnerChallengeParticipantCart'\nimport { PartnerChallengeCart } from '@/models/UpwardRunning/PartnerChallengeCart'\nimport { PartnerChallengeInfo } from '@/models/UpwardRunning/PartnerChallengeInfo'\nimport { UpwardRunningAuthToken } from '@/models/UpwardRunning/Auth//UpwardRunningAuthToken'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport { PartnerChallengeParticipantInfo } from '@/models/UpwardRunning/PartnerChallengeParticipantInfo'\nimport store from '@/store'\nimport { BalanceTransactionRequest } from '@/models/UpwardRunning/BalanceTransactionRequest'\nimport { BalanceTransactionReportResponse } from '@/models/UpwardRunning/BalanceTransactionReportResponse'\n\nconst baseUrl = 'PartnerChallenge/'\n\nclass RunningClientException extends GeneralError {\n name = 'UR Client API Error'\n}\n\nexport interface PartnerChallengeParticipantCartChangeRequest {\n individualID: number\n upwardProductID: string\n upwardSizeTypeID: string\n}\n\nexport interface PartnerChallengeCartRequest {\n upwardProductID: string\n upwardColorTypeID: string\n upwardSizeTypeID: string\n quantity: number\n}\n\nconst create = async (challenge: PartnerChallenge) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.post(`${baseUrl}`, challenge)\n}\n\nconst update = async (id: string, challenge: PartnerChallenge) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.put(`${baseUrl}${id}`, challenge)\n}\n\nconst retrieve = async (id: string) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.get(`${baseUrl}${id}`)\n}\n\nconst retrieveParticipants = async (id: string) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.get(`${baseUrl}info/${id}/participants`)\n}\n\nconst validateNew = async (challenge: PartnerChallenge, ruleSet = '') => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.post(`${baseUrl}verificationDetails`, challenge, {\n params: {\n ruleSet,\n },\n })\n}\n\nconst validateExisting = async (id: string, challenge: PartnerChallenge) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.post(`${baseUrl}${id}/verificationDetails`, challenge)\n}\n\nconst loginWithLegacyToken = async (userData: string) => {\n try {\n const t = await restServiceUR.post(`auth/loginwithlegacytoken`, {\n userToken: userData,\n })\n if (t.status == 200) {\n return t.data as UpwardRunningAuthToken\n }\n } catch (e) {\n return null\n }\n}\n\nconst retrieveAll = async (accountNumber: string) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.get(`${baseUrl}listForAccount/${accountNumber}`)\n}\n\nconst setParticipantCartProduct = async (\n challengeID: string,\n request: PartnerChallengeParticipantCartChangeRequest\n) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.put(\n `${baseUrl}${challengeID}/participantcart`,\n request\n )\n}\n\nconst createChallengeCartProduct = async (challengeID: string, request: PartnerChallengeCartRequest) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n const result = await restServiceUR.post(`${baseUrl}${challengeID}/cart`, request)\n if (result?.isSuccess && result.data) {\n return result.data\n }\n throw new RunningClientException('Trouble creating partner challenge cart item')\n}\n\nconst updateChallengeCartProduct = async (\n challengeID: string,\n id: number,\n request: PartnerChallengeCartRequest\n) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n const result = await restServiceUR.put(`${baseUrl}${challengeID}/cart/${id}`, request)\n\n if (result?.isSuccess && result.data) {\n return result.data\n }\n throw new RunningClientException('Trouble updating partner challenge cart item')\n}\n\nconst deleteChallengeCartProduct = async (challengeID: string, id: number) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n return await restServiceUR.delete(`${baseUrl}${challengeID}/cart/${id}`)\n}\n\nconst retrieveBalanceTransactionReport = async (request: BalanceTransactionRequest) => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n const results = await restServiceUR.post(\n 'stripe/admin/balanceTransactions',\n request\n )\n\n return results.data\n}\n\nexport default {\n create,\n retrieve,\n update,\n validateNew,\n validateExisting,\n loginWithLegacyToken,\n retrieveAll,\n retrieveParticipants,\n setParticipantCartProduct,\n createChallengeCartProduct,\n updateChallengeCartProduct,\n deleteChallengeCartProduct,\n retrieveBalanceTransactionReport,\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"title\":_vm.title,\"show-close\":false,\"is-small\":_vm.isSmall},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_vm._t(\"default\"),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.onYes}},[_vm._t(\"confirm\",[_vm._v(\"Yes\")])],2),_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.onNo}},[_vm._t(\"cancel\",[_vm._v(\"No\")])],2)])],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\nimport { defineComponent } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\n\nexport default defineComponent({\n name: 'ConfirmationModal',\n components: {\n Modal,\n },\n props: {\n title: { type: String, required: true },\n show: { type: Boolean, required: false, default: false },\n isSmall: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n function onYes() {\n ctx.emit('onResponse', true)\n }\n\n function onNo() {\n ctx.emit('onResponse', false)\n }\n\n return {\n onYes,\n onNo,\n }\n },\n})\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!./ConfirmationModal.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!./ConfirmationModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ConfirmationModal.vue?vue&type=template&id=40214c4a&\"\nimport script from \"./ConfirmationModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ConfirmationModal.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('div',_vm._l((_vm.products),function(product){return _c('div',{key:((product.id) + \"-\" + (product.productColorSize.typeColorID) + \"-\" + (product.productColorSize.typeSizeID)),staticClass:\"grid-container\"},[_c('div',[(!_vm.readOnly)?_c('a',{on:{\"click\":function($event){return _vm.remove(product)}}},[_c('i',{staticClass:\"fas fa-minus-circle\"})]):_c('i',{staticClass:\"fas fa-circle\"})]),_c('div',[_c('cart-line',{attrs:{\"product\":product}})],1),_c('div',{staticClass:\"cost\"},[_vm._v(\" \"+_vm._s(_vm.currency(product.cost * (_vm.qty(product) - _vm.qtyFree(product)) + _vm.costOffset(product)))+\" \")])])}),0)}\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:\"product\"},[_c('span',{staticClass:\"product-qty\"},[_vm._v(_vm._s(_vm.variation.orderQuantity)+\"x\")]),_c('span',{staticClass:\"product-name\"},[_vm._v(_vm._s(_vm.product.cmsProductName))]),_c('span',{staticClass:\"product-desc\"},[_vm._v(_vm._s(_vm.variationDesc))]),_c('span',{staticClass:\"product-extended-desc\"},[_vm._v(_vm._s(_vm.filterNA(_vm.variation.colorDescription)))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\n\nimport { filterNA, OrderProductLine } from '@/models/Order/OrderProduct'\n\nexport default defineComponent({\n name: 'CartLine',\n methods: { filterNA },\n props: {\n product: {\n type: Object as PropType,\n required: true,\n },\n },\n setup(props) {\n // in a normalized product qty selection each product has a variation\n const variation = computed(() => props.product.productColorSize)\n\n const variationDesc = computed(() => {\n if (filterNA(variation.value.sizeDescription)) {\n return `(${filterNA(variation.value.sizeDescription)})`\n }\n return ''\n })\n\n return { variation, variationDesc }\n },\n})\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!./CartLine.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!./CartLine.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CartLine.vue?vue&type=template&id=f2ed25d0&scoped=true&\"\nimport script from \"./CartLine.vue?vue&type=script&lang=ts&\"\nexport * from \"./CartLine.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CartLine.vue?vue&type=style&index=0&id=f2ed25d0&scoped=true&lang=scss&\"\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 \"f2ed25d0\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\nimport { getEmptyXStartupOrderExt } from '@/lib/support/models/GeneratedTypes/xOrders/xStartupOrderExt'\nimport { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport { OrderProductSelection } from '@/store/orders'\nimport {\n ProductSelectorLogic,\n useNoProductSelector,\n} from '@/views/Programs/Orders/compositions/useProductSelector'\nimport { getFilteredProductList, OrderProductLine } from '@/models/Order/OrderProduct'\nimport currency from '@/filters/currency'\nimport CartLine from '@/components/Orders/CartLine.vue'\n\nexport default defineComponent({\n name: 'Cart',\n components: {\n CartLine,\n },\n props: {\n readOnly: {\n type: Boolean,\n required: false,\n default: true,\n },\n XStartupOrderExt: {\n type: Object as PropType,\n default: getEmptyXStartupOrderExt,\n required: false,\n },\n title: { type: String, default: '', required: false },\n productsSelected: { type: Array as PropType, default: () => [], required: true },\n selectorMethod: {\n type: Function as PropType,\n default: useNoProductSelector,\n required: true,\n },\n },\n setup(props, ctx) {\n const products = computed(() =>\n getFilteredProductList(props.XStartupOrderExt.products, props.selectorMethod().isSelected)\n )\n\n function qty(p: OrderProductLine) {\n return p.productColorSize.orderQuantity\n }\n\n function qtyFree(p: OrderProductLine) {\n return p.productColorSize.orderFreeQuantity\n }\n\n function costOffset(p: OrderProductLine) {\n return (\n (p.productColorSize.orderQuantity - p.productColorSize.orderFreeQuantity) *\n p.productColorSize.costOffset\n )\n }\n\n function remove(p: OrderProductLine) {\n if (!props.readOnly) {\n ctx.emit('remove', p)\n }\n }\n\n return { products, currency, qty, qtyFree, costOffset, remove }\n },\n})\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!./Cart.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!./Cart.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Cart.vue?vue&type=template&id=17b91e25&scoped=true&\"\nimport script from \"./Cart.vue?vue&type=script&lang=ts&\"\nexport * from \"./Cart.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Cart.vue?vue&type=style&index=0&id=17b91e25&lang=scss&scoped=true&\"\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 \"17b91e25\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DivisionStandingScoreSelect.vue?vue&type=style&index=0&id=4d386cd6&lang=scss&scoped=true&\"","import localStorageService from '@/services/localStorageService'\nimport jsonwebtoken from 'jsonwebtoken'\nimport { AuthToken } from '@/models/Authorization/AuthToken'\nimport restService from '@/services/restService'\nimport credentialsService from '@/services/credentialsService'\nimport { AuthTokenCredentials } from '@/models/Authorization/AuthTokenCredentials'\nimport { UpwardJwtPayload } from '@/models/UpwardJwtPayload/UpwardJwtPayload'\n\nconst localStorageKey = 'auth-token'\nconst oldLocalStorageKey = 'old-auth-token'\n\n/**\n * Takes an auth token, stores the token so long as it has valid credentials.\n * @param authToken\n */\nconst getCredentialsFromNewAuthToken = (authToken: AuthToken | null) => {\n if (authToken === null) {\n return null\n }\n\n const credentials = getCredentialsFromToken(authToken)\n\n if (!credentialsService.hasValidCredentials(credentials)) {\n return null\n }\n\n restService.setToken(authToken.upwardJWToken)\n restService.setAccountHeader((credentials?.accountNumbers || [])[0])\n localStorageService.set(localStorageKey, authToken)\n return credentials\n}\n\n/**\n * Load and set the token (into axios's default headers) from shared storage.\n */\nconst getCredentialsFromStoredAuthToken = () => {\n const authToken = localStorageService.getParsed(localStorageKey)\n\n if (authToken !== null) {\n const credentials = getCredentialsFromToken(authToken)\n restService.setToken(authToken.upwardJWToken)\n restService.setAccountHeader((credentials?.accountNumbers || [])[0])\n return getCredentialsFromToken(authToken)\n }\n\n return null\n}\n\n/**\n * Get stored auth token.\n */\nconst getAuthToken = () => {\n return localStorageService.getParsed(localStorageKey)\n}\n\nconst clearStoredAuthToken = () => {\n localStorageService.remove(localStorageKey)\n restService.setAccountHeader(null)\n restService.setToken(null)\n}\n\nconst getCsvFromPayload = (payload: any, propertyName: string) => {\n const raw = payload[propertyName]\n\n if (!raw || typeof raw !== 'string') {\n return null\n }\n\n return raw.split(',')\n}\n\n/**\n * Will retrieve a stored token.,\n */\nconst deleteOldToken = () => {\n localStorageService.remove(oldLocalStorageKey)\n}\n\n/**\n * Will retrieve a stored token.,\n */\nconst retrieveOldToken = () => {\n const oldtoken = localStorageService.getParsed(oldLocalStorageKey)\n if (oldtoken) {\n return oldtoken\n }\n return getAuthToken()\n}\n\n/**\n * Backup a token that is not already impersonating a user, otherwise no-op\n */\nconst backupToken = () => {\n const token = getAuthToken()\n if (token) {\n const credentials = getCredentialsFromToken(token)\n\n if (\n credentialsService.hasValidCredentials(credentials) &&\n !credentialsService.isImpersonating(credentials)\n ) {\n localStorageService.set(oldLocalStorageKey, token)\n }\n }\n}\n\nconst setHTTPHeaderAndLocalStorage = (authToken: AuthToken | null) => {\n if (!authToken) return null\n const credentials = getCredentialsFromToken(authToken)\n restService.setToken(authToken.upwardJWToken)\n restService.setAccountHeader((credentials?.accountNumbers || [])[0])\n localStorageService.set(localStorageKey, authToken)\n}\n\nconst getCredentialsFromToken = (authToken: AuthToken | null) => {\n if (authToken === null || authToken.upwardJWToken === null) {\n return null\n }\n\n const decodedJwt = jsonwebtoken.decode(authToken.upwardJWToken, { complete: true })\n\n if (decodedJwt === null) {\n return null\n } else if (typeof decodedJwt === 'string') {\n return null\n }\n\n const jwtPayload = decodedJwt.payload as UpwardJwtPayload\n\n const claimAccountNumber = jwtPayload['upw-account']\n const rootAccountNumber = jwtPayload['upw-rootaccount']\n const rolesByLeague = jwtPayload['upw-rolesbyleague']\n\n /*\n Impersonation is active if account numbers above do not match\n */\n let rootIsImpersonating = false\n if (claimAccountNumber !== rootAccountNumber) {\n rootIsImpersonating = true\n }\n\n const accountNumbers: string[] = []\n\n if (claimAccountNumber) {\n accountNumbers.push(claimAccountNumber)\n }\n\n if (authToken.accountNumbers && authToken.accountNumbers.length) {\n accountNumbers.push(...authToken.accountNumbers)\n }\n\n return {\n accountNumbers,\n accountName: jwtPayload['upw-aname'],\n activities: jwtPayload['upw-activities'],\n fullName: jwtPayload['upw-name'],\n impersonatedAccount: rootIsImpersonating ? claimAccountNumber : '',\n impersonationActive: rootIsImpersonating,\n email: jwtPayload['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier'],\n userData: jwtPayload['upw-userdata'],\n roles: getCsvFromPayload(jwtPayload, 'upw-roles'),\n expiration: new Date(jwtPayload.exp * 1000),\n daysUntilPasswordExpiration: Number(jwtPayload['upw-pwdexp']) || null,\n leagueRoles: JSON.parse(rolesByLeague),\n totpInfo: jwtPayload['upw-totp'],\n } as AuthTokenCredentials\n}\n\nexport default {\n deleteOldToken,\n backupToken,\n retrieveOldToken,\n getCredentialsFromNewAuthToken,\n getCredentialsFromStoredAuthToken,\n clearStoredAuthToken,\n getAuthToken,\n setHTTPHeaderAndLocalStorage,\n}\n","import restService from '@/services/restService'\nimport { AlertInfo } from '@/GeneratedTypes/ListInfo/AlertInfo'\nimport { TeamPageAlertInfo } from '@/GeneratedTypes/ListInfo/TeamPageAlertInfo'\nimport { NotificationInfo } from '@/models/Notification/NotificationInfo'\n\nconst alertUrl = 'alerts/'\n\nconst retrieveLeagueAlerts = async (upwId: string): Promise => {\n try {\n const result = await restService.get(`${alertUrl}program/${upwId}`)\n if (result.isSuccess && result.data?.length) {\n return result.data\n } else {\n return Promise.resolve(null)\n }\n } catch (e) {\n if (e.status == 404) {\n return Promise.resolve(null)\n } else {\n throw new Error('Error in alertClient.retrieveLeagueAlerts')\n }\n }\n}\n\nconst retrieveSalesTaxAlerts = async (accountNumber: string): Promise => {\n try {\n const result = await restService.get(`${alertUrl}salestax/${accountNumber}`)\n if (result.isSuccess && result.data?.length) {\n return result.data\n } else {\n return Promise.resolve(null)\n }\n } catch (e) {\n if (e.status == 404) {\n return Promise.resolve(null)\n } else {\n throw new Error('Error in alertClient.retrieveSalesTaxAlerts')\n }\n }\n}\n\nconst retrieveOrderAlerts = async (accountNumber: string): Promise => {\n try {\n const result = await restService.get(`${alertUrl}orders/${accountNumber}`)\n if (result.isSuccess && result.data?.length) {\n return result.data\n } else {\n return Promise.resolve(null)\n }\n } catch (e) {\n if (e.status == 404) {\n return Promise.resolve(null)\n } else {\n throw new Error('Error in alertClient.retrieveSalesTaxAlerts')\n }\n }\n}\n\nconst hideAlerts = async (alert: AlertInfo): Promise => {\n try {\n const result = await restService.post(`${alertUrl}hide/${alert.id}`, alert)\n if (result.isSuccess && result.data) {\n return result.data\n } else {\n return Promise.resolve(null)\n }\n } catch (e) {\n if (e.status == 404) {\n return Promise.resolve(null)\n } else {\n throw new Error('Error in alertClient.hideAlerts')\n }\n }\n}\n\nconst retrievePartnerAlerts = async (accountNumber: string): Promise => {\n // Only sales tax alerts for now, but there will be other partner alerts later.\n try {\n const results = await restService.get(`${alertUrl}partner/${accountNumber}`)\n if (results.isSuccess) {\n return results.data\n } else {\n return Promise.resolve(null)\n }\n } catch (e) {\n if (e.status == 404) {\n return Promise.resolve(null)\n } else {\n throw new Error('Error in alertClient.retrievePartnerAlerts')\n }\n }\n}\n\nconst retrieveMyNotifications = async (): Promise => {\n try {\n const result = await restService.get(`${alertUrl}mynotifications`)\n if (result.isSuccess && result.data?.length) {\n return result.data\n } else {\n return Promise.resolve(null)\n }\n } catch (e) {\n if (e.status == 404) {\n return Promise.resolve(null)\n } else {\n throw new Error('Error in alertClient.retrieveMyNotifications')\n }\n }\n}\n\nconst retrieveAdminAlerts = async (): Promise => {\n try {\n const result = await restService.get(`${alertUrl}admin`)\n if (result.isSuccess && result.data?.length) {\n return result.data\n } else {\n return Promise.resolve(null)\n }\n } catch (e) {\n if (e.status == 404) {\n return Promise.resolve(null)\n } else {\n throw new Error('Error in alertClient.retrieveAdminAlerts')\n }\n }\n}\n\nconst markNotificationRead = async (id: number): Promise => {\n const result = await restService.post(`${alertUrl}mynotifications/${id}/markasread`, null)\n if (result.isSuccess && result.data) {\n return Promise.resolve(true)\n } else {\n return Promise.resolve(false)\n }\n}\n\nconst retrieveTeamPageAlerts = async (upwId: string) => {\n try {\n const results = await restService.get(`${alertUrl}teams/byLeague/${upwId}`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in alertClient.retrieveTeamPageAlerts')\n }\n } catch (e) {\n if (e.status === 404) {\n return Promise.resolve(null)\n } else {\n throw new Error('Error in alertClient.retrieveTeamPageAlerts')\n }\n }\n}\n\nconst saveTeamPageAlert = async (upwId: string, alert: TeamPageAlertInfo) => {\n const results = await restService.post(`${alertUrl}teams/${upwId}`, alert)\n\n if (!results.isSuccess) {\n throw new Error(`Error in alertClient.saveTeamPageAlert`)\n }\n return results.data\n}\n\nconst removeTeamPageAlert = async (alertId: number) => {\n const results = await restService.delete(`${alertUrl}${alertId}`)\n\n if (!results.isSuccess) {\n throw new Error(`Error in alertClient.removeTeamPageAlert`)\n }\n return results.isSuccess\n}\n\nexport default {\n retrieveLeagueAlerts,\n retrievePartnerAlerts,\n retrieveSalesTaxAlerts,\n hideAlerts,\n retrieveOrderAlerts,\n retrieveMyNotifications,\n markNotificationRead,\n retrieveTeamPageAlerts,\n saveTeamPageAlert,\n removeTeamPageAlert,\n retrieveAdminAlerts,\n}\n","import { DivisionGame } from '@/GeneratedTypes/DivisionGame'\nimport { DivisionGameModified } from '@/models/Games/DivisionGameModified'\n\nexport function getEmptyDivisionGame(seed: DivisionGameSeed): DivisionGame {\n return {\n awayTeamID: 0,\n divisionID: 0,\n facilityID: 0,\n gameEnd: null,\n gameID: 0,\n gameStart: null,\n homeTeamID: 0,\n leagueID: seed.leagueID,\n roundNumber: 0,\n typeProgramID: '',\n volunteers: [],\n winningTeamID: 0,\n homeTeamScore: null,\n awayTeamScore: null,\n typeDivisionGameID: 'REGULAR_GAME',\n }\n}\n\nclass DivisionGameSeed {\n leagueID = 0\n gameID = 0\n}\n\nlet GAME_ID = -1\nexport function decrementingDGStrategy(leagueID: number) {\n const c = new DivisionGameSeed()\n c.leagueID = leagueID\n c.gameID = GAME_ID--\n return c\n}\n\nexport function isEmptyDivisionGame(which: DivisionGame | DivisionGameModified): boolean {\n return which.gameID <= 0\n}\n\nexport const DivisionGameTypes: Record = {\n REGULAR_GAME: 'REGULAR_GAME',\n TOURNAMENT_GAME: 'TOURNAMENT_GAME',\n}\n","import { xShipToBase } from '@/GeneratedTypes/xOrder/xShipToBase.ts'\n\nexport function getEmptyxShipToBase(): xShipToBase {\n return {\n name: '',\n attention: '',\n contactInfo: '',\n street1: '',\n street2: '',\n subdivision1: '',\n subdivision2: '',\n postalCode: '',\n countryCode: '',\n }\n}\n","import { computed, ref } from '@vue/composition-api'\nimport ordersClient from '@/clients/ordersClient'\nimport { OrderLineRollupInfo } from '@/models/Order/xStartupOrderExt'\nimport { Rollup } from '@/views/Programs/Orders/league/types/Rollup'\n\nexport function useOrderRollup() {\n const orderRollup = ref(null)\n\n const getRollup = async (upwId: string, orderId: string) => {\n orderRollup.value = await ordersClient.getOrderRollup({\n leagueID: upwId,\n id: orderId,\n })\n }\n\n const getEmptyRollup = () => {\n return { position: 999, warehouse: '', items: [], total: 0, discount: 0 } as Rollup\n }\n\n /*\n Group shipments by internalOrderPosition\n */\n const rollup = computed(() => {\n if (!orderRollup.value || orderRollup.value.length == 0) return []\n const formatted: Rollup[] = [getEmptyRollup()]\n\n orderRollup.value.forEach((r) => {\n //Group items by shippment\n let shippment = formatted.find((s) => s.position == r.internalOrderPosition)\n if (!shippment) {\n shippment = getEmptyRollup()\n shippment.position = r.internalOrderPosition\n formatted.push(shippment)\n }\n shippment.warehouse = r.warehouseName ?? ''\n\n if (r.upwardProductID == 'UPWARDDISCOUNT') {\n shippment.discount += r.extendedCost\n } else {\n shippment.total += r.extendedCost\n }\n shippment.items.push(r)\n })\n\n //remove any empty groups\n return formatted.filter((i) => i.items.length > 0)\n })\n\n return {\n getRollup,\n rawRollup: computed(() => orderRollup.value),\n rollup,\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.label)?_c('label',{staticClass:\"input-label\",class:[_vm.required ? 'required' : '', _vm.enabled ? '' : 'grey--text', _vm.labelClass],attrs:{\"for\":_vm.inputId}},[_vm._v(\" \"+_vm._s(_vm.label)+\" \"),(_vm.required)?_c('div',{staticClass:\"required-dot\"}):_vm._e(),(_vm.showHelp)?_c('span',{staticClass:\"p-1\",staticStyle:{\"cursor\":\"pointer\",\"display\":\"inline\"},on:{\"click\":function($event){return _vm.$emit('helpClicked')}}},[_c('i',{staticClass:\"fa fa-question-circle\"})]):_vm._e(),(_vm.subLabel)?_c('small',{staticClass:\"sub-label text-muted\",class:{ 'd-inline': _vm.subLabelInline, 'd-block': !_vm.subLabelInline, 'pl-2': _vm.subLabelInline }},[_vm._v(_vm._s(_vm.subLabel))]):_vm._e()]):_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\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'InputLabel',\n props: {\n label: { type: String, default: '', required: false },\n inputId: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n showHelp: { type: Boolean, default: false, required: false },\n subLabel: { type: String, required: false },\n subLabelInline: { type: Boolean, default: false, required: false },\n labelClass: { type: String, default: 'text-uppercase', required: false },\n enabled: { type: Boolean, default: true, required: false },\n },\n})\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!./InputLabel.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!./InputLabel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./InputLabel.vue?vue&type=template&id=8a06239a&\"\nimport script from \"./InputLabel.vue?vue&type=script&lang=ts&\"\nexport * from \"./InputLabel.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('div',{staticClass:\"form-group\",class:_vm.noBottomPadding ? 'mb-0 pb-0' : ''},[_c('input-label',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"input-name\":_vm.inputId,\"show-help\":_vm.showHelp},on:{\"helpClicked\":function($event){return _vm.$emit('helpClicked')}}}),_c('validation-provider',{attrs:{\"rules\":_vm.VeeValidateRules,\"mode\":_vm.veeValidateMode,\"name\":_vm.validationProviderName},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nvar classes = ref.classes;\nvar failedRules = ref.failedRules;\nreturn [_c('div',{staticClass:\"input-group\"},[_c('datepicker',{ref:\"datepicker\",staticClass:\"form-control\",attrs:{\"format\":\"MM/dd/yyyy\",\"id\":_vm.inputId,\"placeholder\":_vm.placeholder,\"typeable\":_vm.isTypeable,\"required\":_vm.required,\"disabled-dates\":_vm.disabledDates,\"disabled\":_vm.disabled,\"inputClass\":\"pl-2\",\"calendarClass\":_vm.displayCalendarTop ? 'calendar-top' : ''},on:{\"input\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}}),_c('button',{staticClass:\"input-group-append\",attrs:{\"disabled\":_vm.disabled},on:{\"click\":_vm.onIconClick}},[_c('span',{staticClass:\"input-group-text bg-white\",staticStyle:{\"height\":\"100%\"}},[_c('i',{staticClass:\"far fa-calendar-alt\"})])]),(errors[0])?_c('p',{staticClass:\"inline-error m-0\"},[_vm._v(_vm._s(errors[0]))]):_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\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\nimport uuid from 'uuid'\n\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { ValidationProvider } from 'vee-validate'\nimport { VueConstructor } from 'vue'\n\n/// \nimport Datepicker from 'vuejs-datepicker'\nimport { getDateWithTime } from '@/lib/support/utilities/time/time'\n\nexport default defineComponent({\n name: 'DateInput',\n components: {\n InputLabel,\n ValidationProvider,\n Datepicker: (Datepicker as unknown) as VueConstructor,\n },\n props: {\n VeeValidateRules: { type: String, default: '', required: false },\n veeValidateMode: { type: String, default: 'aggressive', required: false },\n validationProviderName: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n strictMode: { type: Boolean, default: false, required: false },\n label: { type: String, default: '', required: false },\n placeholder: { type: String, default: '', required: false },\n showHelp: { type: Boolean, default: false, required: false },\n displayCalendarTop: { type: Boolean, default: false },\n noBottomPadding: { type: Boolean, default: false, required: false },\n isTypeable: { type: Boolean, default: true, required: false },\n disabled: { type: Boolean, default: false, required: false },\n // prop: time\n // format = HH:mm:ss\n // The date component is really just for setting dates, but it carries with it the time the user\n // set the date. If you need the time to be something else, like the begining or end of the day,\n // use the time prop.\n time: { type: String, default: '', required: false },\n minDate: {\n default: () => {\n const d = new Date()\n d.setDate(d.getDate() - 90)\n return d\n },\n required: false,\n },\n maxDate: {\n default: () => {\n const d = new Date()\n d.setDate(d.getDate() + 730)\n return d\n },\n required: false,\n },\n value: { type: (null as unknown) as PropType, required: true },\n disabledWeekDays: {\n type: (null as unknown) as PropType,\n required: false,\n default: () => [],\n },\n },\n setup(props, ctx) {\n const internalValue = ref(null)\n const inputId = ref('')\n const once = ref(false)\n\n function setInternalValue() {\n if (!props.value) {\n internalValue.value = null\n } else if (typeof props.value === 'string') {\n internalValue.value = new Date(props.value)\n } else {\n internalValue.value = props.value\n }\n }\n\n //private created()\n setInternalValue()\n inputId.value = 'datepicker-' + uuid.v4()\n\n const disabledDates = computed(() => {\n let min = props.minDate ? new Date(props.minDate.valueOf()) : null\n\n if (min) {\n min.setDate(min.getDate() - 1)\n }\n\n return {\n to: min,\n from: props.maxDate,\n days: props.disabledWeekDays,\n }\n })\n\n function onIconClick() {\n const input = (ctx.refs.datepicker as Vue).$el.querySelectorAll('input')[0]\n input.click()\n input.focus()\n }\n\n function handleChange() {\n if (props.time && internalValue.value) {\n internalValue.value = setTime(internalValue.value)\n }\n ctx.emit('input', internalValue.value)\n }\n\n function setTime(date: Date) {\n if (props.time && date) {\n const parts = props.time.split(':')\n return getDateWithTime(date, Number(parts[0]), Number(parts[1]), Number(parts[2]))\n }\n return date\n }\n\n watch(\n () => props.value,\n () => {\n setInternalValue()\n if (props.time && !once.value) {\n handleChange()\n once.value = true\n }\n },\n { immediate: true }\n )\n\n return {\n inputId,\n internalValue,\n disabledDates,\n handleChange,\n onIconClick,\n }\n },\n})\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!./DateInput.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!./DateInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DateInput.vue?vue&type=template&id=ef1ad366&\"\nimport script from \"./DateInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./DateInput.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DateInput.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","import { PlayerContact } from '@/GeneratedTypes/PlayerContact'\nimport { LeagueVolunteer } from '@/GeneratedTypes/LeagueVolunteer'\nimport { cloneDeep } from 'lodash'\nimport { PlayerContactTypeEnum } from '@/lib/support/models/PlayerContact/data'\nexport function getGenderFromRole(role: PlayerContactTypeEnum) {\n switch (role) {\n case PlayerContactTypeEnum.STEPMOTHER:\n case PlayerContactTypeEnum.MOTHER:\n case PlayerContactTypeEnum.GRANDMOTHER:\n case PlayerContactTypeEnum.AUNT:\n return 'F'\n case PlayerContactTypeEnum.FATHER:\n case PlayerContactTypeEnum.GRANDFATHER:\n case PlayerContactTypeEnum.UNCLE:\n case PlayerContactTypeEnum.STEPFATHER:\n return 'M'\n default:\n return 'M' // #2888 - default to male\n }\n}\n/**\n * Approximates a League Volunteer from a Player Contact, this should not be used without\n * the template functions to create a new volunteer, but it can feed some fields or serve as a placeholder\n * in the system.\n * @param p incoming player contact\n * @return LeagueVolunteer\n */\nexport function PlayerContactToLeagueVolunteer(p: PlayerContact): LeagueVolunteer {\n return {\n individualID: p.individualID,\n accountNumber: '',\n churchName: null,\n staff: false,\n thirdPartyClientIDs: [],\n typeSizeID: '',\n coachPreferences: { programs: [], practiceNights: [] },\n roles: [],\n gender: getGenderFromRole(p.typeRelationshipID as PlayerContactTypeEnum),\n birthDate: new Date(),\n leagueID: 0,\n firstName: p.firstName,\n lastName: p.lastName,\n addresses: p.addresses,\n phoneNumbers: p.phoneNumbers,\n middleInitial: p.middleInitial,\n emailAddresses: p.emailAddresses,\n optOutEmails: p.optOutEmails,\n optOutSMS: p.optOutSMS,\n inviteAllowed: p.inviteAllowed,\n registrationNote: null,\n }\n}\n\n/**\n * Copies league volunteer from existing into another league volunteer record if the target copyIntoVolunteer has empty fields.\n * @param existingLeagueVolunteer\n * @param copyIntoVolunteer\n * @constructor\n */\nexport function FillMinimumLVDetail(\n existingLeagueVolunteer: LeagueVolunteer | PlayerContact,\n copyIntoVolunteer: LeagueVolunteer\n) {\n const c = cloneDeep(copyIntoVolunteer)\n if (!c.birthDate) {\n c.birthDate = new Date()\n }\n if (!c.gender) {\n c.gender = 'M'\n }\n c.lastName = c.lastName || existingLeagueVolunteer?.lastName || 'new'\n c.firstName = c.firstName || existingLeagueVolunteer?.firstName || 'volunteer'\n if (c.addresses?.length == 0 || !c.addresses![0].typeAddressID) {\n c.addresses = existingLeagueVolunteer?.addresses ?? []\n }\n if (c.emailAddresses?.length == 0 || !c.emailAddresses![0].typeEmailID) {\n c.emailAddresses = existingLeagueVolunteer?.emailAddresses ?? []\n }\n if (c.phoneNumbers?.length == 0 || !c.phoneNumbers![0].typePhoneID) {\n c.phoneNumbers = existingLeagueVolunteer?.phoneNumbers ?? []\n }\n if (c.thirdPartyClientIDs?.length == 0 || !c.thirdPartyClientIDs![0].typeThirdPartyClientID) {\n c.thirdPartyClientIDs = []\n }\n return c\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AccessFeeStep.vue?vue&type=style&index=0&id=86a026a0&lang=scss&scoped=true&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Order.vue?vue&type=style&index=0&id=47a98b23&lang=scss&scoped=true&\"","import restService from '@/services/restService'\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\nimport { SavedProductOfferingConfig } from '@/GeneratedTypes/SavedProductOfferingConfig'\nimport { ProductOfferingStartupProducts } from '@/models/ProductOfferingConfig/ProductOfferingStartupProducts'\n\nconst baseUrl = 'productOffering/'\n\nconst noProductGroupError = 'CommandDefaultProductGroup.DataPortal_Execute method call failed'\nconst retrieveTopLevelProducts = async (\n accountNumber: string,\n leagueType: string,\n firstPracticeDate: null | Date\n) => {\n let dt: string | null = null\n dt = convertToLocalDateString(firstPracticeDate)\n if (!dt) throw new Error('productOfferingClient.retrieveTopLevelProducts: missing firstPracticeDate')\n try {\n const results = await restService.get(\n `${baseUrl}${accountNumber}/${leagueType}/${dt}`\n )\n return results.data\n } catch (err: any) {\n if (err && err.errorObject) {\n if (err.errorObject.message.includes(noProductGroupError))\n err.errorObject.message =\n 'The dates you selected are too far in the future to create a league at this time.'\n }\n throw err\n }\n}\n\nconst retrieveChildOfferings = async (id: number) => {\n const results = await restService.get(`${baseUrl}${id}`)\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in productOfferingClient.retrieveChildOfferings')\n }\n}\n\nconst retrieveProductOfferingConfigList = async (accountNumber: string, leagueType: string) => {\n const results = await restService.get(\n `${baseUrl}savedConfigs/${accountNumber}/${leagueType}`\n )\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in productOfferingClient.retrieveProductOfferingConfigList')\n }\n}\n\nconst retrieveProductOfferingConfig = async (id: string) => {\n const results = await restService.get(`${baseUrl}savedConfig/${id}`)\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in productOfferingClient.retrieveProductOfferingConfig')\n }\n}\n\nconst upsertOffering = async (offeringConfig: SavedProductOfferingConfig) => {\n const url = `${baseUrl}savedConfig`\n //@ts-ignore\n offeringConfig.firstPracticeDateEstimate = convertToLocalDateString(\n offeringConfig.firstPracticeDateEstimate\n )\n\n if (offeringConfig.id) {\n return await restService.put(`${url}/${offeringConfig.id}`, offeringConfig)\n } else {\n return await restService.post(url, offeringConfig)\n }\n}\n\nfunction convertToLocalDateString(dt: string | Date | null): string | null {\n if (dt) {\n if (dt instanceof Date) {\n dt = dt\n } else {\n dt = new Date(dt)\n }\n const month = dt.getMonth() + 1\n const monthStr = month < 10 ? `0${month}` : month\n const day = dt.getDate()\n const dayStr = day < 10 ? `0${day}` : day\n const dateStr = `${dt.getFullYear()}-${monthStr}-${dayStr}`\n return dateStr\n } else {\n return null\n }\n}\n\nexport default {\n retrieveTopLevelProducts,\n retrieveChildOfferings,\n retrieveProductOfferingConfig,\n retrieveProductOfferingConfigList,\n upsertOffering,\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CoachConflictListElement.vue?vue&type=style&index=0&id=3726edbc&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('modal',{attrs:{\"title\":_vm.title,\"is-small\":_vm.isSmall},model:{value:(_vm.isModalOpen),callback:function ($$v) {_vm.isModalOpen=$$v},expression:\"isModalOpen\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('table',{staticClass:\"grid table-striped table-hover my-2\",staticStyle:{\"width\":\"100%\"}},[_c('tbody',[_c('tr',[_c('td',[_vm._t(\"default\")],2)]),_vm._l((_vm.values),function(value,index){return _c('tr',{key:index},[_c('td',[_c('div',{staticClass:\"custom-control custom-checkbox\",on:{\"click\":function($event){return _vm.toggleValue(value)}}},[_c('input',{staticClass:\"custom-control-input\",attrs:{\"type\":\"checkbox\",\"id\":(\"cb_\" + (value.id)),\"disabled\":_vm.internalDisabledIds.indexOf(value.id) >= 0,\"readonly\":_vm.internalDisabledIds.indexOf(value.id) >= 0},domProps:{\"checked\":_vm.internalSelectedIds.indexOf(value.id) >= 0},on:{\"click\":function($event){_vm.internalDisabledIds.indexOf(value.id) < 0 && _vm.toggleValue(value)}}}),_c('label',{staticClass:\"custom-control-label\",staticStyle:{\"cursor\":\"pointer\"},attrs:{\"disabled\":\"internalDisabledIds.indexOf(value.id) >= 0\",\"for\":(\"cb_\" + (value.id))},domProps:{\"textContent\":_vm._s(value.description)}})])])])})],2)]),_c('div',{staticClass:\"row mb-1\"},[_c('div',{staticClass:\"col-md-12\"},[_c('button',{staticClass:\"btn btn-danger clear-all btn-sm\",on:{\"click\":_vm.clearAll}},[_c('i',{staticClass:\"fa fa-times\"}),_vm._v(\" Clear All \")]),_c('button',{staticClass:\"btn btn-secondary btn-sm\",on:{\"click\":_vm.selectAll}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Select All \")]),_c('button',{staticClass:\"btn btn-light reset btn-sm\",on:{\"click\":_vm.reset}},[_c('i',{staticClass:\"fa fa-circle\"}),_vm._v(\" Reset \")])])])]),_vm._t(\"sidebar\")],2),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.save}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Save\")])])],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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport { getProps, useModalValue } from '@/composables/ModalValue'\n\nimport Modal from '@/components/Modal.vue'\n\nimport { ModalMultiSelectValue } from '@/lib/support/components/ModalMultiSelect/ModalMultiSelectValue'\n\nexport default defineComponent({\n name: 'ModalMultiSelect',\n components: {\n Modal,\n },\n props: {\n isSmall: { type: Boolean, required: false, default: true },\n title: { required: false, default: '', type: String },\n values: { type: Array as PropType, required: true, default: () => [] },\n disabledIds: { type: Array as PropType, required: false, default: () => [] },\n selectedIds: { type: Array as PropType, required: true, default: () => [] },\n ...getProps(),\n },\n setup(props, ctx) {\n const { isModalOpen, closeModal } = useModalValue(props, ctx)\n const internalDisabledIds = ref([])\n const internalSelectedIds = ref([])\n\n watch(\n () => props.disabledIds,\n () => {\n internalDisabledIds.value = [...props.disabledIds]\n },\n { immediate: true }\n )\n\n watch(\n () => props.selectedIds,\n () => {\n internalSelectedIds.value = [...props.selectedIds]\n },\n { immediate: true }\n )\n\n function toggleValue(thing: ModalMultiSelectValue) {\n //can't change something that is disabled.\n if (props.disabledIds.indexOf(thing.id) < 0) {\n // not selected\n if (internalSelectedIds.value.indexOf(thing.id) < 0) {\n internalSelectedIds.value.push(thing.id)\n } else {\n internalSelectedIds.value = [...internalSelectedIds.value.filter((x) => x != thing.id)]\n }\n updateSelected()\n }\n }\n\n function selectAll() {\n internalSelectedIds.value = [\n ...props.values\n .filter((x) => internalDisabledIds.value.indexOf(x.id) < 0 || props.selectedIds.indexOf(x.id) >= 0)\n .map((x) => x.id),\n ]\n updateSelected()\n }\n\n function reset() {\n internalSelectedIds.value = [...props.selectedIds]\n }\n\n function clearAll() {\n internalSelectedIds.value = []\n props.values.forEach((x) => {\n if (internalDisabledIds.value.indexOf(x.id) >= 0 && props.selectedIds.indexOf(x.id) >= 0) {\n //retain initial value.\n internalSelectedIds.value.push(x.id)\n }\n })\n }\n\n function cancel() {\n closeModal()\n }\n\n function updateSelected() {\n ctx.emit('update-selected', internalSelectedIds.value)\n }\n\n function save() {\n closeModal()\n ctx.emit('save', internalSelectedIds.value)\n }\n\n //private initialState: string[] = []\n\n return {\n isModalOpen,\n toggleValue,\n internalSelectedIds,\n internalDisabledIds,\n clearAll,\n selectAll,\n reset,\n cancel,\n save,\n }\n },\n})\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!./ModalMultiSelect.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!./ModalMultiSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModalMultiSelect.vue?vue&type=template&id=b4c78a00&scoped=true&\"\nimport script from \"./ModalMultiSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModalMultiSelect.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ModalMultiSelect.vue?vue&type=style&index=0&id=b4c78a00&lang=scss&scoped=true&\"\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 \"b4c78a00\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Combobox.vue?vue&type=style&index=0&id=0ae870a6&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DivisionImportModal.vue?vue&type=style&index=0&id=319d0564&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HtmlEditor2.vue?vue&type=style&index=0&lang=scss&\"","import { RestServiceResult } from '@/services/restService'\nimport { uniq } from 'lodash'\n\ninterface RestResultArray extends RestServiceResult {\n data: Array | null\n}\n\nexport function CombineDataArray(values: RestResultArray[]) {\n // pick both or one, or none of the values\n if (values[0].data && values[1].data) {\n return uniq([...values[0].data, ...values[1].data])\n }\n if (values[0].data && !values[1].data) {\n return values[0].data\n }\n if (values[1].data && !values[0].data) {\n return values[1].data\n }\n return []\n}\n","/**\n * Rest Operation primarily for fixing mistyped email addresses\n */\n\nimport { IndividualEmailCheck } from '@/models/IndividualEmailCheck'\nimport axios, { AxiosRequestConfig } from 'axios'\n\nconst baseUrl =\n process.env.VUE_APP_FIXEMAILSERVICE_API || `https://fixemailservices.azurewebsites.net/api/FixEmail`\n\nconst azureKey = process.env.VUE_APP_AZURE_FUNCTION_KEY\n\nconst getCorrectedEmail = async (emailAddress: IndividualEmailCheck) => {\n const response = await axios.post(`${baseUrl}`, emailAddress, {\n headers: {\n 'x-functions-key': azureKey,\n },\n } as AxiosRequestConfig)\n\n if (response) {\n return response.data\n } else {\n return emailAddress.email\n }\n}\n\nexport default {\n getCorrectedEmail,\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Contact.vue?vue&type=style&index=0&id=5aaadb94&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('button',{staticClass:\"float-right\",on:{\"click\":_vm.download}},[_c('i',{staticClass:\"fas fa-file-csv\"})]),_vm._t(\"title\",[_c('h5',{staticClass:\"mt-5\"},[_vm._v(\"Itemized Order List\")])]),_c('div',{},[_c('simple-grid',{attrs:{\"grid-data\":_vm.orderList,\"columns\":_vm.columns,\"table-striped\":true}})],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn, GridColumnAlignEnum } from '@/models/Grid/GridColumn'\nimport currency from '@/filters/currency'\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\nimport { CFormatRunningOrder, xRunningOrderLineExt } from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport { filterNA } from '@/models/Order/OrderProduct'\nimport { downloadCSV } from '@/lib/common/csv/downloadCSV'\nimport { RunningOrderProductInfo } from '@/GeneratedTypes/ListInfo/RunningOrderProductInfo'\n\nexport default defineComponent({\n components: {\n SimpleGrid,\n },\n props: {\n order: { type: Object as PropType, required: true },\n itemList: { type: Array as PropType, required: false, default: () => [] },\n },\n setup(props) {\n const columns = computed(() => {\n const retval = [] as GridColumn[]\n retval.push({ field: 'productLabel', headerText: 'Item Name', width: 300 })\n retval.push({ field: 'type', headerText: 'Type' })\n if (orderList.value.some((x) => filterNA(x.size))) {\n retval.push({ field: 'size', headerText: 'Size' })\n }\n retval.push({ field: 'orderQuantity', headerText: 'Quantity' })\n retval.push({ field: 'cost', headerText: 'Cost', textAlign: GridColumnAlignEnum.RIGHT })\n if (orderList.value.some((x) => x.name)) {\n retval.push({ field: 'name', headerText: 'Name' })\n }\n return retval\n\n /*\n if (orderList.value.some((x) => filterNA(x.size))) {\n return [\n { field: 'productLabel', headerText: 'Item Name', width: 300 },\n { field: 'type', headerText: 'Type' },\n { field: 'size', headerText: 'Size' },\n { field: 'orderQuantity', headerText: 'Quantity' },\n { field: 'cost', headerText: 'Cost', textAlign: GridColumnAlignEnum.RIGHT },\n { field: 'name', headerText: 'Name' },\n ] as GridColumn[]\n } else {\n return [\n { field: 'productLabel', headerText: 'Item Name', width: 300 },\n { field: 'type', headerText: 'Type' },\n { field: 'orderQuantity', headerText: 'Quantity' },\n { field: 'cost', headerText: 'Cost', textAlign: GridColumnAlignEnum.RIGHT },\n { field: 'name', headerText: 'Name' },\n ] as GridColumn[]\n }\n */\n })\n\n function getProductLabel(x: xRunningOrderLineExt) {\n if (x.cmsProductName) {\n return x.cmsProductName\n }\n const ilProd = props.itemList.find(\n (p) => p.upwardProductID == x.productID && p.typeProgramID == x.typeProgramID\n )\n if (ilProd && ilProd.cmsProductName) {\n return ilProd.cmsProductName\n }\n\n //fallback to previous look into the original template\n if (props.order?.products) {\n const prod = props.order?.products?.find(\n (p) => p.upwardProductID == x.productID && p.typeProgramID == x.typeProgramID\n )\n if (prod && prod.cmsProductName) {\n return prod.cmsProductName\n }\n }\n if (x.productID) {\n return x.productID\n }\n return 'n/a'\n }\n\n function supressNA(s: string) {\n if (s == 'N/A') {\n return ''\n }\n return s\n }\n\n interface OrderListItem {\n productLabel: string\n program: string | null\n type: string\n size: string\n cost: string | null | undefined\n orderQuantity: number\n name: string\n }\n const orderList = computed(() =>\n (props.order?.orderLinesExt || props.order?.orderLines)\n ?.filter((x) => x.quantity)\n .map(\n (x) =>\n ({\n productLabel: getProductLabel(x),\n program: x.typeProgramID,\n type: supressNA(x.colorDescription || x.typeColorID || ''),\n size: supressNA(x.sizeDescription || x.typeSizeID || ''),\n cost: currency(x.extendedCost),\n orderQuantity: x.quantity,\n name: x.participantName || '',\n } as OrderListItem)\n )\n )\n\n function getCost(cost: number) {\n return currency(cost)\n }\n\n function download() {\n downloadCSV(columns.value, orderList.value, 'order_items.csv')\n }\n\n return { getCost, orderList, columns, download }\n },\n})\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!./OrderListSection.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!./OrderListSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderListSection.vue?vue&type=template&id=205fe9bd&scoped=true&\"\nimport script from \"./OrderListSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderListSection.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderListSection.vue?vue&type=style&index=0&id=205fe9bd&lang=scss&scoped=true&\"\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 \"205fe9bd\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarItem.vue?vue&type=style&index=0&id=a04679a6&lang=scss&scoped=true&\"","import restService from '@/services/restService'\nimport { Camp } from '@/GeneratedTypes/Camp'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\n\nconst baseUrl = 'Camps/'\n\nconst create = async (camp: Camp) => {\n return await restService.post(`${baseUrl}`, camp)\n}\n\nconst update = async (id: string, camp: Camp) => {\n return await restService.put(`${baseUrl}${id}`, camp)\n}\n\nconst retrieve = async (id: string) => {\n return await restService.get(`${baseUrl}${id}`)\n}\n\nconst validateNew = async (camp: Camp, ruleSet = '') => {\n return await restService.post(`${baseUrl}validate`, camp, {\n params: {\n ruleSet,\n },\n })\n}\n\nconst validateExisting = async (id: string, camp: Camp) => {\n return await restService.post(`${baseUrl}${id}/validate`, camp)\n}\n\nconst newTemplate = async (upwardLeagueTypeID: string) => {\n return await restService.get(`${baseUrl}new/${upwardLeagueTypeID}`)\n}\n\nexport default {\n create,\n retrieve,\n update,\n validateNew,\n validateExisting,\n newTemplate,\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CoachTeamCard.vue?vue&type=style&index=0&id=2a365cf6&lang=scss&scoped=true&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PracticeScheduler.vue?vue&type=style&index=0&id=74bdc1ea&lang=scss&scoped=true&\"","import { DivisionGameInfo } from '@/GeneratedTypes/ListInfo/DivisionGameInfo'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { RuntimeException } from '@/lib/common/exceptions/RuntimeException'\nimport gamesClient from '@/clients/gamesClient'\nimport teamsClient from '@/clients/teamsClient'\nimport appointmentClient from '@/clients/appointmentClient'\nimport facilitiesClient from '@/clients/facilitiesClient'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { LeagueSpecialEventInfo } from '@/GeneratedTypes/ListInfo/LeagueSpecialEventInfo'\nimport { LeagueSpecialEvent } from '@/GeneratedTypes/LeagueSpecialEvent'\nimport { FacilityEventInfo } from '@/GeneratedTypes/ListInfo/FacilityEventInfo'\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\n\nimport { DivisionTeamPracticeAppointmentInfoModified } from '@/models/Practices/DivisionTeamPracticeAppointmentInfoModified'\nimport { CheerSquadGameAppointmentInfo } from '@/GeneratedTypes/ListInfo/CheerSquadGameAppointmentInfo'\nimport { defineActions, defineGetters, defineMutations } from 'direct-vuex'\nimport { moduleActionContext } from '@/store/index'\nimport { CheerSquadGameAppointmentInfoModified } from '@/models/Appointments/CheerSquadGameAppointmentInfoModified'\nimport { isEmptyCheerSquadAppointment } from '@/lib/support/models/CheerSquadGameAppointment/data'\nimport { DivisionGameInfoToDivisionGame } from '@/lib/support/models/DivisionGame/DivisionGameInfoToDivisionGame'\n\nimport { cloneDeep } from 'lodash'\nimport dayjs from 'dayjs'\n\n/**\n * Short circuits a trip to the server for game info.\n * @param g\n * @param teams\n * @constructor\n */\nfunction SynthesizeGameInfo(g: DivisionGameInfo, teams: DivisionTeamInfo[]): DivisionGameInfo {\n return {\n ...g,\n serverGameEnd: null,\n serverGameStart: null,\n divisionName: g.divisionName,\n homeTeamName: teams.find((x) => x.teamID == g.homeTeamID)?.teamName ?? 'n/a',\n awayTeamName: teams.find((x) => x.teamID == g.awayTeamID)?.teamName ?? 'n/a',\n facilityName: '',\n volunteers:\n g.volunteers?.map((v) => {\n return {\n ...v,\n leagueID: g.leagueID,\n gameID: g.gameID,\n }\n }) ?? [],\n }\n}\n\n/**\n * Short circuits a trip to the server for practice info.\n * @param g\n * @param teams\n * @constructor\n */\n\nfunction teamName(id: number, teams: DivisionTeamInfo[]) {\n return teams.find((x) => x.teamID == id)?.teamName ?? 'n/a'\n}\n\n/**\n * Short circuits a trip to the server for game info.\n * @param g\n * @param teams\n * @constructor\n */\n\nfunction SynthesizeGameToEvent(g: DivisionGameInfo, teams: DivisionTeamInfo[]): FacilityEventInfo {\n return {\n eventID: g.gameID,\n typeFacilityEventID: FacilityEventEnum.GAMES,\n eventStart: g.gameStart,\n eventEnd: g.gameEnd,\n eventName: `${teamName(g.homeTeamID, teams)} vs ${teamName(g.awayTeamID, teams)}`,\n roundNumber: g.roundNumber,\n facilityName: '',\n divisionID: g.divisionID,\n leagueID: g.leagueID,\n divisionName: g.divisionName,\n facilityID: g.facilityID,\n typeProgramID: g.typeProgramID,\n }\n}\n\nexport interface leagueDivisionProgramParams {\n id: UpwardLeagueIDType\n divisionID: number\n programID: string\n}\n\nexport interface leagueDivisionOptionalProgramParams {\n id: UpwardLeagueIDType\n divisionID?: number\n programID: string\n}\n\nclass SchedulingException extends RuntimeException {\n name = 'Scheduling Exception'\n}\n\ninterface SchedulingState {\n statusText: string\n gamesStatusText: string\n appointments: CheerSquadGameAppointmentInfo[]\n games: DivisionGameInfo[]\n events: FacilityEventInfo[]\n teams: DivisionTeamInfo[]\n specialEvents: LeagueSpecialEventInfo[]\n program: string //program selected.\n teamsLoading: boolean\n scheduleChanging: boolean\n}\nconst state: SchedulingState = {\n games: [],\n events: [],\n teams: [],\n appointments: [],\n specialEvents: [],\n program: '',\n statusText: '',\n gamesStatusText: '',\n teamsLoading: false,\n scheduleChanging: false,\n}\n\nexport enum mutationNames {\n setAppointments = 'setAppointments',\n setStatus = 'setStatus',\n setGames = 'setGames',\n setProgram = 'setProgram',\n setTeams = 'setTeams',\n updateGame = 'updateGame',\n removeGame = 'removeGame',\n setEvents = 'setEvents',\n setSpecialEvents = 'setSpecialEvents',\n setTeamsLoading = 'setTeamsLoading',\n setGamesStatusText = 'setGamesStatusText',\n setScheduleChanging = 'setScheduleChanging',\n}\nconst mutations = defineMutations()({\n setAppointments(\n state: SchedulingState,\n { appointments }: { appointments: CheerSquadGameAppointmentInfo[] }\n ) {\n state.appointments = appointments\n },\n\n setStatus(state: SchedulingState, { status }: { status: string }) {\n state.statusText = status\n },\n setGameStatusText(state: SchedulingState, { status }: { status: string }) {\n state.gamesStatusText = status\n },\n setGames(state: SchedulingState, { games }: { games: DivisionGameInfo[] }) {\n state.games = games\n },\n setProgram(state: SchedulingState, { program }: { program: string }) {\n state.program = program\n },\n removeGame(state: SchedulingState, { gameID }: { gameID: number }) {\n const index = state.games.findIndex((x) => x.gameID === gameID)\n if (index >= 0) {\n state.games.splice(index, 1)\n }\n\n const eventIndex = state.events.findIndex(\n (x) => x.typeFacilityEventID == FacilityEventEnum.GAMES && x.eventID == gameID\n )\n if (eventIndex >= 0) {\n state.events.splice(eventIndex, 1)\n }\n },\n setTeams(state: SchedulingState, { teams }: { teams: DivisionTeamInfo[] }) {\n state.teams = teams\n },\n setEvents(state: SchedulingState, { events }: { events: FacilityEventInfo[] }) {\n state.events = events\n },\n setTeamsLoading(state: SchedulingState, { isLoading }: { isLoading: boolean }) {\n state.teamsLoading = isLoading\n },\n setScheduleChanging(state: SchedulingState, { isChanging }: { isChanging: boolean }) {\n state.scheduleChanging = isChanging\n },\n setSpecialEvents(state: SchedulingState, { specialEvents }: { specialEvents: LeagueSpecialEventInfo[] }) {\n state.specialEvents = specialEvents\n },\n\n /**\n * Will update the game and if the game isn't found it will add it.\n * @param state\n * @param teams\n */\n updateGame(state, payload: { game: DivisionGameInfo }) {\n const { game } = payload\n const i = state.games.findIndex((x) => x.gameID == game.gameID)\n if (i >= 0) {\n state.games.splice(i, 1, SynthesizeGameInfo(game, state.teams))\n } else {\n state.games.push(SynthesizeGameInfo(game, state.teams))\n }\n const k = state.events.findIndex(\n (x) => x.typeFacilityEventID == FacilityEventEnum.GAMES && x.eventID == game.gameID\n )\n if (k >= 0) {\n state.events.splice(k, 1, SynthesizeGameToEvent(game, state.teams))\n } else {\n state.events.push(SynthesizeGameToEvent(game, state.teams))\n }\n },\n})\n\nexport enum getterNames {\n appointments = 'appointments',\n games = 'games',\n teams = 'teams',\n events = 'events',\n specialEvents = 'specialEvents',\n program = 'program',\n statusText = 'statusText',\n teamsLoading = 'teamsLoading',\n gamesStatusText = 'gamesStatusText',\n scheduleChanging = 'scheduleChanging',\n}\n\nconst getters = defineGetters()({\n appointments: (state: SchedulingState) => state.appointments,\n events: (state: SchedulingState) => state.events,\n games: (state: SchedulingState) => state.games,\n program: (state: SchedulingState) => state.program,\n teams: (state: SchedulingState) => state.teams as DivisionTeamInfo[],\n specialEvents: (state: SchedulingState) => state.specialEvents,\n statusText: (state: SchedulingState) => state.statusText,\n gamesStatusText: (state: SchedulingState) => state.gamesStatusText,\n teamsLoading: (state: SchedulingState) => state.teamsLoading,\n scheduleChanging: (state: SchedulingState) => state.scheduleChanging,\n})\n\nconst actions = defineActions({\n async loadAppointments(context, { id }: { id: UpwardLeagueIDType }) {\n const { commit } = actionContext(context)\n if (id === undefined) {\n throw new SchedulingException('Cannot load appointments, problem improper league passed.')\n }\n try {\n const appointments = await appointmentClient.retrieveAllAppointments(id)\n\n commit.setAppointments({ appointments: appointments ?? [] })\n } catch (exc: any) {\n throw new SchedulingException(`unable to retrieve appointments from league id: ${id}`, exc)\n }\n },\n\n async removeAppointment(\n { commit, dispatch },\n { id, appointmentID }: { id: UpwardLeagueIDType; appointmentID: number }\n ) {\n if (id === undefined) {\n throw new SchedulingException('Cannot load appointments, problem improper league passed.')\n }\n try {\n commit(mutationNames.setScheduleChanging, { isChanging: true })\n\n await appointmentClient.remove(id, appointmentID)\n commit(mutationNames.setScheduleChanging, { isChanging: false })\n await Promise.all([dispatch('loadAppointments', { id }), dispatch('loadEvents', { id })])\n } catch (exc: any) {\n throw new SchedulingException(`unable to retrieve appointments from league id: ${id}`, exc)\n }\n },\n\n async loadGames({ commit }, { id }: { id: UpwardLeagueIDType }) {\n if (id === undefined) {\n throw new SchedulingException('Cannot load games, problem improper league passed.')\n }\n try {\n const games = await gamesClient.retrieveAllGames(id)\n\n commit(mutationNames.setGames, { games })\n } catch (exc: any) {\n throw new SchedulingException(`unable to retrieve games from league id: ${id}`, exc)\n }\n },\n async deletePractice(\n { commit, dispatch },\n {\n id,\n teamID,\n programID,\n divisionID,\n practiceIDs,\n }: {\n id: UpwardLeagueIDType\n teamID: number\n divisionID: number\n programID: string\n practiceIDs: number[]\n }\n ) {\n if (!id) {\n throw new SchedulingException(\"Practice save can't continue the way it is set up.\")\n }\n try {\n commit(mutationNames.setScheduleChanging, { isChanging: true })\n\n await teamsClient.deletePractices(id, programID, divisionID, teamID, practiceIDs)\n commit(mutationNames.setScheduleChanging, { isChanging: false })\n await Promise.all([dispatch('loadEvents', { id }), dispatch('loadTeams', { id, programID })])\n } catch (exc: any) {\n throw new SchedulingException(`unable to remove practice on ${teamID}`, exc)\n }\n },\n\n async addPractices(\n { commit, dispatch },\n {\n id,\n programID,\n practices,\n }: { id: UpwardLeagueIDType; programID: string; practices: DivisionTeamPracticeAppointmentInfoModified[] }\n ) {\n const teamMap = new Map()\n practices\n .map((x) => x.teamID)\n .forEach((teamID) => {\n teamMap.set(\n teamID,\n practices.filter((x) => x.teamID == teamID)\n )\n })\n\n commit(mutationNames.setScheduleChanging, { isChanging: true })\n\n if (practices.length && teamMap.size) {\n // now we have a map of teamids and practices (usually this would be one)\n for (const k of teamMap.keys()) {\n await teamsClient.setPractices(id, k, teamMap.get(k) ?? [])\n }\n\n commit(mutationNames.setScheduleChanging, { isChanging: false })\n await dispatch('loadEvents', { id })\n await dispatch('loadTeams', { id, programID })\n }\n },\n async clearPractices(\n { commit, dispatch },\n {\n id,\n programID,\n divisionID,\n teamIDs,\n }: { id: UpwardLeagueIDType; programID: string; divisionID: number; teamIDs: number[] }\n ) {\n try {\n let i = 0\n commit(mutationNames.setScheduleChanging, { isChanging: true })\n commit(mutationNames.setStatus, { status: 'Clearing... 0%' })\n if (teamIDs.length) {\n for (const x of teamIDs) {\n i++\n commit(mutationNames.setStatus, {\n status: `Clearing... ${Math.floor((i * 100) / teamIDs.length)}%`,\n })\n await teamsClient.clearPractices(id, programID, divisionID, [x])\n }\n commit(mutationNames.setStatus, { status: 'Clearing... 100%' })\n commit(mutationNames.setStatus, { status: '' })\n }\n\n commit(mutationNames.setScheduleChanging, { isChanging: false })\n\n await dispatch('loadEvents', { id })\n await dispatch('loadTeams', { id, programID })\n } catch (exc: any) {\n throw new SchedulingException(`unable to clear practices form league id: ${id}`, exc)\n }\n },\n\n async clearAppointments(\n context,\n {\n id,\n\n teamIDs,\n }: { id: UpwardLeagueIDType; teamIDs: number[] }\n ) {\n try {\n let i = 0\n const { commit, dispatch } = actionContext(context)\n commit.setScheduleChanging({ isChanging: true })\n commit.setStatus({ status: 'Clearing... 0%' })\n if (teamIDs.length) {\n for (const x of teamIDs) {\n i++\n commit.setStatus({\n status: `Clearing... ${Math.floor((i * 100) / teamIDs.length)}%`,\n })\n await appointmentClient.clearAppointments(id, x)\n }\n commit.setStatus({ status: 'Clearing... 100%' })\n setTimeout(() => commit.setStatus({ status: '' }), 1000)\n }\n\n commit.setScheduleChanging({ isChanging: false })\n await dispatch.loadEvents({ id })\n await dispatch.loadAppointments({ id })\n } catch (exc: any) {\n throw new SchedulingException(`unable to clear practices form league id: ${id}`, exc)\n }\n },\n\n async clearGames(context, { id, gameIDs }: { id: UpwardLeagueIDType; gameIDs: number[] }) {\n let i = 0\n const { commit, dispatch } = actionContext(context)\n commit.setScheduleChanging({ isChanging: true })\n commit.setGameStatusText({ status: 'Clearing... 0%' })\n if (gameIDs.length) {\n for (const gameId of gameIDs) {\n i++\n commit.setGameStatusText({\n status: `Clearing... ${Math.floor((i * 100) / gameIDs.length)}%`,\n })\n await gamesClient.remove(id, gameId)\n }\n commit.setGameStatusText({ status: 'Clearing... 100%' })\n setTimeout(() => commit.setGameStatusText({ status: '' }), 1000)\n }\n\n commit.setScheduleChanging({ isChanging: false })\n\n await Promise.all([dispatch.loadGames({ id }), dispatch.loadEvents({ id })])\n },\n\n async loadEvents({ commit }, { id }: { id: UpwardLeagueIDType }) {\n if (id === undefined) {\n throw new SchedulingException('Cannot load events problem improper league passed.')\n }\n\n try {\n const events = await facilitiesClient.retrieveEvents(id)\n\n commit(mutationNames.setEvents, { events })\n } catch (exc: any) {\n throw new SchedulingException(`unable to retrieve events from league id: ${id}`, exc)\n }\n },\n async loadTeams({ commit }, p: leagueDivisionOptionalProgramParams) {\n if (!p.programID || !p.id) {\n throw new SchedulingException(\n `Cannot retrieve teams without a program id (${p.programID}) or league id (${p.id})`\n )\n }\n try {\n commit(mutationNames.setTeamsLoading, { isLoading: true })\n const teams = await teamsClient.retrieveTeamList({\n leagueId: p.id,\n divisionId: p.divisionID,\n typeProgramId: p.programID,\n })\n\n commit(mutationNames.setTeams, { teams })\n } catch (exc: any) {\n throw new SchedulingException(`unable to retrieve teams form league id: ${p.id}`, exc)\n } finally {\n commit(mutationNames.setTeamsLoading, { isLoading: false })\n }\n },\n async pairTeams({ commit, dispatch }, p: leagueDivisionProgramParams) {\n if (!p.id || !p.programID || !p.divisionID) {\n throw new SchedulingException(\"Pair teams can't continue the way it is set up.\")\n }\n try {\n commit(mutationNames.setScheduleChanging, { isChanging: true })\n await gamesClient.pairTeams(p.id, p.programID, p.divisionID)\n commit(mutationNames.setScheduleChanging, { isChanging: false })\n await Promise.all([\n dispatch('loadGames', {\n id: p.id,\n }),\n ])\n } catch (exc: any) {\n throw new SchedulingException(`unable to pair teams ${p.id}`, exc)\n }\n },\n async upsertGame({ commit }, { id, game }: { id: UpwardLeagueIDType; game: DivisionGameInfo }) {\n if (!id || !game) {\n throw new SchedulingException(\"Game save can't continue the way it is set up.\")\n }\n\n const event = {\n ...DivisionGameInfoToDivisionGame(cloneDeep(game)),\n gameEnd: dayjs(game.gameEnd ?? '').format('YYYY-MM-DDTHH:mm:ss'),\n gameStart: dayjs(game.gameStart ?? '').format('YYYY-MM-DDTHH:mm:ss'),\n }\n\n await gamesClient.validate(id, event)\n commit(mutationNames.setScheduleChanging, { isChanging: true })\n const newGame = await gamesClient.save(id, event)\n game.gameID = newGame?.gameID ?? 0\n commit(mutationNames.updateGame, { game })\n commit(mutationNames.setScheduleChanging, { isChanging: false })\n },\n async upsertAppointments(\n context,\n { id, appointments }: { id: UpwardLeagueIDType; appointments: CheerSquadGameAppointmentInfoModified[] }\n ) {\n const { commit, dispatch } = actionContext(context)\n if (!id || !appointments) {\n throw new SchedulingException(\"Game save can't continue the way it is set up.\")\n }\n\n const newappts = appointments.filter((x) => isEmptyCheerSquadAppointment(x))\n const updates = appointments.filter((x) => !isEmptyCheerSquadAppointment(x))\n\n commit.setScheduleChanging({ isChanging: true })\n await appointmentClient.save(id, newappts)\n for (let i = 0; i < updates.length; i++) {\n const apt = updates[i]\n await appointmentClient.update(id, apt)\n }\n commit.setScheduleChanging({ isChanging: false })\n await Promise.all([dispatch.loadAppointments({ id }), dispatch.loadEvents({ id })])\n },\n async removeGame(context, payload: { id: UpwardLeagueIDType; gameID: number }): Promise {\n const { commit } = context\n const { id, gameID } = payload\n if (!id) {\n throw new SchedulingException(\"Game save can't continue the way it is set up.\")\n }\n commit(mutationNames.setScheduleChanging, { isChanging: true })\n await gamesClient.remove(id, gameID)\n commit(mutationNames.removeGame, { gameID })\n commit(mutationNames.setScheduleChanging, { isChanging: false })\n },\n\n async loadSpecialEvents(context, { id }: { id: UpwardLeagueIDType }) {\n const { commit } = actionContext(context)\n if (id === undefined) {\n throw new SchedulingException('Cannot load special events, problem improper league passed.')\n }\n try {\n const specialEvents = await appointmentClient.retrieveAllSpecialEvents(id)\n\n commit.setSpecialEvents({ specialEvents: specialEvents ?? [] })\n } catch (exc: any) {\n throw new SchedulingException(`unable to retrieve special events from league id: ${id}`, exc)\n }\n },\n\n async upsertSpecialEvent(\n context,\n { id, specialEvent }: { id: UpwardLeagueIDType; specialEvent: LeagueSpecialEvent }\n ) {\n const { dispatch } = actionContext(context)\n if (specialEvent.eventID == 0) {\n await appointmentClient.saveSpecialEvent(specialEvent)\n } else {\n await appointmentClient.updateSpecialEvent(id, specialEvent)\n }\n await dispatch.loadSpecialEvents({ id: id })\n },\n\n async removeSpecialEvent(context, payload: { id: UpwardLeagueIDType; eventID: number }): Promise {\n const { dispatch } = actionContext(context)\n const { id, eventID } = payload\n await appointmentClient.removeSpecialEvent(id, eventID)\n await dispatch.loadSpecialEvents({ id: id })\n },\n})\n\nexport const namespace = 'scheduling'\n\nexport const scheduling = {\n namespaced: true as true,\n state,\n actions,\n getters,\n mutations,\n}\nconst actionContext = (context: any) => moduleActionContext(context, scheduling)\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[_c('input-label',{attrs:{\"label\":_vm.label,\"required\":_vm.required}}),_c('div',{staticClass:\"form-row m-0\"},[_c('div',{staticClass:\"col-sm col-9 py-0\"},[_c('MaskedInputElement',{attrs:{\"mask\":\"###-###-####\",\"maxlen\":\"10\",\"placeholder\":\"Area code and phone number\"},on:{\"change\":_vm.onChange},model:{value:(_vm.areaCodeAndNumber),callback:function ($$v) {_vm.areaCodeAndNumber=$$v},expression:\"areaCodeAndNumber\"}})],1),_c('div',{staticClass:\"col-sm-auto col-3 py-0\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.extension),expression:\"extension\",modifiers:{\"number\":true}}],staticClass:\"form-control\",attrs:{\"type\":\"number\",\"maxlength\":\"4\",\"placeholder\":\"Ext\",\"min\":\"0\",\"max\":\"9999\"},domProps:{\"value\":(_vm.extension)},on:{\"change\":_vm.onChange,\"input\":function($event){if($event.target.composing){ return; }_vm.extension=_vm._n($event.target.value)},\"blur\":function($event){return _vm.$forceUpdate()}}})]),_c('div',{staticClass:\"col-sm-auto col-9 py-0\"},[_c('PhoneTypeSelect',{on:{\"change\":_vm.onChange},model:{value:(_vm.phoneTypeId),callback:function ($$v) {_vm.phoneTypeId=$$v},expression:\"phoneTypeId\"}})],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\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport PhoneTypeSelect from '@/components/PhoneTypeSelect.vue'\nimport { IndividualPhone } from '@/GeneratedTypes/IndividualPhone'\nimport MaskedInputElement from '@/elements/MaskedInputElement.vue'\n\nexport default defineComponent({\n name: 'PhoneInput',\n components: {\n TextInput,\n InputLabel,\n PhoneTypeSelect,\n MaskedInputElement,\n },\n props: {\n value: { type: Object as PropType, required: true },\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n },\n setup(props, ctx) {\n const phoneTypeId = ref('')\n const extension = ref('')\n const areaCodeAndNumber = ref('')\n\n const newPhoneObject = computed(() => {\n const phone: IndividualPhone = {\n extension: extension.value,\n phoneNumber: areaCodeAndNumber.value,\n phoneID: props.value.phoneID,\n typePhoneID: phoneTypeId.value,\n priority: props.value.priority,\n allowSMS: props.value.allowSMS,\n }\n\n return phone\n })\n\n const isValid = computed(() => {\n return areaCodeAndNumber.value.length >= 10\n })\n\n function onChange() {\n // don't fire a change unless we have a complete object.\n if (isValid.value) {\n ctx.emit('input', newPhoneObject.value)\n ctx.emit('change', newPhoneObject.value)\n }\n }\n\n watch(\n () => props.value,\n () => {\n if (\n extension.value !== props.value.extension ||\n areaCodeAndNumber.value !== props.value.phoneNumber ||\n phoneTypeId.value !== props.value.typePhoneID\n ) {\n phoneTypeId.value = props.value.typePhoneID\n extension.value = props.value.extension ?? ''\n areaCodeAndNumber.value = props.value.phoneNumber.replace(/[()-]/g, '')\n }\n },\n { deep: true, immediate: true }\n )\n\n return {\n areaCodeAndNumber,\n extension,\n phoneTypeId,\n onChange,\n }\n },\n})\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!./PhoneInput.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!./PhoneInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PhoneInput.vue?vue&type=template&id=70336bcc&scoped=true&\"\nimport script from \"./PhoneInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./PhoneInput.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PhoneInput.vue?vue&type=style&index=0&id=70336bcc&scoped=true&lang=scss&\"\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 \"70336bcc\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RefundRemoveTransaction.vue?vue&type=style&index=0&id=292e68bd&scoped=true&lang=scss&\"","import { OrderProduct } from '@/models/Order/OrderProduct'\nimport { cloneDeep } from 'lodash'\n\nexport function setProduct(\n products: OrderProduct[],\n {\n productID,\n quantity,\n quantityFree,\n colorID,\n sizeID,\n }: { productID: number; colorID: string; sizeID: string; quantity: number; quantityFree: number }\n) {\n const pI = products.findIndex((x) => x.id == productID)\n\n if (pI >= 0) {\n const p = products[pI]\n const qI = p.productColorSizes?.findIndex((y) => y.typeSizeID == sizeID && y.typeColorID == colorID) ?? -1\n if (qI >= 0) {\n const q = cloneDeep(p.productColorSizes![qI])\n q.orderQuantity = quantity\n q.orderFreeQuantity = quantityFree\n p.productColorSizes!.splice(qI, 1, q)\n products.splice(pI, 1, p)\n }\n }\n return products\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecialEventCalendar.vue?vue&type=style&index=1&lang=scss&\"","import { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\nimport { getEmptySavedProductOfferingConfig } from '@/lib/support/models/SaveProductOfferingConfig/SavedProductOfferingConfig'\nimport { Camp } from '@/GeneratedTypes/Camp'\n\nexport function getEmptyCamp(): Camp {\n return {\n campStartDate: new Date(),\n campEndDate: new Date(),\n id: 0,\n typeLeagueID: '',\n typeProductGroupID: '',\n leagueName: '',\n publicDisplayName: null,\n upwardLeagueID: null,\n registrationBeginDate: new Date(),\n registrationEndDate: new Date(),\n evalDescription: null,\n lateDate: new Date(),\n leagueDirectorPartnerID: 0,\n partnerContact: getEmptyContact(),\n isPrivate: false,\n bailedReason: null,\n allowAssistantCoachLinks: false,\n isMailIn: false,\n isOPRLeague: false,\n otherRegistrationVendorName: null,\n leagueRegistrationURL: null,\n typeCountryID: 'US',\n leagueFinderMessage: '',\n programMissionObjective: '',\n typeTimezoneID: '',\n defaultTypePaymentMethodID: null,\n useInternationalDateFormat: false,\n fromEmailAddress: null,\n fromEmailDisplayName: null,\n registrationInfo: null,\n accounts: [],\n programs: null,\n playerUDFs: null,\n roles: null,\n canEdit: true,\n canEditReason: null,\n productOfferingConfig: getEmptySavedProductOfferingConfig(),\n leagueFinderURLOverride: null,\n requestRiskMitigationInfo: false,\n ageCutoffDate: null,\n gradeDescriptions: [],\n }\n}\n","import { MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport campsClient from '@/clients/campsClient'\nimport { Camp } from '@/GeneratedTypes/Camp'\nimport sessionObjectsClient from '@/clients/sessionObjectsClient'\nimport { LeagueRegistration } from '@/GeneratedTypes/LeagueRegistration'\nimport { initializeNewProgramGradeData } from '@/services/gradeService'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { ActionsImpl } from 'direct-vuex'\nimport { getEmptyCamp } from '@/lib/support/models/Camp/data'\nimport { defineGetters } from 'direct-vuex'\nimport { uniqueUserIdCheck } from '@/store/helper'\nimport store from '@/store'\n\ninterface CampsState {\n currentItem: Camp\n}\n\nconst campsState: CampsState = {\n currentItem: getEmptyCamp(),\n}\n\nexport enum getterNames {\n currentItem = 'currentItem',\n}\n\nconst getterTree = defineGetters()({\n currentItem: (state) => state.currentItem,\n})\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setCurrent](state, { item }: { item: Camp }) {\n state.currentItem = item\n store.commit.leagueAbstraction.setCurrentCamp({ item })\n },\n}\n\nexport enum actionNames {\n create = 'create',\n update = 'update',\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n validate = 'validate',\n cache = 'cache',\n loadFromCache = 'loadFromCache',\n beginCreating = 'beginCreating',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.retrieveAndSetAsCurrent]({ commit }, { id }: { id: string }): Promise {\n const result = await campsClient.retrieve(id)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n\n return result.data\n }\n\n return null\n },\n async [actionNames.create]({ commit, rootGetters }, { item }: { item: Camp }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const result = await campsClient.create(item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n\n await sessionObjectsClient.delete(`camp.new.${uniqueUserId}`)\n return result.data\n }\n\n return null\n },\n async [actionNames.update]({ commit }, { item }: { item: Camp }): Promise {\n const result = await campsClient.update(item.upwardLeagueID!, item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n return result.data\n }\n\n return null\n },\n async [actionNames.validate](\n { commit },\n { item, ruleSet = '' }: { item: Camp; ruleSet: string }\n ): Promise {\n const isNew = !item.upwardLeagueID\n\n const validationResult = await (isNew\n ? campsClient.validateNew(item, ruleSet)\n : campsClient.validateExisting(item.upwardLeagueID!, item))\n\n if (!validationResult.isSuccess) {\n return false\n }\n\n commit(mutationNames.setCurrent, { item: validationResult.data!.model })\n return true\n },\n async [actionNames.cache]({ commit, rootGetters }, { item }: { item: Camp }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const isNew = !item.upwardLeagueID\n const cacheKey = `camp.${isNew ? `new.${uniqueUserId}` : item.upwardLeagueID}`\n const cacheResult = await sessionObjectsClient.createOrUpdate(cacheKey, item)\n\n if (!cacheResult.isSuccess) {\n return false\n }\n\n commit(mutationNames.setCurrent, { item })\n return true\n },\n async [actionNames.loadFromCache]({ commit, rootGetters }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const result = await sessionObjectsClient.retrieve(`camp.new.${uniqueUserId}`)\n\n if (!result.isSuccess) {\n return false\n }\n\n const item = result.data!\n commit(mutationNames.setCurrent, { item })\n\n return true\n },\n async [actionNames.beginCreating](\n { commit, dispatch },\n {\n name,\n typeLeagueID,\n publicDisplayName,\n partnerContact,\n }: { name: string; typeLeagueID: string; publicDisplayName: string; partnerContact: ContactInfo | null }\n ): Promise {\n const result = await campsClient.newTemplate(typeLeagueID)\n\n if (!result.isSuccess) {\n return false\n }\n\n const item = result.data!\n\n item.publicDisplayName = publicDisplayName\n item.leagueName = name\n item.isOPRLeague = true\n item.canEdit = true\n\n if (item.programs != null && item.programs.length > 0) {\n const programTypeId = item.programs[0].typeProgramID\n\n initializeNewProgramGradeData(item, programTypeId)\n }\n\n // TODO: fix hard coded values.\n if (item.registrationInfo === null) {\n const registrationInfo: LeagueRegistration = {\n allowCreditCard: true,\n allowPayLater: true,\n allowSizingEntry: false,\n allowGeneralNotes: false,\n allowDonations: false,\n allowWaitlist: true,\n onlineRegistrationBeginDate: null,\n onlineRegistrationEndDate: null,\n donationExplanation: '',\n registrationStartMessage: '',\n confirmationMessage: '',\n twoChildDiscountAmount: 0,\n threeChildDiscountAmount: 0,\n fourOrMoreChildDiscountAmount: 0,\n allowDiscountCodes: false,\n emailLDOnDiscountCodeUse: false,\n discountCodes: [],\n bypassLinks: [],\n contactLine1: '',\n contactLine2: '',\n contactLine3: '',\n contactLine4: '',\n contactLine5: '',\n }\n\n item.registrationInfo = registrationInfo\n }\n\n if (partnerContact) {\n item.partnerContact = {\n firstName: partnerContact.firstName!,\n lastName: partnerContact.lastName!,\n emailAddress: partnerContact.emailAddress!,\n emailValid: partnerContact.emailValid,\n emailValidReason: partnerContact.emailValidReason,\n primaryPhoneNumber: partnerContact.primaryPhone!,\n primaryPhoneTypeID: partnerContact.primaryPhoneTypeID!,\n secondaryPhoneNumber: partnerContact.secondaryPhone,\n secondaryPhoneTypeID: partnerContact.secondaryPhoneTypeID,\n alternatePhoneNumber: partnerContact.alternatePhone,\n alternatePhoneTypeID: partnerContact.alternatePhoneTypeID,\n yearsExperience: partnerContact.yearsExperience,\n isFullTime: partnerContact.isFullTime,\n typePartnerRoleID: partnerContact.typePartnerRoleID!,\n typePreferredDayOfWeekID: partnerContact.preferredContactDayOfWeek!,\n typePreferredTimeOfDayID: partnerContact.preferredContactTimeOfDay!,\n typePreferredContactMethodID: partnerContact.preferredContactMethod!,\n }\n\n item.leagueDirectorPartnerID = partnerContact.id\n }\n\n commit(mutationNames.setCurrent, { item })\n\n await dispatch(actionNames.cache, { item })\n\n return true\n },\n}\n\nexport const namespace = 'camps'\n\nexport const camps = {\n namespaced: true as true,\n state: campsState,\n getters: getterTree,\n mutations,\n actions,\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteItem.vue?vue&type=style&index=0&id=290b42af&scoped=true&lang=scss&\"","import { SavedProductOfferingConfig } from '@/GeneratedTypes/SavedProductOfferingConfig'\n\nexport function getEmptySavedProductOfferingConfig(): SavedProductOfferingConfig {\n return {\n id: 0,\n name: '',\n typeLeagueID: '',\n typeProductGroupID: '',\n accountNumber: '',\n playerEstimate: 0,\n cheerEstimate: 0,\n sportCoachEstimate: 0,\n cheerCoachEstimate: 0,\n firstPracticeDateEstimate: null,\n details: null,\n gradesByGender: null,\n startupOrderProducts: null,\n }\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConnectOverview.vue?vue&type=style&index=0&id=c1927de8&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SideBySideScroll.vue?vue&type=style&index=0&id=6a61620c&lang=scss&scoped=true&\"","import { Contact } from '@/GeneratedTypes/Partner/Contact'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\n\nimport { cleanPhoneNumber } from '@/services/phoneNumberService'\n\nexport function GetEmptyContactInfo(): ContactInfo {\n return {\n firstName: '',\n lastName: '',\n fullName: '',\n emailAddress: '',\n emailValid: 'true',\n emailValidReason: '',\n primaryPhone: '',\n primaryPhoneTypeID: null,\n secondaryPhone: null,\n secondaryPhoneTypeID: null,\n alternatePhone: null,\n alternatePhoneTypeID: null,\n yearsExperience: 0,\n isFullTime: false,\n typePartnerRoleID: null,\n preferredContactDayOfWeek: null,\n preferredContactTimeOfDay: null,\n preferredContactMethod: null,\n id: 0,\n trained: false,\n }\n}\n\nexport function ContactToContactInfo(contact: Contact | null, id: number): ContactInfo {\n if (contact) {\n return {\n firstName: contact.firstName!,\n lastName: contact.lastName!,\n fullName: `${contact.firstName} ${contact.lastName}`,\n emailAddress: contact.emailAddress!,\n emailValid: contact.emailValid,\n emailValidReason: contact.emailValidReason,\n primaryPhone: cleanPhoneNumber(contact.primaryPhoneNumber!),\n primaryPhoneTypeID: contact.primaryPhoneTypeID!,\n secondaryPhone: cleanPhoneNumber(contact.secondaryPhoneNumber),\n secondaryPhoneTypeID: contact.secondaryPhoneTypeID,\n alternatePhone: cleanPhoneNumber(contact.alternatePhoneNumber),\n alternatePhoneTypeID: contact.alternatePhoneTypeID,\n yearsExperience: contact.yearsExperience,\n isFullTime: contact.isFullTime,\n typePartnerRoleID: contact.typePartnerRoleID!,\n preferredContactDayOfWeek: contact.typePreferredDayOfWeekID!,\n preferredContactTimeOfDay: contact.typePreferredTimeOfDayID!,\n preferredContactMethod: contact.typePreferredContactMethodID!,\n id,\n trained: false,\n }\n }\n\n const emptyContact = GetEmptyContactInfo()\n emptyContact.id = id\n return emptyContact\n}\n\nexport function ContactInfoToContact(contactInfo: ContactInfo): Contact {\n return {\n firstName: contactInfo.firstName!,\n lastName: contactInfo.lastName!,\n emailAddress: contactInfo.emailAddress!,\n emailValid: contactInfo.emailValid,\n emailValidReason: contactInfo.emailValidReason,\n primaryPhoneNumber: cleanPhoneNumber(contactInfo.primaryPhone!),\n primaryPhoneTypeID: contactInfo.primaryPhoneTypeID!,\n secondaryPhoneNumber: cleanPhoneNumber(contactInfo.secondaryPhone),\n secondaryPhoneTypeID: contactInfo.secondaryPhoneTypeID,\n alternatePhoneNumber: cleanPhoneNumber(contactInfo.alternatePhone),\n alternatePhoneTypeID: contactInfo.alternatePhoneTypeID,\n yearsExperience: contactInfo.yearsExperience,\n isFullTime: contactInfo.isFullTime,\n typePartnerRoleID: contactInfo.typePartnerRoleID!,\n typePreferredDayOfWeekID: contactInfo.preferredContactDayOfWeek!,\n typePreferredTimeOfDayID: contactInfo.preferredContactTimeOfDay!,\n typePreferredContactMethodID: contactInfo.preferredContactMethod!,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed } from '@vue/composition-api'\nimport SidebarItem from '@/components/SidebarItem.vue'\nimport { useFeatureFlags } from '@/services/useFeatureFlags'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'TheSidebar',\n components: {\n SidebarItem,\n },\n props: {\n flavor: { type: String, required: false, default: 'regular' },\n },\n setup(props, ctx) {\n const { features } = useFeatureFlags()\n const userToken = computed(() => store.getters.authorization.userData)\n const impersonationAccountNumber = computed(() => store.getters.authorization.impersonationAccountNumber)\n const isCurrentUserASuperUser = computed(() => store.getters.authorization.isCurrentUserASuperUser)\n\n const activeListItem = ref(0)\n\n function clickedDirectorPortal() {\n const mobileSiteURL = process?.env?.VUE_APP_URL_MOBILE_REDIRECT\n const chit = `${userToken.value}.${impersonationAccountNumber.value}`\n const url = `${mobileSiteURL}?token=${encodeURIComponent(chit)}`\n document.location.assign(url)\n }\n\n /**\n * Quick boolean, are we a regular menu\n */\n const regularFlavor = computed(() => props.flavor == 'regular')\n\n /**\n * Are we a dashboard side menu\n */\n const dashboardFlavor = computed(() => props.flavor == 'dashboard')\n\n function navigate(route: string) {\n if (ctx.root.$route.path === route) return\n ctx.root.$router.push(route).catch(() => {\n //err\n })\n }\n\n return {\n features,\n activeListItem,\n regularFlavor,\n dashboardFlavor,\n isCurrentUserASuperUser,\n navigate,\n clickedDirectorPortal,\n logout: store.commit.authorization.clearCurrentCredentials,\n }\n },\n})\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StartupOrderProductCard.vue?vue&type=style&index=0&id=40bdfb5a&lang=scss&scoped=true&\"","import { computed, ref, watch, onMounted, nextTick, SetupContext } from '@vue/composition-api'\n\nexport const getProps = () => ({\n value: { required: false, type: Boolean, default: false },\n})\n\nexport function useModalValue(props: any, ctx: SetupContext) {\n const internalValue = ref(props.value)\n\n //@Watch('value')\n function changeVisible() {\n internalValue.value = props.value\n }\n\n //@Watch('internalValue')\n function changeShowModal(b: boolean) {\n ctx.emit('input', b)\n }\n\n const isModalOpen = computed({\n get() {\n return internalValue.value\n },\n set(b: boolean) {\n internalValue.value = b\n },\n })\n\n /***\n * Set the internal value to false to close the dialog.\n */\n function closeModal() {\n internalValue.value = false\n }\n\n onMounted(() => {\n changeVisible()\n nextTick(() => {\n watch(() => internalValue.value, changeShowModal)\n watch(() => props.value, changeVisible)\n })\n })\n\n return {\n isModalOpen,\n closeModal,\n }\n}\n","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BrokenCarpoolLinkReport.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SectionHeader.vue?vue&type=style&index=0&id=4ff8aa32&lang=scss&scoped=true&\"","export interface Result {\n recipient: string\n type: string\n source: string\n description: string\n created: string\n updated: string\n subaccount_id: string\n non_transactional: boolean\n}\n\nexport interface EmailSuppressionStatus {\n results: Result[]\n links: any[]\n total_count: number\n}\n\nexport function emptyEmailSuppressionStatus(): EmailSuppressionStatus {\n return {\n results: [],\n links: [],\n total_count: 0,\n }\n}\n","import restService from '@/services/restService'\nimport { EmailSMSAccount } from '@/GeneratedTypes/Communication/EmailSMSAccount'\nimport { EmailSMSLeagueSetting } from '@/GeneratedTypes/Communication/EmailSMSLeagueSetting'\nimport { EmailSMSLeagueMessageInfo } from '@/GeneratedTypes/Communication/EmailSMSLeagueMessage'\nimport { EmailMessage } from '@/GeneratedTypes/Communication/EmailMessage'\nimport { SMSMessage } from '@/GeneratedTypes/Communication/SMSMessage'\nimport { ContactBuilder } from '@/models/Communication/ContactBuilder'\nimport { PreviewMessage } from '@/models/Communication/PreviewMessage'\nimport { GroupMessageParameters } from '@/models/GroupMessageParameters'\nimport { GroupMessageContact } from '@/models/GroupMessageContact'\nimport { ScheduledCommunication } from '@/GeneratedTypes/Communication/ScheduledCommunication'\nimport { EmailSmsMassCommunicationQueue } from '@/GeneratedTypes/Communication/EmailSmsMassCommunicationQueue'\nimport { TwilioApplicationRequest } from '@/GeneratedTypes/Communication/TwilioApplicationRequest'\nimport { CommunicationStatusData } from '@/models/Communication/CommunicationStatusData'\nimport {\n EmailSuppressionStatus,\n emptyEmailSuppressionStatus,\n} from '@/models/Communication/EmailSuppressionStatus'\n\nconst baseUrl = 'communications/'\n\nenum MessageTypes {\n Email,\n Sms,\n}\n\nenum PreviewMessageTypes {\n Email = 'email',\n Sms = 'sms',\n}\n\nconst retrieveProviderInfo = async (upwID: string, accountNumber: string) => {\n const results = await restService.get(\n `${baseUrl}management/providerInfo/${accountNumber}/${upwID}`\n )\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in communicationsClient.retrieveProviderInfo')\n }\n}\n\nconst retrieveMessagePreview = async (preview: PreviewMessage) => {\n const results = await restService.post(`${baseUrl}messagepreview`, preview)\n\n if (!results.isSuccess) {\n throw new Error(`Error in retrieveMessagePreview`)\n }\n\n return results.data\n}\n\nconst retrieveLeagueSettings = async (upwID: string, emailSMSAccountID: number) => {\n const results = await restService.get(\n `${baseUrl}management/leagueSettings/${emailSMSAccountID}/${upwID}`\n )\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in communicationsClient.retrieveLeagueSettings')\n }\n}\n\nconst updateLeagueSettings = async (setting: EmailSMSLeagueSetting) => {\n const results = await restService.put(`${baseUrl}management/leagueSettings`, setting)\n if (!results.isSuccess) {\n throw new Error('Error in communicationsClient.updateLeagueSettings')\n }\n return results.data\n}\n\nconst retrieveMessages = async (\n upwID: string,\n emailSMSAccountID: number,\n messageType: MessageTypes,\n showArchived = false\n) => {\n const messages = messageType == MessageTypes.Email ? 'emailmessages' : 'smsmessages'\n\n const results = await restService.get(\n `${baseUrl}${messages}/${emailSMSAccountID}/${upwID}?excludeArchive=${!showArchived}`\n )\n\n if (!results.isSuccess) {\n throw new Error('Error in communicationsClient.retrieveEmailMessages')\n }\n\n return results.data\n}\n\nconst retrieveMessage = async (emailSmsMessageID: number, messageType: MessageTypes) => {\n const messages = messageType == MessageTypes.Email ? 'emailmessages' : 'smsmessages'\n\n const results = await restService.get(\n `${baseUrl}${messages}/${emailSmsMessageID}`\n )\n\n if (!results.isSuccess) {\n throw new Error('Error in communicationsClient.retrieveEmailMessages')\n }\n\n return results.data\n}\n\nconst sendEmailMessage = async (message: EmailMessage) => {\n // REMOVE\n const results = await restService.post(`${baseUrl}sendemail`, message)\n\n if (!results.isSuccess) {\n throw new Error(`Error sending email message`)\n }\n\n return results.data\n}\n\nconst sendSMSMessage = async (message: SMSMessage) => {\n // REMOVE\n const results = await restService.post(`${baseUrl}sendsms`, message)\n\n if (!results.isSuccess) {\n throw new Error(`Error sending sms message`)\n }\n\n return results.data\n}\n\nconst sendMessage = async (message: EmailMessage, type: string) => {\n const results = await restService.post(`${baseUrl}${type}`, message)\n\n if (!results.isSuccess) {\n throw new Error(`Error sending message`)\n }\n\n return results.data\n}\n\nconst getContactBuilder = async (\n upwID: string,\n accountNumber: string,\n playerPaymentStatus = '',\n playerEvalStatus = '',\n coachTeamStatus = '',\n programTypeID = '',\n viewAllLeagueContacts = false\n) => {\n const results = await restService.get(\n `${baseUrl}contactbuilder/${accountNumber}/${upwID}/${programTypeID}`,\n {\n playerPaymentStatus,\n playerEvalStatus,\n coachTeamStatus,\n viewAllLeagueContacts,\n }\n )\n\n if (!results.isSuccess) {\n throw new Error('Error retrieving contact builder: communicationsClient getContactBuilder')\n }\n\n return results.data\n}\n\nconst sendTeamPageLinkGroupMessage = async (\n upwardLeagueId: string,\n params: GroupMessageParameters\n): Promise => {\n const result = await restService.post(\n `${baseUrl}masscommunications/${upwardLeagueId}/teampagelink`,\n { parameters: params }\n )\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred sending the team page link group message.')\n }\n}\n\nconst sendTeamRosterGroupMessage = async (\n upwardLeagueId: string,\n params: GroupMessageParameters\n): Promise => {\n const result = await restService.post(\n `${baseUrl}masscommunications/${upwardLeagueId}/teamroster`,\n { parameters: params }\n )\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred sending the team roster group message.')\n }\n}\nconst getQueuedGroupMessage = async (messageID: number): Promise => {\n const result = await restService.get(\n `${baseUrl}masscommunications/queued/${messageID}`\n )\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving queued group messages.')\n }\n}\nconst getScheduledCommunications = async (\n emailSMSAccountID: number,\n upwardLeagueID: string\n): Promise => {\n const endpoint = `${baseUrl}scheduledmessages/${emailSMSAccountID}/${upwardLeagueID}`\n const response = await restService.get(endpoint)\n if (response.isSuccess) {\n const data = response.data || new Array()\n return data\n } else throw new Error('A problem occurred while attempting to retrieve scheduled communications.')\n}\nconst deleteScheduledCommunication = async (upwardType: string, messageID: number): Promise => {\n const endpoint = `${baseUrl}scheduledmessages/${upwardType}/${messageID}`\n const response = await restService.delete(endpoint)\n if (!response.isSuccess) throw new Error('A problem occrred while deleting the scheduled communication.')\n}\nconst getTollFreeApp = async (accountNumber: string): Promise => {\n const result = await restService.get(\n `${baseUrl}twilioapplication/${accountNumber}`\n )\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving Toll Free Number Application.')\n }\n}\nconst canSubmitTollFreeApp = async (accountNumber: string): Promise => {\n const result = await restService.get(\n `${baseUrl}twilioapplication/applicationallowed/${accountNumber}`\n )\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred checking for ability to submit Toll Free Number Application.')\n }\n}\nconst createTwilioTollFreeApplication = async (twilioApplicationRequest: TwilioApplicationRequest) => {\n const result = await restService.post(`${baseUrl}twilioapplication`, twilioApplicationRequest)\n if (!result.isSuccess) {\n throw new Error('A problem occurred sending Toll Free Number Application Request.')\n }\n}\nconst updateTwilioTollFreeApplication = async (twilioApplicationRequest: TwilioApplicationRequest) => {\n const result = await restService.put(`${baseUrl}twilioapplication`, twilioApplicationRequest)\n if (!result.isSuccess) {\n throw new Error('A problem occurred updating Toll Free Number Application Request.')\n }\n}\nconst getPendingApplicationsCSV = async () => {\n return await restService.get(`${baseUrl}twilioapplication/PendingCSV`)\n}\nconst setPendingApplicationsToSubmitted = async () => {\n return await restService.put(`${baseUrl}twilioapplication/ProcessPending`, null)\n}\n\nconst getCommunicationStatuses = async (\n accountNumber: string,\n upwardLeagueID: string\n): Promise => {\n const response = await restService.get(\n `${baseUrl}statuses/${accountNumber}/${upwardLeagueID}`\n )\n if (!response.isSuccess) throw new Error('A problem occurred retrieving communication statuses.')\n\n return response.data ?? new Array()\n}\nconst getTwilioApplicationRequestList = async (\n status = 'PENDING',\n search = ''\n): Promise => {\n const response = await restService.get(\n `${baseUrl}twilioapplication/list/${status}/${search}`\n )\n if (!response.isSuccess) throw new Error('A problem occurred retrieving Twilio Application Requests.')\n\n return response.data ?? new Array()\n}\n\nconst submitTwilioVerificationRequest = async (accountNumber: string) => {\n const response = await restService.post(`${baseUrl}twilioapplication/submit/${accountNumber}`, null)\n if (!response.isSuccess) throw new Error('A problem occurred submitting Twilio Verification Request.')\n}\nconst completeTwilioApplicationRequest = async (accountNumber: string) => {\n const response = await restService.post(`${baseUrl}twilioapplication/complete/${accountNumber}`, null)\n if (!response.isSuccess) throw new Error('A problem occurred completing Twilio Application Request.')\n}\nconst revertTwilioApplicationRequest = async (accountNumber: string) => {\n const response = await restService.post(`${baseUrl}twilioapplication/revert/${accountNumber}`, null)\n if (!response.isSuccess) throw new Error('A problem occurred reverting Twilio Application Request.')\n}\n\nconst getEmailSuppressionStatus = async (email: string): Promise => {\n const response = await restService.get(`${baseUrl}suppressioncheck/${email}`)\n\n if (!response.isSuccess && response.status != 404)\n throw new Error('A problem occurred checking suppression status.')\n\n if (response.status == 404) return emptyEmailSuppressionStatus()\n else return response.data ?? emptyEmailSuppressionStatus()\n}\n\nconst setupURComms = async (upwardChallengeID: string) => {\n const response = await restService.post(`${baseUrl}running/setupComms`, { value: upwardChallengeID })\n if (!response.isSuccess)\n throw new Error('A problem occurred setting up communications for this running program.')\n}\n\nexport default {\n MessageTypes,\n PreviewMessageTypes,\n retrieveProviderInfo,\n retrieveLeagueSettings,\n updateLeagueSettings,\n retrieveMessages,\n retrieveMessage,\n sendEmailMessage,\n sendMessage,\n sendSMSMessage,\n getContactBuilder,\n retrieveMessagePreview,\n sendTeamPageLinkGroupMessage,\n sendTeamRosterGroupMessage,\n getScheduledCommunications,\n deleteScheduledCommunication,\n getQueuedGroupMessage,\n getTollFreeApp,\n canSubmitTollFreeApp,\n createTwilioTollFreeApplication,\n getPendingApplicationsCSV,\n setPendingApplicationsToSubmitted,\n getCommunicationStatuses,\n getTwilioApplicationRequestList,\n updateTwilioTollFreeApplication,\n submitTwilioVerificationRequest,\n completeTwilioApplicationRequest,\n revertTwilioApplicationRequest,\n getEmailSuppressionStatus,\n setupURComms,\n}\n","export function maxStringLength(val: string, maxLength: number) {\n if (!val) return ''\n if (val.length > maxLength) {\n return val.substring(0, maxLength) + ' ...'\n } else {\n return val\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[_c('input-label',{attrs:{\"label\":_vm.label,\"required\":_vm.required}}),_c('div',{staticClass:\"input-group\"},[_vm._m(0),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],staticClass:\"form-control\",attrs:{\"tabindex\":_vm.tabIndex,\"type\":\"number\",\"required\":_vm.required,\"step\":\"1.00\",\"min\":\"0\",\"disabled\":!_vm.enabled},domProps:{\"value\":(_vm.internalValue)},on:{\"change\":_vm.handleChange,\"input\":function($event){if($event.target.composing){ return; }_vm.internalValue=$event.target.value}}}),(_vm.append)?_c('div',{staticClass:\"input-group-append\"},[_c('span',{staticClass:\"input-group-text px-1 text-muted small\"},[_vm._v(_vm._s(_vm.append))])]):_vm._e()]),(_vm.subText)?_c('p',{staticClass:\"small text-muted font-italic\"},[_vm._v(_vm._s(_vm.subText))]):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"input-group-prepend\"},[_c('span',{staticClass:\"input-group-text pr-1 text-muted\"},[_vm._v(\"$\")])])}]\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\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport InputLabel from '@/elements/InputLabel.vue'\n\nexport default defineComponent({\n name: 'CurrencyInput',\n components: {\n InputLabel,\n },\n props: {\n label: { type: String, default: '', required: false },\n append: { type: String, default: '', required: false },\n subText: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n value: { type: (null as unknown) as PropType, required: true },\n tabIndex: { type: Number, required: false },\n enabled: { type: Boolean, default: true, required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(convertToString(props.value))\n\n function convertToString(value: number | null) {\n return value === null || isNaN(value) ? '' : value.toFixed(2)\n }\n\n function convertToNumber(value: string): number | null {\n const valueAsNumber = Math.round(Number(value) * 100) / 100\n\n if (isNaN(valueAsNumber)) {\n return null\n }\n\n return valueAsNumber\n }\n\n function handleChange() {\n const valueAsNumber = convertToNumber(internalValue.value)\n ctx.emit('input', valueAsNumber)\n ctx.emit('change', valueAsNumber)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = convertToString(props.value)\n }\n )\n\n return {\n internalValue,\n handleChange,\n }\n },\n})\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!./CurrencyInput.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!./CurrencyInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CurrencyInput.vue?vue&type=template&id=48aa8fe4&\"\nimport script from \"./CurrencyInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./CurrencyInput.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 * The syncFusion grid has been removed. This type is no\n * longer related to the syncFusion library. The name is\n * left over from before its removal.\n */\nimport { SFTemplateType } from '@/models/SyncFusionTypes'\n\nexport interface GridColumn {\n // ** field to reference in record (e.g. \"fname\") -- apparently can be blank for a blank column */\n field?: string\n // ** header column text (e.g. \"First Name\") */\n headerText?: string\n // ** header template should be recognized by SF grid.\n headerTemplate?: SFTemplateType\n textAlign?: string | GridColumnAlignEnum\n width?: number | string\n\n format?: string\n /** -- uses a vue component as a grid template, data is defined as an empty function, and the column is injected as this.data to the component */\n template?: SFTemplateType\n /** warning this function does not work with Grid.vue,\n * possibly refactor with template to maintain some flexibility with the more complex implementation\n * @deprecated\n **/\n customRender?: (f: string | number | null | object, r?: Record) => string\n}\n\nexport enum GridColumnAlignEnum {\n RIGHT = 'Right',\n LEFT = 'Left',\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('base-input-wrapper',{class:_vm.wrapperClass,attrs:{\"required\":_vm.required,\"label\":_vm.label,\"prepend-icon\":_vm.prependIcon,\"append-icon\":_vm.appendIcon,\"id\":_vm.elementId,\"sub-text\":_vm.subText,\"sub-text-with-link\":_vm.subTextWithLink}},[(!_vm.redisplay)?_vm._l((_vm.itemsList),function(item,index){return _c('div',{key:index,staticClass:\"ml-2 mr-1\",class:_vm.itemClass},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],key:_vm.getOptionValue(item, index),attrs:{\"type\":\"radio\",\"disabled\":!_vm.enabled,\"name\":_vm.elementId,\"id\":_vm.elementId + index},domProps:{\"checked\":_vm.getOptionValue(item, index) === _vm.value,\"value\":_vm.getOptionValue(item, index),\"checked\":_vm._q(_vm.internalValue,_vm.getOptionValue(item, index))},on:{\"change\":[function($event){_vm.internalValue=_vm.getOptionValue(item, index)},_vm.handleChange]}}),_c('label',{staticClass:\"pl-1 form-check-label\",attrs:{\"for\":_vm.elementId + index}},[_vm._v(_vm._s(_vm.getOptionText(item)))])])}):_vm._e()],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\nimport { defineComponent, computed, ref, watch, PropType, nextTick } from '@vue/composition-api'\nimport BaseInputWrapper from '@/elements/BaseInputWrapper.vue'\nimport uuid from 'uuid'\n\nexport default defineComponent({\n name: 'RadioGroupInput',\n components: {\n BaseInputWrapper,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n enabled: { type: Boolean, default: true, required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n id: { type: String, default: '', required: false },\n value: { type: (null as unknown) as PropType, required: true },\n textPropertyName: { type: String, default: '', required: false },\n valuePropertyName: { type: String, default: '', required: false },\n itemClass: { type: String, default: '', required: false },\n wrapperClass: { type: String, default: '', required: false },\n itemsList: { type: Array, required: true },\n subText: { type: String, default: '', required: false },\n subTextWithLink: { type: String, default: '', required: false },\n },\n setup(props, ctx) {\n const guid = uuid.v4()\n const internalValue = ref('')\n\n function getOptionValue(item: any, index: number): string {\n if (props.valuePropertyName !== '') {\n return item[props.valuePropertyName]\n }\n if (props.textPropertyName !== '') {\n return item[props.textPropertyName]\n }\n return index.toString()\n }\n\n function getOptionText(item: any): string {\n if (props.textPropertyName !== '') {\n return item[props.textPropertyName]\n }\n return item.toString()\n }\n\n const elementId = computed(() => props.id || `radio-${guid}`)\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n const redisplay = ref(false)\n\n watch(\n () => props.value,\n () => {\n if (internalValue.value !== props.value) {\n internalValue.value = props.value\n }\n redisplay.value = true\n nextTick(() => (redisplay.value = false))\n },\n { immediate: true }\n )\n\n return {\n elementId,\n redisplay,\n getOptionValue,\n handleChange,\n internalValue,\n getOptionText,\n }\n },\n})\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!./RadioGroupInput.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!./RadioGroupInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RadioGroupInput.vue?vue&type=template&id=1f8d2d7e&\"\nimport script from \"./RadioGroupInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./RadioGroupInput.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 { PlayerUDFValue } from '@/GeneratedTypes/PlayerUDFValue'\n\nexport function getEmptyPlayerUDFs(): PlayerUDFValue[] {\n return []\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchInput.vue?vue&type=style&index=0&id=43323a74&scoped=true&lang=scss&\"","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!./FacilityDropper.vue?vue&type=style&index=0&id=11fe2354&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!./TheAuthWall.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TeamManager.vue?vue&type=style&index=0&id=4a03c3d0&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('section-header',{staticClass:\"bg-white\",attrs:{\"title\":\"Shipping Method*\"}}),_c('shipping-method-select',{staticClass:\"pl-2\",attrs:{\"value\":_vm.value},on:{\"input\":_vm.update}})],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('base-input-wrapper',_vm._l((_vm.value),function(item,index){return _c('div',{key:index},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected),expression:\"selected\"}],key:item.description,staticClass:\"align-middle\",attrs:{\"id\":(\"ship-method\" + index),\"type\":\"radio\",\"name\":\"ship-methods\"},domProps:{\"value\":item.id,\"checked\":_vm._q(_vm.selected,item.id)},on:{\"change\":function($event){_vm.selected=item.id}}}),_c('label',{staticClass:\"pl-2 form-check-label\",attrs:{\"for\":(\"ship-method\" + index)}},[_vm._v(_vm._s(item.description)+\" - \"),_c('span',{staticClass:\"text-danger\"},[(item.cost > 0)?_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(item.cost)))]):_c('span',[_vm._v(\"FREE\")])])]),_c('div',{staticClass:\"small ml-4 text-muted\"},[_vm._v(_vm._s(item.extendedDescription))])])}),0)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export function getEmptyXShipMethodBase() {\n return {\n id: '',\n description: '',\n extendedDescription: '',\n selected: false,\n cost: 0.0,\n }\n}\n\nexport function getEmptyXShipMethodBaseArray() {\n return [\n {\n id: '',\n description: '',\n extendedDescription: '',\n selected: false,\n cost: 0.0,\n },\n ]\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\nimport { xShipMethodBase } from '@/GeneratedTypes/xOrder/xShipMethodBase.ts'\nimport BaseInputWrapper from '@/elements/BaseInputWrapper.vue'\nimport { getEmptyXShipMethodBaseArray } from '@/lib/support/models/GeneratedTypes/xOrders/xShippingMethodBase.ts'\nimport currency from '@/filters/currency'\n\nexport default defineComponent({\n name: 'ShippingMethodSelect',\n components: {\n BaseInputWrapper,\n },\n filters: {\n currency,\n },\n props: {\n value: {\n type: Array as PropType,\n default: getEmptyXShipMethodBaseArray,\n required: false,\n },\n },\n setup(props, ctx) {\n const selected = ref('')\n\n onMounted(() => {\n selected.value = getSelected()\n })\n\n function getSelected() {\n const selMethod = props.value.find((method) => {\n return method.selected === true\n })\n if (selMethod) {\n return selMethod.id\n } else {\n return ''\n }\n }\n\n watch(\n () => props.value,\n () => {\n selected.value = getSelected()\n },\n { deep: true }\n )\n\n watch(\n () => selected.value,\n () => {\n const methods = cloneDeep(props.value)\n methods.forEach((method) => {\n method.selected = false\n if (method.id === selected.value) method.selected = true\n })\n ctx.emit('input', methods)\n }\n )\n\n return {\n selected,\n }\n },\n})\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!./ShippingMethodSelect.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!./ShippingMethodSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ShippingMethodSelect.vue?vue&type=template&id=ac1af7e8&scoped=true&\"\nimport script from \"./ShippingMethodSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./ShippingMethodSelect.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ShippingMethodSelect.vue?vue&type=style&index=0&id=ac1af7e8&lang=scss&scoped=true&\"\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 \"ac1af7e8\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport SectionHeader from '@/components/SectionHeader.vue'\nimport ShippingMethodSelect from '@/components/ShippingMethodSelect.vue'\nimport { xShipMethodBase } from 'src/GeneratedTypes/xOrder/xShipMethodBase'\nimport { getEmptyXShipMethodBase } from '@/lib/support/models/GeneratedTypes/xOrders/xShippingMethodBase.ts'\n\nexport default defineComponent({\n name: 'ShippingMethodSection',\n components: {\n SectionHeader,\n ShippingMethodSelect,\n },\n props: {\n value: { type: Object as PropType, default: getEmptyXShipMethodBase, required: false },\n },\n setup(props, ctx) {\n function update(val: xShipMethodBase[]) {\n ctx.emit('input', val)\n }\n\n return {\n update,\n }\n },\n})\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!./ShippingMethodSection.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!./ShippingMethodSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ShippingMethodSection.vue?vue&type=template&id=43bace72&\"\nimport script from \"./ShippingMethodSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./ShippingMethodSection.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('div',[_c('div',{staticClass:\"d-flex align-items-center\"},[(_vm.showTitle)?_c('h6',{staticClass:\"m-0 text-primary\"},[_vm._v(\"Shipping Address\")]):_vm._e(),(_vm.editable)?_c('add-address-modal',{staticClass:\"d-inline\",attrs:{\"value\":_vm.value},on:{\"save\":function($event){return _vm.$emit('save', $event)}}}):_vm._e()],1),_c('div',{staticClass:\"pl-3\"},[_c('shipping-address-display',{attrs:{\"value\":_vm.value}})],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('vee-validate-form',{ref:\"form\",on:{\"submit\":_vm.save}},[_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Company Name\",\"vee-validate-rules\":\"required\"},model:{value:(_vm.internalValue.name),callback:function ($$v) {_vm.$set(_vm.internalValue, \"name\", $$v)},expression:\"internalValue.name\"}}),_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Street Address\",\"vee-validate-rules\":\"required\"},model:{value:(_vm.internalValue.street1),callback:function ($$v) {_vm.$set(_vm.internalValue, \"street1\", $$v)},expression:\"internalValue.street1\"}}),_c('text-input',{attrs:{\"label\":\"Unit, Suite, etc\"},model:{value:(_vm.internalValue.street2),callback:function ($$v) {_vm.$set(_vm.internalValue, \"street2\", $$v)},expression:\"internalValue.street2\"}}),_c('text-input',{attrs:{\"required\":\"\",\"label\":\"City\",\"vee-validate-rules\":\"required\"},model:{value:(_vm.internalValue.subdivision1),callback:function ($$v) {_vm.$set(_vm.internalValue, \"subdivision1\", $$v)},expression:\"internalValue.subdivision1\"}}),_c('text-input',{attrs:{\"label\":\"State\",\"enabled\":false},model:{value:(_vm.internalValue.subdivision2),callback:function ($$v) {_vm.$set(_vm.internalValue, \"subdivision2\", $$v)},expression:\"internalValue.subdivision2\"}}),_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Postal Code\",\"sub-label\":\"(ex: 29301, J8P 5C2)\",\"sub-label-inline\":true,\"vee-validate-rules\":\"required|postal_code\"},model:{value:(_vm.internalValue.postalCode),callback:function ($$v) {_vm.$set(_vm.internalValue, \"postalCode\", $$v)},expression:\"internalValue.postalCode\"}})],1),_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"label\":\"ATTN\",\"sub-label\":\"(optional)\",\"sub-label-inline\":true},model:{value:(_vm.internalValue.attention),callback:function ($$v) {_vm.$set(_vm.internalValue, \"attention\", $$v)},expression:\"internalValue.attention\"}}),_c('text-input',{attrs:{\"label\":\"Phone Number\"},model:{value:(_vm.internalValue.contactInfo),callback:function ($$v) {_vm.$set(_vm.internalValue, \"contactInfo\", $$v)},expression:\"internalValue.contactInfo\"}}),_c('text-input',{attrs:{\"label\":\"Country\",\"enabled\":false},model:{value:(_vm.internalValue.countryCode),callback:function ($$v) {_vm.$set(_vm.internalValue, \"countryCode\", $$v)},expression:\"internalValue.countryCode\"}})],1)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.toggleModal}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",attrs:{\"type\":\"submit\"}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Save\")])])],2)],1),_c('button',{staticClass:\"btn p-0 m-0 ml-1\",class:{ 'd-none': _vm.modalIsVisible },on:{\"click\":_vm.toggleModal}},[_c('span',{staticClass:\"small font-italic text-muted\"},[_vm._v(\"[ click here to edit this shipping information ]\")])])],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\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nimport { xShipToBase } from 'src/GeneratedTypes/xOrder/xShipToBase'\nimport { getEmptyxShipToBase } from '@/lib/support/models/GeneratedTypes/xOrders/xShipToBase.ts'\n\nexport default defineComponent({\n name: 'AddAddressModal',\n components: {\n Modal,\n TextInput,\n VeeValidateForm,\n },\n props: {\n value: { type: Object as PropType, default: getEmptyxShipToBase, required: false },\n },\n setup(props, ctx) {\n const internalValue = ref({ ...props.value })\n\n const modalIsVisible = ref(false)\n const modalTitle = ref('Starter Kit - Shipping Address')\n\n function save() {\n ctx.emit('save', internalValue.value)\n toggleModal()\n }\n\n function toggleModal() {\n modalIsVisible.value = !modalIsVisible.value\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = { ...props.value }\n },\n { deep: true }\n )\n\n return {\n modalIsVisible,\n modalTitle,\n internalValue,\n save,\n toggleModal,\n }\n },\n})\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!./AddAddressModal.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!./AddAddressModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddAddressModal.vue?vue&type=template&id=479846eb&scoped=true&\"\nimport script from \"./AddAddressModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddAddressModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AddAddressModal.vue?vue&type=style&index=0&id=479846eb&lang=scss&scoped=true&\"\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 \"479846eb\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport SectionHeader from '@/components/SectionHeader.vue'\nimport ShippingAddressDisplay from '@/components/ShippingAddressDisplay.vue'\nimport AddAddressModal from '@/components/AddAddressModal.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { xShipToBase } from 'src/GeneratedTypes/xOrder/xShipToBase'\nimport { getEmptyxShipToBase } from '@/lib/support/models/GeneratedTypes/xOrders/xShipToBase.ts'\n\nexport default defineComponent({\n name: 'ShippingAddressSection',\n components: {\n SectionHeader,\n ShippingAddressDisplay,\n AddAddressModal,\n InputLabel,\n },\n props: {\n value: { type: Object as PropType, default: getEmptyxShipToBase, required: false },\n editable: { type: Boolean, default: false, required: false },\n showTitle: { type: Boolean, default: true, required: false },\n },\n})\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!./ShippingAddressSection.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!./ShippingAddressSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ShippingAddressSection.vue?vue&type=template&id=57fcc541&\"\nimport script from \"./ShippingAddressSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./ShippingAddressSection.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 { LoginException } from '@/lib/common/exceptions/login/LoginException'\n\nexport class TwoFactorAuthRequiredException extends LoginException {\n name = '2FA Required'\n accountToImpersonateAfterAuth = ''\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isLoading)?_c('Loading'):[(_vm.showTitle)?_c('h5',[_vm._v(_vm._s(_vm.pageContentDocument.title))]):_vm._e(),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.markup)}})]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\nimport contentManagementClient from '@/clients/contentManagementClient'\nimport { PageContentDocument } from '@/models/PageContent/PageContentDocument'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n name: 'PageContent',\n components: {\n Loading,\n },\n props: {\n documentId: { type: String, required: true },\n showTitle: { type: Boolean, default: true },\n },\n setup(props, ctx) {\n const isLoading = ref(false)\n\n const pageContentDocument = ref({\n title: '',\n documentID: '',\n content: '',\n documentContent: '',\n })\n\n watch(\n () => props.documentId,\n async (documentId: string) => {\n await updatePageContent(documentId)\n }\n )\n\n async function updatePageContent(documentId: string) {\n isLoading.value = true\n\n const pcd = await contentManagementClient.getPageContentDocument(documentId)\n if (pcd) {\n pageContentDocument.value = pcd\n } else {\n pageContentDocument.value = {\n title: '',\n documentID: '',\n content: '',\n documentContent: '',\n }\n }\n\n isLoading.value = false\n }\n\n const markup = computed(() => {\n // forcing this href to open in new tab because there is no way\n // to do it directly in the CMS\n if (pageContentDocument.value.documentID == 'waitReadMeFirst') {\n return pageContentDocument.value.documentContent.replaceAll('href=\"', 'target=\"_blank\" href=\"')\n } else {\n return pageContentDocument.value.documentContent\n }\n })\n\n watch(\n () => isLoading.value,\n () => {\n ctx.emit('isLoading', isLoading.value)\n }\n )\n\n watch(\n () => pageContentDocument.value,\n () => {\n ctx.emit('documentChange', pageContentDocument.value)\n }\n )\n\n onMounted(async () => {\n await updatePageContent(props.documentId)\n })\n\n return {\n isLoading,\n pageContentDocument,\n markup,\n }\n },\n})\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!./PageContent.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!./PageContent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PageContent.vue?vue&type=template&id=3a3493c0&\"\nimport script from \"./PageContent.vue?vue&type=script&lang=ts&\"\nexport * from \"./PageContent.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","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MenuTab.vue?vue&type=style&index=0&id=3666e127&lang=scss&scoped=true&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderItem.vue?vue&type=style&index=0&id=1b735104&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.dropAway),expression:\"dropAway\"}],staticClass:\"dropdown\"},[_c('button',{staticClass:\"btn btn-secondary dropdown-toggle w-100\",staticStyle:{\"min-width\":\"100px\"},attrs:{\"type\":\"button\",\"data-toggle\":\"dropdown\"},on:{\"click\":_vm.toggleDrop}},[_vm._v(\" \"+_vm._s(_vm.theLabel)+\" \")]),_c('div',{staticClass:\"dropdown-menu checkbox-menu w-100\",class:{ show: _vm.show }},[_vm._l((_vm.items),function(val,index){return _c('div',{key:index,staticClass:\"dropdown-item\",class:{ checked: _vm.checked(val) }},[_c('label',[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.checked(val)},on:{\"change\":function (a) { return _vm.select(val, a.target.checked); }}}),_vm._v(\" \"+_vm._s(val.description)+\" \")])])}),_c('div',{staticClass:\"dropdown-divider\"}),_c('div',{staticClass:\"dropdown-item\",attrs:{\"href\":\"javascript:void(0)\"},on:{\"click\":_vm.clear}},[_c('label',{staticStyle:{\"text-align\":\"center\",\"font-weight\":\"bold\"}},[_vm._v(\"Clear\")])])],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\nimport { MultiSelectValue } from '@/lib/support/components/MultiSelect/MultiSelectValue'\nimport { defineComponent, PropType, ref, computed } from '@vue/composition-api'\nimport { mixin as clickaway } from 'vue-clickaway'\nimport { cloneDeep } from 'lodash'\nexport default defineComponent({\n name: 'DropDownMultiSelect',\n props: {\n label: { type: String, required: true },\n items: { type: Array as PropType, required: true, default: () => [] },\n value: { type: Array as PropType, required: true, default: () => [] },\n },\n mixins: [clickaway],\n setup(props, { emit }) {\n const selected = ref(buildDictionary(cloneDeep(props.items)))\n const show = ref(false)\n const theLabel = computed(() => {\n const s = getSelected()\n const count = s.length\n if (count == 0) return props.label\n const first = s[0].description\n if (count == 1) return first\n return `${first} (+${count - 1})`\n })\n function toggleDrop() {\n show.value = !show.value\n }\n function dropAway() {\n show.value = false\n }\n function getSelected() {\n const s = new Array()\n Object.keys(selected.value).forEach((key) => {\n if (selected.value[key].checked) {\n s.push(selected.value[key].value)\n }\n })\n return s\n }\n function select(value: MultiSelectValue, checked: boolean) {\n selected.value[value.id] = { value, checked } as any\n emit('input', cloneDeep(getSelected()))\n }\n function clear() {\n const d = buildDictionary(cloneDeep(props.items))\n selected.value = d\n emit('input', [])\n }\n function buildDictionary(items: MultiSelectValue[]) {\n const dict = {} as any\n for (let i = 0; i < items.length; i++) {\n const { id } = items[i]\n dict[id] = { value: items[i], checked: false } as any\n }\n return dict\n }\n function checked(item: MultiSelectValue) {\n return selected.value[item.id]?.checked ?? false\n }\n return { selected, toggleDrop, dropAway, show, select, checked, clear, theLabel }\n },\n})\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!./DropDownMultiSelect.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!./DropDownMultiSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DropDownMultiSelect.vue?vue&type=template&id=657e72e9&scoped=true&\"\nimport script from \"./DropDownMultiSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./DropDownMultiSelect.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DropDownMultiSelect.vue?vue&type=style&index=0&id=657e72e9&lang=scss&scoped=true&\"\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 \"657e72e9\",\n null\n \n)\n\nexport default component.exports","import restService from '@/services/restService'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport { FacilityEventInfo } from '@/GeneratedTypes/ListInfo/FacilityEventInfo'\nimport { RuntimeException } from '@/lib/common/exceptions/RuntimeException'\n\nconst baseUrl = 'facilities/'\n\nclass FacilitiesClientRuntimeException extends RuntimeException {\n name = 'Facilities Client'\n}\n\nconst retrieveAll = async (leagueId: string, historical = false) => {\n // todo : for dev purposes hard coding league id\n // leagueId = 'UPW80002'\n const result = await restService.get(`${baseUrl}${leagueId}?historical=${historical}`)\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('a problem occurred retrieving league facilities')\n }\n}\n\nconst retrieve = async (leagueId: string, id: string) =>\n await restService.get(`${baseUrl}${leagueId}/${id}`)\n\nconst retrieveGroups = async (leagueId: string) =>\n await restService.get(`${baseUrl}${leagueId}/groups`)\n\nconst retrieveNew = async () => await restService.get(`${baseUrl}new`)\n\nconst validateNew = async (leagueId: string, facility: LeagueFacility, ruleSet = '') => {\n return await restService.post(`${baseUrl}${leagueId}/validate`, facility, {\n params: {\n ruleSet,\n },\n })\n}\n\nconst retrieveEvents = async (leagueId: string) => {\n const x = await restService.get(`facilityEvents/${leagueId}`)\n if (x.isSuccess) {\n return x.data\n }\n throw new FacilitiesClientRuntimeException('trying to get facility events ', x.errorObject)\n}\n\nconst retrieveEventsForDivision = async (leagueId: string, programId: string, divisionId: number) => {\n const x = await restService.get(\n `facilityEvents/${leagueId}/${programId}/${divisionId}`\n )\n if (x.isSuccess) {\n return x.data\n }\n throw new FacilitiesClientRuntimeException('trying to get facility events for division', x.errorObject)\n}\n\nconst createNew = async (leagueId: string, facility: LeagueFacility) => {\n return await restService.post(`${baseUrl}${leagueId}`, facility, {})\n}\n\nconst update = async (leagueId: string, facility: LeagueFacility) => {\n return await restService.put(`${baseUrl}${leagueId}/${facility.facilityID}`, facility)\n}\n\nconst deleteFacility = async (leagueId: string, facilityId: number) => {\n return await restService.delete(`${baseUrl}${leagueId}/${facilityId}`)\n}\n\nexport default {\n retrieveAll,\n retrieve,\n retrieveGroups,\n retrieveNew,\n validateNew,\n createNew,\n update,\n deleteFacility,\n retrieveEvents,\n retrieveEventsForDivision,\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ParticipantListElement.vue?vue&type=style&index=0&id=069d92bf&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"enabled\":!_vm.isLoading,\"blank-item-text\":\"Type\",\"show-blank-item\":!_vm.required,\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"blank-item-value\":\"\",\"items-list\":_vm.phoneTypes},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { UpwardPhoneTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPhoneTypeID'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PhoneTypeSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isLoading = ref(false)\n const selectedItem = ref(props.value ?? null)\n const phoneTypes = ref([])\n\n const businessPhoneTypesItems = computed(() => store.getters.phoneTypes.allItems)\n\n async function loadItems() {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n await getPhoneTypes()\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => selectedItem.value,\n () => {\n if (props.value !== selectedItem.value) {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = props.value ?? ''\n }\n )\n\n async function getPhoneTypes() {\n await store.dispatch.phoneTypes.fetchAll(false)\n phoneTypes.value = businessPhoneTypesItems.value\n }\n\n return {\n isLoading,\n selectedItem,\n phoneTypes,\n }\n },\n})\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!./PhoneTypeSelect.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!./PhoneTypeSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PhoneTypeSelect.vue?vue&type=template&id=12e53eb5&\"\nimport script from \"./PhoneTypeSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./PhoneTypeSelect.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","export enum ProductCategoryEnum {\n AUTOINCLUDE = 1,\n OPTIONAL_APPAREL = 2,\n PLAYER_ITEMS = 3,\n PLAYER_RECOGNITION = 4,\n AWARDS = 5,\n PLAYER_BAG = 6,\n COACH_APPAREL = 7,\n PREMIUM_SERVICES = 8,\n UPWARD_FEES = 9,\n UPWARD_DISCOUNT = 10,\n}\n","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!./SmallCard.vue?vue&type=style&index=0&id=25771d80&scoped=true&lang=css&\"","import { AuthTokenCredentials } from '@/models/Authorization/AuthTokenCredentials'\n\n/**\n * Returns the primary account number (really just indirect the logic for getting primary account number) or null if none\n * @param credentials\n *\n */\nfunction getPrimaryAccountFromCredentials(credentials: AuthTokenCredentials | null) {\n return credentials?.accountNumbers ? credentials.accountNumbers[0] : null\n}\n\n/**\n * Returns if the credentials are valid.\n * @param credentials\n */\nconst hasValidCredentials = (credentials: AuthTokenCredentials | null) => {\n return !!credentials\n}\n\n/**\n * Returns if the credentials are impersonating a user.\n * @param credentials\n * @return boolean\n */\nconst isImpersonating = (credentials: AuthTokenCredentials | null) => {\n return credentials && credentials.impersonatedAccount && credentials.impersonationActive\n}\n\nexport default { getPrimaryAccountFromCredentials, hasValidCredentials, isImpersonating }\n","import { RolesEnum } from '@/lib/support/models/LeagueVolunteer/data'\nimport store from '@/store'\n\nexport enum VolunteerSectionTypes {\n ALL = 'all',\n COACHES = 'coaches',\n COMMISSIONERS = 'commissioners',\n REFEREES = 'referees',\n CHEERDIRECTOR = 'cheerdirector',\n OTHER = 'others',\n}\n\nexport enum VolunteerRoleIDs {\n COACHES = 3,\n REFEREES = 1,\n}\n\nconst approvableRoles = [RolesEnum.COACH, RolesEnum.REFEREE]\n/***\n * Program from a category, empty string if not.\n * @param category\n * @constructor\n */\nexport function CategoryNameToProgramName(category: string) {\n const parts = category.split('-')\n if (parts.length == 2) {\n return parts[1].toLocaleUpperCase()\n }\n\n return '' //if not hyphen then category is default (first program)\n}\n\n/***\n * category could contain a program, remove it.\n * @param category\n * @constructor\n */\nexport function CategoryNameWithoutProgram(category: string) {\n const parts = category.split('-')\n if (parts.length == 2) {\n return parts[0].toLowerCase()\n }\n return category\n}\n\n/***\n * removes a program if exists on the category and replaces it with a new program name.\n */\nexport function CategoryWithProgram(category: string, program: string) {\n return `${CategoryNameWithoutProgram(category)}-${program.toLowerCase()}`\n}\n/***\n * Makes a category into a series of roles.\n * @param category\n * @constructor\n */\nexport function CategoryNameToCategory(category: string) {\n switch (CategoryNameWithoutProgram(category)) {\n case VolunteerSectionTypes.ALL:\n return VolunteerSectionTypes.ALL\n case VolunteerSectionTypes.COACHES:\n return VolunteerSectionTypes.COACHES\n case VolunteerSectionTypes.COMMISSIONERS:\n return VolunteerSectionTypes.COMMISSIONERS\n case VolunteerSectionTypes.OTHER:\n return VolunteerSectionTypes.OTHER\n case VolunteerSectionTypes.REFEREES:\n return VolunteerSectionTypes.REFEREES\n case VolunteerSectionTypes.CHEERDIRECTOR:\n return VolunteerSectionTypes.CHEERDIRECTOR\n default:\n return VolunteerSectionTypes.ALL\n }\n}\n\nexport function categoryToRoles(category: VolunteerSectionTypes): number[] {\n switch (CategoryNameWithoutProgram(category)) {\n case VolunteerSectionTypes.COACHES:\n return [3]\n case VolunteerSectionTypes.ALL:\n return [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14] //excluded 10 - HalftimeCommissioner - no longer used\n case VolunteerSectionTypes.COMMISSIONERS:\n return [7, 8, 9, 11, 12, 14] //excluded 10 - HalftimeCommissioner - no longer used\n case VolunteerSectionTypes.REFEREES:\n return [1]\n case VolunteerSectionTypes.CHEERDIRECTOR:\n return [13]\n case VolunteerSectionTypes.OTHER:\n return [2, 4, 5, 6]\n }\n return []\n}\n\nexport function categoryToTitle(category: string) {\n const cName = CategoryNameToCategory(category)\n return cName == VolunteerSectionTypes.REFEREES && store.getters.leagueAbstraction.refLabel\n ? store.getters.leagueAbstraction.refLabel + 's'\n : cName\n}\n\nexport function RoleHasCoachPreferences(role: number | RolesEnum) {\n return role == RolesEnum.COACH\n}\n\nexport function RoleRequiresApproval(role: number | RolesEnum) {\n return approvableRoles.indexOf(role) >= 0\n}\n\nexport function RoleIDToRoleName(r: RolesEnum) {\n switch (r) {\n case RolesEnum.COACH:\n return 'Coach'\n case RolesEnum.COACHCOMMISSIONER:\n return 'CoachCommissioner'\n case RolesEnum.CHEERDIRECTOR:\n return 'CheerDirector'\n case RolesEnum.PRAYERCOMMISSIONER:\n return 'PrayerCommissioner'\n case RolesEnum.REFEREE:\n return 'Referee'\n case RolesEnum.REFEREECOMMISSIONER:\n return 'RefereeCommissioner'\n case RolesEnum.HALFTIMECOMMISSIONER:\n return 'HalftimeCommissioner'\n case RolesEnum.HOSTCOMMISSIONER:\n return 'HostCommissioner'\n case RolesEnum.ADCOMMISSIONER:\n return 'AdCommissioner'\n case RolesEnum.GAMEDAYCOMMISSIONER:\n return 'GamedayCommissioner'\n }\n return null\n //Cheer -- not sure what this is, doesn't map from email\n}\n","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!./DivisionPreferences.vue?vue&type=style&index=0&id=7d87711b&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!./DateInput.vue?vue&type=style&index=0&lang=css&\"","import { xRunningStartupOrderExt } from '@/models/UpwardRunning/Order/xRunningStartupOrderExt'\nimport { xRunningStartupOrder } from '@/GeneratedTypes/xOrder/xRunningStartupOrder'\nimport { xStartupOrderLine } from '@/GeneratedTypes/xOrder/xStartupOrderLine'\nimport { OrderProduct } from 'src/models/Order/OrderProduct'\nimport { OrderProductSize } from 'src/models/Order/OrderProductSize'\nimport { cloneDeep } from 'lodash'\nimport { getEmptyOrderProduct } from '@/lib/support/models/GeneratedTypes/xOrders/xOrderProduct'\n\nexport function ToXRunningStartupOrder(order: xRunningStartupOrderExt) {\n // Convert xStartupOrderExt to xStartupOrder\n const localOrder = cloneDeep(order)\n\n const orderLines: xStartupOrderLine[] = []\n localOrder.products.forEach((product: OrderProduct) => {\n product.productColorSizes?.forEach((size: OrderProductSize) => {\n //restrict to just ordered things.\n if (size.orderQuantity) {\n const orderLine = {\n productID: product.upwardProductID,\n typeProgramID: product.typeProgramID,\n typeSizeID: size.typeSizeID,\n typeColorID: size.typeColorID,\n quantity: size.orderQuantity,\n quantityFree: size.orderFreeQuantity,\n } as xStartupOrderLine\n orderLines.push(orderLine)\n }\n })\n })\n\n localOrder.orderLines = orderLines\n localOrder.products = []\n localOrder.processingInstructions = []\n\n return normalizeOrder(localOrder) as xRunningStartupOrder\n}\n\n/**\n * Marks sales tax with a negative value to signal to order summary that it isn't ready\n * to calculate yet.\n * @param o\n */\nexport function setSalesTaxNotCalculatedYet(o: xRunningStartupOrderExt | undefined) {\n if (o) {\n o.salesTax = -0.0001\n }\n return o\n}\n\nexport function getSalesTaxNotCalculatedYet(o: xRunningStartupOrderExt | undefined) {\n return o && o.salesTax < 0\n}\n\n/**\n * Removes promocard's type size id from the order process and makes it a unique id\n * @param order\n * @return adjusted lineitems on the order\n */\nfunction normalizeOrder(order: xRunningStartupOrderExt) {\n const rv = cloneDeep(order)\n const lines: xStartupOrderLine[] = []\n\n ;(rv.orderLines ?? []).forEach((line) => {\n if (line.productID == 'PROMOCARD') {\n lines.push({\n ...cloneDeep(line),\n productUniqueID: line.typeColorID,\n typeColorID: 'N/A',\n typeSizeID: 'N/A',\n })\n } else {\n lines.push({ ...cloneDeep(line) })\n }\n })\n return { ...rv, orderLines: lines }\n}\n\n/**\n * Merge order with orderExt and return as xStartupOrderExt\n * order values overwrite orderExt\n * @param order\n * @param orderExt\n * @constructor\n */\nexport function ToXRunningStartupOrderExt(order: xRunningStartupOrder, orderExt: xRunningStartupOrderExt) {\n //\n //\n const newOrderExt: xRunningStartupOrderExt = getEmptyXRunningStartupOrderExt()\n Object.assign(newOrderExt, orderExt, order)\n return cloneDeep(newOrderExt)\n}\n\nexport function removeZeroQtyProducts(orderExt: xRunningStartupOrderExt) {\n const localOrder = cloneDeep(orderExt)\n const products: OrderProduct[] = []\n let sizes: OrderProductSize[] = []\n\n localOrder.products.forEach((product: OrderProduct) => {\n sizes = []\n product.productColorSizes?.forEach((size: OrderProductSize) => {\n if (size.orderQuantity > 0) {\n sizes.push(size)\n }\n })\n if (sizes.length > 0) {\n product.productColorSizes = sizes\n products.push(product)\n }\n })\n localOrder.products = products\n return localOrder\n}\n\nexport function getEmptyXRunningStartupOrderExt(): xRunningStartupOrderExt {\n return {\n products: [getEmptyOrderProduct()],\n upwardOrderType: 'RUNNINGSTARTUPORDER',\n clientOrderDate: null,\n upwardOrderID: '',\n upwardChallengeID: '',\n upwardLeagueID: '',\n accountNumber: '',\n notes: '',\n purchaseOrderNumber: '',\n dueDate: null,\n salesTax: 0,\n typeOrderingContextID: '',\n typeLeagueID: '',\n typeProductGroupID: '',\n orderLines: [],\n shippingInfo: {\n shipTo: {\n name: '',\n attention: '',\n contactInfo: '',\n street1: '',\n street2: '',\n subdivision1: '',\n subdivision2: '',\n postalCode: '',\n countryCode: '',\n },\n shipMethods: [\n {\n id: '',\n description: '',\n extendedDescription: '',\n selected: false,\n cost: 0,\n },\n ],\n },\n totalOrderedProductAmount: 0,\n totalParticipantCount: 0,\n processingInstructions: [],\n }\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProgramSearchPanel.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.close),expression:\"close\"}],staticClass:\"combo\"},[_c('div',{staticClass:\"input-wrapper\",attrs:{\"role\":\"combobox\"}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedText),expression:\"selectedText\"}],staticClass:\"combo-input\",class:[_vm.enabled ? '' : 'grey--text'],attrs:{\"type\":\"text\",\"list\":\"theList\",\"autocomplete\":\"off\",\"disabled\":!_vm.enabled},domProps:{\"value\":(_vm.selectedText)},on:{\"click\":function($event){return _vm.open(true)},\"input\":[function($event){if($event.target.composing){ return; }_vm.selectedText=$event.target.value},_vm.input],\"keydown\":_vm.inputKeydown}})]),_c('div',{staticClass:\"combo-menu\",class:{ open: _vm.isOpen },attrs:{\"id\":_vm.id,\"role\":\"listbox\"}},_vm._l((_vm.listItems),function(l,i){return _c('div',{key:i,staticClass:\"combo-option\",class:{ 'option-current': i == _vm.selectedIndex },attrs:{\"id\":(\"option-\" + i)},on:{\"click\":function($event){return _vm.select(i)}}},[_vm._v(\" \"+_vm._s(l)+\" \")])}),0)])])}\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\nimport { defineComponent, ref, watch, PropType, computed } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\nimport { directive as onClickaway } from 'vue-clickaway'\nimport uuid from 'uuid'\n\nexport default defineComponent({\n name: 'Combobox',\n props: {\n list: { type: Array as PropType, required: true },\n value: { type: String, required: true },\n textPropertyName: { type: String, required: false, default: '' },\n valuePropertyName: { type: String, required: false, default: '' },\n enabled: { type: Boolean, required: false, default: true },\n },\n directives: { onClickaway },\n components: {},\n setup(props, ctx) {\n const isOpen = ref(false)\n const selectedIndex = ref(null)\n const selectedText = ref('')\n const id = ref(uuid.v4())\n\n const listItems = computed(() => {\n if (!props.list.length) return []\n return cloneDeep(props.list)\n })\n\n function open(open: boolean) {\n isOpen.value = open\n }\n\n function select(index: number) {\n if (!listItems.value) return\n selectedIndex.value = index\n selectedText.value = listItems.value[index]\n open(false)\n }\n\n function close() {\n open(false)\n }\n\n function input() {\n const i = listItems.value.findIndex((l) => l.toLowerCase().startsWith(selectedText.value.toLowerCase()))\n if (i > -1) {\n selectedIndex.value = i\n scrollTo(i)\n }\n }\n\n function setOption(index: number) {\n selectedIndex.value = index\n selectedText.value = listItems.value[index]\n scrollTo(index)\n }\n\n function scrollTo(optionIndex: number) {\n // get elements\n const listbox = document.getElementById(id.value)\n const option = document.getElementById(`option-${optionIndex}`)\n\n if (!listbox || !option) {\n //If scrollTo is called before the elements are available, call\n //it again in 1ms until elements are there.\n setTimeout(() => scrollTo(optionIndex), 100)\n return\n }\n\n // get listbox coordinates\n const parentOffsetHeight = listbox?.offsetHeight ?? 0\n const parentScrollTop = listbox?.scrollTop ?? 0\n\n // get option coordinates\n const offsetHeight = option?.offsetHeight ?? 0\n const offsetTop = option?.offsetTop ?? 0\n\n // relative location calculations\n const isAbove = offsetTop < parentScrollTop\n const isBelow = offsetTop + offsetHeight > parentScrollTop + parentOffsetHeight\n\n // scroll\n if (isAbove) {\n listbox.scrollTo(0, offsetTop)\n } else if (isBelow) {\n listbox.scrollTo(0, offsetTop - parentOffsetHeight + offsetHeight)\n }\n }\n\n function inputKeydown(e: any) {\n const { key } = e\n const max = props.list.length - 1\n const action = getActionFromKey(key, isOpen.value)\n switch (action) {\n case MenuActions.Next:\n case MenuActions.Last:\n case MenuActions.First:\n case MenuActions.Previous:\n e.preventDefault()\n return setOption(getUpdatedIndex(selectedIndex.value ?? 0, max, action))\n case MenuActions.CloseSelect:\n e.preventDefault()\n select(selectedIndex.value ?? 0)\n return open(false)\n case MenuActions.Close:\n return open(false)\n case MenuActions.Open:\n return open(true)\n }\n }\n\n // Relevant key\n const Keys = {\n Backspace: 'Backspace',\n Clear: 'Clear',\n Down: 'ArrowDown',\n End: 'End',\n Enter: 'Enter',\n Escape: 'Escape',\n Home: 'Home',\n Left: 'ArrowLeft',\n PageDown: 'PageDown',\n PageUp: 'PageUp',\n Right: 'ArrowRight',\n Space: ' ',\n Tab: 'Tab',\n Up: 'ArrowUp',\n }\n\n // Actions the listbox with execute\n const MenuActions = {\n Close: 0,\n CloseSelect: 1,\n First: 2,\n Last: 3,\n Next: 4,\n Open: 5,\n Previous: 6,\n Select: 7,\n Space: 8,\n Type: 9,\n }\n\n function getActionFromKey(key: string, menuOpen: boolean) {\n if (!menuOpen && key === Keys.Down) {\n return MenuActions.Open\n }\n\n if (key === Keys.Down) {\n return MenuActions.Next\n } else if (key === Keys.Up) {\n return MenuActions.Previous\n } else if (key === Keys.Home) {\n return MenuActions.First\n } else if (key === Keys.End) {\n return MenuActions.Last\n } else if (key === Keys.Escape) {\n return MenuActions.Close\n } else if (key === Keys.Enter) {\n return MenuActions.CloseSelect\n } else if (key === Keys.Tab) {\n return MenuActions.Close\n } else if (key === Keys.Backspace || key === Keys.Clear) {\n return MenuActions.Type\n } else if (key.length === 1) {\n return MenuActions.Open\n }\n }\n\n function getUpdatedIndex(current: number, max: number, action: number) {\n switch (action) {\n case MenuActions.First:\n return 0\n case MenuActions.Last:\n return max\n case MenuActions.Previous:\n return Math.max(0, current - 1)\n case MenuActions.Next:\n return Math.min(max, current + 1)\n default:\n return current\n }\n }\n\n watch(\n () => props.value,\n () => {\n selectedText.value = props.value\n },\n { immediate: true }\n )\n watch(\n () => selectedText.value,\n () => {\n ctx.emit('input', selectedText.value)\n input()\n },\n { immediate: true }\n )\n\n return {\n id,\n isOpen,\n open,\n close,\n select,\n selectedIndex,\n selectedText,\n input,\n inputKeydown,\n listItems,\n }\n },\n})\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!./Combobox.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!./Combobox.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Combobox.vue?vue&type=template&id=0ae870a6&scoped=true&\"\nimport script from \"./Combobox.vue?vue&type=script&lang=ts&\"\nexport * from \"./Combobox.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Combobox.vue?vue&type=style&index=0&id=0ae870a6&scoped=true&lang=scss&\"\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 \"0ae870a6\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Confirmation.vue?vue&type=style&index=0&id=4aa3c49a&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Archive.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container-fluid mb-5\"},[_vm._m(0),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"order-detail-layout\"},[_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Shipment Information\")]),_c('order-shipper',{attrs:{\"order\":_vm.orderInfo}})],1),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Details\")]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Type: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderTitle))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Order Number: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order.upwardOrderID))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Order Date: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderDate))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Placed By: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderInfo.createdBy))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Challenge ID: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order.upwardChallengeID))])]),(_vm.order.purchaseOrderNumber)?_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Purchase Order: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order.purchaseOrderNumber))])]):_vm._e()]),_c('cost-summary',{staticClass:\"p-3\",attrs:{\"order\":_vm.order}}),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Ship To\")]),_c('shipping-address-display',{staticClass:\"small text-muted\",attrs:{\"value\":_vm.order.shippingInfo.shipTo}})],1),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Shipping Details\")]),_c('div',{staticClass:\"label mt-3\"},[_vm._v(\"Special Request\")]),_c('div',{staticClass:\"field\"},[_vm._v(_vm._s((\"\" + (_vm.order.notes ? _vm.order.notes : 'none'))))]),_c('div',{staticClass:\"label mt-3\"},[_vm._v(\"Shipping Method\")]),_vm._l((_vm.shippingMethods),function(method,index){return _c('div',{key:index},[(method.selected)?_c('div',[_c('div',{staticClass:\"field\"},[_c('span',[_vm._v(_vm._s(method.description))]),(method.extendedDescription)?_c('span',[_vm._v(\" (\"+_vm._s(method.extendedDescription)+\")\")]):_vm._e()])]):_vm._e()])})],2),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Status History\")]),_c('table',_vm._l((_vm.statusList),function(sl,i){return _c('tr',{key:i,staticClass:\"py-1\"},[_c('td',{staticClass:\"small text-muted px-1\"},[_vm._v(_vm._s(_vm.formatDate(sl.createDate)))]),_c('td',{staticClass:\"field px-3\"},[_vm._v(\" \"+_vm._s(sl.statusDescription)+\" \")])])}),0)])],1)])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('order-list-section',{staticClass:\"border-top pt-3\",attrs:{\"order\":_vm.order,\"itemList\":_vm.itemList}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Items\")])])])],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col text-center\"},[_c('div',{staticClass:\"d-flex flex-column align-items-center\"},[_c('div',{staticClass:\"alert-warning py-2 px-5\"},[_c('div',[_vm._v(\"This is not an invoice.\")]),_c('div',{staticClass:\"small\"},[_vm._v(\"Your order may arrive via multiple shipments.\")])])])])])}]\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\nimport { computed, defineComponent, PropType, onMounted } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\nimport dayjs from 'dayjs'\n\nimport InputLabel from '@/elements/InputLabel.vue'\nimport OrderListSection from '@/components/UpwardRunning/Orders/OrderListSection.vue'\nimport ShippingAddressDisplay from '@/components/ShippingAddressDisplay.vue'\nimport OrderShipper from '@/components/OrderHistory/OrderShippers.vue'\nimport CostSummary from '@/components/OrderHistory/CostSummary.vue'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\nimport OrderRollup from '@/views/Programs/Orders/league/components/OrderRollup.vue'\nimport ParticipantOrderGrouped from '@/components/OrderHistory/ParticipantOrderGrouped.vue'\n\nimport { xRunningStartupOrder } from '@/GeneratedTypes/xOrder/xRunningStartupOrder'\nimport { xRunningOrder } from '@/GeneratedTypes/xOrder/xRunningOrder'\nimport { RunningOrderProductInfo } from '@/GeneratedTypes/ListInfo/RunningOrderProductInfo'\nimport { OrderInfo } from '@/GeneratedTypes/Order/ListInfo/OrderInfo'\nimport { SectionNameConversion } from '@/views/Programs/Orders/vues/history/ext/SectionNames'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'OrderDetail',\n components: {\n OrderListSection,\n InputLabel,\n ShippingAddressDisplay,\n OrderShipper,\n CostSummary,\n SwitchSlot,\n OrderRollup,\n ParticipantOrderGrouped,\n },\n props: {\n order: { type: Object as PropType, required: true },\n orderInfo: { type: Object as PropType, required: true },\n itemList: { type: Array as PropType, required: true, default: () => [] },\n },\n setup(props) {\n const trackingNumbers = computed(() => props.orderInfo.trackingNumbers?.map((x) => x.trackingNumber))\n const shippingMethods = computed(() => props.order.shippingInfo?.shipMethods?.filter((x) => x.selected))\n const shipDate = computed(() =>\n props.orderInfo.shipDate\n ? dayjs(props.orderInfo.shipDate).format('MMM D, YYYY')\n : 'Order has not shipped'\n )\n\n const statusList = computed(() =>\n cloneDeep(props.orderInfo.statusList ?? []).sort((a, b) =>\n a.valueOf() == b.valueOf() ? 0 : a.valueOf() > b.valueOf() ? -1 : 1\n )\n )\n\n const statusText = computed(() => props.orderInfo.upwardOrderStatusID ?? 'n/a')\n const orderDate = computed(() => props.orderInfo?.createDate && formatDate(props.orderInfo.createDate))\n function formatDate(d: Date) {\n return dayjs(d).format('MMM D, YYYY h:mm a')\n }\n const orderTitle = computed(() => SectionNameConversion[props.order.upwardOrderType ?? ''])\n\n onMounted(() => {\n store.dispatch.programTypes.fetchAll(false) //go ahead and cache these up\n })\n\n return {\n statusText,\n trackingNumbers,\n shippingMethods,\n shipDate,\n orderDate,\n statusList,\n formatDate,\n orderTitle,\n }\n },\n})\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!./OrderDetail.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!./OrderDetail.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderDetail.vue?vue&type=template&id=b6671954&scoped=true&\"\nimport script from \"./OrderDetail.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderDetail.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderDetail.vue?vue&type=style&index=0&id=b6671954&scoped=true&lang=scss&\"\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 \"b6671954\",\n null\n \n)\n\nexport default component.exports","import { GetterTree, MutationTree, ActionTree, Commit } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { TeamPageAlertInfo } from '@/GeneratedTypes/ListInfo/TeamPageAlertInfo'\nimport { League } from '@/GeneratedTypes/League'\nimport leagueClient from '@/clients/leaguesClient'\nimport alertClient from '@/clients/alertClient'\nimport { ActionsImpl } from 'direct-vuex'\nimport { getEmptyTeamPageAlertInfo } from '@/lib/support/models/TeamPageAlertInfo/data'\nimport { getEmptyLeague } from '@/lib/support/models/League/data'\n\nexport enum viewModes {\n list = 'list',\n create = 'create',\n edit = 'edit',\n}\n\ninterface TeamPageAlertState {\n currentItem: TeamPageAlertInfo\n items: TeamPageAlertInfo[]\n viewMode: viewModes\n inEdit: TeamPageAlertInfo\n emptyFacility: TeamPageAlertInfo | null\n currentLeague: League\n}\n\nconst teamPageAlertState: TeamPageAlertState = {\n currentItem: getEmptyTeamPageAlertInfo(),\n inEdit: getEmptyTeamPageAlertInfo(),\n emptyFacility: null,\n items: new Array(),\n viewMode: viewModes.list,\n currentLeague: getEmptyLeague(),\n}\n\nexport enum getterNames {\n currentItem = 'currentItem',\n items = 'items',\n editorItem = 'editorItem',\n viewMode = 'viewMode',\n emptyTeamPageAlert = 'emptyTeamPageAlert',\n currentLeague = 'currentLeague',\n}\n\nconst getters: GetterTree = {\n [getterNames.currentItem]: (state: TeamPageAlertState) => state.currentItem,\n [getterNames.items]: (state: TeamPageAlertState) => state.items,\n [getterNames.editorItem]: (state: TeamPageAlertState) => state.inEdit,\n [getterNames.viewMode]: (state: TeamPageAlertState) => state.viewMode,\n [getterNames.emptyTeamPageAlert]: () => getEmptyTeamPageAlertInfo(),\n [getterNames.currentLeague]: (state: TeamPageAlertState) => state.currentLeague,\n}\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n setItems = 'setItems',\n updateViewMode = 'updateViewMode',\n addItem = 'addItem',\n removeItem = 'removeItem',\n setInEditItem = 'setInEditItem',\n setEmptyTeamPageAlert = 'setEmptyTeamPageAlert',\n setCurrentLeague = 'setCurrentLeague',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setCurrent](state: TeamPageAlertState, { item }: { item: TeamPageAlertInfo }) {\n state.currentItem = item\n },\n [mutationNames.setItems](state: TeamPageAlertState, { items }: { items: TeamPageAlertInfo[] }) {\n state.items = items\n\n if (items && items.length > 0) {\n state.currentItem = items[0]\n }\n },\n [mutationNames.updateViewMode](state: TeamPageAlertState, { item }: { item: viewModes }) {\n state.viewMode = item\n },\n [mutationNames.addItem](state: TeamPageAlertState, { item }: { item: TeamPageAlertInfo }) {\n state.items.push(item)\n },\n [mutationNames.removeItem](state: TeamPageAlertState, { id }: { id: number }) {\n const itemToRemove = state.items.find((f) => f.id === id)\n\n if (itemToRemove) {\n const itemIndex = state.items.indexOf(itemToRemove)\n state.items.slice(itemIndex, 1)\n }\n },\n [mutationNames.setInEditItem](state: TeamPageAlertState, { item }: { item: TeamPageAlertInfo }) {\n state.inEdit = item\n },\n [mutationNames.setEmptyTeamPageAlert](state: TeamPageAlertState, { item }: { item: TeamPageAlertInfo }) {\n state.emptyFacility = item\n },\n [mutationNames.setCurrentLeague](state: TeamPageAlertState, { item }: { item: League }) {\n state.currentLeague = item\n },\n}\n\nexport enum actionNames {\n load = 'load',\n set = 'set',\n beginCreating = 'beginCreating',\n endCreating = 'endCreating',\n beginEdit = 'beginEdit',\n endEdit = 'endEdit',\n save = 'save',\n delete = 'delete',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.load](\n { commit }: { commit: Commit },\n { id }: { id: string }\n ): Promise {\n const alerts = await alertClient.retrieveTeamPageAlerts(id)\n const league = await leagueClient.retrieve(id)\n\n commit(mutationNames.setCurrentLeague, { item: league })\n\n commit(mutationNames.setItems, { items: alerts ?? [] })\n return alerts\n },\n [actionNames.set]({ commit }: { commit: Commit }, { id }: { id: number }): TeamPageAlertInfo | null {\n const alert = teamPageAlertState.items.find((item) => item.id === id)\n\n if (alert) {\n commit(mutationNames.setCurrent, { item: alert })\n\n return alert\n }\n\n return null\n },\n [actionNames.beginCreating]({ commit }: { commit: Commit }) {\n commit(mutationNames.updateViewMode, { item: viewModes.create })\n\n const alert: TeamPageAlertInfo = getEmptyTeamPageAlertInfo()\n\n commit(mutationNames.setInEditItem, { item: alert })\n },\n [actionNames.endCreating]({ commit }: { commit: Commit }): void {\n commit(mutationNames.updateViewMode, { item: viewModes.list })\n },\n [actionNames.beginEdit]({ commit }: { commit: Commit }): void {\n commit(mutationNames.updateViewMode, { item: viewModes.edit })\n commit(mutationNames.setInEditItem, { item: teamPageAlertState.currentItem })\n },\n [actionNames.endEdit]({ commit }: { commit: Commit }): void {\n commit(mutationNames.updateViewMode, { item: viewModes.list })\n },\n async [actionNames.save]({\n commit,\n state,\n }: {\n commit: Commit\n state: TeamPageAlertState\n }): Promise {\n const alert = state.inEdit\n const leagueId = state.currentLeague.upwardLeagueID || ''\n\n const result = await alertClient.saveTeamPageAlert(leagueId, alert)\n const alerts = await alertClient.retrieveTeamPageAlerts(leagueId)\n if (alerts) {\n commit(mutationNames.setItems, { items: alerts })\n }\n\n return result\n },\n async [actionNames.delete]({ state }: { state: TeamPageAlertState }): Promise {\n const alertID = state.currentItem.id\n\n const deleteResult = await alertClient.removeTeamPageAlert(alertID)\n\n return deleteResult\n },\n}\n\nexport const namespace = 'teamPageAlerts'\n\nexport const teamPageAlerts = {\n namespaced: true as true,\n state: teamPageAlertState,\n actions,\n getters,\n mutations,\n ...viewModes,\n}\n","import { PreviewMessage } from '@/models/Communication/PreviewMessage'\nimport { EmailSMSLeagueMessageInfo } from '@/GeneratedTypes/Communication/EmailSMSLeagueMessage'\n\nexport function getEmptyPreviewMessage(): PreviewMessage {\n return {\n accountNumber: '',\n upwardLeagueID: '',\n selectedGroups: [],\n teams: [],\n individualContactInfo: [],\n practiceNight: 'All',\n startGrade: 'K3',\n endGrade: '12th',\n communicationType: '',\n displayName: '',\n replyTo: '',\n emailSubject: '',\n messageBody: '',\n to: [],\n toDelimited: '',\n paymentStatus: 'All',\n evalStatus: 'All',\n coachTeamStatus: 'All Approved',\n typeProgramID: '',\n viewAllLeagueContacts: false,\n practiceFacilityIDs: [],\n gender: 'E',\n }\n}\n\nexport interface MessageData {\n recipientTokens: string[]\n individualRecipients: string[]\n recipientCount: number\n subject: string\n attachments: string[]\n messageBody: string\n sentDate: Date | null\n messageType: string\n thirdPartyResponse: string\n}\n\nexport function getEmptyMessageData(): MessageData {\n return {\n recipientTokens: [],\n individualRecipients: [],\n recipientCount: 0,\n subject: '',\n attachments: [],\n messageBody: '',\n sentDate: null,\n messageType: '',\n thirdPartyResponse: '',\n } as MessageData\n}\nexport function toMessageDataFromEmailSMSLeagueMessageInfo(message: EmailSMSLeagueMessageInfo | null) {\n const messageData = getEmptyMessageData()\n if (!message) return messageData\n messageData.individualRecipients = message.recipients ? message.recipients : []\n messageData.recipientCount = message.recipients ? message.recipients.length : 0\n messageData.subject = message.emailSubject ? message.emailSubject : ''\n messageData.messageBody = message.messageBody ? message.messageBody : ''\n messageData.sentDate = message.createDateLocal\n messageData.messageType = message.messageType ? message.messageType : ''\n messageData.thirdPartyResponse = message.thirdPartyResponse ? message.thirdPartyResponse : ''\n\n if (message.emailAttachments && message.emailAttachments.length > 0) {\n for (let i = 0; i < message.emailAttachments.length; i++) {\n messageData.attachments.push(message.emailAttachments[i].name || '')\n }\n }\n return messageData\n}\n\nexport function toMessageDataFromPreviewMessage(message: PreviewMessage | null) {\n const messageData = getEmptyMessageData()\n if (!message) return messageData\n messageData.recipientTokens = message.selectedGroups\n messageData.individualRecipients = message.to\n messageData.recipientCount = message.to.length\n messageData.subject = message.emailSubject || ''\n messageData.messageBody = message.messageBody\n messageData.sentDate = null\n messageData.messageType = ''\n messageData.thirdPartyResponse = ''\n return messageData\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StarterOrderItemStepUR.vue?vue&type=style&index=0&id=8f7a8d06&lang=scss&scoped=true&\"","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { RestServiceResult } from '@/services/restService'\nimport { ActionsImpl } from 'direct-vuex'\n\nexport function getGenericUpwardTypes(clientMethod: () => Promise>) {\n return {\n genericTypesState: {\n items: [],\n } as GenericTypeState,\n getterTree: {\n [getterNames.allItems]: (state) => state.items,\n [getterNames.byUpwardTypeId]: (state) => (upwardTypeId: string) =>\n state.items.find((x) => x.upwardTypeID == upwardTypeId) ?? null,\n [getterNames.byId]: (state) => (id: number) => state.items.find((x) => x.id == id) ?? null,\n } as GetterTree, RootState>,\n mutations: {\n [mutationNames.setAll](state, { items }) {\n state.items = items\n },\n } as MutationTree>,\n actions: {\n async [actionNames.fetchAll]({ commit, getters }, { force = false }): Promise {\n if (getters[getterNames.allItems].length && !force) {\n return false\n }\n\n const result = await clientMethod()\n\n if (result.isSuccess) {\n const items = result.data\n commit(mutationNames.setAll, { items })\n return true\n }\n\n return false\n },\n } as ActionTree, RootState> & ActionsImpl,\n }\n}\n\nexport type UpwardTypeBase = {\n id: number\n upwardTypeID: string\n} & T\n\nexport interface GenericTypeState {\n items: UpwardTypeBase[]\n}\n\nexport enum getterNames {\n allItems = 'allItems',\n byUpwardTypeId = 'byUpwardTypeId',\n byId = 'byId',\n}\n\nexport enum mutationNames {\n setAll = 'setAll',\n}\n\nexport enum actionNames {\n fetchAll = 'fetchAll',\n}\n\nexport const namespace = 'genericUpwardTypes'\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PracticeModal.vue?vue&type=style&index=0&lang=scss&scopped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-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=style&index=0&id=5e336769&lang=scss&scoped=true&\"","import { CheerSquadGameAppointment } from '@/GeneratedTypes/CheerSquadGameAppointment'\nimport { CheerSquadGameAppointmentInfo } from '@/GeneratedTypes/ListInfo/CheerSquadGameAppointmentInfo'\nimport { CheerSquadGameAppointmentInfoModified } from '@/models/Appointments/CheerSquadGameAppointmentInfoModified'\n\nexport function isEmptyCheerSquadAppointment(\n which: CheerSquadGameAppointment | CheerSquadGameAppointmentInfo | CheerSquadGameAppointmentInfoModified\n): boolean {\n return which.id <= 0\n}\n","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!./InlineDateTimeInput2.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GradeGenderCard.vue?vue&type=style&index=0&id=5664f824&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"spinner-border\",class:{ 'spinner-border-sm': _vm.isSmall },attrs:{\"role\":\"status\"}},[_c('span',{staticClass:\"sr-only\"},[_vm._v(\"Loading...\")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'Loading',\n props: {\n isSmall: { type: Boolean, required: false, default: false },\n },\n})\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!./Loading.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!./Loading.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Loading.vue?vue&type=template&id=4dbc5748&\"\nimport script from \"./Loading.vue?vue&type=script&lang=ts&\"\nexport * from \"./Loading.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('table',{class:[{ 'data-table-zebra': _vm.tableStriped, 'table-hover': _vm.tableStriped }, 'simple-grid'],staticStyle:{\"width\":\"100%\"}},[(_vm.internalColumns)?_c('thead',[_c('tr',[_vm._l((_vm.internalColumns),function(column,index){return _c('th',{key:index,staticClass:\"py-2 text-nowrap\",class:{\n 'go-left': _vm.alignment(column) === 'left',\n 'go-right': _vm.alignment(column) === 'right',\n clickable: !_vm.disableHeaderSort,\n },style:(_vm.calcwidth(column)),on:{\"click\":function($event){return _vm.headerClick(column)}}},[_c('div',[_c('span',[_vm._v(_vm._s(column.headerText || column.field))]),(_vm.sortColumn == column.field)?_c('i',{staticClass:\"pl-1 fas fa-sort\"}):_vm._e()])])}),(_vm.showDeleteButtonHeader)?_c('th',{staticClass:\"py-1\"}):_vm._e(),(_vm.showEditButtonHeader)?_c('th',{staticClass:\"py-1\"}):_vm._e()],2)]):_vm._e(),(_vm.internalData && _vm.internalColumns)?_c('tbody',_vm._l((_vm.internalData),function(entry,index){return _c('tr',{key:index,class:{ 'selected-row': _vm.selectedIndex == index },on:{\"click\":function($event){return _vm.handleRowClicked(index, entry, 'rowClicked')},\"dblclick\":function($event){return _vm.handleRowClicked(index, entry, 'rowDoubleClicked')}}},[_vm._l((_vm.internalColumns),function(columns,index){return _c('td',{key:index,staticClass:\"py-2\",class:{\n 'go-left': _vm.alignment(columns) === 'left',\n 'go-right': _vm.alignment(columns) === 'right',\n }},[(columns.template)?_c('span',[_c(_vm.getColumnComponent(columns.template),{tag:\"component\",attrs:{\"data\":entry}})],1):(columns.customRender)?_c('span',{domProps:{\"innerHTML\":_vm._s(\n columns.customRender(\n _vm.resolvePath(entry, columns.field, '') && _vm.resolvePath(entry, columns.field, '')\n )\n )}}):_c('span',[_vm._v(_vm._s(_vm.resolvePath(entry, columns.field, '') && _vm.resolvePath(entry, columns.field, '')))])])}),(_vm.showEditButton)?_c('td',{staticClass:\"py-2\"},[_c('button',{class:_vm.editButtonClasses,domProps:{\"innerHTML\":_vm._s(_vm.editButtonInnerHtml)},on:{\"click\":function($event){$event.stopPropagation();return _vm.handleEditClicked(entry)}}})]):_vm._e(),(_vm.showDeleteButton)?_c('td',{staticClass:\"py-2\"},[_c('button',{class:_vm.deleteButtonClasses,domProps:{\"innerHTML\":_vm._s(_vm.deleteButtonInnerHtml)},on:{\"click\":function($event){$event.stopPropagation();return _vm.handleDeleteClicked(entry)}}})]):_vm._e()],2)}),0):_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\nimport { defineComponent, ref, watch, PropType, onMounted } from '@vue/composition-api'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { GridColumn } from '../models/Grid/GridColumn'\nimport { SFTemplateType } from '@/models/SyncFusionTypes'\nimport { ComponentArgumentRuntimeException } from '@/lib/components/exceptions/ComponentArgumentRuntimeException'\nimport { EditIconCssClass, DeleteIconCssClass } from '@/elements/Icons'\n\nexport default defineComponent({\n name: 'SimpleGrid',\n components: {\n InputLabel,\n },\n methods: {\n getColumnComponent: (data: SFTemplateType) => {\n const c = data()\n return c?.template\n },\n },\n props: {\n /**\n * Original interface property\n */\n columns: { type: Array as PropType, required: false },\n /**\n * Original interface property\n */\n gridData: { type: Array as PropType[] | null>, required: false },\n /**\n * Not sure why these names are reversed, but try to keep a synonymous interface with grid.\n * this is a pass through with the watch below to the internal property\n */\n gridColumns: { type: Array as PropType, required: false },\n /**\n * Again provides a synonymous interface as Grid.vue\n * this is a pass through with the watch below to the internal property\n */\n data: { type: Array as PropType[] | null>, required: false },\n showEditButton: { type: Boolean, required: false, default: false },\n showDeleteButton: { type: Boolean, required: false, default: false },\n showDeleteButtonHeader: { type: Boolean, required: false, default: false },\n showEditButtonHeader: { type: Boolean, required: false, default: false },\n editButtonInnerHtml: { type: String, required: false, default: `` },\n deleteButtonInnerHtml: {\n type: String,\n required: false,\n default: ``,\n },\n deleteButtonClasses: { type: String, required: false, default: 'btn btn-light btn-sm' },\n editButtonClasses: { type: String, required: false, default: 'btn btn-light btn-sm' },\n tableStriped: { type: Boolean, required: false, default: false },\n disableHeaderSort: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const internalData = ref[] | null>(null)\n const internalColumns = ref(null)\n\n /**\n * @param column\n * @private\n */\n function calcwidth(column: GridColumn) {\n if (column.width) {\n if (Number.isInteger(column.width)) {\n return `width:${column.width}px;`\n } else {\n return 'width:${column.width};'\n }\n }\n }\n\n function alignment(column: GridColumn) {\n return column?.textAlign?.toLowerCase() ?? ''\n }\n\n function handleEditClicked(entity: Record) {\n ctx.emit('editButtonClicked', entity)\n }\n\n function handleDeleteClicked(entity: Record) {\n ctx.emit('deleteButtonClicked', entity)\n }\n\n const selectedIndex = ref(-1)\n\n function handleRowClicked(index: number, entity: Record, eventName: string) {\n //eventName: rowClicked or rowDoubleClicked\n ctx.emit(eventName, entity)\n selectedIndex.value = index\n }\n\n onMounted(() => {\n internalColumns.value = props.columns || props.gridColumns || []\n internalData.value = props.data || props.gridData || []\n\n if (!internalColumns.value) {\n throw new ComponentArgumentRuntimeException(\n 'SimpleGrid specify the columns property (as a blank array at least)'\n )\n }\n if (!internalData.value) {\n throw new ComponentArgumentRuntimeException(\n 'SimpleGrid specify the data property (as a blank array at least)'\n )\n }\n })\n\n const bit = ref(1)\n const sortColumn = ref('')\n\n function headerClick(column: GridColumn) {\n if (props.disableHeaderSort || !internalData.value) return\n sortColumn.value = column.field ?? ''\n internalData.value.sort((a, b) => {\n const val1 = resolvePath(a, sortColumn.value, '')\n const val2 = resolvePath(b, sortColumn.value, '')\n return val1 > val2 ? bit.value * -1 : bit.value * 1\n })\n bit.value = bit.value * -1\n }\n\n function resolvePath(object: object, path: string, defaultValue: string) {\n return path\n .split(/[\\.\\[\\]\\'\\\"]/)\n .filter((p: any) => p)\n .reduce((o: any, p: any) => (o ? o[p] : defaultValue), object)\n }\n\n watch(\n () => props.columns,\n () => {\n internalColumns.value = [...(props.columns ?? [])]\n }\n )\n\n watch(\n () => props.gridColumns,\n () => {\n internalColumns.value = [...(props.gridColumns ?? [])]\n }\n )\n\n watch(\n () => props.data,\n () => {\n internalData.value = [...(props.data ?? [])]\n }\n )\n\n watch(\n () => props.gridData,\n () => {\n internalData.value = [...(props.gridData ?? [])]\n }\n )\n\n return {\n internalColumns,\n headerClick,\n internalData,\n handleRowClicked,\n alignment,\n resolvePath,\n handleEditClicked,\n handleDeleteClicked,\n calcwidth,\n selectedIndex,\n sortColumn,\n }\n },\n})\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!./SimpleGrid.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!./SimpleGrid.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SimpleGrid.vue?vue&type=template&id=2b7d84da&scoped=true&\"\nimport script from \"./SimpleGrid.vue?vue&type=script&lang=ts&\"\nexport * from \"./SimpleGrid.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SimpleGrid.vue?vue&type=style&index=0&id=2b7d84da&lang=scss&scoped=true&\"\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 \"2b7d84da\",\n null\n \n)\n\nexport default component.exports","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\": \"2554\",\n\t\"./bs.js\": \"2554\",\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\": \"8d574\",\n\t\"./pl.js\": \"8d574\",\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\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClinicOverview.vue?vue&type=style&index=0&id=62f68b64&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DivisionGradeGenderList.vue?vue&type=style&index=0&id=143c30ba&lang=scss&scoped=true&\"","import { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport { xStartupOrder } from '@/GeneratedTypes/xOrder/xStartupOrder'\nimport { xStartupOrderLine } from '@/GeneratedTypes/xOrder/xStartupOrderLine'\nimport { OrderProduct } from 'src/models/Order/OrderProduct'\nimport { OrderProductSize } from 'src/models/Order/OrderProductSize'\nimport { cloneDeep } from 'lodash'\nimport { getEmptyOrderProduct } from '@/lib/support/models/GeneratedTypes/xOrders/xOrderProduct'\n\nexport function ToXStartupOrder(order: xStartupOrderExt) {\n // Convert xStartupOrderExt to xStartupOrder\n const localOrder = cloneDeep(order)\n\n const orderLines: xStartupOrderLine[] = []\n localOrder.products.forEach((product: OrderProduct) => {\n product.productColorSizes?.forEach((size: OrderProductSize) => {\n //restrict to just ordered things.\n if (size.orderQuantity) {\n const orderLine = {\n productID: product.upwardProductID,\n typeProgramID: product.typeProgramID,\n typeSizeID: size.typeSizeID,\n typeColorID: size.typeColorID,\n quantity: size.orderQuantity,\n quantityFree: size.orderFreeQuantity,\n } as xStartupOrderLine\n orderLines.push(orderLine)\n }\n })\n })\n\n localOrder.orderLines = orderLines\n localOrder.products = []\n\n if (localOrder.upwardOrderType != 'MANUALORDER') {\n localOrder.processingInstructions = []\n }\n\n return normalizeOrder(localOrder) as xStartupOrder\n}\n\n/**\n * Marks sales tax with a negative value to signal to order summary that it isn't ready\n * to calculate yet.\n * @param o\n */\nexport function setSalesTaxNotCalculatedYet(o: xStartupOrderExt | undefined) {\n if (o) {\n o.salesTax = -0.0001\n }\n return o\n}\n\nexport function getSalesTaxNotCalculatedYet(o: xStartupOrderExt | undefined) {\n return o && o.salesTax < 0\n}\n\n/**\n * Removes promocard's type size id from the order process and makes it a unique id\n * @param order\n * @return adjusted lineitems on the order\n */\nfunction normalizeOrder(order: xStartupOrderExt) {\n const rv = cloneDeep(order)\n const lines: xStartupOrderLine[] = []\n\n ;(rv.orderLines ?? []).forEach((line) => {\n if (line.productID == 'PROMOCARD') {\n lines.push({\n ...cloneDeep(line),\n productUniqueID: line.typeColorID,\n typeColorID: 'N/A',\n typeSizeID: 'N/A',\n })\n } else {\n lines.push({ ...cloneDeep(line) })\n }\n })\n return { ...rv, orderLines: lines }\n}\n\n/**\n * Merge order with orderExt and return as xStartupOrderExt\n * order values overwrite orderExt\n * @param order\n * @param orderExt\n * @constructor\n */\nexport function ToXStartupOrderExt(order: xStartupOrder, orderExt: xStartupOrderExt) {\n //\n //\n const newOrderExt: xStartupOrderExt = getEmptyXStartupOrderExt()\n Object.assign(newOrderExt, orderExt, order)\n return cloneDeep(newOrderExt)\n}\n\nexport function removeZeroQtyProducts(orderExt: xStartupOrderExt) {\n const localOrder = cloneDeep(orderExt)\n const products: OrderProduct[] = []\n let sizes: OrderProductSize[] = []\n\n localOrder.products.forEach((product: OrderProduct) => {\n sizes = []\n product.productColorSizes?.forEach((size: OrderProductSize) => {\n if (size.orderQuantity > 0) {\n sizes.push(size)\n }\n })\n if (sizes.length > 0) {\n product.productColorSizes = sizes\n products.push(product)\n }\n })\n localOrder.products = products\n return localOrder\n}\n\nexport function getEmptyXStartupOrderExt(): xStartupOrderExt {\n return {\n products: [getEmptyOrderProduct()],\n lastOrderSubmitDate: null,\n upwardOrderType: '',\n clientOrderDate: null,\n upwardOrderID: '',\n upwardLeagueID: '',\n accountNumber: '',\n totalPlayerCount: 0,\n longevityDiscountAmount: 0,\n notes: '',\n purchaseOrderNumber: '',\n dueDate: null,\n salesTax: 0,\n typeOrderingContextID: '',\n orderLines: [],\n shippingInfo: {\n shipTo: {\n name: '',\n attention: '',\n contactInfo: '',\n street1: '',\n street2: '',\n subdivision1: '',\n subdivision2: '',\n postalCode: '',\n countryCode: '',\n },\n shipMethods: [\n {\n id: '',\n description: '',\n extendedDescription: '',\n selected: false,\n cost: 0,\n },\n ],\n },\n totalOrderedProductAmount: 0,\n totalParticipantCount: 0,\n processingInstructions: [],\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('input-label',{attrs:{\"label\":_vm.label,\"required\":_vm.required}}),(_vm.showRangeHint && _vm.validGrades.length > 0)?_c('span',{staticClass:\"small text-muted font-italic\"},[_vm._v(\" \"+_vm._s(_vm.gradeRange))]):_vm._e(),(_vm.validGrades.length == 0)?_c('div',{staticClass:\"ml-4 alert alert-warning\"},[_vm._v(\" There is no overlap between \"+_vm._s(_vm.isByAge ? 'ages' : 'grades')+\" \")]):_vm._e(),_c('div',{staticClass:\"d-flex\"},[_c('select-input',{staticClass:\"pt-0 mr-4 grade\",attrs:{\"items-list\":_vm.availableStartGrades(_vm.end),\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"valuePropertyName\":\"upwardTypeID\",\"label\":_vm.isByAge ? 'start age' : 'start grade',\"vee-validate-rules\":\"required\"},model:{value:(_vm.start),callback:function ($$v) {_vm.start=$$v},expression:\"start\"}}),_c('select-input',{staticClass:\"pt-0 grade\",attrs:{\"items-list\":_vm.availableStopGrades(_vm.start),\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"valuePropertyName\":\"upwardTypeID\",\"label\":_vm.isByAge ? 'end age' : 'end grade',\"vee-validate-rules\":\"required\"},model:{value:(_vm.end),callback:function ($$v) {_vm.end=$$v},expression:\"end\"}})],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\nimport { defineComponent, watch, computed, PropType, ref } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { getGrades } from '@/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport * as gradeStore from '@/store/gradeTypes'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'GradeRangeDropdowns',\n props: {\n label: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n startGrade: { type: String, required: false, default: () => getGrades(false)[0] },\n endGrade: { type: String, required: false, default: () => getGrades(false)[getGrades(false).length - 1] },\n validGrades: {\n type: Array as PropType,\n required: false,\n default: () => gradeStore.gradeTypes.state.items,\n },\n showRangeHint: { type: Boolean, required: false, default: false },\n isByAge: { type: Boolean, required: false, default: false },\n },\n components: {\n SelectInput,\n InputLabel,\n },\n\n setup(props, ctx) {\n const start = ref(props.startGrade)\n const end = ref(props.endGrade)\n function availableStartGrades(endGrade: string) {\n const endSortOrder = store.getters.gradeTypes.byUpwardTypeId(endGrade)?.sortOrder ?? 0\n return props.validGrades.filter((g) => g.sortOrder <= endSortOrder)\n }\n\n function availableStopGrades(startGrade: string) {\n const startSortOrder = store.getters.gradeTypes.byUpwardTypeId(startGrade)?.sortOrder ?? 0\n return props.validGrades.filter((g) => g.sortOrder >= startSortOrder)\n }\n\n function validGradeRange(min: string, max: string): string[] {\n const gradeList = getGrades(false)\n const idx1 = gradeList.indexOf(min)\n const idx2 = gradeList.indexOf(max) - idx1 + 1\n return gradeList.splice(idx1, idx2)\n }\n\n function emitGrades() {\n ctx.emit('change', validGradeRange(start.value, end.value))\n }\n\n const gradeRange = computed(() => {\n if (props.validGrades && props.validGrades.length > 0) {\n const grades = props.validGrades\n if (grades.length == 1) {\n return `( Allowed ${props.isByAge ? 'age' : 'grade'}: ${\n props.isByAge ? grades[0].ageByCutoff : grades[0].upwardTypeID\n } )`\n } else {\n return `( Allowed ${props.isByAge ? 'age' : 'grade'} range: ${\n props.isByAge ? grades[0].ageByCutoff : grades[0].upwardTypeID\n } - ${\n props.isByAge ? grades[grades.length - 1].ageByCutoff : grades[grades.length - 1].upwardTypeID\n } )`\n }\n }\n })\n\n watch(\n () => start.value,\n () => emitGrades(),\n { immediate: true }\n )\n watch(\n () => end.value,\n () => emitGrades(),\n { immediate: true }\n )\n\n watch(\n () => props.startGrade,\n () => (start.value = props.startGrade),\n { immediate: true }\n )\n\n watch(\n () => props.endGrade,\n () => (end.value = props.endGrade),\n { immediate: true }\n )\n\n return {\n availableStartGrades,\n availableStopGrades,\n gradeRange,\n start,\n end,\n }\n },\n})\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!./GradeRangeDropdowns.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!./GradeRangeDropdowns.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GradeRangeDropdowns.vue?vue&type=template&id=60071691&scoped=true&\"\nimport script from \"./GradeRangeDropdowns.vue?vue&type=script&lang=ts&\"\nexport * from \"./GradeRangeDropdowns.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GradeRangeDropdowns.vue?vue&type=style&index=0&id=60071691&lang=scss&scoped=true&\"\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 \"60071691\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ComboBoxInput.vue?vue&type=style&index=0&id=281898e0&lang=scss&scoped=true&\"","import { UpwardExceptionResult } from '@/models/UpwardExceptionResult'\n\nexport class GeneralError extends Error {\n public name = 'General Error'\n public innerException: Error | UpwardExceptionResult | null = null\n constructor(message: string, exception?: Error | UpwardExceptionResult | null) {\n super(message)\n this.message = message\n this.innerException = exception ?? null\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"small text-muted\"},[_c('div',{staticClass:\"font-italic\",domProps:{\"innerHTML\":_vm._s(_vm.shipmentMessage)}}),_vm._l((_vm.order.shipmentList),function(o,i){return _c('OrderShipment',{key:i,staticClass:\"my-5\",attrs:{\"order\":_vm.order,\"orderShipmentInfo\":o}})})],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('div',{staticClass:\"p-2 bg-light-2\"},[_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.orderShipmentInfo.shippedFromName)+\" \")]),(!_vm.orderShipmentInfo.trackingNumbersExist)?_c('div',[_c('div',[_vm._v(\"No tracking numbers received yet.\")]),_c('div',{staticClass:\"p-0\"},[_vm._v(\"Please check back later.\")])]):_vm._e(),_vm._l((_vm.trackingNumbersToShow),function(t){return _c('TrackingNumber',{key:t.trackingNumber,attrs:{\"trackingNumberInfo\":t}})}),(_vm.trackingNumbersRemaining)?_c('div',[_vm._v(\" ... and \"+_vm._s(_vm.trackingNumbersRemaining)+\" more. \"),_c('button',{staticClass:\"btn btn-link p-0 btn-sm border-0\",on:{\"click\":_vm.viewAll}},[_vm._v(\"View all\")]),_vm._v(\". \")]):_vm._e()],2),_c('div',{staticClass:\"mb-2 text-center px-3\",class:_vm.orderShipmentInfo.shipComplete ? 'alert-success' : 'alert-warning'},[_vm._v(\" \"+_vm._s(_vm.trackingMessage)+\" \")]),_c('Modal',{attrs:{\"title\":_vm.orderShipmentInfo.shippedFromName,\"isSmall\":\"\"},model:{value:(_vm.isModalVisible),callback:function ($$v) {_vm.isModalVisible=$$v},expression:\"isModalVisible\"}},_vm._l((_vm.allTrackingNumbers),function(t){return _c('TrackingNumber',{key:t.trackingNumber,attrs:{\"trackingNumberInfo\":t}})}),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\nimport { computed, defineComponent, PropType, ref } from '@vue/composition-api'\nimport { OrderInfo } from '@/GeneratedTypes/Order/ListInfo/OrderInfo'\nimport { OrderShipmentInfo } from '@/GeneratedTypes/Order/ListInfo/OrderShipmentInfo'\nimport TrackingNumber from '@/components/OrderHistory/TrackingNumber.vue'\nimport Modal from '@/components/Modal.vue'\n\ninterface OrderShipmentInfoFixed extends OrderShipmentInfo {\n shippedFromID: string | null\n}\n\nexport default defineComponent({\n name: 'OrderShipment',\n props: {\n order: { type: Object as PropType, required: true },\n orderShipmentInfo: { type: Object as PropType, required: true },\n maxCount: { type: Number as PropType, default: 5, required: false },\n },\n components: { TrackingNumber, Modal },\n setup(props) {\n const isModalVisible = ref(false)\n\n const trackingMessage = computed(() =>\n props.orderShipmentInfo.shipComplete\n ? 'All tracking numbers received from this distributor'\n : props.orderShipmentInfo.trackingNumbersExist\n ? 'More tracking numbers to come from this distributor'\n : ''\n )\n\n const allTrackingNumbers = computed(\n () =>\n props.order.trackingNumbers?.filter(\n (t) => t.shippedFromID === props.orderShipmentInfo.shippedFromID\n ) || []\n )\n\n const trackingNumbersToShow = computed(() => {\n if (props.maxCount) {\n return allTrackingNumbers.value.slice(0, props.maxCount)\n }\n\n return allTrackingNumbers.value\n })\n\n const trackingNumbersRemaining = computed(\n () => allTrackingNumbers.value.length - trackingNumbersToShow.value.length\n )\n\n const viewAll = () => {\n isModalVisible.value = true\n }\n\n return {\n trackingNumbersToShow,\n trackingMessage,\n trackingNumbersRemaining,\n viewAll,\n allTrackingNumbers,\n isModalVisible,\n }\n },\n})\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!./OrderShipment.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!./OrderShipment.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderShipment.vue?vue&type=template&id=3e4977aa&\"\nimport script from \"./OrderShipment.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderShipment.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\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\nimport { OrderInfo } from '@/GeneratedTypes/Order/ListInfo/OrderInfo'\nimport OrderShipment from '@/components/OrderHistory/OrderShipment.vue'\n\nexport default defineComponent({\n name: 'OrderShippers',\n props: {\n order: { type: Object as PropType, required: true },\n },\n components: { OrderShipment },\n setup(props) {\n const shipmentCount = computed(() => (props.order.shipmentList ? props.order.shipmentList.length : 0))\n\n const shipmentMessage = computed(() => {\n const count = shipmentCount.value\n if (count > 0) {\n return `
Your order will arrive from ${count} distribution center${count > 1 ? 's' : ''}.
`\n } else {\n return `
Your order is being processed.
Please check back for tracking numbers.
`\n }\n })\n\n return { shipmentMessage }\n },\n})\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!./OrderShippers.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!./OrderShippers.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderShippers.vue?vue&type=template&id=6bfce5ea&\"\nimport script from \"./OrderShippers.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderShippers.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('v-list-item',{attrs:{\"ripple\":false,\"link\":\"\"},on:{\"click\":function($event){return _vm.$emit('click')}}},[_c('div',{staticClass:\"menu-item-container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"flex-item\"},[_c('v-icon',{staticClass:\"flex-item\",attrs:{\"size\":\"30px\"}},[_vm._v(_vm._s(_vm.iconClass))])],1),_c('div',{staticClass:\"flex-item\"},[_c('span',{staticClass:\"menu-text\"},[_vm._v(_vm._s(_vm.text))])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'SidebarItem',\n props: {\n iconClass: { type: String, required: true },\n text: { type: String, required: true },\n exact: { type: Boolean, default: false, required: false },\n },\n})\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!./SidebarItem.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!./SidebarItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SidebarItem.vue?vue&type=template&id=a04679a6&scoped=true&\"\nimport script from \"./SidebarItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./SidebarItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SidebarItem.vue?vue&type=style&index=0&id=a04679a6&lang=scss&scoped=true&\"\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 \"a04679a6\",\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';\nimport { VListItem } from 'vuetify/lib/components/VList';\ninstallComponents(component, {VIcon,VListItem})\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IntegrationNotesDialog.vue?vue&type=style&index=0&id=2e5f7d83&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CostSummary.vue?vue&type=style&index=0&id=7ea81432&scoped=true&lang=scss&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagementPanel.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Archive.vue?vue&type=style&index=0&id=5d6d5cc3&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"heading background-secondary\"},[_c('h6',{staticClass:\"d-inline-block m-0 text-primary\"},[_vm._v(_vm._s(_vm.title))]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'SectionHeader',\n props: {\n title: { type: String, required: true },\n },\n})\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!./SectionHeader.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!./SectionHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SectionHeader.vue?vue&type=template&id=4ff8aa32&scoped=true&\"\nimport script from \"./SectionHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./SectionHeader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SectionHeader.vue?vue&type=style&index=0&id=4ff8aa32&lang=scss&scoped=true&\"\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 \"4ff8aa32\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=style&index=1&lang=scss&\"","import { LeagueVolunteerRoleInfo } from '@/GeneratedTypes/ListInfo/LeagueVolunteerRoleInfo'\nimport { LeagueVolunteerRole } from '@/GeneratedTypes/LeagueVolunteerRole'\n\nexport function leagueVolunteerRoleToLeagueVolunteerRoleInfo(\n a: LeagueVolunteerRole\n): LeagueVolunteerRoleInfo {\n return {\n ...a,\n serverAuthorizedExpireDate: null,\n leagueID: 0,\n volunteerIndividualID: 0,\n udFs: [],\n }\n}\n","import { LeagueVolunteerRoleInfo } from '@/GeneratedTypes/ListInfo/LeagueVolunteerRoleInfo'\nimport { LeagueVolunteerRole } from '@/GeneratedTypes/LeagueVolunteerRole'\n\nexport function leagueVolunteerRoleInfoToLeagueVolunteerRole(\n l: LeagueVolunteerRoleInfo\n): LeagueVolunteerRole {\n return {\n roleID: l.roleID,\n approved: l.approved,\n udFs: [],\n authorizedExpireDate: l.authorizedExpireDate,\n upwardAuthInvitationID: l.upwardAuthInvitationID,\n }\n}\n","import { IndividualAddressInfo } from '@/GeneratedTypes/ListInfo/IndividualAddressInfo'\nimport { IndividualAddress } from '@/GeneratedTypes/IndividualAddress'\n\nexport function individualAddressInfoToIndividualAddress(a: IndividualAddressInfo): IndividualAddress {\n return {\n addressID: a.addressID,\n postalCode: a.postalCode ?? '',\n priority: a.priority,\n street1: a.street1 ?? '',\n street2: a.street2,\n subdivision1: a.subdivision1 ?? '',\n subdivision2: a.subdivision2 ?? '',\n typeAddressID: a.typeAddressID ?? '',\n typeCountryID: a.typeCountryID,\n }\n}\n\nexport function individualAddressInfoArrToIndividualAddressArr(\n a: IndividualAddressInfo[] | null\n): IndividualAddress[] {\n if (a == null) {\n return []\n }\n return a.map((x) => individualAddressInfoToIndividualAddress(x))\n}\n","import { IndividualEmail } from '@/GeneratedTypes/IndividualEmail'\nimport { IndividualEmailInfo } from '@/GeneratedTypes/ListInfo/IndividualEmailInfo'\n\nexport function individualEmailInfoToIndividualEmail(x: IndividualEmailInfo): IndividualEmail {\n return {\n typeEmailID: x.typeEmailID ?? '',\n emailAddress: x.emailAddress ?? '',\n valid: x.valid ?? '',\n validityReason: x.validityReason ?? '',\n priority: x.priority,\n emailID: x.emailID,\n }\n}\n","import { IndividualPhoneInfo } from '@/GeneratedTypes/ListInfo/IndividualPhoneInfo'\nimport { IndividualPhone } from '@/GeneratedTypes/IndividualPhone'\n\nexport function individualPhoneInfoToIndividualPhone(x: IndividualPhoneInfo): IndividualPhone {\n return {\n phoneID: x.phoneID,\n phoneNumber: x.phoneNumber ?? '',\n priority: x.priority,\n typePhoneID: x.typePhoneID ?? '0',\n extension: x.extension ?? '',\n allowSMS: x.typePhoneID == 'MOBILE',\n }\n}\n","import { IndividualEmail } from '@/GeneratedTypes/IndividualEmail'\nimport { IndividualEmailInfo } from '@/GeneratedTypes/ListInfo/IndividualEmailInfo'\n\nexport function individualEmailToIndividualEmailInfo(i: IndividualEmail): IndividualEmailInfo {\n return {\n emailAddress: i.emailAddress,\n valid: i.valid,\n validityReason: i.validityReason,\n individualID: 0,\n emailID: i.emailID,\n typeEmailID: i.typeEmailID,\n priority: i.priority,\n }\n}\n","import { IndividualPhoneInfo } from '@/GeneratedTypes/ListInfo/IndividualPhoneInfo'\nimport { IndividualPhone } from '@/GeneratedTypes/IndividualPhone'\n\nexport function individualPhoneToIndividualPhoneInfo(i: IndividualPhone): IndividualPhoneInfo {\n return {\n phoneID: i.phoneID,\n phoneNumber: i.phoneNumber,\n priority: i.priority,\n extension: i.extension,\n typePhoneID: i.typePhoneID,\n individualID: 0,\n }\n}\n","import { LeagueVolunteerInfo } from '@/GeneratedTypes/ListInfo/LeagueVolunteerInfo'\nimport { LeagueVolunteer } from '@/GeneratedTypes/LeagueVolunteer'\n\nimport { leagueVolunteerRoleToLeagueVolunteerRoleInfo } from '@/lib/support/models/LeagueVolunteerRoleInfo/leagueVolunteerRoleToLeagueVounteerRoleInfo'\nimport { leagueVolunteerRoleInfoToLeagueVolunteerRole } from '@/lib/support/models/LeagueVolunteerRole/leagueVolunteerRoleInfoToLeagueVolunteerRole'\nimport { individualAddressInfoToIndividualAddress } from '@/lib/support/models/IndividualAddress/individualAddressInfoMapper'\nimport { individualEmailInfoToIndividualEmail } from '@/lib/support/models/IndividualEmail/individualEmailInfoToIndividualEmail'\nimport { individualPhoneInfoToIndividualPhone } from '@/lib/support/models/IndividualPhone/individualPhoneInfoToIndividualPhone'\nimport { LeagueCoach } from '@/GeneratedTypes/LeagueCoach'\nimport { LeagueCoachInfo } from '@/GeneratedTypes/ListInfo/LeagueCoachInfo'\nimport { CoachProgramInfo } from '@/GeneratedTypes/ListInfo/CoachProgramInfo'\nimport { CoachProgram } from '@/GeneratedTypes/CoachProgram'\nimport { individualEmailToIndividualEmailInfo } from '@/lib/support/models/ListInfo/IndividualEmailInfo/individaulEmailToIndividualEmailInfo'\nimport { individualPhoneToIndividualPhoneInfo } from '@/lib/support/models/ListInfo/IndividualPhoneInfo/individualPhoneToIndividualPhoneInfo'\n\nfunction CoachProgramInfoToCoachProgram(x: CoachProgramInfo): CoachProgram {\n return {\n assistantCoachLink: null,\n gendersAndGrades: [],\n assistantCoachPreferred: false,\n products: [],\n typeProgramID: x.typeProgramID ?? '',\n }\n}\n\nfunction LeagueCoachInfoToLeagueCoach(x: LeagueCoachInfo): LeagueCoach {\n return {\n practiceNights: [],\n programs: x.programs?.map((x) => CoachProgramInfoToCoachProgram(x)) || [],\n }\n}\n\nexport function leagueVolunteerInfoToLeagueVolunteer(incoming: LeagueVolunteerInfo): LeagueVolunteer {\n return {\n coachPreferences: incoming?.coachPreferences\n ? LeagueCoachInfoToLeagueCoach(incoming?.coachPreferences)\n : null,\n thirdPartyClientIDs: [],\n leagueID: incoming.leagueID,\n accountNumber: incoming.accountNumber ?? '0',\n individualID: incoming.individualID,\n firstName: incoming.firstName ?? '',\n lastName: incoming.lastName ?? '',\n roles: incoming?.roles?.map((x) => leagueVolunteerRoleInfoToLeagueVolunteerRole(x)) || [],\n addresses: incoming?.addresses?.map((x) => individualAddressInfoToIndividualAddress(x)) || [],\n emailAddresses: incoming?.emailAddresses?.map((x) => individualEmailInfoToIndividualEmail(x)) || [],\n phoneNumbers: incoming?.phoneNumbers?.map((x) => individualPhoneInfoToIndividualPhone(x)) || [],\n birthDate: incoming.birthDate,\n churchName: incoming.churchName,\n gender: incoming.gender,\n middleInitial: incoming.middleInitial,\n staff: incoming.staff,\n typeSizeID: incoming.typeSizeID,\n optOutEmails: incoming.optOutEmails,\n optOutSMS: incoming.optOutSMS,\n inviteAllowed: incoming.inviteAllowed,\n registrationNote: incoming.registrationNote ?? '',\n }\n}\n\nexport function leagueVolunteerToLeagueVolunteerInfo(incoming: LeagueVolunteer): LeagueVolunteerInfo {\n const x = {\n ...incoming,\n accountNumber: incoming.accountNumber,\n roles: incoming?.roles?.map((x) => leagueVolunteerRoleToLeagueVolunteerRoleInfo(x)) ?? [],\n addresses: null,\n registrationTransactionID: 0,\n active: true,\n formattedNameFirstLast: incoming.firstName,\n formattedNameLastFirst: incoming.lastName,\n formattedNamePrivate: `${incoming.firstName} ${incoming.lastName}`,\n phoneNumbers: incoming.phoneNumbers?.map((x) => individualPhoneToIndividualPhoneInfo(x)) || [],\n emailAddresses: incoming.emailAddresses?.map((x) => individualEmailToIndividualEmailInfo(x)) || [],\n thirdPartyClientIDs: [],\n coachRoleApproved: false,\n refereeRoleApproved: false,\n inviteAcceptDate: null,\n inviteExpireDate: null,\n optOutEmails: incoming.optOutEmails,\n optOutSMS: incoming.optOutSMS,\n inviteAllowed: incoming.inviteAllowed,\n /* inviteAllowed: incoming..emailAddresses\n ? incoming.emailAddresses.length > 0\n ? isNullOrEmpty(incoming.emailAddresses[0].valid)\n ? false\n : incoming.emailAddresses[0].valid.toLowerCase() === 'true'\n : false\n : false, */\n } as LeagueVolunteerInfo\n return x\n}\n\nexport function isNullOrEmpty(value: any) {\n if (!value) return true\n\n if (value.length == 0) return true\n\n return false\n}\n\n// Merges the information from LeagueVolunteer with LeagueVolunteerInfo giving\n// preference to the values in League Volunteer\nexport function leagueVolunteerToLeagueVolunteerInfoMerge(\n lv: LeagueVolunteer,\n lvi: LeagueVolunteerInfo\n): LeagueVolunteerInfo {\n const x = {\n ...lv,\n accountNumber: lv.accountNumber,\n roles: lv?.roles?.map((x) => leagueVolunteerRoleToLeagueVolunteerRoleInfo(x)) ?? [],\n addresses: lvi.addresses,\n registrationTransactionID: lvi.registrationTransactionID,\n active: lvi.active,\n formattedNameFirstLast: lv.firstName,\n formattedNameLastFirst: lv.lastName,\n formattedNamePrivate: `${lv.firstName} ${lv.lastName}`,\n phoneNumbers: lv.phoneNumbers?.map((x) => individualPhoneToIndividualPhoneInfo(x)) || [],\n emailAddresses: lv.emailAddresses?.map((x) => individualEmailToIndividualEmailInfo(x)) || [],\n thirdPartyClientIDs: lvi.thirdPartyClientIDs,\n coachRoleApproved: lvi.coachRoleApproved,\n refereeRoleApproved: lvi.refereeRoleApproved,\n inviteAcceptDate: lvi.inviteAcceptDate,\n inviteExpireDate: lvi.inviteExpireDate,\n optOutEmails: lvi.optOutEmails,\n optOutSMS: lvi.optOutSMS,\n } as LeagueVolunteerInfo\n return x\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('slide',{staticClass:\"p-3\",attrs:{\"slide\":_vm.slide}}),_c('div',{staticClass:\"d-flex justify-space-between\"},[(_vm.history.length > 1)?_c('button',{staticClass:\"btn- btn-link text-muted p-2 ml-1\",on:{\"click\":_vm.back}},[_c('i',{staticClass:\"fas fa-caret-left\"}),_vm._v(\" back \")]):_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 (_vm.slide)?_c('div',{key:_vm.slide.title},[(_vm.slide.warning)?_c('div',{staticClass:\"text-danger mb-2\"},[_c('i',{staticClass:\"fas fa-exclamation-circle\"}),_vm._v(\" \"+_vm._s(_vm.slide.warning)+\" \")]):_vm._e(),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.slide.title))]),_c('div',{staticClass:\"text-muted\"},[_vm._v(_vm._s(_vm.slide.subtitle))]),_c('div',{staticClass:\"p-3 slide-body\",domProps:{\"innerHTML\":_vm._s(_vm.slide.body)}}),(_vm.slide.buttons)?_c('div',{staticClass:\"text-center\"},_vm._l((_vm.slide.buttons),function(b){return _c('button',{key:b.order,staticClass:\"btn btn-success mr-2\",on:{\"click\":b.fnc}},[_vm._v(\" \"+_vm._s(b.label)+\" \")])}),0):_vm._e()]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport { SlideType } from '@/components/Carousel/types/Slide'\n\nexport default defineComponent({\n props: { slide: { type: Object as PropType, required: true } },\n})\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!./Slide.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!./Slide.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Slide.vue?vue&type=template&id=132c34f4&scoped=true&\"\nimport script from \"./Slide.vue?vue&type=script&lang=ts&\"\nexport * from \"./Slide.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Slide.vue?vue&type=style&index=0&id=132c34f4&scoped=true&lang=scss&\"\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 \"132c34f4\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, computed, watch, reactive } from '@vue/composition-api'\nimport { SlideType } from '@/components/Carousel/types/Slide.ts'\nimport Slide from '@/components/Carousel/Slide.vue'\n\nexport default defineComponent({\n name: 'Carousel',\n components: { Slide },\n props: {\n deck: { type: Array as PropType, required: true },\n current: { type: Number, required: true },\n },\n setup(props, ctx) {\n const history: number[] = reactive([])\n const slide = computed(() => {\n const x = props.deck.find((s) => s.id == props.current)\n return x\n })\n\n const back = () => {\n const previousId = history[history.length - 2]\n history.pop()\n history.pop()\n ctx.emit('back', previousId)\n }\n\n watch(\n () => props.current,\n () => {\n history.push(props.current)\n },\n { immediate: true }\n )\n\n return {\n slide,\n history,\n back,\n }\n },\n})\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!./Carousel.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!./Carousel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Carousel.vue?vue&type=template&id=42255343&\"\nimport script from \"./Carousel.vue?vue&type=script&lang=ts&\"\nexport * from \"./Carousel.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","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MinistryAgreementModal.vue?vue&type=style&index=0&id=24403618&lang=scss&scoped=true&\"","import { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport localStorageService from '@/services/localStorageService'\n\nexport function setCache(key: string, order: xStartupOrderExt) {\n if (!order) return\n\n const item = { createdDate: new Date(), order: order }\n localStorageService.set(key, item)\n}\n\nexport function getCached(key: string) {\n const result = localStorageService.getParsed(key)\n const OneDay = 1000 * 60 * 60 * 24 // in milliseconds\n\n if (!result) return null\n if (+new Date() - +new Date(result.createdDate) > OneDay) {\n deleteCached(key)\n return null\n } else {\n return result?.order\n }\n}\n\nexport function deleteCached(key: string) {\n return localStorageService.remove(key)\n}\n\ninterface LocalStorageOrder {\n createdDate: Date\n order: xStartupOrderExt\n}\n","import { defineActions, defineGetters, defineMutations } from 'direct-vuex'\nimport { getFilteredProductList, OrderProduct } from '@/models/Order/OrderProduct'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport ordersClient from '@/clients/ordersClient'\nimport {\n getEmptyXStartupOrderExt,\n setSalesTaxNotCalculatedYet,\n ToXStartupOrderExt,\n} from '@/lib/support/models/GeneratedTypes/xOrders/xStartupOrderExt'\nimport { xStartupOrder } from '@/GeneratedTypes/xOrder/xStartupOrder'\nimport { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport { getEmptyOrderProductSize, OrderProductSize } from '@/models/Order/OrderProductSize'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { xShipToBase } from '@/GeneratedTypes/xOrder/xShipToBase'\nimport { xShipMethodBase } from '@/GeneratedTypes/xOrder/xShipMethodBase'\nimport { cloneDeep, remove } from 'lodash'\nimport { moduleActionContext } from '@/store/index'\nimport { RuntimeException } from '@/lib/common/exceptions/RuntimeException'\nimport { deleteCached, getCached, setCache } from '@/lib/support/store/orders/cache'\nimport { setProduct } from '@/lib/support/store/orders/operations'\n\ninterface OrderState {\n currentOrderTemplate?: xStartupOrderExt\n lastCompletedOrder?: xStartupOrderExt\n selectedProducts: OrderProductSelection[]\n selectedCards: number[]\n internalOrderTypeUpdateHack: number\n}\n\nexport interface OrderProductSelection {\n upwardProductID: string\n variation: string\n id: number\n}\n\nconst orderState: OrderState = {\n currentOrderTemplate: undefined,\n lastCompletedOrder: undefined,\n selectedProducts: [],\n selectedCards: [],\n internalOrderTypeUpdateHack: 1,\n}\n\nexport enum getterNames {\n currentOrderTemplate = 'currentOrderTemplate',\n lastCompletedOrder = 'lastCompletedOrder',\n currentOrderProducts = 'currentOrderProducts',\n currentOrderShipTo = 'currentOrderShipTo',\n currentOrderShippingMethods = 'currentOrderShippingMethods',\n currentOrderNotes = 'currentOrderNotes',\n currentOrderInternalOrderType = 'currentOrderInternalOrderType',\n currentOrderAdminNote = 'currentOrderAdminNote',\n productsSelected = 'productsSelected',\n cardsSelected = 'cardsSelected',\n}\n\nclass OrderRuntimeException extends RuntimeException {\n name = 'Order Problem'\n}\n\nconst getterTree = defineGetters()({\n currentOrderTemplate: (state) => state.currentOrderTemplate,\n lastCompletedOrder: (state) => state.lastCompletedOrder,\n currentOrderProducts: (state) =>\n cloneDeep(state.currentOrderTemplate?.products)\n ?.filter((p) => p.isActive)\n ?.sort((x, y) => (x.sortOrder == y.sortOrder ? 0 : x.sortOrder > y.sortOrder ? 1 : -1)) || [],\n currentOrderShipTo: (state) => state.currentOrderTemplate?.shippingInfo?.shipTo || {},\n currentOrderNotes: (state) => state.currentOrderTemplate?.notes || '',\n currentOrderShippingMethods: (state) => state.currentOrderTemplate?.shippingInfo?.shipMethods || [],\n currentOrderInternalOrderType: (state) => {\n const hack = state.internalOrderTypeUpdateHack\n const pi = state.currentOrderTemplate?.processingInstructions?.find(\n (x) => x.type == 'SET_INTERNAL_ORDERTYPE'\n )\n return pi && hack > 0 ? pi.value : null //hack will always be > 0\n },\n currentOrderAdminNote: (state) =>\n state.currentOrderTemplate?.processingInstructions?.find((x) => x.type == 'ADD_ADMINISTRATIVE_NOTE')\n ?.value ?? null,\n productsSelected: (state) => state.selectedProducts,\n cardsSelected: (state) => state.selectedCards,\n})\n\nexport enum mutationNames {\n setCurrentOrderTemplate = 'setCurrentOrderTemplate',\n setLastCompletedOrder = 'setLastCompletedOrder',\n setCurrentOrderProducts = 'setCurrentOrderProducts',\n setCurrentOrderShipTo = 'setCurrentOrderShipTo',\n setCurrentOrderShippingMethods = 'setCurrentOrderShippingMethods',\n setCurrentOrderNotes = 'setCurrentOrderNotes',\n setCurrentOrderInternalOrderType = 'setCurrentOrderInternalOrderType',\n setCurrentOrderAdminNote = 'setCurrentOrderAdminNote',\n setSelectedProducts = 'setSelectedProducts',\n setPurchaseOrderNumber = 'setPurchaseOrderNumber',\n setCardsSelected = 'setCardsSelected',\n setCurrentOrderSelectedProducts = 'setCurrentOrderSelectedProducts',\n resetCurrentOrder = 'resetCurrentOrder',\n resetSalesTaxAndShipping = 'resetSalesTaxAndShipping',\n}\n\n/**\n * Cache key creation based on the parameter of league id.\n * Prior keys did not pull new orders templates on league change.\n * @param orderType\n * @param upwardLeagueID\n */\nfunction makeKey(orderType: OrderTypesEnum, upwardLeagueID: string | null) {\n return `${orderType}-${upwardLeagueID ?? ''}}`\n}\n\ninterface CardDescriptionType {\n name: string\n id: string\n}\n\nconst mutations = defineMutations()({\n resetSalesTaxAndShipping(state, { orderType }: { orderType: OrderTypesEnum }) {\n state.currentOrderTemplate = setSalesTaxNotCalculatedYet(cloneDeep(state.currentOrderTemplate))\n setCache(\n makeKey(orderType, state.currentOrderTemplate?.upwardLeagueID ?? ''),\n state.currentOrderTemplate || getEmptyXStartupOrderExt()\n )\n },\n /**\n * Clear out the old orders detail and zero out sales tax and shipping.\n * @param state\n * @param orderType\n */\n resetCurrentOrder(state, { orderType }: { orderType: OrderTypesEnum }) {\n state.currentOrderTemplate = setSalesTaxNotCalculatedYet(cloneDeep(state.currentOrderTemplate))\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.orderLines = []\n const products = cloneDeep(state.currentOrderTemplate?.products ?? [])\n\n products.forEach((x, index) => {\n state.currentOrderTemplate!.products.splice(index, 1, {\n ...x,\n productColorSizes: cloneDeep(x.productColorSizes ?? []).map((u) => ({\n ...u,\n orderQuantity: 0,\n orderFreeQuantity: 0,\n })),\n })\n })\n }\n setCache(\n makeKey(orderType, state.currentOrderTemplate?.upwardLeagueID ?? ''),\n state.currentOrderTemplate || getEmptyXStartupOrderExt()\n )\n },\n setCurrentOrderTemplate(state, { orderType, item }: { orderType: OrderTypesEnum; item: xStartupOrderExt }) {\n state.currentOrderTemplate = item\n setCache(makeKey(orderType, item.upwardLeagueID), item)\n },\n /**\n * Chooses the promo cards that are available for purchase,\n * we do this by creating fake variations which allow the product card\n * make those selectable.\n * @param state\n * @param cards\n */\n setCardsSelected(state, { cards }: { cards: CardDescriptionType[] }) {\n let prods = cloneDeep(state.currentOrderTemplate?.products ?? [])\n const promocard = cloneDeep(prods.find((x) => x.upwardProductID == 'PROMOCARD'))\n if (promocard) {\n promocard.productColorSizes = cards.map(\n (x) =>\n ({\n ...getEmptyOrderProductSize(),\n colorDescription: x.name,\n typeColorID: x.id.toString(),\n } as OrderProductSize)\n )\n prods = prods.filter((x) => x.upwardProductID != 'PROMOCARD')\n prods.push(promocard)\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.products = prods\n\n setCache(\n makeKey(\n state.currentOrderTemplate.upwardOrderType as OrderTypesEnum,\n state.currentOrderTemplate.upwardLeagueID\n ),\n state.currentOrderTemplate\n )\n }\n }\n },\n setLastCompletedOrder(\n state,\n { orderType, item }: { orderType: OrderTypesEnum; item?: xStartupOrderExt | null }\n ) {\n if (!orderType) return\n state.lastCompletedOrder = item ?? undefined\n if (item) {\n setCache(`${makeKey(orderType, item.upwardLeagueID)}_completed`, item)\n }\n },\n /**\n * These products are selected in the first round of product selection.\n * @param state\n * @param orderType\n * @param list\n */\n setCurrentOrderSelectedProducts(state, { list }: { list: OrderProductSelection[] }) {\n state.selectedProducts = cloneDeep(list)\n },\n\n setCurrentOrderProducts(state, { orderType, item }: { orderType: OrderTypesEnum; item: OrderProduct[] }) {\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.products = item\n state.currentOrderTemplate = setSalesTaxNotCalculatedYet(cloneDeep(state.currentOrderTemplate))\n setCache(\n makeKey(orderType, state.currentOrderTemplate?.upwardLeagueID ?? ''),\n state.currentOrderTemplate ?? getEmptyXStartupOrderExt()\n )\n }\n },\n async setCurrentOrderShipTo(state, { orderType, item }: { orderType: OrderTypesEnum; item: xShipToBase }) {\n if (state.currentOrderTemplate && state.currentOrderTemplate.shippingInfo) {\n state.currentOrderTemplate.shippingInfo.shipTo = item\n await setCache(\n makeKey(orderType, state.currentOrderTemplate.upwardLeagueID),\n state.currentOrderTemplate\n )\n }\n },\n setCurrentOrderNotes(state, { orderType, item }: { orderType: OrderTypesEnum; item: string }) {\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.notes = item\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardLeagueID), state.currentOrderTemplate)\n }\n },\n setPurchaseOrderNumber(state, { orderType, item }: { orderType: OrderTypesEnum; item: string }) {\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.purchaseOrderNumber = item\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardLeagueID), state.currentOrderTemplate)\n }\n },\n setCurrentOrderShippingMethods(\n state,\n { orderType, item }: { orderType: OrderTypesEnum; item: xShipMethodBase[] }\n ) {\n if (state.currentOrderTemplate && state.currentOrderTemplate.shippingInfo) {\n state.currentOrderTemplate.shippingInfo.shipMethods = item\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardLeagueID), state.currentOrderTemplate)\n }\n },\n setCurrentOrderInternalOrderType(\n state,\n { orderType, item }: { orderType: OrderTypesEnum; item: string | null }\n ) {\n if (state.currentOrderTemplate) {\n //remove existing processing instruction if it exists\n if (state.currentOrderTemplate.processingInstructions) {\n remove(state.currentOrderTemplate.processingInstructions, (x) => x.type == 'SET_INTERNAL_ORDERTYPE')\n }\n\n if (item != null && item != '') {\n //add\n if (!state.currentOrderTemplate.processingInstructions) {\n state.currentOrderTemplate.processingInstructions = []\n }\n\n state.currentOrderTemplate.processingInstructions.push({\n type: 'SET_INTERNAL_ORDERTYPE',\n value: item,\n })\n }\n\n state.internalOrderTypeUpdateHack++\n\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardLeagueID), state.currentOrderTemplate)\n }\n },\n setCurrentOrderAdminNote(state, { orderType, item }: { orderType: OrderTypesEnum; item: string | null }) {\n if (state.currentOrderTemplate) {\n //remove existing processing instruction if it exists\n if (state.currentOrderTemplate.processingInstructions) {\n remove(state.currentOrderTemplate.processingInstructions, (x) => x.type == 'ADD_ADMINISTRATIVE_NOTE')\n }\n\n if (item != null && item != '') {\n //add\n if (!state.currentOrderTemplate.processingInstructions) {\n state.currentOrderTemplate.processingInstructions = []\n }\n\n state.currentOrderTemplate.processingInstructions.push({\n type: 'ADD_ADMINISTRATIVE_NOTE',\n value: item,\n })\n }\n\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardLeagueID), state.currentOrderTemplate)\n }\n },\n})\n\nexport enum actionNames {\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n validateOrder = 'validateOrder',\n createOrder = 'createOrder',\n retrieveLastOrder = 'retrieveLastOrder',\n setCurrentOrderProducts = 'setCurrentOrderProducts',\n clearCachedOrder = 'clearCachedOrder',\n}\n\nconst actions = defineActions({\n /**\n * Sets the orders quantity for a given product in the current orders.\n * @param state\n * @param context\n * @param orderType\n * @param productID - upward product id\n * @param colorID\n * @param sizeID\n * @param quantity - 0 for delete, otherwise the quantity\n */\n\n setProductQuantity(\n context,\n {\n orderType,\n productID,\n colorID,\n sizeID,\n quantity,\n quantityFree,\n }: {\n orderType: OrderTypesEnum\n productID: number\n colorID: string\n sizeID: string\n quantity: number\n quantityFree: number\n }\n ) {\n const { state, commit } = ordersActionContext(context)\n\n // when adding a product invalidate sales tax.\n commit.setCurrentOrderTemplate({\n orderType,\n item: setSalesTaxNotCalculatedYet(cloneDeep(state.currentOrderTemplate)) ?? getEmptyXStartupOrderExt(),\n })\n\n //then update quantity, size, color on product id.\n const products = cloneDeep(state.currentOrderTemplate?.products ?? [])\n\n commit.setCurrentOrderProducts({\n orderType,\n item: setProduct(products, { productID, sizeID, colorID, quantity, quantityFree }),\n })\n },\n\n /**\n * Grab an orders by type, if it exists in cache then continue to\n * use it, otherwise grab a template from the server.\n * Also, if the league has changed grab another orders template.\n * @param commit\n * @param context\n * @param id league id\n * @param orderType orders type from enum\n */\n async retrieveAndSetAsCurrent(\n context,\n { id, orderType }: { id: string; orderType: OrderTypesEnum }\n ): Promise {\n const { commit } = ordersActionContext(context)\n let orderData!: xStartupOrderExt | null\n // Is orders cached in localStorage?\n orderData = getCached(makeKey(orderType, id))\n\n if (!orderData) {\n // Data doesn't exist in localStorage, fetch orders template from orders API\n orderData = await ordersClient.retrieveTemplate(id, orderType)\n } else {\n //set initial selected products based on products with quantities.\n const curproducts = getFilteredProductList(orderData.products, () => true)\n .map((x) => ({ id: x.id, upwardProductID: x.upwardProductID, variation: '' }))\n .filter((x, i, a) => i == a.indexOf(x))\n commit.setCurrentOrderSelectedProducts({ list: curproducts })\n\n //\n }\n //by this time we have orders data.\n if (orderData) {\n commit.setCurrentOrderTemplate({ orderType, item: orderData })\n commit.resetCurrentOrder({ orderType: orderType })\n }\n return orderData\n },\n async validateOrder(\n { commit },\n { orderType, id }: { orderType: OrderTypesEnum; id: string }\n ): Promise {\n let result = null\n if (orderState.currentOrderTemplate) {\n result = await ordersClient.verificationDetails(id, orderState.currentOrderTemplate)\n if (result) {\n commit(mutationNames.setCurrentOrderTemplate, {\n orderType: orderType,\n item: ToXStartupOrderExt(result, orderState.currentOrderTemplate),\n })\n }\n }\n return result\n },\n /***\n * Submit an orders and reset orders state.\n * @param commit\n * @param dispatch\n * @param id\n * @param orderType\n */\n async createOrder(\n { commit, dispatch },\n { id, orderType }: { id: string; orderType: OrderTypesEnum }\n ): Promise {\n let result = null\n\n if (orderState.currentOrderTemplate) {\n // place the orders\n\n if (\n orderState?.currentOrderTemplate?.orderLines?.some(\n (x) => !x.productUniqueID && x.productID == 'PROMOCARD'\n )\n ) {\n throw new OrderRuntimeException(\n 'There is a problem with the promo card, please remove the card and choose an alternative promocard variation.'\n )\n }\n\n result = await ordersClient.createOrder(id, orderState.currentOrderTemplate)\n\n if (result) {\n // put this orders in lastCompletedOrder. This info is displayed on confirmation page.\n commit(mutationNames.setLastCompletedOrder, {\n orderType: orderType,\n item: cloneDeep(ToXStartupOrderExt(result, orderState.currentOrderTemplate)),\n })\n\n // delete the orders from localStorage\n deleteCached(makeKey(orderType, orderState.currentOrderTemplate.upwardLeagueID ?? ''))\n commit(mutationNames.resetCurrentOrder, { orderType: orderType })\n\n // repopulate currentOrderTemplate so it's ready for next orders\n await dispatch(actionNames.retrieveAndSetAsCurrent, {\n id: id,\n orderType: orderType,\n })\n }\n }\n return result\n },\n retrieveLastOrder(\n { commit },\n { orderType, upwardLeagueID }: { orderType: OrderTypesEnum; upwardLeagueID: UpwardLeagueIDType }\n ): void {\n let result = null\n result = getCached(`${makeKey(orderType, upwardLeagueID)}_completed`)\n commit(mutationNames.setLastCompletedOrder, {\n orderType: orderType,\n item: result,\n })\n return\n },\n clearCachedOrder(\n {},\n { orderType, upwardLeagueID }: { orderType: OrderTypesEnum; upwardLeagueID: UpwardLeagueIDType }\n ): void {\n deleteCached(makeKey(orderType, upwardLeagueID))\n },\n})\n\nexport const namespace = 'orders'\n\nexport const orders = {\n namespaced: true as true,\n state: orderState as OrderState,\n getters: getterTree,\n mutations,\n actions,\n}\n\nconst ordersActionContext = (context: any) => moduleActionContext(context, orders)\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('text-input',{attrs:{\"input-type\":\"password\",\"required\":_vm.required,\"placeholder\":_vm.placeholder,\"append-icon\":_vm.appendIcon,\"prepend-icon\":_vm.prependIcon,\"label\":_vm.label},on:{\"input\":_vm.handleInput,\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\n\nexport default defineComponent({\n name: 'PasswordInput',\n components: {\n TextInput,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n placeholder: { type: String, default: '', required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: 'lock', required: false },\n value: { type: String, required: true },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n\n function handleInput() {\n ctx.emit('input', internalValue.value)\n }\n\n function handleChange() {\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n return { internalValue, handleInput, handleChange }\n },\n})\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!./PasswordInput.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!./PasswordInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PasswordInput.vue?vue&type=template&id=3866a99c&\"\nimport script from \"./PasswordInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./PasswordInput.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","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=style&index=1&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notifications.vue?vue&type=style&index=0&id=370d832c&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextInput.vue?vue&type=style&index=0&id=79bda972&lang=scss&scoped=true&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FacilityList.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/upward-sports-black.543f8873.png\";","import { RuntimeException } from '../../common/exceptions/RuntimeException'\n\nexport class ComponentArgumentRuntimeException extends RuntimeException {\n name = 'Component Runtime Exception'\n}\n","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!./ResetPassword.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TeamCardField.vue?vue&type=style&index=0&id=6a7bb770&lang=scss&scoped=true&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderListSection.vue?vue&type=style&index=0&id=205fe9bd&lang=scss&scoped=true&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TwilioApplicationPanel.vue?vue&type=style&index=0&lang=scss&\"","interface SectionNameType {\n [key: string]: string\n}\nexport const SectionNameConversion: SectionNameType = {\n STARTUPORDER: 'Startup Order',\n LEAGUEORDER: 'League Order',\n RETURNORDER: 'Return Order',\n MERCHANDISEORDER: 'Merchandise Order',\n AWARDORDER: 'Award Order',\n CLINICORDER: 'Clinic Order',\n MANUALORDER: 'Manual Order',\n RUNNINGORDER: 'Running Order',\n RUNNINGSTARTUPORDER: 'Running Startup Order',\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CampOverview.vue?vue&type=style&index=0&id=f577b702&scoped=true&lang=scss&\"","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!./SelectorCard.vue?vue&type=style&index=0&id=bacf0642&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductOfferingStep.vue?vue&type=style&index=0&id=25846ca6&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('full-body',{staticClass:\"alert-cloak\",attrs:{\"id\":_vm.guid}},[_vm._t(\"head\"),_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.hasAlerts)?_c('div',{key:\"1\",staticClass:\"bg-white mt-3 p-3 cursor-default\",on:{\"click\":function($event){$event.preventDefault();}}},[_c('div',{staticClass:\"text-muted width-limit text-center m-auto\"},[_c('button',{staticClass:\"small text-muted float-right\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();return _vm.close()}}},[_c('div',{staticClass:\"p-2\"},[_c('span',[_vm._v(\" close \"),_c('i',{staticClass:\"fa fa-times\"})])])]),_c('h5',{staticClass:\"font-italic text-primary\"},[_c('i',{staticClass:\"fas fa-bell\"}),_vm._v(\" Notification\")]),_c('div',{staticClass:\"border-top border-bottom py-3 m-auto my-5\",domProps:{\"innerHTML\":_vm._s(_vm.sanitizedMessage)}}),(_vm.currentAlert.userCanHide)?_c('button',{staticClass:\"text-underline text-muted small\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();return _vm.hide()}}},[_c('div',[_c('loading',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.notShowing),expression:\"notShowing\"}],attrs:{\"is-small\":\"\"}}),_c('span',[_vm._v(\" don't show next time\")])],1)]):_vm._e()])]):_vm._e()]),_c('transition',{attrs:{\"name\":\"fade\"}},[(!_vm.hasAlerts)?_c('full-body',{key:\"2\",staticClass:\"d-flex flex-column min-h-100 flex-grow-1\"},[_vm._t(\"default\")],2):_vm._e()],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\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\nimport uuid from 'uuid'\n\nimport alertClient from '@/clients/alertClient'\n\nimport Loading from '@/elements/Loading.vue'\nimport FullBody from '@/components/FullBody.vue'\n\nimport { AlertInfo } from '@/GeneratedTypes/ListInfo/AlertInfo'\nimport sanitizeHtml from 'sanitize-html'\nimport store from '@/store'\n\nexport enum AlertCloakTypes {\n ORDER,\n SALES_TAX,\n LEAGUE,\n PARTNER,\n}\n\nexport default defineComponent({\n name: 'AlertCloak',\n components: {\n Loading,\n FullBody,\n },\n props: {\n type: { type: Array as PropType, required: true },\n uncloak: { type: Boolean, default: false, required: false },\n },\n setup(props) {\n //start AlertCloakMixin\n const alerts = ref([])\n const notShowing = ref(false)\n\n const hasAlerts = computed(() => alerts.value.length > 0)\n\n const sanitizedMessage = computed(() => {\n const msg = currentAlert.value && currentAlert.value.message ? currentAlert.value.message : ''\n return sanitizeHtml(msg, { allowedTags: sanitizeHtml.defaults.allowedTags.concat('u') })\n })\n\n const currentAlert = computed((): AlertInfo | null => {\n if (alerts.value.length) return alerts.value[0]\n return null\n })\n\n function hiding() {\n if (!currentAlert.value) return\n const alert = { ...currentAlert.value } as AlertInfo\n alertClient.hideAlerts(alert).then()\n close()\n }\n\n function close() {\n const alert = { ...currentAlert.value } as AlertInfo\n alerts.value = alerts.value.filter((a) => a.id != alert.id)\n }\n\n async function hide() {\n notShowing.value = true\n await hiding()\n notShowing.value = false\n }\n //end AlertCloackMixin\n\n const accountId = computed(() => store.getters.authorization.firstAccountNumber)\n const currentLeague = computed(() => store.getters.leagues.currentItem)\n\n const guid = ref(uuid.v4())\n\n async function fetchAlerts() {\n const calls: Promise[] = []\n\n if (props.uncloak) {\n alerts.value = []\n return\n }\n\n if (props.type.includes(AlertCloakTypes.SALES_TAX)) {\n calls.push(alertClient.retrieveSalesTaxAlerts(accountId.value))\n }\n\n if (props.type.includes(AlertCloakTypes.LEAGUE)) {\n calls.push(alertClient.retrieveLeagueAlerts(upwardId.value))\n }\n\n if (props.type.includes(AlertCloakTypes.PARTNER)) {\n calls.push(alertClient.retrievePartnerAlerts(accountId.value))\n }\n\n if (props.type.includes(AlertCloakTypes.ORDER)) {\n calls.push(alertClient.retrieveOrderAlerts(upwardId.value))\n }\n const results = await Promise.all(calls)\n results.forEach((a) => {\n if (!a) return\n alerts.value = [...alerts.value, ...a]\n })\n }\n\n const upwardId = computed(() => {\n if (currentLeague.value && currentLeague.value.upwardLeagueID) {\n return currentLeague.value.upwardLeagueID\n }\n return ''\n })\n\n const ready = computed(() => accountId.value != '0' && upwardId.value != '')\n\n watch(\n () => ready.value,\n async () => {\n if (ready.value) {\n await fetchAlerts()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => props.uncloak,\n () => {\n if (props.uncloak) {\n alerts.value = []\n }\n },\n { immediate: true }\n )\n\n return {\n hasAlerts,\n close,\n sanitizedMessage,\n currentAlert,\n hide,\n notShowing,\n guid,\n }\n },\n})\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!./AlertCloak.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!./AlertCloak.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AlertCloak.vue?vue&type=template&id=03ba83d8&scoped=true&\"\nimport script from \"./AlertCloak.vue?vue&type=script&lang=ts&\"\nexport * from \"./AlertCloak.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AlertCloak.vue?vue&type=style&index=0&id=03ba83d8&lang=scss&scoped=true&\"\nimport style1 from \"./AlertCloak.vue?vue&type=style&index=1&lang=scss&\"\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 \"03ba83d8\",\n null\n \n)\n\nexport default component.exports","import { ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport partnersClient from '@/clients/partnersClient'\nimport { ActionsImpl } from 'direct-vuex'\nimport { AccountInfo } from '@/GeneratedTypes/ListInfo/AccountInfo'\nimport { Partner } from '@/models/Partner'\n\nimport { defineGetters, defineMutations } from 'direct-vuex'\n\nimport programsClient from '@/clients/programsClient'\n\ninterface PartnerState {\n partnerInfo: AccountInfo | null\n partners: Partner[]\n hasAcceptedCurrencyWarning: boolean\n}\n\nconst partnerState: PartnerState = {\n partnerInfo: {} as AccountInfo,\n partners: [] as Partner[],\n hasAcceptedCurrencyWarning: false,\n}\n\nexport enum getterNames {\n hasInfo = 'hasInfo',\n partnerInfo = 'partnerInfo',\n partners = 'partners',\n isGlobal = 'isGlobal',\n hasAcceptedCurrencyWarning = 'hasAcceptedCurrencyWarning',\n currencyWarningNeeded = 'currencyWarningNeeded',\n}\n\nconst getterTree = defineGetters()({\n [getterNames.hasInfo]: (state) => !!state.partnerInfo && Object.keys(state.partnerInfo).length > 0,\n [getterNames.partnerInfo]: (state) => state.partnerInfo,\n [getterNames.partners]: (state) => state.partners,\n [getterNames.isGlobal]: (state) => state.partnerInfo?.isGlobal,\n [getterNames.hasAcceptedCurrencyWarning]: (state) => state.hasAcceptedCurrencyWarning,\n [getterNames.currencyWarningNeeded]: (state) => {\n return state.partnerInfo?.isGlobal && !state.hasAcceptedCurrencyWarning\n },\n})\n\nexport enum mutationNames {\n setPartnerInfo = 'setPartnerInfo',\n setPartners = 'setPartners',\n setHasAcceptedCurrencyWarning = 'setHasAcceptedCurrencyWarning',\n}\n\nconst mutations = defineMutations()({\n [mutationNames.setPartnerInfo](state, { item }: { item: AccountInfo | null }) {\n state.partnerInfo = item\n },\n [mutationNames.setPartners](state, { item }: { item: Partner[] }) {\n state.partners = item\n },\n [mutationNames.setHasAcceptedCurrencyWarning](state, { hasAccecpted }: { hasAccecpted: boolean }) {\n state.hasAcceptedCurrencyWarning = hasAccecpted\n },\n})\n\nexport enum actionNames {\n retrievePartnerInfo = 'retrievePartnerInfo',\n retrieveAndSetPartners = 'retrieveAndSetPartners',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.retrievePartnerInfo](\n { commit, getters },\n { accountNumber, force = false }: { accountNumber: string; force: boolean }\n ): Promise {\n if (\n getters[getterNames.hasInfo] &&\n getters[getterNames.partnerInfo]?.accountNumber == accountNumber && //4473\n !force\n ) {\n return null\n }\n const result = await partnersClient.getPartnerInfo(accountNumber)\n\n if (result) {\n commit(mutationNames.setPartnerInfo, { item: result })\n return result\n }\n\n return null\n },\n async retrieveAndSetPartners({ commit }, { id }: { id: string }): Promise {\n const result = await programsClient.retrieve(id)\n\n if (result) {\n const accounts = result.myLeagueInfo?.accounts\n const partners: Partner[] | undefined = accounts?.map((a) => {\n return { ...a, name: a.partnerInfo?.name ?? '' }\n })\n const multiple = partners && partners.length > 1 ? true : false\n commit(mutationNames.setPartners, { item: multiple ? partners : [] })\n }\n\n return null\n },\n}\n\nexport const namespace = 'partners'\n\nexport const partners = {\n namespaced: true as true,\n state: partnerState,\n getters: getterTree,\n mutations,\n actions,\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportFooter.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('grid-card',{staticClass:\"selector-card\",class:_vm.isHighlighted ? 'highlighted' : _vm.isSecondary ? 'secondary' : '',attrs:{\"is-selected\":_vm.isSelected,\"dark\":_vm.dark},scopedSlots:_vm._u([{key:\"footer\",fn:function(){return [(_vm.$slots.bottom)?_c('div',{staticClass:\"select-card-bottom\"},[_vm._t(\"bottom\")],2):_vm._e(),_c('button',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.selectable),expression:\"selectable\"}],staticClass:\"btn rounded-0 border-primary btn-primary\",class:_vm.isSecondary ? 'border-secondary btn-secondary' : '',on:{\"click\":_vm.select}},[_vm._t(\"innerButton\",[_vm._v(\"Select\")])],2)]},proxy:true}],null,true)},[(_vm.showDismiss)?_c('div',{on:{\"click\":_vm.dismiss}},[_c('i',{staticClass:\"fa fa-times float-right clickable text-primary\"})]):(_vm.isSelected && _vm.toggle)?_c('i',{staticClass:\"fa fa-undo float-right clickable\",on:{\"click\":_vm.unSelect}}):_vm._e(),_c('div',[(_vm.$slots.title)?_c('h4',{staticClass:\"mb-4 select-card-title\"},[_vm._t(\"title\")],2):_vm._e(),_c('div',{staticClass:\"select-card-body\"},[_vm._t(\"body\")],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\nimport { defineComponent } from '@vue/composition-api'\nimport GridCard from '@/components/GridCard.vue'\n\nexport default defineComponent({\n name: 'SelectorCard',\n components: { GridCard },\n props: {\n isHighlighted: { type: Boolean, required: false, default: false },\n isSecondary: { type: Boolean, required: false, default: false },\n isSelected: { type: Boolean, required: false, default: false },\n selectable: { type: Boolean, required: false, default: false },\n showDismiss: { type: Boolean, required: false, default: false },\n toggle: { type: Boolean, required: false, default: false },\n dark: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n function dismiss() {\n ctx.emit('dismiss')\n }\n\n function select() {\n ctx.emit('select', true)\n }\n\n function unSelect() {\n ctx.emit('unselect', false)\n }\n\n return {\n dismiss,\n unSelect,\n select,\n }\n },\n})\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!./SelectorCard.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!./SelectorCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SelectorCard.vue?vue&type=template&id=bacf0642&scoped=true&\"\nimport script from \"./SelectorCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./SelectorCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SelectorCard.vue?vue&type=style&index=0&id=bacf0642&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 \"bacf0642\",\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('modal',{attrs:{\"value\":_vm.show,\"isSmall\":true,\"title\":_vm.title},on:{\"change\":_vm.cancelled}},[_c('date-time-input',{attrs:{\"inline\":true},model:{value:(_vm.dateValue),callback:function ($$v) {_vm.dateValue=$$v},expression:\"dateValue\"}}),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancelled}},[_vm._v(_vm._s(_vm.cancelLabel))]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.picked}},[_c('i',{staticClass:\"fa fa-calendar\"}),_vm._v(\" \"+_vm._s(_vm.pickLabel)+\" \"+_vm._s(_vm.dateValue.toLocaleTimeString([], { year: 'numeric', month: 'numeric', day: 'numeric', hour: 'numeric', minute: '2-digit', }))+\" \")])])],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',{staticClass:\"form-group\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-7 inline-datepicker\"},[_c('datepicker',{ref:\"datepicker\",attrs:{\"id\":_vm.inputId,\"placeholder\":_vm.placeholder,\"required\":_vm.required,\"disabled-dates\":_vm.disabledDates,\"inline\":_vm.inline},on:{\"input\":_vm.handleChange},model:{value:(_vm.internalDateValue),callback:function ($$v) {_vm.internalDateValue=$$v},expression:\"internalDateValue\"}})],1),_c('div',{staticClass:\"col-sm-5\"},[_c('input-label',{attrs:{\"label\":_vm.label + ' Date',\"required\":_vm.required,\"input-name\":_vm.inputId + '-date'}}),_c('div',{staticClass:\"input-group\"},[_c('input',{staticClass:\"form-control\",staticStyle:{\"max-width\":\"200px\"},attrs:{\"id\":_vm.inputId + '-date',\"type\":\"text\"},domProps:{\"value\":_vm.internalDateValue.toLocaleDateString()},on:{\"change\":_vm.handleDateInput}})]),_c('div',[_c('input-label',{attrs:{\"label\":_vm.label + ' Time',\"required\":_vm.required,\"input-name\":_vm.inputId + '-time'}}),_c('TimePicker',{attrs:{\"id\":_vm.inputId + '-time',\"placeholder\":_vm.placeholder,\"min\":_vm.minTime,\"max\":\"23:30:00\"},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalTimeValue),callback:function ($$v) {_vm.internalTimeValue=$$v},expression:\"internalTimeValue\"}})],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\nimport uuid from 'uuid'\nimport InputLabel from '@/elements/InputLabel.vue'\n/// \nimport Datepicker from 'vuejs-datepicker'\nimport TimePicker from '@/elements/TimePicker2.vue'\nimport dayjs from 'dayjs'\nimport { defineComponent, onMounted, computed, watch, ref } from '@vue/composition-api'\nimport { VueConstructor } from 'vue'\n\nexport default defineComponent({\n name: 'InlineDateTimeInput2',\n props: {\n required: { type: Boolean, required: false, default: false },\n strictMode: { type: Boolean, required: false, default: false },\n label: { type: String, required: false, default: '' },\n inline: { type: Boolean, required: false, default: false },\n placeholder: { type: String, required: false, default: '' },\n prependIcon: { type: String, required: false, default: '' },\n appendIcon: { type: String, required: false, default: '' },\n minDate: {\n type: Date,\n required: false,\n default: () => {\n return new Date(Date.now())\n },\n },\n maxDate: {\n type: Date,\n required: false,\n default: () => {\n const d = new Date()\n d.setDate(d.getDate() + 730)\n return d\n },\n },\n value: {\n type: Date,\n required: true,\n default: () => {\n const today = new Date()\n return new Date(today.getFullYear(), today.getMonth(), today.getDate())\n },\n },\n },\n components: {\n InputLabel,\n Datepicker: (Datepicker as unknown) as VueConstructor,\n TimePicker,\n },\n setup(props: any, { emit }) {\n const inputId = ref('datepicker-')\n const internalDateValue = ref(null)\n const internalTimeValue = ref('')\n onMounted(() => {\n inputId.value += uuid.v4()\n })\n const minTime = computed(() => {\n const today = new Date(Date.now())\n const date = dayjs(internalDateValue.value ?? undefined).toDate()\n const isToday =\n today.getDate() === date.getDate() &&\n today.getMonth() === date.getMonth() &&\n today.getFullYear() === date.getFullYear()\n if (isToday) {\n const nowMinutes = today.getMinutes()\n const nowHours = today.getHours()\n return nowMinutes > 30 ? `${nowHours + 1}:00:00` : `${nowHours}:30:00`\n }\n return '00:00:00'\n })\n const disabledDates = computed(() => {\n const now = new Date()\n const min = new Date(now.getFullYear(), now.getMonth(), now.getDate())\n return {\n to: min,\n from: props.maxDate,\n }\n })\n const internalValue = computed(() => {\n const isValidTime = internalTimeValue.value != null && internalTimeValue.value != ''\n const isValidDate = internalDateValue.value != null\n const now = new Date(Date.now())\n let date = now\n if (isValidTime && isValidDate) {\n const timeParts = internalTimeValue.value?.split(':')\n date = dayjs(internalDateValue.value ?? '')\n .hour(timeParts ? Number(timeParts[0]) : 0)\n .minute(timeParts ? Number(timeParts[1]) : 0)\n .toDate()\n } else if (!isValidTime && isValidDate) {\n const timeParts = minTime.value?.split(':')\n date = dayjs(internalDateValue.value ?? '')\n .hour(timeParts ? Number(timeParts[0]) : 0)\n .minute(timeParts ? Number(timeParts[1]) : 0)\n .toDate()\n }\n return date < now || date > props.maxDate ? now : date\n })\n watch(\n () => internalDateValue.value,\n () => {\n internalTimeValue.value = minTime.value\n },\n { immediate: true }\n )\n watch(\n () => props.value,\n () => {\n if (props.value != internalValue.value) {\n if (!props.value || props.value === '0001-01-01T00:00:00') {\n internalDateValue.value = null\n internalTimeValue.value = ''\n } else if (typeof props.value === 'string') {\n internalDateValue.value = dayjs(props.value).toDate()\n } else {\n internalDateValue.value = dayjs(props.value).toDate()\n }\n }\n },\n { immediate: true }\n )\n\n const handleDateInput = (event: any) => {\n const timestamp = Date.parse(event.target.value)\n const now = new Date(Date.now())\n const date = isNaN(timestamp) ? now : new Date(timestamp)\n const validDate = date < now || date > props.maxDate ? now : date\n internalDateValue.value = validDate\n }\n const handleChange = () => {\n emit('input', internalValue.value)\n }\n\n return {\n handleChange,\n inputId,\n internalDateValue,\n internalTimeValue,\n minTime,\n handleDateInput,\n disabledDates,\n }\n },\n})\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!./InlineDateTimeInput2.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!./InlineDateTimeInput2.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./InlineDateTimeInput2.vue?vue&type=template&id=18147d56&\"\nimport script from \"./InlineDateTimeInput2.vue?vue&type=script&lang=ts&\"\nexport * from \"./InlineDateTimeInput2.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./InlineDateTimeInput2.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Modal from '@/components/Modal.vue'\nimport DateTimeInput from '@/elements/InlineDateTimeInput2.vue'\nimport { defineComponent, ref, computed } from '@vue/composition-api'\nimport uuid from 'uuid'\nexport default defineComponent({\n name: 'ModelDateTimePicker',\n props: {\n show: { type: Boolean, required: true },\n title: { type: String, required: false, default: 'Pick date & time' },\n cancelLabel: { type: String, required: false, default: 'Cancel' },\n pickLabel: { type: String, required: false, default: 'Pick' },\n },\n components: {\n Modal,\n DateTimeInput,\n },\n setup(props, { emit }) {\n const id = computed(() => uuid.v4())\n const now = new Date(Date.now())\n const today = new Date(now.getFullYear(), now.getMonth(), now.getDate(), now.getHours() + 1)\n const dateValue = ref(today)\n const cancelled = () => {\n emit('cancelled')\n }\n const picked = () => {\n emit('picked', dateValue.value)\n }\n\n return { dateValue, cancelled, picked, id }\n },\n})\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!./ModalDateTimePicker.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!./ModalDateTimePicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModalDateTimePicker.vue?vue&type=template&id=b564dc8a&\"\nimport script from \"./ModalDateTimePicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModalDateTimePicker.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ModalDateTimePicker.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","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderDetail.vue?vue&type=style&index=0&id=072e9c43&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Editor.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheckboxGroupInput.vue?vue&type=style&index=0&id=45566b5e&lang=scss&scoped=true&\"","import { getEmptyIndividualAddress } from '@/lib/support/models/IndividualAddress/data'\nimport { Dictionary } from 'vue-router/types/router'\nimport { PlayerContact } from '@/GeneratedTypes/PlayerContact'\nimport { IndividualPhone } from '@/GeneratedTypes/IndividualPhone'\n\nexport function getEmptyPlayerContact(seed?: PlayerContactSeed) {\n return {\n typeRelationshipID: seed?.typeRelationshipID || PlayerContactTypeEnum.OTHER,\n isEmergencyContact: false,\n priority: 0,\n individualID: seed?.individualID ?? 0,\n firstName: '',\n lastName: '',\n middleInitial: '',\n addresses: [getEmptyIndividualAddress()],\n emailAddresses: [],\n phoneNumbers: [],\n thirdPartyClientIDs: null,\n optOutEmails: false,\n optOutSMS: false,\n inviteAllowed: true,\n }\n}\n\ninterface RelationshipMap {\n UpwardRelationshipTypeID: string\n Description: string\n SortOrder: number\n}\n\nexport enum PlayerContactTypeEnum {\n FATHER = 'FATHER',\n OTHER = 'OTHER',\n MOTHER = 'MOTHER',\n LEGALGUARDIAN = 'LEGALGUARDIAN',\n AUNT = 'AUNT',\n UNCLE = 'UNCLE',\n STEPFATHER = 'STEPFATHER',\n STEPMOTHER = 'STEPMOTHER',\n GRANDFATHER = 'GRANDFATHER',\n GRANDMOTHER = 'GRANDMOTHER',\n}\n\nconst RELATIONSHIPS: RelationshipMap[] = [\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.FATHER, Description: 'Father', SortOrder: 1 },\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.MOTHER, Description: 'Mother', SortOrder: 2 },\n {\n UpwardRelationshipTypeID: PlayerContactTypeEnum.LEGALGUARDIAN,\n Description: 'Legal Guardian',\n SortOrder: 3,\n },\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.AUNT, Description: 'Aunt', SortOrder: 4 },\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.UNCLE, Description: 'Uncle', SortOrder: 5 },\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.OTHER, Description: 'Other', SortOrder: 6 },\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.STEPFATHER, Description: 'Step-Father', SortOrder: 7 },\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.STEPMOTHER, Description: 'Step-Mother', SortOrder: 8 },\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.GRANDFATHER, Description: 'Grand-Father', SortOrder: 9 },\n { UpwardRelationshipTypeID: PlayerContactTypeEnum.GRANDMOTHER, Description: 'Grand-Mother', SortOrder: 10 },\n]\n\nexport function relationshipKVMap(): Dictionary {\n const val: Dictionary = {}\n RELATIONSHIPS.forEach((x) => {\n val[x.UpwardRelationshipTypeID] = x.Description\n })\n return val\n}\n\nexport class PlayerContactSeed {\n typeRelationshipID: string = PlayerContactTypeEnum.OTHER\n individualID = 0\n}\n\nlet playerID = -1\nexport function decrementingPlayerContactIDSeedStrategy() {\n const c = new PlayerContactSeed()\n c.individualID = playerID--\n return c\n}\n\n//4651\n/*\nfunction hasEmail(e: IndividualEmail[] | null) {\n return e && e.length && e.some((x) => x.emailAddress)\n}\n*/\n\nfunction hasContact(c: PlayerContact) {\n return c && c.lastName && c.firstName\n}\n\nfunction hasPhone(c: IndividualPhone[] | null) {\n return c && c.length && c.some((x) => x.phoneNumber)\n}\n\n/**\n * Returns if this appears to be a completely filled out contact for creating a volunteer\n *\n * @param c contact to look at\n * @return is a complete contact\n */\nexport function isCompleteContact(c: PlayerContact) {\n return hasContact(c) && hasPhone(c.phoneNumbers) // && hasEmail(c.emailAddresses) // 4651\n}\n\n/**\n * This inspects a list of contacts and makes sure there is at least one\n * that is complete\n * @param c array of contacts to inspect\n */\nexport function hasCompleteContacts(c: PlayerContact[]) {\n return c.length && isCompleteContact(c[0])\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('text-like-wrapper',{attrs:{\"append-icon\":_vm.appendIcon,\"enabled\":_vm.enabled,\"id\":_vm.id,\"label\":_vm.label,\"sub-label-inline\":_vm.subLabelInline,\"sub-label\":_vm.subLabel,\"prepend-icon\":_vm.prependIcon,\"required\":_vm.required,\"vee-validate-rules\":_vm.VeeValidateRules,\"vee-validate-mode\":_vm.veeValidateMode,\"sub-text\":_vm.subText,\"showHelp\":_vm.showHelp},on:{\"helpClicked\":function($event){return _vm.$emit('helpClicked')},\"icon-click\":_vm.iconClick},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar classes = ref.classes;\nreturn [((_vm.inputType)==='checkbox')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],ref:\"inputField\",staticClass:\"form-control\",class:[classes, { 'underline-only': _vm.underlineOnly }],attrs:{\"required\":_vm.required,\"placeholder\":_vm.placeholder,\"tabIndex\":_vm.tabIndex,\"disabled\":!_vm.enabled,\"size\":_vm.size,\"id\":_vm.id,\"maxlength\":_vm.maxlength,\"enabled\":_vm.enabled,\"name\":_vm.name,\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.internalValue)?_vm._i(_vm.internalValue,null)>-1:(_vm.internalValue)},on:{\"input\":_vm.handleInput,\"change\":[function($event){var $$a=_vm.internalValue,$$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.internalValue=$$a.concat([$$v]))}else{$$i>-1&&(_vm.internalValue=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.internalValue=$$c}},_vm.handleChange],\"blur\":_vm.handleBlur}}):((_vm.inputType)==='radio')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],ref:\"inputField\",staticClass:\"form-control\",class:[classes, { 'underline-only': _vm.underlineOnly }],attrs:{\"required\":_vm.required,\"placeholder\":_vm.placeholder,\"tabIndex\":_vm.tabIndex,\"disabled\":!_vm.enabled,\"size\":_vm.size,\"id\":_vm.id,\"maxlength\":_vm.maxlength,\"enabled\":_vm.enabled,\"name\":_vm.name,\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.internalValue,null)},on:{\"input\":_vm.handleInput,\"change\":[function($event){_vm.internalValue=null},_vm.handleChange],\"blur\":_vm.handleBlur}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],ref:\"inputField\",staticClass:\"form-control\",class:[classes, { 'underline-only': _vm.underlineOnly }],attrs:{\"required\":_vm.required,\"placeholder\":_vm.placeholder,\"tabIndex\":_vm.tabIndex,\"disabled\":!_vm.enabled,\"size\":_vm.size,\"id\":_vm.id,\"maxlength\":_vm.maxlength,\"enabled\":_vm.enabled,\"name\":_vm.name,\"type\":_vm.inputType},domProps:{\"value\":(_vm.internalValue)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.internalValue=$event.target.value},_vm.handleInput],\"change\":_vm.handleChange,\"blur\":_vm.handleBlur}})]}}])})}\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\nimport { defineComponent, watch, onMounted } from '@vue/composition-api'\nimport { getProps, useTextlike } from '@/composables/TextLike'\nimport TextLikeWrapper from '@/elements/TextLikeWrapper.vue'\n\nexport default defineComponent({\n name: 'TextInput',\n components: {\n TextLikeWrapper,\n },\n props: {\n tabIndex: { type: String, default: '', required: false },\n inputType: { type: String, default: 'text', required: false },\n maxlength: { required: false },\n placeholder: { type: String, default: '', required: false },\n underlineOnly: { type: Boolean, default: false, required: false },\n value: { type: String, default: '', required: false },\n setFocus: { type: Boolean, default: false, required: false },\n ...getProps(),\n },\n setup(props, ctx) {\n const { iconClick, internalValue, handleInput, handleChange, handleBlur } = useTextlike(\n props,\n ctx\n )\n\n function setInternalValue() {\n internalValue.value = props.value\n }\n\n watch(\n () => props.setFocus,\n (b: boolean) => {\n if (b) {\n const elementToFocus = ctx.refs.inputField as HTMLInputElement\n if (elementToFocus) {\n elementToFocus.focus()\n }\n }\n },\n { immediate: true }\n )\n\n watch(\n () => props.value,\n () => {\n setInternalValue()\n },\n { immediate: true }\n )\n\n onMounted(() => {\n setInternalValue()\n })\n\n return {\n iconClick,\n internalValue,\n handleInput,\n handleChange,\n handleBlur,\n }\n },\n})\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!./TextInput.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!./TextInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TextInput.vue?vue&type=template&id=79bda972&scoped=true&\"\nimport script from \"./TextInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./TextInput.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TextInput.vue?vue&type=style&index=0&id=79bda972&lang=scss&scoped=true&\"\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 \"79bda972\",\n null\n \n)\n\nexport default component.exports","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!./ActiveReport.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!./CoachConflict.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Registration.vue?vue&type=style&index=0&id=7eeffe9a&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"form-group\"},[_c('text-like-wrapper',{attrs:{\"id\":_vm.id,\"append-icon\":_vm.appendIcon,\"enabled\":_vm.enabled,\"label\":_vm.label,\"sub-label-inline\":_vm.subLabelInline,\"sub-label\":_vm.subLabel,\"prepend-icon\":_vm.prependIcon,\"required\":_vm.required,\"vee-validate-rules\":_vm.VeeValidateRules,\"vee-validate-mode\":_vm.veeValidateMode,\"sub-text\":_vm.subText,\"showHelp\":_vm.showHelp},on:{\"icon-click\":_vm.iconClick,\"helpClicked\":function($event){return _vm.$emit('helpClicked')}}},[_c('div',{staticClass:\"input-group\"},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],staticClass:\"form-control\",attrs:{\"required\":_vm.required,\"placeholder\":_vm.placeholder,\"rows\":_vm.rows,\"cols\":_vm.cols,\"readonly\":_vm.isReadOnly,\"maxlength\":_vm.maxLength},domProps:{\"value\":(_vm.internalValue)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.internalValue=$event.target.value},_vm.handleInput],\"change\":_vm.handleChange,\"keydown\":_vm.canInput,\"blur\":_vm.handleBlur}})])])],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\nimport { defineComponent, watch, ref, PropType } from '@vue/composition-api'\nimport { getProps, useTextlike } from '@/composables/TextLike'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport TextLikeWrapper from '@/elements/TextLikeWrapper.vue'\n\nexport default defineComponent({\n name: 'MemoInput',\n components: {\n InputLabel,\n TextLikeWrapper,\n },\n props: {\n rows: { type: (null as unknown) as PropType, default: null, required: false },\n cols: { type: (null as unknown) as PropType, default: null, required: false },\n maxLength: { type: (null as unknown) as PropType, default: null, required: false },\n placeholder: { type: String, default: '', required: false },\n value: { type: (null as unknown) as PropType, required: true, default: '' },\n isReadOnly: { type: Boolean, default: false, required: false },\n haltInput: { type: Boolean, default: false, required: false },\n ...getProps(),\n },\n setup(props, ctx) {\n const { iconClick } = useTextlike(props, ctx)\n\n const internalValue = ref('')\n\n function handleInput() {\n ctx.emit('input', internalValue.value)\n }\n\n function handleChange() {\n ctx.emit('change', internalValue.value)\n }\n\n function handleBlur() {\n ctx.emit('blur', internalValue.value)\n }\n\n function canInput(event: KeyboardEvent) {\n if (props.haltInput && event.key != 'Backspace') {\n event.preventDefault()\n }\n return\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value ?? ''\n },\n { immediate: true }\n )\n\n return {\n iconClick,\n internalValue,\n handleInput,\n handleChange,\n handleBlur,\n canInput,\n }\n },\n})\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!./MemoInput.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!./MemoInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MemoInput.vue?vue&type=template&id=7e5d7ca8&\"\nimport script from \"./MemoInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./MemoInput.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","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!./BatchEval.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SiteLoading.vue?vue&type=style&index=0&id=6041ed78&lang=scss&scoped=true&\"","import { LeagueAccount } from '@/GeneratedTypes/LeagueAccount'\nimport { LeagueAccountProgramGenderGrade } from '@/GeneratedTypes/LeagueAccountProgramGenderGrade'\nimport { LeagueProgramGenderGrade } from '@/GeneratedTypes/LeagueProgramGenderGrade'\nimport { LeagueProgram } from '@/GeneratedTypes/LeagueProgram'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport { getGrades, initialGrades } from '@/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades'\nimport { League } from '@/GeneratedTypes/League'\nimport { SavedProductOfferingConfigGenderGrade } from '@/GeneratedTypes/SavedProductOfferingConfigGenderGrade'\nimport { ProgramTypes } from '@/lib/common/ProgramTypes'\nimport store from '@/store'\nimport dayjs from 'dayjs'\n\nexport interface GradeUsage {\n grade: string\n femaleUsed: boolean\n maleUsed: boolean\n}\n\nexport interface ProgramWithGrades {\n id: number\n accounts: LeagueAccount[] | null\n programs: LeagueProgram[] | null\n}\n\nexport function sortGrades(a: string, b: string) {\n return (\n (store.getters.gradeTypes.byUpwardTypeId(a)?.sortOrder ?? 0) -\n (store.getters.gradeTypes.byUpwardTypeId(b)?.sortOrder ?? 0)\n )\n}\n\n/*\ngradeMax: the max value of the range being accepting by the filtering\ngradeMin: the min value of the range being accepting by the filtering\ngrade: the grade to be tested\n*/\nexport function filterGrades(gradeMin: string, gradeMax: string, grade: string | null) {\n if (!grade) return true\n const grades = getGrades(false)\n const gradeIndex = grades.indexOf(grade)\n const maxGradeIndex = grades.indexOf(gradeMax)\n const minGradeIndex = grades.indexOf(gradeMin)\n return gradeIndex >= minGradeIndex && gradeIndex <= maxGradeIndex\n}\n\nexport function getListFromSavedEstimate(\n grades: SavedProductOfferingConfigGenderGrade[],\n typeProgramId: string,\n gender: string\n) {\n return grades\n .filter((g) => {\n return g.typeProgramID == typeProgramId && g.gender == gender\n })\n .map((g) => g.typeGradeID)\n}\n\nexport function populateProgramGrades(\n league: League,\n productConfigGrades: SavedProductOfferingConfigGenderGrade[] | null\n): League {\n if (!productConfigGrades) return league\n league.programs?.forEach((p, i) => {\n const grades = productConfigGrades.filter((g) => g.typeProgramID === p.typeProgramID)\n const converted = grades.map((g) => {\n return {\n overrideRegistrationFee: 0,\n overrideEarlyRegistrationFee: 0,\n gender: g.gender,\n typeGradeID: g.typeGradeID,\n }\n })\n if (league.programs) {\n league.programs[i].gradesByGender = converted\n }\n })\n return league\n}\n\nexport function getGradesList(\n program: ProgramWithGrades,\n typeProgramId: string,\n gender: string\n): UpwardGradeTypeID[] {\n const grades: UpwardGradeTypeID[] = []\n if (!program.accounts || program.accounts.length === 0 || program.accounts[0].grades === null) {\n return grades\n }\n\n return getGradesListFromAccount(program.accounts[0], typeProgramId, gender)\n}\n\nexport function getGradesListFromAccount(\n account: LeagueAccount,\n typeProgramId: string,\n gender: string\n): UpwardGradeTypeID[] {\n if (account !== null) {\n // There will be duplicates because of the grade for both Male and Female, so we need\n // to filter those out and only get unique values (https://stackoverflow.com/a/35092559/13215483)\n\n const uniqueGrades = [\n ...new Set(\n // @ts-ignore: Object is possibly 'null'.\n account.grades\n .filter(\n (g) => g.typeProgramID === typeProgramId && g.gender === (gender === 'E' ? g.gender : gender)\n )\n .map((g) => g.typeGradeID)\n ),\n ]\n return uniqueGrades.map((g) => store.getters.gradeTypes.byUpwardTypeId(g))\n }\n\n return []\n}\n\nexport function getGradeUsage(program: ProgramWithGrades, typeProgramId: string): GradeUsage[] {\n const grades: GradeUsage[] = []\n\n if (!program.accounts || program.accounts.length === 0 || program.accounts[0].grades === null) {\n return grades\n }\n\n // There will be duplicates because of the grade for both Male and Female, so we need\n // to filter those out and only get unique values (https://stackoverflow.com/a/35092559/13215483)\n const uniqueGrades = [\n ...new Set(\n program.accounts[0].grades.filter((g) => g.typeProgramID === typeProgramId).map((g) => g.typeGradeID)\n ),\n ]\n\n const programGrades = program.accounts[0].grades.filter((g) => g.typeProgramID === typeProgramId)\n for (const grade of uniqueGrades) {\n const femaleGradeExists = programGrades.find((pg) => pg.gender === 'F' && pg.typeGradeID === grade)\n const maleGradeExists = programGrades.find((pg) => pg.gender === 'M' && pg.typeGradeID === grade)\n\n grades.push({ grade, femaleUsed: !femaleGradeExists, maleUsed: !maleGradeExists })\n }\n\n return grades\n}\nexport function initializeNewProgramGradeData(program: ProgramWithGrades, programTypeId: string) {\n if (!programTypeId.includes('CHEER')) {\n loadGradeDataIntoProgram(program, initialGrades, programTypeId, 'M')\n }\n loadGradeDataIntoProgram(program, initialGrades, programTypeId, 'F')\n}\n\nexport function loadGradeDataIntoAccount(\n account: LeagueAccount,\n grades: string[],\n programTypeId: string,\n gender: string\n) {\n if (shouldReloadGradesForAccount(account, grades, programTypeId, gender)) {\n loadGradeInformationIntoAccount(account, grades, programTypeId, gender)\n }\n}\n\nexport function loadGradeDataIntoProgram(\n program: ProgramWithGrades,\n grades: string[] | null,\n programTypeId: string,\n gender: string\n) {\n if (!grades) return\n if (shouldReloadGrades(program, grades, programTypeId, gender)) {\n // We won't get here if program or accounts is null.\n // @ts-ignore: Object is possibly 'null'.\n loadGradeInformationIntoAccount(program.accounts[0], grades, programTypeId, gender)\n loadGradeInformationIntoProgram(program, grades, programTypeId, gender)\n }\n}\n\nfunction shouldReloadGrades(\n program: ProgramWithGrades,\n grades: string[],\n programTypeId: string,\n gender: string\n): boolean {\n if (!program.accounts || program.accounts.length === 0) {\n return false\n }\n\n const account = program.accounts[0]\n return shouldReloadGradesForAccount(account, grades, programTypeId, gender)\n}\n\nfunction shouldReloadGradesForAccount(\n account: LeagueAccount,\n grades: string[],\n programTypeId: string,\n gender: string\n): boolean {\n if (account.grades === null && grades === null) {\n return false\n }\n\n if (account.grades === null) {\n return true\n }\n\n let accountGrades = ''\n account.grades.forEach(\n (item) =>\n (accountGrades +=\n item.gender === (gender || 'M') && item.typeProgramID == programTypeId\n ? item.typeGradeID + item.typeProgramID\n : '')\n )\n\n let controlGrades = ''\n grades.forEach((item) => (controlGrades += item + programTypeId))\n return controlGrades !== accountGrades\n}\n\nfunction loadGradeInformationIntoAccount(\n account: LeagueAccount,\n grades: string[],\n programTypeId: string,\n gender: string\n) {\n if (account.grades === null) {\n account.grades = []\n }\n // Get items not being updated and create a new array with only those items the updated ones will be added later.\n const itemsNotForProgram = account.grades.filter((g) => g.typeProgramID !== programTypeId)\n const itemsNotBeingUpdated = gender\n ? account.grades.filter((g) => g.gender !== gender && g.typeProgramID === programTypeId)\n : []\n\n account.grades = [...itemsNotForProgram, ...itemsNotBeingUpdated]\n\n for (const grade of grades) {\n if (gender === 'M') {\n const accountGradeMale = {\n typeGradeID: grade,\n gender: 'M',\n typeProgramID: programTypeId,\n } as LeagueAccountProgramGenderGrade\n account.grades.push(accountGradeMale)\n }\n\n if (gender === 'F') {\n const accountGradeFemale = {\n typeGradeID: grade,\n gender: 'F',\n typeProgramID: programTypeId,\n } as LeagueAccountProgramGenderGrade\n account.grades.push(accountGradeFemale)\n }\n }\n}\n\nfunction loadGradeInformationIntoProgram(\n program: ProgramWithGrades,\n grades: string[],\n programTypeId: string,\n gender: string\n) {\n if (!program.programs || program.programs.length === 0) {\n return\n }\n\n const programDetails = program.programs.find((x) => x.typeProgramID === programTypeId)\n if (!programDetails) {\n return\n }\n\n if (programDetails.gradesByGender === null) {\n programDetails.gradesByGender = []\n }\n\n // Remove only the items we're concerned with.\n const itemsNotBeingUpdated = gender ? programDetails.gradesByGender.filter((g) => g.gender !== gender) : []\n programDetails.gradesByGender = itemsNotBeingUpdated\n\n for (const grade of grades) {\n if (gender === 'M') {\n const programGradeMale = {\n typeGradeID: grade,\n gender: 'M',\n overrideEarlyRegistrationFee: 0,\n overrideRegistrationFee: 0,\n } as LeagueProgramGenderGrade\n programDetails.gradesByGender.push(programGradeMale)\n }\n\n if (gender === 'F') {\n const programGradeFemale = {\n typeGradeID: grade,\n gender: 'F',\n overrideEarlyRegistrationFee: 0,\n overrideRegistrationFee: 0,\n } as LeagueProgramGenderGrade\n programDetails.gradesByGender.push(programGradeFemale)\n }\n }\n}\n\nexport interface PrettyGradeGender {\n type: string\n gender: string\n grades: string\n min: string\n max: string\n}\n// convert the grade/genders returned under League.account.grades into displayable data\nexport function prettyGradeGender(acct: LeagueAccount): PrettyGradeGender[] {\n if (!acct.grades) return [] as PrettyGradeGender[]\n\n //get a unique list of possible grade/gender combinations\n const groups = [...new Set(acct.grades.map((y) => `${y.typeProgramID},${y.gender}`))]\n\n return groups.map((g) => {\n const group = g.split(',')\n const grades = getGradesListFromAccount(acct, group[0], group[1]).map((x) => x.upwardTypeID!)\n const sorted = grades.sort(sortGrades)\n return {\n type: ProgramTypes[group[0]],\n gender: group[1] == 'F' ? 'Girls' : 'Boys',\n grades: sorted.join(','),\n min: sorted[0],\n max: sorted[grades.length - 1],\n }\n })\n}\n\nexport function getProperGradeLabel(typeGradeID: string, isByAge: boolean, ageSuffix: string) {\n const typeID = store.getters.gradeTypes.byUpwardTypeId(typeGradeID)\n if (isByAge) {\n if (typeID) {\n return `${typeID.ageByCutoff}${ageSuffix}`\n } else {\n return ''\n }\n } else {\n if (typeID) {\n return typeID.description\n } else {\n return typeGradeID\n }\n }\n}\n\nexport function getGradeTypeIDFromBirthDate(\n ageCutoffDate: Date | null,\n birthDate: Date | null\n): UpwardGradeTypeID | null {\n let retval = null\n if (ageCutoffDate && birthDate) {\n const age = Math.floor(\n (parseInt(dayjs(ageCutoffDate).format('YYYYMMDD')) - parseInt(dayjs(birthDate).format('YYYYMMDD'))) /\n 10000\n )\n if (age > 2 && age < 18) {\n retval = store.getters.gradeTypes.getTypeIDByAge(age)\n }\n }\n\n return retval\n}\n\nexport function getDateRangeForGrades(\n fromTypeGradeID: string,\n toTypeGradeID: string,\n ageCutoffDate: Date | null\n): { fromDate: Date; toDate: Date } {\n let retval = {\n fromDate: dayjs(new Date()).subtract(19, 'year').add(1, 'day').toDate(),\n toDate: dayjs(new Date()).subtract(3, 'year').toDate(),\n }\n if (ageCutoffDate) {\n const fromTypeID = store.getters.gradeTypes.byUpwardTypeId(fromTypeGradeID)\n const toTypeID = store.getters.gradeTypes.byUpwardTypeId(toTypeGradeID)\n if (fromTypeID && toTypeID) {\n retval = {\n fromDate: dayjs(new Date(ageCutoffDate))\n .subtract(toTypeID.ageByCutoff + 1, 'year')\n .add(1, 'day')\n .toDate(),\n toDate: dayjs(new Date(ageCutoffDate)).subtract(fromTypeID.ageByCutoff, 'year').toDate(),\n }\n }\n }\n\n return retval\n}\n\nexport const sliderGrades = getGrades(true)\n","import jwtService from '@/services/jwtService'\nimport { AuthTokenCredentials } from '@/models/Authorization/AuthTokenCredentials'\nimport authorizationClient, { ImpersonationPayload } from '@/clients/authorizationClient'\nimport { defineGetters, defineActions, defineMutations } from 'direct-vuex'\nimport { Commit } from 'vuex'\nimport credentialsService from '@/services/credentialsService'\nimport { AuthToken } from '@/models/Authorization/AuthToken'\nimport { TwoFactorAuthRequiredException } from '@/lib/common/exceptions/login//TwoFactorAuthRequiredException'\nimport {\n namespace as partnerNamespace,\n mutationNames as partnerMutationNames,\n actionNames as partnerActionNames,\n} from '@/store/partners'\nimport { ProfilePayload } from '@/models/Authorization/ProfilePayload'\nimport store from '.'\n\n/*\nactiveAccount: this account is the same as the logged in user\nif the league has no partnerships. If there are partnerships,\nand it's the host partner who is logged in, this is the account\nthey are viewing/manipulating. This value is sent in the header of\nall requests.\n*/\ninterface AuthState extends AuthTokenCredentials {\n timeSet: Date | null\n isMinistryAgreementSigned: boolean\n codeReloadRequired: boolean\n activeAccount: string | null\n}\n\nconst authState: AuthState = {\n accountNumbers: [],\n email: null,\n fullName: null,\n expiration: null,\n timeSet: null,\n accountName: null,\n impersonatedAccount: '0',\n impersonationActive: false,\n activities: null,\n roles: null,\n daysUntilPasswordExpiration: null,\n isMinistryAgreementSigned: false,\n userData: '',\n codeReloadRequired: false,\n leagueRoles: [],\n activeAccount: null,\n totpInfo: 'GOOD',\n}\n\nexport enum getterNames {\n isAuthenticated = 'isAuthenticated',\n fullName = 'fullName',\n accountName = 'accountName',\n firstAccountNumber = 'firstAccountNumber',\n email = 'email',\n refreshTime = 'refreshTime',\n daysUntilPasswordExpiration = 'daysUntilPasswordExpiration',\n accountNumbers = 'accountNumbers',\n isMinistryAgreementSigned = 'isMinistryAgreementSigned',\n isImpersonated = 'isImpersonated',\n isCurrentUserAnAdmin = 'isCurrentUserAnAdmin',\n isCurrentUserASuperAdmin = 'isCurrentUserASuperAdmin',\n isCurrentUserASuperUser = 'isCurrentUserASuperUser',\n impersonationAccountNumber = 'impersonationAccountNumber',\n userData = 'userData',\n roles = 'roles',\n codeReloadRequired = 'codeReloadRequired',\n leagueRoles = 'leagueRoles',\n activeAccount = 'activeAccount',\n isSystemsAndSupport = 'isSystemsAndSupport',\n isUpwardStaff = 'isUpwardStaff',\n isMultiAccountUser = 'isMultiAccountUser',\n totpInfo = 'totpInfo',\n}\n\nconst getterTree = defineGetters()({\n isAuthenticated: (state, getters, rootState) => {\n if (state.codeReloadRequired) return false\n\n if (state.totpInfo != 'GOOD') return false\n\n if (state.timeSet === null || state.expiration === null) {\n return false\n }\n\n if (state.accountNumbers && state.accountNumbers.length > 1) {\n // if a user is connected to more that one account, they are not fully authenticated\n // until they have picked just one using TheAuthWall.\n return false\n }\n\n const now = rootState.now\n return now <= state.expiration\n },\n fullName: (state) => {\n return state.fullName\n },\n userData: (state) => {\n return state.userData\n },\n\n isMultiAccountUser: (state) => {\n return (state?.accountNumbers?.length ?? 0) > 1\n },\n\n activeAccount: (state) => state.activeAccount,\n\n isMinistryAgreementSigned: (state) => {\n return state.isMinistryAgreementSigned\n },\n isImpersonated: (state) => {\n return credentialsService.isImpersonating(state)\n },\n impersonationAccountNumber: (state) => {\n return state.impersonatedAccount\n },\n roles: (state) => {\n return state.roles ?? []\n },\n isCurrentUserASuperAdmin: (state, getters) => {\n return (state?.roles?.some((x: string) => x === 'SuperAdmin') ?? false) && !getters.isImpersonated\n },\n\n isCurrentUserAnAdmin: (state, getters) =>\n (state?.roles?.some(\n (x: string) => x === 'SuperAdmin' || x === 'SystemsAndSupport' || x === 'UpwardStaff'\n ) ??\n false) &&\n !getters.isImpersonated,\n\n isCurrentUserASuperUser: (state, getters) => {\n const hasSuperUserRole = state?.roles?.some(\n (x) => ['SuperAdmin', 'SystemsAndSupport', 'UpwardStaff', 'Director', 'DataInput'].indexOf(x) >= 0\n )\n const isImpersonated = getters.isImpersonated\n return hasSuperUserRole || isImpersonated\n },\n\n isSystemsAndSupport: (state) => {\n return state?.roles?.some((x: string) => x === 'SystemsAndSupport') ?? false\n },\n\n isUpwardStaff: (state) => {\n return state?.roles?.some((x: string) => x === 'UpwardStaff') ?? false\n },\n\n accountNumbers: (state) => {\n return state.accountNumbers\n },\n firstAccountNumber: (state) => {\n if (state.accountNumbers && state.accountNumbers.length > 0) {\n return state.accountNumbers[0]\n }\n return ''\n },\n email: (state) => {\n if (state.email) {\n return state.email\n }\n return ''\n },\n accountName: (state) => {\n return state.accountName\n },\n refreshTime: (state) => {\n if (state.timeSet === null || state.expiration === null) {\n return null\n }\n\n const msPerMinute = 60 * 1000\n return new Date(state.expiration.getTime() - 10 * msPerMinute) //give us a 10 minute buffer in case there is a time difference to the server\n },\n daysUntilPasswordExpiration: (state) => {\n return state.daysUntilPasswordExpiration\n },\n codeReloadRequired: (state) => {\n return state.codeReloadRequired\n },\n leagueRoles: (state) => {\n return state.leagueRoles\n },\n totpInfo: (state) => {\n return state.totpInfo\n },\n})\n\nexport enum mutationNames {\n setCurrentCredentials = 'setCurrentCredentials',\n clearCurrentCredentials = 'clearCurrentCredentials',\n setMinistryAgreementIsSigned = 'setMinistryAgreementIsSigned',\n resetMinistryAgreementIsSigned = 'resetMinistryAgreementIsSigned',\n setCodeReloadRequired = 'setCodeReloadRequired',\n setActiveAccount = 'setActiveAccount',\n}\n\nconst mutations = defineMutations()({\n setCurrentCredentials(state, { credentials }: { credentials: AuthTokenCredentials }) {\n if (credentials) {\n Object.assign(state, { ...state, ...credentials }) //state is a superset of credentials.\n state.timeSet = new Date()\n state.activeAccount =\n credentials.accountNumbers && credentials.accountNumbers.length > 0\n ? credentials.accountNumbers[0].toString()\n : null\n }\n },\n setMinistryAgreementIsSigned(state) {\n state.isMinistryAgreementSigned = true\n },\n resetMinistryAgreementIsSigned(state) {\n state.isMinistryAgreementSigned = false\n },\n setActiveAccount(state) {\n state.isMinistryAgreementSigned = false\n },\n setCodeReloadRequired(state, { val }: { val: boolean }) {\n //used to suspend a user's authentication without logging\n // them out. This value is returned by isAuthentication unless\n // it's null, in which case it's ignored.\n state.codeReloadRequired = val\n },\n clearCurrentCredentials(state) {\n console.log('TNT - clearing all creds')\n jwtService.clearStoredAuthToken()\n state.accountNumbers = []\n state.email = null\n state.fullName = null\n state.expiration = null\n state.timeSet = null\n state.accountName = null\n state.activities = null\n state.roles = null\n state.impersonatedAccount = '0'\n store.commit.upwardRunningAuth.setURCreds({ creds: null })\n },\n})\n\nexport enum actionNames {\n login = 'login',\n refreshToken = 'refreshToken',\n passwordChange = 'passwordChange',\n updateProfile = 'updateProfile',\n impersonate = 'impersonate',\n loginByToken = 'loginByToken',\n validateTOTP = 'validateTOTP',\n}\n\nconst actions = defineActions({\n /**\n * attempt a login, state will change if successfully\n *\n * @param commit\n * @param email\n * @param password\n * @throws UserNotFoundException|LoginException|PasswordExpiredException\n * - these are passed up through the underlying auth service. The\n * authorization logic requires seeing these exceptions, so don't suppress them.\n *\n */\n async login({ commit, dispatch }, { email, password, accountNumber }): Promise {\n const restResult = await authorizationClient.login(email, password, accountNumber)\n const credentials = jwtService.getCredentialsFromNewAuthToken(restResult)\n commit(mutationNames.setCurrentCredentials, { credentials })\n\n //if 2FA, stop anything else\n if (credentials?.totpInfo == 'GOOD') {\n await handleSuccessfulLogin(credentials, dispatch)\n }\n\n return restResult\n },\n\n async validateTOTP({ commit, dispatch }, totpCode: string): Promise {\n const restResult = await authorizationClient.validateTOTP(totpCode)\n const credentials = jwtService.getCredentialsFromNewAuthToken(restResult)\n commit(mutationNames.setCurrentCredentials, { credentials })\n\n if (credentials?.totpInfo == 'GOOD') {\n await handleSuccessfulLogin(credentials, dispatch)\n }\n\n return restResult\n },\n\n /**\n * attempt a login, state will change if successfully\n *\n * @param commit\n * @param email\n * @param password\n * @throws UserNotFoundException|LoginException|PasswordExpiredException\n * - these are passed up through the underlying auth service. The\n * authorization logic requires seeing these exceptions, so don't suppress them.\n *\n */\n async loginByTokenWithImpersonation({ commit, dispatch }, { chit }: { chit: string }): Promise {\n const [token, impersonatingAccountNumber] = chit.split('.')\n const who = { userName: undefined, accountNumber: impersonatingAccountNumber } as ImpersonationPayload\n let usersAuthToken = null\n\n try {\n //login with the user's token\n usersAuthToken = await authorizationClient.tokenLogin(token)\n } catch (e) {\n // logout\n commit(mutationNames.clearCurrentCredentials)\n throw e\n }\n\n const credentials = jwtService.getCredentialsFromNewAuthToken(usersAuthToken)\n if (credentials?.totpInfo != 'GOOD') {\n commit(mutationNames.setCurrentCredentials, { credentials })\n const ex = new TwoFactorAuthRequiredException('2FA Required for this login')\n ex.accountToImpersonateAfterAuth = impersonatingAccountNumber\n throw ex\n }\n\n if (usersAuthToken && impersonatingAccountNumber) {\n //Impersonate and persist credentials\n await passthoughImpersonation(usersAuthToken, who, commit)\n return true\n } else if (usersAuthToken) {\n //persist credentials\n commit(mutationNames.setCurrentCredentials, { credentials })\n await setPartner(credentials, dispatch)\n return true\n }\n return false\n },\n\n async impersonate({ commit, dispatch }, who: { userName?: string; accountNumber: string }) {\n const restResult = await authorizationClient.impersonate(who)\n jwtService.backupToken()\n const credentials = jwtService.getCredentialsFromNewAuthToken(restResult)\n commit(mutationNames.setCurrentCredentials, { credentials })\n await setPartner(credentials, dispatch)\n },\n\n async unimpersonate({ commit }) {\n const restResult = await jwtService.retrieveOldToken()\n if (restResult) {\n const credentials = jwtService.getCredentialsFromNewAuthToken(restResult)\n commit(`${partnerNamespace}/${partnerMutationNames.setPartnerInfo}`, { item: null }, { root: true })\n commit(mutationNames.setCurrentCredentials, { credentials })\n }\n },\n\n async passwordChange({ commit, state }, { password, newPassword }): Promise {\n const email = state.email\n\n if (!email) {\n return false\n }\n\n const restResult = await authorizationClient.passwordChange(email, password, newPassword)\n\n if (restResult.isSuccess) {\n commit(mutationNames.clearCurrentCredentials)\n return true\n }\n\n return false\n },\n async refreshToken({ commit }): Promise {\n const restResult = await authorizationClient.refreshToken()\n\n try {\n const credentials = jwtService.getCredentialsFromNewAuthToken(restResult)\n commit(mutationNames.setCurrentCredentials, { credentials })\n return true\n } catch (e) {\n return false\n }\n },\n async tryLoadSavedToken({ commit, dispatch }): Promise {\n const credentials = jwtService.getCredentialsFromStoredAuthToken()\n if (credentials) {\n commit(mutationNames.setCurrentCredentials, { credentials })\n\n await setPartner(credentials, dispatch)\n return true\n }\n\n return false\n },\n async updateProfile(\n { commit, state },\n { payload }: { payload: ProfilePayload }\n ): Promise<{ incompleteToken: boolean }> {\n payload.username = state.email\n\n if (!payload.username) {\n throw new Error('Missing username')\n }\n\n const restResult = await authorizationClient.updateProfile(payload)\n\n if (restResult.isSuccess) {\n const credentials = jwtService.getCredentialsFromNewAuthToken(restResult.data)\n const hasMultipleAccounts = (restResult.data?.accountNumbers?.length ?? 0) > 1\n if (hasMultipleAccounts) {\n return { incompleteToken: true }\n } else {\n commit(mutationNames.setCurrentCredentials, { credentials })\n return { incompleteToken: false }\n }\n }\n throw new Error('Update Profile Failed')\n },\n})\n\nconst passthoughImpersonation = async (\n usersAuthToken: AuthToken,\n who: ImpersonationPayload,\n commit: Commit\n) => {\n jwtService.setHTTPHeaderAndLocalStorage(usersAuthToken)\n\n //Attempt to impersonate. If the user's permissions are insufficient to impersonate, this will fail.\n try {\n const impersonatedAuthToken = await authorizationClient.impersonate(who)\n if (impersonatedAuthToken) {\n const credentials = jwtService.getCredentialsFromNewAuthToken(impersonatedAuthToken)\n commit(mutationNames.setCurrentCredentials, { credentials })\n }\n } catch (e) {\n // logout\n commit(mutationNames.clearCurrentCredentials)\n }\n}\n\nasync function setPartner(credential: AuthTokenCredentials | null, dispatch: any) {\n if (credential && credential.accountNumbers && credential.accountNumbers.length == 1) {\n const accountNumber = credential.accountNumbers[0]\n\n await dispatch(\n `${partnerNamespace}/${partnerActionNames.retrievePartnerInfo}`,\n { accountNumber },\n { root: true }\n )\n } else {\n throw new Error('Cannot load partner. Incorrect account numbers')\n }\n}\n\nasync function handleSuccessfulLogin(credentials: AuthTokenCredentials | null, dispatch: any) {\n if (credentials && credentials.accountNumbers && credentials?.accountNumbers.length == 1) {\n await setPartner(credentials, dispatch)\n }\n}\n\nexport const namespace = 'authorization'\n\nexport const authorization = {\n namespaced: true as true,\n state: authState,\n getters: getterTree,\n actions,\n mutations,\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SchedulerSettingsPanel.vue?vue&type=style&index=0&lang=scss&\"","import restService from '@/services/restService'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { PlayerInfoIDType } from '@/lib/support/models/LeaguePlayerInfo/data'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\n\nimport { TeamGeneratorGuidelineInfo } from '@/GeneratedTypes/ListInfo/TeamGeneratorGuidelineInfo'\nimport { TeamGenerationData } from '@/models/Teams/TeamGenerationData'\nimport { DivisionTeam } from '@/GeneratedTypes/DivisionTeam'\nimport { DivisionTeamPracticeAppointment } from '@/GeneratedTypes/DivisionTeamPracticeAppointment'\nimport { DivisionTeamPracticeAppointmentModified } from '@/models/Practices/DivisionTeamPracticeModified'\nimport { DivisionTeamPracticeAppointmentInfoModified } from '@/models/Practices/DivisionTeamPracticeAppointmentInfoModified'\n\nconst baseUrl = 'teams'\n\nfunction practiceInfo2practice(\n p: DivisionTeamPracticeAppointmentInfoModified\n): DivisionTeamPracticeAppointmentModified {\n return {\n id: p.id,\n practiceEnd: p.practiceEnd,\n practiceStart: p.practiceStart,\n facilityID: p.facilityID,\n }\n}\nfunction ourURL(leagueID: string) {\n return `${baseUrl}/${leagueID}`\n}\n\nclass TeamsClientException extends GeneralError {\n name = 'Participant API Exception'\n}\n\nexport default class teamsClient {\n /**\n * Grab team information for a given individual.\n * @param leagueID\n * @param individualId\n */\n static async retrieveTeamInfo({\n leagueID,\n individualId,\n }: {\n leagueID: UpwardLeagueIDType\n individualId: PlayerInfoIDType\n }): Promise {\n const suffix = `?individualID=${individualId}`\n const x = await restService.get(`${ourURL(leagueID)}${suffix}`)\n if (x.isSuccess) {\n return x.data ?? []\n }\n throw new TeamsClientException(`Error retrieving team information for ${individualId}`)\n }\n\n /**\n * Retrieve all teams for a league\n * @param leagueID\n */\n static async retrieveLeagueTeams({\n leagueID,\n }: {\n leagueID: UpwardLeagueIDType\n }): Promise {\n const x = await restService.get(ourURL(leagueID))\n if (x.isSuccess) {\n return x.data ?? []\n }\n throw new TeamsClientException(`Error retrieving team information for ${leagueID}`)\n }\n\n /**\n * Grab a list of teams for a given league and division.\n * @param leagueId\n * @param divisionId\n * @param typeProgramId\n */\n static async retrieveTeamList({\n leagueId,\n divisionId,\n typeProgramId,\n }: {\n leagueId: UpwardLeagueIDType\n divisionId?: number\n typeProgramId: string\n }): Promise {\n const x = await restService.get(\n `${ourURL(leagueId)}/${typeProgramId}` + (divisionId !== undefined ? `/${divisionId}` : ``)\n )\n if (x.isSuccess) {\n return x.data ?? []\n }\n throw new TeamsClientException(\n `Error retrieving team list for ${leagueId} ${typeProgramId} ${divisionId}`\n )\n }\n\n /**\n * Generate teams for a given league and division.\n * @param leagueId\n * @param divisionId\n * @param typeProgramId\n */\n static async getTeamGenerationGuidelines({\n leagueId,\n divisionId,\n typeProgramId,\n }: {\n leagueId: UpwardLeagueIDType\n divisionId: number\n typeProgramId: string\n }): Promise {\n const x = await restService.get(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/guidelineInfo`\n )\n if (x.isSuccess) {\n return x.data!\n }\n throw new TeamsClientException(\n `Error creating teams generation guidelines ${leagueId} ${typeProgramId} ${divisionId}`\n )\n }\n\n /**\n * Generate teams for a given league and division.\n * @param leagueId\n * @param divisionId\n * @param typeProgramId\n */\n static async generateTeams({\n leagueId,\n divisionId,\n typeProgramId,\n teamGenerationData,\n }: {\n leagueId: UpwardLeagueIDType\n divisionId: number\n typeProgramId: string\n teamGenerationData: TeamGenerationData\n }): Promise {\n const x = await restService.post(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/generateTeams`,\n teamGenerationData\n )\n if (x.isSuccess) {\n return x.data ?? []\n }\n throw new TeamsClientException(\n `Error creating teams ${leagueId} ${typeProgramId} ${divisionId} ${teamGenerationData}`\n )\n }\n\n /**\n * Generate new team template.\n */\n static async getTeamTemplate(): Promise {\n const x = await restService.get(`${baseUrl}/new`)\n if (x.isSuccess) {\n return x.data!\n }\n throw new TeamsClientException(`Error getting new team template.`)\n }\n\n /**\n * Delete a team.\n * @param leagueId\n * @param divisionId\n * @param typeProgramId\n * @param teamId\n * @param teamGenerationData\n */\n static async deleteTeam({\n leagueId,\n divisionId,\n typeProgramId,\n teamId,\n }: {\n leagueId: UpwardLeagueIDType\n divisionId: number\n typeProgramId: string\n teamId: number\n }): Promise {\n const x = await restService.delete(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/${teamId}`\n )\n if (x.isSuccess) {\n return true\n }\n throw new TeamsClientException(\n `Error deleting team for ${leagueId} ${typeProgramId} ${divisionId} ${teamId}`\n )\n }\n\n /**\n * Attempts to create the specified team.\n * @param team\n */\n static async createTeam({ team }: { team: DivisionTeam }): Promise {\n const x = await restService.post(`${baseUrl}`, team)\n if (x.isSuccess) {\n return true\n }\n throw new TeamsClientException(`Error creating team`)\n }\n\n /**\n * Attempts to create the specified team.\n * @param team\n * @param leagueId\n */\n static async saveTeam({\n team,\n leagueId,\n }: {\n team: DivisionTeam\n leagueId: UpwardLeagueIDType\n }): Promise {\n const x = await restService.put(\n `${ourURL(leagueId)}/${team.typeProgramID}/${team.divisionID}/${team.teamID}`,\n team\n )\n if (x.isSuccess) {\n return true\n }\n throw new TeamsClientException(`Error saving team`)\n }\n\n /**\n * Returns a list of approved coaches by division, which accounts for the coach's age preferences.\n * @param leagueId\n * @param typeProgramId\n * @param divisionId\n * @param teamId\n * @param individualId\n * @return Promise\n */\n static async addCoachToTeam(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number,\n teamId: number,\n individualId: number,\n isHeadCoach: boolean\n ): Promise {\n //{{url}}/teams/{upwardleagueid}/{typeProgramId}/{teamId}/{divisionId}/coaches/{individualid}\n const x = await restService.post(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/${teamId}/coaches/${individualId}`,\n { headCoach: isHeadCoach }\n )\n\n if (!x.isSuccess) {\n throw new TeamsClientException(`Could not add coach to team. ${x.errorObject?.message}`)\n }\n return true\n }\n\n /**\n * Returns a list of approved coaches by division, which accounts for the coach's age preferences.\n * @param leagueId\n * @param typeProgramId\n * @param divisionId\n * @param teamId\n * @param individualId\n * @return Promise\n */\n static async makeCoachHeadCoach(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number,\n teamId: number,\n individualId: number\n ): Promise {\n //{{url}}/teams/{upwardleagueid}/{typeProgramId}/{teamId}/{divisionId}/coaches/{individualid}\n const x = await restService.put(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/${teamId}/coaches/${individualId}`,\n { headCoach: true }\n )\n\n if (!x.isSuccess) {\n throw new TeamsClientException(`Could not add coach to team. ${x.errorObject?.message}`)\n }\n return true\n }\n\n /***\n * It's possible to return a team as DivisionTeam or DivisionTeamInfo. This returns a DivisionTeam.\n * DivsionTeamInfo has more information in it.\n * @param leagueID\n * @param programID\n * @param divisionID\n * @param teamid\n */\n static async getTeam(leagueID: UpwardLeagueIDType, programID: string, divisionID: number, teamid: number) {\n if (!programID || !divisionID || !teamid) {\n throw new TeamsClientException(`Getting teams we need a program (${programID}, team and division`)\n }\n const x = await restService.get(`${ourURL(leagueID)}/${programID}/${divisionID}/${teamid}`)\n if (x.isSuccess) {\n return x.data!\n }\n throw new TeamsClientException(`Error getting new team id ${teamid}.`)\n }\n\n /**\n * This is a weird mashup of services with the effect of replacing the practice schedule on a\n * per team basis.\n * @param leagueID\n * @param teamID, string not a number, so like a \"8000123\" looking thing\n * @param practices\n */\n static async setPractices(\n leagueID: UpwardLeagueIDType,\n teamID: number,\n practices: DivisionTeamPracticeAppointmentInfoModified[]\n ) {\n if (practices && practices.length) {\n const newPractices: DivisionTeamPracticeAppointmentModified[] = []\n const teamID = practices[0].teamID\n const programID = practices[0].typeProgramID\n const divisionID = practices[0].divisionID\n const team = await teamsClient.getTeam(leagueID, programID || '', divisionID, teamID)\n // first part replaces existing ids that are specified.\n team.practices &&\n team.practices.forEach((existingPractice) => {\n const pti = practices.find((x) => x.id == existingPractice.id)\n if (pti) {\n newPractices.push({ ...practiceInfo2practice(pti), id: 0 })\n } else {\n newPractices.push({\n ...(({ ...existingPractice, id: 0 } as unknown) as DivisionTeamPracticeAppointmentModified),\n })\n }\n })\n // then write anything with a 0 for a practice id.\n practices.forEach((newPractice) => {\n if (newPractice.id === 0) {\n newPractices.push({ ...practiceInfo2practice(newPractice), id: 0 })\n }\n })\n // I know there is is a lot of gymnastics going on here, but the bottom line is that the\n // date serialization doesn't take the TZ into account on the server when it comes from\n // a date so we pre-do it in the component as a string and then pass it to the\n team.practices = (newPractices as unknown[]) as DivisionTeamPracticeAppointment[]\n await teamsClient.saveTeam({ team, leagueId: leagueID })\n }\n }\n\n /**\n * This is a weird mashup of services with the effect of replacing the practice schedule on a\n * per team basis.\n * @param leagueID\n * @param programID\n * @param divisionID\n * @param teamID\n * @param practiceIDs\n */\n static async deletePractices(\n leagueID: UpwardLeagueIDType,\n programID: string,\n divisionID: number,\n\n teamID: number,\n practiceIDs: number[]\n ) {\n const team = await teamsClient.getTeam(leagueID, programID, divisionID, teamID)\n let newPractices: DivisionTeamPracticeAppointment[] = []\n\n // first part replaces existing ids that are specified.\n if (team.practices) {\n newPractices = team.practices.filter(\n (existingPractice) => practiceIDs.findIndex((x) => x == existingPractice.id) < 0\n )\n }\n\n team.practices = newPractices\n await teamsClient.saveTeam({ team, leagueId: leagueID })\n }\n\n /**\n * This is a weird mashup of services with the effect of replacing the practice schedule on a\n * per team basis.\n * @param leagueID\n * @param programID\n * @param divisionID\n * @param teamIDs - string array of upward team ids\n */\n static async clearPractices(\n leagueID: UpwardLeagueIDType,\n programID: string,\n divisionID: number,\n teamIDs: number[]\n ) {\n for (let i = 0; i < teamIDs.length; i++) {\n const teamID = teamIDs[i]\n const team = await teamsClient.getTeam(leagueID, programID, divisionID, teamID)\n\n team.practices = []\n await teamsClient.saveTeam({ team, leagueId: leagueID })\n }\n }\n\n /**\n * Removes a coach from a team.\n * @param leagueId\n * @param typeProgramId\n * @param divisionId\n * @param teamId\n * @param individualId\n * @return Promise\n */\n static async removeCoachFromTeam(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number,\n teamId: number,\n individualId: number\n ): Promise {\n //{{url}}/teams/{upwardleagueid}/{typeProgramId}/{teamId}/{divisionId}/coaches/{individualid}\n const x = await restService.delete(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/${teamId}/coaches/${individualId}`\n )\n\n if (!x.isSuccess) {\n throw new TeamsClientException(`Could not add coach to team. ${x.errorObject?.message}`)\n }\n return true\n }\n\n /**\n * Returns a list of approved coaches by division, which accounts for the coach's age preferences.\n * @param leagueId\n * @param typeProgramId\n * @param divisionId\n * @param teamId\n * @param individualId\n * @return Promise\n */\n static async addPlayerToTeam(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number,\n teamId: number,\n individualId: number,\n lockPlayerToTeam: boolean\n ): Promise {\n //{{url}}/teams/{upwardleagueid}/{typeProgramId}/{teamId}/{divisionId}/coaches/{individualid}\n const x = await restService.post(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/${teamId}/players/${individualId}`,\n {\n typePositionID: '',\n lockPlayerToTeam: lockPlayerToTeam,\n }\n )\n\n if (!x.isSuccess) {\n throw new TeamsClientException(`Could not add coach to team. ${x.errorObject?.message}`)\n }\n return true\n }\n\n static async updatePlayerOnTeam(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number,\n teamId: number,\n individualId: number,\n lockPlayerToTeam: boolean,\n typePositionID: string\n ): Promise {\n const x = await restService.put(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/${teamId}/players/${individualId}`,\n {\n typePositionID: typePositionID,\n lockPlayerToTeam: lockPlayerToTeam,\n }\n )\n\n if (!x.isSuccess) {\n throw new TeamsClientException(`Could not update player on team. ${x.errorObject?.message}`)\n }\n return true\n }\n\n static async removePlayerFromTeam(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number,\n teamId: number,\n individualId: number\n ): Promise {\n const x = await restService.delete(\n `${ourURL(leagueId)}/${typeProgramId}/${divisionId}/${teamId}/players/${individualId}`\n )\n\n if (!x.isSuccess) {\n throw new TeamsClientException(`Could not remove player from the team. ${x.errorObject?.message}`)\n }\n return true\n }\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeagueOverview.vue?vue&type=style&index=0&id=083bff98&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"accordion-item d-flex flex-column\",class:{ open: _vm.isExpanded }},[_c('div',{staticClass:\"accordion-item-header clickable row px-3\",on:{\"click\":_vm.toggle}},[_c('h5',{staticClass:\"my-auto col-auto\"},[_c('i',{staticClass:\"fa fa-angle-right rotate-0\",class:{ 'rotate-90': _vm.isExpanded }})]),_c('div',{staticClass:\"col\"},[_vm._t(\"header\",[_vm._v(\"Click to Expand\")])],2)]),_c('div',{staticClass:\"accordion-item-body d-flex flex-column\"},[_c('slide-up-down',{attrs:{\"active\":_vm.isExpanded,\"duration\":300,\"use-hidden\":false}},[_c('div',{staticClass:\"container-fluid\"},[_vm._t(\"default\")],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\nimport { defineComponent, computed, inject } from '@vue/composition-api'\nimport { VueConstructor } from 'vue'\nimport uuid from 'uuid'\n\n/// \nimport SlideUpDown from 'vue-slide-up-down'\n\nexport default defineComponent({\n name: 'AccordionItem',\n components: {\n SlideUpDown: (SlideUpDown as unknown) as VueConstructor,\n },\n setup() {\n const accordionData = inject('accordionData', { currentGuid: '' })\n const guid = uuid.v4()\n\n function toggle() {\n accordionData.currentGuid = isExpanded.value ? '' : guid\n }\n\n const isExpanded = computed(() => accordionData.currentGuid === guid)\n\n return {\n isExpanded,\n toggle,\n accordionData,\n }\n },\n})\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!./AccordionItem.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!./AccordionItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AccordionItem.vue?vue&type=template&id=53514d7b&\"\nimport script from \"./AccordionItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./AccordionItem.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 { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\n\nexport function getEmptyProductOfferingInfo(): ProductOfferingInfo {\n return {\n id: 0,\n typeProgramID: '',\n typeProductGroupID: '',\n description: '',\n sortOrder: 0,\n active: true,\n categories: null,\n isCheer: true,\n cost: 0,\n cmsProductName: '',\n cmsProductDescription: '',\n cmsProductImageUrls: [],\n productPackages: [],\n digitalFormatAvailable: null,\n productCostOffsetLabels: [],\n }\n}\n","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!./CampLeagueStarterBox.vue?vue&type=style&index=0&id=4ae43986&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GridCard.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('radio-group-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"items-list\":_vm.radioItemList,\"value-property-name\":\"Value\",\"text-property-name\":\"Text\",\"item-class\":\"form-check form-check-inline\",\"sub-text\":_vm.subText,\"sub-text-with-link\":_vm.subTextWithLink},on:{\"change\":_vm.onChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, watch, onMounted, ref } from '@vue/composition-api'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\n\nexport default defineComponent({\n name: 'YesNoInput',\n components: {\n RadioGroupInput,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n value: { type: Boolean, required: true, default: false },\n subText: { type: String, default: '', required: false },\n subTextWithLink: { type: String, default: '', required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(false)\n\n const radioItemList: object[] = [\n {\n Value: true,\n Text: 'Yes',\n },\n {\n Value: false,\n Text: 'No',\n },\n ]\n\n function onChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n onMounted(() => {\n internalValue.value = props.value\n })\n\n return {\n internalValue,\n radioItemList,\n onChange,\n }\n },\n})\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!./YesNoInput.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!./YesNoInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./YesNoInput.vue?vue&type=template&id=1edd391e&\"\nimport script from \"./YesNoInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./YesNoInput.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 { LeagueCoach } from '@/GeneratedTypes/LeagueCoach'\n\nexport function getEmptyLeagueCoach(): LeagueCoach {\n return {\n practiceNights: [],\n programs: [],\n }\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tree.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderListSection.vue?vue&type=style&index=0&id=48abdcc7&lang=scss&scoped=true&\"","import axios, { AxiosResponse, AxiosRequestConfig, AxiosRequestTransformer } from 'axios'\nimport { UpwardExceptionResult } from '@/models/UpwardExceptionResult'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport dayjs from 'dayjs'\n\n// By default axios uses JSON.stringify to serialize Date objects. JSON.stringify\n// automatically converts local time to UTC so 10:00:00 Eastern is converted to 3pm\n// before transmission.\n//\n// dateTransformer() override the default axios behavior and transmits\n// the absolute time (e.g. 10:00:00). This means that leagues cannot support timezones,\n// but because there was no way to differentiate between all the times already in the\n// db that lost their timezone information, and leagues in different time zones are rare,\n// this is the approach that was agreed upon.\nconst dateTransformer = (data: any): any => {\n if (data instanceof Date) {\n return dayjs(data).format('YYYY-MM-DDTHH:mm:ss')\n }\n if (Array.isArray(data)) {\n return data.map(dateTransformer)\n }\n if (typeof data === 'object' && data !== null) {\n return Object.fromEntries(Object.entries(data).map(([key, value]) => [key, dateTransformer(value)]))\n }\n return data\n}\nconst axiosInstance = axios.create({\n transformRequest: [dateTransformer, ...(axios.defaults.transformRequest as AxiosRequestTransformer[])],\n})\n\naxiosInstance.interceptors.request.use(\n (config) => {\n if (config.url && config.method && config.method == 'post') {\n if (config.url.endsWith('authorization/login/') || config.url.endsWith('authorization/login')) {\n if (config && config.headers) {\n config.headers.Authorization = ''\n }\n }\n }\n return config\n },\n (error) => {\n Promise.reject(error)\n }\n)\n\n/**\n * Return the APP-wide API server base URL\n */\nexport function getAPIBaseURL() {\n return process.env.VUE_APP_ROOT_API + '/api'\n}\n\nexport interface RestServiceResult {\n errorObject: UpwardExceptionResult | null\n isSuccess: boolean\n status: number\n data: T | null\n}\n\nexport function convertToRestServiceResult(instance: any) {\n const implementsInterface =\n typeof instance === 'object' &&\n instance !== null &&\n 'errorObject' in instance &&\n 'isSuccess' in instance &&\n 'data' in instance\n\n return implementsInterface ? (instance as RestServiceResult) : null\n}\n\nexport function convertToVerificationDetails(instance: any) {\n const implementsInterface =\n typeof instance === 'object' &&\n instance !== null &&\n 'errorObject' in instance &&\n 'isSuccess' in instance &&\n 'data' in instance &&\n instance.data &&\n 'brokenRules' in instance.data &&\n 'model' in instance.data\n\n return implementsInterface ? (instance as RestServiceResult) : null\n}\n\nexport const isUpwardExceptionResult = (instance: any) => {\n return typeof instance === 'object' && instance !== null && 'message' in instance && 'errors' in instance\n}\n\nconst getRestServiceResult = (axiosResponse: AxiosResponse) => {\n const isSuccessCode = Math.floor(axiosResponse.status / 100) === 2\n const isErrorObject = isUpwardExceptionResult(axiosResponse.data)\n\n return {\n data: isErrorObject ? null : (axiosResponse.data as T),\n isSuccess: isSuccessCode && !isErrorObject,\n status: axiosResponse.status,\n errorObject: isErrorObject\n ? axiosResponse.data\n : ({\n message: axiosResponse.statusText || 'Unknown error',\n } as UpwardExceptionResult),\n } as RestServiceResult\n}\n\nconst wrapApiCall = async (callback: () => Promise>) => {\n return await callback()\n .then((result) => {\n return getRestServiceResult(result)\n })\n .catch((error) => {\n if (error.response) {\n throw getRestServiceResult(error.response)\n }\n\n throw {\n data: null,\n isSuccess: false,\n status: 0,\n errorObject: {\n message: error,\n errors: null,\n id: null,\n },\n } as RestServiceResult\n })\n}\n\nconst post = (\n resource: string,\n data: object | null | string,\n config: AxiosRequestConfig | undefined = undefined\n) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n return wrapApiCall(() => axiosInstance.post(fullUrl, data, config))\n}\n\nconst put = (\n resource: string,\n data: object | null,\n config: AxiosRequestConfig | undefined = undefined\n) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n return wrapApiCall(() => axiosInstance.put(fullUrl, data, config))\n}\n\nconst get = (resource: string, params = {}, other_config: AxiosRequestConfig | undefined = undefined) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n const args = { method: 'get', url: fullUrl, ...(other_config ?? {}), params }\n return wrapApiCall(() => axiosInstance(args as AxiosRequestConfig))\n}\n\nconst deleteMethod = (resource: string, data?: object | null) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n return wrapApiCall(() => axiosInstance.delete(fullUrl, { data }))\n}\n\nconst patch = (resource: string, data: object | null) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n return wrapApiCall(() => axiosInstance.patch(fullUrl, data))\n}\n\nconst setToken = (token: string | null | undefined) => {\n axiosInstance.defaults.headers.common['Authorization'] = token ? `Bearer ${token}` : ''\n}\nconst setAccountHeader = (accountNumber: string | null) => {\n axios.defaults.headers.common['AccountNumber'] = accountNumber ?? ''\n}\n\nconst getToken = () => {\n return axios.defaults.headers.common.Authorization\n}\n\nexport default {\n get,\n post,\n put,\n delete: deleteMethod,\n patch,\n setToken,\n getToken,\n setAccountHeader,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EmailSuppressionPanel.vue?vue&type=style&index=0&lang=scss&\"","// This Is Proper Case\n// This is sentence case\n// ThisIsPascalCase\n// thisIsCamelCase\nexport default (value: string | null | undefined) => {\n if (!value) {\n return ''\n }\n\n // https://www.codeproject.com/articles/11009/proper-case-javascript-function\n return value.toLowerCase().replace(/^(.)|\\s(.)/g, ($1) => $1.toUpperCase())\n}\n","import Vue from 'vue'\nimport { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport divisionsClient from '@/clients/divisionsClient'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { ActionsImpl } from 'direct-vuex'\n\ninterface DivisionsState {\n items: { [id: string]: LeagueDivisionInfo[] }\n selectedDivision: LeagueDivisionInfo | null\n}\n\nconst divisionsState: DivisionsState = {\n items: {},\n selectedDivision: null,\n}\n\nexport enum getterNames {\n allItems = 'allItems',\n currentDivision = 'currentDivision',\n}\n\nconst getterTree: GetterTree = {\n [getterNames.allItems]: (state) => (leagueUpwardTypeId: string) => {\n return state.items[leagueUpwardTypeId] || []\n },\n [getterNames.currentDivision]: (state) => state.selectedDivision,\n}\n\nexport enum mutationNames {\n setAll = 'setAll',\n setDivision = 'setDivision',\n clearSelectedDivision = 'clearSelectedDivision',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setAll](state, { items, leagueUpwardTypeId }) {\n Vue.set(state.items, leagueUpwardTypeId, items)\n\n // update selected division to keep it current with any changes\n if (state.selectedDivision) {\n const currentDivision = state.items[leagueUpwardTypeId].find(\n (d) => d.divisionID == state.selectedDivision?.divisionID\n )\n if (currentDivision) state.selectedDivision = currentDivision\n }\n },\n [mutationNames.setDivision](state, { division }: { division: LeagueDivisionInfo | null }) {\n state.selectedDivision = division\n },\n [mutationNames.clearSelectedDivision](state) {\n state.selectedDivision = null\n },\n}\n\nexport enum actionNames {\n fetchAll = 'fetchAll',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n /***\n * Pulls in the leagues for a given league id (e.g. \"UPW80000\")\n * @param commit\n * @param getters\n * @param upwardLeagueId\n * @param force\n */\n async [actionNames.fetchAll](\n { commit, getters },\n { upwardLeagueId, force }: { upwardLeagueId: UpwardLeagueIDType; force: boolean }\n ): Promise {\n const itemList = getters[getterNames.allItems](upwardLeagueId)\n if (itemList && itemList.length && !force) {\n return false\n }\n\n const result = await divisionsClient.retrieveAll(upwardLeagueId)\n\n if (result) {\n commit(mutationNames.setAll, { leagueUpwardTypeId: upwardLeagueId, items: result })\n return true\n }\n\n return false\n },\n}\n\nexport const namespace = 'divisions'\n\nexport const divisions = {\n namespaced: true as true,\n state: divisionsState,\n getters: getterTree,\n actions,\n mutations,\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('text-like-wrapper',{attrs:{\"append-icon\":_vm.appendIcon,\"enabled\":_vm.enabled,\"id\":_vm.id,\"label\":_vm.label,\"sub-label-inline\":_vm.subLabelInline,\"sub-label\":_vm.subLabel,\"prepend-icon\":_vm.prependIcon,\"required\":_vm.required,\"vee-validate-rules\":_vm.VeeValidateRules,\"sub-text\":_vm.subText},on:{\"icon-click\":_vm.iconClick},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar classes = ref.classes;\nreturn [_c('div',{staticClass:\"form-row\"},[_c('div',{class:{ 'col-6': _vm.hasTwoOptions, 'col-9': _vm.hasOneOption, 'col-12': _vm.hasNoOptions }},[_c('masked-input-element',{attrs:{\"mask\":\"###-###-####\",\"maxlen\":\"10\",\"placeholder\":_vm.placeholder,\"id\":_vm.id,\"enabled\":_vm.enabled,\"name\":_vm.name},on:{\"blur\":_vm.handleLocalBlur,\"change\":_vm.handleLocalChange,\"input\":_vm.handleLocalInput},model:{value:(_vm.internalNumber),callback:function ($$v) {_vm.internalNumber=$$v},expression:\"internalNumber\"}})],1),(_vm.showExtension)?_c('div',{staticClass:\"col-3\"},[_c('text-input',{attrs:{\"placeholder\":\"Ext\"},on:{\"change\":_vm.handleExtChange},model:{value:(_vm.extension),callback:function ($$v) {_vm.extension=$$v},expression:\"extension\"}})],1):_vm._e(),(_vm.showPhoneType)?_c('div',{staticClass:\"col-3\"},[_c('phone-type-select',{attrs:{\"name\":(_vm.name + \"Type\"),\"vee-validate-rules\":_vm.VeeValidateRules},on:{\"change\":_vm.handleTypeChange},model:{value:(_vm.phoneTypeId),callback:function ($$v) {_vm.phoneTypeId=$$v},expression:\"phoneTypeId\"}})],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\nimport { defineComponent, watch, ref, computed, PropType } from '@vue/composition-api'\nimport { getProps, useTextlike } from '@/composables/TextLike'\nimport { IndividualPhone } from '@/GeneratedTypes/IndividualPhone'\nimport { getEmptyPhone, PhoneSeedInfo } from '@/lib/support/models/IndividualPhone/data'\nimport PhoneTypeSelect from '@/components/PhoneTypeSelect.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport TextLikeWrapper from '@/elements/TextLikeWrapper.vue'\nimport MaskedInputElement from '@/elements/MaskedInputElement.vue'\nimport { cleanPhoneNumber } from '@/services/phoneNumberService'\n\nexport default defineComponent({\n name: 'PhoneInputMask',\n components: {\n MaskedInputElement,\n TextInput,\n TextLikeWrapper,\n PhoneTypeSelect,\n },\n props: {\n value: {\n type: Object as PropType,\n required: true,\n default: getEmptyPhone(new PhoneSeedInfo()),\n },\n placeholder: { type: String, required: false, default: '' },\n showExtension: { type: Boolean, default: false, required: false },\n showPhoneType: { type: Boolean, default: false, required: false },\n ...getProps(),\n },\n setup(props, ctx) {\n const {\n iconClick,\n internalValue,\n handleInput,\n handleChange,\n handleBlur,\n input,\n } = useTextlike(props, ctx)\n\n const phoneTypeId = ref(props.value.typePhoneID)\n const extension = ref(props.value.extension)\n\n const internalNumber = ref(cleanPhoneNumber(props.value?.phoneNumber ?? ''))\n\n const hasOneOption = computed(\n () => (props.showExtension && !props.showPhoneType) || (!props.showExtension && !props.showPhoneType)\n )\n\n const hasNoOptions = computed(() => !props.showExtension && !props.showPhoneType)\n\n const hasTwoOptions = computed(() => props.showExtension && props.showPhoneType)\n\n const handleLocalChange = ref<((val: string) => void) | undefined>()\n const handleLocalBlur = ref<((val: string) => void) | undefined>()\n const handleLocalInput = ref<((val: string) => void) | undefined>()\n\n /**\n * Take an event handler and make sure it stores/processes\n * the intermediate value and then kick to the default handler\n * handler\n * @param handler\n */\n function handleAndKick(handler: () => void): (val: string) => void {\n return (val: string) => {\n internalNumber.value = cleanPhoneNumber(val)\n if (internalValue.value) {\n internalValue.value.phoneNumber = internalNumber.value ?? ''\n }\n handler()\n }\n }\n\n //created()\n //event handlers need to process intermediate value\n handleLocalBlur.value = handleAndKick(handleBlur)\n // SF does not property send an input event but Vue's\n // two-way binding expects input on a custom component\n handleLocalChange.value = handleAndKick(handleInput)\n handleLocalInput.value = handleAndKick(handleInput)\n\n function handleTypeChange(val: string) {\n phoneTypeId.value = val\n if (internalValue.value) {\n internalValue.value.typePhoneID = phoneTypeId.value\n }\n input() //sf register change, we register input\n }\n\n function handleExtChange(val: string) {\n extension.value = val\n if (internalValue.value) {\n internalValue.value.extension = extension.value\n }\n input() //sf register change, we register input\n }\n\n watch(\n () => props.value,\n () => {\n if (internalValue.value) {\n if (\n internalValue.value.extension !== props.value.extension ||\n internalValue.value.phoneNumber !== props.value.phoneNumber ||\n internalValue.value.typePhoneID !== props.value.typePhoneID\n ) {\n internalNumber.value = cleanPhoneNumber(props.value.phoneNumber)\n phoneTypeId.value = props.value.typePhoneID\n extension.value = props.value.extension\n }\n } else {\n //likely first pass. set initial value\n internalValue.value = {\n extension: props.value.extension,\n phoneNumber: cleanPhoneNumber(props.value.phoneNumber),\n phoneID: props.value.phoneID,\n typePhoneID: props.value.typePhoneID,\n priority: props.value.priority,\n allowSMS: props.value.allowSMS,\n } as IndividualPhone\n\n //also set internal control values\n internalNumber.value = cleanPhoneNumber(props.value.phoneNumber)\n phoneTypeId.value = props.value.typePhoneID\n extension.value = props.value.extension\n }\n },\n { deep: true, immediate: true }\n )\n\n return {\n iconClick,\n internalValue,\n handleInput,\n handleChange,\n handleBlur,\n hasTwoOptions,\n hasOneOption,\n hasNoOptions,\n internalNumber,\n handleLocalBlur,\n handleLocalChange,\n handleLocalInput,\n extension,\n handleExtChange,\n phoneTypeId,\n handleTypeChange,\n }\n },\n})\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!./PhoneInputMask.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!./PhoneInputMask.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PhoneInputMask.vue?vue&type=template&id=4aa3c4d4&\"\nimport script from \"./PhoneInputMask.vue?vue&type=script&lang=ts&\"\nexport * from \"./PhoneInputMask.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","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PromoCardModal.vue?vue&type=style&index=0&lang=scss&\"","export enum UpwardOpportunityTypes {\n CLINIC = 3,\n CAMP = 2,\n LEAGUE = 1,\n LICENSING = 5,\n CONNECT = 9,\n UPWARDSELECT = 10,\n UPWARDRUNNING = 11,\n}\n\nexport enum UpwardOpportunityTypesByUpwardTypeID {\n CLINIC = 'CLINIC',\n CAMP = 'CAMP',\n LEAGUE = 'LEAGUE',\n LICENSING = 'LICENSING',\n CONNECT = 'CONNECT',\n UPWARDSELECT = 'UPWARDSELECT',\n UPWARDRUNNING = 'UPWARDRUNNING',\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('base-input-wrapper',{attrs:{\"required\":_vm.required,\"label\":_vm.label,\"prepend-icon\":_vm.prependIcon,\"append-icon\":_vm.appendIcon,\"id\":_vm.elementId,\"subText\":_vm.filteredText}},[(_vm.collapsible)?_c('span',[(!_vm.isExpanded)?_c('span',{staticClass:\"p-1\",on:{\"click\":function($event){_vm.isExpanded = true}}},[_c('i',{staticClass:\"fas fa-angle-down\"})]):_vm._e(),(_vm.isExpanded)?_c('span',{staticClass:\"p-1\",on:{\"click\":function($event){_vm.isExpanded = false}}},[_c('i',{staticClass:\"fas fa-angle-up\"})]):_vm._e()]):_vm._e(),(!_vm.collapsible || _vm.isExpanded)?_c('div',[(!_vm.redisplay)?_c('div',{class:{ 'd-flex': _vm.horizontal }},_vm._l((_vm.itemsList),function(item,index){return _c('div',{key:((_vm.getOptionValue(item, index)) + \"-checkbox-\" + (_vm.isChecked(item, index))),class:[_vm.itemClass, { 'padding-fix': _vm.horizontal && index === 0 }]},[_c('input',{key:(\"key-\" + (_vm.getOptionValue(item, index)) + \"-\" + (_vm.isChecked(item, index))),attrs:{\"type\":\"checkbox\",\"disabled\":!_vm.enabled,\"name\":_vm.elementId,\"id\":_vm.elementId + index},domProps:{\"checked\":_vm.isChecked(item, index)},on:{\"change\":function($event){$event.stopPropagation();_vm.handleChange(_vm.getOptionValue(item, index))}}}),_c('label',{staticClass:\"pl-2 pr-2 form-check-label\",attrs:{\"for\":_vm.elementId + index}},[_vm._v(_vm._s(_vm.getOptionText(item)))])])}),0):_vm._e(),(_vm.collapsible && _vm.isExpanded)?_c('div',{staticClass:\"col-md-12\"},[_c('button',{staticClass:\"btn btn-danger clear-all btn-sm\",on:{\"click\":_vm.clearAll}},[_c('i',{staticClass:\"fa fa-times\"}),_vm._v(\" Clear All \")]),_c('button',{staticClass:\"btn btn-secondary btn-sm ml-3\",on:{\"click\":_vm.selectAll}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Select All \")])]):_vm._e()]):_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\nimport { defineComponent, ref, computed, watch, PropType, nextTick } from '@vue/composition-api'\nimport BaseInputWrapper from '@/elements/BaseInputWrapper.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport uuid from 'uuid'\nimport { cloneDeep, isEqual } from 'lodash'\n\nexport default defineComponent({\n name: 'CheckboxGroupInput',\n components: {\n BaseInputWrapper,\n CheckboxInput,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n enabled: { type: Boolean, default: true, required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n id: { type: String, default: '', required: false },\n value: { type: Array as PropType, required: true, default: () => [] },\n textPropertyName: { type: String, default: '', required: false },\n valuePropertyName: { type: String, default: '', required: false },\n itemClass: { type: String, default: '', required: false },\n itemsList: { type: Array as PropType[]>, required: true, default: () => [] },\n horizontal: { type: Boolean, default: false, required: false },\n collapsible: { type: Boolean, default: false, required: false },\n },\n setup(props, ctx) {\n const guid = uuid.v4()\n const internalValue = ref([])\n const isExpanded = ref(false)\n const filteredText = ref('')\n\n function isChecked(item: Record, index: number) {\n const thing = getOptionValue(item, index)\n const otherthing = internalValue.value.indexOf(thing)\n\n return otherthing >= 0\n }\n\n function getOptionValue(item: Record, index: number): string {\n if (props.valuePropertyName !== '') {\n return item[props.valuePropertyName].toString()\n }\n if (props.textPropertyName !== '') {\n return item[props.textPropertyName].toString()\n }\n return index.toString()\n }\n\n function getOptionText(item: Record): string {\n if (props.textPropertyName !== '') {\n return item[props.textPropertyName].toString()\n }\n return item.toString()\n }\n\n const elementId = computed(() => props.id || `checkbox-${guid}`)\n\n function handleChange(val: string) {\n const index = internalValue.value?.indexOf(val)\n\n /* This filter takes care of multiple values appearing in the array like ['1','1','2'] */\n if (index !== undefined && index >= 0) {\n internalValue.value = internalValue.value.filter((x) => x !== val)\n } else {\n internalValue.value.push(val)\n }\n input()\n change()\n\n //what happens if our internal state isn't the same as our props?\n //this will force a recompare.\n nextTick(() => onValueChanged())\n }\n\n function clearAll() {\n internalValue.value = []\n\n input()\n change()\n }\n\n function selectAll() {\n internalValue.value = props.itemsList.map((x, i) => getOptionValue(x, i))\n\n input()\n change()\n }\n\n watch(\n () => internalValue.value,\n () => {\n updateFilteredText()\n },\n { immediate: true, deep: true }\n )\n\n watch(\n () => isExpanded.value,\n () => {\n updateFilteredText()\n },\n { immediate: true }\n )\n\n function updateFilteredText() {\n if (props.collapsible && !isExpanded.value) {\n //no need to calculate this if not a collapsible group\n if (internalValue.value.length == props.itemsList.length) {\n filteredText.value = 'All'\n } else if (internalValue.value.length == 0) {\n filteredText.value = 'None'\n } else {\n filteredText.value = 'Some have been filtered out'\n }\n } else {\n filteredText.value = ''\n }\n }\n\n function input() {\n ctx.emit('input', internalValue.value)\n }\n\n function change() {\n ctx.emit('change', internalValue.value)\n }\n\n // see explanation below\n const redisplay = ref(false)\n\n watch(\n () => props.value,\n () => onValueChanged(),\n { immediate: true }\n )\n\n function onValueChanged() {\n const equal = isEqual(props.value, internalValue.value)\n internalValue.value = cloneDeep(props.value)\n\n if (!equal) {\n // internal state is the state the checkboxes were left in which may or may\n // not trigger a value prop update, this fixes up discrepencies where the\n // UI state does not match the value state.\n redisplay.value = true\n nextTick(() => (redisplay.value = false))\n }\n }\n\n return {\n elementId,\n filteredText,\n isExpanded,\n redisplay,\n getOptionValue,\n isChecked,\n handleChange,\n getOptionText,\n selectAll,\n clearAll,\n }\n },\n})\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!./CheckboxGroupInput.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!./CheckboxGroupInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CheckboxGroupInput.vue?vue&type=template&id=45566b5e&scoped=true&\"\nimport script from \"./CheckboxGroupInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./CheckboxGroupInput.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CheckboxGroupInput.vue?vue&type=style&index=0&id=45566b5e&lang=scss&scoped=true&\"\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 \"45566b5e\",\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('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"items-list\":_vm.options,\"value-property-name\":\"abbreviation\",\"text-property-name\":\"name\",\"enabled\":true,\"show-blank-item\":_vm.showBlankItem,\"blank-item-text\":_vm.blankItemText,\"blank-item-value\":_vm.blankItemValue,\"vee-validate-rules\":_vm.VeeValidateRules},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { Genders } from '@/lib/support/models/MiscMappings/Gender'\n\nexport default defineComponent({\n name: 'GenderSelect',\n components: {\n SelectInput,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n value: { required: true, type: (null as unknown) as PropType },\n blankItemText: { type: String, default: '', required: false },\n showBlankItem: { type: Boolean, default: true, required: false },\n adult: { type: Boolean, default: false, required: false },\n blankItemValue: { default: null, required: false },\n VeeValidateRules: { type: String, default: '', required: false },\n limitSelectionTo: { type: String as PropType, default: Genders.both, required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n\n const female = computed(() => {\n return {\n name: props.adult ? 'Females' : 'Girls',\n abbreviation: Genders.female,\n }\n })\n\n const male = computed(() => {\n return {\n name: props.adult ? 'Males' : 'Boys',\n abbreviation: Genders.male,\n }\n })\n\n const both = computed(() => {\n return {\n name: 'Both',\n abbreviation: Genders.both,\n }\n })\n\n const options = computed(() => {\n if (props.limitSelectionTo == Genders.female) {\n return [female.value]\n }\n\n if (props.limitSelectionTo == Genders.male) {\n return [male.value]\n }\n\n if (props.limitSelectionTo == Genders.both) {\n return [female.value, male.value, both.value]\n }\n })\n\n watch(\n () => options.value,\n () => {\n internalValue.value = props.blankItemValue\n handleChange()\n }\n )\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n return {\n options,\n internalValue,\n handleChange,\n }\n },\n})\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!./GenderSelect.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!./GenderSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GenderSelect.vue?vue&type=template&id=37aefe08&\"\nimport script from \"./GenderSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./GenderSelect.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","function objectWithoutProperties (obj, exclude) { var target = {}; for (var k in obj) if (Object.prototype.hasOwnProperty.call(obj, k) && exclude.indexOf(k) === -1) target[k] = obj[k]; return target; }\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationObserver',{ref:\"observer\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar handleSubmit = ref.handleSubmit;\nvar rest = objectWithoutProperties( ref, [\"handleSubmit\"] );\nvar args = rest;\nreturn [_c('form',{attrs:{\"novalidate\":\"novalidate\"},on:{\"submit\":function($event){$event.preventDefault();return handleSubmit(_vm.save)}}},[_vm._t(\"default\",null,null,Object.assign({}, {handleSubmit: handleSubmit}, args))],2)]}}],null,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\nimport { defineComponent } from '@vue/composition-api'\nimport { ValidationObserver, extend } from 'vee-validate'\nimport { required, email, between, integer, min, alpha_num } from 'vee-validate/dist/rules'\nimport { postalCodeLooksValid } from '@/lib/support/utilities/address/postalCodeUtil'\nimport { isPhoneValid } from '@/lib/support/utilities/phone/phoneUtil.ts'\nimport dayjs from 'dayjs'\n\n/***\n * Add new validation rules here, or move the library to @/lib/components/VeeValidateForm if it overflows.\n */\nextend('namelike', {\n validate: (value) => {\n return value.match(/^([^0-9])+$/)\n },\n message: 'Numbers are unusual in a name.',\n})\nextend('phone', {\n validate: (value) => value.match(/^(|[0-9]{10})$/),\n message: 'Include 10 digit phone number',\n})\nextend('fullname', { validate: (value) => value.match(/\\S+\\s\\S+/), message: 'Include a first and last name' })\nextend('required', { ...required, message: 'required' })\nextend('email', { ...email, message: 'Invalid email format' })\nextend('integer', { ...integer, message: 'Only numbers are valid' })\nextend('alpha_num', { ...alpha_num, message: 'Only letters and numbers are valid' })\nextend('email-list', { ...email, message: 'At least one email is invalid' })\nextend('between', { ...between, message: 'Must be between {min} and {max}' })\nextend('min', { ...min, message: 'Must be at least {length} characters' })\nextend('max_additional_recipient', {\n validate: (value) => {\n let numberValues: string[] = []\n numberValues = value.split(' ').join('').split(',')\n\n if (numberValues.length >= 21 || value.length >= 300) {\n return 'Maximum number of additional recipient numbers entered'\n }\n return true\n },\n})\nextend('non_zero_required', (value) => {\n if (value !== 0) {\n return true\n }\n return 'required'\n})\nextend('exclude-semi-colon', (value) => {\n if (value.indexOf(';') === -1) {\n return true\n }\n return 'semi-colons are not allowed'\n})\nextend('postal_code', (value) => {\n // passes validation if value is valid US zip code or Canadian postal code\n return postalCodeLooksValid(value) || 'invalid postal code'\n})\n\nextend('valid_size', (value) => {\n return value !== 'NONE' || 'select a size'\n})\n\nextend('birthdate', {\n validate(value) {\n const dateVal = new Date(value)\n const now = new Date()\n const min = new Date()\n min.setFullYear(min.getFullYear() - 100)\n\n if (dateVal >= now) {\n return 'Birthdate cannot be in the future'\n }\n\n if (dateVal <= min) {\n return 'Birthdate must be more recent'\n }\n\n return true\n },\n})\n\nextend('northamerican_phone', {\n // Simple validation for North American phone numbers.\n // Accepts 555-555-5555, (555)555-5555, (555) 555-5555, 555 555 5555, 5555555555, 1 555 555 5555\n // Supports comma delimited string of phone numbers.\n // If you pass 'multiple' as an argument, you get a message suitable for delimited list of phone numbers\n validate: (value: string) => {\n let values: string[] = []\n let valid = true\n values = value.split(' ').join('').split(',')\n values.forEach((val: string) => {\n if (val && !isPhoneValid(val)) {\n valid = false\n return\n }\n })\n return valid\n },\n message: (value, args) => {\n if (args && args[0] === 'multiple') {\n return 'One of the phone numbers is invalid'\n } else {\n return 'Invalid phone number'\n }\n },\n})\n\nextend('date_before', {\n params: ['endDate'],\n validate(value, args: Record) {\n return dayjs(value).isBefore(args.endDate)\n },\n message: 'Date must be before {endDate}',\n})\n\nextend('date_after_target', {\n params: ['target'],\n validate(value, { target }: Record) {\n return dayjs(value).isAfter(target)\n },\n message: 'Date must be after {target}',\n})\n\nextend('beginDateLessThanEndDate', {\n params: ['target'],\n // @ts-ignore\n validate(value, { target }) {\n /* \n // usage:\n // on the start date field add the property: validation-provider-name=\"beginDate\"\n // on the end date add the property: vee-validate-rules=\"beginDateLessThanEndDate@beginDate\" \n */\n const beginDate = new Date(target).setHours(0, 0, 0, 0)\n const endDate = new Date(value).setHours(0, 0, 0, 0)\n if (beginDate > endDate) {\n return false\n } else {\n return true\n }\n },\n message: 'Start date must be earlier than end date.',\n})\n\nexport default defineComponent({\n name: 'VeeValidateForm',\n components: {\n ValidationObserver,\n },\n setup(props, ctx) {\n function save() {\n ctx.emit('submit')\n }\n\n /**\n * Works like DOM form (except it is a promise)\n * @return {Promise} form status.\n */\n async function checkValidity(): Promise {\n const observer = ctx.refs.observer as InstanceType\n return await observer.validate({ silent: true })\n }\n\n /**\n * Works like form reportValidity (except its a promise)\n * displays validation errors and sets the focus to the first.\n * @return {Promise} form status.\n */\n async function reportValidity(): Promise {\n const observer = ctx.refs.observer as InstanceType\n return await observer.validate()\n }\n\n return {\n checkValidity,\n save,\n reportValidity,\n }\n },\n})\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!./VeeValidateForm.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!./VeeValidateForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VeeValidateForm.vue?vue&type=template&id=60b38660&\"\nimport script from \"./VeeValidateForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./VeeValidateForm.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('base-input-wrapper',{attrs:{\"enabled\":_vm.enabled,\"id\":_vm.id,\"label\":_vm.label,\"sub-label-inline\":_vm.subLabelInline,\"sub-label\":_vm.subLabel,\"required\":_vm.required,\"vee-validate-rules\":_vm.VeeValidateRules,\"vee-validate-mode\":_vm.veeValidateMode,\"sub-text\":_vm.subText,\"showHelp\":_vm.showHelp},on:{\"helpClicked\":function($event){return _vm.$emit('helpClicked')}}},[_c('div',{class:{ 'input-group': _vm.hasIcon }},[(_vm.prependIcon)?_c('div',{staticClass:\"input-group-prepend\"},[_c('span',{staticClass:\"input-group-text\",on:{\"click\":_vm.iconClick}},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.prependIcon})])]):_vm._e(),_vm._t(\"default\"),(_vm.appendIcon)?_c('div',{staticClass:\"input-group-append\"},[_c('span',{staticClass:\"input-group-text\",on:{\"click\":_vm.iconClick}},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.appendIcon})])]):_vm._e()],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\nimport { defineComponent, computed } from '@vue/composition-api'\nimport { getProps, useTextlike } from '@/composables/TextLike'\nimport BaseInputWrapper from '@/elements/BaseInputWrapper.vue'\n\nexport default defineComponent({\n name: 'TextLikeWrapper',\n components: {\n BaseInputWrapper,\n },\n props: {\n ...getProps(),\n },\n setup(props, ctx) {\n const { iconClick } = useTextlike(props, ctx)\n\n const hasIcon = computed(() => !!(props.prependIcon || props.appendIcon))\n\n return {\n hasIcon,\n iconClick,\n }\n },\n})\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!./TextLikeWrapper.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!./TextLikeWrapper.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TextLikeWrapper.vue?vue&type=template&id=fa6084fe&scoped=true&\"\nimport script from \"./TextLikeWrapper.vue?vue&type=script&lang=ts&\"\nexport * from \"./TextLikeWrapper.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 \"fa6084fe\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddAddressModal.vue?vue&type=style&index=0&id=479846eb&lang=scss&scoped=true&\"","import { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail'\n\nexport function getEmptySavedProductOfferingConfigDetail(): SavedProductOfferingConfigDetail {\n return {\n productOfferingID: 0,\n categoryID: 0,\n productID: 0,\n typeColorID: 'N/A',\n typeProductOptionID: '',\n lockedInCost: 0,\n costToCharge: 0,\n gradesByGender: null,\n }\n}\n","import axios, { AxiosResponse, AxiosRequestConfig, AxiosRequestTransformer } from 'axios'\nimport { UpwardExceptionResult } from '@/models/UpwardExceptionResult'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport dayjs from 'dayjs'\n\n// By default axios uses JSON.stringify to serialize Date objects. JSON.stringify\n// automatically converts local time to UTC so 10:00:00 Eastern is converted to 3pm\n// before transmission.\n//\n// dateTransformer() override the default axios behavior and transmits\n// the absolute time (e.g. 10:00:00). This means that leagues cannot support timezones,\n// but because there was no way to differentiate between all the times already in the\n// db that lost their timezone information, and leagues in different time zones are rare,\n// this is the approach that was agreed upon.\nconst dateTransformer = (data: any): any => {\n if (data instanceof Date) {\n return dayjs(data).format('YYYY-MM-DDTHH:mm:ss')\n }\n if (Array.isArray(data)) {\n return data.map(dateTransformer)\n }\n if (typeof data === 'object' && data !== null) {\n return Object.fromEntries(Object.entries(data).map(([key, value]) => [key, dateTransformer(value)]))\n }\n return data\n}\nconst axiosInstance = axios.create({\n transformRequest: [dateTransformer, ...(axios.defaults.transformRequest as AxiosRequestTransformer[])],\n})\n\naxiosInstance.interceptors.request.use(\n (config) => {\n if (config.url && config.method && config.method == 'post') {\n if (\n config.url.endsWith('auth/loginwithlegacytoken/') ||\n config.url.endsWith('auth/loginwithlegacytoken')\n ) {\n if (config && config.headers) {\n config.headers.Authorization = ''\n }\n }\n }\n return config\n },\n (error) => {\n Promise.reject(error)\n }\n)\n\n/**\n * Return the APP-wide API server base URL\n */\nexport function getAPIBaseURL() {\n return process.env.VUE_APP_RUNNING_ROOT_API + '/api'\n}\n\nexport interface RestServiceResult {\n errorObject: UpwardExceptionResult | null\n isSuccess: boolean\n status: number\n data: T | null\n}\n\nexport function convertToRestServiceResult(instance: any) {\n const implementsInterface =\n typeof instance === 'object' &&\n instance !== null &&\n 'errorObject' in instance &&\n 'isSuccess' in instance &&\n 'data' in instance\n\n return implementsInterface ? (instance as RestServiceResult) : null\n}\n\nexport function convertToVerificationDetails(instance: any) {\n const implementsInterface =\n typeof instance === 'object' &&\n instance !== null &&\n 'errorObject' in instance &&\n 'isSuccess' in instance &&\n 'data' in instance &&\n instance.data &&\n 'brokenRules' in instance.data &&\n 'model' in instance.data\n\n return implementsInterface ? (instance as RestServiceResult) : null\n}\n\nexport const isUpwardExceptionResult = (instance: any) => {\n return typeof instance === 'object' && instance !== null && 'message' in instance && 'errors' in instance\n}\n\nconst getRestServiceResult = (axiosResponse: AxiosResponse) => {\n const isSuccessCode = Math.floor(axiosResponse.status / 100) === 2\n const isErrorObject = isUpwardExceptionResult(axiosResponse.data)\n\n return {\n data: isErrorObject ? null : (axiosResponse.data as T),\n isSuccess: isSuccessCode && !isErrorObject,\n status: axiosResponse.status,\n errorObject: isErrorObject\n ? axiosResponse.data\n : ({\n message: axiosResponse.statusText || 'Unknown error',\n } as UpwardExceptionResult),\n } as RestServiceResult\n}\n\nconst wrapApiCall = async (callback: () => Promise>) => {\n return await callback()\n .then((result) => {\n return getRestServiceResult(result)\n })\n .catch((error) => {\n if (error.response) {\n throw getRestServiceResult(error.response)\n }\n\n throw {\n data: null,\n isSuccess: false,\n status: 0,\n errorObject: {\n message: error,\n errors: null,\n id: null,\n },\n } as RestServiceResult\n })\n}\n\nconst post = (\n resource: string,\n data: object | null | string,\n config: AxiosRequestConfig | undefined = undefined\n) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n return wrapApiCall(() => axiosInstance.post(fullUrl, data, config))\n}\n\nconst put = (\n resource: string,\n data: object | null,\n config: AxiosRequestConfig | undefined = undefined\n) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n return wrapApiCall(() => axiosInstance.put(fullUrl, data, config))\n}\n\nconst get = (resource: string, params = {}, other_config: AxiosRequestConfig | undefined = undefined) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n const args = { method: 'get', url: fullUrl, ...(other_config ?? {}), params }\n return wrapApiCall(() => axiosInstance(args as AxiosRequestConfig))\n}\n\nconst deleteMethod = (resource: string, data?: object | null) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n return wrapApiCall(() => axiosInstance.delete(fullUrl, { data }))\n}\n\nconst patch = (resource: string, data: object | null) => {\n const fullUrl = `${getAPIBaseURL()}/${resource}`\n return wrapApiCall(() => axiosInstance.patch(fullUrl, data))\n}\n\nconst setToken = (token: string | null | undefined) => {\n axiosInstance.defaults.headers.common['Authorization'] = token ? `Bearer ${token}` : ''\n}\n\nconst getToken = () => {\n return axios.defaults.headers.common.Authorization\n}\n\nexport default {\n get,\n post,\n put,\n delete: deleteMethod,\n patch,\n setToken,\n getToken,\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CheerSchedulingGrid.vue?vue&type=style&index=0&id=6756f1c2&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProgramCreationPicker.vue?vue&type=style&index=0&id=6e28ec04&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('select-input',{attrs:{\"label\":\"Order Type\",\"value-property-name\":\"upwardTypeID\",\"text-property-name\":\"description\",\"items-list\":_vm.orderTypes,\"value\":_vm.orderTypeRef},on:{\"input\":_vm.selectOrderType}}),_c('memo-input',{staticClass:\"w-75 mt-3\",attrs:{\"label\":\"Note to Send to Business Central\",\"placeholder\":\"This can be no more than 80 characters\",\"rows\":5,\"value\":_vm.adminNoteRef,\"maxLength\":80},on:{\"input\":_vm.adminNoteChange}})],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\nimport { defineComponent, ref, computed } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport store from '@/store'\nimport { UpwardGPOrderTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGPOrderTypeID'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\n\nexport default defineComponent({\n components: {\n SelectInput,\n MemoInput,\n },\n setup() {\n const orderTypeRef = ref(store.getters.orders.currentOrderInternalOrderType ?? 'MERCH_ORDER')\n const adminNoteRef = ref(store.getters.orders.currentOrderAdminNote ?? '')\n\n const orderTypes = computed(() =>\n store.getters.gpOrderTypes.allItems.filter(\n (x: UpwardGPOrderTypeID) => x.isErrorOrderType || x.upwardTypeID == 'MERCH_ORDER'\n )\n )\n\n function selectOrderType(selectedType: string) {\n //add processing instruction to xOrder if an error order\n orderTypeRef.value = selectedType\n store.commit.orders.setCurrentOrderInternalOrderType({\n orderType: OrderTypesEnum.manual,\n item: selectedType == 'MERCH_ORDER' ? null : selectedType,\n })\n }\n\n function adminNoteChange(newValue: string) {\n store.commit.orders.setCurrentOrderAdminNote({ orderType: OrderTypesEnum.manual, item: newValue })\n }\n\n return {\n orderTypeRef,\n adminNoteRef,\n orderTypes,\n selectOrderType,\n adminNoteChange,\n }\n },\n})\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!./SelectManualOrderType.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!./SelectManualOrderType.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SelectManualOrderType.vue?vue&type=template&id=98aecf34&\"\nimport script from \"./SelectManualOrderType.vue?vue&type=script&lang=ts&\"\nexport * from \"./SelectManualOrderType.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","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=style&index=0&id=313d15b8&lang=scss&scoped=true&\"","export function isPhoneValid(phone: string) {\n if (!phone || typeof phone !== 'string') return false\n // Very basic validator to check North American phone format\n // accepts 555-555-5555 (555)555-5555 (555) 555-5555 555 555 5555 5555555555 1 555 555 5555\n const re = /^(1\\s|1|)?((\\(\\d{3}\\))|\\d{3})(\\-|\\s)?(\\d{3})(\\-|\\s)?(\\d{4})$/\n return phone.match(re) ? true : false\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('grid-card',{attrs:{\"toggle\":true},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.product.cmsProductName))]},proxy:true},{key:\"footer\",fn:function(){return [_c('button',{staticClass:\"btn rounded-0 btn-primary\",attrs:{\"disabled\":_vm.addDisabled},on:{\"click\":_vm.select}},[_vm._v(\" \"+_vm._s((\"\" + (_vm.isAdding ? 'Added' : 'Add To Order')))+\" \")])]},proxy:true}])},[_c('div',{staticClass:\"adjust-body\"},[_c('EnlargeableProduct',{attrs:{\"product\":_vm.product}}),_c('div',[_c('div',{staticClass:\"fields-container\"},[_c('div',{staticClass:\"dd-inputs\"},[(_vm.showColors)?_c('select-input',{attrs:{\"value-property-name\":\"id\",\"text-property-name\":\"desc\",\"items-list\":_vm.colors,\"value\":_vm.colorRef,\"enabled\":_vm.colors && _vm.colors.length >= 2},on:{\"input\":_vm.selectColor}}):_vm._e(),(_vm.sizes && _vm.sizes.length >= 2)?_c('select-input',{attrs:{\"value-property-name\":\"id\",\"text-property-name\":\"desc\",\"items-list\":_vm.sizes,\"value\":_vm.sizeRef},on:{\"input\":_vm.selectSize}}):_vm._e()],1),(_vm.isCustomJersey)?_c('div',{staticClass:\"jersey-number\"},[_c('label',{staticClass:\"m-0 d-flex\"},[_vm._v(\"Jersey No \"),_c('v-popover',{staticClass:\"ml-2\",attrs:{\"trigger\":\"click\"}},[_c('i',{staticClass:\"fa fa-info-circle\"}),_c('template',{slot:\"popover\"},[_c('p',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"clickable\"},[_vm._v(\"Valid jersey numbers: 00-99 (ex.7,08,54)\")])])],2)],1),_c('text-input',{staticClass:\"mb-4\",model:{value:(_vm.jerseyNoRef),callback:function ($$v) {_vm.jerseyNoRef=$$v},expression:\"jerseyNoRef\"}})],1):_vm._e(),_c('div',{staticClass:\"quantity\"},[(_vm.showIsFreeCheckbox)?_c('checkbox-input',{attrs:{\"inline\":true,\"noIndent\":true,\"labelClass\":\"pb-2\",\"label\":\"Make free\",\"value\":_vm.makeQtyFree},model:{value:(_vm.makeQtyFree),callback:function ($$v) {_vm.makeQtyFree=$$v},expression:\"makeQtyFree\"}}):_vm._e(),_c('label',{staticClass:\"m-0\"},[_vm._v(\"Quantity\")]),_c('number-input',{staticClass:\"mb-4\",attrs:{\"max\":_vm.internalProduct.orderMaximumQuantity || Number.MAX_SAFE_INTEGER,\"changeOnKeyUp\":true},model:{value:(_vm.quantityRef),callback:function ($$v) {_vm.quantityRef=$$v},expression:\"quantityRef\"}})],1)]),_c('div',[(_vm.productSummary)?_c('div',_vm._l((_vm.internalProduct.productColorSizes),function(cs){return _c('div',{key:((cs.typeSizeID) + \"-\" + (cs.typeColorID))},[(cs.orderQuantity)?_c('span',[_vm._v(_vm._s(_vm.filterNA(cs.colorDescription))+\" \"+_vm._s(_vm.filterNA(cs.sizeDescription))+\" x\"+_vm._s(cs.orderQuantity))]):_vm._e()])}),0):_vm._e()])])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { PendingOrderAdditionalProductInfo } from '@/GeneratedTypes/ListInfo/PendingOrderAdditionalProductInfo'\nexport function getEmptyPendingOrderAdditionalProductInfo(): PendingOrderAdditionalProductInfo {\n return {\n leagueID: 0,\n accountNumber: null,\n id: 0,\n typeProgramID: null,\n productID: 0,\n typeColorID: 'N/A',\n typeSizeID: 'N/A',\n quantity: 0,\n individualID: 0,\n jerseyNumber: '',\n typeParticipantID: null,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, onMounted, PropType, ref, watch } from '@vue/composition-api'\nimport { filterNA, makeOrderLine, OrderProduct } from '@/models/Order/OrderProduct'\nimport EnlargeableProduct from '@/components/ProductFlow/ParticipantKitStepper/ProductPickers/EnlargeableProduct.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport NumberInput from '@/elements/NumberInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport GridCard from '@/components/GridCard.vue'\nimport { cloneDeep } from 'lodash'\nimport { getEmptyOrderProductSize } from '@/models/Order/OrderProductSize'\nimport currency from '@/filters/currency'\nimport { UpwardSizeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardSizeTypeID'\nimport store from '@/store'\nimport { getEmptyPendingOrderAdditionalProductInfo } from '@/models/PendingOrderAdditionalProductInfo/data'\n\nconst ADD_TIMEOUT = 3000\n\ninterface IDDesc {\n id: string\n desc: string\n}\n\nexport default defineComponent({\n components: {\n NumberInput,\n SelectInput,\n TextInput,\n CheckboxInput,\n EnlargeableProduct,\n GridCard,\n },\n methods: { filterNA },\n props: {\n product: { type: Object as PropType, required: true },\n validSizes: { type: Array as PropType, required: true },\n isAddOnItem: { type: Boolean, required: false, default: false },\n showIsFreeCheckbox: { type: Boolean, required: false, default: false },\n isFreeCheckboxDefault: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isAdding = ref(false)\n const makeQtyFree = ref(props.isFreeCheckboxDefault)\n const internalProduct = ref(props.product)\n /**\n * Internal product will reflect a product with productColorSize always defined.\n */\n watch(\n () => props.product,\n () => {\n internalProduct.value = cloneDeep(props.product)\n if (!internalProduct.value.productColorSizes || !internalProduct.value.productColorSizes.length) {\n internalProduct.value.productColorSizes = [getEmptyOrderProductSize()]\n }\n }\n )\n\n const unique = (key: keyof T) => (v: T, i: number, a: T[]) =>\n a.findIndex((y) => y[key] == v[key]) === i\n const colors = computed(() =>\n internalProduct.value.productColorSizes?.length\n ? internalProduct.value.productColorSizes\n ?.filter(unique('colorDescription'))\n .map((x) => ({ id: x.typeColorID, desc: x.colorDescription } as IDDesc))\n : []\n )\n const sizes = computed(() =>\n internalProduct.value.productColorSizes?.length\n ? internalProduct.value.productColorSizes\n .filter(unique('sizeDescription'))\n .filter(\n (y) => props.validSizes.find((x) => x.upwardTypeID == y.typeSizeID)?.isSystemInternal == false\n )\n .map((x) => ({ id: x.typeSizeID, desc: x.sizeDescription } as IDDesc))\n : []\n )\n const colorRef = ref(internalProduct.value.productColorSizes![0].typeColorID)\n const sizeRef = ref(internalProduct.value.productColorSizes![0].typeSizeID)\n const quantityRef = ref(0)\n const jerseyNoRef = ref(null)\n const isCustomJersey = computed(() => internalProduct.value.requiresJerseyNumber)\n\n const showColors = computed(\n () =>\n colors.value &&\n (colors.value.length >= 2 || (colors.value.length === 1 && colors.value[0].id !== 'N/A'))\n )\n\n const addDisabled = computed(() => {\n return isCustomJersey.value\n ? quantityRef.value <= 0 ||\n !jerseyNoRef.value ||\n !(Number(jerseyNoRef.value) >= 0) ||\n !(Number(jerseyNoRef.value) <= 99)\n : quantityRef.value <= 0\n })\n\n /**\n * Resets drop down selections and quantity\n */\n function resetDropdownSelection() {\n colorRef.value = internalProduct.value.productColorSizes![0].typeColorID\n sizeRef.value = internalProduct.value.productColorSizes![0].typeSizeID\n quantityRef.value = internalProduct.value.orderQuantity || 0\n }\n\n onMounted(() => {\n resetDropdownSelection()\n })\n\n const currentVariation = computed(\n () =>\n internalProduct.value.productColorSizes!.find(\n (u) => u.typeColorID == colorRef.value && u.typeSizeID == sizeRef.value\n ) || getEmptyOrderProductSize()\n )\n\n const price = computed(\n () => (currentVariation.value?.costOffset ?? 0) + (internalProduct.value?.cost ?? 0)\n )\n const priceLine = computed(\n () =>\n `${price.value > 0 ? `${currency(price.value)}` : `FREE`} ${internalProduct.value.cmsUnitDescription}`\n )\n\n /**\n * Takes a size selection and finds a valid permutation, resetting color if\n * necessary\n * @param newSize\n */\n function selectSize(newSize: string) {\n // do we have a valid variation?\n const isSCCombo = internalProduct.value.productColorSizes!.find(\n (u) => u.typeColorID == colorRef.value && u.typeSizeID == newSize\n )\n\n let size = newSize\n let color = colorRef.value\n // no then, lets set our color to a valid one for the size\n if (!isSCCombo) {\n //find first variation with the new size\n const variation = internalProduct.value.productColorSizes!.find((u) => u.typeSizeID == newSize)\n\n //wild, no valid color or size.\n if (!variation) {\n resetDropdownSelection()\n return\n }\n color = variation.typeColorID\n }\n //we have a valid size and\n colorRef.value = color\n sizeRef.value = size\n }\n\n function selectColor(newColor: string) {\n // do we have a valid variation?\n const isSCCombo = internalProduct.value.productColorSizes!.find(\n (u) => u.typeSizeID == sizeRef.value && u.typeColorID == newColor\n )\n\n let color = newColor\n let size = sizeRef.value\n // no then, lets set our size to a valid one for the color\n if (!isSCCombo) {\n //find first variation with the new color\n const variation = internalProduct.value.productColorSizes!.find((u) => u.typeColorID == newColor)\n\n //no valid size or color.\n if (!variation) {\n resetDropdownSelection()\n return\n }\n size = variation.typeSizeID\n }\n //we have a valid color and\n sizeRef.value = size\n colorRef.value = color\n }\n\n function select() {\n isAdding.value = true\n if (props.isAddOnItem) {\n ctx.emit('product-update', addOnItem())\n } else {\n ctx.emit('product-update', {\n ...makeOrderLine(internalProduct.value, currentVariation.value),\n orderQuantity: quantityRef.value,\n orderFreeQuantity: makeQtyFree.value ? quantityRef.value : 0,\n })\n }\n quantityRef.value = 0\n setTimeout(() => (isAdding.value = false), ADD_TIMEOUT)\n }\n\n const leagueId = computed(() => store.getters.leagueAbstraction.currentItem.id)\n const account = computed(() => store.getters.authorization.firstAccountNumber)\n function addOnItem() {\n return {\n ...getEmptyPendingOrderAdditionalProductInfo(),\n quantity: quantityRef.value,\n jerseyNumber: jerseyNoRef.value ?? '',\n typeColorID: colorRef.value,\n typeSizeID: sizeRef.value,\n leagueID: leagueId.value,\n accountNumber: account.value,\n typeProgramID: internalProduct.value.typeProgramID,\n productID: Number(internalProduct.value.id),\n }\n }\n\n return {\n select,\n selectSize,\n selectColor,\n isAdding,\n colors,\n showColors,\n sizes,\n colorRef,\n sizeRef,\n quantityRef,\n priceLine,\n internalProduct,\n productSummary: false,\n jerseyNoRef,\n isCustomJersey,\n addDisabled,\n makeQtyFree,\n }\n },\n})\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!./ProductQuantitySelector.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!./ProductQuantitySelector.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductQuantitySelector.vue?vue&type=template&id=7bc4548c&scoped=true&\"\nimport script from \"./ProductQuantitySelector.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductQuantitySelector.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProductQuantitySelector.vue?vue&type=style&index=0&id=7bc4548c&lang=scss&scoped=true&\"\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 \"7bc4548c\",\n null\n \n)\n\nexport default component.exports","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!./AutomaticScheduling.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('button',{staticClass:\"float-right\",on:{\"click\":_vm.download}},[_c('i',{staticClass:\"fas fa-file-csv\"})]),_vm._t(\"title\",[_c('h5',{staticClass:\"mt-5\"},[_vm._v(\"Itemized Order List\")])]),_c('div',{},[_c('simple-grid',{attrs:{\"grid-data\":_vm.orderList,\"columns\":_vm.columns,\"table-striped\":true}})],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn, GridColumnAlignEnum } from '@/models/Grid/GridColumn'\nimport currency from '@/filters/currency'\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\nimport { CFormatOrder, OrderLineExt } from '@/models/Order/xStartupOrderExt'\nimport { filterNA } from '@/models/Order/OrderProduct'\nimport { downloadCSV } from '@/lib/common/csv/downloadCSV'\nimport { ParticipantOrderProductInfo } from '@/GeneratedTypes/ListInfo/ParticipantOrderProductInfo'\n\nexport default defineComponent({\n components: {\n SimpleGrid,\n },\n props: {\n order: { type: Object as PropType, required: true },\n itemList: { type: Array as PropType, required: false, default: () => [] },\n },\n setup(props) {\n const columns = computed(() => {\n if (orderList.value.some((x) => filterNA(x.size))) {\n return [\n { field: 'productLabel', headerText: 'Item Name', width: 300 },\n { field: 'program', headerText: 'Program' },\n { field: 'type', headerText: 'Type' },\n { field: 'size', headerText: 'Size' },\n { field: 'orderQuantity', headerText: 'Quantity' },\n { field: 'cost', headerText: 'Cost', textAlign: GridColumnAlignEnum.RIGHT },\n { field: 'name', headerText: 'Name' },\n { field: 'team', headerText: 'Team' },\n ] as GridColumn[]\n } else {\n return [\n { field: 'productLabel', headerText: 'Item Name', width: 300 },\n { field: 'program', headerText: 'Program' },\n { field: 'type', headerText: 'Type' },\n { field: 'orderQuantity', headerText: 'Quantity' },\n { field: 'cost', headerText: 'Cost', textAlign: GridColumnAlignEnum.RIGHT },\n { field: 'name', headerText: 'Name' },\n { field: 'team', headerText: 'Team' },\n ] as GridColumn[]\n }\n })\n\n function getProductLabel(x: OrderLineExt) {\n if (x.cmsProductName) {\n return x.cmsProductName\n }\n const ilProd = props.itemList.find(\n (p) => p.upwardProductID == x.productID && p.typeProgramID == x.typeProgramID\n )\n if (ilProd && ilProd.cmsProductName) {\n return ilProd.cmsProductName\n }\n\n //fallback to previous look into the original template\n if (props.order?.products) {\n const prod = props.order?.products?.find(\n (p) => p.upwardProductID == x.productID && p.typeProgramID == x.typeProgramID\n )\n if (prod && prod.cmsProductName) {\n return prod.cmsProductName\n }\n }\n if (x.productID) {\n return x.productID\n }\n return 'n/a'\n }\n\n function supressNA(s: string) {\n if (s == 'N/A') {\n return ''\n }\n return s\n }\n\n interface OrderListItem {\n productLabel: string\n program: string | null\n type: string\n size: string\n cost: string | null | undefined\n orderQuantity: number\n name: string\n team: string\n }\n const orderList = computed(() =>\n (props.order?.orderLinesExt || props.order?.orderLines)\n ?.filter((x) => x.quantity)\n .map(\n (x) =>\n ({\n productLabel: getProductLabel(x),\n program: x.typeProgramID,\n type: supressNA(x.colorDescription || x.typeColorID || ''),\n size: supressNA(x.sizeDescription || x.typeSizeID || ''),\n cost: currency(x.extendedCost),\n orderQuantity: x.quantity,\n name: x.participantName || x.cargo?.participantName || '',\n team: x.participantTeamName || x.cargo?.participantTeamName || '',\n } as OrderListItem)\n )\n )\n\n function getCost(cost: number) {\n return currency(cost)\n }\n\n function download() {\n downloadCSV(columns.value, orderList.value, 'order_items.csv')\n }\n\n return { getCost, orderList, columns, download }\n },\n})\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!./OrderListSection.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!./OrderListSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderListSection.vue?vue&type=template&id=cf9bedc6&scoped=true&\"\nimport script from \"./OrderListSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderListSection.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderListSection.vue?vue&type=style&index=0&id=cf9bedc6&lang=scss&scoped=true&\"\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 \"cf9bedc6\",\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 (_vm.renderConditionally ? _vm.isVisible : true)?_c('FocusTrap',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.renderConditionally ? _vm.isVisible : true),expression:\"!renderConditionally ? isVisible : true\"}],attrs:{\"active\":_vm.enableFocusTrap,\"fallbackFocus\":\"#closeBtn\"}},[_c('dialog',{staticClass:\"modal fade show bg-light-15\",attrs:{\"tabindex\":\"-1\",\"role\":\"dialog\"}},[_c('div',{staticClass:\"modal-dialog\",class:{ 'modal-dialog-sm': _vm.isSmall },attrs:{\"role\":\"dialog\"}},[_c('div',{staticClass:\"modal-content\"},[_c('div',{staticClass:\"modal-header\",class:_vm.headerClass},[_c('h5',{staticClass:\"modal-title\"},[(_vm.headerIcon)?_c('i',{staticClass:\"pr-2\",class:_vm.headerIcon}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),(_vm.showClose)?_c('button',{staticClass:\"close\",attrs:{\"id\":\"closeBtn\",\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":_vm.hide}},[_c('i',{class:_vm.closeIconClass})]):_vm._e()]),_c('div',{ref:\"modalBody\",staticClass:\"modal-body thin-scrollbar\",on:{\"scroll\":_vm.onBodyScroll}},[_vm._t(\"default\")],2),(this.$slots.footer)?_c('div',{staticClass:\"modal-footer mt-3\"},[_vm._t(\"footer\")],2):_vm._e()])])])]):_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\nimport { defineComponent, ref, computed, watch, nextTick, onUnmounted } from '@vue/composition-api'\nimport { FocusTrap } from 'focus-trap-vue'\n\nexport default defineComponent({\n name: 'Modal',\n components: {\n FocusTrap,\n },\n props: {\n value: { type: Boolean, required: true },\n title: { type: String, default: '' },\n isSmall: { type: Boolean, required: false, default: false },\n showClose: { type: Boolean, required: false, default: true },\n headerClass: { type: String, required: false, default: 'bg-dark text-white' },\n headerIcon: { type: String, required: false, default: '' },\n closeIconClass: { type: String, required: false, default: 'fa fa-times' },\n /*\n ** renderConditionally = true uses v-if (pulls the modal in and out of the DOM)\n ** renderConditionally = false uses v-show (toggle the display without \n destroying/recreating the component)\n */\n renderConditionally: { type: Boolean, required: false, default: true },\n },\n setup(props, ctx) {\n const enableFocusTrap = ref(false)\n\n function hide() {\n ctx.emit('input', false)\n ctx.emit('change', false)\n }\n\n onUnmounted(() => {\n // In some cases the parent component nagivates to a new\n // route without closing the modal (value = false).\n if (isVisible.value) {\n closeModal()\n }\n })\n\n function onBodyScroll() {\n ctx.emit('scroll')\n }\n\n const isVisible = computed(() => props.value)\n\n function disableBodyScrolling() {\n //stop page underneath modal from scrolling\n const el = document.body\n el.classList.add('hide-overflow')\n }\n\n function enableBodyScrolling() {\n const el = document.body\n el.classList.remove('hide-overflow')\n }\n\n function closeModal() {\n enableFocusTrap.value = false\n enableBodyScrolling()\n return\n }\n\n watch(\n () => isVisible.value,\n () => {\n if (!isVisible.value) {\n closeModal()\n } else {\n disableBodyScrolling()\n }\n\n // Set the focus on the first control in the modal. Use a nextTick to allow the modal\n // to fully render it's child elements\n nextTick(() => {\n const modalBody = ctx.refs['modalBody'] as HTMLDivElement | undefined\n if (!modalBody) {\n return\n }\n\n const firstElement = modalBody?.querySelector('input, select, textarea, button') as\n | HTMLInputElement\n | HTMLSelectElement\n | HTMLTextAreaElement\n | HTMLButtonElement\n | null\n\n if (firstElement) {\n // Only enable the focus trap if there is an element that can be focused\n enableFocusTrap.value = true\n\n // I don't understand why, but nextTick was not working for setting the focus. This\n // setTimeout however does cause the first control to gain focus\n setTimeout(() => firstElement.focus(), 250)\n }\n })\n }\n )\n\n return {\n isVisible,\n enableFocusTrap,\n hide,\n onBodyScroll,\n }\n },\n})\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!./Modal.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!./Modal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Modal.vue?vue&type=template&id=173ba804&scoped=true&\"\nimport script from \"./Modal.vue?vue&type=script&lang=ts&\"\nexport * from \"./Modal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Modal.vue?vue&type=style&index=0&id=173ba804&lang=scss&scoped=true&\"\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 \"173ba804\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReturnsOrderDetail.vue?vue&type=style&index=0&id=8f7afcec&scoped=true&lang=scss&\"","import { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport {\n xLeagueOrderDetail,\n xLeagueOrderDetailCoach,\n xLeagueOrderDetailParticipant,\n xLeagueOrderDetailProduct,\n} from '@/GeneratedTypes/xOrder/xStartupOrder'\nimport { PlayerMissingSize } from '@/models/Order/PlayerMissingSize'\nimport { cloneDeep } from 'lodash'\nimport { getEmptyXStartupOrderExt } from '@/lib/support/models/GeneratedTypes/xOrders/xStartupOrderExt'\nimport { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport { PendingOrderAdditionalProductInfo } from '@/GeneratedTypes/ListInfo/PendingOrderAdditionalProductInfo'\n\nexport enum LOSStates {\n PRE_STEP,\n PARTICIPANT_MISSING_SIZES,\n PARTICIPANT_EXCHANGE,\n COACH_EXCHANGE,\n GET_PARTICIPANT_DETAIL_PREFERENCE,\n REVIEW_PARTICIPANT_DETAIL,\n REVIEW_SHIPPING,\n REVIEW_ORDER,\n CONFIRM_ORDER,\n REVIEW_ADDON_ITEMS,\n NEW_PARTICIPANTS,\n NEW_COACHES,\n}\n\nexport interface LeagueOrderState {\n template: xStartupOrderExt\n //*** players that are missing size by program (0= sport 1 = cheer)\n sizing: PlayerMissingSize[][]\n\n programs: string[] //program for sport and if set, cheer\n currentProgram: string\n currentStep: LOSStates\n orderStatus: xLeagueOrderDetail[]\n productIndividualPending: string[]\n loading: boolean\n validated: boolean\n doNotOrderWarningCount: number\n skipThisOrderWarningCount: number\n pendingAddOnItems: PendingOrderAdditionalProductInfo[]\n}\n\nexport function getEmptyXLeagueOrderDetailProduct(): xLeagueOrderDetailProduct {\n return {\n categoryID: 0,\n cmsProductDescription: '',\n cmsProductImageUrls: [],\n cmsProductName: '',\n doNotOrder: false,\n skipNextOrder: false,\n lockedInCost: 0,\n productID: 0,\n quantity: 0,\n typeColorID: '',\n typeSizeID: '',\n replaced: false,\n jerseyNumber: '',\n parentProductID: 0,\n }\n}\nexport const ORDER_COUNT_NOT_INITIALIZED = 99e1\nexport function getEmptyLeagueOrderDetail(league: UpwardLeagueIDType, program: string) {\n return {\n divisions: [],\n orderCount: ORDER_COUNT_NOT_INITIALIZED, // possible that this was throwing us into the wrong state.\n coachCount: 0,\n playerCount: 0,\n coachProductsAvailable: false,\n programCost: 0,\n typeProgramID: program,\n upwardLeagueID: league,\n upwardOrderType: 'LEAGUEORDER',\n } as xLeagueOrderDetail\n}\n\nexport function newLOS(league: UpwardLeagueIDType, programs: string[]) {\n let newprograms = cloneDeep(programs)\n if (!programs?.length) {\n newprograms = [''] //initial order state.\n }\n const rv = {\n sizing: [[] as PlayerMissingSize[]],\n volunteerSizing: [[] as PlayerMissingSize[]],\n template: getEmptyXStartupOrderExt(),\n programs: newprograms,\n currentProgram: newprograms[0],\n currentStep: LOSStates.PRE_STEP,\n orderStatus: [getEmptyLeagueOrderDetail(league, newprograms[0])],\n productIndividualPending: [],\n loading: false,\n validated: false,\n doNotOrderWarningCount: 0,\n skipThisOrderWarningCount: 0,\n pendingAddOnItems: [] as PendingOrderAdditionalProductInfo[],\n } as LeagueOrderState\n\n if (newprograms.length > 1) {\n rv.sizing.push([])\n rv.orderStatus.push(getEmptyLeagueOrderDetail(league, newprograms[1]))\n }\n return rv\n}\n\nexport enum SizeAffectsEnum {\n COACH,\n PLAYER,\n}\n\nexport interface SizeUpdatedPayload {\n whoIsUpdated: SizeAffectsEnum\n upwardLeagueID: UpwardLeagueIDType\n leagueID: number\n program: string\n participantID: number\n product: xLeagueOrderDetailProduct\n}\n\n/**\n * Go thru the PlayerMissingSize array and replace a product to update sizing\n * @param sizing\n * @param participantID\n * @param product\n * @return new sizing structure or null for no replacement done.\n */\nexport function replaceProduct(\n sizing: PlayerMissingSize[],\n participantID: string,\n product: xLeagueOrderDetailProduct\n) {\n const recordIndex = sizing.findIndex((y) => y.individualID == participantID)\n if (recordIndex >= 0) {\n const productIndex = sizing[recordIndex].products.findIndex((x) => x.productID == product.productID)\n if (productIndex >= 0) {\n const copyOfSizing = cloneDeep(sizing)\n const copyOfRecord = cloneDeep(sizing[recordIndex])\n copyOfRecord.products.splice(\n productIndex,\n 1,\n cloneDeep({\n ...copyOfRecord.products[productIndex],\n typeSizeID: product.typeSizeID,\n doNotOrder: product.doNotOrder,\n skipNextOrder: product.skipNextOrder,\n replaced: product.replaced ?? false,\n })\n )\n copyOfSizing.splice(recordIndex, 1, copyOfRecord)\n return copyOfSizing\n }\n }\n return null\n}\n\n/**\n * Replace the product size in the coach teams sizing structure.\n * @param teamCoaches\n * @param participantID\n * @param product\n */\nexport function setProductSizeInCoaches(\n teamCoaches: xLeagueOrderDetailCoach[],\n participantID: string,\n product: xLeagueOrderDetailProduct\n) {\n const coaches = cloneDeep(teamCoaches)\n const cI = coaches.findIndex((c) => c.individualID == parseInt(participantID))\n if (cI >= 0) {\n const pI = coaches[cI].products.findIndex((p) => p.productID == product.productID)\n if (pI >= 0) {\n coaches[cI].products.splice(pI, 1, {\n ...coaches[cI].products[pI],\n typeSizeID: product.typeSizeID,\n doNotOrder: product.doNotOrder,\n skipNextOrder: product.skipNextOrder,\n replaced: product.replaced ?? false,\n })\n }\n }\n return coaches\n}\n\n/**\n * Replace the product in players in the teams sizing structure.\n * @param teamPlayers\n * @param participantID\n * @param product\n */\nexport function setProductInPlayers(\n teamPlayers: xLeagueOrderDetailParticipant[],\n participantID: string,\n product: xLeagueOrderDetailProduct\n) {\n const players = cloneDeep(teamPlayers)\n const cI = players.findIndex((c) => c.individualID == parseInt(participantID))\n if (cI >= 0) {\n const pI = players[cI].products.findIndex((p) => p.productID == product.productID)\n if (pI >= 0) {\n players[cI].products.splice(pI, 1, {\n ...players[cI].products[pI],\n typeSizeID: product.typeSizeID,\n doNotOrder: product.doNotOrder,\n skipNextOrder: product.skipNextOrder,\n replaced: product.replaced ?? false,\n })\n }\n }\n return players\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-treeview',_vm._b({attrs:{\"items\":_vm.items},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}},'v-treeview',_vm.$attrs,false))],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\nimport { defineComponent, PropType, ref, computed } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\nexport interface Node {\n [key: string]: any\n children?: any[]\n}\n\nexport default defineComponent({\n name: 'Tree',\n props: {\n value: { type: Array as PropType, required: false, default: () => [] },\n items: { type: Array as PropType, required: true },\n },\n components: {},\n setup(props, { emit }) {\n const local = ref([])\n\n const selected = computed({\n get() {\n return cloneDeep(props.value)\n },\n set(v: Node[]) {\n local.value = v\n emit('input', cloneDeep(v))\n },\n })\n\n return { selected }\n },\n})\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!./Tree.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!./Tree.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Tree.vue?vue&type=template&id=bcd3393e&\"\nimport script from \"./Tree.vue?vue&type=script&lang=ts&\"\nexport * from \"./Tree.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Tree.vue?vue&type=style&index=0&lang=scss&\"\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 { VTreeview } from 'vuetify/lib/components/VTreeview';\ninstallComponents(component, {VTreeview})\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpwardBaseFeeStep.vue?vue&type=style&index=0&id=197d32f5&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ParticipantOrderGrouped.vue?vue&type=style&index=0&id=08ab0a99&scoped=true&lang=scss&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PartnerSearchPanel.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CoachOverageReport.vue?vue&type=style&index=0&lang=scss&\"","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardReturnReasonTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardReturnReasonTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveReturnReasonTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'returnReasonTypes'\n\nexport const returnReasonTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DropDownMultiSelect.vue?vue&type=style&index=0&id=657e72e9&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GradeRangeDropdowns.vue?vue&type=style&index=0&id=60071691&lang=scss&scoped=true&\"","import { format } from 'date-fns'\n\nexport default (value: Date | string | null | undefined, formatTemplate = 'MM/dd/yy') => {\n if (!value || value == '0001-01-01T00:00:00') {\n return ''\n }\n\n return format(new Date(value), formatTemplate)\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameSchedule.vue?vue&type=style&index=0&id=081e21ed&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LeagueDevotionTrackSelection.vue?vue&type=style&index=0&id=5a554bb1&lang=scss&scoped=true&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Resources.vue?vue&type=style&index=0&id=7d7a1078&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('modal',{attrs:{\"title\":_vm.title,\"is-small\":true,\"showClose\":_vm.showClose},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row mt-2\"},[_vm._t(\"default\")],2)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.close}},[_vm._v(_vm._s(_vm.buttonText))])])],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\nimport { defineComponent, ref, watch, onMounted } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\n\nexport default defineComponent({\n name: 'InfoModal',\n components: {\n Modal,\n },\n props: {\n show: { type: Boolean, required: false, default: false },\n title: { type: String, required: true },\n buttonText: { type: String, required: true },\n showClose: { type: Boolean, required: true, default: true },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(false)\n\n onMounted(() => {\n modalIsVisible.value = props.show\n })\n\n function close() {\n ctx.emit('close')\n }\n\n watch(\n () => props.show,\n (newValue: boolean) => {\n modalIsVisible.value = newValue\n }\n )\n\n return {\n modalIsVisible,\n close,\n }\n },\n})\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!./InfoModal.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!./InfoModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./InfoModal.vue?vue&type=template&id=03b1b0f6&\"\nimport script from \"./InfoModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./InfoModal.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 { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardPaymentMethodTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPaymentMethodTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrievePaymentTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'paymentTypes'\n\nexport const paymentTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StarterItemsStep.vue?vue&type=style&index=0&id=74233d38&lang=scss&scoped=true&\"","import { IndividualAddress } from '@/GeneratedTypes/IndividualAddress'\n\nenum AddressType {\n MAILING = 'MAILING',\n SHIPPING = 'SHIPPING',\n}\n\nexport function stringToAddressTypeID(s: string | AddressType): string {\n if (typeof s == 'string') {\n switch (s) {\n case 'home':\n return AddressType.MAILING\n case 'work':\n return AddressType.SHIPPING\n case 'shipping':\n return AddressType.SHIPPING\n case 'mailing':\n return AddressType.MAILING\n }\n }\n return s\n}\n\nexport function getEmptyIndividualAddress(seed?: IndividualAddressSeedInfo): IndividualAddress {\n return {\n addressID: 0,\n typeAddressID: seed?.typeAddressID || stringToAddressTypeID('mailing'),\n street1: '',\n street2: '',\n subdivision1: '', //city\n subdivision2: '', //state\n postalCode: '',\n typeCountryID: 'US',\n priority: 0,\n }\n}\n\nexport class IndividualAddressSeedInfo {\n public typeAddressID: string = stringToAddressTypeID('mailing')\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('span',[_vm._v(\"Tracking #: \")]),_c('a',{staticClass:\"underline\",attrs:{\"target\":\"tracking\",\"title\":\"track this number\",\"href\":_vm.trackingURL}},[_vm._v(_vm._s(_vm.trackingNumberInfo.trackingNumber))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, computed } from '@vue/composition-api'\nimport { OrderTrackingNumberInfo } from '@/GeneratedTypes/Order/ListInfo/OrderTrackingNumberInfo'\n\nexport default defineComponent({\n name: 'TrackingNumber',\n props: {\n trackingNumberInfo: { type: Object as PropType, required: true },\n },\n setup(props) {\n const trackingURL = computed(() =>\n props.trackingNumberInfo.carrierURLBasePath?.replace('{0}', props.trackingNumberInfo.trackingNumber!)\n )\n\n return { trackingURL }\n },\n})\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!./TrackingNumber.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!./TrackingNumber.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TrackingNumber.vue?vue&type=template&id=01cc58e4&scoped=true&\"\nimport script from \"./TrackingNumber.vue?vue&type=script&lang=ts&\"\nexport * from \"./TrackingNumber.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TrackingNumber.vue?vue&type=style&index=0&id=01cc58e4&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 \"01cc58e4\",\n null\n \n)\n\nexport default component.exports","/*\n Home of misc address validation and formatting utilities\n*/\n\n/***\n * Runs the a CA or US postal code through regex and lets you know if it seems complete.\n * @param value\n */\nexport function postalCodeLooksValid(value: string) {\n const postalCode = new RegExp(\n '^(A(0[ABCEGHJ-NPR]|1[ABCEGHK-NSV-Y]|2[ABHNV]|5[A]|8[A])|B(0[CEHJ-NPRSTVW]|1[ABCEGHJ-NPRSTV-Y]|2[ABCEGHJNRSTV-Z]|3[ABEGHJ-NPRSTVZ]|4[ABCEGHNPRV]|5[A]|6[L]|9[A])| C(0[AB]|1[ABCEN])|E(1[ABCEGHJNVWX]|2[AEGHJ-NPRSV]|3[ABCEGLNVYZ]|4[ABCEGHJ-NPRSTV-Z]|5[ABCEGHJ-NPRSTV]|6[ABCEGHJKL]|7[ABCEGHJ-NP]|8[ABCEGJ-NPRST]|9[ABCEGH])|G(0[ACEGHJ-NPRSTV-Z]|1[ABCEGHJ-NPRSTV-Y]|2[ABCEGJ-N]|3[ABCEGHJ-NZ]|4[ARSTVWXZ]|5[ABCHJLMNRTVXYZ]|6[ABCEGHJKLPRSTVWXZ]|7[ABGHJKNPSTXYZ]|8[ABCEGHJ-NPTVWYZ]|9[ABCHNPRTX])| H(0[HM]|1[ABCEGHJ-NPRSTV-Z]|2[ABCEGHJ-NPRSTV-Z]|3[ABCEGHJ-NPRSTV-Z]|4[ABCEGHJ-NPRSTV-Z]|5[AB]|7[ABCEGHJ-NPRSTV-Y]|8[NPRSTYZ]|9[ABCEGHJKPRSWX])|J(0[ABCEGHJ-NPRSTV-Z]|1[ACEGHJ-NRSTXZ]|2[ABCEGHJ-NRSTWXY]|3[ABEGHLMNPRTVXYZ]|4[BGHJ-NPRSTV-Z]|5[ABCJ-MRTV-Z]|6[AEJKNRSTVWYXZ]|7[ABCEGHJ-NPRTV-Z]|8[ABCEGHLMNPRTVXYZ]|9[ABEHJLNPTVXYZ])|K(0[ABCEGHJ-M]|1[ABCEGHJ-NPRSTV-Z]|2[ABCEGHJ-MPRSTVW]|4[ABCKMPR]|6[AHJKTV]|7[ACGHK-NPRSV]|8[ABHNPRV]|9[AHJKLV])|L(0[[ABCEGHJ-NPRS]]|1[ABCEGHJ-NPRSTV-Z]|2[AEGHJMNPRSTVW]|3[BCKMPRSTVXYZ]|4[ABCEGHJ-NPRSTV-Z]|5[ABCEGHJ-NPRSTVW]|6[ABCEGHJ-MPRSTV-Z]|7[ABCEGJ-NPRST]|8[EGHJ-NPRSTVW]|9[ABCGHKJ-NPRSTVWYZ])|M(1[BCEGHJ-NPRSTVWX]|2[HJ-NPR]|3[ABCHJ-N]|4[ABCEGHJ-NPRSTV-Y]|5[ABCEGHJ-NPRSTVWX]|6[ABCEGHJ-NPRS]|7[AY]|8[V-Z]|9[ABCLMNPRVW])|N(0[ABCEGHJ-NPR]|1[ACEGHKLMPRST]|2[ABCEGHJ-NPRTVZ]|3[ABCEHLPRSTVWY]|4[BGKLNSTVWXZ]|5[ACHLPRV-Z]|6[ABCEGHJ-NP]|7[AGLMSTVWX]|8[AHMNPRSTV-Y]|9[ABCEGHJKVY])|P(0[ABCEGHJ-NPRSTV-Y]|1[ABCHLP]|2[ABN]|3[ABCEGLNPY]|4[NPR]|5[AEN]|6[ABC]|7[ABCEGJKL]|8[NT]|9[AN])|R(0[ABCEGHJ-M]|1[ABCN]|2[CEGHJ-NPRV-Y]|3[ABCEGHJ-NPRSTV-Y]|4[AGHJKL]|5[AGH]|6[MW]|7[ABCN]|8[AN]|9[A])| S(0[ACEGHJ-NP]|2[V]|3[N]|4[AHLMNPRSTV-Z]|6[HJKVWX]|7[HJ-NPRSTVW]|9[AHVX])|T(0[ABCEGHJ-MPV]|1[ABCGHJ-MPRSV-YZ]|2[ABCEGHJ-NPRSTV-Z]|3[ABCEGHJ-NPRSZ]|4[ABCEGHJLNPRSTVX]|5[ABCEGHJ-NPRSTV-Z]|6[ABCEGHJ-NPRSTVWX]|7[AENPSVXYZ]|8[ABCEGHLNRSTVWX]|9[ACEGHJKMNSVWX])|V(0[ABCEGHJ-NPRSTVWX]|1[ABCEGHJ-NPRSTV-Z]|2[ABCEGHJ-NPRSTV-Z]|3[ABCEGHJ-NRSTV-Y]|4[ABCEGK-NPRSTVWXZ]|5[ABCEGHJ-NPRSTV-Z]|6[ABCEGHJ-NPRSTV-Z]|7[ABCEGHJ-NPRSTV-Y]|8[ABCGJ-NPRSTV-Z]|9[ABCEGHJ-NPRSTV-Z])|X(0[ABCEGX]|1[A])|Y(0[AB]|1[A]))[ ]?[0-9]{1}[ABCEGHJ-NPRSTV-Z]{1}[0-9]{1}$'\n )\n const zipCode = new RegExp('^[0-9]{5}(-[0-9]{4})?$')\n if (postalCode.test(value) || zipCode.test(value)) {\n return true\n }\n return false\n}\n","export const days: {\n name: string\n abbr3: string\n abbr2: string\n selected: boolean\n enabled: boolean\n ordinal: 1 | 2 | 3 | 4 | 5 | 6 | 7 | null\n value: 0 | 1 | 2 | 3 | 4 | 5 | 6 | null\n}[] = [\n { name: 'Sunday', abbr3: 'Sun', abbr2: 'Su', selected: false, enabled: true, ordinal: 1, value: 0 },\n { name: 'Monday', abbr3: 'Mon', abbr2: 'Mo', selected: false, enabled: true, ordinal: 2, value: 1 },\n { name: 'Tuesday', abbr3: 'Tue', abbr2: 'Tu', selected: false, enabled: true, ordinal: 3, value: 2 },\n { name: 'Wednesday', abbr3: 'Wed', abbr2: 'We', selected: false, enabled: true, ordinal: 4, value: 3 },\n { name: 'Thursday', abbr3: 'Thu', abbr2: 'Th', selected: false, enabled: true, ordinal: 5, value: 4 },\n { name: 'Friday', abbr3: 'Fri', abbr2: 'Fr', selected: false, enabled: true, ordinal: 6, value: 5 },\n { name: 'Saturday', abbr3: 'Sat', abbr2: 'Sa', selected: false, enabled: true, ordinal: 7, value: 6 },\n]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Cost Summary\")]),_c('table',{staticClass:\"text-right small text-muted\"},[_c('tr',[_c('td',[_vm._v(\"Sub Total:\")]),_c('td',[_vm._v(_vm._s(_vm.currency(_vm.subTotal)))])]),(_vm.discount > 0)?_c('tr',[_c('td',[_vm._v(\"Discount:\")]),_c('td',[_vm._v(\"- \"+_vm._s(_vm.currency(_vm.discount)))])]):_vm._e(),_c('tr',[_c('td',[_vm._v(\"Shipping:\")]),_c('td',[_vm._v(_vm._s(_vm.currency(_vm.shipping)))])]),_c('tr',[_c('td',[_vm._v(\"Sales Tax:\")]),_c('td',[_vm._v(_vm._s(_vm.currency(_vm.salesTax)))])]),_c('tr',[_c('td',{staticClass:\"text-primary font-weight-bold\"},[_vm._v(\"TOTAL:\")]),_c('td',{staticClass:\"text-primary font-weight-bold\"},[_vm._v(_vm._s(_vm.currency(_vm.total)))])])])])}\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\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\nimport currency from '@/filters/currency'\nimport { CFormatOrder } from '@/models/Order/xStartupOrderExt'\n\nexport default defineComponent({\n name: 'CostSummary',\n props: {\n order: { type: Object as PropType, required: true },\n },\n setup(props) {\n const subTotal = computed(() => {\n const subTotal = (props.order?.orderLines || (props.order as CFormatOrder)?.orderLinesExt)\n ?.map((x) => x.extendedCost)\n .reduce((x, a) => a + x, 0)\n return subTotal\n })\n\n const discount = computed(() => props.order?.longevityDiscountAmount ?? 0)\n\n const shipping = computed(\n () => props.order.shippingInfo?.shipMethods?.filter((x) => x.selected == true)[0].cost ?? 0\n )\n\n const total = computed(() => subTotal.value + shipping.value + salesTax.value - discount.value)\n\n const salesTax = computed(() => props.order.salesTax)\n\n return {\n subTotal,\n discount,\n shipping,\n salesTax,\n total,\n currency,\n }\n },\n})\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!./CostSummary.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!./CostSummary.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CostSummary.vue?vue&type=template&id=7ea81432&scoped=true&\"\nimport script from \"./CostSummary.vue?vue&type=script&lang=ts&\"\nexport * from \"./CostSummary.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CostSummary.vue?vue&type=style&index=0&id=7ea81432&scoped=true&lang=scss&\"\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 \"7ea81432\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResourceList.vue?vue&type=style&index=0&id=5e83c69a&scoped=true&lang=scss&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecialEventModal.vue?vue&type=style&index=0&lang=scss&scopped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_c('span',{staticClass:\"clickable\",on:{\"click\":_vm.showModal}},[(_vm.showIcons)?_vm._l((_vm.kits),function(k,i){return _c('PackageIcon',{key:i,attrs:{\"package-id\":k.typeProductOfferingProductPackageID}})}):_vm._e(),_c('i',{staticClass:\"float-right fas fa-search-plus mb-2\",staticStyle:{\"color\":\"#0575aa\"}})],2),_c('product-detail',{attrs:{\"product\":_vm.product,\"show-price\":_vm.showPrice}}),_c('modal',{attrs:{\"title\":_vm.productName,\"is-small\":\"\"},model:{value:(_vm.isModalShown),callback:function ($$v) {_vm.isModalShown=$$v},expression:\"isModalShown\"}},[_c('product-detail',{attrs:{\"product\":_vm.product,\"small\":false}})],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('div',{staticClass:\"d-flex w-100 flex-no-wrap justify-space-between flex-grow\"},[_c('div',{staticClass:\"product-image\"},[_c('v-carousel',{attrs:{\"height\":\"auto\",\"cycle\":_vm.small,\"hide-delimiters\":\"\",\"show-arrows\":false},model:{value:(_vm.currentImg),callback:function ($$v) {_vm.currentImg=$$v},expression:\"currentImg\"}},_vm._l((_vm.images),function(img,i){return _c('v-carousel-item',{key:i},[_c('img',{class:{ 'img-small': _vm.small },attrs:{\"src\":img}})])}),1),(_vm.images.length > 1)?_c('div',{staticClass:\"d-flex flex-wrap\",attrs:{\"id\":\"delimiters\"}},_vm._l((_vm.images),function(img,i){return _c('div',{key:i,on:{\"click\":function($event){_vm.currentImg = i}}},[_c('i',{staticClass:\"clickable fa-circle p-1 text-primary\",class:_vm.currentImg === i ? 'fas' : 'far'})])}),0):_vm._e()],1),_c('div',{staticClass:\"ml-3 d-flex flex-column flex-grow\"},[_c('h6',[_vm._v(\" \"+_vm._s(_vm.product.cmsProductName)+\" \"),(_vm.showTestData)?_c('span',{staticClass:\"text-success\"},[_vm._v(_vm._s(_vm.product.id)+_vm._s(_vm.product.productID))]):_vm._e()]),_c('p',{staticClass:\"small flex-grow\"},[_vm._v(_vm._s(_vm.description(_vm.product.cmsProductDescription)))]),(_vm.showPrice)?_c('div',{staticClass:\"col text-danger font-weight-bold small\"},_vm._l((_vm.getPrices(_vm.product)),function(price,i){return _c('div',{key:i},[_vm._v(\" \"+_vm._s(price.label)+\" \"+_vm._s(price.formattedCost)+\" \"+_vm._s(_vm.getUnitDescription(_vm.product))+\" \")])}),0):_vm._e(),(\n _vm.product &&\n _vm.product.digitalFormatAvailable &&\n _vm.product.digitalFormatAvailable.toLocaleLowerCase() == 'true'\n )?_c('div',{staticClass:\"digital\"},[_vm._v(\" This item is also available in a digital format in the \\\"Resources\\\" section. \")]):_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\nimport { defineComponent, computed, ref, onMounted, PropType } from '@vue/composition-api'\nimport currency from '@/filters/currency'\nimport { maxStringLength } from '@/filters/maxStringLength'\nimport { getEmptyProductOfferingInfo } from '@/lib/support/models/ProductOfferingInfo/ProductOfferingInfo'\nimport { CostOffsetLabelInfo } from '@/GeneratedTypes/ListInfo/CostOffsetLabelInfo'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\n\nimport store from '@/store'\n\ninterface MinInterface {\n cmsProductName: string | null\n cmsProductDescription: string | null\n cmsUnitDescription: string | null\n cmsProductImageUrls?: string[] | null\n cost?: number\n productCost?: number\n productID?: number\n id?: number\n defaultGPTypePriceLevelID?: string\n productCostOffsetLabels?: CostOffsetLabelInfo[]\n}\n\ninterface DisplayPrice {\n label: string\n formattedCost: string\n}\n\nexport default defineComponent({\n name: 'ProductDetail',\n props: {\n product: {\n type: Object as PropType,\n default: getEmptyProductOfferingInfo,\n required: false,\n },\n showPrice: { type: Boolean, default: true, required: false },\n small: { type: Boolean, default: true, required: false },\n },\n setup(props) {\n const savedProductOffering = computed(() => store.getters.productOfferings.productOfferingConfig)\n const selectedProductOfferings = computed(() => store.getters.productOfferings.selectedProductOfferings)\n const currentImg = ref(0)\n const showTestData = ref(false)\n\n onMounted(() => {\n if (process.env.VUE_APP_USE_TEST_DATA == 'YES') {\n showTestData.value = true\n }\n })\n\n const images = computed(() => {\n const imgs = props.product.cmsProductImageUrls\n if (!imgs || imgs.length === 0) {\n return ['/img/noImgSmall.png']\n }\n return imgs\n })\n\n function description(productDescription: string): string {\n if (props.small) return maxStringLength(productDescription, 200)\n return productDescription\n }\n\n function getUnitDescription(product: T): string {\n return product.cmsUnitDescription || ''\n }\n\n function getPrices(product: T): DisplayPrice[] | null | undefined {\n let prices: DisplayPrice[] = []\n let cost = 0\n const lockedInCost = lockedInProductCost.value\n if (lockedInCost) cost = lockedInCost //for previously saved items\n if (product.cost) cost = product.cost // for StartupOrderProductInfo or ProductOfferingInfo\n if (product.productCost) cost = product.productCost //ProductOfferingProductInfo\n if (product.productCostOffsetLabels && product.productCostOffsetLabels.length > 0) {\n prices = product.productCostOffsetLabels.map((o) => {\n return {\n label: o.label,\n formattedCost: cost == 0 ? 'FREE' : currency(cost + o.costOffset),\n } as DisplayPrice\n })\n } else {\n //CAMPS\n if (store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.CAMP) {\n //ProductOfferingInfo only\n if (product.cost == 0) {\n prices.push({ label: '', formattedCost: 'Click next to see price' })\n } else {\n prices.push({ label: '', formattedCost: currency(cost) ?? '' })\n }\n } else {\n //NOT CAMP\n prices.push({ label: '', formattedCost: cost == 0 ? 'FREE' : currency(cost) ?? '' })\n }\n }\n return prices\n }\n\n const lockedInProductCost = computed((): number | null => {\n //StartupOrderProductInfo\n if (props.product.hasOwnProperty('defaultGPTypePriceLevelID')) {\n // There are no locked in prices for StartupOrderProductInfo\n return null\n }\n\n // ProductOfferingProductInfo\n if (props.product.productID) {\n const savedProduct = savedProductOffering.value.details?.find(\n (p) => p.productID === props.product.productID\n )\n if (savedProduct) {\n return savedProduct.lockedInCost\n }\n }\n\n // ProductOfferingInfo\n if (props.product.id) {\n const offering = selectedProductOfferings.value.find((o) => o.id == props.product.id)\n return offering?.cost ?? null\n }\n\n return null\n })\n\n return {\n currentImg,\n images,\n showTestData,\n description,\n getPrices,\n getUnitDescription,\n }\n },\n})\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!./ProductDetail.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!./ProductDetail.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductDetail.vue?vue&type=template&id=7edff09e&scoped=true&\"\nimport script from \"./ProductDetail.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductDetail.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProductDetail.vue?vue&type=style&index=0&id=7edff09e&lang=scss&scoped=true&\"\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 \"7edff09e\",\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 { VCarousel } from 'vuetify/lib/components/VCarousel';\nimport { VCarouselItem } from 'vuetify/lib/components/VCarousel';\ninstallComponents(component, {VCarousel,VCarouselItem})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, PropType } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport ProductDetail from './ProductDetail.vue'\nimport { getEmptyProductOfferingInfo } from '@/lib/support/models/ProductOfferingInfo/ProductOfferingInfo'\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\nimport { ProductOfferingProductInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\nimport { StartupOrderProductInfo } from '@/GeneratedTypes/ListInfo/StartupOrderProductInfo'\nimport PackageIcon from '@/components/ProductFlow/ParticipantKitStepper/Packages/PackageIcon.vue'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport { ProdConfigTypes } from '@/lib/common/ProdConfigTypes'\n\nexport default defineComponent({\n name: 'EnlargeableProduct',\n components: {\n Modal,\n ProductDetail,\n PackageIcon,\n },\n props: {\n product: {\n type: Object as PropType,\n default: getEmptyProductOfferingInfo,\n required: false,\n },\n showPrice: { type: Boolean, default: true, required: false },\n },\n setup(props) {\n const logic = productFlowLogic()\n\n // apparently there are nameless products out there.\n const productName = computed(() => props.product.cmsProductName || 'N/A')\n\n const kits = computed(() => {\n const p = { ...props.product } as any\n if (p.hasOwnProperty('productPackages')) {\n return p.productPackages\n }\n return ''\n })\n\n const showIcons = computed(\n () => logic.isNewProdConfig.value || logic.prodConfigType.value == ProdConfigTypes.ESTIMATE\n )\n\n const isModalShown = ref(false)\n\n function showModal() {\n isModalShown.value = true\n }\n\n return {\n showIcons,\n kits,\n isModalShown,\n productName,\n showModal,\n }\n },\n})\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!./EnlargeableProduct.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!./EnlargeableProduct.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EnlargeableProduct.vue?vue&type=template&id=75e032da&\"\nimport script from \"./EnlargeableProduct.vue?vue&type=script&lang=ts&\"\nexport * from \"./EnlargeableProduct.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","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!./TheHeader.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CartLine.vue?vue&type=style&index=0&id=f2ed25d0&scoped=true&lang=scss&\"","import uuid from 'uuid'\n\nexport const getProps = () => ({\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n enabled: { type: Boolean, default: true, required: false },\n subText: { type: String, default: '', required: false },\n id: { type: String, default: () => uuid.v4(), required: false },\n name: { type: String, default: '', required: false },\n size: { type: String, default: '', required: false },\n subLabel: { type: String, default: '', required: false },\n subLabelInline: { type: Boolean, default: false, required: false },\n VeeValidateRules: { type: String, default: '', required: false },\n veeValidateMode: { type: String, default: 'aggressive', required: false },\n showHelp: { type: Boolean, default: false, required: false },\n wrapperClass: { type: String, default: '', required: false },\n subTextWithLink: { type: String, default: '', required: false },\n})\n","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!./Index.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Archive.vue?vue&type=style&index=0&id=eeb2ecd0&lang=scss&scoped=true&\"","import { xRunningOrder } from 'src/GeneratedTypes/xOrder/xRunningOrder'\nimport { OrderProduct } from 'src/models/Order/OrderProduct'\nimport { xRunningOrderLine } from 'src/GeneratedTypes/xOrder/xRunningOrderLine'\n\nexport interface xRunningOrderExt extends xRunningOrder {\n products: OrderProduct[]\n}\n\nexport interface xRunningOrderLineExt extends xRunningOrderLine {\n cmsProductDescription: string | null\n cmsProductImageUrls: string[] | null\n cmsProductName: string | null\n cmsSizingGuideUrl: string | null\n cmsUnitDescription: string | null\n colorDescription: string | null\n sizeDescription: string | null\n}\n\nexport interface CFormatRunningOrder extends Omit {\n orderLinesExt: xRunningOrderLineExt[]\n // seems this is present but null\n orderLines: null\n products: OrderProduct[] | null | undefined\n}\n\nexport interface RunningOrderLineRollupInfo {\n internalOrderPosition: number\n orderTypeID: string | null\n warehouseID: string | null\n typeProgramID: string | null\n upwardProductID: string | null\n productDescription: string | null\n quantity: number\n unitCost: number\n extendedCost: number\n orderTypeName: string | null\n warehouseName: string | null\n programName: string | null\n}\n\nexport interface xRunningOrderDetail {\n typeProgramID: string\n upwardOrderType: string\n upwardChallengeID: string\n orderCount: number\n participants: xRunningOrderDetailIndividual[]\n}\n\nexport interface xRunningOrderDetailIndividual {\n individualID: number\n name: string\n products: xRunningOrderDetailParticipantProduct[]\n}\n\nexport interface xRunningOrderDetailParticipantProduct {\n upwardProductID: string\n parentUpwardProductID: string\n typeProductOptionID: string\n typeColorID: string\n typeSizeID: string\n quantity: number\n isRequired: boolean\n cmsProductName: string\n cmsProductDescription: string\n cmsProductImageUrls: string[]\n}\n\nexport interface xRunningOrderDetailAddonProduct {\n id: number\n productID: number\n upwardProductID: string\n parentUpwardProductID: string\n typeColorID: string\n typeSizeID: string\n quantity: number\n cmsProductName: string\n cmsProductDescription: string\n cmsProductImageUrls: string[]\n}\n\nexport const ORDER_COUNT_NOT_INITIALIZED = 99e1\nexport function getEmptyRunningOrderDetail(challenge: string) {\n return {\n typeProgramID: 'NONE',\n upwardOrderType: 'RUNNINGORDER',\n upwardChallengeID: challenge,\n orderCount: ORDER_COUNT_NOT_INITIALIZED, // possible that this was throwing us into the wrong state.\n participants: [],\n } as xRunningOrderDetail\n}\n\nexport function getEmptyXRunningOrderDetailParticipantProduct(): xRunningOrderDetailParticipantProduct {\n return {\n upwardProductID: '',\n parentUpwardProductID: '',\n typeProductOptionID: 'INCLUDED',\n typeColorID: '',\n typeSizeID: '',\n quantity: 0,\n isRequired: true,\n cmsProductName: '',\n cmsProductDescription: '',\n cmsProductImageUrls: [],\n }\n}\n\nexport function getEmptyxRunningOrderDetailIndividual(): xRunningOrderDetailIndividual {\n return {\n individualID: 0,\n name: '',\n products: [],\n }\n}\n","export const GenderIdToText = (genderId: string | null) => {\n switch (genderId) {\n case 'M':\n return 'Boy'\n case 'F':\n return 'Girl'\n case 'E':\n return 'Both'\n case null:\n return ''\n default:\n return 'not found in getGender'\n }\n}\n\nexport enum Genders {\n female = 'F',\n male = 'M',\n both = 'E',\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"btn btn-link\",on:{\"click\":_vm.click}},[_c('i',{staticClass:\"fas fa-pencil-alt\",staticStyle:{\"cursor\":\"pointer\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'EditBnt',\n props: {},\n components: {},\n setup(props, { emit }) {\n function click() {\n emit('click')\n }\n return { click }\n },\n})\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!./EditBtn.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!./EditBtn.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditBtn.vue?vue&type=template&id=6d970e2b&\"\nimport script from \"./EditBtn.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditBtn.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('simple-grid',{attrs:{\"table-striped\":true,\"grid-columns\":_vm.columns,\"data\":_vm.internalEvaluation}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { GridColumn, GridColumnAlignEnum } from '@/models/Grid/GridColumn'\nimport { PlayerEvaluation } from '@/GeneratedTypes/PlayerEvaluation'\n\ntype OurEventType = (r: T, newval: number) => Promise | void\n\nfunction templateClosure(event: OurEventType) {\n return () => ({\n template: {\n props: { data: {} },\n\n template: `\n
\n \n
\n `,\n methods: {\n sendEvent(e: MouseEvent) {\n e.stopPropagation()\n e.preventDefault()\n //@ts-ignore -- data is a magic method on this template\n event(this.data && this.data, parseFloat((e.target as HTMLInputElement).value))\n },\n },\n },\n })\n}\n\nexport const EvaluationEditGridColumns = (event: OurEventType): GridColumn[] => [\n {\n field: 'activityText',\n headerText: 'Activity',\n textAlign: '',\n width: 200,\n format: '',\n } as GridColumn,\n {\n field: 'activityValue',\n headerText: 'Score',\n textAlign: GridColumnAlignEnum.RIGHT,\n width: 0,\n template: templateClosure(event),\n } as GridColumn,\n]\n","\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { PlayerEvaluation } from '@/GeneratedTypes/PlayerEvaluation'\nimport { EvaluationEditGridColumns } from '@/lib/components/PlayerEvaluationEditModal/EvaluationEditGridColumns'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport { isEqual } from 'lodash'\n\nexport default defineComponent({\n name: 'PlayerEvaluationEditGrid',\n components: {\n SimpleGrid,\n },\n props: {\n value: { type: Array as PropType, default: [] },\n },\n setup(props, ctx) {\n const columns = ref([])\n const updatingInternalEvaluation = ref(false)\n const internalEvaluation = ref([])\n\n function setEditValue(data: PlayerEvaluation, value: number) {\n const i = internalEvaluation.value.findIndex((x) => x.activityID == data.activityID)\n if (i >= 0) {\n internalEvaluation.value[i].activityValue = value\n }\n }\n\n function setInternalEvaluation() {\n updatingInternalEvaluation.value = true\n if (props.value) {\n // create an immutable representation so we don't have bugs backtracking\n internalEvaluation.value = props.value\n .map((x) => ({ ...x }))\n .sort((a, b) => a.sortOrder - b.sortOrder)\n }\n updatingInternalEvaluation.value = false\n }\n\n watch(\n () => props.value,\n () => {\n if (!isEqual(props.value, internalEvaluation.value)) {\n setInternalEvaluation()\n }\n }\n )\n\n watch(\n () => internalEvaluation.value,\n () => {\n if (!updatingInternalEvaluation.value && !isEqual(props.value, internalEvaluation.value)) {\n ctx.emit('input', internalEvaluation.value)\n }\n },\n { deep: true }\n )\n\n onMounted(() => {\n setInternalEvaluation()\n\n columns.value = EvaluationEditGridColumns(setEditValue)\n })\n\n return {\n columns,\n internalEvaluation,\n }\n },\n})\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!./PlayerEvaluationEditGrid.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!./PlayerEvaluationEditGrid.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PlayerEvaluationEditGrid.vue?vue&type=template&id=f0db9f60&\"\nimport script from \"./PlayerEvaluationEditGrid.vue?vue&type=script&lang=ts&\"\nexport * from \"./PlayerEvaluationEditGrid.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PlayerEvaluationEditGrid.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","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!./PlayerConflict.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('i',{staticClass:\"pr-2\",class:_vm.cssClasses})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nimport { productOfferingProductPackageTypes } from '@/store/productOfferingProductPackageTypes'\nexport default defineComponent({\n name: 'name',\n props: {\n packageId: { type: String, required: true },\n },\n components: {},\n setup(props) {\n const icon = computed(\n () =>\n productOfferingProductPackageTypes.state.items.find((p) => p.upwardTypeID == props.packageId)\n ?.icons ?? ''\n )\n const iconClass = computed(\n () =>\n productOfferingProductPackageTypes.state.items.find((p) => p.upwardTypeID == props.packageId)\n ?.class ?? ''\n )\n const cssClasses = computed(() => `${iconClass.value} ${icon.value}`)\n return { cssClasses }\n },\n})\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!./PackageIcon.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!./PackageIcon.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PackageIcon.vue?vue&type=template&id=d3ecaf5a&scoped=true&\"\nimport script from \"./PackageIcon.vue?vue&type=script&lang=ts&\"\nexport * from \"./PackageIcon.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PackageIcon.vue?vue&type=style&index=0&id=d3ecaf5a&lang=scss&scoped=true&\"\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 \"d3ecaf5a\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecentOrderHistoryPanel.vue?vue&type=style&index=0&lang=scss&\"","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardProductOfferingProductPackageTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProductOfferingProductPackageTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveProductOfferingProductPackageTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree<\n genericUpwardTypes.GenericTypeState,\n RootState\n> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree<\n genericUpwardTypes.GenericTypeState\n> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'productOfferingProductPackageTypes'\n\nexport const productOfferingProductPackageTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Resources.vue?vue&type=style&index=0&id=3a373f20&scoped=true&lang=scss&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tools.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row\"},[(_vm.currentOrderTemplate)?[_c('div',{staticClass:\"col-12 col-lg-8\"},[_c('div',{staticClass:\"row mt-3 mb-5\"},[_c('div',{staticClass:\"col\"},[_c('h5',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.title))]),_c('div',{staticClass:\"text-medium font-italic small\"},[_vm._v(_vm._s(_vm.getStepProperty('currentStep')))])]),_vm._m(0)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[(_vm.currentStep != _vm.steps.length)?_c('stepper',{attrs:{\"value\":parseInt(_vm.currentStep.toString()),\"vertical\":\"\"},on:{\"change\":_vm.nextStep}},_vm._l((_vm.steps),function(step,i){return _c('span',{key:step.label},[(i + 1 <= _vm.steps.length - 1)?_c('stepper-step',{attrs:{\"title\":step.title,\"step\":(i + 1).toString(),\"editable\":_vm.currentStep > 0 &&\n i <= _vm.maxTouchedStep &&\n _vm.minDisabledStep > i &&\n _vm.currentStep != _vm.steps.length,\"complete\":_vm.currentStep > 0 && i <= _vm.maxTouchedStep},on:{\"click\":function($event){return _vm.nextStep(1)}}}):_vm._e(),(i + 1 <= _vm.steps.length - 1)?_c('stepper-content',{attrs:{\"step\":(i + 1).toString(),\"default-button\":!step.providesNext || _vm.loading,\"button-label\":(\"Next: \" + (_vm.steps[i + 1] && _vm.steps[i + 1].title)),\"is-button-disabled\":_vm.loading || _vm.disabled.indexOf(i + 1) >= 0,\"is-active\":_vm.currentStep == i + 1},on:{\"goNext\":function($event){return _vm.nextStep(i + 2)}}},[(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),(!_vm.loading && _vm.currentStep == i + 1)?_c(step.component,{tag:\"component\",attrs:{\"league-i-d\":_vm.currentOrderTemplate.upwardLeagueID,\"account-number\":_vm.currentOrderTemplate.accountNumber,\"order-type\":_vm.orderType,\"selector-method\":_vm.productSelectorLogic},on:{\"on-disable\":function($event){return _vm.disable(i + 1)},\"on-enable\":function($event){return _vm.enable(i + 1)},\"go-next\":function($event){return _vm.nextStep(i + 2)}}}):_vm._e()],1):_vm._e()],1)}),0):_vm._e(),(_vm.currentStep == _vm.steps.length)?_c('div',[(!_vm.loading && _vm.currentStep == _vm.steps.length)?_c(_vm.steps[_vm.steps.length - 1].component,{tag:\"component\",attrs:{\"league-i-d\":_vm.currentOrderTemplate.upwardLeagueID,\"account-number\":_vm.currentOrderTemplate.accountNumber,\"order-type\":_vm.orderType,\"selector-method\":_vm.productSelectorLogic}}):_vm._e()],1):_vm._e()],1)])])]:_vm._e(),_c('div',{staticClass:\"col-12 col-lg-4 bg-light-1 p-0 mb-3\"},[_c('order-summary',{attrs:{\"title\":_vm.title,\"x-startup-order-ext\":_vm.orderInfo,\"read-only\":_vm.loading || _vm.currentStep == _vm.steps.length,\"products-selected\":_vm.productsSelected,\"selector-method\":_vm.productSelectorLogic}},[_c('cart',{attrs:{\"title\":_vm.title,\"read-only\":_vm.loading || _vm.currentStep == _vm.steps.length,\"x-startup-order-ext\":_vm.orderInfo,\"products-selected\":_vm.productsSelected,\"selector-method\":_vm.productSelectorLogic},on:{\"remove\":_vm.removeProduct}})],1)],1)],2)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-7\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"}),_c('div',{staticClass:\"col-6\"})])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('p',[_vm._v(\" Select which products you wish to order. You will select quantities in a later step of this process. \")]),_c('product-select',[_vm._l((_vm.currentOrderProducts),function(product,index){return [_c('selector-card',{key:(\"\" + (product.id ? product.id : product.upwardID)),attrs:{\"selectable\":\"\",\"is-selected\":_vm.isSelected(product)},on:{\"select\":function($event){return _vm.toggleProduct(product)}},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('EnlargeableProduct',{attrs:{\"product\":product}})]},proxy:true},{key:\"innerButton\",fn:function(){return [_vm._t(\"buttonLabel\",[_vm._v(\"Select\")]),(_vm.isSelected(product))?[_vm._v(\"ed\")]:_vm._e()]},proxy:true}],null,true)})]})],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\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport EnlargeableProduct from '@/components/ProductFlow/ParticipantKitStepper/ProductPickers/EnlargeableProduct.vue'\nimport ProductSelect from '@/components/Orders/ProductSelect.vue'\n\nimport { computed, defineComponent, watch } from '@vue/composition-api'\nimport { useProductSelector } from '@/views/Programs/Orders/compositions/useProductSelector'\nexport default defineComponent({\n components: {\n SelectorCard,\n ProductSelect,\n EnlargeableProduct,\n },\n\n setup(props, ctx) {\n //only two product selectors right now, one that is active and one that is a null-op\n //obviously if we are in a product selector having one that defaults all products\n //selected is a bad thing.\n const ps = useProductSelector()()\n\n const enabled = computed(() => ps.productsSelected.value.length > 0)\n watch(\n () => enabled.value,\n (b) => {\n if (b) {\n ctx.emit('on-enable')\n } else {\n ctx.emit('on-disable')\n }\n },\n { immediate: true }\n )\n\n return { ...ps }\n },\n})\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!./SelectKit.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!./SelectKit.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SelectKit.vue?vue&type=template&id=179c265a&\"\nimport script from \"./SelectKit.vue?vue&type=script&lang=ts&\"\nexport * from \"./SelectKit.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('div',[_c('shipping-address-section',{staticClass:\"mb-3\",attrs:{\"section-name\":\"Shipping Address\",\"value\":_vm.currentOrderShipTo,\"editable\":true},on:{\"save\":_vm.commitAddress}}),_c('memo-input',{staticClass:\"w-50 mt-3 pl-3\",attrs:{\"label\":\"Special Requests for UPWARD Sports\",\"rows\":5,\"placeholder\":\"FedEx does not accept delivery instructions from us, but if you have special requests for Upward, please include them here.\",\"value\":_vm.currentOrderNotes},on:{\"input\":_vm.specialRequestChange}}),_c('text-input',{attrs:{\"label\":\"Optional Purchase Order\",\"placeholder\":\"Purchase Order #\",\"maxlength\":\"35\",\"value\":_vm.currentOrderTemplate.purchaseOrderNumber},on:{\"input\":_vm.purchaseOrderNumberChanged}})],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\nimport { defineComponent, computed } from '@vue/composition-api'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport ShippingAddressSection from '@/components/ShippingAddressSection.vue'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport { xShipToBase } from '@/GeneratedTypes/xOrder/xShipToBase.ts'\nimport store from '@/store'\nimport TextInput from '@/elements/TextInput.vue'\n\nexport default defineComponent({\n name: 'Shipping',\n components: {\n MemoInput,\n ShippingAddressSection,\n TextInput,\n },\n setup(props, ctx) {\n const currentOrderShipTo = computed(() => store.getters.orders.currentOrderShipTo)\n const currentOrderTemplate = computed(() => store.getters.orders.currentOrderTemplate)\n const currentOrderNotes = computed(() => store.getters.orders.currentOrderNotes)\n\n const orderType = computed(() => ctx.root.$route.params.orderType as OrderTypesEnum)\n\n function commitAddress(address: xShipToBase) {\n store.commit.orders.setCurrentOrderShipTo({ orderType: orderType.value, item: address })\n }\n\n function specialRequestChange(newValue: string) {\n store.commit.orders.setCurrentOrderNotes({ orderType: orderType.value, item: newValue })\n }\n\n function purchaseOrderNumberChanged(newValue: string) {\n store.commit.orders.setPurchaseOrderNumber({ orderType: orderType.value, item: newValue })\n }\n\n return {\n currentOrderShipTo,\n commitAddress,\n currentOrderNotes,\n specialRequestChange,\n currentOrderTemplate,\n purchaseOrderNumberChanged,\n }\n },\n})\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!./Shipping.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!./Shipping.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Shipping.vue?vue&type=template&id=0f0f74a2&\"\nimport script from \"./Shipping.vue?vue&type=script&lang=ts&\"\nexport * from \"./Shipping.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('div',[_c('shipping-address-section',{staticClass:\"mb-3\",attrs:{\"section-name\":'Shipping Address & Special Request',\"value\":_vm.currentOrderShipTo}}),(_vm.currentOrderNotes)?_c('div',[_c('input-label',{staticClass:\"pl-3\",attrs:{\"label\":\"Special Request\"}}),_c('div',{staticClass:\"col-6 small pl-4\"},[_vm._v(_vm._s(_vm.currentOrderNotes))])],1):_vm._e(),(_vm.currentOrderShippingMethods.length > 1)?_c('shipping-method-section',{staticClass:\"mt-4\",attrs:{\"value\":_vm.currentOrderShippingMethods},on:{\"input\":_vm.update}}):_vm._e(),_c('order-list-section',{attrs:{\"selectorMethod\":_vm.selectorMethod,\"order-product-list\":_vm.currentOrderProducts,\"section-name\":\"Items\"}}),_c('button',{staticClass:\"v-btn v-btn--contained theme--light v-size--default success button btn-success\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.goNext}},[_vm._v(\" Submit Order \")])],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\nimport SectionHeader from '@/components/SectionHeader.vue'\nimport ShippingAddressSection from '@/components/ShippingAddressSection.vue'\nimport ShippingMethodSection from '@/components/ShippingMethodSection.vue'\nimport OrderListSection from '@/components/Orders/OrderListSection.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { xShipMethodBase } from '@/GeneratedTypes/xOrder/xShipMethodBase'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport { ProductSelectorLogic } from '@/views/Programs/Orders/compositions/useProductSelector'\nimport store from '@/store'\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\n\nexport default defineComponent({\n components: {\n SectionHeader,\n ShippingAddressSection,\n ShippingMethodSection,\n OrderListSection,\n InputLabel,\n },\n\n props: {\n selectorMethod: {\n type: Function as PropType,\n\n required: true,\n },\n orderType: { type: String as PropType, required: true },\n },\n setup(props, ctx) {\n const currentOrderShipTo = computed(() => store.getters.orders.currentOrderShipTo)\n const currentOrderShippingMethods = computed(() => store.getters.orders.currentOrderShippingMethods)\n const currentOrderProducts = computed(() => store.getters.orders.currentOrderProducts)\n const currentOrderNotes = computed(() => store.getters.orders.currentOrderNotes)\n const setCurrentOrderShippingMethods = store.commit.orders.setCurrentOrderShippingMethods\n\n function update(value: xShipMethodBase[]) {\n setCurrentOrderShippingMethods({ orderType: props.orderType as OrderTypesEnum, item: value })\n }\n function goNext() {\n ctx.emit('go-next')\n }\n\n return {\n goNext,\n update,\n currentOrderProducts,\n currentOrderShippingMethods,\n currentOrderNotes,\n currentOrderShipTo,\n }\n },\n})\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!./Review.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!./Review.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Review.vue?vue&type=template&id=2c00f06c&\"\nimport script from \"./Review.vue?vue&type=script&lang=ts&\"\nexport * from \"./Review.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('div',[_c('h1',{staticClass:\"border-bottom pb-2\"},[_vm._v(\"Order Confirmation\")]),(!_vm.lastCompletedOrder)?_c('div',{staticClass:\"border rounded p-5 text-center\"},[_vm._v(\"Please check Order History.\")]):_vm._e(),(_vm.lastCompletedOrder)?_c('div',[_c('div',{staticClass:\"row mb-4\"},[_c('div',{staticClass:\"d-flex flex-column align-items-center col\"},[_c('h6',{staticClass:\"text-muted mb-5\"},[_vm._v(\"Thank You For Placing Your Order\")]),(_vm.lastCompletedOrder && _vm.lastCompletedOrder.upwardOrderType !== 'RETURNORDER')?_c('div',{staticClass:\"alert-warning px-5 py-2 text-center mb-3 clean-print\"},[_c('div',[_vm._v(\"This is not an invoice.\")]),_c('div',{staticClass:\"small\"},[_vm._v(\"Your order may arrive via multiple shipments.\")])]):_vm._e()]),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"layout\"},[_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Details\")]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Type: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderType))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Order Number: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.lastCompletedOrder.upwardOrderID))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Order Date: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.lastCompletedOrder.clientOrderDate,'MMM dd, yyyy')))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Placed By: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.lastCompletedOrder.accountNumber))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"League ID: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.lastCompletedOrder.upwardLeagueID))])])]),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Shipping Details\")]),_c('div',{staticClass:\"label mt-3\"},[_vm._v(\"Special Request\")]),_c('div',{staticClass:\"field\"},[_vm._v(_vm._s((\"\" + (_vm.lastCompletedOrder.notes ? _vm.lastCompletedOrder.notes : 'none'))))]),(_vm.lastCompletedOrder.purchaseOrderNumber)?_c('div',[_c('div',{staticClass:\"label mt-3\"},[_vm._v(\"Purchase Order Number\")]),_c('div',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.lastCompletedOrder.purchaseOrderNumber))])]):_vm._e(),_c('div',{staticClass:\"label mt-3\"},[_vm._v(\"Shipping Method\")]),_vm._l((_vm.shippingMethods),function(method,index){return _c('div',{key:index},[(method.selected)?_c('div',[_c('div',{staticClass:\"field\"},[_c('span',[_vm._v(_vm._s(method.description))]),(method.extendedDescription)?_c('span',[_vm._v(\" (\"+_vm._s(method.extendedDescription)+\")\")]):_vm._e()])]):_vm._e()])})],2),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Ship To\")]),_c('shipping-address-display',{staticClass:\"small text-muted\",attrs:{\"value\":_vm.lastCompletedOrder.shippingInfo.shipTo}})],1)])])]),_c('order-list-section',{attrs:{\"order-product-list\":_vm.lastCompletedOrder.products,\"section-name\":\"Items\",\"selector-method\":_vm.selectorMethod}})],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\nimport { Component, Vue } from 'vue-property-decorator'\nimport SectionHeader from '@/components/SectionHeader.vue'\nimport ShippingAddressSection from '@/components/ShippingAddressSection.vue'\nimport ShippingAddressDisplay from '@/components/ShippingAddressDisplay.vue'\nimport { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport * as ordersStore from '@/store/orders'\nimport OrderListSection from '@/components/Orders/OrderListSection.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { Getter } from 'vuex-class'\nimport date from '@/filters/date'\nimport { computed } from '@vue/composition-api'\nimport { useNoProductSelector } from '@/views/Programs/Orders/compositions/useProductSelector'\nimport { SectionNameConversion } from '@/views/Programs/Orders/vues/history/ext/SectionNames'\n\n@Component({\n components: {\n SectionHeader,\n ShippingAddressSection,\n OrderListSection,\n InputLabel,\n ShippingAddressDisplay,\n },\n filters: {\n date,\n },\n})\nexport default class Confirmation extends Vue {\n @Getter(ordersStore.getterNames.lastCompletedOrder, { namespace: ordersStore.namespace })\n private readonly lastCompletedOrder!: xStartupOrderExt\n\n private get orderType() {\n return SectionNameConversion[this.lastCompletedOrder.upwardOrderType ?? '']\n }\n\n private get selectorMethod() {\n return useNoProductSelector({ currentOrderProductsRef: computed(() => this.lastCompletedOrder.products) })\n }\n\n private get shippingMethods() {\n if (\n !this.lastCompletedOrder ||\n !this.lastCompletedOrder.shippingInfo ||\n !this.lastCompletedOrder.shippingInfo.shipMethods\n )\n return\n\n return this.lastCompletedOrder.shippingInfo.shipMethods.filter((method) => {\n return method.selected\n })\n }\n}\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!./Confirmation.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!./Confirmation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Confirmation.vue?vue&type=template&id=4aa3c49a&scoped=true&\"\nimport script from \"./Confirmation.vue?vue&type=script&lang=ts&\"\nexport * from \"./Confirmation.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Confirmation.vue?vue&type=style&index=0&id=4aa3c49a&scoped=true&lang=scss&\"\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 \"4aa3c49a\",\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('product-select',[_c('div',{staticClass:\"mb-4 flex-column product-select-css-grid\"},[_vm._l((_vm.currentOrderProducts),function(product,index){return [(_vm.isSelected(product) && product.productColorSizes && product.productColorSizes.length)?_c('product-quantity-selector',{key:(\"qty-\" + (product.id)),attrs:{\"valid-sizes\":_vm.sizes,\"product\":_vm.currentOrderProducts[index],\"showIsFreeCheckbox\":_vm.showIsFreeCheckbox,\"isFreeCheckboxDefault\":_vm.isErrorOrder},on:{\"product-update\":_vm.update}}):_vm._e()]})],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\nimport { getFilteredProductList, OrderProductLine } from '@/models/Order/OrderProduct.ts'\nimport store from '@/store'\nimport { computed, defineComponent, onMounted, PropType, ref, watch } from '@vue/composition-api'\nimport { ProductSelectorLogic } from '@/views/Programs/Orders/compositions/useProductSelector'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport ProductQuantitySelector from '@/views/Programs/Orders/vues/components/ProductQuantitySelector.vue'\nimport ProductSelect from '@/components/Orders/ProductSelect.vue'\nimport ordersClient from '@/clients/ordersClient'\nimport { UpwardSizeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardSizeTypeID'\n\nexport default defineComponent({\n name: 'SelectQuantities',\n components: {\n ProductSelect,\n ProductQuantitySelector,\n },\n props: {\n selectorMethod: { type: Function as PropType, required: true },\n orderType: { type: String as PropType, required: true },\n },\n\n setup(props, ctx) {\n const currentOrderProducts = computed(() => store.getters.orders.currentOrderProducts)\n const setProductQuantity = store.dispatch.orders.setProductQuantity\n const ps = props.selectorMethod()\n const sizes = ref([])\n\n onMounted(async () => {\n sizes.value = await ordersClient.getSizes()\n })\n computed(async () => {\n return await ordersClient.getSizes()\n })\n const hasQuantities = computed(\n () => !!getFilteredProductList(currentOrderProducts.value, ps.isSelected).length\n )\n const showIsFreeCheckbox = computed(() => props.orderType == OrderTypesEnum.manual)\n\n const isErrorOrder = computed(\n () =>\n props.orderType == OrderTypesEnum.manual &&\n (store.getters.orders.currentOrderInternalOrderType ?? '').startsWith('X')\n )\n\n /**\n * Disable or enable the next button based on product quantities selected.\n */\n watch(\n () => hasQuantities.value,\n (b) => {\n if (b) {\n ctx.emit('on-enable')\n } else {\n ctx.emit('on-disable')\n }\n },\n { immediate: true }\n )\n\n /**\n * Update the store with the quantity specified.\n * @param product\n */\n async function update(product: OrderProductLine) {\n await setProductQuantity({\n orderType: props.orderType,\n productID: product.id,\n colorID: product.productColorSize.typeColorID,\n sizeID: product.productColorSize.typeSizeID,\n quantity: product.orderQuantity,\n quantityFree: product.orderFreeQuantity,\n })\n }\n\n return { update, ...ps, sizes, showIsFreeCheckbox, isErrorOrder }\n },\n})\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!./SelectQuantities.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!./SelectQuantities.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SelectQuantities.vue?vue&type=template&id=6f818fc7&scoped=true&\"\nimport script from \"./SelectQuantities.vue?vue&type=script&lang=ts&\"\nexport * from \"./SelectQuantities.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SelectQuantities.vue?vue&type=style&index=0&id=6f818fc7&lang=scss&scoped=true&\"\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 \"6f818fc7\",\n null\n \n)\n\nexport default component.exports","import { VueConstructor } from 'vue/types/umd'\nimport SelectKit from '@/views/Programs/Orders/orders/steps/SelectKit.vue'\nimport SelectPromoCards from '@/views/Programs/Orders/orders/steps/SelectPromoCards.vue'\nimport Shipping from '@/views/Programs/Orders/orders/steps/Shipping.vue'\nimport Review from '@/views/Programs/Orders/orders/steps/Review.vue'\nimport Confirmation from '@/views/Programs/Orders/orders/steps/Confirmation.vue'\nimport {\n ProductSelectorLogicGenerator,\n useNoProductSelector,\n useProductSelector,\n} from '@/views/Programs/Orders/compositions/useProductSelector'\nimport SelectQuantities from '@/views/Programs/Orders/orders/steps/SelectQuantities.vue'\nimport SelectManualOrderType from '@/views/Programs/Orders/orders/steps/SelectManualOrderType.vue'\n\nexport interface StepProperties {\n //** label to attach\n label: string\n //** step to use\n title: string\n //** component to render to complete step -- note these components (can) take league and account and emit events on-enable and on-disable\n component: VueConstructor\n //** provides the next button, don't draw it.\n providesNext?: boolean\n}\n\ninterface OrderConfiguration {\n steps: StepProperties[]\n productSelectorLogicGenerator: ProductSelectorLogicGenerator\n}\n\nexport const ConfigurationWithPromoCard: OrderConfiguration = {\n steps: [\n {\n label: 'SELECT',\n title: 'Select Products',\n component: SelectKit,\n },\n\n {\n label: 'CUSTOMIZE',\n title: 'Custom Print Items',\n component: SelectPromoCards,\n },\n {\n label: 'QUANTIFY',\n title: 'Select Product Quantities',\n component: SelectQuantities,\n },\n {\n label: 'SHIPPING',\n title: 'Confirm Your Shipping Address',\n component: Shipping,\n },\n {\n label: 'REVIEW',\n title: 'Review Your Order',\n component: Review,\n providesNext: true,\n },\n {\n label: 'CONFIRM',\n title: 'Confirmation',\n component: Confirmation,\n providesNext: true,\n },\n ],\n productSelectorLogicGenerator: useProductSelector,\n}\nexport const ConfigurationWithoutPromoCard: OrderConfiguration = {\n steps: [\n {\n label: 'SELECT',\n title: 'Select Product Quantities',\n component: SelectQuantities,\n },\n {\n label: 'SHIPPING',\n title: 'Confirm Your Shipping Address',\n component: Shipping,\n },\n {\n label: 'REVIEW',\n title: 'Review Your Order',\n component: Review,\n providesNext: true,\n },\n {\n label: 'CONFIRM',\n title: 'Confirmation',\n component: Confirmation,\n providesNext: true,\n },\n ],\n productSelectorLogicGenerator: useNoProductSelector,\n}\n\nexport const ConfigurationForManualOrder: OrderConfiguration = {\n steps: [\n {\n label: 'ORDERTYPE',\n title: 'Select Order Type',\n component: SelectManualOrderType,\n },\n {\n label: 'SELECT',\n title: 'Select Product Quantities',\n component: SelectQuantities,\n },\n {\n label: 'SHIPPING',\n title: 'Confirm Your Shipping Address',\n component: Shipping,\n },\n {\n label: 'REVIEW',\n title: 'Review Your Order',\n component: Review,\n providesNext: true,\n },\n {\n label: 'CONFIRM',\n title: 'Confirmation',\n component: Confirmation,\n providesNext: true,\n },\n ],\n productSelectorLogicGenerator: useNoProductSelector,\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Stepper from '@/elements/Stepper.vue'\n\nimport { Component, Emit, Prop, Vue, Watch } from 'vue-property-decorator'\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport { Getter } from 'vuex-class'\nimport * as ordersStore from '@/store/orders'\nimport { OrderProductSelection } from '@/store/orders'\nimport { OrderProduct, OrderProductLine } from '@/models/Order/OrderProduct.ts'\nimport { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport OrderSummary from '@/components/Orders/OrderSummary.vue'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport StepperStep from '@/elements/StepperStep.vue'\nimport StepperContent from '@/elements/StepperContent.vue'\nimport { getEmptyXStartupOrderExt } from '@/lib/support/models/GeneratedTypes/xOrders/xStartupOrderExt'\nimport store from '@/store'\nimport {\n ConfigurationWithoutPromoCard,\n ConfigurationWithPromoCard,\n ConfigurationForManualOrder,\n StepProperties,\n} from '@/views/Programs/Orders/orders/lib/OrderConfiguration'\nimport Cart from '@/components/Orders/Cart.vue'\nimport { Route } from 'vue-router'\nimport { useNoProductSelector } from '@/views/Programs/Orders/compositions/useProductSelector'\nimport { computed } from '@vue/composition-api'\n\n@Component({\n components: {\n Loading,\n TextInput,\n Stepper,\n StepperContent,\n Cart,\n StepperStep,\n OrderSummary,\n },\n})\nexport default class Order extends Vue {\n @Prop({ type: String, required: true })\n orderType!: OrderTypesEnum\n // optional string, when it changes we look for a step and see if we can advance there.\n @Prop({ type: String, required: false, default: '' })\n orderStep!: string\n\n retrieveAndSetAsCurrent = store.dispatch.orders.retrieveAndSetAsCurrent\n retrieveLastOrder = store.dispatch.orders.retrieveLastOrder\n validateOrder = store.dispatch.orders.validateOrder\n createOrder = store.dispatch.orders.createOrder\n setProductQuantity = store.dispatch.orders.setProductQuantity\n resetSalesTaxAndShipping = store.commit.orders.resetSalesTaxAndShipping\n\n @Getter(ordersStore.getterNames.currentOrderProducts, { namespace: ordersStore.namespace })\n private readonly currentOrderProducts!: OrderProduct[]\n\n @Getter(ordersStore.getterNames.productsSelected, { namespace: ordersStore.namespace })\n private readonly productsSelected!: OrderProductSelection[]\n\n @Getter(ordersStore.getterNames.currentOrderTemplate, { namespace: ordersStore.namespace })\n private readonly currentOrderTemplate!: xStartupOrderExt\n\n @Getter(ordersStore.getterNames.lastCompletedOrder, { namespace: ordersStore.namespace })\n private readonly lastCompletedOrder!: xStartupOrderExt\n\n private loading = false\n\n disabled: number[] = []\n\n get productSelectorLogic() {\n if (this.currentStep == this.steps.length) {\n return useNoProductSelector({\n currentOrderProductsRef: computed(() => store.getters.orders.currentOrderProducts),\n })\n }\n return this.orderConfig.productSelectorLogicGenerator({\n currentOrderProductsRef: computed(() => store.getters.orders.currentOrderProducts),\n })\n }\n\n private async mounted() {\n // the first declaration sets the type, the second sets the bound methods.\n this.retrieveAndSetAsCurrent = store.dispatch.orders.retrieveAndSetAsCurrent\n this.retrieveLastOrder = store.dispatch.orders.retrieveLastOrder\n this.validateOrder = store.dispatch.orders.validateOrder\n this.createOrder = store.dispatch.orders.createOrder\n this.setProductQuantity = store.dispatch.orders.setProductQuantity\n this.resetSalesTaxAndShipping = store.commit.orders.resetSalesTaxAndShipping\n\n await this.reloadOrder()\n }\n\n private get title() {\n switch (this.orderType) {\n case OrderTypesEnum.gameday:\n return 'Merchandise Order'\n case OrderTypesEnum.startup:\n return 'Startup Order'\n case OrderTypesEnum.clinic:\n return 'Clinic Order'\n case OrderTypesEnum.manual:\n return 'Manual Order'\n }\n }\n\n /**\n * load order into store.\n */\n async reloadOrder() {\n this.loading = true\n await this.retrieveAndSetAsCurrent({ id: this.$route.params.id, orderType: this.orderType })\n\n //In case this is a browser refresh after an order has\n // been placed, go get the data from the last order.\n // This information is used on the confirmation page.\n await this.retrieveLastOrder({ orderType: this.orderType, upwardLeagueID: this.$route.params.id })\n this.loading = false\n }\n\n @Watch('$route')\n routeChanged(newroute: Route, oldroute: Route) {\n if (\n newroute.params.step == this.steps[0].label.toLocaleLowerCase() &&\n oldroute.params.step == this.steps[this.steps.length - 1].label.toLocaleLowerCase()\n ) {\n this.resetState()\n }\n if (\n this.currentOrderTemplate &&\n this.orderType == this.currentOrderTemplate.upwardOrderType &&\n newroute.params.step == this.steps[0].label.toLocaleLowerCase()\n ) {\n this.resetSalesTaxAndShipping({ orderType: this.orderType })\n }\n }\n\n @Watch('orderType')\n orderTypeChanged() {\n if (this.orderType) {\n this.resetState()\n this.reloadOrder()\n }\n }\n\n @Watch('currentStep', { immediate: true })\n currentStepChanged() {\n this.orderStepChanged()\n }\n\n /***\n * Communicates with the outside component, which might change route, or ignore the event\n */\n @Emit()\n orderStepChanged() {\n //0-index array steps are 1...n\n return this.steps[this.currentStep - 1].label\n }\n\n @Watch('orderStep')\n orderStepUpdated(step: string) {\n const stepIndex = this.steps.findIndex((x) => x.label.toLocaleUpperCase() == step.toLocaleUpperCase())\n if (stepIndex >= 0) {\n //0-index array but steps are 1...n\n if (stepIndex + 1 != this.currentStep) {\n this.nextStep(stepIndex + 1)\n }\n }\n }\n\n /**\n * Remove product will be a normalized product\n */\n removeProduct(p: OrderProductLine) {\n this.setProductQuantity({\n orderType: this.orderType,\n productID: p.id,\n sizeID: p.productColorSize.typeSizeID, //should be normalized by caller to have 1-index\n colorID: p.productColorSize.typeColorID,\n quantity: 0,\n quantityFree: 0,\n })\n }\n\n resetState() {\n this.currentStep = 1\n this.maxTouchedStep = 1\n this.disabled = []\n }\n\n /**\n * Gets the order steps and selection logic\n */\n private get orderConfig() {\n if (this.orderType == OrderTypesEnum.manual) {\n return ConfigurationForManualOrder\n }\n\n if (!this.currentOrderProducts || this.currentOrderProducts.length == 0) {\n return ConfigurationWithoutPromoCard\n }\n\n if (this.currentOrderProducts.find((x) => x.upwardProductID == 'PROMOCARD')) {\n return ConfigurationWithPromoCard\n } else {\n return ConfigurationWithoutPromoCard\n }\n }\n\n /**\n * Order steps are calculated from the product list.\n */\n private get steps() {\n return this.orderConfig.steps\n }\n /**\n * @todo waiting on #2506 not to return an error\n */\n private orderingWorks = true\n\n private async retrieveTaxesAndShipping() {\n if (this.orderingWorks) {\n this.loading = true\n try {\n await this.validateOrder({ orderType: this.orderType, id: this.$route.params.id })\n } finally {\n this.loading = false\n }\n }\n }\n\n private get minDisabledStep() {\n if (this.disabled.length) {\n return this.disabled.sort((a, b) => (a == b ? 0 : a > b ? 1 : -1))[0]\n }\n return Number.MAX_SAFE_INTEGER\n }\n\n private get isOnLastStep() {\n return this.currentStep == this.steps.length\n }\n\n private get orderInfo() {\n if (this.isOnLastStep) {\n return this.lastCompletedOrder || getEmptyXStartupOrderExt()\n } else {\n return this.currentOrderTemplate\n }\n }\n\n private async placeOrder() {\n if (this.orderingWorks) {\n this.loading = true\n try {\n await this.createOrder({ id: this.$route.params.id, orderType: this.orderType })\n } finally {\n this.loading = false\n }\n }\n }\n\n enable(step: number) {\n this.disabled = this.disabled.filter((x) => x != step)\n }\n\n disable(step: number) {\n this.disabled = this.disabled.filter((x) => x != step)\n this.disabled.push(step)\n }\n\n /**\n * pulls a property from the steps.\n * @param key\n * @private\n */\n private getStepProperty(key: keyof StepProperties) {\n const index = this.currentStep\n if (!this.steps || index < 1 || index > this.steps.length) {\n return ''\n }\n\n return this.steps[index - 1][key]\n }\n\n /**\n * Current step is 0 for uninitialized, and n+1 in the step array.\n * @private\n */\n private currentStep = 1\n\n /**\n * Set current step, 0=uninitialized, 1 corresponds to the step array above.\n * @param n step\n * @private\n */\n private async nextStep(n: number) {\n // if we are confirming an order then set the place order.\n if (this.steps[n - 1].label == 'CONFIRM') {\n await this.placeOrder()\n }\n if (this.steps[n - 1].label == 'REVIEW' /*|| this.steps[n - 1].label == 'SHIPPING'*/) {\n await this.retrieveTaxesAndShipping()\n }\n\n // if we are on the last step, can't undo.\n if (this.currentStep < this.steps.length) {\n this.currentStep = n\n this.maxTouchedStep = Math.max(this.currentStep, this.maxTouchedStep)\n }\n }\n\n private maxTouchedStep = 1\n}\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!./Order.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!./Order.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Order.vue?vue&type=template&id=47a98b23&scoped=true&\"\nimport script from \"./Order.vue?vue&type=script&lang=ts&\"\nexport * from \"./Order.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Order.vue?vue&type=style&index=0&id=47a98b23&lang=scss&scoped=true&\"\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 \"47a98b23\",\n null\n \n)\n\nexport default component.exports","export function cleanPhoneNumber(phoneNumber: string | null): string | null {\n if (!phoneNumber) {\n return phoneNumber\n }\n\n const digits = phoneNumber.match(/\\d/g)\n return digits!.join('')\n}\n\n/***\n * Returns a formatted phone number\n * @param phoneAndAreaCode\n */\nexport function formatPhoneNumber(phoneAndAreaCode: string) {\n const cleanPhone = cleanPhoneNumber(phoneAndAreaCode) || ''\n\n if (cleanPhone.length === 10) {\n return `(${cleanPhone.substring(0, 3)}) ${cleanPhone.substring(3, 6)}-${cleanPhone.substring(6, 10)}`\n }\n\n if (cleanPhone.length === 7) {\n return `${cleanPhone.substring(0, 3)}-${cleanPhone.substring(3, 7)}`\n }\n\n return cleanPhone\n}\n","export enum LeagueTypeEnum {\n CAMP,\n LEAGUE,\n CLINIC,\n CONNECT,\n RUNNING,\n}\n","import Vue from 'vue'\nimport { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\n\nimport { AccountInfo } from '@/GeneratedTypes/ListInfo/AccountInfo'\nimport partnersClient from '@/clients/partnersClient'\n\nimport { ActionsImpl } from 'direct-vuex'\n\ninterface NearByAccountsState {\n items: { [id: string]: AccountInfo[] } // key is leagueUpwardTypeId\n}\n\nconst nearByAccountsState: NearByAccountsState = {\n items: {},\n}\n\nexport enum getterNames {\n getAccountsInRadius = 'getAccountsInRadius',\n}\n\nconst getters: GetterTree = {\n [getterNames.getAccountsInRadius]: (state) => (accountNumber: string) => {\n return state.items[accountNumber] || []\n },\n}\n\nexport enum mutationNames {\n setAccountsInRadius = 'setAccountsInRadius',\n}\n\nconst mutations: MutationTree = {\n [mutationNames.setAccountsInRadius](state, { items, accountNumber }) {\n Vue.set(state.items, accountNumber, items)\n },\n}\n\nexport enum actionNames {\n fetchAccountsInRadius = 'fetchAccountsInRadius',\n}\n\nconst actions: ActionTree & ActionsImpl = {\n async [actionNames.fetchAccountsInRadius]({ commit, state }, { accountNumber, force = false }) {\n const archived = state.items[accountNumber] || []\n\n if (archived.length && !force) {\n return false\n }\n\n const items = await partnersClient.getAccountsNearBy(accountNumber)\n\n if (items) {\n commit(mutationNames.setAccountsInRadius, { items, accountNumber })\n return true\n }\n\n return false\n },\n}\n\nexport const namespace = 'partnerNearByAccounts'\n\nexport const partnerNearByAccounts = {\n namespaced: true as true,\n state: nearByAccountsState,\n getters,\n actions,\n mutations,\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=1&lang=scss&\"","import restService from '@/services/restService'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { RunningOrderProductInfo } from '@/GeneratedTypes/ListInfo/RunningOrderProductInfo'\nimport {\n CFormatOrder,\n xRunningStartupOrderExt,\n OrderLineRollupInfo,\n} from '@/models/UpwardRunning/Order/xRunningStartupOrderExt'\nimport { xRunningOrderExt } from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport { xRunningStartupOrder } from '@/GeneratedTypes/xOrder/xRunningStartupOrder'\nimport { ToXRunningStartupOrder } from '@/lib/support/models/GeneratedTypes/xOrders/xRunningStartupOrderExt'\nimport {\n xRunningOrderDetail,\n xRunningOrderDetailAddonProduct,\n} from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport { xShippingInfoBase } from '@/GeneratedTypes/xOrder/xShippingInfoBase'\nimport { RunningOrderInfo } from '@/GeneratedTypes/Running/ListInfo/RunningOrderInfo'\n\nconst baseUrl = 'orders/runningOrder/'\n\nclass RunningOrderClientException extends GeneralError {\n name = 'Order Client API Error'\n}\n\nexport interface ValidateRunningOrderShippingPayload {\n upwardChallengeID: string\n accountNumber: string\n notes: string\n purchaseOrderNumber: string\n shippingInfo: xShippingInfoBase\n processingInstructions: string[]\n}\n\nconst getRunningOrderProductList = async (typeLeagueID: string, startDate: Date) => {\n let dt: string | null = null\n dt = convertToLocalDateString(startDate)\n if (!dt) throw new Error('upwardRunningOrderClient.getRunningOrderProductList: missing startDate')\n const products = await restService.get(\n `${baseUrl}products/${typeLeagueID}/${dt}`\n )\n if (products.isSuccess) {\n return products.data ?? ([] as RunningOrderProductInfo[])\n }\n\n throw new RunningOrderClientException('Trouble pending return products')\n}\n\nconst verificationDetails = async (id: string, order: xRunningStartupOrderExt) => {\n const convertedOrder = ToXRunningStartupOrder(order)\n const results = await restService.post(\n `${baseUrl}${id}/verificationDetails`,\n convertedOrder\n )\n if (results.isSuccess) {\n return results.data?.model as xRunningStartupOrder\n } else {\n throw new RunningOrderClientException('Error in upwardRunningOrderClient.verificationDetails')\n }\n}\n\nconst confirmOrder = async (p: ValidateRunningOrderShippingPayload) => {\n const si = await restService.post(`${baseUrl}${p.upwardChallengeID}`, {\n ...p,\n upwardOrderType: 'RUNNINGORDER',\n })\n\n if (si.isSuccess && si.data) {\n return si.data\n }\n\n throw new RunningOrderClientException('Verification error on order')\n}\n\nconst validateOrderShipping = async (p: ValidateRunningOrderShippingPayload) => {\n const si = await restService.post<{ brokenRules: string[]; model: xRunningStartupOrderExt }>(\n `${baseUrl}${p.upwardChallengeID}/verificationDetails`,\n {\n ...p,\n upwardOrderType: 'RUNNINGORDER',\n }\n )\n\n if (si.isSuccess && si.data) {\n return si.data?.model\n }\n\n throw new RunningOrderClientException('Verification error on order')\n}\n\nconst createOrder = async (id: string, order: xRunningStartupOrderExt) => {\n const convertedOrder = ToXRunningStartupOrder(order)\n const results = await restService.post(`${baseUrl}${id}`, convertedOrder)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new RunningOrderClientException('Error in upwardRunningOrderClient.createOrder')\n }\n}\n\nconst getOrder = async ({ challengeID, id }: { challengeID: string; id: string }) => {\n const url = `${baseUrl}${challengeID}/${id}`\n const results = await restService.get(url, { format: 'c' })\n if (results.isSuccess) {\n return results.data\n }\n throw new RunningOrderClientException(`could not gather order information for ${challengeID} and ${id}`)\n}\n\nconst getxOrder = async ({ challengeID, id }: { challengeID: string; id: string }) => {\n const url = `${baseUrl}${challengeID}/${id}`\n const results = await restService.get(url, { format: 'x' })\n if (results.isSuccess) {\n return results.data\n }\n throw new RunningOrderClientException(`could not gather order information for ${challengeID} and ${id}`)\n}\n\nconst getOrderRollup = async ({ challengeID, id }: { challengeID: string; id: string }) => {\n const url = `${baseUrl}${challengeID}/${id}`\n const results = await restService.get(url, { format: 'r' })\n if (results.isSuccess) {\n return results.data\n }\n throw new RunningOrderClientException(`could not gather order information for ${challengeID} and ${id}`)\n}\n\nconst getOrderInfo = async ({ challengeID, id }: { challengeID: string; id: string }) => {\n const url = `${baseUrl}${challengeID}/${id}`\n const results = await restService.get(url, { format: 'i' })\n if (results.isSuccess) {\n return results.data\n }\n throw new RunningOrderClientException(`could not gather order information for ${challengeID} and ${id}`)\n}\n\nconst getOrderList = async (id: string) => {\n const results = await restService.get(`${baseUrl}${id}`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new RunningOrderClientException('Error in upwardRunningOrderClient.getOrderList')\n }\n}\n\nconst retrieveTemplate = async (id: string, orderType: OrderTypesEnum) => {\n const results = await restService.get(`${baseUrl}${id}/new`, {\n upwardOrderTypeID: orderType.toUpperCase(),\n })\n if (results.isSuccess) {\n return results.data\n } else {\n throw new RunningOrderClientException('Error in upwardRunningOrderClient.retrieveTemplate')\n }\n}\n\nconst getRunningOrderItems = async (challengeID: string) => {\n const t = await restService.get(`${baseUrl}${challengeID}/products`, {\n upwardOrderTypeID: 'RUNNINGORDER',\n })\n if (t.isSuccess) {\n return t.data\n }\n throw new RunningOrderClientException('could not gather challenge items required by participant')\n}\n\nconst getRunningOrderStatus = async (challengeID: string): Promise => {\n const si = await restService.get(`${baseUrl}${challengeID}/participantproducts`)\n if (si.isSuccess && si.data) {\n return si.data\n }\n\n throw new RunningOrderClientException('Could not retrieve participant products for the order')\n}\n\nconst getPendingProduct = async (challengeID: string) => {\n const si = await restService.get(`${baseUrl}${challengeID}/cart`)\n if (si.isSuccess) {\n return si.data ?? ([] as xRunningOrderDetailAddonProduct[])\n }\n\n throw new RunningOrderClientException('Could not retrieve addon products for this challenge')\n}\n\nfunction convertToLocalDateString(dt: string | Date | null): string | null {\n if (dt) {\n if (dt instanceof Date) {\n dt = dt\n } else {\n dt = new Date(dt)\n }\n const month = dt.getMonth() + 1\n const monthStr = month < 10 ? `0${month}` : month\n const day = dt.getDate()\n const dayStr = day < 10 ? `0${day}` : day\n const dateStr = `${dt.getFullYear()}-${monthStr}-${dayStr}`\n return dateStr\n } else {\n return null\n }\n}\n\nexport default {\n getRunningOrderProductList,\n verificationDetails,\n createOrder,\n getOrder,\n getxOrder,\n getOrderRollup,\n getOrderInfo,\n getOrderList,\n retrieveTemplate,\n getRunningOrderItems,\n getRunningOrderStatus,\n getPendingProduct,\n confirmOrder,\n validateOrderShipping,\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChargebackDetails.vue?vue&type=style&index=0&id=1dd655df&scoped=true&lang=scss&\"","/**\n * Rest Operations primarily for CRUD on LeaguePlayerInfo\n */\n\nimport restService, { RestServiceResult } from '@/services/restService'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { LeaguePlayer } from '@/GeneratedTypes/LeaguePlayer'\nimport { PlayerInfoIDType } from '@/lib/support/models/LeaguePlayerInfo/data'\nimport { PlayerSearchInfo } from '@/GeneratedTypes/ListInfo/PlayerSearchInfo'\nimport { PlayerSearchArgs } from '@/GeneratedTypes/PlayerSearchArgs'\nimport dayjs from 'dayjs'\nimport { AxiosRequestConfig } from 'axios'\nimport { IsNewPlayer, PlayerId } from '@/lib/support/models/LeaguePlayer/data'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { CombineDataArray } from '@/lib/support/models/RestServiceResult/CombineDataArray'\nimport { PlayerConflictInfo } from '@/GeneratedTypes/ListInfo/PlayerConflictInfo'\nimport { LeaguePlayerInfoExt } from '@/lib/support/models/LeaguePlayerInfo/LeaguePlayerInfoExt'\n\nconst baseUrl = 'participants/'\nfunction ourURL(leagueID: string) {\n return `${baseUrl}${leagueID}`\n}\n\ninterface ParticipantsSearchFnArgs {\n orSearch?: boolean\n leagueID: UpwardLeagueIDType\n first?: string\n last?: string\n email?: string\n phone?: string\n includePastLeagues?: boolean\n historyLimit?: null | Date\n guardianFullName?: string\n}\n\nclass ParticipantClientException extends GeneralError {\n name = 'Participant API Exception'\n}\n\nexport default class participantsClient {\n /***\n * Run the validation routine\n * @param leagueID\n * @param participant\n * @param imported if this player was imported\n * @throws Error object -- has validation errors.\n */\n static async validate(leagueID: UpwardLeagueIDType, participant: LeaguePlayer, matched = false) {\n let idpart = '/' // if new this isn't set.\n if (!IsNewPlayer(participant) && !matched) {\n idpart = '/' + PlayerId(participant) + '/'\n }\n const x = await restService.post(`${ourURL(leagueID)}${idpart}validate`, participant)\n if (x.isSuccess) {\n return true\n }\n throw x.errorObject // this makes the exceptions show on the big red box.\n }\n /***\n * Run the save routine\n * @param leagueID\n * @param participant\n * @param matched - when a player was being added using 'Add New', did the automatic search find a match on lname/fname\n * @throws Error object -- has validation errors.\n */\n static async save(\n leagueID: UpwardLeagueIDType,\n participant: LeaguePlayer,\n matched = false,\n xlsImport = false\n ) {\n const isNewPlayer = IsNewPlayer(participant)\n let x: RestServiceResult | null = null\n\n // participant import requires special header\n const header: AxiosRequestConfig = { headers: { AutoMapPendingLinks: true } }\n const config = xlsImport ? header : undefined\n\n if (isNewPlayer || matched) {\n x = await restService.post(`${ourURL(leagueID)}`, participant, config)\n } else {\n const idpart = '/' + PlayerId(participant) + '/'\n x = await restService.put(`${ourURL(leagueID)}${idpart}`, participant, config)\n }\n\n if (!x.isSuccess) {\n throw new ParticipantClientException('Problem with participant save. ', x.errorObject)\n }\n\n return x.data\n }\n\n static async remove(\n leagueID: UpwardLeagueIDType,\n\n participantId: PlayerInfoIDType\n ) {\n const x = await restService.delete(`${ourURL(leagueID)}/${participantId}`)\n if (!x.isSuccess) {\n throw new ParticipantClientException('Server could not remove ' + participantId)\n }\n return x.data\n }\n\n static async unRemove(\n leagueID: UpwardLeagueIDType,\n\n participantId: PlayerInfoIDType,\n\n typeProgramId?: string\n ) {\n const x = await restService.post(\n `${ourURL(leagueID)}/${participantId}/undelete/${typeProgramId}`,\n null\n )\n if (!x.isSuccess) {\n throw new ParticipantClientException('Server could not un-remove ' + participantId)\n }\n return x.data\n }\n\n /**\n * Returns participants based on a LeagueID or LeagueID and ProgramType\n * @param leagueID UPW### league\n * @param typeProgramId - basketball etc. comes from leauge programs idtype -- optional\n * @return array of league players from the league id\n */\n static async retrieve(\n leagueID: UpwardLeagueIDType,\n typeProgramId?: string\n ): Promise {\n const x = await restService.get(\n `${ourURL(leagueID)}/${typeProgramId ? 'filterByProgram/' + typeProgramId : ''}`\n )\n if (x.isSuccess) {\n return x.data\n }\n throw new ParticipantClientException('Problem with retrieval of the participants.')\n }\n\n static async retrieveRemoved(\n leagueID: UpwardLeagueIDType,\n typeProgramId?: string\n ): Promise {\n const x = await restService.get(\n `${ourURL(leagueID)}/removedParticipants/${typeProgramId ?? 'NONE'}`\n )\n if (x.isSuccess) {\n return x.data\n }\n throw new ParticipantClientException('Problem with retrieval of the participants.')\n }\n\n /**\n * Returns participants based on a LeagueID or LeagueID and ProgramType\n * @param leagueID UPW### league\n */\n static async retrieveExt(leagueID: string): Promise {\n const x = await restService.get(`${ourURL(leagueID)}/udf`)\n if (x.isSuccess) {\n return x.data\n }\n throw new ParticipantClientException('Problem with retrieval of extended participants.')\n }\n\n /***\n * Search former participants.\n * @param leagueID {string} - league to search\n * @param first {string} - first or general search (for an or search)\n * @param last {string} - last name or general search\n * @param email {string} - email or general search (for an or search)\n * @param phone {string} - phone number or general search\n * @param orSearch {boolean} - and/or search boolean flag.\n */\n static search({\n leagueID,\n first,\n last,\n email,\n phone,\n orSearch,\n includePastLeagues,\n historyLimit,\n guardianFullName,\n }: ParticipantsSearchFnArgs): Promise {\n const params: PlayerSearchArgs = {\n currentLeagueID: 0,\n currentUpwardLeagueID: leagueID,\n firstName: first ?? null,\n lastName: last ?? null,\n email: email ?? null,\n phone: phone ?? null,\n historyLimit: typeof historyLimit === 'undefined' ? dayjs().subtract(3, 'year').toDate() : historyLimit,\n includeCurrentLeague: true,\n includePastLeagues: includePastLeagues ?? true,\n useStartsWith: true,\n accountNumber: null,\n guardianFullName: guardianFullName ?? null,\n }\n const otherParams: PlayerSearchArgs = { ...params }\n const endpointURI = `participants/search`\n let results: Promise = new Promise((resolve) => resolve([]))\n // in an or search take the first name and do a last or first search.\n if (orSearch) {\n params.lastName = null\n otherParams.firstName = null\n otherParams.lastName = params.firstName\n\n results = new Promise((resolve, reject) => {\n Promise.all, RestServiceResult>([\n restService.post(endpointURI, params),\n restService.post(endpointURI, otherParams),\n ])\n .then((values) => {\n const rv = CombineDataArray(values)\n\n resolve(rv)\n })\n .catch((res) => reject(res))\n })\n } else {\n results = new Promise((resolve, reject) => {\n restService\n .post(endpointURI, params)\n .then((x) => {\n if (!x.isSuccess) {\n throw new ParticipantClientException('Problem with the retrieval of search information')\n }\n if (x.data) {\n resolve(x.data)\n } else {\n reject(x.errorObject)\n }\n })\n .catch((res) => reject(res))\n })\n }\n\n return results\n }\n\n /**\n * Returns a template, null or empty participant ID will be a new template, otherwise gets the template\n * corresponding to the participant passed, expect null on error, exception on error.\n * @param leagueID\n * @param participantID\n * @param importLeagueID - if you are loading a template from a player outside the league, use the league selected\n * @return Promise\n */\n static async retrieveTemplate(\n leagueID: UpwardLeagueIDType,\n participantID?: PlayerInfoIDType,\n importLeagueID?: UpwardLeagueIDType\n ): Promise {\n const suffix = participantID ? `/${participantID}` : ''\n const x = await restService.get(\n `${ourURL(leagueID)}/new${suffix}`,\n {},\n importLeagueID\n ? {\n headers: {\n CopyContactsFromUPW: importLeagueID,\n },\n }\n : undefined\n )\n if (!x.isSuccess) {\n throw new ParticipantClientException('Problem with the server retrieval of template')\n }\n return x.data\n }\n\n static async retrieveParticipant(\n leagueID: UpwardLeagueIDType,\n participantID: PlayerInfoIDType\n ): Promise {\n const suffix = participantID ? `/${participantID}` : ''\n const x = await restService.get(`${ourURL(leagueID)}${suffix}`)\n if (!x.isSuccess) {\n throw new ParticipantClientException('Problem with the server retrieval of participant ')\n }\n return x.data\n }\n\n static async retrieveParticipantInfo(\n leagueID: UpwardLeagueIDType,\n participantID: PlayerInfoIDType\n ): Promise {\n const suffix = participantID ? `/${participantID}/info` : ''\n const x = await restService.get(`${ourURL(leagueID)}${suffix}`)\n if (!x.isSuccess) {\n throw new ParticipantClientException('Problem with the server retrieval of participant ')\n }\n return x.data\n }\n\n static async retrieveRemovedParticipantInfo(\n leagueID: UpwardLeagueIDType,\n participantID: PlayerInfoIDType\n ): Promise {\n const suffix = participantID ? `/${participantID}/removedParticipantInfo` : ''\n const x = await restService.get(`${ourURL(leagueID)}${suffix}`)\n if (!x.isSuccess) {\n throw new ParticipantClientException('Problem with the server retrieval of removed participant ')\n }\n return x.data\n }\n\n static async retrieveUnassigned(\n leagueID: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number\n ): Promise {\n const x = await restService.get(\n `${ourURL(leagueID)}/unassignedByDivision/${typeProgramId}/${divisionId}`\n )\n if (x.isSuccess) {\n return x.data\n }\n throw new ParticipantClientException('Problem with retrieval of the participants.')\n }\n\n static async retrieveSiblingLinks(\n leagueID: UpwardLeagueIDType,\n participantID: PlayerInfoIDType\n ): Promise {\n const x = await restService.get(`${ourURL(leagueID)}/${participantID}/siblingLinks`)\n if (!x.isSuccess) {\n throw new ParticipantClientException('Problem with the server retrieval of participant sibling links ')\n }\n return x.data\n }\n\n static async retrievePlayerConflicts(\n leagueID: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number\n ): Promise {\n if (leagueID) {\n let pcURL = `${ourURL(leagueID)}/playerConflicts`\n if (typeProgramId !== '') {\n pcURL = pcURL.concat(`/${typeProgramId}`)\n if (divisionId > 0) {\n pcURL = pcURL.concat(`/${divisionId}`)\n }\n }\n\n const x = await restService.get(pcURL)\n if (x.isSuccess) {\n return x.data\n }\n throw new ParticipantClientException('Problem with retrieval of the player conflicts.')\n } else {\n return []\n }\n }\n}\n","import { GetterTree, MutationTree, ActionTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport { PromptToSavePayload } from '@/models/PromptToSavePayload'\nimport { ActionsImpl } from 'direct-vuex'\ninterface PromptToSaveState {\n isDirty: boolean\n modalIsVisible: boolean\n payload: PromptToSavePayload | null\n}\nconst promptToSaveState: PromptToSaveState = {\n isDirty: false,\n modalIsVisible: false,\n payload: null,\n}\nexport enum getterNames {\n isDirty = 'isDirty',\n modalIsVisible = 'modalIsVisible',\n}\nconst getters: GetterTree = {\n [getterNames.isDirty]: (state) => state.isDirty,\n [getterNames.modalIsVisible]: (state) => state.modalIsVisible,\n}\nexport enum mutationNames {\n setIsDirty = 'setIsDirty',\n}\nenum internalMutationNames {\n setModalIsVisible = 'setModalIsVisible',\n setPayload = 'setPayload',\n}\nconst mutations: MutationTree = {\n [mutationNames.setIsDirty](state, { isDirty }: { isDirty: boolean }) {\n state.isDirty = isDirty\n },\n [internalMutationNames.setModalIsVisible](state, { modalIsVisible }: { modalIsVisible: boolean }) {\n state.modalIsVisible = modalIsVisible\n },\n [internalMutationNames.setPayload](state, payload: PromptToSavePayload) {\n state.payload = payload\n },\n}\nexport enum actionNames {\n onNavigation = 'onNavigation',\n onYes = 'onYes',\n onNo = 'onNo',\n onCancel = 'onCancel',\n}\nconst actions: ActionTree & ActionsImpl = {\n [actionNames.onNavigation]({ commit, state }, payload: PromptToSavePayload) {\n if (!state.isDirty) {\n payload?.continue()\n return\n }\n commit(internalMutationNames.setPayload, payload)\n commit(internalMutationNames.setModalIsVisible, { modalIsVisible: true })\n },\n async [actionNames.onYes]({ commit, state }) {\n commit(internalMutationNames.setModalIsVisible, { modalIsVisible: false })\n commit(mutationNames.setIsDirty, { isDirty: false })\n const r = await state.payload?.save()\n if (r != false) {\n state.payload?.continue()\n commit(internalMutationNames.setPayload, null)\n }\n },\n [actionNames.onNo]({ commit, state }) {\n commit(internalMutationNames.setModalIsVisible, { modalIsVisible: false })\n commit(mutationNames.setIsDirty, { isDirty: false })\n state.payload?.continue()\n commit(internalMutationNames.setPayload, null)\n },\n [actionNames.onCancel]({ commit }) {\n commit(internalMutationNames.setModalIsVisible, { modalIsVisible: false })\n commit(internalMutationNames.setPayload, null)\n },\n}\nexport const namespace = 'promptToSave'\nexport const promptToSave = {\n namespaced: true as true,\n state: promptToSaveState,\n getters,\n actions,\n mutations,\n}\n","import { cloneDeep } from 'lodash'\nimport { TypeLeagueVolunteerRole } from '@/GeneratedTypes/TypeLeagueVolunteerRole'\nimport { LeaguePlayerUDFDefinition } from '@/GeneratedTypes/LeaguePlayerUDFDefinition'\nimport { LeaguePracticeNight } from '@/GeneratedTypes/LeaguePracticeNight'\nimport { LeagueProgram } from '@/GeneratedTypes/LeagueProgram'\nimport { LeagueAccount } from '@/GeneratedTypes/LeagueAccount'\nimport { League } from '@/GeneratedTypes/League'\nimport { Camp } from '@/GeneratedTypes/Camp'\nimport { Clinic } from '@/GeneratedTypes/Clinic'\nimport { Connect } from '@/GeneratedTypes/Connect'\nimport { PartnerChallenge } from '@/models/UpwardRunning/PartnerChallenge'\nimport { LeagueTypeEnum } from '@/models/LeagueAbstraction/enums/LeagueTypeEnum'\nimport { SavedProductOfferingConfig } from '@/GeneratedTypes/SavedProductOfferingConfig'\nimport { getEmptySavedProductOfferingConfig } from '@/lib/support/models/SaveProductOfferingConfig/SavedProductOfferingConfig'\nimport { LeagueAccountProgramGenderGrade } from '@/GeneratedTypes/LeagueAccountProgramGenderGrade'\nimport { LeagueTypeGradeInfo } from 'src/GeneratedTypes/ListInfo/LeagueTypeGradeInfo'\n\n/**\n * A quick reference to current properties of the current program type (connect, clinic, running, league, etc)\n * 99% of what gets used in API calls are upwardLeagueID, id, and programs names.\n *\n */\nexport interface LeagueAbstraction {\n type: LeagueTypeEnum\n id: number\n typeLeagueID: string\n leagueName: string\n publicDisplayName: string | null\n upwardLeagueID: string | null //Can be UWP or UR id. Used for primary id across all types (league, clinic, running, etc)\n accounts: LeagueAccount[] | null\n programs: LeagueProgram[] | null\n practiceNights: LeaguePracticeNight[] | null\n playerUDFs: LeaguePlayerUDFDefinition[] | null\n roles: TypeLeagueVolunteerRole[] | null\n productSeasonDate: Date | null // date used to determine the begining of the product year\n productOfferingConfig: SavedProductOfferingConfig\n lateDate: Date | null\n genderGrades: LeagueAccountProgramGenderGrade[]\n allowWaitlist: boolean\n ageCutoffDate: Date | null\n gradeDescriptions: LeagueTypeGradeInfo[] | null\n}\n\nexport function getEmptyLeagueAbstraction(): LeagueAbstraction {\n return {\n leagueName: '',\n id: 0,\n playerUDFs: [],\n practiceNights: [],\n roles: [],\n accounts: [],\n programs: [],\n typeLeagueID: '',\n publicDisplayName: '',\n upwardLeagueID: '',\n type: LeagueTypeEnum.LEAGUE,\n productSeasonDate: null,\n productOfferingConfig: getEmptySavedProductOfferingConfig(),\n lateDate: null,\n genderGrades: [],\n allowWaitlist: false,\n ageCutoffDate: null,\n gradeDescriptions: [],\n }\n}\n\nexport function leagueToAbstraction(l: League): LeagueAbstraction {\n return {\n leagueName: l.leagueName,\n id: l.id,\n playerUDFs: l.playerUDFs,\n practiceNights: l.practiceNights,\n roles: l.roles,\n accounts: l.accounts,\n programs: l.programs,\n typeLeagueID: l.typeLeagueID,\n publicDisplayName: l.publicDisplayName,\n upwardLeagueID: l.upwardLeagueID,\n type: LeagueTypeEnum.LEAGUE,\n productSeasonDate: l.firstPracticeDate,\n productOfferingConfig: l.productOfferingConfig ?? getEmptySavedProductOfferingConfig(),\n lateDate: l.lateDate,\n genderGrades: l.accounts && l.accounts[0].grades ? cloneDeep(l.accounts[0].grades) : [],\n allowWaitlist: l.registrationInfo?.allowWaitlist ?? false,\n ageCutoffDate: l.ageCutoffDate,\n gradeDescriptions: l.gradeDescriptions,\n }\n}\n\nexport function campToAbstraction(l: Camp): LeagueAbstraction {\n return {\n leagueName: l.leagueName,\n id: l.id,\n playerUDFs: l.playerUDFs,\n practiceNights: [],\n roles: l.roles,\n accounts: l.accounts,\n programs: l.programs,\n typeLeagueID: l.typeLeagueID,\n publicDisplayName: l.publicDisplayName,\n upwardLeagueID: l.upwardLeagueID,\n type: LeagueTypeEnum.CAMP,\n productSeasonDate: l.campStartDate,\n productOfferingConfig: l.productOfferingConfig ?? getEmptySavedProductOfferingConfig(),\n lateDate: l.lateDate,\n genderGrades: l.accounts && l.accounts[0].grades ? cloneDeep(l.accounts[0].grades) : [],\n allowWaitlist: l.registrationInfo?.allowWaitlist ?? false,\n ageCutoffDate: l.ageCutoffDate,\n gradeDescriptions: l.gradeDescriptions,\n }\n}\n\nexport function clinicToAbstraction(l: Clinic): LeagueAbstraction {\n return {\n leagueName: l.leagueName,\n id: l.id,\n playerUDFs: null,\n practiceNights: [],\n roles: null,\n accounts: null,\n programs: null,\n typeLeagueID: l.typeLeagueID,\n publicDisplayName: null,\n upwardLeagueID: l.upwardLeagueID,\n type: LeagueTypeEnum.CLINIC,\n productSeasonDate: null,\n productOfferingConfig: getEmptySavedProductOfferingConfig(),\n lateDate: null,\n genderGrades: [],\n allowWaitlist: false,\n ageCutoffDate: null,\n gradeDescriptions: l.gradeDescriptions,\n }\n}\n\nexport function connectToAbstraction(l: Connect): LeagueAbstraction {\n return {\n leagueName: l.leagueName,\n id: l.id,\n playerUDFs: null,\n practiceNights: [],\n roles: null,\n accounts: null,\n programs: null,\n typeLeagueID: l.typeLeagueID,\n publicDisplayName: null,\n upwardLeagueID: l.upwardLeagueID,\n type: LeagueTypeEnum.CONNECT,\n productSeasonDate: null,\n productOfferingConfig: getEmptySavedProductOfferingConfig(),\n lateDate: null,\n genderGrades: [],\n allowWaitlist: false,\n ageCutoffDate: null,\n gradeDescriptions: l.gradeDescriptions,\n }\n}\n\nexport function runningToAbstraction(l: PartnerChallenge): LeagueAbstraction {\n return {\n leagueName: l.challengeName ?? '',\n id: l.id ?? 0,\n playerUDFs: null,\n practiceNights: [],\n roles: null,\n accounts: null,\n programs: null,\n typeLeagueID: l.typeLeagueID ?? '',\n publicDisplayName: null,\n upwardLeagueID: l.upwardChallengeID,\n type: LeagueTypeEnum.RUNNING,\n productSeasonDate: null,\n productOfferingConfig: getEmptySavedProductOfferingConfig(),\n lateDate: null,\n genderGrades: [],\n allowWaitlist: false,\n ageCutoffDate: null,\n gradeDescriptions: null,\n }\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpwardRunningOverview.vue?vue&type=style&index=0&id=6f35d4fa&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PhoneInput.vue?vue&type=style&index=0&id=70336bcc&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.parentComponent,{tag:\"component\",staticClass:\"editor_modal\",attrs:{\"is-small\":false,\"close-icon-class\":\"fa fa-window-minimize\"},on:{\"change\":function () {\n _vm.focusEditor()\n }},model:{value:(_vm.openModal),callback:function ($$v) {_vm.openModal=$$v},expression:\"openModal\"}},[_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-success\",attrs:{\"type\":\"button\"},on:{\"click\":function () {\n _vm.openModal = false\n _vm.focusEditor()\n }}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Ok \")])]),_c('ValidationProvider',{ref:\"provider\",attrs:{\"rules\":_vm.VeeValidateRules},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var errors = ref.errors;\nreturn [(_vm.label)?_c('input-label',{class:_vm.wrapperClass,attrs:{\"label\":_vm.label,\"inline\":true,\"required\":_vm.required,\"input-id\":_vm.id,\"sub-label\":_vm.subLabel,\"sub-label-inline\":_vm.subLabelInline,\"show-help\":_vm.showHelp},on:{\"helpClicked\":function($event){return _vm.$emit('helpClicked')}}}):_vm._e(),_c('div',{ref:\"editorElement\",staticClass:\"tiptap-editor-wrapper editor\"},[(_vm.editor)?_c('editor-menu-bubble',{ref:\"menuBubbleElement\",attrs:{\"editor\":_vm.editor},on:{\"hide\":_vm.hideLinkMenu},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var commands = ref.commands;\n var isActive = ref.isActive;\n var getMarkAttrs = ref.getMarkAttrs;\n var menu = ref.menu;\nreturn [_c('div',{staticClass:\"menububble\",class:{ 'is-active': menu.isActive && _vm.linkMenuIsActive },style:((\"left: 30px; right:30px; bottom: \" + (menu.bottom) + \"px;\"))},[(_vm.linkMenuIsActive)?_c('form',{staticClass:\"menububble__form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.setLinkUrl(commands.link, _vm.linkUrl)}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.linkUrl),expression:\"linkUrl\"}],staticClass:\"form-control menububble__input\",attrs:{\"type\":\"text\",\"placeholder\":\"https://\",\"tabindex\":\"0\"},domProps:{\"value\":(_vm.linkUrl)},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.hideLinkMenu($event)},\"input\":function($event){if($event.target.composing){ return; }_vm.linkUrl=$event.target.value}}}),_c('button',{staticClass:\"menububble__button\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.setLinkUrl(commands.link, null)}}},[_c('i',{staticClass:\"fas fa-trash\"})])]):_vm._e()])]}}],null,true)}):_vm._e(),_c('editor-menu-bar',{ref:\"menuBarElement\",attrs:{\"editor\":_vm.editor},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var commands = ref.commands;\n var isActive = ref.isActive;\n var getMarkAttrs = ref.getMarkAttrs;\nreturn [_c('div',{staticClass:\"menu btn-group btn-group-sm\",staticStyle:{\"flex-wrap\":\"wrap\"}},[_c('button',{staticClass:\"btn btn-outline-secondary\",class:{ active: isActive.bold() },attrs:{\"type\":\"button\",\"title\":\"Bold\"},on:{\"click\":commands.bold}},[_c('i',{staticClass:\"fas fa-bold\"})]),_c('button',{staticClass:\"btn btn-outline-secondary\",class:{ active: isActive.italic() },attrs:{\"type\":\"button\",\"title\":\"Italic\"},on:{\"click\":commands.italic}},[_c('i',{staticClass:\"fas fa-italic\"})]),_c('button',{staticClass:\"btn btn-outline-secondary\",class:{ active: isActive.underline() },attrs:{\"type\":\"button\",\"title\":\"Underline\"},on:{\"click\":commands.underline}},[_c('i',{staticClass:\"fas fa-underline\"})]),_c('button',{staticClass:\"btn btn-outline-secondary\",class:{ active: isActive.bullet_list() },attrs:{\"type\":\"button\",\"title\":\"List\"},on:{\"click\":commands.bullet_list}},[_c('i',{staticClass:\"fas fa-list\"})]),_c('button',{staticClass:\"btn btn-outline-secondary\",attrs:{\"type\":\"button\",\"title\":\"Link\",\"disabled\":!_vm.menuBubbleIsActive},on:{\"click\":function($event){$event.preventDefault();_vm.showLinkMenu(getMarkAttrs('link'))}}},[_c('i',{staticClass:\"fas fa-link\"})]),_c('button',{staticClass:\"btn btn-outline-secondary\",class:{ active: isActive.heading({ level: 1 }) },attrs:{\"type\":\"button\",\"title\":\"Heading Level 1\"},on:{\"click\":function($event){return commands.heading({ level: 1 })}}},[_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(\"H1\")])]),_c('button',{staticClass:\"btn btn-outline-secondary\",class:{ active: isActive.heading({ level: 2 }) },attrs:{\"type\":\"button\",\"title\":\"Heading Level 2\"},on:{\"click\":function($event){return commands.heading({ level: 2 })}}},[_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(\"H2\")])]),_c('button',{staticClass:\"btn btn-outline-secondary\",class:{ active: isActive.heading({ level: 3 }) },attrs:{\"type\":\"button\",\"title\":\"Heading Level 3\"},on:{\"click\":function($event){return commands.heading({ level: 3 })}}},[_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(\"H3\")])]),_c('button',{staticClass:\"btn btn-sm btn-outline-secondary\",attrs:{\"type\":\"button\",\"title\":!_vm.openModal ? 'Maximize' : 'Minimize'},on:{\"click\":function () {\n _vm.openModal = !_vm.openModal\n _vm.focusEditor()\n }}},[_c('i',{class:!_vm.openModal ? 'fas fa-window-maximize' : 'fas fa-window-minimize'})])])]}}],null,true)}),(_vm.editor)?_c('editor-content',{staticClass:\"editor__content\",attrs:{\"editor\":_vm.editor}}):_vm._e(),(_vm.maxLength)?_c('div',{staticClass:\"small ml-1\"},[_c('span',{staticStyle:{\"display\":\"inline\"}},[_vm._v(_vm._s(_vm.charactersRemaining)+\" characters left (HTML tags are counted)\")])]):_vm._e(),(errors)?_c('i',{staticClass:\"small\",staticStyle:{\"color\":\"red\"},domProps:{\"textContent\":_vm._s(errors[0])}}):_vm._e()],1)]}}])})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Node } from 'tiptap'\nimport { toggleList, wrappingInputRule } from 'tiptap-commands'\nexport default class LetterList extends Node {\n get name() {\n return 'letter_list'\n }\n\n get schema() {\n return {\n attrs: {\n order: {\n default: 1,\n },\n },\n content: 'list_item+',\n group: 'block',\n parseDOM: [\n {\n tag: 'ol[type]',\n getAttrs: (dom: any) => ({\n order: dom.hasAttribute('start') ? +dom.getAttribute('start') : 1,\n type: dom.hasAttribute('type') ? dom.getAttribute('type') : 'a',\n }),\n },\n ],\n toDOM: (node: any) =>\n node.attrs.order === 1 ? ['ol', { type: 'a' }, 0] : ['ol', { start: node.attrs.order, type: 'a' }, 0],\n }\n }\n\n commands({ type, schema }: { type: any; schema: any }) {\n return () => toggleList(type, schema.nodes.list_item)\n }\n\n keys({ type, schema }: { type: any; schema: any }) {\n return {\n 'Shift-Ctrl-0': toggleList(type, schema.nodes.list_item),\n }\n }\n\n inputRules({ type }: { type: any }) {\n return [\n wrappingInputRule(\n /^(\\d+)\\.\\s$/,\n type,\n (match: (string | number)[]) => ({ order: +match[1], type: 'a' }),\n (match: any, node: any) => node.childCount + node.attrs.order === +match[1]\n ),\n ]\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'DivWrapper',\n})\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!./DivWrapper.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!./DivWrapper.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivWrapper.vue?vue&type=template&id=467a6796&\"\nimport script from \"./DivWrapper.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivWrapper.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Editor, EditorContent, EditorMenuBar, EditorMenuBubble } from 'tiptap'\nimport { Bold, Italic, Underline, BulletList, ListItem, OrderedList, Heading, Link } from 'tiptap-extensions'\nimport { defineComponent, onMounted, onUnmounted, ref, watch, computed } from '@vue/composition-api'\nimport { ValidationProvider } from 'vee-validate'\nimport { ProviderInstance } from 'vee-validate/dist/types/types'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { getProps } from '@/composables/TextLike'\nimport LetterList from '../LetterList'\nimport Modal from '@/components/Modal.vue'\nimport DivWrapper from '@/elements/DivWrapper.vue'\n\nexport default defineComponent({\n name: 'HtmlEditor2',\n props: {\n value: { type: String, required: true },\n maxLength: { type: Number, required: false, default: null },\n ...getProps(),\n },\n components: {\n EditorContent,\n EditorMenuBar,\n EditorMenuBubble,\n ValidationProvider,\n InputLabel,\n Modal,\n DivWrapper,\n },\n setup(props, { emit }) {\n const openModal = ref(false)\n const parentComponent = computed(() => (openModal.value ? Modal : DivWrapper))\n const internalValue = ref('')\n const charactersRemaining = ref('')\n const editorElement = ref(null)\n const menuBubbleElement = ref(null)\n const menuBarElement = ref(null)\n const provider = ref(null)\n const editorAreaElement = computed(() => editorElement.value?.querySelector('.ProseMirror'))\n const linkInputElement = computed(() => menuBubbleElement.value?.$el.querySelector('.menububble__input'))\n const linkUrl = ref(null)\n const linkMenuIsActive = ref(false)\n watch(\n () => props.value,\n (v) => {\n const isSame = v === editor?.value?.getHTML()\n if (isSame) {\n return\n }\n const limit = !props.maxLength ? 0 : props.maxLength\n charactersRemaining.value = (limit - (props.value?.length ?? 0)).toString()\n internalValue.value = v\n editor?.value?.setContent(v)\n onInit()\n },\n { immediate: true }\n )\n const menuBubbleIsActive = computed(() => menuBubbleElement?.value?.menu?.isActive ?? false)\n function showLinkMenu(attrs: any) {\n linkUrl.value = attrs.href\n linkMenuIsActive.value = menuBubbleIsActive.value\n linkInputElement?.value?.focus()\n }\n function hideLinkMenu() {\n linkUrl.value = null\n linkMenuIsActive.value = false\n }\n function setLinkUrl(command: any, url: any) {\n command({ href: url })\n hideLinkMenu()\n }\n function onInit() {\n if (!internalValue.value) return\n setTimeout(async () => {\n const validator = provider.value as ProviderInstance\n await validator.validate(internalValue.value)\n })\n }\n async function onUpdate({ getHTML }: { getHTML: () => string }) {\n // we can get the text minus html tags\n const text = editorAreaElement.value?.textContent?.trim()\n // having the text only allows us to determine if the control is truly empty\n const isEmpty = text?.length === 0 ?? true\n const limit = !props.maxLength ? 0 : props.maxLength\n const validator = provider.value as ProviderInstance\n if (isEmpty) {\n charactersRemaining.value = `${limit.toString()}`\n // if it's truly empty, validate and emit an empty string\n // to avoid an empty

tag from causing our\n // charactersRemaining from displaying an inaccurate\n // value. I wish tiptap would do this automatically.\n await validator.validate('')\n emit('input', '')\n } else {\n const html = getHTML()?.trim()\n charactersRemaining.value = `${(limit - html.length).toString()}`\n await validator.validate(html)\n emit('input', html)\n }\n }\n const focusEditor = () => {\n ;(editor!.value! as any).focus()\n }\n const editor = ref(null)\n onMounted(() => {\n editor.value = new Editor({\n extensions: [\n new Bold(),\n new Italic(),\n new Underline(),\n new BulletList(),\n new ListItem(),\n new OrderedList(),\n new Heading({ levels: [1, 2, 3, 4, 5, 6] }),\n new Link(),\n new LetterList(),\n ],\n content: internalValue.value,\n onInit,\n onUpdate,\n })\n /* This is a work-around to trigger the \n re-draw of the component to enable \n the bubble menu functionality. */\n openModal.value = 0\n })\n onUnmounted(() => editor.value?.destroy())\n return {\n editor,\n internalValue,\n editorElement,\n charactersRemaining,\n provider,\n showLinkMenu,\n hideLinkMenu,\n setLinkUrl,\n linkMenuIsActive,\n linkUrl,\n menuBubbleElement,\n menuBubbleIsActive,\n openModal,\n parentComponent,\n menuBarElement,\n focusEditor,\n }\n },\n})\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!./HtmlEditor2.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!./HtmlEditor2.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./HtmlEditor2.vue?vue&type=template&id=00d9c3aa&\"\nimport script from \"./HtmlEditor2.vue?vue&type=script&lang=ts&\"\nexport * from \"./HtmlEditor2.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./HtmlEditor2.vue?vue&type=style&index=0&lang=scss&\"\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","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailablePracticeDays.vue?vue&type=style&index=0&id=c36e3aec&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-stepper-step',{staticClass:\"the-stepper-step\",attrs:{\"complete\":_vm.complete,\"editable\":_vm.editable,\"step\":_vm.step,\"color\":_vm.color,\"edit-icon\":\"fas fa-pen\"},on:{\"click\":_vm.handleClick}},[_c('step-header',{attrs:{\"title\":_vm.title,\"tag\":_vm.tag,\"caption\":_vm.caption}})],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('h6',{staticClass:\"mb-0 heading-6 d-inline-block\"},[_vm._v(_vm._s(_vm.title))]),(_vm.tag)?_c('span',{staticClass:\"subtitle-2\"},[_vm._v(\" (\"+_vm._s(_vm.tag)+\")\")]):_vm._e(),(_vm.caption)?_c('p',{staticClass:\"small font-italic m-0\"},[_vm._v(_vm._s(_vm.caption))]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'StepHeader',\n props: {\n title: { type: String, default: '', required: false },\n tag: { type: String, default: '', required: false },\n caption: { type: String, default: '', required: false },\n },\n})\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!./StepperHeader.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!./StepperHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StepperHeader.vue?vue&type=template&id=256e0a2d&\"\nimport script from \"./StepperHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./StepperHeader.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\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport StepHeader from '@/elements/StepperHeader.vue'\n\nexport default defineComponent({\n name: 'StepperStep',\n components: {\n StepHeader,\n },\n props: {\n complete: { type: Boolean, required: false, default: false },\n editable: { type: Boolean, required: false, default: false },\n step: { type: [String, Number], required: false, default: '1' },\n title: { type: String, required: false, default: '' },\n tag: { type: String, required: false, default: '' },\n caption: { type: String, required: false, default: '' },\n color: { type: String, required: false, default: 'primary' },\n },\n setup(props, ctx) {\n /**\n * Pass up a click event only when you have an active element\n * @param e\n */\n function handleClick(e: Event) {\n if (props.editable) {\n ctx.emit('click', e)\n }\n }\n\n return {\n handleClick,\n }\n },\n})\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!./StepperStep.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!./StepperStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StepperStep.vue?vue&type=template&id=00440903&scoped=true&\"\nimport script from \"./StepperStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./StepperStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StepperStep.vue?vue&type=style&index=0&id=00440903&lang=scss&scoped=true&\"\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 \"00440903\",\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 { VStepperStep } from 'vuetify/lib/components/VStepper';\ninstallComponents(component, {VStepperStep})\n","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!./TheErrorRenderer.vue?vue&type=style&index=0&lang=css&\"","import { xRunningOrderExt } from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport { xRunningOrder } from '@/GeneratedTypes/xOrder/xRunningOrder'\nimport { xRunningOrderLine } from '@/GeneratedTypes/xOrder/xRunningOrderLine'\nimport { OrderProduct } from 'src/models/Order/OrderProduct'\nimport { OrderProductSize } from 'src/models/Order/OrderProductSize'\nimport { cloneDeep } from 'lodash'\nimport { getEmptyOrderProduct } from '@/lib/support/models/GeneratedTypes/xOrders/xOrderProduct'\n\nexport function ToXRunningOrder(order: xRunningOrderExt) {\n // Convert xRunningOrderExt to xRunningOrder\n const localOrder = cloneDeep(order)\n\n const orderLines: xRunningOrderLine[] = []\n localOrder.products.forEach((product: OrderProduct) => {\n product.productColorSizes?.forEach((size: OrderProductSize) => {\n //restrict to just ordered things.\n if (size.orderQuantity) {\n const orderLine = {\n productID: product.upwardProductID,\n typeProgramID: product.typeProgramID,\n typeSizeID: size.typeSizeID,\n typeColorID: size.typeColorID,\n quantity: size.orderQuantity,\n quantityFree: size.orderFreeQuantity,\n } as xRunningOrderLine\n orderLines.push(orderLine)\n }\n })\n })\n\n localOrder.orderLines = orderLines\n localOrder.products = []\n localOrder.processingInstructions = []\n\n return normalizeOrder(localOrder) as xRunningOrder\n}\n\n/**\n * Marks sales tax with a negative value to signal to order summary that it isn't ready\n * to calculate yet.\n * @param o\n */\nexport function setSalesTaxNotCalculatedYet(o: xRunningOrderExt | undefined) {\n if (o) {\n o.salesTax = -0.0001\n }\n return o\n}\n\nexport function getSalesTaxNotCalculatedYet(o: xRunningOrderExt | undefined) {\n return o && o.salesTax < 0\n}\n\n/**\n * Removes promocard's type size id from the order process and makes it a unique id\n * @param order\n * @return adjusted lineitems on the order\n */\nfunction normalizeOrder(order: xRunningOrderExt) {\n const rv = cloneDeep(order)\n const lines: xRunningOrderLine[] = []\n\n ;(rv.orderLines ?? []).forEach((line) => {\n lines.push({ ...cloneDeep(line) })\n })\n return { ...rv, orderLines: lines }\n}\n\n/**\n * Merge order with orderExt and return as xStartupOrderExt\n * order values overwrite orderExt\n * @param order\n * @param orderExt\n * @constructor\n */\nexport function ToXRunningOrderExt(order: xRunningOrder, orderExt: xRunningOrderExt) {\n //\n //\n const newOrderExt: xRunningOrderExt = getEmptyXRunningOrderExt()\n Object.assign(newOrderExt, orderExt, order)\n return cloneDeep(newOrderExt)\n}\n\nexport function removeZeroQtyProducts(orderExt: xRunningOrderExt) {\n const localOrder = cloneDeep(orderExt)\n const products: OrderProduct[] = []\n let sizes: OrderProductSize[] = []\n\n localOrder.products.forEach((product: OrderProduct) => {\n sizes = []\n product.productColorSizes?.forEach((size: OrderProductSize) => {\n if (size.orderQuantity > 0) {\n sizes.push(size)\n }\n })\n if (sizes.length > 0) {\n product.productColorSizes = sizes\n products.push(product)\n }\n })\n localOrder.products = products\n return localOrder\n}\n\nexport function getOrderProductTotal(orderExt: xRunningOrderExt): number {\n return orderExt.orderLines?.reduce((n, { extendedCost }) => n + extendedCost, 0) ?? 0\n}\n\nexport function getEmptyXRunningOrderExt(): xRunningOrderExt {\n return {\n products: [getEmptyOrderProduct()],\n upwardOrderType: 'RUNNINGORDER',\n clientOrderDate: null,\n upwardOrderID: '',\n upwardChallengeID: '',\n upwardLeagueID: '',\n accountNumber: '',\n notes: '',\n purchaseOrderNumber: '',\n dueDate: null,\n salesTax: 0,\n typeOrderingContextID: '',\n typeLeagueID: '',\n typeProductGroupID: '',\n leagueDirectorPartnerID: 0,\n orderLines: [],\n shippingInfo: {\n shipTo: {\n name: '',\n attention: '',\n contactInfo: '',\n street1: '',\n street2: '',\n subdivision1: '',\n subdivision2: '',\n postalCode: '',\n countryCode: '',\n },\n shipMethods: [\n {\n id: '',\n description: '',\n extendedDescription: '',\n selected: false,\n cost: 0,\n },\n ],\n },\n processingInstructions: [],\n }\n}\n","import { defineGetters, defineActions, defineMutations } from 'direct-vuex'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport teamsClient from '@/clients/teamsClient'\nimport { cloneDeep } from 'lodash'\n\ninterface TeamState {\n teams: DivisionTeamInfo[]\n}\n\nconst teamState: TeamState = {\n teams: [] as DivisionTeamInfo[],\n}\n\nexport enum getterNames {\n teams = 'teams',\n}\n\nconst getterTree = defineGetters()({\n teams: (state) => {\n return state.teams\n },\n})\n\nexport enum mutationNames {\n setTeams = 'setTeams',\n}\n\nconst mutations = defineMutations()({\n setTeams(state, { teams }: { teams: DivisionTeamInfo[] }) {\n state.teams = teams\n },\n})\n\nexport enum actionNames {\n fetchTeams = 'fetchTeams',\n}\n\nconst actions = defineActions({\n async fetchTeams({ commit }, { upwId }: { upwId: string }) {\n const teams = await teamsClient.retrieveLeagueTeams({ leagueID: upwId })\n commit(mutationNames.setTeams, { teams: teams ?? ([] as DivisionTeamInfo[]) })\n return cloneDeep(teams)\n },\n})\n\nexport const namespace = 'teams'\n\nexport const teams = {\n namespaced: true as true,\n state: teamState,\n getters: getterTree,\n actions,\n mutations,\n}\n","import { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { LeaguePlayer } from '@/GeneratedTypes/LeaguePlayer'\nimport { getEmptyLeaguePlayerInfo, LeaguePlayerSeedInfo } from '@/lib/support/models/LeaguePlayerInfo/data'\n\nexport function leaguePlayerToLeaguePlayerInfo(lp: LeaguePlayer): LeaguePlayerInfo {\n return {\n ...getEmptyLeaguePlayerInfo(new LeaguePlayerSeedInfo()),\n individualID: lp.individualID,\n typeProgramID: lp.programs?.length ? lp.programs[0].typeProgramID : '',\n typeGradeID: lp.typeGradeID,\n middleInitial: lp.middleInitial,\n medicalNotes: lp.medicalNotes,\n leagueID: lp.leagueID,\n lastName: lp.lastName,\n isImported: lp.isImported,\n generalNotes: lp.generalNotes,\n gender: lp.gender,\n firstName: lp.firstName,\n churchName: lp.churchName,\n accountNumber: lp.accountNumber,\n birthDate: lp.birthDate,\n formattedNameFirstLast: lp.firstName,\n formattedNameLastFirst: lp.lastName,\n formattedNamePrivate: lp.firstName,\n isPlayerSizingComplete: false,\n }\n}\n","import { GetterTree, Commit } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport participantClient from '@/clients/participantsClient'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { LeaguePlayer } from '@/GeneratedTypes/LeaguePlayer'\nimport { PlayerInfoIDType } from '@/lib/support/models/LeaguePlayerInfo/data'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { PlayerId } from '@/lib/support/models/LeaguePlayer/data'\nimport { leaguePlayerToLeaguePlayerInfo } from '@/lib/support/models/LeaguePlayerInfo/LeaguePlayerToLeaguePlayerInfo'\nimport { defineActions, defineMutations } from 'direct-vuex'\nimport { moduleActionContext } from '@/store/index'\nimport { PlayerContact } from '@/GeneratedTypes/PlayerContact'\nimport { cloneDeep } from 'lodash'\nimport {\n DataTablePagination,\n DataTableRemovedPagination,\n getEmptyDataTablePagination,\n getEmptyDataTableRemovedPagination,\n} from '@/models/DataTable/DataTableSelection'\n\n/***\n * Builds the store for participant.\n * LeaguePlayerInfo is the query model\n * LeaguePlayer is the commit model\n *\n */\n\nexport const NEW_PARTICIPANT = -1\nexport const NO_ACTIVE_PARTICIPANT = -2\n\nclass ParticipantException extends Error {\n public innerException: Error | undefined = undefined\n constructor(message: string, exception?: Error) {\n super(message)\n this.message = message\n this.name = 'ParticipantException'\n this.innerException = exception\n }\n}\nclass ParticipantRuntimeException extends Error {\n public innerException: Error | undefined = undefined\n constructor(message: string, exception?: Error) {\n super(message)\n this.message = message\n this.name = 'Participant Runtime Exception'\n this.innerException = exception\n }\n}\n\nfunction throwError(message: string, commit?: Commit, error?: Error) {\n commit && commit(mutationNames.setError, { message, error })\n throw new ParticipantException(message, error)\n}\n\nenum RetrieveEnum {\n nothing,\n clone,\n new,\n edit,\n}\n\ninterface ParticipantState {\n currentItem?: LeaguePlayerInfo\n currentRemovedPartcipant?: LeaguePlayerInfo\n participants: LeaguePlayerInfo[]\n removedParticipants: LeaguePlayerInfo[]\n lastLeagueLoaded: string\n lastError: string\n lastException: Error | null\n participantUnderEdit: LeaguePlayer | null\n participantUnderEditId: PlayerInfoIDType\n currentProgram: string //valid program\n operation: RetrieveEnum\n loading: boolean\n //** differentiates list and player loading.\n playerLoading: boolean\n status: string\n skipParticipantListRefresh: boolean\n pagination: DataTablePagination\n removedPagination: DataTableRemovedPagination\n}\n\nconst initState = (): ParticipantState => {\n return {\n currentItem: undefined,\n currentRemovedPartcipant: undefined,\n participants: [],\n removedParticipants: [],\n lastLeagueLoaded: '',\n lastError: '',\n lastException: null,\n participantUnderEdit: null, //initial state null.\n participantUnderEditId: NO_ACTIVE_PARTICIPANT,\n currentProgram: '',\n operation: RetrieveEnum.nothing,\n loading: false,\n playerLoading: false,\n status: '',\n skipParticipantListRefresh: false, //used for cancelled operations between routes\n pagination: getEmptyDataTablePagination(),\n removedPagination: getEmptyDataTableRemovedPagination(),\n }\n}\nconst participantState: ParticipantState = initState()\n\nexport interface LoadProgramParticipantsArgs {\n leagueId: string\n typeProgramId?: string\n shouldForceRefresh?: boolean\n}\n\nexport interface SingleParticipantArgs {\n participant: LeaguePlayerInfo\n}\n\nexport interface SingleEditParticipantArgs {\n participant: LeaguePlayer\n}\n\nexport enum getterNames {\n currentItem = 'currentItem',\n currentRemovedPartcipant = 'currentRemovedParticipant',\n participants = 'participants',\n removedParticipants = 'removedParticipants',\n participantUnderEdit = 'participantUnderEdit',\n currentProgram = 'currentProgram',\n loading = 'loading',\n status = 'status',\n skipParticipantListRefresh = 'skipParticipantListRefresh',\n pagination = 'pagination',\n removedPagination = 'removedPagination',\n}\n\nconst getterTree: GetterTree = {\n currentItem: (state) => state.currentItem,\n currentRemovedParticipant: (state) => state.currentRemovedPartcipant,\n participants: (state) => state.participants,\n removedParticipants: (state) => state.removedParticipants,\n participantUnderEdit: (state) => state.participantUnderEdit,\n currentProgram: (state) => state.currentProgram,\n loading: (state) => state.loading,\n playerLoading: (state) => state.playerLoading,\n status: (state) => state.status,\n skipParticipantListRefresh: (state) => state.skipParticipantListRefresh,\n pagination: (state) => state.pagination,\n removedPagination: (state) => state.removedPagination,\n}\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n setCurrentRemovedParticipant = 'setCurrentRemovedParticipant',\n clearCurrent = 'clearCurrent',\n clearCurrenRemovedParticipant = 'clearCurrentRemovedParticipant',\n setParticipants = 'setParticipants',\n setRemovedParticipants = 'setRemovedParticipants',\n setError = 'setError',\n setLastLeagueLoaded = 'setLastLeagueLoaded',\n setParticipantUnderEdit = 'setParticipantUnderEdit',\n setParticipantUnderEditId = 'setParticipantUnderEditId',\n setCurrentProgram = 'setCurrentProgram',\n setUpdatedPlayer = 'setUpdatedPlayer',\n setRetrieveType = 'setRetrieveType',\n removeParticipant = 'removeParticipant',\n updateParticipantData = 'updateParticipantData',\n setLoading = 'setLoading',\n setPlayerLoading = 'setPlayerLoading',\n setStatus = 'setStatus',\n clearParticipant = 'clearParticipant',\n setSkipParticipantListRefresh = 'setSkipParticipantListRefresh',\n setPagination = 'setPagination',\n setRemovedPaginaton = 'setRemovedPagination',\n}\n\nconst mutations = defineMutations()({\n setStatus(state, status: string) {\n state.status = status\n },\n setLoading(state, loading: boolean) {\n state.loading = loading\n },\n\n setPlayerLoading(state, loading: boolean) {\n state.playerLoading = loading\n },\n\n setRetrieveType(state, { operation }: { operation: RetrieveEnum }) {\n state.operation = operation\n },\n setCurrent(state, { participant }: { participant: LeaguePlayerInfo }) {\n if (participant === undefined) {\n throw new ParticipantRuntimeException('participant undefined, check arguments.')\n }\n state.currentItem = participant\n },\n setCurrentRemovedParticipant(state, { participant }: { participant: LeaguePlayerInfo }) {\n if (participant === undefined) {\n throw new ParticipantRuntimeException('participant undefined, check arguments.')\n }\n state.currentRemovedPartcipant = participant\n },\n clearCurrent(state) {\n state.currentItem = undefined\n },\n clearCurrentRemovedParticipant(state) {\n state.currentRemovedPartcipant = undefined\n },\n setUpdatedPlayer(state, { participant }: SingleParticipantArgs) {\n if (participant === undefined) {\n throw new ParticipantRuntimeException('participant undefined, check arguments.')\n }\n const idx = state.participants.findIndex((x) => x.individualID == participant.individualID)\n if (idx >= 0) {\n state.participants.splice(idx, 1, participant)\n } else {\n state.participants.push(participant)\n }\n },\n\n removeParticipant(state, { id }: { id: PlayerInfoIDType }) {\n if (state.participantUnderEditId == id) {\n state.participantUnderEditId = NO_ACTIVE_PARTICIPANT\n state.participantUnderEdit = null\n }\n state.participants = [...state.participants.filter((x) => x.individualID != id)]\n },\n\n updateParticipantData(state: ParticipantState, { playerInfo }: { playerInfo: LeaguePlayerInfo }) {\n const participantIndex = state.participants.findIndex((x) => x.individualID == playerInfo.individualID)\n\n state.participants[participantIndex] = playerInfo\n state.participants = [...state.participants]\n },\n\n setParticipants(state: ParticipantState, { items }: { items: LeaguePlayerInfo[] }) {\n if (items === undefined) {\n throw new ParticipantRuntimeException('items undefined, check arguments.')\n }\n state.participants = items\n },\n setRemovedParticipants(state: ParticipantState, { items }: { items: LeaguePlayerInfo[] }) {\n if (items === undefined) {\n throw new ParticipantRuntimeException('items undefined, check arguments.')\n }\n state.removedParticipants = items\n },\n setError(state, { error, exception }: { error: string; exception?: Error }) {\n if (error === undefined) {\n throw new ParticipantRuntimeException('Error undefined, check arguments.')\n }\n //@todo - propagate to general error -\n state.lastError = error\n state.lastException = exception || null\n console.warn('participant store', error, exception)\n },\n setLastLeagueLoaded(state, { leagueID }: { leagueID: string }) {\n if (leagueID == undefined) {\n throw new ParticipantRuntimeException('Error undefined, check arguments.')\n }\n state.lastLeagueLoaded = leagueID\n },\n setParticipantUnderEdit(state, { participant }: SingleEditParticipantArgs) {\n if (participant === undefined) {\n throw new ParticipantRuntimeException('Error undefined, check arguments.')\n }\n state.participantUnderEdit = { ...participant }\n },\n setParticipantUnderEditId(state, { id }: { id: PlayerInfoIDType }) {\n state.participantUnderEditId = id\n },\n setCurrentProgram(state, { program }: { program: string }) {\n state.currentProgram = program\n },\n setSkipParticipantListRefresh(state, { flag }: { flag: boolean }) {\n // used to flag cancel operations beteween routes to circumvent unnecessary particpant list refreshes\n state.skipParticipantListRefresh = flag\n },\n [mutationNames.clearParticipant](state) {\n state.participantUnderEdit = null\n state.participantUnderEditId = NO_ACTIVE_PARTICIPANT\n },\n setPagination(state, { pagination }: { pagination: DataTablePagination }) {\n state.pagination = pagination\n },\n setRemovedPagination(state, { removedPagination }: { removedPagination: DataTableRemovedPagination }) {\n state.removedPagination = removedPagination\n },\n})\n\n/**\n * Templates sometimes have fake blank contacts. This will remove those\n * @param contacts\n * @return contacts that have IDs, names etc.\n */\nfunction realContactFromFakers(contacts: PlayerContact[]) {\n const c: PlayerContact[] = []\n contacts.forEach((x) => {\n if (x.individualID) {\n c.push(cloneDeep(x))\n }\n })\n return c\n}\n\nexport enum actionNames {\n removeParticipant = 'removeParticipant',\n unRemoveParticipant = 'unRemoveParticipant',\n loadProgramParticipants = 'loadProgramParticipants',\n loadRemovedParticipants = 'loadRemovedParticipants',\n setCurrentParticipantByID = 'setCurrentParticipantByID',\n setCurrentRemovedParticipantByID = 'setCurrentRemovedParticipantByID',\n getNewTemplate = 'getNewTemplate',\n upsertParticipant = 'upsertParticipant',\n getParticipant = 'getParticipant',\n setAccountOnParticipant = 'setAccountOnParticipant',\n}\n\nconst actions = defineActions({\n async setAccountOnParticipant(\n context,\n { leagueID, ids, newAccount }: { leagueID: string; ids: number[]; newAccount: string }\n ) {\n const { commit } = pactionContext(context)\n let q = 0\n for (let i1 = 0; i1 < ids.length; i1++) {\n const i = ids[i1]\n q++\n commit.setStatus(`Saving ${((q * 100) / ids.length).toFixed(1)}% `)\n const p = await participantClient.retrieveParticipant(leagueID, i)\n if (p) {\n p.accountNumber = newAccount\n try {\n await participantClient.save(leagueID, p)\n commit.setUpdatedPlayer({ participant: leaguePlayerToLeaguePlayerInfo(p) })\n } catch (e) {\n commit.setStatus(e.getMessage())\n }\n }\n }\n commit.setStatus(`done`)\n },\n\n async upsertParticipant(\n ctx,\n { leagueID, participant, matched }: { leagueID: string; participant: LeaguePlayer; matched: boolean }\n ) {\n const { commit } = pactionContext(ctx)\n commit.setPlayerLoading(true)\n try {\n await participantClient.validate(leagueID, participant, matched)\n const newplayer = await participantClient.save(leagueID, participant, matched)\n if (newplayer) {\n commit.setUpdatedPlayer({ participant: leaguePlayerToLeaguePlayerInfo(newplayer) })\n }\n } finally {\n commit.setPlayerLoading(false)\n }\n\n commit.setParticipantUnderEditId({ id: NO_ACTIVE_PARTICIPANT })\n },\n\n /***\n * Loads participants, leagueid and program type are found in the state machine\n * @param commit\n * @param state\n * @param leagueid\n * @param leagueId\n * @param typeProgramId\n * @param shouldForceRefresh\n */\n async loadProgramParticipants(\n { commit, state },\n { leagueId, typeProgramId, shouldForceRefresh }: LoadProgramParticipantsArgs\n ) {\n try {\n if (state.lastLeagueLoaded != leagueId || shouldForceRefresh) {\n commit('setLoading', true)\n const result = await participantClient.retrieve(leagueId, typeProgramId)\n\n commit(mutationNames.setLastLeagueLoaded, { leagueID: leagueId })\n commit(mutationNames.setParticipants, { items: result })\n }\n } catch (ex) {\n throwError('Error with the retrieval of participants', commit, ex)\n } finally {\n commit('setLoading', false)\n }\n },\n\n async loadRemovedParticipants(\n { commit, state },\n { leagueId, typeProgramId, shouldForceRefresh }: LoadProgramParticipantsArgs\n ) {\n try {\n if (state.lastLeagueLoaded != leagueId || shouldForceRefresh) {\n commit('setLoading', true)\n const result = await participantClient.retrieveRemoved(leagueId, typeProgramId)\n\n commit(mutationNames.setLastLeagueLoaded, { leagueID: leagueId })\n commit(mutationNames.setRemovedParticipants, { items: result })\n }\n } catch (ex) {\n throwError('Error with the retrieval of removed participants', commit, ex)\n } finally {\n commit('setLoading', false)\n }\n },\n\n /***\n * Sets a current application state for a single selected participant.\n * @param commit\n * @param context\n * @param id\n */\n async setCurrentParticipantByID(\n context,\n { id, typeProgramID }: { id: PlayerInfoIDType; typeProgramID: string }\n ) {\n const { state, dispatch, commit } = pactionContext(context)\n try {\n if (!state.participants) {\n throwError(\"Can't find an ID on an empty list of participants\", context.commit)\n return\n }\n // do we already have it as current item?\n if (\n state.participantUnderEditId == id &&\n state.currentItem &&\n PlayerId(state.currentItem) == id &&\n state.currentItem.typeProgramID == typeProgramID\n ) {\n return\n }\n\n // go ahead and preload the template, the vue components will shuffle it in when it\n // gets there, preferring the league player we already have in memory as a place to start.\n\n const index = state.participants.findIndex((y) => PlayerId(y) == id && y.typeProgramID == typeProgramID)\n\n if (index >= 0) {\n commit.setCurrent({ participant: state.participants[index] })\n await dispatch.getParticipant({ id: PlayerId(state.participants[index]) })\n return\n }\n } catch (ex) {\n commit.clearCurrent()\n throwError(ex.message, context.commit, ex)\n }\n throwError(`Participant not current in edit ${id}`, context.commit)\n },\n setCurrentRemovedParticipantByID(\n context,\n { id, typeProgramID }: { id: PlayerInfoIDType; typeProgramID: string }\n ) {\n const { state, commit } = pactionContext(context)\n try {\n if (!state.removedParticipants) {\n throwError(\"Can't find an ID on an empty list of participants\", context.commit)\n return\n }\n // do we already have it as current item?\n if (\n state.currentRemovedPartcipant &&\n PlayerId(state.currentRemovedPartcipant) == id &&\n state.currentRemovedPartcipant.typeProgramID == typeProgramID\n ) {\n return\n }\n\n // go ahead and preload the template, the vue components will shuffle it in when it\n // gets there, preferring the league player we already have in memory as a place to start.\n\n const index = state.removedParticipants.findIndex(\n (y) => PlayerId(y) == id && y.typeProgramID == typeProgramID\n )\n\n if (index >= 0) {\n commit.setCurrentRemovedParticipant({ participant: state.removedParticipants[index] })\n // await dispatch.getParticipant({ id: PlayerId(state.removedParticipants[index]) })\n return\n }\n } catch (ex) {\n commit.clearCurrent()\n throwError(ex.message, context.commit, ex)\n }\n throwError(`Participant not current in edit ${id}`, context.commit)\n },\n async removeParticipant(\n { commit },\n { upwardLeagueID, id }: { upwardLeagueID: UpwardLeagueIDType; id: PlayerInfoIDType }\n ) {\n commit('setLoading', true)\n try {\n await participantClient.remove(upwardLeagueID, id)\n commit(mutationNames.removeParticipant, { id })\n } catch (e) {\n throw e\n } finally {\n commit('setLoading', false)\n }\n },\n async unRemoveParticipant(\n { commit },\n {\n upwardLeagueID,\n id,\n typeProgramID,\n }: { upwardLeagueID: UpwardLeagueIDType; id: PlayerInfoIDType; typeProgramID: string }\n ) {\n commit('setLoading', true)\n try {\n await participantClient.unRemove(upwardLeagueID, id, typeProgramID)\n commit(mutationNames.clearCurrenRemovedParticipant)\n } catch (e) {\n throw e\n } finally {\n commit('setLoading', false)\n }\n },\n /***\n * Grab the specified participant (won't use the selected due to new and copy UC's)\n * The optional league ID is used for the import scenario where contacts need to be copied from another league.\n *\n */\n async getNewTemplate(\n ctx,\n { id, importLeagueID }: { id?: PlayerInfoIDType; importLeagueID?: string }\n ): Promise {\n let template = null\n const { commit, state } = pactionContext(ctx)\n try {\n if (state.participantUnderEditId == id && state.operation != RetrieveEnum.edit) {\n return //nothing to communicate.\n }\n commit.setParticipantUnderEditId({ id: id ?? NEW_PARTICIPANT })\n commit.setPlayerLoading(true)\n template = await participantClient.retrieveTemplate(state.lastLeagueLoaded, id, importLeagueID)\n\n if (template) {\n template = { ...template, contacts: realContactFromFakers(template?.contacts ?? []) } // not useful to give us a fake blank contact.\n commit.setParticipantUnderEdit({ participant: template as LeaguePlayer })\n }\n } catch (ex) {\n throwError(ex.message, ctx.commit, ex)\n } finally {\n commit.setPlayerLoading(false)\n }\n if (!template) {\n //load failed.\n commit.setRetrieveType({ operation: RetrieveEnum.nothing })\n commit.setParticipantUnderEditId({ id: NO_ACTIVE_PARTICIPANT })\n throwError(`Server returned an invalid template for ${id}`)\n return\n }\n },\n /***\n * Grab the specified participant as an edit (won't use the selected due to new and copy UC's)\n */\n async getParticipant(ctx, { id }: { id: PlayerInfoIDType }): Promise {\n let template = null\n const { commit, state } = pactionContext(ctx)\n\n try {\n if (state.participantUnderEditId == id && state.operation == RetrieveEnum.edit) {\n return //nothing to communicate.\n }\n\n commit.setParticipantUnderEditId({ id })\n\n commit.setPlayerLoading(true)\n template = await participantClient.retrieveParticipant(state.lastLeagueLoaded, id)\n } catch (ex) {\n throwError(ex.message, ctx.commit, ex)\n } finally {\n commit.setPlayerLoading(false)\n }\n\n if (template) {\n commit.setParticipantUnderEdit({ participant: template })\n } else {\n //load failed.\n commit.setRetrieveType({ operation: RetrieveEnum.nothing })\n\n commit.setParticipantUnderEditId({ id: NO_ACTIVE_PARTICIPANT })\n throwError(`Server returned an invalid template for ${id}`)\n return\n }\n },\n})\n\nexport const namespace = 'participants'\n\nexport const participants = {\n namespaced: true as true,\n state: participantState as ParticipantState,\n getters: getterTree,\n mutations,\n actions,\n}\nconst pactionContext = (context: any) => moduleActionContext(context, participants)\n","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!./RunningOrderDetailScreen.vue?vue&type=style&index=0&id=b690c074&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex flex-column min-h-100 flex-grow-1\"},[_c('div',{staticClass:\"flex-grow-1 d-flex flex-column\"},[_vm._t(\"default\")],2),_c('div',[_vm._t(\"footer\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'FullBody',\n})\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!./FullBody.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!./FullBody.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FullBody.vue?vue&type=template&id=998044f2&\"\nimport script from \"./FullBody.vue?vue&type=script&lang=ts&\"\nexport * from \"./FullBody.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","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!./ModalDateTimePicker.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!./TrackingNumber.vue?vue&type=style&index=0&id=01cc58e4&scoped=true&lang=css&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductQuantitySelector.vue?vue&type=style&index=0&id=7bc4548c&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Alert.vue?vue&type=style&index=0&id=1bff68cf&lang=scss&scoped=true&\"","import { OrderProduct } from '@/models/Order/OrderProduct'\nimport { OrderProductSize } from '@/models/Order/OrderProductSize'\nlet SortOrder = 7000 //just arbitrarily high\n\nexport function getEmptyOrderProduct(): OrderProduct {\n return {\n cmsProductDescription: '',\n cmsProductImageUrls: [],\n cmsProductName: 'temp name',\n cmsSizingGuideUrl: null,\n cmsUnitDescription: '',\n upwardProductID: '',\n typeProgramID: '',\n cost: 0,\n orderMinimumQuantity: 0,\n orderMaximumQuantity: 0,\n orderFreeQuantity: 0,\n orderSelectionRequired: true,\n individualID: 0,\n id: 0,\n typeProductGroupID: '',\n registrationLabel: '',\n extendedDescription: '',\n isActive: true,\n sortOrder: ++SortOrder,\n productColorSizes: [getEmptyOrderProductSize()],\n orderQuantity: 0,\n jerseyNumber: '',\n requiresJerseyNumber: false,\n hasSNumbers: false,\n duplicateProductMatchingKey: null,\n }\n}\n\nfunction getEmptyOrderProductSize(): OrderProductSize {\n return {\n typeSizeID: '',\n sizeDescription: '',\n costOffset: 0,\n typeColorID: '',\n colorDescription: '',\n exchangeCost: 0,\n orderQuantity: 0,\n orderFreeQuantity: 0,\n previouslyOrdered: 0,\n }\n}\n\nexport function getEmptyOrderProductList(): OrderProduct[] {\n return [getEmptyOrderProduct()]\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResourceList.vue?vue&type=style&index=0&id=0ad85d0c&scoped=true&lang=scss&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectQuantities.vue?vue&type=style&index=0&id=6f818fc7&lang=scss&scoped=true&\"","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!./NumberInput.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OPRTransactionItem.vue?vue&type=style&index=0&id=b4f86ee2&scoped=true&lang=scss&\"","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardLeagueScoringTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardLeagueScoringTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveLeagueScoringTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'leagueScoringTypes'\n\nexport const leagueScoringTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:(\"d-none toast fade \" + _vm.classNames)},[_c('div',{staticClass:\"toast-body\"},[(_vm.dismissable)?_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.dismiss}},[_vm._v(\"×\")]):_vm._e(),_c('div',{staticClass:\"pr-5\"},[_vm._t(\"default\")],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch } from '@vue/composition-api'\n\nexport enum AlertTypeEnum {\n DANGER = 'danger',\n NOTICE = 'notice',\n}\n\nexport default defineComponent({\n name: 'Alert',\n props: {\n value: { type: Boolean, required: true },\n dismissable: { type: Boolean, required: false, default: true },\n timeout: { type: Number, required: false, default: 10 * 1000 },\n type: { type: String, required: false, default: AlertTypeEnum.DANGER },\n },\n setup(props, ctx) {\n const timeoutHandle = ref(null)\n\n function dismiss() {\n ctx.emit('input', false)\n ctx.emit('change', false)\n }\n\n const typeClass = computed(() => {\n switch (props.type) {\n case AlertTypeEnum.DANGER:\n return 'toast-danger'\n case AlertTypeEnum.NOTICE:\n return 'toast-notice'\n }\n })\n\n const classNames = computed(() => `${props.value ? 'show d-block' : ''} ${typeClass.value}`)\n\n watch(\n () => props.value,\n () => {\n if (!props.value && timeoutHandle.value) {\n clearTimeout(timeoutHandle.value)\n }\n\n if (props.value && props.timeout) {\n timeoutHandle.value = setTimeout(dismiss, props.timeout)\n }\n }\n )\n\n return { classNames, dismiss }\n },\n})\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!./Alert.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!./Alert.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Alert.vue?vue&type=template&id=1bff68cf&scoped=true&\"\nimport script from \"./Alert.vue?vue&type=script&lang=ts&\"\nexport * from \"./Alert.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Alert.vue?vue&type=style&index=0&id=1bff68cf&lang=scss&scoped=true&\"\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 \"1bff68cf\",\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-stepper-content',{attrs:{\"step\":_vm.step}},[_c('div',[_vm._t(\"default\",[_vm._v(\"Default Content Slot\")])],2),_c('div',[_vm._t(\"footer\",[(_vm.defaultButton)?_c('v-btn',{staticClass:\"my-3\",attrs:{\"disabled\":_vm.isButtonDisabled,\"color\":\"primary\",\"ripple\":false},on:{\"click\":function($event){return _vm.$emit('goNext')}}},[_vm._v(\" \"+_vm._s(_vm.buttonLabel)+\" \")]):_vm._e()])],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\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'StepperContent',\n props: {\n step: { type: [String, Number], required: false, default: '1' },\n defaultButton: { type: Boolean, required: false, default: true },\n isButtonDisabled: { type: Boolean, required: false, default: true },\n buttonLabel: { type: String, required: false, default: 'Continue' },\n },\n})\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!./StepperContent.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!./StepperContent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StepperContent.vue?vue&type=template&id=1bb1b217&\"\nimport script from \"./StepperContent.vue?vue&type=script&lang=ts&\"\nexport * from \"./StepperContent.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 { VStepperContent } from 'vuetify/lib/components/VStepper';\ninstallComponents(component, {VBtn,VStepperContent})\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ButtonPicker.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TeamCardField.vue?vue&type=style&index=0&id=e17e50c0&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=style&index=2&id=4fa4e644&scoped=true&lang=scss&\"","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardSizeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardSizeTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveSizeTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'sizeTypes'\n\nexport const sizeTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","/***\n * To add a feature flag, add it to the enum below.\n *\n * To exclude a feature from a build use the .env rules and set VUE_APP_FEATURES_EXCLUDED\n *\n * To use a feature flag add a setup function (e.g.\n * ```\n * @Component({\n * setup(){ return({...useFeatureFlags()})}\n * }\n * {\n * ...\n * }\n * ```\n * to test a feature flag after setup in a template do something like this:\n * ```\n *
\n * ```\n *\n */\n\nimport { computed, Ref, ref } from '@vue/composition-api'\nimport featureClient from '@/clients/featureClient'\n/**\n * Official List of what can and cannot be turned on.\n *\n * format is {{ section }} double underscore {{ feature name }}\n *\n */\n\nexport enum FeaturesEnum {\n ADMIN = 'ADMIN',\n COACH_APP = 'COACH_APP',\n COMPONENT_TEST = 'COMPONENT_TEST',\n DIVISIONS_TEAMS = 'DIVISIONS_TEAMS',\n FEATURES = 'FEATURES', //** the features menu item\n HOME__SEARCH_AND_NOTIFICATION = 'HOME__SEARCH_AND_NOTIFICATION',\n THE_AUTH_WALL__REDIRECT_TO_MOBILE = 'THE_AUTH_WALL__REDIRECT_TO_MOBILE',\n LEAGUE_ORDERS = 'LEAGUE_ORDERS',\n ORDERS__LEAGUE = 'ORDERS__LEAGUE', // orders menu, league item.\n PARTICIPANTS__BATCH_EVAL = 'PARTICIPANTS__BATCH_EVAL',\n PARTICIPANTS__CLONE = 'PARTICIPANTS__CLONE',\n VOLUNTEERS__COACH_INVITE = 'VOLUNTEERS__COACH_INVITE',\n REPORTS = 'REPORTS',\n RETURNS = 'RETURNS',\n SCHEDULING = 'SCHEDULING',\n TEAM_PAGES = 'TEAM_PAGES',\n GROUP_MESSAGES = 'GROUP_MESSAGES',\n OPTOUT = 'OPTOUT',\n COMMUNICATION_v1 = 'COMMUNICATION_v1',\n __UNSET__ = '__UNSET__', //** place holder for unset feature flags, don't use this value or you'll re-bootstrap features\n}\n\ntype FeatureMap = Record\n\n//** this will contain the things we want turned off, so a blacklist of strings from above.\nlet featuresExcludedArr: Ref | undefined\n\nexport function useFeatureFlags() {\n if (!featuresExcludedArr) {\n featuresExcludedArr = ref([FeaturesEnum.__UNSET__])\n // eslint-disable-next-line no-floating-promise/no-floating-promise\n bootstrapFeatures()\n }\n function isFeatureInitialized() {\n return (featuresExcludedArr?.value ?? []).indexOf(FeaturesEnum.__UNSET__) >= 0\n }\n\n /**\n * Map of features with on off values that are reactive based on feature state.\n */\n const features = computed(() => {\n // @ts-ignore\n const v!: FeatureMap = {} as FeatureMap\n for (const i in FeaturesEnum) {\n v[i as FeaturesEnum] = isFeatureOn(i as FeaturesEnum)\n }\n return v as FeatureMap\n })\n\n /**\n * Tells you if the given feature is on, probably using the reactive\n * version (features.xyz) is more efficient.\n * @return {boolean} y/n\n * @param feature\n */\n function isFeatureOn(feature: FeaturesEnum) {\n let x = false\n\n if (isFeatureInitialized()) {\n bootstrapFeatures().then(() => {\n x = (featuresExcludedArr?.value ?? []).indexOf(feature) < 0\n })\n } else {\n x = (featuresExcludedArr?.value ?? []).indexOf(feature) < 0\n }\n return x\n }\n\n /**\n * Dynamically update the excluded features set.\n * @param {FeaturesEnum[]} features to exclude\n */\n function setExcludedFeatures(features: FeaturesEnum[]) {\n if (features && Array.isArray(features)) {\n if (isFeatureInitialized()) {\n bootstrapFeatures().then(() => {\n featuresExcludedArr!.value = features\n })\n } else {\n featuresExcludedArr!.value = features\n }\n }\n }\n\n /**\n * Load features, as said earlier, the .env file is considered\n * an override to the packages ./features-excluded.json\n * I would think of features-excluded as being things that are definitely\n * not ready for production and the .env file things you want to\n * keep on to test.\n */\n async function bootstrapFeatures() {\n if (process.env.VUE_APP_FEATURES_EXCLUDED) {\n try {\n featuresExcludedArr!.value = JSON.parse(process.env.VUE_APP_FEATURES_EXCLUDED)\n } catch (e) {\n console.warn(\n `Tried and couldn't parse FEATURES_EXCLUDED from .env \"${process.env.VUE_APP_FEATURES_EXCLUDED}\" Leave it blank if you don't intend to use it. `\n )\n throw e\n }\n } else {\n try {\n featuresExcludedArr!.value = await featureClient.getExcludedFeatures()\n } catch (e) {\n console.warn(\n `Tried and couldn't parse ./features-excluded.json. Leave a blank array \"[]\" in the file for every feature on.`\n )\n throw e\n }\n }\n }\n return {\n setExcludedFeatures,\n isFeatureOn,\n bootstrapFeatures,\n featuresExcluded: computed(() => featuresExcludedArr!.value),\n features,\n /**\n * List of features that are considered valid to ask about.\n */\n featuresValid: computed(() => FeaturesEnum),\n }\n}\n","/**\n * Grab the features-excluded.json -- later we can make this way more complicated\n * We expect to see a JSON array of feature flags of excluded features.\n */\nconst getExcludedFeatures = async function getExcludedFeatures() {\n const f = await fetch('/features-excluded.json')\n if (f && f.ok) {\n return await f.json()\n }\n}\n\nexport default { getExcludedFeatures }\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StartupOrderProductCardUR.vue?vue&type=style&index=0&id=2d2baf5f&lang=scss&scoped=true&\"","const keyPrefix = 'streamline_'\n\nconst getRaw = (key: string) => {\n const fullKey = getFullKey(key)\n return localStorage.getItem(fullKey)\n}\n\nconst getParsed = (key: string) => {\n const json = getRaw(key)\n\n if (json === null) {\n return null\n }\n\n return JSON.parse(json) as T | null\n}\n\nconst set = (key: string, value: string | object) => {\n const fullKey = getFullKey(key)\n\n if (typeof value === 'object') {\n value = JSON.stringify(value)\n }\n\n return localStorage.setItem(fullKey, value)\n}\n\nconst remove = (key: string) => {\n const fullKey = getFullKey(key)\n localStorage.removeItem(fullKey)\n}\n\nconst getFullKey = (key: string) => {\n return `${keyPrefix}${key}`\n}\n\nexport default {\n getRaw,\n getParsed,\n set,\n remove,\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotificationCard.vue?vue&type=style&index=0&id=c022fe0e&lang=scss&scoped=true&\"","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!./ComponentTest.vue?vue&type=style&index=0&id=27b9535b&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!./ContactPicker.vue?vue&type=style&index=0&id=5285dcfe&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DivisionForm.vue?vue&type=style&index=0&id=6e980ea8&lang=scss&scoped=true&\"","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!./OrderDetailScreen.vue?vue&type=style&index=0&id=4b340422&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HorizontalTabFilter.vue?vue&type=style&index=0&id=bb669696&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Cart.vue?vue&type=style&index=0&id=17b91e25&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-stepper',{attrs:{\"vertical\":_vm.vertical},on:{\"change\":_vm.change},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}},[(_vm.$slots.header)?_c('v-stepper-header',[_vm._t(\"header\")],2):_vm._e(),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'Stepper',\n props: {\n value: { type: Number, default: 1, required: false },\n vertical: { type: Boolean, default: false, required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(1)\n\n function change() {\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n },\n { immediate: true }\n )\n\n return {\n internalValue,\n change,\n }\n },\n})\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!./Stepper.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!./Stepper.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Stepper.vue?vue&type=template&id=3d0d88f4&\"\nimport script from \"./Stepper.vue?vue&type=script&lang=ts&\"\nexport * from \"./Stepper.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 { VStepper } from 'vuetify/lib/components/VStepper';\nimport { VStepperHeader } from 'vuetify/lib/components/VStepper';\ninstallComponents(component, {VStepper,VStepperHeader})\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SimpleGrid.vue?vue&type=style&index=0&id=2b7d84da&lang=scss&scoped=true&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GroupList.vue?vue&type=style&index=0&id=064afa00&lang=scss&scoped=true&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FacilityEditor.vue?vue&type=style&index=0&id=d262cc4e&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HorizontalNavTabs.vue?vue&type=style&index=0&id=195fee2e&lang=scss&scoped=true&\"","import { DivisionGame } from '@/GeneratedTypes/DivisionGame'\nimport { DivisionGameInfo } from '@/GeneratedTypes/ListInfo/DivisionGameInfo'\n\nexport function DivisionGameInfoToDivisionGame(g: DivisionGameInfo): DivisionGame {\n return {\n awayTeamID: g.awayTeamID,\n divisionID: g.divisionID,\n facilityID: g.facilityID,\n gameEnd: g.gameEnd,\n gameID: g.gameID,\n gameStart: g.gameStart,\n homeTeamID: g.homeTeamID,\n leagueID: g.leagueID,\n roundNumber: g.roundNumber,\n typeProgramID: g.typeProgramID ?? '',\n volunteers: g.volunteers,\n winningTeamID: g.winningTeamID,\n homeTeamScore: g.homeTeamScore,\n awayTeamScore: g.awayTeamScore,\n typeDivisionGameID: g.typeDivisionGameID,\n }\n}\n","import { LeaguePracticeNight } from '@/GeneratedTypes/LeaguePracticeNight'\nimport { FacilityAvailability } from '@/GeneratedTypes/FacilityAvailability'\nimport { eventTypes } from '@/store/facilities'\n\nclass FacilityAvailabilityModel implements FacilityAvailability {\n id!: number\n typeDayID!: string\n typeFacilityEventID!: string\n startTime!: string\n endTime!: string\n}\n\nexport const FACILITY_DEFAULT_TIMES = {\n start: '07:00',\n end: '22:00',\n}\n\nconst updatePracticeDays = (\n days: LeaguePracticeNight[] | null,\n availability: FacilityAvailability[] | null\n) => {\n if (days) {\n //add practice days that don't exist\n if (availability) {\n days.forEach((d) => {\n const existingDay = availability.find(\n (a) => a.typeDayID == d.typeDayID && a.typeFacilityEventID == eventTypes.Practices\n )\n\n // add practice day to availability if it doesn't exist\n if (!existingDay) {\n const practice: FacilityAvailability = new FacilityAvailabilityModel()\n practice.typeDayID = d.typeDayID\n practice.typeFacilityEventID = eventTypes.Practices\n practice.startTime = FACILITY_DEFAULT_TIMES.start\n practice.endTime = FACILITY_DEFAULT_TIMES.end\n availability.push(practice)\n }\n })\n }\n }\n\n //remove practice days that are not selected\n const daysToRemove: string[] = []\n\n if (availability && days) {\n availability.forEach((a) => {\n if (a.typeFacilityEventID == eventTypes.Practices) {\n const selectedDay = days.find((d) => d.typeDayID == a.typeDayID)\n\n if (!selectedDay || days.length === 0) {\n daysToRemove.push(a.typeDayID.toString())\n }\n }\n })\n }\n\n if (availability) {\n daysToRemove.forEach((item) => {\n const dayIndx = availability.findIndex(\n (a) => a.typeDayID === item && a.typeFacilityEventID == eventTypes.Practices\n )\n\n if (dayIndx > -1) {\n availability.splice(dayIndx, 1)\n }\n })\n }\n}\n\nconst updateGameDays = (days: string[] | null, availability: FacilityAvailability[] | null) => {\n if (days) {\n //add practice days that don't exist\n if (availability) {\n days.forEach((d) => {\n const existingDay = availability.find(\n (a) => a.typeDayID == d && a.typeFacilityEventID == eventTypes.Games\n )\n\n // add practice day to availability if it doesn't exist\n if (!existingDay) {\n const game: FacilityAvailability = new FacilityAvailabilityModel()\n game.typeDayID = d\n game.typeFacilityEventID = eventTypes.Games\n game.startTime = FACILITY_DEFAULT_TIMES.start\n game.endTime = FACILITY_DEFAULT_TIMES.end\n availability.push(game)\n }\n })\n }\n }\n\n //remove game days that are not selected\n const daysToRemove: string[] = []\n\n if (availability && days) {\n availability.forEach((a) => {\n if (a.typeFacilityEventID == eventTypes.Games) {\n const selectedDay = days.find((d) => d == a.typeDayID)\n\n if (!selectedDay || days.length === 0) {\n daysToRemove.push(a.typeDayID.toString())\n }\n }\n })\n }\n\n if (availability) {\n daysToRemove.forEach((item) => {\n const dayIndx = availability.findIndex(\n (a) => a.typeDayID === item && a.typeFacilityEventID == eventTypes.Games\n )\n\n if (dayIndx > -1) {\n availability.splice(dayIndx, 1)\n }\n })\n }\n}\n\nexport default {\n updatePracticeDays,\n updateGameDays,\n}\n","import { GridColumn } from '@/models/Grid/GridColumn'\n\nexport function downloadCSV(columns: GridColumn[], data: { [key: string]: any }, fileName: string) {\n const csvData =\n 'data:text/csv;charset=utf-8,' +\n columns.map((x) => `\"${x.headerText}\"`).join(',') +\n '\\n' +\n data\n .map((x: { [key: string]: any }) =>\n columns\n .map((y) => {\n const key = y.field ?? ''\n return `\"${x[key]}\"`\n })\n .join(',')\n )\n .join('\\n')\n\n const encodedUri = encodeURI(csvData)\n const link = document.createElement('a')\n link.setAttribute('href', encodedUri)\n link.setAttribute('download', fileName)\n document.body.appendChild(link) // Required for FF\n\n link.click()\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GradeRangeSlider.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.mode == 'select')?_c('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"items-list\":_vm.list,\"value-property-name\":_vm.valueProperty,\"text-property-name\":\"name\",\"show-blank-item\":!_vm.required,\"warpperClass\":_vm.warpperClass},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}}):_vm._e(),(_vm.mode == 'radio')?_c('RadioGroupInput',{class:_vm.warpperClass,attrs:{\"label\":_vm.label,\"required\":_vm.required,\"items-list\":_vm.list,\"value-property-name\":\"value\",\"text-property-name\":\"name\",\"show-blank-item\":!_vm.required},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}}):_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\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\n\nexport default defineComponent({\n name: 'DayOfWeekMultiPicker',\n components: {\n SelectInput,\n RadioGroupInput,\n },\n props: {\n /**\n * show days is a list of Days that can be shown, all if not set.\n */\n showDays: { type: Array as PropType, required: false },\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n horizontal: { type: Boolean, default: false, required: false },\n value: { type: (null as unknown) as PropType, required: true },\n mode: { type: String, required: false, default: 'select' },\n allOption: { type: Boolean, required: false, default: false },\n warpperClass: { type: String, required: false, default: '' },\n valueProperty: { type: String, required: false, default: 'value' },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n const options = ref(days)\n\n const list = computed(() => {\n if (props.showDays?.length) {\n return options.value.filter((x) => props.showDays!.indexOf(x.name) >= 0)\n }\n\n if (props.allOption && !options.value.find((o) => o.name == 'All')) {\n options.value.unshift({\n name: 'All',\n abbr3: 'All',\n abbr2: 'all',\n selected: false,\n enabled: true,\n ordinal: null,\n value: null,\n })\n }\n return options.value\n })\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n return {\n internalValue,\n list,\n handleChange,\n }\n },\n})\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!./DayOfWeekPicker.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!./DayOfWeekPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DayOfWeekPicker.vue?vue&type=template&id=7b492248&\"\nimport script from \"./DayOfWeekPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./DayOfWeekPicker.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","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DivisionDayPreferencsModal.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"time-picker\"},[_c('div',{staticClass:\"form-group\",class:_vm.noBottomPadding ? 'mb-0 pb-0' : ''},[_c('input-label',{attrs:{\"name\":_vm.label,\"label\":_vm.label,\"inline\":true,\"required\":_vm.required,\"for\":_vm.id,\"sub-label\":_vm.subLabel,\"sub-label-inline\":_vm.subLabelInline,\"enabled\":_vm.enabled}}),_c('div',{staticClass:\"input-group pb-0\"},[_c('combobox',{attrs:{\"list\":_vm.times,\"enabled\":_vm.enabled},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}}),(_vm.invalid)?_c('span',{staticClass:\"inline-error\"},[_vm._v(_vm._s(_vm.invalid))]):_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\nimport InputLabel from '@/elements/InputLabel.vue'\nimport Combobox from '@/elements/Combobox.vue'\nimport dayjs from 'dayjs'\nimport uuid from 'uuid'\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport { ValidationProvider } from 'vee-validate'\n/* eslint-disable @typescript-eslint/no-var-requires */\nconst customParseFormat = require('dayjs/plugin/customParseFormat')\n\nexport default defineComponent({\n name: 'TimePicker',\n props: {\n value: { type: String, required: true },\n label: { type: String, required: false, default: '' },\n placeholder: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n format: { type: String, required: false, default: 'HH:mm' }, //dayjs format\n interval: { type: Number, required: false, default: 30 }, // in minutes\n min: { type: String, required: false, default: '07:00:00' }, //must match format prop\n max: { type: String, required: false, default: '22:00:00' }, //must match format prop\n VeeValidateRules: { type: String, required: false, default: '' },\n subLabel: { type: String, required: false, default: '' },\n subLabelInline: { type: Boolean, required: false, default: false },\n id: { type: String, required: false, default: '' },\n enabled: { type: Boolean, required: false, default: true },\n name: { type: String, required: false, default: '' },\n tabIndex: { type: String, required: false, default: '' },\n showBlankItem: { type: Boolean, required: false, default: false },\n blankItemText: { type: String, required: false, default: '' },\n noBottomPadding: { type: Boolean, required: false, default: false },\n },\n components: {\n InputLabel,\n ValidationProvider,\n Combobox,\n },\n setup(props, ctx) {\n dayjs.extend(customParseFormat)\n const selected = ref('')\n const invalid = ref('')\n const elemId = 'timepicker-' + uuid.v4()\n const displayFormat = 'h:mmA' //changing the case of the meridiem indicator will require changing handleChange()\n\n const start = computed(() => dayjs(props.min, props.format))\n const end = computed(() => dayjs(props.max, props.format))\n\n function handleChange() {\n let val = selected.value\n\n if (isValid(selected.value)) {\n val = dayjs(selected.value.toUpperCase(), displayFormat).format(props.format)\n invalid.value = ''\n } else if (val != '') {\n invalid.value = 'invalid time (e.g. 10:00AM)'\n return\n }\n ctx.emit('input', val)\n ctx.emit('change', val)\n }\n\n function isValid(time: string) {\n return time.match(/((?:1[0-2])|(?:0?[0-9])):([0-5][0-9]) ?([ap]m|[AP]M)/) != null\n }\n\n const times = computed(() => {\n const list = [start.value.format(displayFormat)]\n let time = start.value.add(props.interval, 'm')\n\n while (time.isBefore(end.value)) {\n list.push(time.format(displayFormat))\n time = time.add(props.interval, 'm')\n }\n\n list.push(end.value.format(displayFormat))\n return list\n })\n\n watch(\n () => props.value,\n () => {\n if (props.value != '' && props.value != null) {\n selected.value = dayjs(props.value, props.format).format(displayFormat)\n }\n },\n { immediate: true }\n )\n watch(() => selected.value, handleChange, { immediate: true })\n\n return {\n times,\n handleChange,\n selected,\n elemId,\n invalid,\n }\n },\n})\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!./TimePicker2.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!./TimePicker2.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TimePicker2.vue?vue&type=template&id=048315fe&\"\nimport script from \"./TimePicker2.vue?vue&type=script&lang=ts&\"\nexport * from \"./TimePicker2.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","export enum FacilityEventEnum {\n GAMES = 'GAMES',\n PRACTICES = 'PRACTICES',\n SQUADS = '', //this doesn't exist on server, gives us an alt version\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegistrationTransactionsScreen.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StepperStep.vue?vue&type=style&index=0&id=00440903&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',[_c('div',[_vm._v(\"ATTN: \"+_vm._s(_vm.value.attention))]),_c('div',[_vm._v(_vm._s(_vm.value.name))]),_c('div',[_vm._v(_vm._s(_vm.value.street1))]),_c('div',[_vm._v(_vm._s(_vm.value.street2))]),_c('div',[_vm._v(\" \"+_vm._s(_vm.value.subdivision1)+\", \"+_vm._s(_vm.value.subdivision2)+\" \"+_vm._s(_vm.value.postalCode)+\" \")]),_c('div',[_vm._v(_vm._s(_vm.value.countryCode))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport { xShipToBase } from '@/GeneratedTypes/xOrder/xShipToBase.ts'\nimport { getEmptyxShipToBase } from '@/lib/support/models/GeneratedTypes/xOrders/xShipToBase.ts'\n\nexport default defineComponent({\n name: 'ShippingAddressDisplay',\n props: {\n value: { type: Object as PropType, default: getEmptyxShipToBase, required: false },\n },\n})\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!./ShippingAddressDisplay.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!./ShippingAddressDisplay.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ShippingAddressDisplay.vue?vue&type=template&id=f3d4f92c&\"\nimport script from \"./ShippingAddressDisplay.vue?vue&type=script&lang=ts&\"\nexport * from \"./ShippingAddressDisplay.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","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReturnsOrderListSection.vue?vue&type=style&index=0&id=7bd6cd32&lang=scss&scoped=true&\"","export interface OrderProductSize {\n typeSizeID: string\n typeColorID: string\n colorDescription: string\n sizeDescription: string\n costOffset: number\n exchangeCost: number\n orderQuantity: number\n orderFreeQuantity: number\n previouslyOrdered: number\n}\nlet typeCounter = 0\nexport function getEmptyOrderProductSize() {\n return {\n typeSizeID: (--typeCounter).toString(),\n typeColorID: (--typeCounter).toString(),\n sizeDescription: '',\n colorDescription: '',\n costOffset: 0,\n orderQuantity: 0,\n orderFreeQuantity: 0,\n exchangeCost: 0,\n previouslyOrdered: 0,\n } as OrderProductSize\n}\n","import { programTypes } from '@/store/programTypes'\n\nexport function isCheer(typeProgramID: string | null) {\n let retval = false\n const program = programTypes.state.items.find((x) => x.upwardTypeID === typeProgramID)\n if (program) {\n retval = program.isCheer!\n }\n\n return retval\n}\n\nexport function programTypeDescription(typeProgramID: string | null) {\n let retval: string | null = null\n const program = programTypes.state.items.find((x) => x.upwardTypeID === typeProgramID)\n if (program) {\n retval = program.shortDescription\n }\n\n return retval\n}\n\nexport const ProgramTypes: Record = {\n BASKETBALL: 'Basketball',\n BASKETBALLCHEERLEADING: 'Cheerleading',\n SOCCER: 'Soccer',\n FOOTBALL: 'Football',\n BASKETBALLCAMP: 'Basketball',\n CHEERLEADINGCAMP: 'Cheerleading',\n SOCCERCAMP: 'Soccer ',\n FOOTBALLCHEERLEADING: 'Cheerleading',\n FOOTBALLCAMP: 'Football',\n VOLLEYBALL: 'Volleyball',\n BASEBALL: 'Baseball',\n SOFTBALL: 'Softball',\n UPWARDSELECTMSS: 'Upward Select',\n PICKLEBALL: 'Pickleball',\n}\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\nimport { defineComponent, onMounted } from '@vue/composition-api'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Index',\n setup() {\n onMounted(async () => {\n //go ahead and get some key UpwardTypes loaded so that they are ready when needed\n await store.dispatch.leagueTypes.fetchAll(false)\n await store.dispatch.programTypes.fetchAll({ force: false })\n await store.dispatch.colorTypes.fetchAll({ force: false })\n await store.dispatch.gradeTypes.fetchAll(false)\n })\n\n return {}\n },\n})\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!./Index.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!./Index.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Index.vue?vue&type=template&id=ccfe9c7a&scoped=true&\"\nimport script from \"./Index.vue?vue&type=script&lang=ts&\"\nexport * from \"./Index.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Index.vue?vue&type=style&index=0&id=ccfe9c7a&lang=scss&scoped=true&\"\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 \"ccfe9c7a\",\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('router-view')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\nimport { defineComponent, onMounted } from '@vue/composition-api'\nimport FullBody from '@/components/FullBody.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'CreateOrEdit',\n components: {\n FullBody,\n },\n setup() {\n onMounted(async () => {\n await store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //get these cached up\n await store.dispatch.programTypes.fetchAll(false) //get these cached up\n })\n\n return {}\n },\n})\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!./CreateOrEdit.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!./CreateOrEdit.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CreateOrEdit.vue?vue&type=template&id=60603663&\"\nimport script from \"./CreateOrEdit.vue?vue&type=script&lang=ts&\"\nexport * from \"./CreateOrEdit.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('full-body',{staticClass:\"px-0\"},[_c('div',{staticClass:\"bg-light-2 p-3 flex-grow-1\"},[_c('div',{staticClass:\"row m-0\"},[_c('div',{staticClass:\"col-6\"},[_c('p',[_vm._v(\" You are on your way to creating an excellent experience for your community. After selecting the program type and sport below, you will walk through selecting all the dates, items, and participant fees. \")]),_c('p',[_vm._v(\" See the \"),_c('router-link',{attrs:{\"to\":\"/training/whatsnew\"}},[_vm._v(\"What's New section\")]),_vm._v(\" of Training, where you will also find many how-to videos to guide you in your sports ministry. \")],1)])]),_c('div',{staticClass:\"row m-0 bg-white pt-2\"},[_c('p',{staticClass:\"mb-2 col-12 font-weight-bold\"},[_vm._v(\" Select from the fields below to create a new program and share the gospel. \")]),_c('opportunity-type-select',{staticClass:\"col-md-2\",model:{value:(_vm.opportunityTypeId),callback:function ($$v) {_vm.opportunityTypeId=$$v},expression:\"opportunityTypeId\"}}),_c('league-type-select',{staticClass:\"col-md-3\",attrs:{\"opportunity-type-id\":_vm.opportunityTypeId},model:{value:(_vm.leagueTypeId),callback:function ($$v) {_vm.leagueTypeId=$$v},expression:\"leagueTypeId\"}}),(!_vm.isLeague)?_c('text-input',{staticClass:\"col-md-4 col-xl-3\",attrs:{\"label\":\"Program Name\",\"required\":\"\"},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}):_vm._e(),_c('div',{staticClass:\"col-md-3 pt-xl-3\"},[_c('button',{staticClass:\"btn btn-success mt-xl-3\",attrs:{\"disabled\":_vm.loading || !_vm.allowContinue},on:{\"click\":_vm.saveAndContinue}},[_c('i',{staticClass:\"fa fa-check mr-2\"}),(_vm.loading)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_vm._v(\" Save & Continue \")]],2)]),(_vm.showRunningWarning)?_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_vm._v(\" Only run club members with an active membership may create Upward Running programs. Join today at UpwardRunning.com or reach out to running@upwardsports.org. \")])])]):_vm._e(),(_vm.cmsDocumentId)?_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('page-content',{attrs:{\"documentId\":_vm.cmsDocumentId}})],1)])]):_vm._e()],1)]),_c('ReadFirstModal',{on:{\"ReadMeFirstConfirmed\":_vm.readFirstConfirmed},model:{value:(_vm.showModal),callback:function ($$v) {_vm.showModal=$$v},expression:\"showModal\"}})],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('select-input',{attrs:{\"label\":\"Program Type\",\"required\":\"\",\"enabled\":!_vm.isLoading,\"blank-item-text\":\"Choose a Program Type\",\"show-blank-item\":\"\",\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"items-list\":_vm.items},on:{\"change\":_vm.onChange},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'OpportunityTypeSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { required: true },\n },\n setup(props, ctx) {\n const items = computed(() => store.getters.opportunityTypes.allItems)\n\n const isLoading = ref(false)\n const selectedItem = ref(props.value)\n\n async function loadItems() {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n await store.dispatch.opportunityTypes.fetchAll(false)\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = props.value\n }\n )\n\n function onChange() {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n\n return {\n isLoading,\n selectedItem,\n items,\n onChange,\n }\n },\n})\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!./OpportunityTypeSelect.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!./OpportunityTypeSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OpportunityTypeSelect.vue?vue&type=template&id=7ac01cd6&\"\nimport script from \"./OpportunityTypeSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./OpportunityTypeSelect.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('select-input',{attrs:{\"label\":\"Sport\",\"required\":\"\",\"enabled\":_vm.enabled,\"blank-item-text\":\"Choose a Sport\",\"show-blank-item\":\"\",\"text-property-name\":\"description\",\"value-property-name\":\"id\",\"items-list\":_vm.items},on:{\"change\":_vm.onChange},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { UpwardLeagueTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardLeagueTypeID'\nimport { LeagueTypes } from '@/lib/common/LeagueTypes'\nimport store from '@/store'\nimport { cloneDeep } from 'lodash'\n\nexport default defineComponent({\n name: 'LeagueTypeSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n opportunityTypeId: { type: (null as unknown) as PropType, required: true },\n },\n setup(props, ctx) {\n function getByOpportunityTypeId(opportunityTypeId: string): UpwardLeagueTypeID[] {\n return store.getters.leagueTypes.byOpportunityTypeId(opportunityTypeId)\n }\n\n const isLoading = ref(false)\n const selectedItem = ref(props.value)\n const items = ref([])\n\n const enabled = computed(() => !!props.opportunityTypeId && !isLoading.value)\n\n async function loadItems() {\n if (isLoading.value || !props.opportunityTypeId) {\n return\n }\n\n isLoading.value = true\n await store.dispatch.leagueTypes.fetchAll(false)\n const tempList = cloneDeep(getByOpportunityTypeId(props.opportunityTypeId).filter((t) => t.active))\n const selectType = tempList.find((x) => x.upwardTypeID == LeagueTypes.UPWARDSELECT)\n if (selectType) {\n selectType.description = 'Other'\n }\n items.value = tempList\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => props.opportunityTypeId,\n async () => {\n selectedItem.value = null\n onChange()\n await loadItems()\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = props.value\n }\n )\n\n function onChange() {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n\n return {\n enabled,\n selectedItem,\n items,\n onChange,\n }\n },\n})\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!./LeagueTypeSelect.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!./LeagueTypeSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LeagueTypeSelect.vue?vue&type=template&id=4a5b6e05&\"\nimport script from \"./LeagueTypeSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./LeagueTypeSelect.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('Modal',{attrs:{\"title\":_vm.readMeFirstTitle},model:{value:(_vm.internalVal),callback:function ($$v) {_vm.internalVal=$$v},expression:\"internalVal\"}},[_c('PageContent',{attrs:{\"documentId\":_vm.documentID,\"showTitle\":false},on:{\"isLoading\":_vm.onIsLoadingChange,\"documentChange\":_vm.onDocumentChange}}),_c('div',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"disabled\":_vm.isReadMeFirstLoading},on:{\"click\":_vm.onTotalAccessClickedConfirmed}},[_vm._v(\" Continue to league creation \")])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch } from '@vue/composition-api'\n\nimport Modal from '@/components/Modal.vue'\nimport PageContent from '@/components/PageContent.vue'\nimport { PageContentDocument } from '@/models/PageContent/PageContentDocument'\nimport { UpwardOpportunityTypesByUpwardTypeID } from '@/lib/common/upwardOpportunityTypes'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ReadFirstModal',\n components: {\n Modal,\n PageContent,\n },\n props: {\n value: { type: Boolean, required: true },\n },\n setup(props, ctx) {\n const internalVal = ref(false)\n\n const isReadMeFirstLoading = ref(false)\n const readMeFirstTitle = ref('')\n\n const documentID = computed(() => {\n return store.getters.creationParameters.opportunityType ==\n UpwardOpportunityTypesByUpwardTypeID.UPWARDSELECT\n ? 'waitReadMeFirstSelect'\n : 'waitReadMeFirst'\n })\n\n watch(\n () => props.value,\n () => {\n internalVal.value = props.value\n }\n )\n\n watch(\n () => internalVal.value,\n (val: boolean) => {\n ctx.emit('input', val)\n }\n )\n\n function onIsLoadingChange(isLoading: boolean) {\n isReadMeFirstLoading.value = isLoading\n }\n\n function onDocumentChange(document: PageContentDocument) {\n readMeFirstTitle.value = document.title\n }\n\n function onTotalAccessClickedConfirmed() {\n ctx.emit('input', false)\n ctx.emit('ReadMeFirstConfirmed', true)\n }\n\n return {\n internalVal,\n readMeFirstTitle,\n documentID,\n isReadMeFirstLoading,\n onIsLoadingChange,\n onDocumentChange,\n onTotalAccessClickedConfirmed,\n }\n },\n})\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!./ReadFirstModal.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!./ReadFirstModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReadFirstModal.vue?vue&type=template&id=6150e792&\"\nimport script from \"./ReadFirstModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReadFirstModal.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","export interface UpwardRunningCredentials {\n displayName: string\n emailAddress: string\n expiration: Date | null\n activities: string\n}\n\nexport function canCreatePartnerChallenge(creds: UpwardRunningCredentials) {\n return (creds.activities ?? '').includes('PartnerChallenge.Create')\n}\n\nexport function canViewStripeReport(creds: UpwardRunningCredentials) {\n return (creds.activities ?? '').includes('Stripe.Get')\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, onMounted } from '@vue/composition-api'\nimport OpportunityTypeSelect from '@/components/OpportunityTypeSelect.vue'\nimport LeagueTypeSelect from '@/components/LeagueTypeSelect.vue'\nimport FullBody from '@/components/FullBody.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport ReadFirstModal from '@/views/Programs/ReadFirstModal.vue'\nimport PageContent from '@/components/PageContent.vue'\nimport { UpwardOpportunityTypesByUpwardTypeID } from '@/lib/common/upwardOpportunityTypes'\nimport { UpwardOpportunityTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardOpportunityTypeID'\nimport store from '@/store'\nimport { canCreatePartnerChallenge } from '@/models/UpwardRunning/Auth/UpwardRunningCredentials'\n\nexport default defineComponent({\n name: 'New',\n components: {\n FullBody,\n TextInput,\n LeagueTypeSelect,\n OpportunityTypeSelect,\n Loading,\n ReadFirstModal,\n PageContent,\n },\n setup(props, ctx) {\n const accountName = computed(() => store.getters.authorization.accountName)\n const isSystemsAndSupport = computed(() => store.getters.authorization.isSystemsAndSupport)\n const allOpportunities = computed(\n () => store.getters.opportunityTypes.allItems\n )\n\n const loading = ref(false)\n const name = ref('')\n const leagueTypeId = ref(null)\n const opportunityTypeId = ref(null)\n const showModal = ref(false)\n\n onMounted(async () => {\n await store.dispatch.upwardRunningAuth.getURCreds()\n })\n\n const cmsDocumentId = computed(() => {\n if (opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.LEAGUE) {\n return 'programTypeDescLeague'\n } else if (opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.CAMP) {\n return 'programTypeDescCamp'\n } else if (opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.CLINIC) {\n return 'programTypeDescClinic'\n } else if (opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.CONNECT) {\n return 'programTypeDescConnect'\n } else if (opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.UPWARDSELECT) {\n return 'programTypeDescUpwardSelect'\n } else if (opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.UPWARDRUNNING) {\n return 'programTypeDescUpwardRunning'\n }\n return ''\n })\n\n const leagueType = computed(() => {\n if (opportunityTypeId.value && leagueTypeId.value) {\n return store.getters.leagueTypes.byId(leagueTypeId.value)\n }\n\n return null\n })\n\n const opportunityType = computed(() => {\n if (opportunityTypeId.value) {\n return allOpportunities.value.find((ot) => ot.upwardTypeID === opportunityTypeId.value)\n }\n\n return null\n })\n\n const isLeague = computed(() => {\n return (\n opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.LEAGUE ||\n opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.UPWARDSELECT ||\n !opportunityTypeId.value\n )\n })\n\n const isLicense = computed(() => {\n return (\n isSystemsAndSupport.value &&\n (opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.LICENSING ||\n !opportunityTypeId.value)\n )\n })\n\n const isConnect = computed(() => {\n return (\n opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.CONNECT || !opportunityTypeId.value\n )\n })\n\n const isRunning = computed(() => {\n return (\n opportunityTypeId.value === UpwardOpportunityTypesByUpwardTypeID.UPWARDRUNNING ||\n !opportunityTypeId.value\n )\n })\n\n const allowContinue = computed(() => {\n if (isLeague.value) {\n return !!opportunityTypeId.value && !!leagueTypeId.value\n } else if (isRunning.value) {\n const urCreds = store.getters.upwardRunningAuth.urCreds\n return (\n urCreds != null &&\n canCreatePartnerChallenge(urCreds) &&\n !!opportunityTypeId.value &&\n !!leagueTypeId.value &&\n !!name.value\n )\n } else {\n return !!opportunityTypeId.value && !!leagueTypeId.value && !!name.value\n }\n })\n\n const showRunningWarning = computed(() => {\n //const urCreds = store.getters.upwardRunningAuth.urCreds\n //return isRunning.value && (urCreds == null || !canCreatePartnerChallenge(urCreds))\n return false //I think the current verbiage eliminates the need for this warning.\n })\n\n function readFirstConfirmed(confirmed: boolean) {\n if (confirmed) {\n ctx.root.$router.push('/programs/welcome')\n }\n }\n\n async function saveAndContinue() {\n if (!leagueType.value || !opportunityType.value) {\n return\n }\n store.commit.creationParameters.setOpportunityType({ opportunityType: opportunityTypeId.value })\n store.commit.creationParameters.setLeagueType({ leagueType: leagueType.value.upwardTypeID! })\n\n if (isConnect.value) {\n await store.dispatch.connects.beginCreating({\n name: name.value,\n typeLeagueID: leagueType.value.upwardTypeID!,\n partnerContact: null,\n })\n ctx.root.$router.push('/programs/connect/setup/information')\n } else if (leagueType.value.isClinic) {\n await store.dispatch.clinics.beginCreating({\n name: name.value,\n typeLeagueID: leagueType.value.upwardTypeID!,\n partnerContact: null,\n })\n ctx.root.$router.push('/programs/clinic/setup/information')\n } else if (leagueType.value.isCamp) {\n loading.value = true\n await store.dispatch.camps.beginCreating({\n name: name.value,\n typeLeagueID: leagueType.value.upwardTypeID!,\n publicDisplayName: accountName.value!,\n partnerContact: null,\n })\n ctx.root.$router.push('/programs/camp/setup/information')\n loading.value = false\n } else if (isLeague.value && leagueTypeId.value) {\n // League is created after picking between league and estimate\n // See ProgramCreationPicker.vue\n store.commit.leagues.setStartingSelection({\n selection: {\n name: store.getters.leagueTypes.byId(leagueTypeId.value).description || 'New Program',\n leagueTypeId: leagueTypeId.value,\n opportunityTypeId: opportunityType.value.id,\n upwardTypeId: leagueType.value.upwardTypeID ?? '',\n },\n })\n showModal.value = true\n } else if (isLicense.value && leagueTypeId.value) {\n //LICENSE\n loading.value = true\n name.value = store.getters.leagueTypes.byId(leagueTypeId.value).description || 'New License'\n\n await store.dispatch.leagues.beginCreating({\n name: name.value,\n typeLeagueID: leagueType.value.upwardTypeID!,\n publicDisplayName: accountName.value!,\n partnerContact: null,\n addToCache: true,\n })\n ctx.root.$router.push('/programs/league/setup/information')\n loading.value = false\n } else if (isRunning.value) {\n await store.dispatch.upwardRunning.beginCreating({\n name: name.value,\n typeLeagueID: leagueType.value.upwardTypeID!,\n publicDisplayName: accountName.value!,\n addToCache: false,\n })\n ctx.root.$router.push('/programs/running/setup/information')\n }\n }\n\n return {\n opportunityTypeId,\n leagueTypeId,\n isLeague,\n name,\n loading,\n allowContinue,\n cmsDocumentId,\n showModal,\n readFirstConfirmed,\n saveAndContinue,\n showRunningWarning,\n }\n },\n})\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!./New.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!./New.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./New.vue?vue&type=template&id=6f435041&\"\nimport script from \"./New.vue?vue&type=script&lang=ts&\"\nexport * from \"./New.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('full-body',{staticClass:\"px-0\"},[_c('div',{staticClass:\"p-3 flex-grow-1\"},[_c('div',{staticClass:\"row m-0\"},[_c('div',{staticClass:\"col-8\"},[_c('h4',[_vm._v(\"Explore your options for this season\")]),_c('p',[_vm._v(\" In this section, you will have the opportunity to explore all the options for your league and the costs associated with them or go directly to creating your program. \")]),_c('program-creation-picker')],1)]),_c('div',{staticClass:\"row m-0\"},[_c('previous-estimates',{staticClass:\"col-8\"},[_c('template',{slot:\"title\"},[_c('h5',{staticClass:\"mt-3\"},[_vm._v(\"Review Previous Estimates\")])])],2)],1),_c('div',{staticClass:\"row m-0\"},[_c('div',{staticClass:\"col-8 bg-light-3 p-shadow-sm small info-box text-muted\"},[_c('p',[_vm._v(\" For Assistance, contact your \"),_c('a',{staticClass:\"text-underline\",attrs:{\"href\":\"/contact\"}},[_vm._v(\"Regional Ministry Consultant\")]),_vm._v(\" to answer questions and help you decide the best plan for your sports ministry. \")])])])])])}\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:\"row\"},[_c('div',{staticClass:\"col select-cards\"},[_c('selector-card',{staticClass:\"select-card\",attrs:{\"selectable\":true,\"dark\":\"\"},on:{\"select\":function($event){return _vm.beginLeague(false)}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Create Program\")]},proxy:true},{key:\"body\",fn:function(){return [_c('div',[_c('p',[(_vm.loading)?_c('loading',{staticClass:\"pr-3\",attrs:{\"is-small\":\"\"}}):_vm._e(),_vm._v(\" Go here if you are ready to fully build your new program today. \")],1)])]},proxy:true}])}),_c('selector-card',{staticClass:\"select-card\",attrs:{\"selectable\":true,\"dark\":\"\"},on:{\"select\":function($event){return _vm.beginLeague(true)}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"League Estimator Tool\")]},proxy:true},{key:\"body\",fn:function(){return [_c('p',[_vm._v(\" This estimator tool will help you explore all your options for your program before you officially commit to creating the league. You can save up to 5 configurations for your league then move forward with the best one for you. \")])]},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\nimport { defineComponent, computed, ref } from '@vue/composition-api'\n\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ProgramCreationPicker',\n components: {\n SelectorCard,\n Loading,\n },\n\n setup(props, ctx) {\n const loading = ref(false)\n const accountName = computed(() => store.getters.authorization.accountName)\n const startingSelection = computed(() => store.getters.leagues.startingSelection)\n function getLeagueTypeById(id: number) {\n return store.getters.leagueTypes.byId(id)\n }\n\n const leagueType = computed(() => {\n if (startingSelection.value?.leagueTypeId) {\n return getLeagueTypeById(startingSelection.value?.leagueTypeId)\n }\n\n return null\n })\n\n async function beginLeague(isEstimate: boolean) {\n loading.value = true\n await store.dispatch.leagues.beginCreating({\n name: startingSelection.value?.name ?? '',\n typeLeagueID: leagueType.value ? leagueType.value.upwardTypeID ?? '' : '',\n publicDisplayName: accountName.value ?? '',\n partnerContact: null,\n addToCache: !isEstimate,\n })\n loading.value = false\n if (isEstimate) {\n ctx.root.$router.push('/programs/estimator')\n } else {\n ctx.root.$router.push('/programs/league/setup/information')\n }\n }\n\n return {\n loading,\n beginLeague,\n }\n },\n})\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!./ProgramCreationPicker.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!./ProgramCreationPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProgramCreationPicker.vue?vue&type=template&id=6e28ec04&scoped=true&\"\nimport script from \"./ProgramCreationPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProgramCreationPicker.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProgramCreationPicker.vue?vue&type=style&index=0&id=6e28ec04&lang=scss&scoped=true&\"\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 \"6e28ec04\",\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('div',[(_vm.isLoading)?_c('loading',{attrs:{\"is-small\":\"\"}}):_vm._e(),(!_vm.isLoading && _vm.configList.length)?[_vm._t(\"title\"),_c('div',{staticClass:\"ml-4\"},_vm._l((_vm.configList),function(item,index){return _c('router-link',{key:index,staticClass:\"d-block\",attrs:{\"to\":(\"/programs/estimator/\" + (item.id))}},[_vm._v(\" \"+_vm._s(item.name)+\" \")])}),1)]:_vm._e()],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\nimport { defineComponent, computed, ref, onMounted } from '@vue/composition-api'\nimport { SavedProductOfferingConfig } from '@/GeneratedTypes/SavedProductOfferingConfig'\nimport Loading from '@/elements/Loading.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PreviousEstimates',\n components: {\n Loading,\n },\n setup() {\n const firstAccountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n\n const configList = ref([])\n const isLoading = ref(false)\n\n onMounted(async () => {\n isLoading.value = true\n try {\n configList.value = await store.dispatch.productOfferings.fetchConfigList({\n firstAccountNumber: firstAccountNumber.value,\n })\n } finally {\n isLoading.value = false\n }\n })\n\n return {\n isLoading,\n configList,\n }\n },\n})\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!./PreviousEstimates.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!./PreviousEstimates.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PreviousEstimates.vue?vue&type=template&id=29518051&\"\nimport script from \"./PreviousEstimates.vue?vue&type=script&lang=ts&\"\nexport * from \"./PreviousEstimates.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport FullBody from '@/components/FullBody.vue'\nimport ProgramCreationPicker from '@/components/ProgramCreationPicker.vue'\nimport PreviousEstimates from '@/components/PreviousEstimates.vue'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n components: {\n FullBody,\n ProgramCreationPicker,\n Loading,\n PreviousEstimates,\n },\n name: 'Welcome',\n})\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!./Welcome.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!./Welcome.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Welcome.vue?vue&type=template&id=313d15b8&scoped=true&\"\nimport script from \"./Welcome.vue?vue&type=script&lang=ts&\"\nexport * from \"./Welcome.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Welcome.vue?vue&type=style&index=0&id=313d15b8&lang=scss&scoped=true&\"\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 \"313d15b8\",\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('full-body',{staticClass:\"px-0 py-3\"},[_c('div',{staticClass:\"bg-light-2 p-3 flex-grow-1\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[_c('h5',[_vm._v(\"Edit an existing program\")]),_c('p',[_vm._v(\"Choose a program from the list below to make edits.\")])]),_c('div',{staticClass:\"col-sm-auto\"},[_c('router-link',{staticClass:\"btn btn-success mb-2\",attrs:{\"to\":\"/programs/new\"}},[_c('i',{staticClass:\"fa fa-plus\"}),_vm._v(\" Create Program \")])],1)]),_c('current-programs',{staticClass:\"bg-white px-4\",attrs:{\"noProgramsText\":\"There are no active programs for your church.\"}})],1),_c('div',{staticClass:\"bg-light-2 p-3 flex-grow-1\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[_c('h5',[_vm._v(\"Previous Programs\")])])]),_c('current-programs',{staticClass:\"bg-white px-4\",attrs:{\"includeHistorical\":true,\"noProgramsText\":\"There are no historical programs for your church.\"}})],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',[(_vm.isLoading)?[_c('loading',{staticClass:\"m-3\"})]:[(_vm.noPrograms)?[_c('h6',{staticClass:\"m-3\"},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.noProgramsText)}})])]:_vm._e(),[(_vm.title)?_c('h6',[_vm._v(_vm._s(_vm.title))]):_vm._e(),(!_vm.resourceOnlyView && !_vm.includeHistorical)?_c('ResumeProgram',{staticClass:\"p-3\",on:{\"partialCount\":_vm.setPartialCount}}):_vm._e(),_vm._l((_vm.programsToShow),function(n,programIndex){return (programIndex < _vm.sortedPrograms.length)?[(_vm.sortedPrograms[programIndex].programTypeDescription.toLowerCase().includes('connect'))?_c('connect-overview',{key:_vm.sortedPrograms[programIndex].leagueID,staticClass:\"p-3\",attrs:{\"program\":_vm.sortedPrograms[programIndex].programInfo,\"show-name-only\":_vm.resourceOnlyView,\"link\":_vm.resourceLink}}):(_vm.sortedPrograms[programIndex].programTypeDescription.toLowerCase().includes('clinic'))?_c('clinic-overview',{key:_vm.sortedPrograms[programIndex].leagueID,staticClass:\"p-3\",attrs:{\"program\":_vm.sortedPrograms[programIndex].programInfo,\"show-name-only\":_vm.resourceOnlyView,\"link\":_vm.resourceLink}}):(_vm.sortedPrograms[programIndex].programTypeDescription.toLowerCase().includes('camp'))?_c('camp-overview',{key:_vm.sortedPrograms[programIndex].leagueID,staticClass:\"p-3\",attrs:{\"program\":_vm.sortedPrograms[programIndex].programInfo,\"show-name-only\":_vm.resourceOnlyView,\"link\":_vm.resourceLink}}):(_vm.sortedPrograms[programIndex].programTypeDescription == 'RUNNING')?_c('upward-running-overview',{key:_vm.sortedPrograms[programIndex].leagueID,staticClass:\"p-3\",attrs:{\"program\":_vm.sortedPrograms[programIndex].programInfo,\"show-name-only\":_vm.resourceOnlyView,\"link\":_vm.resourceLink}}):_c('league-overview',{key:_vm.sortedPrograms[programIndex].leagueID,staticClass:\"p-3\",attrs:{\"program\":_vm.sortedPrograms[programIndex].programInfo,\"show-name-only\":_vm.resourceOnlyView,\"link\":_vm.resourceLink}})]:_vm._e()})],_c('div',{staticClass:\"text-center mb-3\"},[(_vm.programsToShow < _vm.programs.length)?_c('button',{staticClass:\"btn btn-sm btn-secondary\",staticStyle:{\"z-index\":\"1000\",\"margin-top\":\"1vh\"},on:{\"click\":function($event){_vm.programsToShow += 2}}},[_vm._v(\" Show More \")]):_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('router-link',{staticClass:\"row program-overview hover-bg-light-2\",attrs:{\"to\":(\"\" + _vm.defaultLink)}},[_c('div',{staticClass:\"col-auto program-overview-icon pr-0\"},[_c('program-icon',{attrs:{\"description\":_vm.program.programTypeDescription}})],1),_c('div',{staticClass:\"col program-overview-data\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[_c('h4',[_vm._v(\" \"+_vm._s(_vm.program.leagueName)+\" \")])]),_c('div',{staticClass:\"col-sm-auto text-muted\"},[_vm._v(\" \"+_vm._s(_vm.program.upwardLeagueID)+\" \")])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"border-top-2 d-md-block d-none py-1 row mt-0\"},[(!_vm.isResourceOnlyLeague && _vm.program.isOPRLeague)?_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/setup/registration\")}},[_vm._v(\" Online Registration \")]):_vm._e(),(!_vm.isResourceOnlyLeague)?_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/participants\")}},[_vm._v(\" Participants \")]):_vm._e(),(!_vm.isResourceOnlyLeague)?_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/volunteers\")}},[_vm._v(\" Volunteers \")]):_vm._e(),(!_vm.isResourceOnlyLeague)?_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/divisions_and_teams\")}},[_vm._v(\" Divisions/Teams \")]):_vm._e(),(!_vm.isResourceOnlyLeague)?_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/scheduling\")}},[_vm._v(\" Scheduling \")]):_vm._e(),(!_vm.isResourceOnlyLeague)?_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/communications\")}},[_vm._v(\" Communications \")]):_vm._e(),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/ordering\")}},[_vm._v(\"Ordering\")]),(!_vm.isResourceOnlyLeague)?_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/reports\")}},[_vm._v(\" Reports \")]):_vm._e(),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/resources\")}},[_vm._v(\"Resources\")])],1):_vm._e(),(_vm.program.leagueWarnings)?_c('div',{staticClass:\"row\"},_vm._l((_vm.program.leagueWarnings),function(warning,index){return _c('div',{key:index,staticClass:\"col-12\"},[_c('div',{staticClass:\"exclamation\"},[_c('i',{staticClass:\"fas fa-exclamation\"})]),_c('p',{staticClass:\"pl-2\"},[_vm._v(\" \"+_vm._s(warning.message)+\" \"),(warning.page)?_c('router-link',{attrs:{\"to\":{ name: warning.page }}},[_vm._v(\"Manage\")]):_vm._e()],1)])}),0):_vm._e(),(!_vm.showNameOnly)?_c('div',{staticClass:\"bg-white rounded shadow-sm mt-3 p-3 text-muted\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md\"},[_c('dl',{staticClass:\"m-0\"},[_c('dt',[_vm._v(\"Registration\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.registrationBeginDate)))]),_c('dt',[_vm._v(\"Registration End\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.registrationEndDate)))]),(!_vm.isUpwardSelect)?_c('dt',[_vm._v(\"First Evaluation\")]):_vm._e(),(!_vm.isUpwardSelect)?_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.firstEvalDate)))]):_vm._e(),_c('dt',[_vm._v(\"First Practice\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.firstPracticeDate)))]),_c('dt',[_vm._v(\"First Game\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.firstGameDate)))]),_c('dt',[_vm._v(\"Season Ends\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.seasonEndDate)))])])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"col-md\"},[_c('program-overview',{staticClass:\"m-0\",attrs:{\"program\":_vm.program}})],1):_vm._e()]),(_vm.program.isOPRLeague)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 pb-0\"},[_c('b',[_vm._v(\"Online registration\")])]),_c('div',{staticClass:\"col-12 py-0\"},[_c('a',{attrs:{\"href\":_vm.registrationUrl},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\" \"+_vm._s(_vm.registrationUrl)+\" \")])]),_c('div',{staticClass:\"col-12 pb-0\"},[_c('b',[_vm._v(\"Volunteer application\")])]),_c('div',{staticClass:\"col-12 pt-0\"},[_c('a',{attrs:{\"href\":_vm.volunteerApplicationUrl},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\" \"+_vm._s(_vm.volunteerApplicationUrl)+\" \")])])]):_vm._e()]):_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',[_c('i',{staticClass:\"fa-3x text-primary\",class:_vm.iconCssClass})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'ProgramIcon',\n props: {\n description: { type: String, required: true },\n },\n setup(props) {\n const iconCssClass = computed(() => {\n const defaultIcon = 'fas fa-bible'\n\n if (!props.description) {\n return defaultIcon\n }\n\n const description = props.description.toLowerCase()\n if (description.includes('soccer') || description.includes('futsal')) {\n return 'fa fa-futbol'\n }\n\n if (description.includes('soccer')) {\n return 'fa fa-futbol'\n }\n\n if (description.includes('basketball')) {\n return 'fa fa-basketball-ball'\n }\n\n if (description.includes('baseball')) {\n return 'fa fa-baseball-ball'\n }\n\n if (description.includes('softball')) {\n return 'fa fa-baseball-ball'\n }\n\n if (description.includes('football')) {\n return 'fa fa-football-ball'\n }\n\n if (description.includes('volleyball')) {\n return 'fas fa-volleyball-ball'\n }\n\n if (description.includes('cheer')) {\n return 'fa fa-bullhorn'\n }\n\n if (description == 'running') {\n return 'fa fa-running'\n }\n\n return defaultIcon\n })\n\n return {\n iconCssClass,\n }\n },\n})\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!./ProgramIcon.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!./ProgramIcon.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProgramIcon.vue?vue&type=template&id=79b99745&\"\nimport script from \"./ProgramIcon.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProgramIcon.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('div',[(_vm.showCounts)?[_c('dl',{staticClass:\"m-0\"},[_c('dt',[_vm._v(\"Players\")]),_c('dd',[_vm._v(_vm._s(_vm.program.participantSportCount))]),(_vm.hasCheer)?_c('dt',[_vm._v(\"Cheerleaders\")]):_vm._e(),(_vm.hasCheer)?_c('dd',[_vm._v(_vm._s(_vm.program.participantCheerCount))]):_vm._e()])]:_vm._e(),(_vm.showAmounts)?[_c('dl',{staticClass:\"m-0\"},[_c('dt',[_vm._v(\"Collected\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.program.totalPaid,0)))])]),_c('RouterLink',{attrs:{\"to\":_vm.outstandingBalanceLink}},[_vm._v(\"View Outstanding Player Balances\")])]:_vm._e(),(_vm.program.donations > 0)?[_c('dl',[_c('dt',[_vm._v(\"Donations\")]),_c('dd',[_c('i',{staticClass:\"fas text-warning fa-hand-holding-heart\"}),_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(_vm.program.donations,0))+\" \")])])]:_vm._e()],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\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { LeagueInfoCondensed } from '@/models/Program/LeagueInfoCondensed'\nimport currency from '@/filters/currency'\nimport store from '@/store'\nimport { UpwardOpportunityTypesByUpwardTypeID } from '@/lib/common/upwardOpportunityTypes'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nexport default defineComponent({\n name: 'ProgramOverview',\n filters: {\n currency,\n },\n props: {\n program: { type: Object as PropType, required: true },\n isCamp: { type: Boolean, required: false, default: false },\n },\n setup(props) {\n const showCounts = computed((): boolean => {\n if (\n opportunityType.value == UpwardOpportunityTypesByUpwardTypeID.CLINIC ||\n opportunityType.value == UpwardOpportunityTypesByUpwardTypeID.CONNECT\n ) {\n return false\n }\n return true\n })\n\n const opportunityType = computed(\n (): string => store.getters.leagueTypes.byUpwardTypeId(props.program.typeLeagueID)?.typeOpportunityID\n )\n\n const showAmounts = computed(\n (): boolean => props.program && props.program.isOPRLeague && !props.program.isHistorical\n )\n\n const hasCheer = computed((): boolean => props.program && isCheer(props.program.typeProgramID))\n\n const outstandingBalanceLink = computed(() => {\n if (props.isCamp) {\n return `/programs/camp/${props.program.upwardLeagueID}/reports/dynamic/outstandingbalance`\n }\n return `/programs/league/${props.program.upwardLeagueID}/reports/dynamic/outstandingbalance`\n })\n\n return {\n showCounts,\n hasCheer,\n showAmounts,\n outstandingBalanceLink,\n }\n },\n})\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!./ProgramOverview.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!./ProgramOverview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProgramOverview.vue?vue&type=template&id=36e2067a&\"\nimport script from \"./ProgramOverview.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProgramOverview.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// TODO: Once warnings are included in the API, make sure they show (already in markup)\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { LeagueInfoCondensed } from '@/models/Program/LeagueInfoCondensed'\nimport ProgramIcon from '@/components/ProgramIcon.vue'\nimport date from '@/filters/date'\nimport ProgramOverview from '@/components/ProgramOverview.vue'\nimport { LeagueTypes } from '@/lib/common/LeagueTypes'\n\nexport default defineComponent({\n name: 'LeagueOverview',\n components: {\n ProgramIcon,\n ProgramOverview,\n },\n filters: {\n date,\n },\n props: {\n program: { type: Object as PropType, required: true },\n showNameOnly: { type: Boolean, required: false, default: false },\n link: { type: String, required: false, default: '' },\n },\n setup(props) {\n const registrationUrl = computed(\n () => `${process.env.VUE_APP_PARTICIPANT_REGISTRATION_DOMAIN}${props.program.upwardLeagueID}`\n )\n\n const volunteerApplicationUrl = computed(\n () => `${process.env.VUE_APP_PARTICIPANT_REGISTRATION_DOMAIN}${props.program.upwardLeagueID}/volunteer`\n )\n\n const isResourceOnlyLeague = computed((): boolean => {\n if (props.program && props.program.typeSystemsAccessID) {\n return props.program.typeSystemsAccessID == 'NONE'\n }\n return false\n })\n\n const isUpwardSelect = computed((): boolean => props.program.typeLeagueID == LeagueTypes.UPWARDSELECT)\n\n const baseLink = computed(() => {\n const base = `/programs/${isResourceOnlyLeague.value ? 'digitalleague' : 'league'}/${\n props.program.upwardLeagueID\n }`\n\n if (props.link) {\n return `${base}${props.link}`\n }\n return base\n })\n\n const defaultLink = computed(() => {\n const base = baseLink.value\n\n if (!props.showNameOnly) {\n if (isResourceOnlyLeague.value) {\n return `${base}/resources`\n } else {\n return `${base}/setup/information`\n }\n }\n return base\n })\n\n return {\n defaultLink,\n isResourceOnlyLeague,\n baseLink,\n registrationUrl,\n volunteerApplicationUrl,\n isUpwardSelect,\n }\n },\n})\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!./LeagueOverview.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!./LeagueOverview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LeagueOverview.vue?vue&type=template&id=083bff98&scoped=true&\"\nimport script from \"./LeagueOverview.vue?vue&type=script&lang=ts&\"\nexport * from \"./LeagueOverview.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./LeagueOverview.vue?vue&type=style&index=0&id=083bff98&scoped=true&lang=scss&\"\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 \"083bff98\",\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('router-link',{staticClass:\"row program-overview hover-bg-light-2\",attrs:{\"to\":_vm.baseLink}},[_c('div',{staticClass:\"col-auto program-overview-icon pr-0\"},[_c('program-icon',{attrs:{\"description\":_vm.program.programTypeDescription}})],1),_c('div',{staticClass:\"col program-overview-data\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[_c('h4',[_vm._v(\" \"+_vm._s(_vm.program.leagueName)+\" \")])]),_c('div',{staticClass:\"col-sm-auto text-muted\"},[_vm._v(\" \"+_vm._s(_vm.program.upwardLeagueID)+\" \")])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"border-top-2 d-md-block d-none py-1 mt-0 row\"},[_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(\"/programs/clinic/\" + (_vm.program.upwardLeagueID))}},[_vm._v(\" Setup \")]),_c('SmartRouterLink',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/ordering\"),\"text\":\"Ordering\",\"disabled\":!_vm.canEdit}}),_c('SmartRouterLink',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/resources\"),\"text\":\"Resources\",\"disabled\":!_vm.canEdit}})],1):_vm._e(),(_vm.program.leagueWarnings)?_c('div',{staticClass:\"row\"},_vm._l((_vm.program.leagueWarnings),function(warning,index){return _c('div',{key:index,staticClass:\"col-12\"},[_c('div',{staticClass:\"exclamation\"},[_c('i',{staticClass:\"fas fa-exclamation\"})]),_c('p',{staticClass:\"pl-2\"},[_vm._v(\" \"+_vm._s(warning.message)+\" \"),(warning.page)?_c('router-link',{attrs:{\"to\":{ name: warning.page }}},[_vm._v(\"Manage\")]):_vm._e()],1)])}),0):_vm._e(),(!_vm.showNameOnly)?_c('div',{staticClass:\"bg-white rounded shadow-sm mt-3 p-3 text-muted\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md\"},[_c('dl',{staticClass:\"m-0\"},[_c('dt',[_vm._v(\"Clinic Date\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.firstGameDate)))])])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"col-md\"},[_c('program-overview',{staticClass:\"m-0\",attrs:{\"program\":_vm.program}})],1):_vm._e()])]):_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 (_vm.to && !_vm.disabled)?_c('router-link',{staticClass:\"nav-link d-inline-block\",attrs:{\"to\":_vm.to}},[_vm._v(\" \"+_vm._s(_vm.text)+\" \")]):_c('router-link',{attrs:{\"to\":\"/\"}},[_c('a',{staticClass:\"nav-link text-muted d-inline-block pr-0 pl-0 mr-0 ml-0\",staticStyle:{\"pointer-events\":\"none\"},attrs:{\"href\":\"javascript: void(0);\"}},[_vm._v(\" \"+_vm._s(_vm.text)+\" \")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'SmartRouterLink',\n props: {\n to: { type: String, required: true },\n text: { type: String, required: true },\n disabled: { type: Boolean, required: false, default: false },\n },\n components: {},\n setup() {\n return {}\n },\n})\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!./SmartRouterLink.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!./SmartRouterLink.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SmartRouterLink.vue?vue&type=template&id=6978ecc0&\"\nimport script from \"./SmartRouterLink.vue?vue&type=script&lang=ts&\"\nexport * from \"./SmartRouterLink.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { LeagueInfoCondensed } from '@/models/Program/LeagueInfoCondensed'\nimport ProgramIcon from '@/components/ProgramIcon.vue'\nimport date from '@/filters/date'\nimport ProgramOverview from '@/components/ProgramOverview.vue'\nimport SmartRouterLink from '@/elements/SmartRouterLink.vue'\n\nexport default defineComponent({\n name: 'ClinicOverview',\n components: {\n ProgramIcon,\n ProgramOverview,\n SmartRouterLink,\n },\n filters: {\n date,\n },\n props: {\n program: { type: Object as PropType, required: true },\n showNameOnly: { type: Boolean, required: false, default: false },\n link: { type: String, required: false, default: '' },\n },\n setup(props) {\n const baseLink = computed(() => `/programs/clinic/${props.program.upwardLeagueID}`)\n\n const canEdit = computed(() => !props.program.isHistorical)\n\n return {\n baseLink,\n canEdit,\n }\n },\n})\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!./ClinicOverview.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!./ClinicOverview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ClinicOverview.vue?vue&type=template&id=62f68b64&scoped=true&\"\nimport script from \"./ClinicOverview.vue?vue&type=script&lang=ts&\"\nexport * from \"./ClinicOverview.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ClinicOverview.vue?vue&type=style&index=0&id=62f68b64&scoped=true&lang=scss&\"\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 \"62f68b64\",\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('router-link',{staticClass:\"row program-overview hover-bg-light-2\",attrs:{\"to\":_vm.baseLink}},[_c('div',{staticClass:\"col-auto program-overview-icon pr-0\"},[_c('program-icon',{attrs:{\"description\":_vm.program.programTypeDescription}})],1),_c('div',{staticClass:\"col program-overview-data\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[_c('h4',[_vm._v(\" \"+_vm._s(_vm.program.leagueName)+\" \")])]),_c('div',{staticClass:\"col-sm-auto text-muted\"},[_vm._v(\" \"+_vm._s(_vm.program.upwardLeagueID)+\" \")])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"border-top-2 d-md-block d-none py-1 mt-0 row\"},[_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(\"\" + _vm.baseLink)}},[_vm._v(\" Setup \")]),_c('SmartRouterLink',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/ordering\"),\"text\":\"Ordering\",\"disabled\":!_vm.canEdit}}),_c('SmartRouterLink',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/resources\"),\"text\":\"Resources\",\"disabled\":!_vm.canEdit}})],1):_vm._e(),(_vm.program.leagueWarnings)?_c('div',{staticClass:\"row\"},_vm._l((_vm.program.leagueWarnings),function(warning,index){return _c('div',{key:index,staticClass:\"col-12\"},[_c('div',{staticClass:\"exclamation\"},[_c('i',{staticClass:\"fas fa-exclamation\"})]),_c('p',{staticClass:\"pl-2\"},[_vm._v(\" \"+_vm._s(warning.message)+\" \"),(warning.page)?_c('router-link',{attrs:{\"to\":{ name: warning.page }}},[_vm._v(\"Manage\")]):_vm._e()],1)])}),0):_vm._e(),(!_vm.showNameOnly)?_c('div',{staticClass:\"bg-white rounded shadow-sm mt-3 p-3 text-muted\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md\"},[_c('dl',{staticClass:\"m-0\"},[_c('dt',[_vm._v(\"Connect Date\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.firstGameDate)))])])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"col-md\"},[_c('program-overview',{staticClass:\"m-0\",attrs:{\"program\":_vm.program}})],1):_vm._e()])]):_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\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { LeagueInfoCondensed } from '@/models/Program/LeagueInfoCondensed'\nimport ProgramIcon from '@/components/ProgramIcon.vue'\nimport SmartRouterLink from '@/elements/SmartRouterLink.vue'\nimport date from '@/filters/date'\nimport ProgramOverview from '@/components/ProgramOverview.vue'\n\nexport default defineComponent({\n name: 'ConnectOverview',\n components: {\n ProgramIcon,\n ProgramOverview,\n SmartRouterLink,\n },\n filters: {\n date,\n },\n props: {\n program: { type: Object as PropType, required: true },\n showNameOnly: { type: Boolean, required: false, default: false },\n link: { type: String, required: false, default: '' },\n },\n setup(props) {\n const baseLink = computed(() => `/programs/connect/${props.program.upwardLeagueID}`)\n\n const canEdit = computed(() => !props.program.isHistorical)\n\n return {\n baseLink,\n canEdit,\n }\n },\n})\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!./ConnectOverview.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!./ConnectOverview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ConnectOverview.vue?vue&type=template&id=c1927de8&scoped=true&\"\nimport script from \"./ConnectOverview.vue?vue&type=script&lang=ts&\"\nexport * from \"./ConnectOverview.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ConnectOverview.vue?vue&type=style&index=0&id=c1927de8&scoped=true&lang=scss&\"\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 \"c1927de8\",\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('router-link',{staticClass:\"row program-overview hover-bg-light-2\",attrs:{\"to\":(\"\" + _vm.defaultLink)}},[_c('div',{staticClass:\"col-auto program-overview-icon pr-0\"},[_c('program-icon',{attrs:{\"description\":_vm.program.programTypeDescription}})],1),_c('div',{staticClass:\"col program-overview-data\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[_c('h4',[_vm._v(\" \"+_vm._s(_vm.program.leagueName)+\" \")])]),_c('div',{staticClass:\"col-sm-auto text-muted\"},[_vm._v(\" \"+_vm._s(_vm.program.upwardLeagueID)+\" \")])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"border-top-2 d-md-block d-none px-1 row mt-0\"},[(_vm.program.isOPRLeague)?_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/setup/registration\")}},[_vm._v(\" Online Registration \")]):_vm._e(),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/participants\")}},[_vm._v(\" Participants \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/volunteers\")}},[_vm._v(\" Volunteers \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/divisions_and_teams\")}},[_vm._v(\" Divisions/Teams \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/communications\")}},[_vm._v(\" Communications \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/ordering\")}},[_vm._v(\" Ordering \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/reports\")}},[_vm._v(\" Reports \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/resources\")}},[_vm._v(\" Resources \")])],1):_vm._e(),(_vm.program.leagueWarnings)?_c('div',{staticClass:\"row\"},_vm._l((_vm.program.leagueWarnings),function(warning,index){return _c('div',{key:index,staticClass:\"col-12\"},[_c('div',{staticClass:\"exclamation\"},[_c('i',{staticClass:\"fas fa-exclamation\"})]),_c('p',{staticClass:\"pl-2\"},[_vm._v(\" \"+_vm._s(warning.message)+\" \"),(warning.page)?_c('router-link',{attrs:{\"to\":{ name: warning.page }}},[_vm._v(\"Manage\")]):_vm._e()],1)])}),0):_vm._e(),(!_vm.showNameOnly)?_c('div',{staticClass:\"bg-white rounded shadow-sm mt-3 p-3 text-muted\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md\"},[_c('dl',{staticClass:\"m-0\"},[_c('dt',[_vm._v(\"Registration\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.registrationBeginDate)))]),_c('dt',[_vm._v(\"Registration End\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.registrationEndDate)))]),_c('dt',[_vm._v(\"Camp Start\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.firstGameDate)))])])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"col-md\"},[_c('program-overview',{staticClass:\"m-0\",attrs:{\"program\":_vm.program,\"isCamp\":\"\"}})],1):_vm._e()]),(_vm.program.isOPRLeague)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 pb-0\"},[_c('b',[_vm._v(\"Online registration\")])]),_c('div',{staticClass:\"col-12 py-0\"},[_c('a',{attrs:{\"href\":_vm.registrationUrl},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\" \"+_vm._s(_vm.registrationUrl)+\" \")])]),_c('div',{staticClass:\"col-12 pb-0\"},[_c('b',[_vm._v(\"Volunteer application\")])]),_c('div',{staticClass:\"col-12 pt-0\"},[_c('a',{attrs:{\"href\":_vm.volunteerApplicationUrl},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\" \"+_vm._s(_vm.volunteerApplicationUrl)+\" \")])])]):_vm._e()]):_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// TODO: Once warnings are included in the API, make sure they show (already in markup)\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { LeagueInfoCondensed } from '@/models/Program/LeagueInfoCondensed'\nimport ProgramIcon from '@/components/ProgramIcon.vue'\nimport date from '@/filters/date'\nimport ProgramOverview from '@/components/ProgramOverview.vue'\n\nexport default defineComponent({\n name: 'CampOverview',\n components: {\n ProgramIcon,\n ProgramOverview,\n },\n filters: {\n date,\n },\n props: {\n program: { type: Object as PropType, required: true },\n showNameOnly: { type: Boolean, required: false, default: false },\n link: { type: String, required: false, default: '' },\n },\n setup(props) {\n const registrationUrl = computed(\n () => `${process.env.VUE_APP_PARTICIPANT_REGISTRATION_DOMAIN}${props.program.upwardLeagueID}`\n )\n\n const volunteerApplicationUrl = computed(\n () => `${process.env.VUE_APP_PARTICIPANT_REGISTRATION_DOMAIN}${props.program.upwardLeagueID}/volunteer`\n )\n\n const baseLink = computed(() => {\n const base = `/programs/camp/${props.program.upwardLeagueID}`\n if (props.link) {\n return `${base}${props.link}`\n }\n return base\n })\n\n const defaultLink = computed(() => {\n if (!props.showNameOnly) {\n return `${baseLink.value}/setup/information`\n }\n return baseLink.value\n })\n\n return {\n defaultLink,\n baseLink,\n registrationUrl,\n volunteerApplicationUrl,\n }\n },\n})\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!./CampOverview.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!./CampOverview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CampOverview.vue?vue&type=template&id=f577b702&scoped=true&\"\nimport script from \"./CampOverview.vue?vue&type=script&lang=ts&\"\nexport * from \"./CampOverview.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CampOverview.vue?vue&type=style&index=0&id=f577b702&scoped=true&lang=scss&\"\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 \"f577b702\",\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('router-link',{staticClass:\"row program-overview hover-bg-light-2\",attrs:{\"to\":(\"\" + _vm.defaultLink)}},[_c('div',{staticClass:\"col-auto program-overview-icon pr-0\"},[_c('program-icon',{attrs:{\"description\":\"RUNNING\"}})],1),_c('div',{staticClass:\"col program-overview-data\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[_c('h4',[_vm._v(\" \"+_vm._s(_vm.program.challengeName)+\" \")])]),_c('div',{staticClass:\"col-sm-auto text-muted\"},[_vm._v(\" \"+_vm._s(_vm.program.upwardChallengeID)+\" \")])]),(!_vm.showNameOnly)?_c('div',{staticClass:\"border-top-2 d-md-block d-none px-1 row mt-0\"},[_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/setup/registration\")}},[_vm._v(\" Online Registration \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/participants\")}},[_vm._v(\" Participants \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/communications\")}},[_vm._v(\" Communications \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/ordering\")}},[_vm._v(\" Ordering \")]),_c('router-link',{staticClass:\"col-auto\",attrs:{\"to\":(_vm.baseLink + \"/resources\")}},[_vm._v(\" Resources \")])],1):_vm._e(),(!_vm.showNameOnly)?_c('div',{staticClass:\"bg-white rounded shadow-sm mt-3 p-3 text-muted\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md\"},[_c('dl',{staticClass:\"m-0\"},[_c('dt',[_vm._v(\"Registration\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.registrationBeginDate)))]),_c('dt',[_vm._v(\"Registration End\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.registrationEndDate)))]),_c('dt',[_vm._v(\"Start Date\")]),_c('dd',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.program.startDate)))])])]),(!_vm.showNameOnly && false)?_c('div',{staticClass:\"col-md\"},[_c('program-overview',{staticClass:\"m-0\",attrs:{\"program\":_vm.program}})],1):_vm._e()]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 pb-0\"},[_c('b',[_vm._v(\"Online registration\")])]),_c('div',{staticClass:\"col-12 py-0\"},[_c('a',{attrs:{\"href\":_vm.registrationUrl},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\" \"+_vm._s(_vm.registrationUrl)+\" \")])])])]):_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// TODO: Once warnings are included in the API, make sure they show (already in markup)\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { PartnerChallengeInfo } from '@/models/UpwardRunning/PartnerChallengeInfo'\nimport ProgramIcon from '@/components/ProgramIcon.vue'\nimport date from '@/filters/date'\nimport ProgramOverview from '@/components/ProgramOverview.vue'\n\nexport default defineComponent({\n name: 'UpwardRunningOverview',\n components: {\n ProgramIcon,\n ProgramOverview,\n },\n filters: {\n date,\n },\n props: {\n program: { type: Object as PropType, required: true },\n showNameOnly: { type: Boolean, required: false, default: false },\n link: { type: String, required: false, default: '' },\n },\n setup(props) {\n const registrationUrl = computed(\n () =>\n `${process.env.VUE_APP_RUNNING_REGISTRATION_DOMAIN}registration?id=${props.program.upwardChallengeID}`\n )\n\n const baseLink = computed(() => {\n const base = `/programs/running/${props.program.upwardChallengeID}`\n if (props.link) {\n return `${base}${props.link}`\n }\n return base\n })\n\n const defaultLink = computed(() => {\n if (!props.showNameOnly) {\n return `${baseLink.value}/setup/information`\n }\n return baseLink.value\n })\n\n return {\n defaultLink,\n baseLink,\n registrationUrl,\n }\n },\n})\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!./UpwardRunningOverview.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!./UpwardRunningOverview.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpwardRunningOverview.vue?vue&type=template&id=6f35d4fa&scoped=true&\"\nimport script from \"./UpwardRunningOverview.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpwardRunningOverview.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UpwardRunningOverview.vue?vue&type=style&index=0&id=6f35d4fa&scoped=true&lang=scss&\"\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 \"6f35d4fa\",\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 (_vm.show)?_c('div',{staticClass:\"row hover-bg-light-2\"},[_vm._m(0),_c('div',{staticClass:\"col\"},[_vm._m(1),_c('div',{staticClass:\"bg-white rounded shadow-sm mt-3 p-3 text-muted\"},[_vm._m(2),(_vm.programs.length)?_c('div',[_vm._l((_vm.programs),function(p,i){return [_c('ResumeProgramItem',{key:i,staticClass:\"mb-5\",attrs:{\"program\":p},on:{\"remove\":_vm.remove,\"click\":_vm.clicked}})]})],2):_vm._e(),(_vm.runningCache)?_c('div',[_c('ResumeURProgram',{staticClass:\"mb-5\",attrs:{\"programCache\":_vm.runningCache},on:{\"remove\":_vm.removeRunning,\"click\":_vm.clickedRunning}})],1):_vm._e()])])]):_vm._e()}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-auto pr-0 text-success\"},[_c('i',{staticClass:\"fas fa-pencil-alt fa-3x\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm\"},[_c('h4',{staticClass:\"text-success\"},[_vm._v(\"Resume Program Setup\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',{staticClass:\"small text-muted\"},[_vm._v(\" It looks like you started a program, but you didn't get all the way to the end. Click on a program name to pick up where you left off. \"),_c('b',{staticClass:\"d-block\"},[_vm._v(\"You have 7 days from when you created the program to finish the process.\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',[_c('button',{staticClass:\"btn btn-link p-0\",on:{\"click\":_vm.clicked}},[_c('h5',{staticClass:\"d-inline-block text-underline\"},[_vm._v(_vm._s(_vm.program.leagueName))])]),_c('i',{staticClass:\"far fa-trash-alt text-primary pl-2 clickable\",on:{\"click\":_vm.remove}})]),_c('div',{staticClass:\"small mb-2 grey--text text--darken-3\"},[_vm._v(_vm._s(_vm.type))]),_c('div',{staticClass:\"d-flex\"},[_c('div',_vm._l((_vm.sport),function(g,i){return _c('div',{key:g.id,staticClass:\"small\"},[_vm._v(\" \"+_vm._s(g.gender)+\" \"+_vm._s(g.type)+\" \"+_vm._s(g.min)+\"-\"+_vm._s(g.max)+\" \")])}),0),_c('div',{staticClass:\"pl-5\"},_vm._l((_vm.cheer),function(c,i){return _c('div',{key:i,staticClass:\"small\"},[_vm._v(\" \"+_vm._s(c.gender)+\" \"+_vm._s(c.type)+\" \"+_vm._s(c.min)+\"-\"+_vm._s(c.max)+\" \")])}),0)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","interface PrettyLeagueTypes {\n [key: string]: string\n}\n\nexport const prettyLeagueTypes: PrettyLeagueTypes = {\n LT_BASKETBALL: 'Basketball',\n LT_BASKETBALL_BASKETBALLCHEERLEADING: 'Basketball with Cheerleading',\n LT_SOCCER: 'Soccer',\n LT_FOOTBALL: 'Football',\n LT_BASKETBALLCAMP: 'Basketball Camp',\n LT_CHEERLEADINGCAMP: 'Cheerleading Camp',\n LT_SOCCERCAMP: 'Soccer Camp',\n LT_FOOTBALL_FOOTBALLCHEERLEADING: 'Football with Cheerleading',\n LT_FOOTBALLCAMP: 'Football Camp',\n LT_VOLLEYBALL: 'Volleyball',\n LT_BASEBALL: 'Baseball',\n LT_FOOTBALLONE: 'Football Clinic',\n LT_BASKETBALLONE: 'Basketball Clinic',\n LT_SOCCERONE: 'Soccer Clinic',\n LT_CHEERLEADINGONE: 'Cheerleading Clinic',\n LT_KICKBALLCONNECT: 'Kickball Connect',\n LT_DODGEBALLCONNECT: 'Dodgeball Connect',\n LT_BASKETBALLCONNECT: 'Basketball Connect',\n LT_FOOTBALLCONNECT: 'Football Connect',\n LT_SOCCERCONNECT: 'Soccer Connect',\n LT_FUTSALCONNECT: 'Futsal Connect',\n LT_UPWARDSELECTMSS: 'Upward Multi-Sport Select',\n LT_PICKLEBALL: 'Pickleball',\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, computed } from '@vue/composition-api'\nimport { prettyLeagueTypes } from '@/lib/common/LeagueTypesPretty'\nimport { prettyGradeGender } from '@/services/gradeService'\nimport { LeagueAbstraction } from '@/models/LeagueAbstraction/LeagueAbstraction'\n\nexport default defineComponent({\n name: 'ResumeProgramItem',\n props: {\n program: { type: Object as PropType, required: true },\n },\n components: {},\n setup(props, { emit }) {\n const grades = computed(() => {\n const acct = props.program?.accounts ? props.program.accounts[0] : null\n return acct ? prettyGradeGender(acct) : []\n })\n const cheer = computed(() => (grades.value.length > 2 ? grades.value.slice(2) : null))\n const sport = computed(() => (grades.value.length ? grades.value.slice(0, 2) : null))\n const type = computed(() => prettyLeagueTypes[props.program.typeLeagueID])\n\n function clicked() {\n emit('click', props.program.type)\n }\n\n function remove() {\n emit('remove', props.program.type)\n }\n return { type, remove, cheer, sport, clicked }\n },\n})\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!./ResumeProgramItem.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!./ResumeProgramItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResumeProgramItem.vue?vue&type=template&id=c453adec&\"\nimport script from \"./ResumeProgramItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResumeProgramItem.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('div',[_c('div',[_c('button',{staticClass:\"btn btn-link p-0\",on:{\"click\":_vm.clicked}},[_c('h5',{staticClass:\"d-inline-block text-underline\"},[_vm._v(_vm._s(_vm.programCache.challenge.challengeName))])]),_c('i',{staticClass:\"far fa-trash-alt text-primary pl-2 clickable\",on:{\"click\":_vm.remove}})]),_c('div',{staticClass:\"small mb-2 grey--text text--darken-3\"},[_vm._v(\"Running\")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport { UpwardRunningCache } from '@/store/upwardRunning'\n\nexport default defineComponent({\n name: 'ResumeURProgram',\n props: {\n programCache: { type: Object as PropType, required: true },\n },\n components: {},\n setup(props, { emit }) {\n function clicked() {\n emit('click', 'RUNNING')\n }\n\n function remove() {\n emit('remove')\n }\n return { remove, clicked }\n },\n})\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!./ResumeURProgram.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!./ResumeURProgram.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResumeURProgram.vue?vue&type=template&id=0e9c73fe&\"\nimport script from \"./ResumeURProgram.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResumeURProgram.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","export interface StartingSelection {\n leagueTypeId: number | null\n opportunityTypeId: number | null\n upwardTypeId: string\n name: string\n}\n\nexport function getEmptyStartingSelection(): StartingSelection {\n return {\n leagueTypeId: null,\n opportunityTypeId: null,\n upwardTypeId: '',\n name: '',\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, onMounted, computed, ref } from '@vue/composition-api'\nimport ResumeProgramItem from '@/components/ResumeProgramItem.vue'\nimport ResumeURProgram from '@/components/UpwardRunning/ResumeURProgram.vue'\nimport sessionObjectsClient from '@/clients/sessionObjectsClient'\nimport store from '@/store'\nimport { League } from '@/GeneratedTypes/League'\nimport { Camp } from '@/GeneratedTypes/Camp'\nimport { Clinic } from '@/GeneratedTypes/Clinic'\nimport { Connect } from '@/GeneratedTypes/Connect'\nimport {\n LeagueAbstraction,\n leagueToAbstraction,\n campToAbstraction,\n clinicToAbstraction,\n connectToAbstraction,\n} from '@/models/LeagueAbstraction/LeagueAbstraction'\nimport { getEmptyStartingSelection, StartingSelection } from '@/models/League/StartingSelection'\nimport { LeagueTypeEnum } from '@/models/LeagueAbstraction/enums/LeagueTypeEnum'\nimport { UpwardRunningCache } from '@/store/upwardRunning'\n\nexport default defineComponent({\n name: 'ResumeProgram',\n props: {},\n components: { ResumeProgramItem, ResumeURProgram },\n setup(props, { root, emit }) {\n const userData = computed(() => store.getters.authorization.userData)\n const firstAccount = computed(() => store.getters.authorization.firstAccountNumber)\n const programs = ref([])\n const league = ref(null)\n const clinic = ref(null)\n const connect = ref(null)\n const camp = ref(null)\n const runningCache = ref(null)\n const show = computed(() => {\n emit('partialCount', programs.value.length ?? 0 + (runningCache.value ? 1 : 0))\n return programs.value.length > 0 || runningCache.value\n })\n\n onMounted(async () => {\n const r = await Promise.allSettled([\n cachedLeague(),\n cachedCamp(),\n cachedClinic(),\n cachedConnect(),\n getCachedRunning(),\n ])\n if (r[0].status == 'fulfilled' && r[0].value) programs.value.push(r[0].value)\n if (r[1].status == 'fulfilled' && r[1].value) programs.value.push(r[1].value)\n if (r[2].status == 'fulfilled' && r[2].value) programs.value.push(r[2]?.value)\n if (r[3].status == 'fulfilled' && r[3].value) programs.value.push(r[3]?.value)\n programs.value = programs.value.filter((p) => p.leagueName != 'ESTIMATE')\n // await getCachedRunning()\n })\n\n const uniqueId = computed(() => {\n return `${firstAccount.value}.${userData.value.replace(/[^a-zA-Z0-9 ]/g, '')}`\n })\n\n async function cachedLeague() {\n const r = await sessionObjectsClient.retrieveData(uniqueKey(LeagueTypeEnum.LEAGUE))\n if (r) {\n league.value = r\n return leagueToAbstraction(r)\n }\n return null\n }\n\n async function cachedCamp() {\n const r = await sessionObjectsClient.retrieveData(uniqueKey(LeagueTypeEnum.CAMP))\n if (r) {\n camp.value = r\n return campToAbstraction(r)\n }\n return null\n }\n\n async function cachedConnect() {\n const r = await sessionObjectsClient.retrieveData(uniqueKey(LeagueTypeEnum.CONNECT))\n if (r) {\n connect.value = r\n return connectToAbstraction(r)\n }\n return null\n }\n\n async function cachedClinic() {\n const r = await sessionObjectsClient.retrieveData(uniqueKey(LeagueTypeEnum.CLINIC))\n if (r) {\n clinic.value = r\n return clinicToAbstraction(r)\n }\n return null\n }\n\n async function getCachedRunning() {\n const r = await sessionObjectsClient.retrieveData(uniqueKey(LeagueTypeEnum.RUNNING))\n if (r) {\n runningCache.value = r\n }\n }\n\n function uniqueKey(type: LeagueTypeEnum) {\n switch (type) {\n case LeagueTypeEnum.CAMP:\n return `camp.new.${uniqueId.value}`\n case LeagueTypeEnum.LEAGUE:\n return `league.new.${uniqueId.value}`\n case LeagueTypeEnum.CLINIC:\n return `clinic.new.${uniqueId.value}`\n case LeagueTypeEnum.CONNECT:\n return `connect.new.${uniqueId.value}`\n case LeagueTypeEnum.RUNNING:\n return `running.new.${uniqueId.value}`\n default:\n return ''\n }\n }\n\n async function remove(type: LeagueTypeEnum) {\n await sessionObjectsClient.delete(uniqueKey(type))\n programs.value = programs.value.filter((p) => p.type != type)\n }\n\n async function removeRunning() {\n await sessionObjectsClient.delete(uniqueKey(LeagueTypeEnum.RUNNING))\n runningCache.value = null\n }\n\n function clicked(type: LeagueTypeEnum) {\n if (type == LeagueTypeEnum.LEAGUE) {\n store.commit.leagues.setCurrent({ item: league.value as League })\n store.commit.leagues.setStartingSelection({ selection: selection(league.value) })\n root.$router.push('/programs/league/setup/information')\n }\n if (type == LeagueTypeEnum.CAMP) {\n store.commit.camps.setCurrent({ item: camp.value as Camp })\n root.$router.push('/programs/camp/setup/information')\n }\n if (type == LeagueTypeEnum.CLINIC) {\n store.commit.camps.setCurrent({ item: clinic.value as Clinic })\n root.$router.push('/programs/clinic/setup/information')\n }\n if (type == LeagueTypeEnum.CONNECT) {\n store.commit.connects.setCurrent({ item: connect.value as Connect })\n root.$router.push('/programs/connect/setup/information')\n }\n }\n\n function clickedRunning() {\n if (runningCache.value) {\n store.commit.upwardRunning.setCurrentChallenge({ challenge: runningCache.value.challenge })\n store.commit.upwardRunning.setCurrentPartnerContact({ contact: runningCache.value?.contact })\n root.$router.push('/programs/running/setup/information')\n }\n }\n\n function selection(l: League | null): StartingSelection {\n if (!l) throw new Error('Cannot Resume Program. Missing League.')\n return {\n ...getEmptyStartingSelection(),\n upwardTypeId: l.typeLeagueID,\n name: l.leagueName,\n }\n }\n\n return { programs, runningCache, show, remove, clicked, removeRunning, clickedRunning }\n },\n})\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!./ResumeProgram.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!./ResumeProgram.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResumeProgram.vue?vue&type=template&id=81611dfe&\"\nimport script from \"./ResumeProgram.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResumeProgram.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, onMounted } from '@vue/composition-api'\nimport LeagueOverview from '@/components/LeagueOverview.vue'\nimport ClinicOverview from '@/components/ClinicOverview.vue'\nimport ConnectOverview from '@/components/ConnectOverview.vue'\nimport CampOverview from '@/components/CampOverview.vue'\nimport UpwardRunningOverview from '@/components/UpwardRunning/UpwardRunningOverview.vue'\nimport ResumeProgram from '@/components/ResumeProgram.vue'\nimport programsClient from '@/clients/programsClient'\nimport upwardRunningClient from '@/clients/upwardRunningClient'\nimport Loading from '@/elements/Loading.vue'\nimport { LeagueInfoCondensed } from '@/models/Program/LeagueInfoCondensed'\nimport { PartnerChallengeInfo } from '@/models/UpwardRunning/PartnerChallengeInfo'\nimport store from '@/store'\nimport dayjs, { Dayjs } from 'dayjs'\n\ninterface ProgramCardInfo {\n programTypeDescription: string\n leagueID: string\n sortByDate: Dayjs\n isHistorical: boolean\n programInfo: LeagueInfoCondensed | PartnerChallengeInfo\n}\n\nexport default defineComponent({\n name: 'CurrentPrograms',\n components: {\n ConnectOverview,\n LeagueOverview,\n ClinicOverview,\n CampOverview,\n UpwardRunningOverview,\n Loading,\n ResumeProgram,\n },\n props: {\n resourceOnlyView: { type: Boolean, required: false, default: false },\n title: { type: String, required: false, default: '' },\n noProgramsText: { type: String, required: false, default: '' },\n includeHistorical: { type: Boolean, required: false, default: false },\n },\n setup(props) {\n const programs = ref([])\n\n const sortedPrograms = computed(() =>\n programs.value.sort((a, b) => (a.sortByDate == b.sortByDate ? 0 : a.sortByDate > b.sortByDate ? -1 : 1))\n )\n\n const programsToShow = ref(2)\n const partialProgramCount = ref(0)\n\n const isLoading = ref(false)\n\n const resourceLink = computed(() => {\n if (props.resourceOnlyView) {\n return '/resources'\n }\n return ''\n })\n\n async function fetchAll() {\n if (props.resourceOnlyView) {\n programsToShow.value = 10\n }\n\n isLoading.value = true\n try {\n const restResult = await programsClient.retrieveAll(props.includeHistorical)\n\n if (restResult.isSuccess && restResult.data !== null) {\n programs.value = restResult.data.map((x) => {\n return {\n programTypeDescription: x.programTypeDescription ?? '',\n leagueID: x.upwardLeagueID ?? '',\n sortByDate: dayjs(x.firstPracticeDate ?? ''),\n isHistorical: x.isHistorical,\n programInfo: x,\n }\n })\n }\n if (store.getters.authorization.firstAccountNumber) {\n const urCreds = await store.dispatch.upwardRunningAuth.getURCreds()\n if (urCreds != null) {\n console.log('TNT - getting UR programs)')\n const restResultUR = await upwardRunningClient.retrieveAll(\n store.getters.authorization.firstAccountNumber\n )\n\n if (restResultUR.isSuccess && restResultUR.data !== null) {\n programs.value.push(\n ...restResultUR.data.map((x) => {\n return {\n programTypeDescription: 'RUNNING',\n leagueID: x.upwardChallengeID ?? '',\n sortByDate: dayjs(x.startDate ?? ''),\n isHistorical: false, //TODO figure out when UR goes historical\n programInfo: x,\n }\n })\n )\n }\n } else {\n console.log('TNT - UR Creds not found, skipping UR program fetch)')\n }\n }\n\n if (props.includeHistorical) {\n programs.value = programs.value.filter((p) => p.isHistorical)\n }\n } finally {\n isLoading.value = false\n }\n }\n\n const noPrograms = computed(\n () => !isLoading.value && programs.value && programs.value.length == 0 && partialProgramCount.value == 0\n )\n\n function setPartialCount(count: number) {\n partialProgramCount.value = count\n }\n\n onMounted(async () => {\n await fetchAll()\n })\n\n return {\n isLoading,\n noPrograms,\n programsToShow,\n programs,\n resourceLink,\n setPartialCount,\n sortedPrograms,\n }\n },\n})\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!./CurrentPrograms.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!./CurrentPrograms.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CurrentPrograms.vue?vue&type=template&id=078e19d1&\"\nimport script from \"./CurrentPrograms.vue?vue&type=script&lang=ts&\"\nexport * from \"./CurrentPrograms.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport CurrentPrograms from '@/components/CurrentPrograms.vue'\nimport FullBody from '@/components/FullBody.vue'\n\nexport default defineComponent({\n name: 'ChooseEditOrNew',\n components: {\n CurrentPrograms,\n FullBody,\n },\n})\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!./ChooseEditOrNew.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!./ChooseEditOrNew.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ChooseEditOrNew.vue?vue&type=template&id=61f30481&\"\nimport script from \"./ChooseEditOrNew.vue?vue&type=script&lang=ts&\"\nexport * from \"./ChooseEditOrNew.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('div',{staticClass:\"m-4\"},[_c('h5',{staticClass:\"mb-5\"},[_vm._v(\"Estimator Tool \"),(!_vm.loadingComplete)?_c('Loading',{attrs:{\"is-small\":\"\"}}):_vm._e()],1),_c('SetupStepperLeague',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loadingComplete),expression:\"loadingComplete\"}],attrs:{\"is-estimate\":\"\"},scopedSlots:_vm._u([{key:\"belowRunningTotal\",fn:function(){return [_c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"text-primary text-center shadow-sm border p-4\"},[_vm._v(\" This estimate will be saved for \"),_c('b',[_vm._v(\"30 days\")]),_vm._v(\" from when it was created. \")])]),(_vm.canBeSaved)?[_c('div',{staticClass:\"col-12\"},[_c('button',{staticClass:\"btn btn-primary w-100\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.saveEstimateClick}},[(_vm.isSavingEstimate)?_c('Loading',{attrs:{\"is-small\":\"\"}}):[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Save Estimate \")]],2)]),_c('div',{staticClass:\"col-12\"},[_c('button',{staticClass:\"btn btn-primary w-100\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.startLeague}},[(_vm.isStartingNewLeague)?_c('Loading',{attrs:{\"is-small\":\"\"}}):[_c('i',{staticClass:\"fa fa-plus\"}),_vm._v(\" Create a League From This Estimate \")]],2)])]:[_c('div',{staticClass:\"alert alert-warning text-center w-100\"},[_vm._v(\"Locked Estimate\")])]]},proxy:true}])}),_c('info-modal',{attrs:{\"show\":_vm.showEstimateSavedModal,\"title\":\"Estimate Saved\",\"button-text\":\"OK\",\"show-close\":false},on:{\"close\":_vm.closeEstimateSavedModal}},[_c('span',{staticClass:\"col-md-12 text-center p-5\"},[_vm._v(\"Estimate saved successfully\")])])],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:\"container-fluid\"},[(_vm.loading)?_c('Loading',{attrs:{\"is-small\":\"\"}}):_vm._e(),(!_vm.showCurrencyWarning)?_c('div',{staticClass:\"row pl-3\"},[_c('div',{staticClass:\"col-12 col-md-8 col-xl-9 bg-white\"},[_c('Stepper',{attrs:{\"vertical\":\"\"},model:{value:(_vm.currentStep),callback:function ($$v) {_vm.currentStep=$$v},expression:\"currentStep\"}},_vm._l((_vm.stepComponents),function(c){return _c(c.name,{key:c.index,tag:\"component\",attrs:{\"step\":c.index,\"stepTitle\":c.stepTitle,\"nextOfferingIndex\":c.nextOfferingIndex,\"is-cheer\":c.isCheer}})}),1)],1),_c('div',{staticClass:\"col-12 col-md-4 col-xl-3 bg-light-1\"},[_c('div',{staticClass:\"sticky-below-app-bar\"},[_c('RunningTotal',{attrs:{\"league-programs\":_vm.listOfPrograms,\"current-product-config-program\":_vm.currentUpwardProgrmType,\"is-estimate\":false,\"viewed-steps\":_vm.viewedSteps}}),_vm._t(\"belowRunningTotal\")],2)])]):_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('CurrencyWarning',{staticClass:\"mt-5\"})],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('Step',{attrs:{\"step\":_vm.step,\"maxTouchedStep\":_vm.productSetupMaxTouchedStep,\"title\":\"Program Information\",\"hook-definitions\":_vm.hooks},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[[_c('ProgramInformationForm',{attrs:{\"is-estimate\":_vm.isEstimate,\"league-programs\":_vm.leaguePrograms},on:{\"valid\":_vm.onProgramInformationValidation}}),(_vm.showInforWarning)?_c('div',{staticClass:\"alert alert-danger\",staticStyle:{\"max-width\":\"500px\"}},[_vm._v(\" Please complete all required fields \")]):_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('span',[_c('stepper-step',{key:(_vm.step + \"-step\"),attrs:{\"title\":_vm.title,\"step\":_vm.step,\"editable\":_vm.maxTouchedStep >= _vm.step,\"complete\":_vm.maxTouchedStep >= _vm.step},on:{\"click\":_vm.clicked}}),_c('stepper-content',{key:(_vm.step + \"-content\"),attrs:{\"step\":_vm.step,\"button-label\":_vm.buttonLabel,\"is-button-disabled\":_vm.buttonDisabled,\"defaultButton\":_vm.defaultButton},on:{\"goNext\":_vm.localNextStep}},[_vm._t(\"default\")],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\nimport { defineComponent, PropType } from '@vue/composition-api'\n\nimport StepperContent from '@/elements/StepperContent.vue'\nimport StepperStep from '@/elements/StepperStep.vue'\nimport { StepperHooks } from '@/components/ProductFlow/models/StepperHooks'\n\nexport default defineComponent({\n name: 'Step',\n props: {\n step: { type: Number, required: true },\n maxTouchedStep: { type: Number, required: true },\n buttonLabel: { type: String, required: false, default: 'Next' },\n title: { type: String, required: false, default: '' },\n buttonDisabled: { type: Boolean, required: false, default: false },\n hookDefinitions: { type: Object as PropType, required: false, default: () => null },\n defaultButton: { type: Boolean, required: false, default: true },\n },\n components: { StepperContent, StepperStep },\n setup(props, { emit }) {\n async function localNextStep() {\n let isValid = true\n if (props.hookDefinitions && props.hookDefinitions.beforeNextStep) {\n isValid = props.hookDefinitions.beforeNextStep()\n }\n if (isValid) {\n nextStep()\n }\n\n if (props.hookDefinitions && props.hookDefinitions.afterNextStep) {\n await props.hookDefinitions.afterNextStep()\n }\n }\n\n function nextStep() {\n emit('nextStep')\n }\n\n function clicked() {\n emit('clicked', props.step)\n }\n\n return {\n localNextStep,\n clicked,\n }\n },\n})\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!./Step.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!./Step.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Step.vue?vue&type=template&id=10d6283d&\"\nimport script from \"./Step.vue?vue&type=script&lang=ts&\"\nexport * from \"./Step.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('UpwardValidationObserver',{ref:\"observer\",on:{\"valid\":_vm.onValidEvent}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-xl-6\"},[_c('div',{staticClass:\"row\"},[(_vm.isEstimate)?_c('text-input',{staticClass:\"col-12 col-sm-6\",attrs:{\"label\":\"Name of this Estimate\",\"vee-validate-rules\":\"required\",\"required\":\"\"},on:{\"input\":_vm.sendDataToStore},model:{value:(_vm.localInfo.name),callback:function ($$v) {_vm.$set(_vm.localInfo, \"name\", $$v)},expression:\"localInfo.name\"}}):_vm._e(),(_vm.isEstimate)?_c('date-input',{staticClass:\"col-12 col-sm-6\",attrs:{\"label\":\"First Practice\",\"required\":\"\",\"is-typeable\":false,\"min-date\":new Date(_vm.dateLimits.min),\"max-date\":new Date(_vm.dateLimits.max),\"vee-validate-rules\":\"required\"},on:{\"input\":_vm.sendDataToStore},model:{value:(_vm.localInfo.firstPracticeDateEstimate),callback:function ($$v) {_vm.$set(_vm.localInfo, \"firstPracticeDateEstimate\", $$v)},expression:\"localInfo.firstPracticeDateEstimate\"}}):_vm._e(),_c('text-input',{staticClass:\"col-12 col-sm-6\",attrs:{\"label\":\"Estimated # of Players\",\"required\":\"\",\"vee-validate-rules\":\"required|integer\"},on:{\"input\":_vm.sendDataToStore},model:{value:(_vm.localInfo.playerEstimate),callback:function ($$v) {_vm.$set(_vm.localInfo, \"playerEstimate\", $$v)},expression:\"localInfo.playerEstimate\"}}),(_vm.hasCheer)?_c('text-input',{staticClass:\"col-12 col-sm-6\",attrs:{\"label\":\"Estimated # of Cheerleaders\",\"required\":\"\",\"vee-validate-rules\":\"required|integer\"},on:{\"input\":_vm.sendDataToStore},model:{value:(_vm.localInfo.cheerEstimate),callback:function ($$v) {_vm.$set(_vm.localInfo, \"cheerEstimate\", $$v)},expression:\"localInfo.cheerEstimate\"}}):_vm._e(),_c('text-input',{staticClass:\"col-12 col-sm-6\",attrs:{\"label\":\"Estimated # of Coaches\",\"required\":\"\",\"vee-validate-rules\":\"required|integer\"},on:{\"input\":_vm.sendDataToStore},model:{value:(_vm.localInfo.sportCoachEstimate),callback:function ($$v) {_vm.$set(_vm.localInfo, \"sportCoachEstimate\", $$v)},expression:\"localInfo.sportCoachEstimate\"}}),(_vm.hasCheer)?_c('text-input',{staticClass:\"col-12 col-sm-6\",attrs:{\"label\":\"Estimated # of Cheer Coaches\",\"required\":\"\",\"vee-validate-rules\":\"required|integer\"},on:{\"input\":_vm.sendDataToStore},model:{value:(_vm.localInfo.cheerCoachEstimate),callback:function ($$v) {_vm.$set(_vm.localInfo, \"cheerCoachEstimate\", $$v)},expression:\"localInfo.cheerCoachEstimate\"}}):_vm._e()],1)])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-xl-10\"},[(_vm.isEstimate)?_c('div',[_c('grade-gender-estimate-selector',{on:{\"input\":_vm.sendDataToStore},model:{value:(_vm.localInfo.grades),callback:function ($$v) {_vm.$set(_vm.localInfo, \"grades\", $$v)},expression:\"localInfo.grades\"}})],1):_vm._e()])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nexport function getEmptyUpwardProgramTypeID(): UpwardProgramTypeID {\n return {\n averageNumberTeams: 0,\n averageNumberPlayers: 0,\n maxEvalScore: 0,\n draftVariance: 0,\n minPlayersPerTeam: 0,\n maxPlayersPerTeam: 0,\n suggestedPlayersPerTeam: 0,\n parentProgramID: 0,\n playersPerCoachShirt: 0,\n orderUnassignedParticipant: false,\n shortDescription: '',\n isCamp: false,\n isCheer: false,\n isPilot: false,\n active: false,\n numberOfSegments: 0,\n id: 0,\n upwardTypeID: '',\n description: '',\n }\n}\n\nexport function getEmptyUpwardProgramTypeIDList(): UpwardProgramTypeID[] {\n return [getEmptyUpwardProgramTypeID()]\n}\n","import { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail'\nimport { ProductOfferingProductInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\nimport { cloneDeep } from 'lodash'\nimport { SavedProductOfferingConfigGenderGrade } from 'src/GeneratedTypes/SavedProductOfferingConfigGenderGrade'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport store from '@/store'\n\nexport function getSelectedIndexes(\n details: SavedProductOfferingConfigDetail[] | null,\n allProducts: ProductOfferingProductInfo[],\n categoryId: number\n) {\n if (!details) return\n\n const mySelectedProducts = getProductsByCategory(details, categoryId)\n\n const indexes = allProducts.reduce((a: any, p: ProductOfferingProductInfo, i: number) => {\n const hasId = mySelectedProducts.some(\n (x: SavedProductOfferingConfigDetail) => x.productID === p.productID\n )\n\n if (hasId) a.push(i)\n return a\n }, [])\n\n return indexes\n}\n\nexport function getProductOptionID(\n details: SavedProductOfferingConfigDetail[] | null,\n productID: number,\n categoryId: number\n) {\n if (!details) return\n\n const mySelectedProducts = getProductsByCategory(details, categoryId)\n const product = mySelectedProducts.find((p: SavedProductOfferingConfigDetail) => p.productID === productID)\n\n return product ? product.typeProductOptionID : null\n}\n\nexport function getProductPrice(\n details: SavedProductOfferingConfigDetail[] | null,\n productID: number,\n categoryId: number\n) {\n if (!details) return\n\n const mySelectedProducts = getProductsByCategory(details, categoryId)\n const product = mySelectedProducts.find((p: SavedProductOfferingConfigDetail) => p.productID === productID)\n\n return product ? product.costToCharge : null\n}\n\nexport function getProductByID(\n details: SavedProductOfferingConfigDetail[] | null,\n productID: number,\n categoryId: number\n) {\n if (!details) return\n const mySelectedProducts = getProductsByCategory(details, categoryId)\n const product = mySelectedProducts.find((p: SavedProductOfferingConfigDetail) => p.productID === productID)\n\n return product ? product : null\n}\n\nexport function getProductsByCategory(details: SavedProductOfferingConfigDetail[], categoryId: number) {\n const allDetails = cloneDeep(details)\n return allDetails.filter((p: SavedProductOfferingConfigDetail) => p.categoryID === categoryId)\n}\n\nexport function buildGradeArray(\n gradeGenders: SavedProductOfferingConfigGenderGrade[] | null,\n gender: 'M' | 'F',\n upwardTypeID: string | null\n) {\n if (!gradeGenders || gradeGenders.length === 0) return []\n const typeProgramID = upwardTypeID\n return gradeGenders.reduce((acc: UpwardGradeTypeID[], g: SavedProductOfferingConfigGenderGrade) => {\n if (g.typeProgramID === typeProgramID && g.gender === gender)\n acc.push(store.getters.gradeTypes.byUpwardTypeId(g.typeGradeID))\n return acc\n }, [])\n}\n\nexport function programByType(programs: UpwardProgramTypeID[], type: 'CHEER' | 'SPORT') {\n const progs = cloneDeep(programs)\n const flag = type === 'CHEER'\n const program = progs.find((x: UpwardProgramTypeID) => x.isCheer === flag)\n return program ? program : null\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationObserver',{ref:\"upwObserver\",scopedSlots:_vm._u([_vm._l((_vm.$scopedSlots),function(_,scopedSlotName){return {key:scopedSlotName,fn:function(slotData){return [_vm._t(scopedSlotName,null,null,slotData)]}}}),_vm._l((_vm.$slots),function(_,slotName){return {key:slotName,fn:function(){return [_vm._t(slotName)]},proxy:true}})],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\nimport { ValidationObserver } from 'vee-validate'\n\nexport default defineComponent({\n name: 'UpwardValidationObserver',\n components: { ValidationObserver },\n setup(props, ctx) {\n const upwardObserver = ref(ctx.refs.upwObserver)\n const timeoutHandle = ref(null)\n\n const isValid = computed(() => {\n const obs = upwardObserver.value as InstanceType\n return obs ? obs.flags.valid : false\n })\n\n onMounted(() => {\n upwardObserver.value = ctx.refs.upwObserver\n })\n\n function reset() {\n const obs = upwardObserver.value as InstanceType\n if (obs) {\n obs.reset()\n }\n }\n\n async function validate() {\n const obs = upwardObserver.value as InstanceType\n if (obs) {\n return await obs.validate()\n }\n return false\n }\n\n watch(\n () => isValid.value,\n () => {\n if (timeoutHandle.value) {\n clearTimeout(timeoutHandle.value)\n }\n\n timeoutHandle.value = setTimeout(() => {\n ctx.emit('valid', isValid.value)\n timeoutHandle.value = null\n }, 250)\n },\n { immediate: true }\n )\n\n return {\n reset,\n validate,\n }\n },\n})\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!./UpwardValidationObserver.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!./UpwardValidationObserver.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpwardValidationObserver.vue?vue&type=template&id=9942758a&\"\nimport script from \"./UpwardValidationObserver.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpwardValidationObserver.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('div',{staticClass:\"form-group\"},[_c('input-label',{attrs:{\"label\":_vm.label,\"required\":_vm.required}}),_c('div',{staticClass:\"input-group\"},[(_vm.prependIcon)?_c('div',{staticClass:\"input-group-prepend\"},[_c('span',{staticClass:\"input-group-text\"},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.prependIcon})])]):_vm._e(),_c('input',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.internalValue),expression:\"internalValue\",modifiers:{\"number\":true}}],staticClass:\"form-control text-right\",attrs:{\"type\":\"number\",\"required\":_vm.required,\"placeholder\":_vm.placeholder,\"min\":_vm.min,\"max\":_vm.max},domProps:{\"value\":(_vm.internalValue)},on:{\"change\":_vm.handleChange,\"input\":[function($event){if($event.target.composing){ return; }_vm.internalValue=_vm._n($event.target.value)},_vm.handleInput],\"focus\":function($event){return $event.target.select()},\"blur\":function($event){return _vm.$forceUpdate()}}}),(_vm.appendIcon)?_c('div',{staticClass:\"input-group-append\"},[_c('span',{staticClass:\"input-group-text\"},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.appendIcon})])]):_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\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport InputLabel from '@/elements/InputLabel.vue'\n\nexport default defineComponent({\n name: 'IntegerInput',\n components: {\n InputLabel,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n placeholder: { type: String, default: '', required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n value: { required: true, type: (null as unknown) as PropType },\n min: { type: Number, default: 0, required: false },\n max: { type: Number, default: null, required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(convertToString(props.value))\n\n function convertToString(value: number | null) {\n return value === null || isNaN(value) ? '' : `${value}`\n }\n\n function convertToNumber(value: string): number | null {\n const valueAsNumber = Math.round(Number(value))\n\n if (isNaN(valueAsNumber)) {\n return null\n }\n\n return valueAsNumber\n }\n\n function handleChange() {\n const valueAsNumber = convertToNumber(internalValue.value)\n ctx.emit('change', valueAsNumber)\n }\n\n function handleInput() {\n const valueAsNumber = convertToNumber(internalValue.value)\n ctx.emit('input', valueAsNumber)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = convertToString(props.value)\n }\n )\n\n return {\n internalValue,\n handleChange,\n handleInput,\n }\n },\n})\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!./IntegerInput.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!./IntegerInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./IntegerInput.vue?vue&type=template&id=e9e83128&\"\nimport script from \"./IntegerInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./IntegerInput.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('div',{staticClass:\"border rounded p-2 my-3\"},[_c('input-label',{staticClass:\"d-block mb-5\",attrs:{\"label\":\"Sport participant genders allowed to register\",\"required\":\"\"}}),_c('checkbox-input',{staticClass:\"p-0\",attrs:{\"label\":\"Girls\"},model:{value:(_vm.includeGirls),callback:function ($$v) {_vm.includeGirls=$$v},expression:\"includeGirls\"}}),(_vm.includeGirls)?_c('grade-range-slider',{model:{value:(_vm.girlGrades),callback:function ($$v) {_vm.girlGrades=$$v},expression:\"girlGrades\"}}):_vm._e(),_c('checkbox-input',{staticClass:\"p-0 mt-5\",attrs:{\"label\":\"Boys\"},model:{value:(_vm.includeBoys),callback:function ($$v) {_vm.includeBoys=$$v},expression:\"includeBoys\"}}),(_vm.includeBoys)?_c('grade-range-slider',{model:{value:(_vm.boyGrades),callback:function ($$v) {_vm.boyGrades=$$v},expression:\"boyGrades\"}}):_vm._e(),(_vm.hasCheer)?[_c('input-label',{staticClass:\"d-block mt-5 pt-5 border-top\",attrs:{\"label\":\"Cheer participant genders allowed to register\",\"required\":\"\"}}),_c('checkbox-input',{staticClass:\"p-0 mt-5\",attrs:{\"label\":\"Girls\"},model:{value:(_vm.includeGirlsCheer),callback:function ($$v) {_vm.includeGirlsCheer=$$v},expression:\"includeGirlsCheer\"}}),(_vm.includeGirlsCheer)?_c('grade-range-slider',{model:{value:(_vm.cheerGirlGrades),callback:function ($$v) {_vm.cheerGirlGrades=$$v},expression:\"cheerGirlGrades\"}}):_vm._e(),_c('checkbox-input',{staticClass:\"p-0 mt-5\",attrs:{\"label\":\"Boys\"},model:{value:(_vm.includeBoysCheer),callback:function ($$v) {_vm.includeBoysCheer=$$v},expression:\"includeBoysCheer\"}}),(_vm.includeBoysCheer)?_c('grade-range-slider',{model:{value:(_vm.cheerBoyGrades),callback:function ($$v) {_vm.cheerBoyGrades=$$v},expression:\"cheerBoyGrades\"}}):_vm._e()]:_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('base-input-wrapper',{attrs:{\"required\":_vm.required,\"label\":_vm.label,\"id\":_vm.elementId,\"sub-label\":_vm.subLabel,\"sub-label-inline\":_vm.subLabelInline}},[_c('div',{staticClass:\"mx-1 px-2 bg-white\"},[_c('v-range-slider',{attrs:{\"id\":_vm.elementId,\"tick-labels\":_vm.tickLabels,\"ticks\":\"always\",\"tick-size\":\"3\",\"min\":1,\"max\":15,\"color\":\"blue\",\"track-color\":\"grey\",\"disabled\":_vm.disabled,\"readonly\":_vm.readonly,\"dense\":\"\"},on:{\"change\":_vm.change,\"input\":_vm.input},model:{value:(_vm.local),callback:function ($$v) {_vm.local=$$v},expression:\"local\"}})],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\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport uuid from 'uuid'\n\nimport BaseInputWrapper from '@/elements/BaseInputWrapper.vue'\n\nimport {\n getGrades,\n getDefaultGrades,\n getAges,\n getGradeDescriptions,\n} from '@/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades'\nimport { sortGrades } from '@/services/gradeService.ts'\n\nexport default defineComponent({\n name: 'GradeRangeSlider',\n components: {\n BaseInputWrapper,\n },\n props: {\n value: { type: Array as PropType, required: true },\n id: { type: String, default: '', required: false },\n min: { type: String, default: 'K3', required: false },\n max: { type: String, default: '12th', required: false },\n subLabel: { type: String, required: false },\n subLabelInline: { type: Boolean, default: false, required: false },\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n disabled: { type: Boolean, default: false, required: false },\n readonly: { type: Boolean, default: false, required: false },\n showAges: { type: Boolean, default: false },\n },\n setup(props, ctx) {\n const guid = uuid.v4()\n const allGrades = ref(getGrades(false))\n const allAges = ref(getAges(false))\n const allGradeDescs = ref(getGradeDescriptions(false))\n const tickLabels = ref(props.showAges ? [...allAges.value] : [...allGradeDescs.value])\n\n const maxTick = computed(() => allGrades.value.indexOf(props.max) + 1)\n const minTick = computed(() => allGrades.value.indexOf(props.min) + 1)\n\n const local = ref([minTick.value, maxTick.value])\n const internalValue = ref(null)\n\n const elementId = computed(() => props.id || `grade-slider-${guid}`)\n\n function change(val: any) {\n const list: number[] = [...local.value]\n if (val[0] <= minTick.value) {\n list[0] = minTick.value\n }\n if (val[1] >= maxTick.value) {\n list[1] = maxTick.value\n }\n local.value = [...list]\n ctx.emit('change', selectedGrades())\n }\n\n function input() {\n ctx.emit('input', selectedGrades())\n }\n\n function selectedGrades(): string[] {\n const grades = getGrades(false)\n const selGrades = grades.slice(local.value[0] - 1, local.value[1])\n return selGrades\n }\n\n function setDefaults() {\n local.value = [1, 15]\n ctx.emit('input', getDefaultGrades())\n }\n\n watch(\n () => props.showAges,\n () => {\n tickLabels.value = props.showAges ? [...allAges.value] : [...allGrades.value]\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (!props.value || !props.value.length) {\n setDefaults()\n return\n }\n internalValue.value = [...props.value]\n internalValue.value?.sort(sortGrades)\n const min = allGrades.value.indexOf(internalValue.value[0]) + 1\n const max = allGrades.value.indexOf(internalValue.value[internalValue.value.length - 1]) + 1\n local.value = [min, max]\n },\n { immediate: true }\n )\n\n return {\n elementId,\n tickLabels,\n local,\n change,\n input,\n }\n },\n})\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!./GradeRangeSlider.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!./GradeRangeSlider.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GradeRangeSlider.vue?vue&type=template&id=5a035496&\"\nimport script from \"./GradeRangeSlider.vue?vue&type=script&lang=ts&\"\nexport * from \"./GradeRangeSlider.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GradeRangeSlider.vue?vue&type=style&index=0&lang=scss&\"\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 { VRangeSlider } from 'vuetify/lib/components/VRangeSlider';\ninstallComponents(component, {VRangeSlider})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\nimport { getListFromSavedEstimate } from '@/services/gradeService'\n\nimport { SavedProductOfferingConfigGenderGrade } from '@/GeneratedTypes/SavedProductOfferingConfigGenderGrade'\n\nimport InputLabel from '@/elements/InputLabel.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport GradeRangeSlider from '@/elements/GradeRangeSlider.vue'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nexport default defineComponent({\n name: 'GradeGenderEstimateSelector',\n components: {\n InputLabel,\n CheckboxInput,\n GradeRangeSlider,\n },\n props: {\n value: { type: Array as PropType, required: false },\n },\n setup(props, ctx) {\n const local = ref(null)\n const girlGrades = ref([])\n const boyGrades = ref([])\n const cheerBoyGrades = ref([])\n const cheerGirlGrades = ref([])\n const includeGirls = ref(true)\n const includeBoys = ref(true)\n const includeGirlsCheer = ref(true)\n const includeBoysCheer = ref(false)\n\n function initValues() {\n initSport()\n initCheer()\n }\n\n function initSport() {\n if (sportProgramTypeId.value && local.value && local.value.length) {\n girlGrades.value = cloneDeep(getListFromSavedEstimate(local.value, sportProgramTypeId.value, 'F'))\n boyGrades.value = cloneDeep(getListFromSavedEstimate(local.value, sportProgramTypeId.value, 'M'))\n includeBoys.value = boyGrades.value.length > 0\n includeGirls.value = girlGrades.value.length > 0\n }\n }\n\n function initCheer() {\n if (cheerProgramTypeId.value && local.value && local.value.length) {\n cheerGirlGrades.value = cloneDeep(\n getListFromSavedEstimate(local.value, cheerProgramTypeId.value, 'F')\n )\n cheerBoyGrades.value = cloneDeep(getListFromSavedEstimate(local.value, cheerProgramTypeId.value, 'M'))\n includeBoysCheer.value = cheerBoyGrades.value.length > 0\n includeGirlsCheer.value = cheerGirlGrades.value.length > 0\n }\n }\n\n const sportProgramTypeId = computed((): string | null => {\n if (local.value) {\n return local.value.find((p) => !isCheer(p.typeProgramID))?.typeProgramID ?? null\n }\n return null\n })\n\n const cheerProgramTypeId = computed((): string | null => {\n if (local.value) {\n return local.value.find((p) => isCheer(p.typeProgramID))?.typeProgramID ?? null\n }\n return null\n })\n\n const hasCheer = computed((): boolean => {\n if (cheerProgramTypeId.value) return true\n return false\n })\n\n function mapGrades(grades: string[], typeProgramID: string | null, gender: string) {\n if (!typeProgramID) return [] as SavedProductOfferingConfigGenderGrade[]\n return grades.map(\n (g) =>\n ({\n typeProgramID: typeProgramID,\n gender: gender,\n typeGradeID: g,\n } as SavedProductOfferingConfigGenderGrade)\n )\n }\n\n watch(\n () => props.value,\n (\n oldVal: SavedProductOfferingConfigGenderGrade[] | undefined,\n newVal: SavedProductOfferingConfigGenderGrade[] | undefined\n ) => {\n if (JSON.stringify(oldVal) != JSON.stringify(newVal)) {\n local.value = JSON.parse(JSON.stringify(props.value))\n initValues()\n }\n }\n )\n watch(\n () => [\n includeGirls.value,\n includeBoys.value,\n includeGirlsCheer.value,\n includeBoysCheer.value,\n girlGrades.value,\n boyGrades.value,\n cheerGirlGrades.value,\n cheerBoyGrades.value,\n ],\n () => {\n emitChange()\n }\n )\n\n function emitChange() {\n let girls: SavedProductOfferingConfigGenderGrade[] = []\n let boys: SavedProductOfferingConfigGenderGrade[] = []\n let girlCheer: SavedProductOfferingConfigGenderGrade[] = []\n let boyCheer: SavedProductOfferingConfigGenderGrade[] = []\n\n if (includeGirls.value) {\n girls = mapGrades(girlGrades.value, sportProgramTypeId.value, 'F')\n }\n\n if (includeBoys.value) {\n boys = mapGrades(boyGrades.value, sportProgramTypeId.value, 'M')\n }\n\n if (includeGirlsCheer.value) {\n girlCheer = mapGrades(cheerGirlGrades.value, cheerProgramTypeId.value, 'F')\n }\n\n if (includeBoysCheer.value) {\n boyCheer = mapGrades(cheerBoyGrades.value, cheerProgramTypeId.value, 'M')\n }\n ctx.emit('input', [...girls, ...boys, ...girlCheer, ...boyCheer])\n }\n\n return {\n includeGirls,\n girlGrades,\n includeBoys,\n boyGrades,\n hasCheer,\n includeGirlsCheer,\n cheerGirlGrades,\n includeBoysCheer,\n cheerBoyGrades,\n }\n },\n})\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!./GradeGenderEstimateSelector.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!./GradeGenderEstimateSelector.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GradeGenderEstimateSelector.vue?vue&type=template&id=3bafe60b&\"\nimport script from \"./GradeGenderEstimateSelector.vue?vue&type=script&lang=ts&\"\nexport * from \"./GradeGenderEstimateSelector.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 { SavedProductOfferingConfigGenderGrade } from '@/GeneratedTypes/SavedProductOfferingConfigGenderGrade'\n\nexport interface ProgramInformation {\n id: number\n name: string | null\n playerEstimate: string\n cheerEstimate: string\n sportCoachEstimate: string\n cheerCoachEstimate: string\n firstPracticeDateEstimate: Date | null\n grades: SavedProductOfferingConfigGenderGrade[] | null\n}\n\nexport function getEmptyProgramInformation(): ProgramInformation {\n return {\n id: 0,\n name: '',\n playerEstimate: '',\n cheerEstimate: '',\n sportCoachEstimate: '',\n cheerCoachEstimate: '',\n firstPracticeDateEstimate: null,\n grades: null,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\nimport dayjs from 'dayjs'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport { getEmptyUpwardProgramTypeIDList } from '@/lib/support/models/UpwardTypes/UpwardProgramTypeID'\nimport { programByType } from '@/lib/common/ProductOfferingConfig'\nimport { SavedProductOfferingConfig } from 'src/GeneratedTypes/SavedProductOfferingConfig'\nimport UpwardValidationObserver from '@/components/UpwardValidationObserver.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport GradeGenderEstimateSelector from '@/components/GradeGenderEstimateSelector.vue'\nimport {\n ProgramInformation,\n getEmptyProgramInformation,\n} from '@/components/ProductFlow/ProductSetupStepper/ProgramInformation/ProgramInformationTypes'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport store from '@/store'\n\nlet useTestData: any = null\nif (process.env.VUE_APP_USE_TEST_DATA == 'YES') {\n import('./testData').then((x) => (useTestData = x))\n}\n\nexport default defineComponent({\n name: 'ProgramInformationForm',\n components: {\n TextInput,\n IntegerInput,\n DateInput,\n UpwardValidationObserver,\n GradeGenderEstimateSelector,\n },\n props: {\n isEstimate: { type: Boolean, required: false, default: true },\n leaguePrograms: {\n type: Array as PropType,\n default: getEmptyUpwardProgramTypeIDList,\n required: false,\n },\n },\n setup(props, ctx) {\n const startingSelection = computed(() => store.getters.leagues.startingSelection)\n const productOfferingConfig = computed(() => store.getters.productOfferings.productOfferingConfig)\n\n const localInfo = ref(getEmptyProgramInformation())\n const isValid = ref(false)\n const dateLimits = ref({\n min: '',\n max: '',\n })\n\n const logic = productFlowLogic()\n\n onMounted(() => {\n defaultDateRange()\n if (productOfferingConfig.value.firstPracticeDateEstimate) {\n setLocalData()\n } else {\n setLocalGrades() //this should always be done\n }\n setTestData()\n })\n\n function defaultDateRange() {\n dateLimits.value.min = new Date().toLocaleDateString()\n dateLimits.value.max = new Date(\n new Date().setFullYear(new Date().getFullYear() + 1)\n ).toLocaleDateString()\n }\n\n const hasCheer = computed(() => {\n const cheerProgram = programByType(props.leaguePrograms, 'CHEER')\n return cheerProgram ? true : false\n })\n\n function onValidEvent(v: boolean) {\n isValid.value = v && areEstimatedValuesValid()\n }\n\n function sendDataToStore() {\n logic.markAsDirty()\n const info = prepData(localInfo.value)\n store.commit.productOfferings.setProductOfferingConfig({ item: info })\n }\n\n function prepData(info: ProgramInformation) {\n const clone = cloneDeep(productOfferingConfig.value) as SavedProductOfferingConfig // get copy with Details and Starter Orders intact\n clone.name = info.name\n clone.cheerCoachEstimate = toNumber(info.cheerCoachEstimate)\n clone.cheerEstimate = toNumber(info.cheerEstimate)\n clone.playerEstimate = toNumber(info.playerEstimate)\n clone.sportCoachEstimate = toNumber(info.sportCoachEstimate)\n if (props.isEstimate) {\n // setting gradegender is handled in ProductOfferingConfig for non-estimates\n clone.gradesByGender = info.grades ? [...cloneDeep(info.grades)] : []\n if (info.firstPracticeDateEstimate) {\n clone.firstPracticeDateEstimate = info.firstPracticeDateEstimate\n }\n }\n\n return clone\n }\n\n function toNumber(val: string) {\n const n = Number(val)\n return isNaN(n) ? 0 : n\n }\n\n function setLocalData() {\n localInfo.value.name = productOfferingConfig.value.name || estimateName.value\n localInfo.value.cheerCoachEstimate = nonZero(productOfferingConfig.value.cheerCoachEstimate)\n localInfo.value.cheerEstimate = nonZero(productOfferingConfig.value.cheerEstimate)\n localInfo.value.playerEstimate = nonZero(productOfferingConfig.value.playerEstimate)\n localInfo.value.sportCoachEstimate = nonZero(productOfferingConfig.value.sportCoachEstimate)\n localInfo.value.firstPracticeDateEstimate = defaultFirstPracticeDate(\n productOfferingConfig.value.firstPracticeDateEstimate\n )\n setLocalGrades()\n }\n\n function setLocalGrades() {\n if (productOfferingConfig.value.gradesByGender && productOfferingConfig.value.gradesByGender.length) {\n localInfo.value.grades = JSON.parse(JSON.stringify(productOfferingConfig.value.gradesByGender))\n } else {\n localInfo.value.grades = null\n }\n }\n\n const estimateName = computed(() => {\n const today = dayjs().format('M-D-YY')\n return startingSelection.value ? `${startingSelection.value.name} ${today}` : ''\n })\n\n function nonZero(val: number): string {\n if (!val) return ''\n return val === 0 ? '' : val.toString()\n }\n\n function defaultFirstPracticeDate(configDate: Date | null) {\n if (!configDate) return null\n return configDate\n }\n\n watch(\n () => productOfferingConfig.value,\n () => {\n setTestData()\n setLocalData()\n }\n )\n\n watch(\n () => isValid.value,\n () => {\n ctx.emit('valid', isValid.value)\n }\n )\n\n function setTestData() {\n //if process.env.VUE_APP_USE_TEST_DATA == 'YES' this will run\n if (useTestData) {\n if (!productOfferingConfig.value.playerEstimate) {\n useTestData.setDatesForNewEstimate(hasCheer.value)\n }\n }\n }\n\n watch(\n () => [\n localInfo.value.playerEstimate,\n localInfo.value.cheerEstimate,\n localInfo.value.sportCoachEstimate,\n localInfo.value.cheerCoachEstimate,\n ],\n () => {\n isValid.value = areEstimatedValuesValid()\n }\n )\n\n function areEstimatedValuesValid() {\n const playerEstimate = parseInt(localInfo.value.playerEstimate)\n const cheerEstimate = parseInt(localInfo.value.cheerEstimate)\n const sportCoachEstimate = parseInt(localInfo.value.sportCoachEstimate)\n const cheerCoachEstimate = parseInt(localInfo.value.cheerCoachEstimate)\n\n if (!playerEstimate || playerEstimate <= 0) {\n return false\n }\n if (hasCheer.value && (!cheerEstimate || cheerEstimate <= 0)) {\n return false\n }\n if (!sportCoachEstimate || sportCoachEstimate <= 0) {\n return false\n }\n if (hasCheer.value && (!cheerCoachEstimate || cheerCoachEstimate <= 0)) {\n return false\n }\n if (props.isEstimate && !localInfo.value.firstPracticeDateEstimate) {\n return false\n }\n return true\n }\n\n return {\n onValidEvent,\n localInfo,\n sendDataToStore,\n dateLimits,\n hasCheer,\n }\n },\n})\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!./ProgramInformationForm.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!./ProgramInformationForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProgramInformationForm.vue?vue&type=template&id=560c1ae3&\"\nimport script from \"./ProgramInformationForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProgramInformationForm.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\nimport ProgramInformationForm from './ProgramInformation/ProgramInformationForm.vue'\n\nimport { ProdConfigTypes } from '@/lib/common/ProdConfigTypes'\n\nimport { StepperHooks } from '@/components/ProductFlow/models/StepperHooks'\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'InfoStep',\n props: { step: { type: Number, required: true } },\n components: { ProgramInformationForm, Step },\n setup() {\n const logic = productFlowLogic()\n const isEstimate = computed(() => store.getters.productFlow.prodConfigType == ProdConfigTypes.ESTIMATE)\n\n /*\n * Hooks\n */\n const hooks: StepperHooks = {\n beforeNextStep: () => {\n return validate()\n },\n afterNextStep: async () => {\n if (store.getters.productFlow.isNewProdConfig) {\n await logic.fetchProductCatalog()\n }\n },\n }\n\n /*\n * Form validation and conditional display\n */\n const showInforWarning = computed(() => {\n return programInfoClicked.value && !programInformationIsValid.value\n })\n\n const programInformationIsValid = ref(false)\n function onProgramInformationValidation(isValid: boolean) {\n programInformationIsValid.value = isValid\n }\n\n const programInfoClicked = ref(false)\n function validate() {\n if (programInformationIsValid.value) {\n programInfoClicked.value = false\n } else {\n programInfoClicked.value = true\n }\n return programInformationIsValid.value\n }\n\n /*\n * Retrieve programs to pass into ProgramInformationForm\n */\n const leaguePrograms = computed(() => store.getters.leagueAbstraction.leagueUpwardProgramTypeID)\n\n return {\n onProgramInformationValidation,\n showInforWarning,\n leaguePrograms,\n hooks,\n ...logic,\n isEstimate,\n }\n },\n})\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!./InfoStep.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!./InfoStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./InfoStep.vue?vue&type=template&id=126a1d2b&\"\nimport script from \"./InfoStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./InfoStep.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('Step',{attrs:{\"step\":_vm.step,\"title\":\"Access Fee\",\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[_c('h5',{staticClass:\"text-center\"},[_vm._v(\"Upward Access Includes\")]),_c('div',{staticClass:\"fee-grid\"},[_vm._l((_vm.items),function(i,idx){return _c('div',{key:idx,staticClass:\"text-center\"},[_c('div',[_c('i',{class:i.iconClass})]),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(i.title))]),_c('div',{staticClass:\"text-muted small\"},[_vm._v(_vm._s(i.text))])])}),_c('div',{staticClass:\"text-center\"},[_c('img',{staticClass:\"logo\",attrs:{\"src\":\"/img/logo-big.png\"}}),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(\"The Upward Brand\")]),_c('div',{staticClass:\"text-muted small\"},[_vm._v(\" Use the Upward brand that comes with 25+ years of dedication to sports ministry. \")])])],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\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'UpwardAccessStep',\n props: {\n step: { type: Number, required: true },\n },\n components: { Step },\n setup() {\n const logic = productFlowLogic()\n const typeLeagueID = computed(() => logic.leagueAbstraction.value.typeLeagueID)\n const variation = computed(() =>\n typeLeagueID.value === 'LT_VOLLEYBALL' ? 'two different devotion tracks ' : 'Age-appropiate devotions '\n )\n\n const items = [\n {\n title: 'Free Shipping',\n iconClass: 'fas fa-truck fa-lg',\n text: ' Free shipping on all starter, league, add-on, and merchandise orders.',\n },\n {\n title: 'Ministry Resouces',\n iconClass: 'fas fa-bible fa-lg',\n text: `Access to gospel videos and ${variation.value} in the coach playbooks, practices and Upward Sports App`,\n },\n {\n title: 'Advertising Resources',\n iconClass: 'fas fa-bullhorn fa-lg',\n text: 'E-flyers, memes, website images, and layered InDesign files.',\n },\n {\n title: 'Support Center Assistance',\n iconClass: 'fas fa-headset fa-lg',\n text: 'A support center that you can call to receive assistance as the need arises.',\n },\n {\n title: 'Consultation Services',\n iconClass: 'fas fa-hands-helping fa-lg',\n text:\n 'One-on-one consultation services to help you with any challenges you may have and strategically plan for your upcoming programs.',\n },\n {\n title: 'League Management Resources',\n iconClass: 'fas fa-book-open fa-lg',\n text: `League director manual, evaluation resources, coach and ${store.getters.leagueAbstraction.refLabel.toLowerCase()} training resources, parent welcome flyers, and many other forms and surveys you can use within your league.`,\n },\n {\n title: 'Volunteer Role Resources',\n iconClass: 'fas fa-book fa-lg',\n text: `Coach playbooks, practice plans, ${store.getters.leagueAbstraction.refLabel.toLowerCase()} handbooks, game day devotions, prayer ministry resources, and more.`,\n },\n ]\n return { items, variation, ...logic }\n },\n})\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!./UpwardAccessStep.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!./UpwardAccessStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpwardAccessStep.vue?vue&type=template&id=48c9326e&scoped=true&\"\nimport script from \"./UpwardAccessStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpwardAccessStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UpwardAccessStep.vue?vue&type=style&index=0&id=48c9326e&lang=scss&scoped=true&\"\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 \"48c9326e\",\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('Step',{attrs:{\"step\":_vm.step,\"title\":\"Base Fee\",\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[_c('h5',{staticClass:\"text-center\"},[_vm._v(\"Upward Sports Base Fee\")]),_c('i',{staticClass:\"mb-3\"},[_vm._v(\"Upward Sports provides all the organization and time-saving tools you need for a successful sports and ministry program all in one place so that you can spend more time with people. That’s sports ministry! \")]),_c('h6',{staticClass:\"pt-4 pb-4\"},[_vm._v(\"HERE'S WHAT IS INCLUDED:\")]),_c('div',{staticClass:\"fee-grid\"},_vm._l((_vm.bigItems),function(i,idx){return _c('div',{key:idx,staticClass:\"text-center hover-bg-light-2 hover-border\"},[_c('div',[_c('i',{class:i.iconClass})]),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(i.title))]),_c('ul',{staticClass:\"text-left\"},_vm._l((i.bullets),function(b,idx){return _c('li',{key:idx,staticClass:\"text-muted small pb-2\"},[_vm._v(_vm._s(b))])}),0)])}),0),_c('div',{staticClass:\"fee-grid\"},[_vm._l((_vm.items),function(i,idx){return _c('div',{key:idx,staticClass:\"text-center hover-bg-light-2 hover-border\"},[_c('div',[_c('i',{class:i.iconClass})]),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(i.title))]),(i.text)?_c('div',{staticClass:\"text-muted small\"},[_vm._v(_vm._s(i.text))]):_vm._e(),(i.bullets)?_c('ul',{staticClass:\"text-left\"},_vm._l((i.bullets),function(b,idx){return _c('li',{key:idx,staticClass:\"text-muted small pb-2\"},[_vm._v(_vm._s(b))])}),0):_vm._e()])}),_c('div',{staticClass:\"text-center hover-bg-light-2 hover-border\"},[_c('img',{staticClass:\"logo\",attrs:{\"src\":\"/img/logo-big.png\"}}),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(\"The Upward Brand\")]),_c('div',{staticClass:\"text-muted small\"},[_vm._v(\" Use the Upward brand that comes with 25+ years of dedication to sports ministry. \")])])],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\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'UpwardBaseFeeStep',\n props: {\n step: { type: Number, required: true },\n },\n components: { Step },\n setup() {\n const logic = productFlowLogic()\n const typeLeagueID = computed(() => logic.leagueAbstraction.value.typeLeagueID)\n const variation = computed(() =>\n typeLeagueID.value === 'LT_VOLLEYBALL' ? 'two different devotion tracks ' : 'Age-appropiate devotions '\n )\n\n const bigItems = [\n {\n title: 'MyUpward.org League Director Tools',\n iconClass: 'fas fa-user-shield fa-lg',\n bullets: [\n 'Online player registration, including waitlist functionality and capacity limits',\n 'Payment processing & transaction fees are included',\n 'Tools to setup your league and order/exchange products from Upward',\n 'Tools to manage all your participants and volunteers.',\n 'A wealth of league management resources to guide, train, and equip leaders of any level.',\n 'League drafting that includes auto, manual or a combination to build balanced teams. Also included are optional carpool and coach links',\n 'Schedule builder for practices and games through managed facilities',\n 'Communicate through email or text across the league and the ability to schedule send both',\n 'Extensive reporting to help manage your program',\n ],\n },\n {\n title: 'Coach Tools',\n iconClass: 'fas fa-chalkboard-teacher',\n bullets: [\n 'Practice devotions to help coaches in ministry each week that include a devotion Scouting Report to help them grow too.',\n `A convenient Upward Sports app that helps coaches stay on track and includes detailed ${\n logic.isUpwardSelect.value ? '' : 'practice plans, '\n } practice devotions, ${\n logic.isUpwardSelect.value ? '' : 'skills & drills videos, '\n } rosters, game day management & other functionality`,\n 'A stress free Upward Sports substitution system to help coaches balance playing time.',\n 'Email and text communication tools to ensure parents stay informed and connect with coaches',\n ],\n },\n ]\n\n const items = [\n {\n title: 'Ministry Plan & Resources',\n iconClass: 'fas fa-users fa-lg',\n text:\n 'A complete ministry strategy that includes access to Gospel videos and age-appropriate devotions in the coach playbooks, halftime messages to connect with families, a “Scouting Report” to equip coaches for devotions and grow in their faith & the Upward Sports app.',\n },\n {\n title: 'Player Kit Convenience',\n iconClass: 'fas fa-box fa-lg',\n text:\n 'Best in class uniform options with innovative designs. Player and coach items are sorted and individually boxed inside a team box. Hand the box to each coach, and know you look organized and detailed',\n },\n {\n title: 'League Management Resources',\n iconClass: 'fas fa-book-open fa-lg',\n text: `League director manual, Upward Sports player evaluation process, coach & ${store.getters.leagueAbstraction.refLabel.toLowerCase()} training resources, parent welcome flyers, and many other important league documents and procedures`,\n },\n {\n title: 'Advertising Resources',\n iconClass: 'fas fa-bullhorn fa-lg',\n text:\n 'An advertising strategy that includes professionally designed, first-class E-flyers, social media images, website images & layered InDesign Files',\n },\n {\n title: 'Volunteer Role Resources',\n iconClass: 'fas fa-book fa-lg',\n text: `Coach playbooks, practice plans, ${store.getters.leagueAbstraction.refLabel.toLowerCase()} handbooks, game day devotions, prayer ministry resources, and more.`,\n },\n {\n title: 'Parent Tools',\n iconClass: 'fas fa-user-friends fa-lg',\n bullets: [\n 'A quick and easy online registration process where Upward covers all credit card fees',\n 'Team pages that let parents access schedules and alerts from the league.',\n ],\n },\n {\n title: 'Consultation Services',\n iconClass: 'fas fa-hands-helping fa-lg',\n text:\n 'We are with you! One-on-one consultation services to help you with ideas, planning, and strategies for a successful sports ministry',\n },\n {\n title: 'Support Center Assistance',\n iconClass: 'fas fa-headset fa-lg',\n text:\n 'A responsive support center that can answer any question and assist you as needs arise - 864-949-5701',\n },\n {\n title: 'Shipping Included',\n iconClass: 'fas fa-truck fa-lg',\n text: 'Shipping included on all starter, league, add-on & merchandise orders',\n },\n {\n title: 'Custom Branding',\n iconClass: 'fas fa-tshirt fa-lg',\n text: `We can help you customize jerseys to include your church name or sponsors`,\n },\n {\n title: 'Tools For Other Volunteers',\n iconClass: 'fas fa-bible fa-lg',\n bullets: [\n 'Upward Sports app that includes training resources, role-specific resources & applicable communication resources',\n 'A role-specific app that equips & trains your team',\n ],\n },\n ]\n\n return { bigItems, items, variation, ...logic }\n },\n})\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!./UpwardBaseFeeStep.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!./UpwardBaseFeeStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpwardBaseFeeStep.vue?vue&type=template&id=197d32f5&scoped=true&\"\nimport script from \"./UpwardBaseFeeStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpwardBaseFeeStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UpwardBaseFeeStep.vue?vue&type=style&index=0&id=197d32f5&lang=scss&scoped=true&\"\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 \"197d32f5\",\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('Step',{attrs:{\"step\":_vm.step,\"title\":\"Upward Systems\",\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[_c('div',[_c('h5',{staticClass:\"text-center\"},[_vm._v(\"Upward Systems Includes\")]),_c('div',{staticClass:\"fee-grid\"},_vm._l((_vm.items),function(i,idx){return _c('div',{key:idx,staticClass:\"text-center\"},[_c('div',[_c('i',{class:i.iconClass})]),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(i.title))]),_c('ul',{staticClass:\"text-left\"},_vm._l((i.bullets),function(b,idx){return _c('li',{key:idx,staticClass:\"text-muted small pb-2\"},[_vm._v(_vm._s(b))])}),0)])}),0)])])}\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\nimport { defineComponent } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nexport default defineComponent({\n name: 'UpwardSystemsStep',\n props: { step: { type: Number, required: true } },\n components: { Step },\n setup() {\n const logic = productFlowLogic()\n const items = [\n {\n title: 'League Director Tools',\n iconClass: 'fas fa-user-shield fa-lg',\n bullets: [\n 'Tools to setup your league and order/exchange products from Upward',\n 'Tools to manage all your participants and volunteers.',\n 'A wealth of league management resources to guide, train, and equip leaders of any level.',\n 'League management functionality where you can draft teams and build schedules for practices, games, and facilities.',\n 'Communication tools to easily text or email anyone within the entire program.',\n 'Extensive reporting tools to help manage your program.',\n ],\n },\n {\n title: 'Coach Tools',\n iconClass: 'fas fa-chalkboard-teacher',\n bullets: [\n `UpwardSports app that includes coach training resources, ${\n logic.isUpwardSelect.value ? '' : 'practice plans, skills and drills videos, '\n } devotions, rosters, and other Upward specific functionality.`,\n 'A communication system that will allow for text or email exchanges with parents on their teams.',\n ],\n },\n {\n title: 'Tools For Other Volunteers',\n iconClass: 'fas fa-users fa-lg',\n bullets: [\n 'UpwardSports app that includes training resources, role-specific resources, and applicable communication resources.',\n 'A role-specific app that equips and trains volunteers.',\n ],\n },\n {\n title: 'Parent Tools',\n iconClass: 'fas fa-user-friends fa-lg',\n bullets: [\n 'A quick and easy player registration tool where Upward covers all credit card fees.',\n 'Team pages that let parents access schedules and alerts from the league.',\n ],\n },\n ]\n return { items, ...logic }\n },\n})\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!./UpwardSystemsStep.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!./UpwardSystemsStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpwardSystemsStep.vue?vue&type=template&id=402ee050&scoped=true&\"\nimport script from \"./UpwardSystemsStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpwardSystemsStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UpwardSystemsStep.vue?vue&type=style&index=0&id=402ee050&lang=scss&scoped=true&\"\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 \"402ee050\",\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('Step',{attrs:{\"step\":_vm.step,\"title\":\"Starter Order Items\",\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[(_vm.loadingOfferings)?_c('Loading'):[(_vm.isUpwardSelect)?[_c('p',[_vm._v(\"Upward Select programs do not contain startup items. Please continue to the next section.\")])]:[_c('div',[_c('p',[_vm._v(\"You are currently \"),_c('b',[_vm._v(\"working on an estimate and not an order.\")])]),_c('p',[_vm._v(\" To place an order for starter items after your program is created, go to the Startup menu item under the Ordering tab, select the desired print items and quantities, and submit the order. \")])]),_c('StartupOrderPicker',{staticClass:\"grid mb-3\",attrs:{\"products\":_vm.starupProducts}})]]],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._l((_vm.sortedProducts),function(p,i){return _c('startup-order-product-card',{key:i,attrs:{\"product\":p},model:{value:(_vm.chosen[i]),callback:function ($$v) {_vm.$set(_vm.chosen, i, $$v)},expression:\"chosen[i]\"}})}),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('selector-card',{attrs:{\"is-selected\":_vm.quantity > 0},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('enlargeable-product',{attrs:{\"product\":_vm.product}})]},proxy:true},{key:\"bottom\",fn:function(){return [_c('div',{staticClass:\"px-5\"},[_c('number-input',{staticClass:\"quantity-wrapper\",attrs:{\"placeholder\":\"Enter a quantity\",\"show-spin-button\":false},model:{value:(_vm.quantity),callback:function ($$v) {_vm.quantity=$$v},expression:\"quantity\"}})],1)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { StartupOrderProductInfo } from '@/GeneratedTypes/ListInfo/StartupOrderProductInfo'\n\nexport function getEmptyStartupOrderProductInfo(): StartupOrderProductInfo {\n return {\n isActive: true,\n id: 0,\n upwardProductID: '',\n typeProgramID: '',\n typeProductGroupID: '',\n registrationLabel: '',\n cost: 0,\n sortOrder: 0,\n productColorSizes: null,\n cmsProductName: '',\n cmsProductDescription: '',\n cmsProductImageUrls: [] as string[],\n cmsSizingGuideUrl: '',\n cmsUnitDescription: '',\n digitalFormatAvailable: '',\n }\n}\n\nexport function getEmptyStartupOrderProductInfoList(): StartupOrderProductInfo[] {\n return [getEmptyStartupOrderProductInfo()]\n}\n","import { SavedProductOfferingConfigStartupOrderProduct } from '@/GeneratedTypes/SavedProductOfferingConfigStartupOrderProduct'\n\nexport function getEmptySavedProductOfferingConfigStartupOrderProduct(): SavedProductOfferingConfigStartupOrderProduct {\n return {\n productID: 0,\n typeColorID: 'N/A',\n typeSizeID: 'N/A',\n quantity: 0,\n }\n}\n\nexport function getEmptySavedProductOfferingConfigStartupOrderProductList(): SavedProductOfferingConfigStartupOrderProduct[] {\n return [getEmptySavedProductOfferingConfigStartupOrderProduct()]\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport NumberInput from '@/elements/NumberInput.vue'\nimport EnlargeableProduct from './EnlargeableProduct.vue'\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport { StartupOrderProductInfo } from '@/GeneratedTypes/ListInfo/StartupOrderProductInfo'\nimport { getEmptyStartupOrderProductInfo } from '@/lib/support/models/StartupOrderProductInfo'\nimport { SavedProductOfferingConfigStartupOrderProduct } from '@/GeneratedTypes/SavedProductOfferingConfigStartupOrderProduct'\nimport { getEmptySavedProductOfferingConfigStartupOrderProduct } from '@/lib/support/models/SavedProductOfferingConfigStartupOrderProduct/SavedProductOfferingConfigStartupOrderProduct'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'StartupOrderProductCard',\n components: {\n NumberInput,\n EnlargeableProduct,\n SelectorCard,\n },\n props: {\n product: {\n type: Object as PropType,\n default: getEmptyStartupOrderProductInfo,\n required: false,\n },\n value: {\n type: Object as PropType,\n default: null,\n required: false,\n },\n },\n setup(props, ctx) {\n const pocStarterOrderItems = computed(() => store.getters.productOfferings.pocStarterOrderItems)\n const quantity = ref(0)\n\n onMounted(() => {\n setSaved()\n })\n\n watch(\n () => pocStarterOrderItems.value,\n () => {\n setSaved()\n }\n )\n\n function setSaved() {\n if (!pocStarterOrderItems.value) return\n const savedProduct = pocStarterOrderItems.value.find(\n (x: SavedProductOfferingConfigStartupOrderProduct) => x.productID === props.product.id\n )\n quantity.value = savedProduct ? savedProduct.quantity : null\n }\n\n function buildStartupOrderProduct(): SavedProductOfferingConfigStartupOrderProduct | null {\n if (!quantity.value || quantity.value < 1) return null\n const prod = getEmptySavedProductOfferingConfigStartupOrderProduct()\n prod.productID = props.product.id\n prod.quantity = quantity.value\n return prod\n }\n\n watch(\n () => quantity.value,\n () => {\n ctx.emit('input', buildStartupOrderProduct())\n }\n )\n\n return {\n quantity,\n }\n },\n})\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!./StartupOrderProductCard.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!./StartupOrderProductCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StartupOrderProductCard.vue?vue&type=template&id=40bdfb5a&scoped=true&\"\nimport script from \"./StartupOrderProductCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./StartupOrderProductCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StartupOrderProductCard.vue?vue&type=style&index=0&id=40bdfb5a&lang=scss&scoped=true&\"\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 \"40bdfb5a\",\n null\n \n)\n\nexport default component.exports","interface minInterface {\n sortOrder: number\n}\nexport function sortOffering(arr: T[]) {\n return arr.sort((a: T, b: T) => a.sortOrder - b.sortOrder)\n}\n","\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType, nextTick } from '@vue/composition-api'\nimport StartupOrderProductCard from './StartupOrderProductCard.vue'\nimport { getEmptyStartupOrderProductInfoList } from '@/lib/support/models/StartupOrderProductInfo'\nimport { sortOffering } from '@/services/offeringService'\nimport { StartupOrderProductInfo } from '@/GeneratedTypes/ListInfo/StartupOrderProductInfo'\nimport { SavedProductOfferingConfigStartupOrderProduct } from '@/GeneratedTypes/SavedProductOfferingConfigStartupOrderProduct'\nimport { cloneDeep } from 'lodash'\nimport store from '@/store'\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nexport default defineComponent({\n name: 'StartupOrderPicker',\n components: {\n StartupOrderProductCard,\n },\n props: {\n products: {\n type: Array as PropType,\n default: getEmptyStartupOrderProductInfoList,\n required: false,\n },\n values: {\n type: Array as PropType,\n default: getEmptyStartupOrderProductInfoList,\n required: false,\n },\n },\n setup(props) {\n const chosen = ref([])\n const logic = productFlowLogic()\n\n onMounted(() => {\n nextTick(() => watch(chosen.value, chosenChanged, { immediate: true }))\n })\n\n const sortedProducts = computed(() => sortOffering(localClone.value))\n\n const localClone = computed(() => cloneDeep(props.products))\n\n function buildProductArray(): SavedProductOfferingConfigStartupOrderProduct[] {\n const products = chosen.value.filter((x: SavedProductOfferingConfigStartupOrderProduct) => x !== null)\n return products ?? ([] as SavedProductOfferingConfigStartupOrderProduct[])\n }\n\n function chosenChanged() {\n store.commit.productOfferings.setDetailsStartupOrders({ details: buildProductArray() })\n logic.markAsDirty()\n }\n\n return {\n sortedProducts,\n chosen,\n }\n },\n})\n","export enum TypeProductOfferingProductPackage {\n BASIC = 'BASIC',\n STANDARD = 'STANDARD',\n PREMIUM = 'PREMIUM',\n CUSTOM = 'CUSTOM',\n}\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!./StartupOrderPicker.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!./StartupOrderPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StartupOrderPicker.vue?vue&type=template&id=39c9dc7e&\"\nimport script from \"./StartupOrderPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./StartupOrderPicker.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport StartupOrderPicker from '@/components/ProductFlow/ParticipantKitStepper/ProductPickers/StartupOrderPicker.vue'\nimport Step from '@/components/ProductFlow/Step.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport store from '@/store'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nexport default defineComponent({\n name: 'StarterOrderItemStep',\n props: { step: { type: Number, required: true } },\n components: { Step, StartupOrderPicker, Loading },\n setup() {\n const logic = productFlowLogic()\n\n const loadingOfferings = computed(() => store.getters.productFlow.productOfferingLoading)\n const starupProducts = computed(() => store.getters.productOfferings.availableStartupProducts)\n\n return { starupProducts, loadingOfferings, ...logic }\n },\n})\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!./StarterItemsStep.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!./StarterItemsStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StarterItemsStep.vue?vue&type=template&id=74233d38&scoped=true&\"\nimport script from \"./StarterItemsStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./StarterItemsStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StarterItemsStep.vue?vue&type=style&index=0&id=74233d38&lang=scss&scoped=true&\"\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 \"74233d38\",\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('Step',{attrs:{\"step\":_vm.step,\"title\":_vm.stepTitle,\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":_vm.nextStepClicked,\"clicked\":_vm.stepClicked}},[(_vm.offeringsByProgram.length)?_c('ParticipantKitStepper',{staticStyle:{\"margin-bottom\":\"30px\"},attrs:{\"is-cheer\":_vm.isCheer}}):_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('div',[_c('Packages',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showPackages),expression:\"showPackages\"}],staticClass:\"mb-3\",on:{\"click\":_vm.packageClick}}),_c('Stepper',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showStepper),expression:\"showStepper\"}],staticClass:\"bg-light\",attrs:{\"vertical\":\"\"},model:{value:(_vm.currentStep),callback:function ($$v) {_vm.currentStep=$$v},expression:\"currentStep\"}},[_c('ProductOfferingStep',{attrs:{\"step\":1,\"is-sport\":!_vm.isCheer,\"selected-package\":_vm.selectedPackageForOfferings},on:{\"change\":_vm.productOfferingChanged}}),(_vm.displayableCategories)?_vm._l((_vm.displayableCategories),function(c,i){return _c('ProductStep',{key:((_vm.adjustIndex(i)) + \"-long-desc\"),attrs:{\"step\":_vm.adjustIndex(i),\"category\":c,\"is-sport\":!_vm.isCheer,\"selected-package\":_vm.selectedPackageForChildProducts,\"productOfferingId\":_vm.selectedProductOfferingId,\"isByAge\":_vm.isByAge}})}):_vm._e()],2)],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('Step',{attrs:{\"step\":_vm.step,\"title\":_vm.stepLabel,\"maxTouchedStep\":_vm.maxTouchedStep},on:{\"nextStep\":function($event){return _vm.nextStep(_vm.isSport, _vm.step)},\"clicked\":function($event){return _vm.kitStepClicked(_vm.isSport, _vm.step)}}},[(_vm.validProductOfferings.length)?_c('ProductGroupPicker',{staticClass:\"grid mb-3\",attrs:{\"selectable\":true,\"product-offerings\":_vm.validProductOfferings,\"first-product-offering-id\":_vm.savedProductOffering,\"package\":_vm.selectedPackage},on:{\"input\":_vm.setSelectedProductGroup}}):_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-item-group',{attrs:{\"mandatory\":true,\"multiple\":false},model:{value:(_vm.valueLocal),callback:function ($$v) {_vm.valueLocal=$$v},expression:\"valueLocal\"}},_vm._l((_vm.sortedProductOfferings),function(product,index){return _c('v-item',{key:index,scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar active = ref.active;\nvar toggle = ref.toggle;\nreturn [_c('selector-card',{attrs:{\"is-selected\":active,\"selectable\":_vm.selectable},on:{\"select\":toggle},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('enlargeable-product',{attrs:{\"product\":product}})]},proxy:true},{key:\"innerButton\",fn:function(){return [_vm._t(\"buttonLabel\",[_vm._v(\"Select\")]),(active)?[_vm._v(\"ed\")]:_vm._e()]},proxy:true}],null,true)})]}}],null,true)})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport EnlargeableProduct from './EnlargeableProduct.vue'\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\nimport { getEmptyProductOfferingInfo } from '@/lib/support/models/ProductOfferingInfo/ProductOfferingInfo'\nimport { sortOffering } from '@/services/offeringService'\nimport { TypeProductOfferingProductPackage } from '@/lib/support/models/UpwardTypes/TypeProductOfferingProductPackageID'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ProductGroupPicker',\n components: {\n EnlargeableProduct,\n SelectorCard,\n },\n props: {\n productOfferings: {\n type: Array as PropType,\n default: getEmptyProductOfferingInfo,\n required: false,\n },\n selectable: { type: Boolean, required: true },\n firstProductOfferingId: { type: Number, required: true },\n package: { type: String, required: false, default: '' },\n },\n setup(props, ctx) {\n const valueLocal = ref(null)\n\n onMounted(() => {\n store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //get these cached up\n valueLocal.value = findId()\n })\n\n const defaultProductOfferingIndex = computed(() => {\n let index = props.productOfferings.findIndex((x: ProductOfferingInfo) => x.cost === 0)\n return index !== -1 ? index : 0\n })\n\n function findIndexByProductId(productOfferingId: number) {\n const index = props.productOfferings.findIndex((x: ProductOfferingInfo) => x.id === productOfferingId)\n return index !== -1 ? index : 0\n }\n\n function findId() {\n return props.firstProductOfferingId\n ? findIndexByProductId(props.firstProductOfferingId)\n : defaultProductOfferingIndex.value\n }\n\n const sortedProductOfferings = computed(() => sortOffering(props.productOfferings))\n\n watch(\n () => props.package,\n () => {\n if (!props.package) return\n\n let offeringIdx: number | null = null\n if (props.package == TypeProductOfferingProductPackage.CUSTOM) {\n offeringIdx = defaultProductOfferingIndex.value\n } else {\n const firstMatchingProduct = sortedProductOfferings.value.find((p) =>\n p.productPackages?.some((x) => x.typeProductOfferingProductPackageID == props.package)\n )\n if (firstMatchingProduct) {\n offeringIdx = findIndexByProductId(firstMatchingProduct?.id)\n }\n }\n\n if (offeringIdx == valueLocal.value) {\n //package change did not change offering\n if (valueLocal.value != null) {\n const sel = JSON.parse(JSON.stringify(sortedProductOfferings.value[valueLocal.value]))\n ctx.emit('input', { action: 'PackageChangeOnly', package: props.package, offering: sel })\n }\n } else {\n valueLocal.value = offeringIdx\n }\n }\n )\n\n watch(\n () => props.firstProductOfferingId,\n () => {\n valueLocal.value = findId()\n }\n )\n\n watch(\n () => valueLocal.value,\n () => {\n if (valueLocal.value !== null && sortedProductOfferings.value) {\n const sel = JSON.parse(JSON.stringify(sortedProductOfferings.value[valueLocal.value]))\n ctx.emit('input', { action: 'OfferingChanged', package: props.package, offering: sel })\n }\n }\n )\n\n return {\n valueLocal,\n sortedProductOfferings,\n }\n },\n})\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!./ProductGroupPicker.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!./ProductGroupPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductGroupPicker.vue?vue&type=template&id=4a0c3e93&\"\nimport script from \"./ProductGroupPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductGroupPicker.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 { VItem } from 'vuetify/lib/components/VItemGroup';\nimport { VItemGroup } from 'vuetify/lib/components/VItemGroup';\ninstallComponents(component, {VItem,VItemGroup})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\nimport Step from '@/components/ProductFlow/Step.vue'\nimport ProductGroupPicker from './ProductPickers/ProductGroupPicker.vue'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ProductOfferingStep',\n props: {\n step: { type: Number, required: true },\n isSport: { type: Boolean, required: true },\n selectedPackage: { type: String, required: false, default: '' },\n },\n\n components: { Step, ProductGroupPicker },\n setup(props, { emit }) {\n const logic = productFlowLogic()\n\n const maxTouchedStep = computed(() =>\n props.isSport ? logic.kit1MaxTouchedStep.value : logic.kit2MaxTouchedStep.value\n )\n\n /*\n * For saved configs, find the productoffering the user saved\n */\n\n const savedProductOffering = computed((): number => {\n // If there is a config that is aleady saved, retrieve the\n // product offering id that had been originally selected by finding the\n // first id that is in the productOffering array.\n // This is needed because there can be sports and cheer offering ids present.\n const details = store.getters.productOfferings.productOfferingConfig.details\n if (!details || details.length === 0) return 0\n const uniqueProductOfferingConfigIds = [...new Set(details.map((d) => d.productOfferingID))]\n const firstMatch = uniqueProductOfferingConfigIds.find((id: number) => {\n return productOfferings.value.some((p: ProductOfferingInfo) => p.id === id)\n })\n\n return firstMatch ?? 0\n })\n\n /*\n * Calculate the list of valid productOffings for this kit (aka sport or cheer)\n */\n\n const productOfferings = computed(() => {\n const o = cloneDeep(store.getters.productOfferings.offeringsByProgram)\n const offeringForThisProgram = o.find((p) => p.isCheer == !props.isSport)\n if (offeringForThisProgram) {\n return offeringForThisProgram.offerings\n } else {\n return [] as ProductOfferingInfo[]\n }\n })\n\n const validProductOfferings = computed(() => {\n return productOfferings.value.filter((p) => p.id == savedProductOffering.value || p.active)\n })\n\n /*\n * Tracking and committing selected product offering\n */\n const selectedOffering = ref(null)\n\n async function setSelectedProductGroup(result: {\n action: string\n package: string\n offering: ProductOfferingInfo\n }) {\n if (result.action == 'PackageChangeOnly') {\n //remove product details of old offering\n store.commit.productOfferings.removeFromSelectedProductDetailByOfferingId({\n selectedOffering: result.offering,\n })\n emit('change', result)\n } else if (result.action == 'OfferingChanged') {\n //remove product details of old offering\n store.commit.productOfferings.removeFromSelectedProductDetailByOfferingId({\n selectedOffering: result.offering,\n })\n\n // commit offering\n selectedOffering.value = cloneDeep(result.offering)\n store.commit.productOfferings.setSelectedProductOfferings({\n selectedOffering: cloneDeep(result.offering) as ProductOfferingInfo,\n })\n\n //fetch child products\n await fetchChildProducts()\n\n //set isDirty\n logic.markAsDirty()\n\n //emit\n emit('change', result)\n }\n }\n\n const stepLabel = computed(() => {\n return selectedOffering.value?.typeProgramID?.includes('CAMP') ? 'Camp Kit' : 'Uniform'\n })\n\n /*\n * Get child products of the selected productOffering\n */\n async function fetchChildProducts() {\n if (selectedOffering.value) {\n const selectedId = selectedOffering.value.id\n await fetchKitProducts(selectedId)\n }\n }\n\n async function fetchKitProducts(productOfferingId: number) {\n await store.dispatch.productOfferings.fetchChildOfferings({\n id: productOfferingId,\n })\n }\n\n return {\n ...logic,\n validProductOfferings,\n savedProductOffering,\n setSelectedProductGroup,\n stepLabel,\n maxTouchedStep,\n }\n },\n})\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!./ProductOfferingStep.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!./ProductOfferingStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductOfferingStep.vue?vue&type=template&id=25846ca6&scoped=true&\"\nimport script from \"./ProductOfferingStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductOfferingStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProductOfferingStep.vue?vue&type=style&index=0&id=25846ca6&lang=scss&scoped=true&\"\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 \"25846ca6\",\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('Step',{attrs:{\"step\":_vm.step,\"title\":_vm.category.description,\"maxTouchedStep\":_vm.maxTouchedStep},on:{\"nextStep\":function($event){return _vm.nextStep(_vm.isSport, _vm.step)},\"clicked\":function($event){return _vm.kitStepClicked(_vm.isSport, _vm.step)}}},[(_vm.useTestData)?_c('span',{staticClass:\"text-success small\"},[_vm._v(\"CategoryID: \"+_vm._s(_vm.category.categoryID)+\" SortOrder:\"+_vm._s(_vm.category.sortOrder))]):_vm._e(),(_vm.componentName(_vm.category.typeProductOfferingOptionID) != 'HybridProductPicker')?_c(_vm.componentName(_vm.category.typeProductOfferingOptionID),{tag:\"component\",staticClass:\"grid mb-3\",class:{ 'single-product': _vm.isSingleProduct },attrs:{\"products\":_vm.category.products,\"category\":_vm.category.categoryID,\"productOfferingId\":_vm.productOfferingId,\"required\":_vm.isRequired,\"selectMultiple\":_vm.isSelectMultiple,\"package\":_vm.selectedPackage,\"type\":_vm.type,\"selectable\":true,\"isByAge\":_vm.isByAge}}):_vm._l((_vm.category.groups),function(group,index){return _c('ProductPicker',{key:index,class:(\"grid mb-3 bg-light-\" + (index + 1) + \" \" + (_vm.groupIsSingleProduct(group.groupID) ? 'single-product' : '')),attrs:{\"item\":group,\"index\":index,\"products\":_vm.groupProducts(group.groupID),\"category\":_vm.category.categoryID,\"productOfferingId\":_vm.productOfferingId,\"required\":_vm.groupIsRequired(group.typeProductOfferingOptionID),\"selectMultiple\":_vm.groupIsSelectMultiple(group.typeProductOfferingOptionID),\"package\":_vm.selectedPackage,\"selectable\":true,\"groupID\":group.groupID}})})],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-item-group',{attrs:{\"mandatory\":_vm.required,\"multiple\":_vm.selectMultiple},model:{value:(_vm.valueLocal),callback:function ($$v) {_vm.valueLocal=$$v},expression:\"valueLocal\"}},_vm._l((_vm.sortedProducts),function(product,index){return _c('v-item',{key:index,scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar active = ref.active;\nvar toggle = ref.toggle;\nreturn [_c('selector-card',{attrs:{\"is-selected\":active,\"selectable\":_vm.selectable},on:{\"select\":function($event){return _vm.manageButtonAction(product, index, toggle)}},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('enlargeable-product',{attrs:{\"product\":product}})]},proxy:true},(product.colors.length > 0 && _vm.selectable)?{key:\"bottom\",fn:function(){return [_c('div',{staticClass:\"mx-5 pt-3\"},[(_vm.showColorMessage[index])?_c('p',{staticClass:\"m-0 p-0 text-danger text-center\"},[_vm._v(\" Select or deselect a color \")]):_vm._e(),_c('select-input',{staticClass:\"mb-0\",attrs:{\"value\":_vm.getProductSelectedColor(product.productID),\"show-blank-item\":true,\"blank-item-value\":null,\"blank-item-text\":\"- Select a Color -\",\"text-property-name\":\"description\",\"value-property-name\":\"typeColorID\",\"items-list\":_vm.getColorDropDown(product.colors)},on:{\"input\":function (val) { return _vm.controlColorCard(val, product.productID, index); }}})],1)]},proxy:true}:null,{key:\"innerButton\",fn:function(){return [_vm._t(\"buttonLabel\",[_vm._v(\"Select\")]),(active)?[_vm._v(\"ed\")]:_vm._e()]},proxy:true}],null,true)})]}}],null,true)})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { ProductOfferingProductInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\n\nexport function getEmptyProductOfferingProductInfo(): ProductOfferingProductInfo {\n return {\n productID: 0,\n sortOrder: 0,\n selectByDefault: false,\n active: true,\n colors: null,\n productCost: 0,\n upwardProductID: '',\n cmsProductName: '',\n cmsProductDescription: '',\n cmsProductImageUrls: [],\n cmsUnitDescription: '',\n productPackages: [],\n digitalFormatAvailable: null,\n productCostOffsetLabels: [],\n groupID: 0,\n }\n}\n\nexport function getEmptyProductOfferingProductInfoList(): ProductOfferingProductInfo[] {\n return [getEmptyProductOfferingProductInfo()]\n}\n","import { colorTypes } from '@/store/colorTypes'\n\nexport function getColorDescription(color: string | null) {\n let retval = '???'\n const upwardColor = colorTypes.state.items.find((x) => x.upwardTypeID === color)\n if (upwardColor) {\n retval = upwardColor.description!\n }\n\n return retval\n}\n\nexport function getColorDropDownItems(colors: { typeColorID: string | null }[]) {\n return colors.map((x) => ({ typeColorID: x.typeColorID, description: getColorDescription(x.typeColorID) }))\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport Vue from 'vue'\nimport EnlargeableProduct from './EnlargeableProduct.vue'\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { ProductOfferingProductInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\nimport { ProductOfferingProductColorInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductColorInfo'\nimport { getEmptyProductOfferingProductInfoList } from '@/lib/support/models/ProductOfferingProductInfo/ProductOfferingProductInfo'\nimport { getEmptySavedProductOfferingConfigDetail } from '@/lib/support/models/SavedProductOfferingConfigDetail/SavedProductOfferingConfigDetail'\nimport { TypeProductOption } from '@/lib/support/models/UpwardTypes/TypeProductOption'\nimport { getSelectedIndexes } from '@/lib/common/ProductOfferingConfig'\nimport { sortOffering } from '@/services/offeringService'\nimport { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail'\nimport { TypeProductOfferingProductPackage } from '@/lib/support/models/UpwardTypes/TypeProductOfferingProductPackageID'\nimport store from '@/store'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport { getColorDropDownItems } from '@/lib/common/upwardColorTypes'\n\ninterface SelectedProductColor {\n productID: number\n selectedColor: string | null\n}\n\nexport default defineComponent({\n name: 'ProductPicker',\n components: {\n EnlargeableProduct,\n SelectorCard,\n SelectInput,\n },\n props: {\n products: {\n type: Array as PropType,\n default: getEmptyProductOfferingProductInfoList,\n required: false,\n },\n selectMultiple: { type: Boolean, default: true, required: false },\n required: { type: Boolean, default: true, required: false },\n category: { type: Number, default: 0, required: false },\n selectable: { type: Boolean, required: true },\n package: { type: String, required: false, default: '' },\n productOfferingId: { type: Number, required: true },\n groupID: { type: Number, default: 0, required: false },\n },\n setup(props) {\n const productOfferingConfig = computed(() => store.getters.productOfferings.productOfferingConfig)\n const valueLocal = ref(props.selectMultiple ? [] : null)\n const selectedColors = ref([])\n const showColorMessage = ref([])\n\n const logic = productFlowLogic()\n\n onMounted(async () => {\n await store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //get these cached up\n valueLocal.value = getLocal()\n selectedColors.value = getSelectedColorsArray(productOfferingConfig.value.details, sortedProducts.value)\n setPackage()\n })\n\n function getLocal() {\n const indexes = getSelectedIndexes(\n productOfferingConfig.value.details,\n sortedProducts.value,\n props.category\n )\n if (props.selectMultiple) {\n return indexes ?? []\n } else {\n if (Array.isArray(indexes)) {\n return indexes[0]\n } else {\n return indexes\n }\n }\n }\n\n function setPackage() {\n if (!props.package) return\n resetSelection()\n\n if (props.package == TypeProductOfferingProductPackage.CUSTOM) return\n\n if (props.selectMultiple) {\n selectAllInPackage()\n } else {\n selectFirstInPackage()\n }\n }\n\n function selectAllInPackage() {\n sortedProducts.value.forEach((p, i) => {\n const poppInfo = p.productPackages?.find(\n (x) => x.typeProductOfferingProductPackageID == props.package\n )\n if (poppInfo) {\n if (Array.isArray(valueLocal.value)) {\n valueLocal.value.push(i)\n } else {\n valueLocal.value = i\n }\n if (p.colors && p.colors.length > 0) {\n const psc = selectedColors.value.find((x) => x.productID == p.productID)\n if (psc) {\n psc.selectedColor =\n poppInfo.typeColorID ??\n p.colors?.sort((a, b) => (a.sortOrder > b.sortOrder ? 1 : -1))[0].typeColorID ??\n ''\n }\n }\n }\n })\n }\n\n function selectFirstInPackage() {\n const matchIdx = sortedProducts.value.findIndex((p) =>\n p.productPackages?.some((x) => x.typeProductOfferingProductPackageID == props.package)\n )\n if (matchIdx > -1) {\n valueLocal.value = matchIdx\n }\n }\n\n function manageButtonAction(p: ProductOfferingProductInfo, index: number, toggle: () => void) {\n if (p.colors && p.colors.length === 0) {\n Vue.set(showColorMessage.value, index, false)\n toggle()\n } else {\n Vue.set(showColorMessage.value, index, true)\n }\n }\n\n function getProductSelectedColor(id: number) {\n let retval: string | null = null\n const psc = selectedColors.value.find((x) => x.productID == id)\n if (psc != null) {\n retval = psc.selectedColor\n }\n return retval\n }\n\n function controlColorCard(color: string, productId: number, productIndex: number) {\n if (!color) {\n deselectButtonOnColorCard(productIndex)\n } else {\n selectButtonOnColorCard(color, productId, productIndex)\n }\n Vue.set(showColorMessage.value, productIndex, false)\n }\n\n function selectButtonOnColorCard(color: string, productId: number, productIndex: number) {\n const psc = selectedColors.value.find((x) => x.productID == productId)\n if (psc) {\n psc.selectedColor = color\n }\n if (Array.isArray(valueLocal.value)) {\n valueLocal.value.push(productIndex)\n valueLocal.value = [...new Set(valueLocal.value)]\n } else {\n valueLocal.value = productIndex\n }\n }\n\n function deselectButtonOnColorCard(productIndex: number) {\n if (Array.isArray(valueLocal.value)) {\n const idx = valueLocal.value.findIndex((v: number) => v === productIndex)\n valueLocal.value.splice(idx, 1)\n } else {\n valueLocal.value = null\n }\n }\n\n const sortedProducts = computed(() => sortOffering(props.products))\n\n function getColorDropDown(colors: ProductOfferingProductColorInfo[]) {\n return getColorDropDownItems(colors)\n }\n\n function getSelectedColorsArray(\n details: SavedProductOfferingConfigDetail[] | null,\n products: ProductOfferingProductInfo[]\n ) {\n const colors: SelectedProductColor[] = []\n if (!details) return colors\n\n products.forEach((p: ProductOfferingProductInfo) => {\n if (!p.colors || p.colors.length < 1) return // this prod has no colors\n\n const detail = details.find((i: SavedProductOfferingConfigDetail) => i.productID === p.productID)\n\n colors.push({ productID: p.productID, selectedColor: detail ? detail.typeColorID : null })\n })\n\n return colors\n }\n\n function convertToSaveFormat(product: ProductOfferingProductInfo) {\n if (!product) return\n const detail = getEmptySavedProductOfferingConfigDetail()\n detail.productID = product.productID\n detail.categoryID = props.category\n detail.typeProductOptionID = TypeProductOption.INCLUDED\n detail.productOfferingID = props.productOfferingId\n detail.typeColorID = 'N/A'\n if (product.colors && product.colors.length > 0) {\n const psc = selectedColors.value.find((x) => x.productID == product.productID)\n const color = psc?.selectedColor\n detail.typeColorID = color ? color : ''\n }\n return detail\n }\n\n function commitSavedProductDetails() {\n if (Array.isArray(valueLocal.value)) {\n // selectMultiple is true, so an array is returned from v-item-group\n arrayCommit()\n } else {\n // selectMultiple is false, so a single number is returned from v-item-group\n soloCommit()\n }\n\n logic.markAsDirty()\n }\n\n function arrayCommit() {\n const local = valueLocal.value as number[]\n\n const details = local.map((i: number) => {\n if (local !== null && sortedProducts.value) {\n return convertToSaveFormat(sortedProducts.value[i])\n }\n })\n\n if (details.length) {\n const productDetails = JSON.parse(JSON.stringify(details))\n setChangedProductDetails(productDetails)\n } else {\n // delete category for this productOfferingId\n const sel = getEmptySavedProductOfferingConfigDetail()\n sel.categoryID = props.category\n sel.productOfferingID = props.productOfferingId\n setChangedProductDetails([sel])\n }\n }\n\n function soloCommit() {\n const local = valueLocal.value as number\n let sel!: SavedProductOfferingConfigDetail | undefined\n\n if (sortedProducts.value) {\n sel = convertToSaveFormat(sortedProducts.value[local])\n }\n\n if (!sel) {\n // delete category for this productOfferingId\n sel = getEmptySavedProductOfferingConfigDetail()\n sel.categoryID = props.category\n sel.productOfferingID = props.productOfferingId\n }\n\n setChangedProductDetails([sel])\n }\n\n function setChangedProductDetails(details: SavedProductOfferingConfigDetail[]) {\n if (props.groupID && props.groupID > 0) {\n store.commit.productOfferings.setSelectedProductDetailsByGroup({\n productDetails: { groupID: props.groupID, details: details },\n })\n } else {\n store.commit.productOfferings.setSelectedProductDetails({ productDetails: details })\n }\n }\n\n function resetSelection() {\n if (Array.isArray(valueLocal.value)) {\n valueLocal.value = props.required ? [0] : []\n } else {\n valueLocal.value = props.required ? 0 : null\n }\n selectedColors.value = getSelectedColorsArray(productOfferingConfig.value.details, sortedProducts.value)\n }\n\n watch(\n () => selectedColors.value,\n () => {\n commitSavedProductDetails()\n },\n { deep: true }\n )\n\n watch(\n () => valueLocal.value,\n () => {\n commitSavedProductDetails()\n },\n { deep: true }\n )\n\n watch(\n () => props.package,\n () => {\n resetSelection()\n setPackage()\n }\n )\n\n function setSelected() {\n const indexes = getSelectedIndexes(\n productOfferingConfig.value.details,\n sortedProducts.value,\n props.category\n )\n valueLocal.value = props.selectMultiple ? indexes : indexes[0]\n }\n\n watch(\n () => productOfferingConfig.value.details,\n () => {\n setSelected()\n }\n )\n\n return {\n valueLocal,\n sortedProducts,\n manageButtonAction,\n showColorMessage,\n selectedColors,\n getProductSelectedColor,\n controlColorCard,\n getColorDropDown,\n }\n },\n})\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!./ProductPicker.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!./ProductPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductPicker.vue?vue&type=template&id=716abc14&\"\nimport script from \"./ProductPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductPicker.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 { VItem } from 'vuetify/lib/components/VItemGroup';\nimport { VItemGroup } from 'vuetify/lib/components/VItemGroup';\ninstallComponents(component, {VItem,VItemGroup})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._l((_vm.sortedProducts),function(p,i){return _c('optional-product-card',{key:i,attrs:{\"category\":_vm.category,\"product\":p,\"selectable\":_vm.selectable,\"package\":_vm.package},model:{value:(_vm.chosen[i]),callback:function ($$v) {_vm.$set(_vm.chosen, i, $$v)},expression:\"chosen[i]\"}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export enum ProductOfferingTypes {\n CHEER,\n SPORT,\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('selector-card',{attrs:{\"is-selected\":_vm.isCardSelected,\"selectable\":_vm.selectable},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('enlargeable-product',{attrs:{\"product\":_vm.product}})]},proxy:true},{key:\"bottom\",fn:function(){return [_c('div',{staticClass:\"mx-5 pt-3\"},[(_vm.internal)?_c('select-input',{attrs:{\"show-blank-item\":true,\"blank-item-value\":null,\"blank-item-text\":\"- Make a selection -\",\"text-property-name\":\"label\",\"value-property-name\":\"id\",\"items-list\":_vm.options,\"enabled\":_vm.selectable},model:{value:(_vm.internal.selection),callback:function ($$v) {_vm.$set(_vm.internal, \"selection\", $$v)},expression:\"internal.selection\"}}):_vm._e(),(_vm.internal && _vm.internal.selection == 'OPTIONAL')?_c('currency-input',{attrs:{\"label\":\"Price to Parents\",\"enabled\":_vm.selectable},model:{value:(_vm.internal.price),callback:function ($$v) {_vm.$set(_vm.internal, \"price\", $$v)},expression:\"internal.price\"}}):_vm._e()],1)]},proxy:true},{key:\"innerButton\",fn:function(){return [_vm._t(\"buttonLabel\",[_vm._v(\"Select\")]),(_vm.isCardSelected)?[_vm._v(\"ed\")]:_vm._e()]},proxy:true}],null,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\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\n\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport EnlargeableProduct from './EnlargeableProduct.vue'\nimport { ProductOfferingProductInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\nimport { getEmptyProductOfferingProductInfo } from '@/lib/support/models/ProductOfferingProductInfo/ProductOfferingProductInfo'\nimport { TypeProductOption } from '@/lib/support/models/UpwardTypes/TypeProductOption'\n\nimport { getProductOptionID, getProductPrice } from '@/lib/common/ProductOfferingConfig'\nimport { OptionalProductSelection } from './model/OptionProductSelection'\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport { TypeProductOfferingProductPackage } from '@/lib/support/models/UpwardTypes/TypeProductOfferingProductPackageID'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'OptionalProductCard',\n components: {\n SelectorCard,\n SelectInput,\n EnlargeableProduct,\n CurrencyInput,\n },\n props: {\n product: {\n type: Object as PropType,\n default: getEmptyProductOfferingProductInfo,\n required: false,\n },\n value: { type: Object as PropType, default: null, required: false },\n category: { type: Number, default: 0, required: false },\n selectable: { type: Boolean, required: true },\n package: { type: String, required: false, default: '' },\n },\n setup(props, ctx) {\n const productOfferingConfig = computed(() => store.getters.productOfferings.productOfferingConfig)\n const internal = ref(null)\n\n onMounted(async () => {\n await store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //get these cached up\n const productOptionID = getProductOptionID(\n productOfferingConfig.value.details,\n props.product.productID,\n props.category\n )\n\n const productPrice = getProductPrice(\n productOfferingConfig.value.details,\n props.product.productID,\n props.category\n )\n\n internal.value = {\n selection: productOptionID ? productOptionID : props.value,\n price: productPrice ?? props.product.productCost ?? 0,\n } as OptionalProductSelection\n\n setPackage()\n })\n\n const options = [\n { id: TypeProductOption.INCLUDED, label: 'Include For All Participants' },\n { id: TypeProductOption.NOTAVAILABLE, label: 'Do Not Offer' },\n { id: TypeProductOption.OPTIONAL, label: 'Optional To Parents' },\n ]\n\n const isCardSelected = computed(\n () => internal.value?.selection === options[0].id || internal.value?.selection === options[2].id\n )\n\n watch(\n () => props.package,\n () => {\n setPackage()\n }\n )\n\n function setPackage() {\n if (!props.package || !internal.value) return\n\n internal.value.selection = options[1].id //reset\n\n if (props.package == TypeProductOfferingProductPackage.CUSTOM) return\n\n if (\n props.product.productPackages?.some((x) => x.typeProductOfferingProductPackageID == props.package)\n ) {\n const prodPackage = props.product.productPackages?.find(\n (x) => x.typeProductOfferingProductPackageID == props.package\n )\n if (prodPackage && prodPackage.typeProductOptionID != TypeProductOption.NOTSET) {\n internal.value.selection = prodPackage.typeProductOptionID ?? options[0].id\n } else {\n internal.value.selection = options[0].id\n }\n }\n }\n\n watch(\n () => internal.value,\n () => {\n ctx.emit('input', internal.value)\n }\n )\n\n return {\n isCardSelected,\n internal,\n options,\n }\n },\n})\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!./OptionalProductCard.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!./OptionalProductCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OptionalProductCard.vue?vue&type=template&id=5e88c3e4&\"\nimport script from \"./OptionalProductCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./OptionalProductCard.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\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\n\nimport OptionalProductCard from './OptionalProductCard.vue'\nimport { TypeProductOption } from '@/lib/support/models/UpwardTypes/TypeProductOption'\nimport { ProductOfferingProductInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\nimport { getEmptyProductOfferingProductInfoList } from '@/lib/support/models/ProductOfferingProductInfo/ProductOfferingProductInfo'\nimport { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail.ts'\nimport { getEmptySavedProductOfferingConfigDetail } from '@/lib/support/models/SavedProductOfferingConfigDetail/SavedProductOfferingConfigDetail'\nimport { sortOffering } from '@/services/offeringService'\nimport { OptionalProductSelection } from './model/OptionProductSelection'\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'OptionalProductPicker',\n components: {\n OptionalProductCard,\n },\n props: {\n products: {\n type: Array as PropType,\n default: getEmptyProductOfferingProductInfoList,\n required: false,\n },\n values: {\n type: Array as PropType,\n default: getEmptyProductOfferingProductInfoList,\n required: false,\n },\n category: { type: Number, default: 0, required: false },\n selectable: { type: Boolean, required: true },\n package: { type: String, required: false, default: '' },\n productOfferingId: { type: Number, required: true },\n },\n setup(props) {\n const chosen = ref([])\n const logic = productFlowLogic()\n\n const sortedProducts = computed(() => sortOffering(props.products))\n\n function buildConfigDetailArray() {\n const configDetails: SavedProductOfferingConfigDetail[] = []\n\n chosen.value.forEach((option: OptionalProductSelection, i: number) => {\n if (!option || !option.selection || option.selection === TypeProductOption.NOTAVAILABLE) return\n const configDetail = getEmptySavedProductOfferingConfigDetail()\n\n configDetail.categoryID = props.category\n configDetail.typeProductOptionID = option.selection\n configDetail.productID = props.products[i].productID\n configDetail.productOfferingID = props.productOfferingId\n configDetail.typeColorID = 'N/A'\n\n if (option.selection === TypeProductOption.OPTIONAL) {\n configDetail.costToCharge = option.price ?? props.products[i].productCost\n }\n configDetails.push(configDetail)\n })\n\n return configDetails\n }\n\n watch(\n () => chosen.value,\n () => {\n const details = buildConfigDetailArray()\n\n if (details.length) {\n const productDetails = JSON.parse(JSON.stringify(details))\n store.commit.productOfferings.setSelectedProductDetails({ productDetails })\n } else {\n const sel = getEmptySavedProductOfferingConfigDetail()\n sel.categoryID = props.category\n sel.productOfferingID = props.productOfferingId\n store.commit.productOfferings.setSelectedProductDetails({ productDetails: [sel] })\n }\n logic.markAsDirty()\n },\n { deep: true }\n )\n\n return {\n sortedProducts,\n chosen,\n }\n },\n})\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!./OptionalProductPicker.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!./OptionalProductPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OptionalProductPicker.vue?vue&type=template&id=364d85d7&\"\nimport script from \"./OptionalProductPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./OptionalProductPicker.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('div',{staticClass:\"grid-no-auto-row\"},_vm._l((_vm.sortedProducts),function(p,i){return _c('grade-gender-card',{key:i,attrs:{\"product\":p,\"type\":_vm.type,\"category\":_vm.category,\"selectable\":_vm.selectable,\"package\":_vm.package,\"isByAge\":_vm.isByAge},model:{value:(_vm.chosen[i]),callback:function ($$v) {_vm.$set(_vm.chosen, i, $$v)},expression:\"chosen[i]\"}})}),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('selector-card',{attrs:{\"is-selected\":_vm.isCardSelected},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('enlargeable-product',{attrs:{\"product\":_vm.product}}),_c('radio-group-input',{staticClass:\"col\",attrs:{\"value-property-name\":\"value\",\"text-property-name\":\"label\",\"items-list\":_vm.choices,\"enabled\":_vm.selectable},model:{value:(_vm.programChoice),callback:function ($$v) {_vm.programChoice=$$v},expression:\"programChoice\"}}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showGradeGender),expression:\"showGradeGender\"}]},[_c('div',{staticClass:\"grid-gender-grade m-2\"},[(_vm.selectable)?[_c('select-input',{attrs:{\"label\":\"Gender\",\"items-list\":_vm.genders},on:{\"change\":_vm.genderChange},model:{value:(_vm.gender),callback:function ($$v) {_vm.gender=$$v},expression:\"gender\"}}),_c('select-input',{attrs:{\"label\":(\"Start \" + (_vm.isByAge ? 'Age' : 'Grade')),\"items-list\":_vm.gradeList,\"valuePropertyName\":\"upwardTypeID\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description'},model:{value:(_vm.startGrade),callback:function ($$v) {_vm.startGrade=$$v},expression:\"startGrade\"}}),_c('select-input',{attrs:{\"label\":(\"End \" + (_vm.isByAge ? 'Age' : 'Grade')),\"items-list\":_vm.gradeList,\"valuePropertyName\":\"upwardTypeID\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description'},model:{value:(_vm.endGrade),callback:function ($$v) {_vm.endGrade=$$v},expression:\"endGrade\"}}),_c('div',{staticClass:\"justify-self-start align-self-center\"},[_c('v-btn',{staticClass:\"mt-3\",attrs:{\"icon\":\"\",\"dark\":\"\",\"color\":\"primary\",\"ripple\":false},on:{\"click\":_vm.addClicked}},[_c('v-icon',{attrs:{\"dark\":\"\"}},[_vm._v(\"fa-plus-circle\")])],1)],1)]:_vm._e()],2),(_vm.showAddGradeWarning)?_c('div',{staticClass:\"orange--text text-center\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(\"Please add \"+_vm._s(_vm.isByAge ? 'ages' : 'grades')+\".\")]),_c('p',{staticClass:\"m-0\"},[_vm._v(\" If no \"+_vm._s(_vm.isByAge ? 'ages' : 'grades')+\" are added, \"),_c('i',[_vm._v(_vm._s(_vm.product.cmsProductName))]),_vm._v(\" will not be included. \")])]):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.gridError),expression:\"gridError\"}],staticClass:\"small text-danger\"},[_vm._v(\" \"+_vm._s(_vm.gridError)+\" \")]),_c('v-data-table',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.gridData.length > 0),expression:\"gridData.length > 0\"}],attrs:{\"headers\":_vm.headers,\"items\":_vm.gridData,\"hide-default-footer\":\"\"},scopedSlots:_vm._u([(_vm.selectable)?{key:\"item.actions\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-icon',{attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.deleteItem(item)}}},[_vm._v(\"fas fa-minus-circle\")])]}}:null],null,true)})],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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport EnlargeableProduct from './EnlargeableProduct.vue'\nimport { ProductOfferingProductInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\nimport { getEmptyProductOfferingProductInfo } from '@/lib/support/models/ProductOfferingProductInfo/ProductOfferingProductInfo'\nimport uuid from 'uuid'\nimport { getGrades } from '@/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades'\nimport { getProperGradeLabel } from '@/services/gradeService'\nimport { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail'\nimport { getEmptySavedProductOfferingConfigDetail } from '@/lib/support/models/SavedProductOfferingConfigDetail/SavedProductOfferingConfigDetail'\nimport { ProductOfferingTypes } from '@/lib/common/ProductOfferingTypes'\nimport { TypeProductOption } from '@/lib/support/models/UpwardTypes/TypeProductOption'\nimport { SavedProductOfferingConfigGenderGrade } from '@/GeneratedTypes/SavedProductOfferingConfigGenderGrade'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport { getProductByID, programByType, buildGradeArray } from '@/lib/common/ProductOfferingConfig'\nimport { SavedProductOfferingConfigDetailGenderGrade } from '@/GeneratedTypes/SavedProductOfferingConfigDetailGenderGrade.ts'\nimport { cloneDeep } from 'lodash'\nimport { TypeProductOfferingProductPackage } from '@/lib/support/models/UpwardTypes/TypeProductOfferingProductPackageID'\nimport store from '@/store'\n\ninterface GradeGender {\n id: string\n startGrade: string\n endGrade: string\n gender: string\n gradeList: string[]\n}\n\nexport default defineComponent({\n name: 'GradeGenderCard',\n components: {\n RadioGroupInput,\n SelectInput,\n SelectorCard,\n EnlargeableProduct,\n },\n props: {\n product: {\n type: Object as PropType,\n default: getEmptyProductOfferingProductInfo,\n required: false,\n },\n category: { type: Number, default: 0, required: false },\n value: { type: Object as PropType, required: false },\n selectable: { type: Boolean, required: true },\n package: { type: String, required: false, default: '' },\n isByAge: { type: Boolean, required: false, default: false },\n type: {\n type: Number as PropType,\n required: false,\n default: () => ProductOfferingTypes.SPORT,\n },\n },\n setup(props, ctx) {\n const productOfferingConfig = computed(() => store.getters.productOfferings.productOfferingConfig)\n const gender = ref(0)\n const startGrade = ref('')\n const endGrade = ref('')\n const gridError = ref('')\n const allGrades = ref(getGrades(false))\n const gridData = ref([])\n const localGradeGender = ref([])\n\n const choices = [\n { value: 'ALL', label: 'PROVIDE FOR ALL PARTICIPANTS' },\n { value: 'EXCLUDED', label: 'DO NOT PROVIDE THIS ITEM' },\n { value: 'SELECTED', label: 'PROVIDE ONLY TO SELECTIONS BELOW' },\n ]\n\n const programChoice = ref(choices[1].value)\n\n const headers = ref<{ text: string; value: string; sortable?: boolean }[]>([])\n\n onMounted(async () => {\n await store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //get these cached up\n setLocalGradeGender()\n setValues()\n setDefaultGrades()\n setPackage()\n headers.value = props.isByAge\n ? [\n { text: 'Gender', value: 'gender' },\n { text: 'Start Age', value: 'startGrade' },\n { text: 'End Age', value: 'endGrade' },\n { text: '', value: 'actions', sortable: false },\n ]\n : [\n { text: 'Gender', value: 'gender' },\n { text: 'Start', value: 'startGrade' },\n { text: 'End', value: 'endGrade' },\n { text: '', value: 'actions', sortable: false },\n ]\n })\n\n const isCardSelected = computed((): boolean => {\n if (programChoice.value == choices[0].value) return true\n if (programChoice.value === choices[2].value && gridData.value.length > 0) return true\n return false\n })\n\n function setValues() {\n const savedProduct = getProductByID(\n cloneDeep(productOfferingConfig.value.details),\n props.product.productID,\n props.category\n )\n if (!savedProduct) return\n setRadioButtons(savedProduct)\n if (!savedProduct.gradesByGender || savedProduct.gradesByGender.length < 1) return\n populateGridOfGrades(savedProduct)\n }\n\n function setRadioButtons(savedProduct: SavedProductOfferingConfigDetail) {\n const gradeCount = savedProduct.gradesByGender ? savedProduct.gradesByGender.length : 0\n if (savedProduct.typeProductOptionID === 'INCLUDED' && gradeCount === 0) {\n programChoice.value = choices[0].value\n }\n\n if (savedProduct.typeProductOptionID === 'INCLUDED' && gradeCount > 0) {\n programChoice.value = choices[2].value\n }\n }\n\n const showGradeGender = computed(() => programChoice.value == choices[2].value)\n\n const gradeList = computed(() => {\n const myGender = genders.value[gender.value]\n switch (myGender) {\n case 'Boys':\n return boyGrades.value\n case 'Girls':\n return girlGrades.value\n default:\n return []\n }\n })\n\n const genders = computed(() => {\n const retval: string[] = []\n if (boyGrades.value.length) retval.push('Boys')\n if (girlGrades.value.length) retval.push('Girls')\n return retval\n })\n\n function deleteItem(item: GradeGender) {\n clearGridError()\n const x = gridData.value.filter((i: GradeGender) => {\n return i.id !== item.id\n })\n gridData.value = x\n if (gridData.value.length === 0) programChoice.value = choices[1].value\n }\n\n function addClicked() {\n if (!gradeList.value) return\n if (valid()) {\n gridData.value.push({\n id: uuid.v4(),\n gender: genders.value[gender.value],\n startGrade: getProperGradeLabel(startGrade.value, props.isByAge, ''),\n endGrade: getProperGradeLabel(endGrade.value, props.isByAge, ''),\n gradeList: getSelectedGradeList(),\n })\n }\n }\n\n function getSelectedGradeList() {\n if (!gradeList.value) return []\n const startIndex = gradeList.value.findIndex((x) => x.upwardTypeID == startGrade.value)\n const endIndex = gradeList.value.findIndex((x) => x.upwardTypeID == endGrade.value)\n return gradeList.value.slice(startIndex, endIndex + 1).map((x) => x.upwardTypeID!)\n }\n\n function invalidDups() {\n const newEntry = getSelectedGradeList()\n let dupes!: string[]\n gridData.value.forEach((row: GradeGender) => {\n if (row.gender != genders.value[gender.value]) return\n dupes = newEntry\n .filter((i: string) => row.gradeList.includes(i))\n .map((x) => getProperGradeLabel(x, props.isByAge, ''))\n })\n\n if (dupes && dupes.length > 0) {\n let myGender = ''\n if (props.type === ProductOfferingTypes.SPORT) myGender = ` for ${genders.value[gender.value]}`\n return `No duplicates. Theses ${\n props.isByAge ? 'ages' : 'grades'\n } are already selected ${myGender}: ${dupes.join(', ')} `\n }\n return false\n }\n\n function startLessThanEnd() {\n const error =\n gradeList.value.findIndex((x) => x.upwardTypeID == endGrade.value) <\n gradeList.value.findIndex((x) => x.upwardTypeID == startGrade.value)\n if (error) return `Start grade must be less than end grade`\n return false\n }\n\n function valid() {\n const dupes = invalidDups()\n const orderError = startLessThanEnd()\n if (!dupes && !orderError) return true\n if (orderError) gridError.value = orderError\n if (dupes) gridError.value = dupes\n return false\n }\n\n function clearGridError() {\n gridError.value = ''\n }\n\n function setDefaultGrades() {\n if (gradeList.value) {\n startGrade.value = gradeList.value[0].upwardTypeID!\n endGrade.value = gradeList.value[gradeList.value.length - 1].upwardTypeID!\n }\n }\n\n function emitData() {\n let data!: SavedProductOfferingConfigDetail | null\n const progChoice = programChoice.value\n const gridLength = gridData.value.length\n if (progChoice == choices[1].value) {\n data = null\n } else if (progChoice == choices[2].value && gridLength < 1) {\n data = null\n } else {\n data = buildSavedProductOfferingConfigDetail()\n }\n\n ctx.emit('input', data)\n ctx.emit('change', data)\n }\n\n function buildSavedProductOfferingConfigDetail() {\n const data: SavedProductOfferingConfigDetail = getEmptySavedProductOfferingConfigDetail()\n data.typeProductOptionID = TypeProductOption.INCLUDED\n data.productOfferingID = props.product.productID\n if (programChoice.value === choices[2].value) {\n data.gradesByGender = createGradeGenderObjectArray()\n }\n return data\n }\n\n function createGradeGenderObjectArray() {\n let arr: SavedProductOfferingConfigDetailGenderGrade[] = []\n gridData.value.forEach((row: GradeGender) => {\n row.gradeList.forEach((i: string) => {\n const obj = {\n gender: row.gender === 'Boys' ? 'M' : 'F',\n typeGradeID: i,\n } as SavedProductOfferingConfigDetailGenderGrade\n arr.push(obj)\n return arr\n })\n })\n return arr\n }\n\n function populateGridOfGrades(savedProduct: SavedProductOfferingConfigDetail) {\n const boyGrades: string[][] = reassembleGradesList(savedProduct, 'M')\n const girlGrades: string[][] = reassembleGradesList(savedProduct, 'F')\n gridData.value = []\n if (girlGrades) loadGridFromSaved(girlGrades, 'Girls')\n if (boyGrades) loadGridFromSaved(boyGrades, 'Boys')\n }\n\n function loadGridFromSaved(rows: string[][], genderParm: 'Boys' | 'Girls') {\n rows.forEach((row: string[]) => {\n gridData.value.push({\n id: uuid.v4(),\n gender: genderParm,\n startGrade: getProperGradeLabel(row[0], props.isByAge, ''),\n endGrade: getProperGradeLabel(row[row.length - 1], props.isByAge, ''),\n gradeList: row,\n })\n })\n }\n\n function reassembleGradesList(savedProduct: SavedProductOfferingConfigDetail, type: 'M' | 'F') {\n //extrapolate the rows to display in the grid from the grade\n //objects returned by the database.\n //\n //This is done by looking for gaps in the grades array (when it's compared\n //to the saved values returned from the db)\n const listOfReassembledGrades: string[][] = []\n let gradesForOneRowInGrid: string[] = []\n if (!savedProduct.gradesByGender) return []\n const savedGradesForOneGender = savedProduct.gradesByGender.reduce(\n (acc: string[], g: SavedProductOfferingConfigDetailGenderGrade) => {\n if (g.gender === type) acc.push(g.typeGradeID)\n return acc\n },\n []\n )\n allGrades.value.forEach((g: string, i: number) => {\n if (savedGradesForOneGender.includes(g)) {\n // if there is a match, add to the row\n gradesForOneRowInGrid.push(g)\n } else {\n if (gradesForOneRowInGrid.length > 0) {\n // if there is no match, it's a gap.\n // Push what's in the row so far to the array\n // of all rows\n listOfReassembledGrades.push(gradesForOneRowInGrid)\n //clear the array that holds one row in order\n //to start next row\n gradesForOneRowInGrid = []\n }\n }\n //add the last row if it includes the last elemnt in the\n //grades array\n if (gradesForOneRowInGrid.length > 0 && i === allGrades.value.length - 1) {\n listOfReassembledGrades.push(gradesForOneRowInGrid)\n }\n })\n return listOfReassembledGrades\n }\n\n function genderChange() {\n setDefaultGrades()\n clearGridError()\n }\n\n const boyGrades = computed(() => buildGradesForGender('M'))\n\n const girlGrades = computed(() => buildGradesForGender('F'))\n\n const leaguePrograms = computed(\n () => store.getters.leagueAbstraction.leagueUpwardProgramTypeID as UpwardProgramTypeID[]\n )\n\n function buildGradesForGender(genderParm: 'F' | 'M') {\n const progType =\n props.type === ProductOfferingTypes.SPORT\n ? programByType(leaguePrograms.value, 'SPORT')\n : programByType(leaguePrograms.value, 'CHEER')\n if (!progType) return []\n return buildGradeArray(localGradeGender.value, genderParm, progType.upwardTypeID)\n }\n\n const showAddGradeWarning = computed(\n () => programChoice.value == choices[2].value && gridData.value.length < 1\n )\n\n function setPackage() {\n if (!props.package) return\n gridData.value = []\n\n if (props.package == TypeProductOfferingProductPackage.CUSTOM) {\n programChoice.value = choices[1].value\n return\n }\n if (\n props.product.productPackages?.some((x) => x.typeProductOfferingProductPackageID == props.package)\n ) {\n programChoice.value = choices[0].value\n } else {\n programChoice.value = choices[1].value\n }\n }\n\n watch(\n () => props.package,\n () => {\n setPackage()\n }\n )\n\n watch(\n () => programChoice.value,\n () => {\n emitData()\n clearGridError()\n }\n )\n\n watch(\n () => gridData.value,\n () => {\n emitData()\n },\n { deep: true }\n )\n\n watch(\n () => gradeList.value,\n () => {\n setDefaultGrades()\n }\n )\n\n watch(\n () => startGrade.value,\n () => {\n clearGridError()\n }\n )\n\n watch(\n () => endGrade.value,\n () => {\n clearGridError()\n }\n )\n\n function setLocalGradeGender() {\n localGradeGender.value = JSON.parse(JSON.stringify(productOfferingConfig.value.gradesByGender))\n }\n\n watch(\n () => productOfferingConfig.value,\n () => {\n setLocalGradeGender()\n setValues()\n },\n { deep: true }\n )\n\n return {\n isCardSelected,\n programChoice,\n choices,\n showGradeGender,\n gender,\n genders,\n genderChange,\n startGrade,\n gradeList,\n endGrade,\n addClicked,\n showAddGradeWarning,\n gridError,\n gridData,\n headers,\n deleteItem,\n }\n },\n})\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!./GradeGenderCard.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!./GradeGenderCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GradeGenderCard.vue?vue&type=template&id=5664f824&scoped=true&\"\nimport script from \"./GradeGenderCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./GradeGenderCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GradeGenderCard.vue?vue&type=style&index=0&id=5664f824&lang=scss&scoped=true&\"\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 \"5664f824\",\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 { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VBtn,VDataTable,VIcon})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\n\nimport GradeGenderCard from './GradeGenderCard.vue'\nimport { ProductOfferingProductInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\nimport { getEmptyProductOfferingProductInfoList } from '@/lib/support/models/ProductOfferingProductInfo/ProductOfferingProductInfo'\nimport { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail.ts'\nimport { getEmptySavedProductOfferingConfigDetail } from '@/lib/support/models/SavedProductOfferingConfigDetail/SavedProductOfferingConfigDetail'\nimport { ProductOfferingTypes } from '@/lib/common/ProductOfferingTypes'\nimport { sortOffering } from '@/services/offeringService'\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'GradeGenderPicker',\n components: {\n GradeGenderCard,\n },\n props: {\n products: {\n type: Array as PropType,\n default: getEmptyProductOfferingProductInfoList,\n required: false,\n },\n values: {\n type: Array as PropType,\n default: getEmptyProductOfferingProductInfoList,\n required: false,\n },\n category: { type: Number, default: 0, required: false },\n selectable: { type: Boolean, required: true },\n package: { type: String, required: false, default: '' },\n productOfferingId: { type: Number, required: true },\n isByAge: { type: Boolean, required: false, default: false },\n type: {\n type: Number as PropType,\n required: false,\n default: () => ProductOfferingTypes.SPORT,\n },\n },\n setup(props) {\n const chosen = ref([])\n const logic = productFlowLogic()\n\n const sortedProducts = computed(() => sortOffering(props.products))\n\n function buildConfigDetailArray() {\n const configDetails: SavedProductOfferingConfigDetail[] = []\n\n chosen.value.forEach((option: SavedProductOfferingConfigDetail | null, i: number) => {\n if (option === null) return\n\n const configDetail = getEmptySavedProductOfferingConfigDetail()\n configDetail.categoryID = props.category\n configDetail.typeProductOptionID = option.typeProductOptionID\n configDetail.productID = props.products[i].productID\n configDetail.productOfferingID = props.productOfferingId\n configDetail.gradesByGender = option.gradesByGender\n configDetail.typeColorID = 'N/A'\n\n configDetails.push(configDetail)\n })\n return configDetails\n }\n\n watch(\n () => chosen.value,\n () => {\n const details = buildConfigDetailArray()\n\n if (details.length) {\n const productDetails = JSON.parse(JSON.stringify(details))\n store.commit.productOfferings.setSelectedProductDetails({ productDetails })\n } else {\n const sel = getEmptySavedProductOfferingConfigDetail()\n sel.categoryID = props.category\n sel.productOfferingID = props.productOfferingId\n store.commit.productOfferings.setSelectedProductDetails({ productDetails: [sel] })\n }\n logic.markAsDirty()\n }\n )\n\n return {\n sortedProducts,\n chosen,\n }\n },\n})\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!./GradeGenderPicker.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!./GradeGenderPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GradeGenderPicker.vue?vue&type=template&id=b43ca4ec&scoped=true&\"\nimport script from \"./GradeGenderPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./GradeGenderPicker.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GradeGenderPicker.vue?vue&type=style&index=0&id=b43ca4ec&lang=scss&scoped=true&\"\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 \"b43ca4ec\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, computed, onMounted, ref } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\nimport ProductPicker from './ProductPickers/ProductPicker.vue'\nimport OptionalProductPicker from './ProductPickers/OptionalProductPicker.vue'\nimport GradeGenderPicker from './ProductPickers/GradeGenderPicker.vue'\n\nimport { ProductOfferingCategoryInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingCategoryInfo'\nimport { OfferingOptionType } from '@/lib/support/models/UpwardTypes/OfferingOptionType'\nimport { ProductOfferingTypes } from '@/lib/common/ProductOfferingTypes'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nexport default defineComponent({\n name: 'ProductStep',\n props: {\n step: { type: Number, required: true },\n isSport: { type: Boolean, required: true },\n isByAge: { type: Boolean, required: false, default: false },\n category: { type: Object as PropType, required: true },\n productOfferingId: { type: Number, required: true },\n selectedPackage: { type: String, required: false, default: '' },\n },\n components: { ProductPicker, Step, OptionalProductPicker, GradeGenderPicker },\n setup(props, { emit }) {\n const logic = productFlowLogic()\n const maxTouchedStep = computed(() =>\n props.isSport ? logic.kit1MaxTouchedStep.value : logic.kit2MaxTouchedStep.value\n )\n const useTestData = ref(false)\n onMounted(() => {\n if (process.env.VUE_APP_USE_TEST_DATA == 'YES') {\n useTestData.value = true\n }\n emit('mounted', props.category.categoryID)\n })\n\n function componentName(typeProductOfferingOptionID: string) {\n switch (typeProductOfferingOptionID) {\n case OfferingOptionType.OPTIONAL:\n return 'OptionalProductPicker'\n case OfferingOptionType.ADDBYGRADEGENDER:\n return 'GradeGenderPicker'\n case OfferingOptionType.HYBRID:\n return 'HybridProductPicker'\n default:\n return 'ProductPicker'\n }\n }\n\n const isRequired = computed(() => props.category.typeProductOfferingOptionID == OfferingOptionType.SELECT)\n\n const isSelectMultiple = computed(\n () => props.category.typeProductOfferingOptionID == OfferingOptionType.ADD\n )\n\n const isSingleProduct = computed(() => props.category.products?.length == 1)\n\n const type = computed(() => (props.isSport ? ProductOfferingTypes.SPORT : ProductOfferingTypes.CHEER))\n\n function groupProducts(groupID: number) {\n return props.category.products?.filter((x) => x.groupID == groupID) || []\n }\n\n function groupIsSingleProduct(groupID: number) {\n return groupProducts(groupID).length == 1\n }\n\n function groupIsRequired(typeProductOfferingOptionID: string) {\n return typeProductOfferingOptionID == OfferingOptionType.SELECT\n }\n\n function groupIsSelectMultiple(typeProductOfferingOptionID: string) {\n return typeProductOfferingOptionID == OfferingOptionType.ADD\n }\n\n return {\n useTestData,\n ...logic,\n maxTouchedStep,\n componentName,\n isSingleProduct,\n isRequired,\n isSelectMultiple,\n type,\n groupProducts,\n groupIsSingleProduct,\n groupIsRequired,\n groupIsSelectMultiple,\n }\n },\n})\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!./ProductStep.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!./ProductStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductStep.vue?vue&type=template&id=90919e20&scoped=true&\"\nimport script from \"./ProductStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProductStep.vue?vue&type=style&index=0&id=90919e20&lang=scss&scoped=true&\"\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 \"90919e20\",\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('div',[_c('p',{staticClass:\"small text-muted\"},[_vm._v(\"Use these preconfigured experience packages as you build your kit.\")]),_c('h5',{staticClass:\"text-center\"},[_vm._v(\"Packages\")]),_c('div',{staticClass:\"pkg-grid\"},_vm._l((_vm.packages),function(p,i){return _c('div',{key:i,staticClass:\"text-center border d-flex justify-space-between flex-column\"},[_c('div',{staticClass:\"px-2 pt-2\"},[_c('div',{class:p.class},[_c('PackageIcon',{staticClass:\"fa-2x\",attrs:{\"package-id\":p.upwardTypeID}})],1),_c('div',{staticClass:\"font-weight-bold\",class:p.class},[_vm._v(_vm._s(p.title))]),_c('div',{staticClass:\"text-muted small\",staticStyle:{\"min-height\":\"50px\"}},[_vm._v(_vm._s(p.publicDescription))])]),_c('div',{staticClass:\"pb-2\"},[_c('button',{staticClass:\"btn btn-link text-underline font-weight-bold small p-0\",class:p.class,on:{\"click\":function($event){return _vm.click(p.upwardTypeID)}}},[_vm._v(\" \"+_vm._s(p.actionText)+\" \")])])])}),0)])}\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\nimport { defineComponent, ref, onMounted } from '@vue/composition-api'\nimport PackageIcon from './PackageIcon.vue'\nimport { productOfferingProductPackageTypes } from '@/store/productOfferingProductPackageTypes'\nimport { UpwardProductOfferingProductPackageTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProductOfferingProductPackageTypeID'\n\nexport default defineComponent({\n name: 'ProductPackages',\n props: {},\n components: { PackageIcon },\n setup(props, { emit }) {\n function click(pkg: string) {\n emit('click', pkg)\n }\n\n const packages = ref([])\n\n onMounted(() => {\n packages.value = productOfferingProductPackageTypes.state.items\n })\n\n return { packages, click }\n },\n})\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!./Packages.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!./Packages.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Packages.vue?vue&type=template&id=1e8801a6&scoped=true&\"\nimport script from \"./Packages.vue?vue&type=script&lang=ts&\"\nexport * from \"./Packages.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Packages.vue?vue&type=style&index=0&id=1e8801a6&lang=scss&scoped=true&\"\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 \"1e8801a6\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\nimport Stepper from '@/elements/Stepper.vue'\nimport ProductOfferingStep from '@/components/ProductFlow/ParticipantKitStepper/ProductOfferingStep.vue'\nimport ProductStep from '@/components/ProductFlow/ParticipantKitStepper/ProductStep.vue'\nimport Packages from '@/components/ProductFlow/ParticipantKitStepper/Packages/Packages.vue'\n\nimport { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail'\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\nimport { ProductOfferingCategoryInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingCategoryInfo'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\n\nimport { sortOffering } from '@/services/offeringService'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nimport store from '@/store'\nimport { ProdConfigTypes } from '@/lib/common/ProdConfigTypes'\n\nexport default defineComponent({\n name: 'ParticipantKitStepper',\n props: {\n isCheer: { type: Boolean, required: false },\n },\n components: {\n Stepper,\n ProductOfferingStep,\n ProductStep,\n Packages,\n },\n setup(props) {\n const logic = productFlowLogic()\n const selectedProductOfferingId = ref(0)\n\n const currentStep = computed({\n get() {\n if (!props.isCheer) {\n return store.getters.productFlow.currentParticipantKit1Step\n } else {\n return store.getters.productFlow.currentParticipantKit2Step\n }\n },\n set(v: number) {\n if (!props.isCheer) {\n store.commit.productFlow.setCurrentParticipantKit1Step({ step: v })\n } else {\n store.commit.productFlow.setCurrentParticipantKit2Step({ step: v })\n }\n },\n })\n\n /*\n * Packages\n */\n const selectedPackageForOfferings = ref(null)\n const selectedPackageForChildProducts = ref(null)\n function packageClick(pkg: string) {\n selectedPackageForOfferings.value = pkg\n }\n\n const showPackages = computed(() => {\n if (store.getters.productFlow.prodConfigType == ProdConfigTypes.ESTIMATE) {\n return true\n }\n if (\n store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE &&\n logic.isNewProdConfig.value\n ) {\n return true\n }\n return false\n })\n\n const showStepper = computed(() => {\n if (store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.CAMP) {\n return true\n }\n\n if (logic.isNewProdConfig.value) {\n return selectedPackageForOfferings.value != null &&\n store.getters.productOfferings.initialProductFlowLoadingComplete\n ? true\n : false\n } else {\n return true\n }\n })\n\n const isByAge = computed(() => {\n return store.getters.leagueAbstraction.isByAge\n })\n\n /*\n * Calculate the list of child products\n */\n const savedProducts = computed((): SavedProductOfferingConfigDetail[] =>\n //This represents details that have previously been saved in a product config\n cloneDeep(store.getters.productOfferings.productOfferingConfig.details ?? [])\n )\n\n const childProducts = computed(() => {\n //get the correct catalog for the type (cheer.sport)\n const catalogs = cloneDeep(store.getters.productOfferings.displayableProductCatalogs)\n return catalogs.find((c) => c.id == selectedProductOfferingId.value) ?? ({} as ProductOfferingInfo)\n })\n\n function productOfferingChanged(result: {\n action: string\n package: string\n offering: ProductOfferingInfo\n }) {\n if (result.action == 'PackageChangeOnly') {\n selectedPackageForChildProducts.value = result.package\n } else if (result.action == 'OfferingChanged') {\n selectedProductOfferingId.value = result.offering.id\n selectedPackageForChildProducts.value = result.package\n }\n logic.kitStepClicked(!props.isCheer, 1)\n }\n\n const activeChildProducts = computed(() => {\n // filter out inactive products that are not already saved to a league or estimate\n const cleanProducts = cloneDeep(childProducts.value)\n\n cleanProducts.categories?.forEach((c) => {\n if (!c.products || !c.products.length) return\n c.products = c.products?.filter((p) => {\n if (!p.active) {\n return savedProducts.value.some((savedProd) => savedProd.productID == p.productID)\n }\n return true\n })\n })\n return cleanProducts\n })\n\n const displayableCategories = computed((): ProductOfferingCategoryInfo[] => {\n const products = cloneDeep(activeChildProducts.value)\n if (!products || !products.categories) {\n return []\n } else {\n return sortOffering(products.categories)\n }\n })\n\n const maxAccessibleStep = computed(() => {\n return (childProducts.value.categories?.length ?? 0) + 1\n })\n\n watch(\n () => childProducts.value,\n () => {\n if (!logic.isNewProdConfig.value) {\n if (!props.isCheer) {\n store.commit.productFlow.setMaxTouchedParticipantKit1Step({\n step: maxAccessibleStep.value,\n })\n } else {\n store.commit.productFlow.setMaxTouchedParticipantKit2Step({\n step: maxAccessibleStep.value,\n })\n }\n }\n },\n { immediate: true }\n )\n\n return {\n ...logic,\n currentStep,\n displayableCategories,\n productOfferingChanged,\n selectedProductOfferingId,\n packageClick,\n showPackages,\n selectedPackageForOfferings,\n selectedPackageForChildProducts,\n showStepper,\n isByAge,\n }\n },\n})\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!./ParticipantKitStepper.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!./ParticipantKitStepper.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantKitStepper.vue?vue&type=template&id=6e8afd35&\"\nimport script from \"./ParticipantKitStepper.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantKitStepper.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\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\nimport ParticipantKitStepper from '@/components/ProductFlow/ParticipantKitStepper/ParticipantKitStepper.vue'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ParticipantKitStep',\n props: {\n step: { type: Number, required: true },\n stepTitle: { type: String, required: true },\n isCheer: { type: Boolean, required: true },\n nextOfferingIndex: { type: Number, required: false, default: 0 },\n },\n components: { Step, ParticipantKitStepper },\n setup(props) {\n const logic = productFlowLogic()\n const offeringsByProgram = computed(() => store.getters.productOfferings.offeringsByProgram)\n\n function stepClicked(step: number) {\n updateCurrentProgram()\n logic.productSetupStepClicked(step)\n }\n\n function updateCurrentProgram() {\n const program = logic.getUpwardProgramTypeByIsCheer(props.isCheer)\n if (program) {\n logic.setCurrentTypeProgram({ program })\n }\n }\n\n function nextStepClicked() {\n updateNextProgram()\n logic.productSetupNextStep(props.step)\n }\n\n function updateNextProgram() {\n let nextOffering = offeringsByProgram.value[props.nextOfferingIndex]\n if (!nextOffering) nextOffering = offeringsByProgram.value[0]\n const program = logic.getUpwardProgramTypeByIsCheer(nextOffering.isCheer)\n if (program) {\n logic.setCurrentTypeProgram({ program })\n }\n }\n\n return { ...logic, offeringsByProgram, stepClicked, nextStepClicked }\n },\n})\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!./ParticipantKitStep.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!./ParticipantKitStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantKitStep.vue?vue&type=template&id=59f97be9&\"\nimport script from \"./ParticipantKitStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantKitStep.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('div',[_c('div',{staticClass:\"d-flex w-100 flex-column pt-3\"},[(!_vm.show)?_c('div',{staticClass:\"border p-5\"},[_c('p',[_vm._v(\"Complete the first 4 steps of the \"+_vm._s(_vm.toolName)+\" to begin selecting product.\")]),_c('p',[_vm._v(\"As you select products, you will see the per participant cost for your league.\")])]):_vm._e(),(_vm.show)?_c('div',[(_vm.hasMultiplePrograms)?_c('button-picker',{staticClass:\"d-flex justify-content-center mb-3\",attrs:{\"options\":_vm.sortedLeaguePrograms,\"label\":\"shortDescription\"},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}}):_vm._e(),(_vm.allProducts.length === 0)?_c('div',{staticClass:\"border p-5\"},[_vm._v(\" No applicable products have been selected. Please continue through the remaining steps. \")]):_vm._e(),_c('h5',{staticClass:\"text-center py-3\"},[_vm._v(\"Estimated Per \"+_vm._s(_vm.participantType)+\" Cost\")]),(_vm.allProducts !== 0)?_c('div',[_c('table',{staticClass:\"border-bottom w-100\"},_vm._l((_vm.allProducts),function(p,i){return _c('tr',{key:i + 999},[_c('td',[_vm._v(\" \"+_vm._s(p.cmsProductName)),(p.color)?_c('span',{staticClass:\"text-lowercase\"},[_vm._v(\"(\"+_vm._s(p.color)+\")\")]):_vm._e()]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm.cost(p.cost, p.optionalText)))])])}),0),_c('table',{staticClass:\"w-100\"},[(_vm.discount)?_c('tr',[_c('td',[_vm._v(\"Estimated Per \"+_vm._s(_vm.participantType)+\" Subtotal\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm.currency(_vm.participantSubtotal)))])]):_vm._e(),(_vm.discount)?_c('tr',[_c('td',[_vm._v(\"Discount:\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm.currency(_vm.discount)))])]):_vm._e(),_c('tr',[_c('td',{staticClass:\"font-weight-bold\"},[_vm._v(\"Estimated Per \"+_vm._s(_vm.participantType)+\" Total\")]),_c('td',{staticClass:\"text-right font-weight-bold\"},[_vm._v(_vm._s(_vm.currency(_vm.participantTotal)))])])])]):_vm._e(),_vm._m(0),(_vm.showOptionalProductText)?_c('div',{staticClass:\"text-caption text-muted mt-2\"},[_vm._v(\" * These items are not included in the overall \"),_c('i',[_vm._v(\"Per \"+_vm._s(_vm.participantType))]),_vm._v(\" calculation because the parents can optionally add these at registration. \")]):_vm._e(),(_vm.showAwardWarning)?_c('div',{staticClass:\"text-caption text-muted mt-2\"},[_vm._v(\" º If there are multiple items selected by grade and gender, only the highest priced one is included in the \"),_c('i',[_vm._v(\"Per \"+_vm._s(_vm.participantType))]),_vm._v(\" price. \")]):_vm._e(),(_vm.showMultiPriceWarning)?_c('div',{staticClass:\"text-caption text-muted mt-2\"},[_vm._v(\" Ɨ Some products have multiple possible prices. Only the highest price is included in the \"),_c('i',[_vm._v(\"Per \"+_vm._s(_vm.participantType))]),_vm._v(\" price. \")]):_vm._e()],1):_vm._e()])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"text-caption text-muted my-3\"},[_c('i',[_vm._v(\" Sales tax varies by state, so be sure to plan for sales tax if applicable in your state. All prices are in USD. \")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-item-group',{attrs:{\"mandatory\":true,\"multiple\":false},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}},_vm._l((_vm.options),function(item,index){return _c('v-item',{key:index,scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar active = ref.active;\nvar toggle = ref.toggle;\nreturn [_c('button',{staticClass:\"btn btn-sm flat\",class:{ 'btn-primary': active, 'btn-outline-dark': !active },attrs:{\"type\":\"button\"},on:{\"click\":toggle}},[_vm._v(\" \"+_vm._s(_vm.buttonLabel(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\nimport { defineComponent, ref, watch, onMounted } from '@vue/composition-api'\nimport { isEqual } from 'lodash'\n\nexport default defineComponent({\n name: 'ButtonPicker',\n props: {\n options: { type: Array, required: true },\n label: { type: String, required: true },\n value: { type: Object, required: false, default: null },\n },\n setup(props, ctx) {\n const selected = ref(999)\n\n onMounted(() => {\n selected.value = getIndexFromOptions()\n })\n\n function buttonLabel(item: any) {\n return item[props.label]\n }\n\n function getIndexFromOptions() {\n const i = props.options.findIndex((y: any) => {\n return isEqual(y, props.value)\n })\n return i < 0 ? 0 : i\n }\n\n function emitSelectedObject() {\n ctx.emit('input', props.options[selected.value])\n ctx.emit('change', props.options[selected.value])\n }\n\n watch(\n () => props.value,\n () => {\n selected.value = getIndexFromOptions()\n }\n )\n\n watch(\n () => selected.value,\n () => {\n emitSelectedObject()\n }\n )\n\n return {\n selected,\n buttonLabel,\n }\n },\n})\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!./ButtonPicker.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!./ButtonPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ButtonPicker.vue?vue&type=template&id=1dd04ae5&\"\nimport script from \"./ButtonPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./ButtonPicker.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ButtonPicker.vue?vue&type=style&index=0&lang=scss&\"\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 { VItem } from 'vuetify/lib/components/VItemGroup';\nimport { VItemGroup } from 'vuetify/lib/components/VItemGroup';\ninstallComponents(component, {VItem,VItemGroup})\n","export const campColorSelectionProducts = [\n 430101,\n 430102,\n 430103,\n 430104,\n 431101,\n 431102,\n 431103,\n 431104,\n 432101,\n 432102,\n 432103,\n 432104,\n 433101,\n 433102,\n 433103,\n 433104,\n 433105,\n 433106,\n]\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ninterface DisplayableProduct {\n cmsProductName: string | null\n cost: number\n costOffset: number\n typeParticipantID: string | null\n category: string | null\n categorySortOrder: number\n productID: number | null\n productSortOrder: number\n color: string\n optionalText: string\n hasGradeGender: boolean\n skipSimpleTotal: boolean\n isMultiPrice: boolean\n isOptionalApparel: boolean\n}\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\nimport ButtonPicker from '@/elements/ButtonPicker.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport { SavedProductOfferingConfigDetail } from '@/GeneratedTypes/SavedProductOfferingConfigDetail'\nimport { ProductOfferingProductInfo } from 'src/GeneratedTypes/ListInfo/ProductOfferingProductInfo'\nimport { ProductOfferingCategoryInfo } from 'src/GeneratedTypes/ListInfo/ProductOfferingCategoryInfo'\nimport { getEmptyUpwardProgramTypeID } from '@/lib/support/models/UpwardTypes/UpwardProgramTypeID'\nimport { SavedProductOfferingConfigStartupOrderProduct } from '@/GeneratedTypes/SavedProductOfferingConfigStartupOrderProduct'\nimport { StartupOrderProductInfo } from '@/GeneratedTypes/ListInfo/StartupOrderProductInfo'\nimport currency from '@/filters/currency'\nimport { campColorSelectionProducts } from '@/components/ProductFlow/data/CampColorProducts'\n\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'RunningTotal',\n components: {\n ButtonPicker,\n Loading,\n },\n props: {\n isEstimate: { type: Boolean, required: false, default: true },\n leaguePrograms: {\n type: Array as PropType,\n default: getEmptyUpwardProgramTypeID,\n required: false,\n },\n currentProductConfigProgram: {\n type: Object as PropType,\n required: false,\n default: getEmptyUpwardProgramTypeID,\n },\n viewedSteps: { type: Array as PropType, required: false, default: () => [] },\n },\n setup(props) {\n const productOfferingConfig = computed(() => store.getters.productOfferings.productOfferingConfig)\n const availableStartupProducts = computed(() => store.getters.productOfferings.availableStartupProducts)\n const availableProductGroups = computed(() => store.getters.productOfferings.availableProductGroups)\n const currentProgramType = computed(() => store.getters.productFlow.currentProgramType)\n const selectedProductOfferings = computed(() => store.getters.productOfferings.selectedProductOfferings)\n const productCatalogs = computed(() => store.getters.productOfferings.productCatalogs)\n const selectedProductDetails = computed(() => store.getters.productOfferings.selectedProductDetails)\n const detailsStartupOrder = computed(() => store.getters.productOfferings.detailsStartupOrder)\n\n const selectedProgram = ref({} as UpwardProgramTypeID)\n const showOptionalProductText = ref(false)\n const showMultiPriceWarning = ref(false)\n const showAwardWarning = ref(false)\n\n const hasMultiplePrograms = computed(() => props.leaguePrograms.length > 1)\n\n function cost(cost: number, optionalText: string) {\n if (optionalText) return `${currency(cost)}${optionalText}`\n return currency(cost)\n }\n\n const sortedLeaguePrograms = computed(() => {\n const programs = cloneDeep(props.leaguePrograms)\n return programs.sort((a) => (a.isCheer ? 1 : -1))\n })\n\n const toolName = computed(() => (props.isEstimate ? 'Estimator Tool' : 'Product & Pricing Tool'))\n\n const discount = computed((): number => 0) //discounts are no longer offered\n\n function lockedInCost(productId: number): number | null {\n //Existing league will have a lockedInCost\n let lockedInObj: SavedProductOfferingConfigDetail | undefined = {} as SavedProductOfferingConfigDetail\n\n if (productOfferingConfig.value.details?.length) {\n lockedInObj = productOfferingConfig.value.details.find(\n (i: SavedProductOfferingConfigDetail) => i.productID === productId\n )\n }\n\n let retval: number | null = null\n if (lockedInObj) {\n retval = lockedInObj.lockedInCost\n }\n return retval\n }\n\n const uniform = computed((): DisplayableProduct[] => {\n const program = isCheer.value ? 'Cheer' : 'Players'\n\n //Hide if step has not been viewed on kit stepper.\n if (hideMe(program) || !availableProductGroups.value) return []\n const item = emptyDisplayableProduct()\n\n //Find the offering for this program type (cheer/sport).\n const uniform = selectedProductOfferings.value.find((p) => p.isCheer == isCheer.value)\n\n //Does 'Color Selection' exist. If yes, don't show offering.\n const colorSelectionExists = store.getters.productOfferings.selectedProductDetails.some((p) =>\n campColorSelectionProducts.includes(p.productID)\n )\n if (colorSelectionExists) {\n return []\n }\n\n //Build displayable item\n if (!uniform) return [item]\n item.cmsProductName = uniform.cmsProductName\n item.cost = uniform.cost\n item.productID = null\n item.isMultiPrice = uniform.productCostOffsetLabels ? uniform.productCostOffsetLabels.length > 0 : false\n if (item.isMultiPrice) {\n modifyForMultiPrice(item)\n }\n\n return [item]\n })\n\n const estimatedNumberOfCheerleaders = computed(() => productOfferingConfig.value.cheerEstimate ?? 0)\n\n const estimatedNumberOfPlayer = computed(() => productOfferingConfig.value.playerEstimate ?? 0)\n\n const startupOrderItems = computed((): DisplayableProduct[] => {\n const item = emptyDisplayableProduct()\n if (hideMe('Startup Order Items')) return []\n const allCosts = totalOfAllStartupOrderItems()\n if (allCosts === 0) return []\n\n item.cmsProductName = 'Starter Order Items'\n item.cost = allCosts / (estimatedNumberOfCheerleaders.value + estimatedNumberOfPlayer.value)\n return [item]\n })\n\n const participantProducts = computed((): DisplayableProduct[] => {\n //For camps only, don't show products until the user has selected a color.\n if (store.state.leagueAbstraction.programType == UpwardOpportunityTypes.CAMP) {\n if (store.state.productFlow.maxTouchedParticipantKit1Step == 1) {\n return []\n }\n }\n const products = createDisplayableProductArray()\n return products || []\n })\n\n const fees = computed((): DisplayableProduct[] => {\n const displayableFees = [] as DisplayableProduct[]\n\n const offs = categoriesForCurrentProgram.value\n if (!offs) return displayableFees\n\n const myFees = offs.find(\n (i: ProductOfferingCategoryInfo) => i.typeProductOfferingOptionID === 'UPWARDFEES'\n )\n\n if (!myFees || !myFees.products) return displayableFees\n\n myFees.products.forEach((p: ProductOfferingProductInfo) => {\n //const name = p.cmsProductName ?? ''\n if (hideMe(p.upwardProductID ?? '')) return\n const lic = lockedInCost(p.productID)\n displayableFees.push({\n cmsProductName: p.cmsProductName,\n cost: lic || p.productCost,\n costOffset: 0,\n typeParticipantID: myFees.typeParticipantID,\n category: myFees.description,\n categorySortOrder: 0,\n productID: p.productID,\n productSortOrder: 0,\n color: '',\n optionalText: '',\n skipSimpleTotal: false,\n hasGradeGender: false,\n isMultiPrice: false,\n isOptionalApparel: false,\n })\n })\n return displayableFees\n })\n\n const allProducts = computed(() => [\n ...fees.value,\n ...startupOrderItems.value,\n ...uniform.value,\n ...participantProducts.value,\n ])\n\n const participantSubtotal = computed(() => {\n if (!participantProducts.value) return\n const myFees = fees.value.reduce((t: number, p: DisplayableProduct) => t + p.cost, 0)\n const starupOrderTotal = startupOrderItems.value.reduce((t, p) => t + p.cost, 0)\n const uniformTotal = uniform.value.reduce((t, p) => t + p.cost, 0)\n const simpleProductTotal = participantProducts.value.reduce(\n (t, p) => (!p.skipSimpleTotal ? t + p.cost : t),\n 0\n )\n const mostExpensiveGradeGenderAward = participantProducts.value.reduce(\n (t, p) => (p.hasGradeGender && p.category == 'Awards' && t < p.cost ? p.cost : t),\n 0\n )\n return (\n Number(simpleProductTotal) +\n Number(myFees) +\n Number(starupOrderTotal) +\n Number(uniformTotal) +\n Number(mostExpensiveGradeGenderAward)\n )\n })\n\n const participantTotal = computed(() => Number(participantSubtotal.value) + Number(discount.value))\n\n function hideMe(step: string) {\n return !props.viewedSteps.includes(step)\n }\n\n function createDisplayableProductArray(): DisplayableProduct[] {\n let items: DisplayableProduct[] = []\n selectedProductDetailsForCurrentProgram.value.forEach(\n (selectedProduct: SavedProductOfferingConfigDetail) => {\n categoriesForCurrentProgram.value.forEach((cat: ProductOfferingCategoryInfo) => {\n cat.products?.forEach((offering: ProductOfferingProductInfo) => {\n if (offering.productID === selectedProduct.productID) {\n const item = buildDisplayableProduct(selectedProduct, cat, offering)\n if (!item) return\n items.push(cloneDeep(item))\n }\n })\n })\n }\n )\n return items.sort((a, b) => {\n if (a.categorySortOrder == b.categorySortOrder) {\n return a.productSortOrder > b.productSortOrder ? 1 : -1\n }\n return a.categorySortOrder > b.categorySortOrder ? 1 : -1\n })\n }\n\n const categoriesForCurrentProgram = computed(() => {\n if (selectedOfferingForCurrentProgram.value) {\n const catalogs = cloneDeep(productCatalogs.value)\n const info = catalogs.find((c) => c.id == selectedOfferingForCurrentProgram.value?.id)\n if (info && info.categories) {\n return info.categories.sort((a, b) => (a.sortOrder > b.sortOrder ? 1 : -1))\n } else {\n return [] as ProductOfferingCategoryInfo[]\n }\n }\n\n return [] as ProductOfferingCategoryInfo[]\n })\n\n const selectedProductDetailsForCurrentProgram = computed(() => {\n if (selectedOfferingForCurrentProgram.value) {\n return selectedProductDetails.value.filter(\n (p) => p.productOfferingID == selectedOfferingForCurrentProgram.value?.id\n )\n }\n\n return [] as SavedProductOfferingConfigDetail[]\n })\n\n const selectedOfferingForCurrentProgram = computed(() => {\n return selectedProductOfferings.value.find((o) => o.isCheer == isCheer.value)\n })\n\n function totalOfAllStartupOrderItems() {\n if (!availableStartupProducts.value) return 0\n return detailsStartupOrder.value.reduce(\n (acc: number, y: SavedProductOfferingConfigStartupOrderProduct) => {\n const product = availableStartupProducts.value.find(\n (p: StartupOrderProductInfo) => p.id === y.productID\n )\n const cost = product ? product.cost * y.quantity : 0\n return acc + cost\n },\n 0\n )\n }\n\n function modifyForAwards(item: DisplayableProduct) {\n item.optionalText = `${item.optionalText}º`\n item.skipSimpleTotal = true\n }\n\n function modifyForOptionalApparel(item: DisplayableProduct, cost: number) {\n item.cost = cost\n item.cmsProductName = `${item.cmsProductName} (Optional)`\n item.optionalText = `${item.optionalText}*`\n item.skipSimpleTotal = true\n }\n\n function modifyForMultiPrice(item: DisplayableProduct) {\n item.optionalText = `${item.optionalText}Ɨ`\n }\n\n function buildDisplayableProduct(\n selectedProduct: SavedProductOfferingConfigDetail,\n category: ProductOfferingCategoryInfo,\n offering: ProductOfferingProductInfo\n ) {\n const item = emptyDisplayableProduct()\n const cCount = coachCount()\n const pCount = participantCount()\n const liCost = lockedInCost(selectedProduct.productID)\n\n item.cmsProductName = offering.cmsProductName\n item.typeParticipantID = category.typeParticipantID\n item.category = category.description\n item.categorySortOrder = category.sortOrder\n item.productID = offering.productID\n item.productSortOrder = offering.sortOrder\n item.hasGradeGender = selectedProduct.gradesByGender != null\n item.cost = offering.productCost\n item.color = selectedProduct.typeColorID === 'N/A' ? '' : selectedProduct.typeColorID\n item.isOptionalApparel =\n item.category == 'Optional Apparel' && selectedProduct.typeProductOptionID == 'OPTIONAL'\n item.isMultiPrice = offering.productCostOffsetLabels\n ? offering.productCostOffsetLabels?.length > 0\n : false\n\n //override cost with lockedInCost\n if (liCost) item.cost = liCost\n\n //special treatment for optional items in optional apparel (let parents choose)\n if (item.isOptionalApparel) {\n modifyForOptionalApparel(item, selectedProduct.costToCharge)\n }\n\n //special treatment for awards that are gradeGender specific\n if (item.category == 'Awards' && item.hasGradeGender) {\n modifyForAwards(item)\n }\n\n //special treatment for products that have multiple possible prices but are not optional (let parents choose)\n if (item.isMultiPrice && !item.isOptionalApparel) {\n modifyForMultiPrice(item)\n }\n\n //coach products prices are divided by number of players\n if (category.typeParticipantID === 'COACH') {\n if (!cCount || !pCount) return\n item.cost = (item.cost * Number(cCount)) / pCount\n } else if (!category.typeParticipantID) {\n // the price is for the entire league so it needs to be divided by the total number of players\n item.cost = item.cost / pCount\n }\n return item\n }\n\n function coachCount() {\n return isCheer.value\n ? productOfferingConfig.value.cheerCoachEstimate\n : productOfferingConfig.value.sportCoachEstimate\n }\n\n function participantCount(): number {\n return isCheer.value\n ? productOfferingConfig.value.cheerEstimate\n : productOfferingConfig.value.playerEstimate\n }\n\n const show = computed(() => {\n if (allProducts.value.length > 0) return true\n return false\n })\n\n const participantType = computed(() => {\n return isCheer.value ? 'Cheerleader' : 'Player'\n })\n\n const isCheer = computed(() => (currentProgramType.value ? currentProgramType.value.isCheer : false))\n\n watch(\n () => props.currentProductConfigProgram,\n () => {\n if (!hasMultiplePrograms.value) return\n selectedProgram.value = props.currentProductConfigProgram\n }\n )\n\n watch(\n () => selectedProgram.value,\n () => {\n store.commit.productFlow.setCurrentTypeProgram({ program: selectedProgram.value })\n }\n )\n\n watch(\n () => allProducts.value,\n () => {\n if (!allProducts.value) return\n const modifiedProducts = allProducts.value.filter((p) => p.optionalText != '')\n let hasMultiple = false\n let hasOptional = false\n let hasAward = false\n\n modifiedProducts.forEach((p) => {\n if (p.hasGradeGender) {\n hasAward = true\n }\n if (p.isMultiPrice && !p.isOptionalApparel) {\n hasMultiple = true\n }\n if (p.isOptionalApparel) {\n hasOptional = true\n }\n })\n\n showOptionalProductText.value = hasOptional\n showMultiPriceWarning.value = hasMultiple\n showAwardWarning.value = hasAward\n }\n )\n\n function emptyDisplayableProduct() {\n return {\n cmsProductName: '',\n cost: 0,\n costOffset: 0,\n typeParticipantID: null,\n category: null,\n categorySortOrder: 0,\n productID: null,\n productSortOrder: 0,\n color: '',\n optionalText: '',\n hasGradeGender: false,\n skipSimpleTotal: false,\n isMultiPrice: false,\n } as DisplayableProduct\n }\n\n return {\n show,\n toolName,\n hasMultiplePrograms,\n sortedLeaguePrograms,\n selectedProgram,\n allProducts,\n participantType,\n discount,\n currency,\n cost,\n participantSubtotal,\n participantTotal,\n showOptionalProductText,\n showAwardWarning,\n showMultiPriceWarning,\n }\n },\n})\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!./RunningTotal.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!./RunningTotal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RunningTotal.vue?vue&type=template&id=d98b22f4&\"\nimport script from \"./RunningTotal.vue?vue&type=script&lang=ts&\"\nexport * from \"./RunningTotal.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('div',{staticClass:\"m-auto shadow p-5\",staticStyle:{\"max-width\":\"500px\"}},[_vm._m(0),_vm._m(1),_c('div',{staticClass:\"text-center\"},[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.click}},[_vm._v(\"Continue with US pricing displayed\")])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h6',{staticClass:\"d-flex align-items-center pb-4\"},[_c('i',{staticClass:\"fab fa-canadian-maple-leaf fa-2x text-danger mr-3\"}),_c('div',[_vm._v(\"Canada is where your sports ministry is located.\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pb-4\"},[_vm._v(\" All pricing included on MyUpward is U.S. pricing. Consult with your Regional Representative \"),_c('a',{attrs:{\"href\":\"mailto:sbeidler@upward.org\"}},[_vm._v(\"Scott Beidler\")]),_vm._v(\" for Canada pricing before placing an order. \")])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport store from '@/store'\nexport default defineComponent({\n name: 'CurrencyWarning',\n setup() {\n function click() {\n store.commit.partners.setHasAcceptedCurrencyWarning({ hasAccecpted: true })\n }\n return { click }\n },\n})\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!./CurrencyWarning.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!./CurrencyWarning.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CurrencyWarning.vue?vue&type=template&id=23931051&\"\nimport script from \"./CurrencyWarning.vue?vue&type=script&lang=ts&\"\nexport * from \"./CurrencyWarning.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","export const stepListNames = {\n programInfo: 'Program Information',\n startupOrderItems: 'Startup Order Items',\n players: 'Players',\n cheer: 'Cheer',\n}\n","/*\n * Logic that is shared across SetupSteppers (e.g. League, Camp)\n */\n\nimport { computed, onUnmounted, watch, ref } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\nimport { SavedProductOfferingConfigGenderGrade } from '@/GeneratedTypes/SavedProductOfferingConfigGenderGrade'\nimport { OfferingsByProgram } from '@/components/ProductFlow/models/OfferingsByProgram'\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\n\nimport store from '@/store'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport { ProdConfigTypes } from '@/lib/common/ProdConfigTypes'\nimport { stepListNames } from '@/components/ProductFlow/ProductSetupStepper/data'\nimport dayjs from 'dayjs'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\n\nexport interface StepComponent {\n name: string\n index: number\n stepTitle: string\n nextOfferingIndex: number\n isCheer: boolean\n}\n\nexport function setupStepperLogic() {\n const viewedSteps = computed(() => store.getters.productFlow.viewedSteps)\n const currentUpwardProgrmType = computed(() => store.getters.productFlow.currentProgramType)\n const logic = productFlowLogic()\n const stepComponents = ref([])\n\n /*\n * Monitor loading of child products.\n * Fetching child products is the last fetch when\n * loading the stepper.\n */\n watch(\n () => [\n store.getters.productOfferings.childProductsLoadedCount,\n store.getters.leagueAbstraction.leagueUpwardProgramTypeID,\n ],\n () => {\n const loadedCount = store.getters.productOfferings.childProductsLoadedCount\n const programs =\n logic.prodConfigType.value == ProdConfigTypes.ESTIMATE\n ? store.getters.productOfferings.offeringProgramTypes\n : store.getters.leagueAbstraction.leagueUpwardProgramTypeID\n let loadingComplete = false\n if (programs.length) {\n loadingComplete = loadedCount >= programs.length\n } else {\n loadingComplete = false\n }\n if (!store.getters.productOfferings.initialProductFlowLoadingComplete && loadingComplete) {\n setTimeout(\n () => store.commit.productOfferings.setInitialProductFlowLoadingComplete({ status: true }),\n 1000\n )\n }\n }\n )\n\n /*\n * Manage state of steps\n */\n\n function openAllSteps() {\n const steps = store.getters.productFlow.steps\n steps.forEach((step) => {\n store.commit.productFlow.addViewedStep({ step })\n })\n }\n\n const currentStep = computed({\n get() {\n return store.getters.productFlow.currentProductSetupStep\n },\n set(v: number) {\n store.commit.productFlow.setCurrentProductSetupStep({ step: v })\n },\n })\n\n function maxoutProductStepperTouchedSteps() {\n store.commit.productFlow.setMaxTouchedProductSetupStep({ step: viewedSteps.value.length + 1 })\n }\n\n /*\n * Warnings\n */\n\n const showCurrencyWarning = computed(() => {\n if (store.getters.partners.currencyWarningNeeded && logic.isNewProdConfig.value) {\n return !store.getters.partners.hasAcceptedCurrencyWarning\n }\n return false\n })\n\n /*\n * Initialization\n */\n\n async function initialize() {\n primeStepperValues()\n await primeProductOfferingStore()\n }\n\n function primeStepperValues() {\n logic.setProdConfigType({ type: ProdConfigTypes.LEAGUE })\n if (isNewProgram.value) {\n logic.setIsNewProdConfig({ isNew: true })\n } else {\n logic.setIsNewProdConfig({ isNew: false })\n }\n }\n\n async function primeProductOfferingStore() {\n await store.dispatch.programTypes.fetchAll({ force: true })\n\n if (logic.isNewProdConfig.value) {\n const item = cloneDeep(logic.leagueAbstraction.value.productOfferingConfig)\n\n //prime accounts\n const accounts = logic.leagueAbstraction.value.accounts ?? []\n if (accounts.length) {\n item.gradesByGender = accounts[0].grades as SavedProductOfferingConfigGenderGrade[]\n }\n //prime firstPracticeDate\n item.firstPracticeDateEstimate = logic.leagueAbstraction.value.productSeasonDate\n\n //prime typeLeagueID\n if (item.typeLeagueID == '') {\n item.typeLeagueID = store.getters.creationParameters.leagueType\n } else {\n item.typeLeagueID = logic.leagueAbstraction.value.typeLeagueID\n }\n //update productOffering store\n store.commit.productOfferings.setProductOfferingConfig({ item })\n setStepList()\n } else {\n const item = cloneDeep(logic.leagueAbstraction.value.productOfferingConfig)\n store.commit.productOfferings.setProductOfferingConfig({ item })\n await logic.fetchProductCatalog()\n setStepList()\n await openAllSteps()\n maxoutProductStepperTouchedSteps()\n }\n }\n\n async function initializeEstimate(prodConfigId: number) {\n primeStepperValuesEstimate(prodConfigId)\n await primeProductOfferingStoreEstimate(prodConfigId)\n }\n\n function primeStepperValuesEstimate(prodConfigId: number) {\n logic.setProdConfigType({ type: ProdConfigTypes.ESTIMATE })\n if (prodConfigId != 0) {\n logic.setIsNewProdConfig({ isNew: false })\n } else {\n logic.setIsNewProdConfig({ isNew: true })\n }\n }\n\n async function primeProductOfferingStoreEstimate(prodConfigId: number) {\n if (logic.isNewProdConfig.value) {\n if (!store.getters.productOfferings.productOfferingConfig.typeLeagueID) {\n const id = store.getters.creationParameters.leagueType ?? ''\n store.commit.productOfferings.setPOTypeLeagueID({ id })\n }\n //set default grade/gender combos\n if (store.getters.leagueAbstraction.currentItem.accounts) {\n const grades = store.getters.leagueAbstraction.currentItem.accounts[0].grades?.map((x) => ({\n typeProgramID: x.typeProgramID,\n gender: x.gender,\n typeGradeID: x.typeGradeID,\n })) as SavedProductOfferingConfigGenderGrade[]\n store.commit.productOfferings.setGradeGender({ gradeGenders: grades })\n }\n setStepList()\n } else {\n await store.dispatch.productOfferings.fetchProductOfferingConfig({\n configId: prodConfigId.toString(),\n })\n //put stub league in abstraction so things work correctly downstream\n await store.dispatch.leagues.beginCreating({\n name: store.getters.productOfferings.productOfferingConfig.name ?? '',\n typeLeagueID: store.getters.productOfferings.productOfferingConfig.typeLeagueID ?? '',\n publicDisplayName: store.getters.productOfferings.productOfferingConfig.accountNumber ?? '',\n partnerContact: null,\n addToCache: false,\n })\n await logic.fetchProductCatalog()\n setStepList()\n await openAllSteps()\n maxoutProductStepperTouchedSteps()\n }\n\n await store.dispatch.programTypes.fetchAll({ force: true })\n }\n\n function setStepList() {\n if (store.getters.leagueAbstraction.leagueUpwardProgramTypeID.length == 0) {\n return\n }\n\n const stepList: string[] = []\n stepComponents.value = []\n const isCamp = store.getters.leagueAbstraction.leagueUpwardProgramTypeID[0].isCamp\n const hasSystemFee = dayjs(\n logic.prodConfigType.value == ProdConfigTypes.ESTIMATE\n ? store.getters.productOfferings.productOfferingConfig.firstPracticeDateEstimate ?? undefined\n : store.getters.leagueAbstraction.currentItem.productSeasonDate ?? undefined\n ).isBefore('2024/07/01', 'day')\n\n let i = 1\n stepComponents.value.push({\n name: 'InfoStep',\n index: i++,\n } as StepComponent)\n stepList.push(stepListNames.programInfo)\n\n stepComponents.value.push({\n name: isCamp ? 'AccessFeeStep' : hasSystemFee ? 'UpwardAccessStep' : 'UpwardBaseFeeStep',\n index: i++,\n } as StepComponent)\n stepList.push('UPWARDACCESSFEE')\n\n if (hasSystemFee) {\n stepComponents.value.push({\n name: isCamp ? 'UpwardSystemStep' : 'UpwardSystemsStep',\n index: i++,\n } as StepComponent)\n stepList.push('UPWARDSYSTEMSFEE')\n }\n\n stepComponents.value.push({\n name: 'StarterItemsStep',\n index: i++,\n } as StepComponent)\n stepList.push(stepListNames.startupOrderItems)\n\n if (isCamp) {\n stepComponents.value.push({\n name: 'ParticipantKitStep',\n index: i,\n stepTitle: 'Camp Items',\n nextOfferingIndex: 1,\n isCheer: false,\n } as StepComponent)\n stepList.push(stepListNames.players)\n } else {\n store.getters.leagueAbstraction.leagueUpwardProgramTypeID.forEach((x) => {\n let currIndex = 0\n stepComponents.value.push({\n name: 'ParticipantKitStep',\n index: i++,\n stepTitle: prettyProgramName(x),\n nextOfferingIndex: currIndex + 1,\n isCheer: x.isCheer,\n } as StepComponent)\n stepList.push(x.isCheer ? stepListNames.cheer : stepListNames.players)\n currIndex++\n })\n }\n\n store.commit.productFlow.setStepList({ stepList: stepList })\n }\n\n watch(\n () => store.getters.productOfferings.productOfferingConfig.firstPracticeDateEstimate,\n (newDate, oldDate) => {\n if (\n //prevent infinte loop\n !dayjs(oldDate ?? undefined).isSame(dayjs(newDate ?? undefined)) &&\n logic.prodConfigType.value == ProdConfigTypes.ESTIMATE\n ) {\n setStepList()\n }\n }\n )\n\n function prettyProgramName(program: UpwardProgramTypeID) {\n if (program) {\n if (program.isCamp) {\n return 'Build Camp Kit'\n }\n return `Build ${program.shortDescription} Kit` ?? 'Kit'\n }\n return 'Kit'\n }\n\n const isNewProgram = computed(() => {\n const id = logic.leagueAbstraction.value.upwardLeagueID\n const detailsCount = logic.leagueAbstraction.value.productOfferingConfig.details?.length ?? 0\n if (id || detailsCount > 0) {\n return false\n }\n return true\n })\n\n /*\n * Calculate Programs\n */\n const availableProductGroups = computed(() => store.getters.productOfferings.availableProductGroups)\n\n function buildOfferingByProgram() {\n const cheer = [] as ProductOfferingInfo[]\n const sport = [] as ProductOfferingInfo[]\n availableProductGroups.value.forEach((a) => {\n if (a.isCheer) {\n cheer.push(a)\n } else {\n sport.push(a)\n }\n const offeringsByProgram: OfferingsByProgram[] = [\n ...(sport.length ? [{ isCheer: false, offerings: [...sport] }] : []),\n ...(cheer.length ? [{ isCheer: true, offerings: [...cheer] }] : []),\n ]\n store.commit.productOfferings.setOfferingByProgarm({ offeringsByProgram })\n })\n }\n\n const listOfPrograms = computed(() => store.getters.leagueAbstraction.leagueUpwardProgramTypeID)\n watch(\n () => listOfPrograms.value,\n () => {\n //set default program to sport\n if (listOfPrograms.value.length && !currentUpwardProgrmType.value) {\n const program = listOfPrograms.value.find((p) => !p.isCheer)\n if (program) {\n store.commit.productFlow.setCurrentTypeProgram({ program })\n }\n }\n },\n { immediate: true }\n )\n\n /*\n * Watchers\n */\n\n watch(\n () => availableProductGroups.value,\n () => {\n if (availableProductGroups.value && availableProductGroups.value.length) {\n buildOfferingByProgram()\n }\n },\n { immediate: true }\n )\n\n /*\n * Unmount\n */\n\n onUnmounted(() => {\n store.commit.productOfferings.clear()\n store.commit.productFlow.clear()\n })\n\n return {\n openAllSteps,\n currentStep,\n stepComponents,\n showCurrencyWarning,\n buildOfferingByProgram,\n viewedSteps,\n currentUpwardProgrmType,\n initialize,\n initializeEstimate,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, onBeforeMount, nextTick } from '@vue/composition-api'\n\nimport Stepper from '@/elements/Stepper.vue'\nimport InfoStep from '@/components/ProductFlow/ProductSetupStepper/InfoStep.vue'\nimport UpwardAccessStep from '@/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardAccessStep.vue'\nimport UpwardBaseFeeStep from '@/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardBaseFeeStep.vue'\nimport UpwardSystemsStep from '@/components/ProductFlow/ProductSetupStepper/LeagueOnlySteps/UpwardSystemsStep.vue'\nimport StarterItemsStep from '@/components/ProductFlow/ProductSetupStepper/StarterItemsStep.vue'\nimport ParticipantKitStep from '@/components/ProductFlow/ProductSetupStepper/ParticipantKitStep.vue'\nimport RunningTotal from '@/components/ProductFlow/ProductSetupStepper/RunningTotal.vue'\nimport Loading from '@/elements/Loading.vue'\nimport CurrencyWarning from '@/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue'\nimport { setupStepperLogic } from '@/components/ProductFlow/ProductSetupStepper/SetupStepperLogic'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'LeagueSetupStepper',\n props: {\n isEstimate: { type: Boolean, required: false, default: false },\n },\n components: {\n Stepper,\n InfoStep,\n UpwardAccessStep,\n UpwardBaseFeeStep,\n UpwardSystemsStep,\n StarterItemsStep,\n ParticipantKitStep,\n RunningTotal,\n Loading,\n CurrencyWarning,\n },\n setup(props, { root }) {\n const stepperLogic = setupStepperLogic()\n const configId = Number(root.$route.params.offeringConfigId ?? '0')\n\n onBeforeMount(async () => {\n stepperLogic.currentStep.value = 0\n if (props.isEstimate) {\n await stepperLogic.initializeEstimate(configId)\n } else {\n await stepperLogic.initialize()\n }\n await store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //get these cached up\n\n nextTick(() => (stepperLogic.currentStep.value = 1)) //trigger expansion of first step\n })\n\n const listOfPrograms = computed(() => store.getters.leagueAbstraction.leagueUpwardProgramTypeID)\n\n const loading = computed(() => {\n if (store.getters.productFlow.isNewProdConfig) {\n return stepperLogic.stepComponents.value.length == 0\n } else {\n return (\n !store.getters.productOfferings.initialProductFlowLoadingComplete &&\n stepperLogic.stepComponents.value.length == 0\n )\n }\n })\n\n return {\n listOfPrograms,\n loading,\n ...stepperLogic,\n }\n },\n})\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!./SetupStepperLeague.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!./SetupStepperLeague.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SetupStepperLeague.vue?vue&type=template&id=5d64601f&\"\nimport script from \"./SetupStepperLeague.vue?vue&type=script&lang=ts&\"\nexport * from \"./SetupStepperLeague.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref } from '@vue/composition-api'\n\nimport SetupStepperLeague from '@/components/ProductFlow/ProductSetupStepper/SetupStepperLeague.vue'\nimport Loading from '@/elements/Loading.vue'\nimport InfoModal from '@/components/InfoModal.vue'\n\nimport { EstimateInitializer } from '@/lib/support/models/EstimateInitializer/EstimateInitializer'\nimport { PromptToSavePayload } from '@/models/PromptToSavePayload'\nimport { SavedProductOfferingConfig } from '@/GeneratedTypes/SavedProductOfferingConfig'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'LeagueEstimator',\n props: {},\n components: { SetupStepperLeague, Loading, InfoModal },\n setup(props, { root }) {\n const logic = productFlowLogic()\n\n const isSavingEstimate = ref(false)\n const isStartingNewLeague = ref(false)\n\n const canBeSaved = computed(() => {\n if (store.getters.productFlow.isNewProdConfig) return true\n\n const lockEstimator = store.getters.productOfferings.selectedProductOfferings.some(\n (o) => o.active == false\n )\n return !lockEstimator\n })\n\n const showEstimateSavedModal = ref(false)\n\n async function saveEstimateClick() {\n await saveEstimate()\n showEstimateSavedModal.value = true\n }\n\n function closeEstimateSavedModal() {\n showEstimateSavedModal.value = false\n }\n\n async function saveEstimate(): Promise {\n isSavingEstimate.value = true\n try {\n if (!logic.productOfferingConfig.value.accountNumber) {\n store.commit.productOfferings.setAccountNumber({ id: logic.firstAccountNumber.value })\n }\n return await store.dispatch.productOfferings.upsertOfferings()\n store.commit.promptToSave.setIsDirty({ isDirty: false })\n } finally {\n isSavingEstimate.value = false\n }\n }\n\n const routeToCreateLeague = '/programs/league/setup/information'\n async function startLeague() {\n isStartingNewLeague.value = true\n store.commit.promptToSave.setIsDirty({ isDirty: false })\n try {\n const saveResult = await saveEstimate()\n if (saveResult) {\n const initializer: EstimateInitializer = {\n typeLeagueID: store.getters.productOfferings.productOfferingConfig.typeLeagueID ?? '',\n productOfferingConfig: saveResult,\n }\n const result = await store.dispatch.leagues.beginCreatingFromEstimate({ initializer })\n if (result) root.$router.push(routeToCreateLeague)\n }\n } finally {\n isStartingNewLeague.value = false\n }\n }\n\n const loadingComplete = computed(() => {\n const configId = store.getters.productOfferings.productOfferingConfig.id ?? null\n const loadComplete = store.getters.productOfferings.initialProductFlowLoadingComplete\n return configId ? loadComplete : true\n })\n\n root.$router.beforeResolve((route, redirect, next) => {\n store.dispatch.promptToSave.onNavigation({\n save: async () => {\n const result = await saveEstimate()\n return result ? true : false\n },\n continue: () => {\n next()\n },\n } as PromptToSavePayload)\n })\n return {\n canBeSaved,\n isSavingEstimate,\n isStartingNewLeague,\n saveEstimate,\n saveEstimateClick,\n startLeague,\n loadingComplete,\n showEstimateSavedModal,\n closeEstimateSavedModal,\n }\n },\n})\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!./Estimator.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!./Estimator.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Estimator.vue?vue&type=template&id=4975055c&\"\nimport script from \"./Estimator.vue?vue&type=script&lang=ts&\"\nexport * from \"./Estimator.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('div',{staticClass:\"d-flex flex-row flex-grow-1 bg-light-2\"},[_c('vertical-tabs',{attrs:{\"tabs\":_vm.tabs}}),_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, onMounted } from '@vue/composition-api'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Setup',\n components: {\n VerticalTabs,\n Loading,\n },\n setup(props, ctx) {\n const connect = computed(() => store.getters.connects.currentItem)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const baseRoute = computed(() => `/programs/connect/${routeId.value}setup`)\n\n const tabs = computed(() => {\n if (connect.value && !connect.value.canEdit) {\n return []\n }\n return [\n { text: 'Program Information', to: `/programs/connect/${routeId.value}setup/information` },\n { text: 'Director', to: `/programs/connect/${routeId.value}setup/leadership` },\n ]\n })\n\n onMounted(async () => {\n const archivedRoute = `${baseRoute.value}/archive`\n if (connect.value && !connect.value.canEdit && ctx.root.$route.path !== archivedRoute) {\n await ctx.root.$router.push(archivedRoute)\n }\n })\n\n return {\n tabs,\n }\n },\n})\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!./Setup.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!./Setup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Setup.vue?vue&type=template&id=666b2ffb&\"\nimport script from \"./Setup.vue?vue&type=script&lang=ts&\"\nexport * from \"./Setup.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.connect,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Connect Name\",\"required\":\"\"},model:{value:(_vm.connect.leagueName),callback:function ($$v) {_vm.$set(_vm.connect, \"leagueName\", $$v)},expression:\"connect.leagueName\"}}),_c('date-input',{attrs:{\"label\":\"Connect Date\",\"required\":\"\"},model:{value:(_vm.connect.connectDate),callback:function ($$v) {_vm.$set(_vm.connect, \"connectDate\", $$v)},expression:\"connect.connectDate\"}}),_c('number-input',{staticClass:\"mb-4\",attrs:{\"label\":\"Estimated # of Participants\",\"required\":\"\",\"show-spin-button\":false},model:{value:(_vm.connect.playerEstimate),callback:function ($$v) {_vm.$set(_vm.connect, \"playerEstimate\", $$v)},expression:\"connect.playerEstimate\"}}),_c('memo-input',{attrs:{\"label\":\"What are your ministry goals and objectives for this connect? This will help us serve you better as you pursue your ministry goals.\",\"required\":\"\"},model:{value:(_vm.connect.programMissionObjective),callback:function ($$v) {_vm.$set(_vm.connect, \"programMissionObjective\", $$v)},expression:\"connect.programMissionObjective\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.connect,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Program Information\")])])}]\n\nexport { render, staticRenderFns }","import { computed, ref, watch, onMounted, nextTick, SetupContext } from '@vue/composition-api'\nimport { Route, NavigationGuardNext } from 'vue-router'\nimport { cloneDeep } from 'lodash'\nimport { Connect } from '@/GeneratedTypes/Connect'\nimport { PromptToSavePayload } from '@/models/PromptToSavePayload'\nimport store from '@/store'\n\nexport function useConnectSetup(ctx: SetupContext) {\n function beforeRouteLeave(to: Route, from: Route, next: NavigationGuardNext) {\n store.dispatch.promptToSave.onNavigation({\n save: async () => {\n await save()\n },\n continue: () => {\n next()\n },\n } as PromptToSavePayload)\n }\n\n const connect = ref({} as Connect)\n const loading = ref(false)\n const initialLoadDone = ref(false)\n const nextRoute = ref('')\n const beforeSave = ref Promise)>(null)\n const afterUpdateExisting = ref void | Promise)>(null)\n const afterSaveNew = ref Promise)>(null)\n\n const storeConnect = computed(() => store.getters.connects.currentItem)\n\n async function saveAndContinue() {\n await save()\n continueNext()\n }\n\n onMounted(() => {\n nextTick(() => watch(connect.value, onConnectChange, { deep: true }))\n })\n\n //async created hack from https://stackoverflow.com/questions/64117116/how-can-i-use-async-await-in-the-vue-3-0-setup-function-using-typescript\n const run = (asyncFn: () => Promise) => asyncFn()\n run(async () => {\n connect.value = cloneDeep(storeConnect.value)\n\n if (!connect.value.typeLeagueID) {\n loading.value = true\n\n try {\n await store.dispatch.connects.loadFromCache()\n connect.value = cloneDeep(storeConnect.value)\n } catch (err) {\n ctx.root.$router.push('/programs/new/')\n } finally {\n loading.value = false\n }\n }\n\n initialLoadDone.value = true\n })\n\n async function save() {\n loading.value = true\n\n try {\n if (beforeSave.value) {\n await beforeSave.value()\n }\n if (connect.value.upwardLeagueID) {\n await updateExistingConnect()\n\n if (afterUpdateExisting.value) {\n await afterUpdateExisting.value()\n }\n } else {\n await saveNewConnect()\n\n if (afterSaveNew.value) {\n await afterSaveNew.value()\n }\n }\n\n store.commit.promptToSave.setIsDirty({ isDirty: false })\n } finally {\n loading.value = false\n }\n }\n\n function continueNext() {\n if (nextRoute.value) {\n ctx.root.$router.push(nextRoute.value)\n }\n }\n\n async function saveNewConnect() {\n if (connect.value.upwardLeagueID) {\n return\n }\n\n try {\n await store.dispatch.connects.cache({ item: connect.value })\n } catch (err) {\n throw err\n }\n }\n\n async function updateExistingConnect() {\n if (!connect.value.upwardLeagueID) {\n return\n }\n\n try {\n await store.dispatch.connects.update({ id: connect.value.upwardLeagueID, item: connect.value })\n } catch (err) {\n throw err\n }\n }\n\n function onConnectChange() {\n store.commit.promptToSave.setIsDirty({ isDirty: true })\n }\n\n return {\n connect,\n storeConnect,\n loading,\n nextRoute,\n afterSaveNew,\n afterUpdateExisting,\n initialLoadDone,\n save,\n saveAndContinue,\n beforeRouteLeave,\n }\n}\n","export enum ResourceFileType {\n pdf = 'pdf',\n zip = 'zip',\n jpg = 'jpg',\n png = 'png',\n ppt = 'ppt',\n mp4 = 'mp4',\n keynote = 'keynote',\n youtube = 'youtube',\n unknown = 'unknown',\n}\n\nexport enum ResourceFileTypeCategory {\n pdf = 'pdf',\n archive = 'archive',\n image = 'image',\n slides = 'slides',\n video = 'video',\n unknown = 'unknown',\n}\n\nexport default class resourceService {\n static getResourceFileType(url: string | null) {\n url = (url || '').toLowerCase()\n\n if (url.endsWith('.pdf')) {\n return ResourceFileType.pdf\n }\n\n if (url.endsWith('.zip')) {\n return ResourceFileType.zip\n }\n\n if (url.endsWith('.jpg') || url.endsWith('.jpeg')) {\n return ResourceFileType.jpg\n }\n\n if (url.endsWith('.png')) {\n return ResourceFileType.png\n }\n\n if (url.endsWith('.ppt') || url.endsWith('.pptx')) {\n return ResourceFileType.ppt\n }\n\n if (url.endsWith('.key')) {\n return ResourceFileType.keynote\n }\n\n if (url.endsWith('.mp4')) {\n return ResourceFileType.mp4\n }\n\n if (url.indexOf('youtu.be') >= 0 || url.indexOf('youtube.') >= 0) {\n return ResourceFileType.youtube\n }\n\n return ResourceFileType.unknown\n }\n\n static getResourceFileTypeCategory(resourceFileType: ResourceFileType) {\n switch (resourceFileType) {\n case ResourceFileType.jpg:\n case ResourceFileType.png:\n return ResourceFileTypeCategory.image\n case ResourceFileType.zip:\n return ResourceFileTypeCategory.archive\n case ResourceFileType.pdf:\n return ResourceFileTypeCategory.pdf\n case ResourceFileType.ppt:\n case ResourceFileType.keynote:\n return ResourceFileTypeCategory.slides\n case ResourceFileType.youtube:\n case ResourceFileType.mp4:\n return ResourceFileTypeCategory.video\n default:\n return ResourceFileTypeCategory.unknown\n }\n }\n\n static getResourceFileTypeIcon(resourceFileType: ResourceFileType) {\n switch (resourceFileType) {\n case ResourceFileType.jpg:\n case ResourceFileType.png:\n return 'fa fa-file-image'\n case ResourceFileType.zip:\n return 'fa fa-file-archive'\n case ResourceFileType.pdf:\n return 'fa fa-file-pdf'\n case ResourceFileType.ppt:\n return 'fa fa-file-powerpoint'\n case ResourceFileType.youtube:\n return 'fab fa-youtube'\n case ResourceFileType.mp4:\n return 'fa fa-file-video'\n case ResourceFileType.keynote:\n return 'fab fa-apple'\n default:\n return 'fa fa-file'\n }\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":_vm.buttonDisabled},on:{\"click\":_vm.saveAndContinue}},[_c('i',{staticClass:\"fa fa-check mr-2\"}),(_vm.loading)?_c('loading',{attrs:{\"is-small\":\"\"}}):((_vm.program && _vm.program.upwardLeagueID) || _vm.showSave)?[_vm._v(\" Save \")]:[_vm._v(\" Save & Continue \")]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n name: 'SaveContinueButton',\n components: {\n Loading,\n },\n props: {\n program: { type: Object as PropType, required: true },\n loading: { type: Boolean, required: true },\n showSave: { type: Boolean, required: false, default: false },\n disable: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n function saveAndContinue(args: any) {\n ctx.emit('click', args)\n }\n\n const buttonDisabled = computed(() => props.loading || props.disable)\n\n return {\n saveAndContinue,\n buttonDisabled,\n }\n },\n})\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!./SaveContinueButton.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!./SaveContinueButton.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SaveContinueButton.vue?vue&type=template&id=6b3e80fa&\"\nimport script from \"./SaveContinueButton.vue?vue&type=script&lang=ts&\"\nexport * from \"./SaveContinueButton.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, onMounted } from '@vue/composition-api'\nimport { useConnectSetup } from '@/composables/ConnectSetup'\nimport DateInput from '@/elements/DateInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport NumberInput from '@/elements/NumberInput.vue'\n\nimport Alert from '@/components/Alert.vue'\nimport FullBody from '@/components/FullBody.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\n\nexport default defineComponent({\n name: 'Information',\n components: {\n Alert,\n DateInput,\n FullBody,\n Loading,\n MemoInput,\n SelectInput,\n TextInput,\n SaveContinueButton,\n NumberInput,\n },\n setup(props, ctx) {\n const { connect, loading, nextRoute, saveAndContinue, beforeRouteLeave } = useConnectSetup(ctx)\n\n onMounted(() => {\n if (connect.value.upwardLeagueID) {\n nextRoute.value = `/programs/connect/${connect.value.upwardLeagueID}/setup/leadership`\n } else {\n nextRoute.value = '/programs/connect/setup/leadership'\n }\n })\n\n return {\n saveAndContinue,\n connect,\n loading,\n beforeRouteLeave,\n }\n },\n beforeRouteLeave(to, from, next) {\n this.beforeRouteLeave(to, from, next)\n },\n})\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!./Information.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!./Information.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Information.vue?vue&type=template&id=1e269e9a&\"\nimport script from \"./Information.vue?vue&type=script&lang=ts&\"\nexport * from \"./Information.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 (!_vm.loading)?_c('alert-cloak',{staticClass:\"px-0 py-3\",attrs:{\"type\":_vm.alertTypes,\"uncloak\":_vm.uncloak},scopedSlots:_vm._u([{key:\"head\",fn:function(){return [_c('h4',{staticClass:\"px-4 py-1\"},[(_vm.id)?[_vm._v(\" \"+_vm._s(_vm.currentConnect.leagueName)+\" \")]:[_vm._v(\" New Connect \")]],2)]},proxy:true}],null,false,1640662253)},[_c('horizontal-tabs',{staticClass:\"underline-split bg-light-1\",attrs:{\"tabs\":_vm.tabs}}),_c('full-body',[_c('router-view')],1)],1):_c('loading',{staticClass:\"m-4\"})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref } from '@vue/composition-api'\nimport FullBody from '@/components/FullBody.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport AlertCloak, { AlertCloakTypes } from '@/components/AlertCloak.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ConnectIndex',\n components: {\n FullBody,\n HorizontalTabs,\n Loading,\n AlertCloak,\n },\n setup(props, ctx) {\n const currentConnect = computed(() => store.getters.connects.currentItem)\n const alertTypes = ref([AlertCloakTypes.PARTNER])\n const uncloak = ref(false)\n\n const loading = ref(false)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const isDisabled = computed(() => !id.value || !canEdit.value)\n\n const canEdit = computed(() => store.getters.connects.currentItem.canEdit)\n\n const tabs = computed((): any[] => [\n { text: 'Setup', to: `/programs/connect/${routeId.value}setup` },\n {\n text: 'Ordering',\n to: `/programs/connect/${routeId.value}ordering`,\n disabled: isDisabled.value,\n },\n {\n text: 'Resources',\n to: `/programs/connect/${routeId.value}resources`,\n disabled: isDisabled.value,\n },\n ])\n\n //async created hack from https://stackoverflow.com/questions/64117116/how-can-i-use-async-await-in-the-vue-3-0-setup-function-using-typescript\n const run = (asyncFn: () => Promise) => asyncFn()\n\n //private async created() {\n run(async () => {\n if (ctx.root.$route.params.id) {\n loading.value = true\n await store.dispatch.connects.retrieveAndSetAsCurrent({ id: ctx.root.$route.params.id })\n loading.value = false\n } else {\n //new connect, skip notifications\n uncloak.value = true\n }\n })\n //end created\n\n return {\n loading,\n alertTypes,\n uncloak,\n id,\n currentConnect,\n tabs,\n }\n },\n})\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!./ConnectIndex.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!./ConnectIndex.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ConnectIndex.vue?vue&type=template&id=386ac1e4&\"\nimport script from \"./ConnectIndex.vue?vue&type=script&lang=ts&\"\nexport * from \"./ConnectIndex.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","// This is will match the expression \"UPW\" and any number of digits.\n// Without this change /league/participants which should be an invalid path would get redirected to\n// /league/participants/setup/information and your id would be participants which is incorrect.\nexport const idExpression = ':id(UPW\\\\d+|upw\\\\d+)?'\nexport const urIDExpression = ':id(UR\\\\d+|ur\\\\d+)?'\n","import { RouteConfig } from 'vue-router'\nconst OrdersIndex = () => import('@/views/Programs/Orders/OrdersIndex.vue')\nconst OrderLeague = () => import('@/views/Programs/Orders/OrderLeague.vue')\nconst Awards = () => import('@/views/Programs/Orders/Awards.vue')\nconst Returns = () => import('@/views/Programs/Orders/Returns.vue')\nconst ShippingTimelines = () => import('@/views/Programs/Orders/ShippingTimelines.vue')\nconst Exchanges = () => import('@/views/Programs/Orders/Exchanges.vue')\nconst OrderHistory = () => import('@/views/Programs/Orders/OrderHistory.vue')\nconst OrderFrame = () => import('@/views/Programs/Orders/OrderFrame.vue')\nconst OrderDetailPage = () => import('@/views/Programs/Orders/OrderDetailPage.vue')\n\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport { idExpression } from '@/lib/support/router/idHelper'\n\nexport default function (programType: string) {\n programType = programType ?? 'league'\n let orderType = OrderTypesEnum.startup\n if (programType === 'clinic') {\n orderType = OrderTypesEnum.clinic\n }\n return [\n {\n path: 'ordering',\n component: OrdersIndex,\n children: [\n {\n path: 'league/:step',\n component: OrderLeague,\n },\n {\n path: 'league',\n redirect: `/programs/${programType}/${idExpression}/ordering/league/0`,\n },\n {\n path: 'awards',\n component: Awards,\n },\n {\n path: 'exchanges',\n component: Exchanges,\n },\n {\n path: 'returns',\n component: Returns,\n },\n {\n path: 'shippingtimelines',\n component: ShippingTimelines,\n },\n {\n path: 'history',\n component: OrderHistory,\n },\n {\n path: 'history/order-detail/:orderid',\n component: OrderDetailPage,\n },\n {\n path: 'products/:orderType/:step',\n component: OrderFrame,\n },\n {\n path: 'products/',\n redirect: `/programs/${programType}/${idExpression}/ordering/products/${orderType}/select`,\n },\n {\n path: '/',\n redirect: `/programs/${programType}/${idExpression}/ordering/shippingtimelines`,\n },\n ],\n },\n ] as RouteConfig[]\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row m-3\",staticStyle:{\"display\":\"flex\",\"justify-content\":\"flex-end\"}},[_c('div',{staticClass:\"d-flex\"},[_c('ToggleSwitchInput',{attrs:{\"label\":\"Classic View\"},model:{value:(_vm.classicView),callback:function ($$v) {_vm.classicView=$$v},expression:\"classicView\"}})],1)]),(_vm.classicView)?[_c('div',{staticClass:\"resources d-flex flex-row flex-grow-1 bg-light-2\"},[(_vm.loading)?_c('loading',{staticClass:\"m-2\"}):_vm._e(),_c('vertical-tabs',{attrs:{\"tabs\":_vm.tabs}}),_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[(_vm.isAdCommissioner)?_c('AdCommissionerResources',{attrs:{\"role\":_vm.currentRole,\"league-list-item\":_vm.leagueListItem,\"marketingResources\":_vm.marketingResources}}):_c('RoleResources',{attrs:{\"role\":_vm.currentRole,\"league-list-item\":_vm.leagueListItem,\"resources\":_vm.currentRoleResources}})],1)],1)]:[_c('div',{staticClass:\"resources d-flex flex-row flex-grow-1\"},[(_vm.loading)?_c('loading',{staticClass:\"m-2\"}):_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"pt-5 pb-5 text-center\"},[_c('page-content',{attrs:{\"documentId\":\"resourceIntro\"}})],1)])]),(_vm.featuredResources.length > 0)?_c('div',{staticClass:\"row justify-content-md-center pl-3\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"text-center mb-4\"},[_c('fieldset',[_c('legend',[_vm._v(\"Featured\")])])]),_c('div',{staticClass:\"row justify-content-md-center\"},[_c('div',{staticClass:\"col-md-10\"},[_c('div',{staticClass:\"d-flex flex-row\"},[_c('div',{staticClass:\"row mb-2\"},_vm._l((_vm.featuredResources),function(resource){return _c('ResourceTile',{key:resource.resourceID,staticClass:\"col-md-6 col-xl-4\",attrs:{\"resource\":resource,\"programType\":_vm.leagueListItem.leagueTypeAbbreviation || '',\"roleDescription\":\"\"}})}),1)])])]),_c('div',{staticClass:\"featured-bottom mb-6\"})])]):_vm._e(),_c('ResourceList',{attrs:{\"role\":_vm.currentRole,\"league-list-item\":_vm.leagueListItem,\"resources\":_vm.allResources}})],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('div',{staticClass:\"row pt-3\"},[(!_vm.role)?_c('div',{staticClass:\"col\"},[_vm._v(\"Please select a role to view relevant resources.\")]):(!_vm.resources.length)?_c('div',{staticClass:\"col\"},[_vm._v(\"There are no resources for this role.\")]):(_vm.loading)?_c('div',{staticClass:\"col\"},[_c('loading')],1):[(_vm.showFilter)?_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-auto py-0\"},[_c('SelectInput',{attrs:{\"itemsList\":_vm.taxonomyFilterOptions,\"label\":\"Category\"},model:{value:(_vm.taxonomyTitleIndex),callback:function ($$v) {_vm.taxonomyTitleIndex=$$v},expression:\"taxonomyTitleIndex\"}})],1),_c('div',{staticClass:\"col-auto py-0\"},[_c('TextInput',{attrs:{\"label\":\"Keyword\"},model:{value:(_vm.searchKeyword),callback:function ($$v) {_vm.searchKeyword=$$v},expression:\"searchKeyword\"}})],1),_c('div',{staticClass:\"col-auto\"},[_c('div',{staticClass:\"mt-3\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.doSearch}},[_vm._v(\"Filter Resources\")])])])])]):_vm._e(),_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"row\"},[(_vm.showFilter && _vm.searchDesciption)?_c('div',{staticClass:\"col-12 pt-0\"},[_c('div',{staticClass:\"alert alert-info\"},[_vm._v(\" \"+_vm._s(_vm.searchDesciption)+\" \")])]):_vm._e(),_vm._l((_vm.displayedResources),function(resource){return _c('ResourceTile',{key:resource.resourceID,staticClass:\"col-md-6 col-xl-4\",attrs:{\"resource\":resource,\"programType\":_vm.leagueListItem.leagueTypeAbbreviation || '',\"roleDescription\":_vm.role.description}})})],2)])]],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',{staticClass:\"clickable no-gutters row\",on:{\"click\":_vm.downloadResource}},[_c('div',{staticClass:\"col-auto\"},[_c('i',{staticClass:\"fa-4x pr-2\",class:_vm.iconCssClass})]),_c('div',{staticClass:\"col resource-description-wrapper\"},[_vm._v(\" \"+_vm._s(_vm.resource.title)+\" \"),_c('p',{staticClass:\"text-muted\"},[_c('small',{domProps:{\"innerHTML\":_vm._s(_vm.resource.shortDescriptionContent)}})])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { ResourceItem } from '@/models/Program/ResourceItem'\nimport axios from 'axios'\n\nconst url = 'https://resourceusageapiservices.azurewebsites.net/api/resourceusage'\n\nconst postResourceUsage = async (resourceItem: ResourceItem) => {\n await axios.post(url, resourceItem)\n}\n\nexport default {\n postResourceUsage,\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { Resource } from '@/models/Program/Resource'\nimport resourceUsageClient from '@/clients/resourceUsageClient'\nimport { ResourceItem } from '@/models/Program/ResourceItem'\nimport resourceService from '@/services/resourceService'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ResourceTile',\n components: {\n VerticalTabs,\n Loading,\n TextInput,\n SelectInput,\n },\n props: {\n resource: { type: Object as PropType, required: true },\n programType: { type: String, required: true },\n roleDescription: { type: String, required: true },\n },\n setup(props) {\n const firstAccountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const userEmail = computed(() => store.getters.authorization.email)\n\n const iconCssClass = computed(() => {\n const fileType = resourceService.getResourceFileType(props.resource.resourceUrl)\n return resourceService.getResourceFileTypeIcon(fileType)\n })\n\n function downloadResource() {\n const resourceItem: ResourceItem = {\n accountNumber: firstAccountNumber.value,\n resourceID: props.resource.resourceID,\n resourceTitle: props.resource.title,\n programType: props.programType,\n userID: userEmail.value,\n role: props.roleDescription,\n pageAccessedFrom: window.location.href,\n }\n\n resourceUsageClient.postResourceUsage(resourceItem)\n\n if (props.resource.mediaUrl) {\n window.open(props.resource.mediaUrl, '_blank')\n }\n\n if (props.resource.resourceUrl) {\n window.open(props.resource.resourceUrl, '_blank')\n }\n }\n\n return {\n downloadResource,\n iconCssClass,\n }\n },\n})\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!./ResourceTile.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!./ResourceTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResourceTile.vue?vue&type=template&id=9c368052&scoped=true&\"\nimport script from \"./ResourceTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResourceTile.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ResourceTile.vue?vue&type=style&index=0&id=9c368052&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 \"9c368052\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { Resource } from '@/models/Program/Resource'\nimport { TypeLeagueVolunteerRole } from '@/GeneratedTypes/TypeLeagueVolunteerRole'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport ResourceTile from './ResourceTile.vue'\n\nconst allCategoriesLabel = 'All'\n\ntype Taxonomy = {\n title: string\n resources: Resource[]\n}\n\nexport default defineComponent({\n name: 'RoleResources',\n components: {\n VerticalTabs,\n Loading,\n TextInput,\n SelectInput,\n ResourceTile,\n },\n props: {\n resources: { type: Array as PropType, required: true },\n role: { type: Object as PropType, required: false, default: null },\n leagueListItem: { type: Object as PropType, required: false, default: null },\n },\n setup(props) {\n const loading = ref(false)\n const taxonomyTitleIndex = ref(0)\n const searchKeyword = ref('')\n const committedTaxonomyTitle = ref(allCategoriesLabel)\n const committedSearchKeyword = ref('')\n\n /** A human friendly sentence about the current committed search filters */\n const searchDesciption = computed(() => {\n const isAllCategories = committedTaxonomyTitle.value === allCategoriesLabel\n const allText = isAllCategories ? 'all' : ''\n const title = isAllCategories ? '' : committedTaxonomyTitle.value\n\n if (!displayedResources.value.length) {\n return `There are no ${props.role?.description} resources matching those filters.`\n }\n\n if (title && committedSearchKeyword.value) {\n return `Here are ${allText} ${props.role?.description} resources for \"${title}\" containing the keyword \"${committedSearchKeyword.value}\":`\n }\n\n if (committedSearchKeyword.value) {\n return `Here are ${allText} ${props.role?.description} resources containing the keyword \"${committedSearchKeyword.value}\":`\n }\n\n if (title) {\n return `Here are ${allText} ${props.role?.description} resources for \"${title}\":`\n }\n\n if (isAllCategories) {\n return `Here are ${allText} ${props.role?.description} resources:`\n }\n\n return ''\n })\n\n /** Should the filter controls be shown and used? */\n const showFilter = computed(() => taxonomyTitles.value.length > 1)\n\n const taxonomies = computed(() => {\n const taxonomies: { [key: string]: Resource[] } = {}\n\n for (const resource of props.resources) {\n if (resource.leagueDirectoryTaxonomy && Array.isArray(resource.leagueDirectoryTaxonomy)) {\n for (const taxonomyTitle of resource.leagueDirectoryTaxonomy) {\n if (!taxonomies[taxonomyTitle]) {\n taxonomies[taxonomyTitle] = []\n }\n\n taxonomies[taxonomyTitle].push(resource)\n }\n }\n }\n\n return taxonomies\n })\n\n const taxonomyTitles = computed(() => Object.keys(taxonomies.value).sort())\n\n const taxonomyFilterOptions = computed(() => [allCategoriesLabel, ...taxonomyTitles.value])\n\n /** Gets the taxonomies to display as an array. They are to be displayed\n * based on the category filter.\n */\n const taxonomiesToDisplay = computed(() => {\n const isAllCategories = committedTaxonomyTitle.value === allCategoriesLabel\n\n if (!isAllCategories && showFilter.value && committedTaxonomyTitle.value) {\n return [\n {\n title: committedTaxonomyTitle.value,\n resources: taxonomies.value[committedTaxonomyTitle.value],\n } as Taxonomy,\n ]\n }\n\n let asArray = [] as Taxonomy[]\n\n for (const title of taxonomyTitles.value) {\n asArray.push({\n title,\n resources: taxonomies.value[title],\n })\n }\n\n return asArray\n })\n\n /** This should return the resources that are display on the page.\n * Resources are displayed if the filters are such that the resource matches.\n * If no filter controls are shown, then all resources are shown.\n */\n const displayedResources = computed(() => {\n let resources = taxonomiesToDisplay.value.map((t) => t.resources).flat()\n\n if (showFilter.value && committedSearchKeyword.value) {\n resources = resources.filter(\n (r) =>\n r.title.toLowerCase().includes(committedSearchKeyword.value) ||\n (r.shortDescriptionContent || '').toLowerCase().includes(committedSearchKeyword.value)\n )\n }\n\n // Get the unique resource\n return resources.filter((e, i) => resources.findIndex((a) => a.resourceID === e.resourceID) === i)\n })\n\n /** Event handler for the filter submit button.\n * This should update the displayed resources based on the filter values.\n */\n function doSearch() {\n committedSearchKeyword.value = searchKeyword.value.trim().toLowerCase()\n committedTaxonomyTitle.value = taxonomyFilterOptions.value[taxonomyTitleIndex.value] || ''\n }\n\n watch(\n () => props.role,\n () => {\n // Reset the filters\n taxonomyTitleIndex.value = 0\n searchKeyword.value = ''\n committedSearchKeyword.value = ''\n committedTaxonomyTitle.value = allCategoriesLabel\n }\n )\n\n return {\n loading,\n showFilter,\n taxonomyTitleIndex,\n taxonomyFilterOptions,\n searchKeyword,\n searchDesciption,\n displayedResources,\n doSearch,\n }\n },\n})\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!./RoleResources.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!./RoleResources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RoleResources.vue?vue&type=template&id=e1366948&\"\nimport script from \"./RoleResources.vue?vue&type=script&lang=ts&\"\nexport * from \"./RoleResources.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 (_vm.resources.length > 0)?_c('div',[(_vm.loading)?_c('div',{staticClass:\"col\"},[_c('loading')],1):[_c('div',{staticClass:\"row justify-content-md-center mb-3\"},[_c('div',{staticClass:\"col-md-8 p-0 m-0 pr-3\"},[_c('TextInput',{attrs:{\"prependIcon\":\"search\",\"placeholder\":\"Type to filter by keywords...\"},model:{value:(_vm.searchKeyword),callback:function ($$v) {_vm.searchKeyword=$$v},expression:\"searchKeyword\"}})],1),_c('div',{staticClass:\"col-md-2 p-0 m-0\"},[_c('DropDownMultiSelect',{attrs:{\"label\":\"Resource Types\",\"items\":_vm.resourceTypes},model:{value:(_vm.selectedResourceTypes),callback:function ($$v) {_vm.selectedResourceTypes=$$v},expression:\"selectedResourceTypes\"}})],1)]),_c('div',{staticClass:\"resources d-flex flex-row flex-grow-1 bg-light-2\"},[_c('div',{staticClass:\"vertical-nav-tabs\"},[_vm._m(0),_c('h5',[_vm._v(\"Categories\")]),_c('ul',{staticClass:\"nav flex-column pl-0\"},[(_vm.taxonomyFilterOptions.length === 0)?_c('li',{staticClass:\"nav-item\",staticStyle:{\"width\":\"190px\"}}):_vm._e(),_vm._l((_vm.taxonomyFilterOptions),function(category,index){return _c('li',{key:index,staticClass:\"nav-item\"},[_c('ToggleSwitchInput',{attrs:{\"label\":(category + \" (\" + (_vm.categoryCount(category)) + \")\"),\"value\":_vm.categorySelected(category)},on:{\"change\":function () { return _vm.toggleCategory(category); }}})],1)})],2)]),_c('div',{staticClass:\"bg-white flex-grow-1 p-4\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 mb-0\"},[(_vm.resources.length === _vm.displayedResources.length)?_c('div',{staticClass:\"alert alert-warning mb-0\"},[_c('i',{staticClass:\"fa fa-lightbulb mr-1\"}),_vm._v(\" Currently displaying \"),_c('strong',[_vm._v(\"all \"+_vm._s(_vm.displayedResources.length))]),_vm._v(\" resources. Filter by keywords or categories to refine your results. \")]):_c('div',{staticClass:\"alert alert-info mb-0\"},[_vm._v(\" \"+_vm._s(_vm.searchDesciption)+\" \")])]),_vm._l((_vm.displayedResources),function(resource){return _c('ResourceTile',{key:resource.resourceID,staticClass:\"col-md-6 col-xl-4\",attrs:{\"resource\":resource,\"programType\":_vm.leagueListItem.leagueTypeAbbreviation || '',\"roleDescription\":\"\"}})})],2)])])]],2):_vm._e()}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',[_c('i',{staticClass:\"fa fa-chevron-right p-2\"})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"custom-control custom-switch\",attrs:{\"role\":\"button\"}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],staticClass:\"custom-control-input\",attrs:{\"type\":\"checkbox\",\"required\":_vm.required,\"disabled\":!_vm.enabled,\"id\":_vm.elementId,\"role\":\"button\"},domProps:{\"checked\":Array.isArray(_vm.internalValue)?_vm._i(_vm.internalValue,null)>-1:(_vm.internalValue)},on:{\"change\":[function($event){var $$a=_vm.internalValue,$$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.internalValue=$$a.concat([$$v]))}else{$$i>-1&&(_vm.internalValue=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.internalValue=$$c}},_vm.handleChange]}}),_c('input-label',{attrs:{\"label-class\":\"custom-control-label font-weight-normal\",\"input-id\":_vm.elementId,\"required\":_vm.required,\"label\":_vm.label,\"role\":\"button\"}})],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\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport uuid from 'uuid'\n\nexport default defineComponent({\n name: 'ToggleSwitchInput',\n components: {\n InputLabel,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n value: { type: Boolean, required: true },\n enabled: { type: Boolean, required: false, default: true },\n },\n setup(props, ctx) {\n const guid = uuid.v4()\n\n const internalValue = ref(props.value)\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n const elementId = computed(() => `toggleswitch-${guid}`)\n\n return {\n internalValue,\n handleChange,\n elementId,\n }\n },\n})\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!./ToggleSwitchInput.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!./ToggleSwitchInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ToggleSwitchInput.vue?vue&type=template&id=577a7bc1&\"\nimport script from \"./ToggleSwitchInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./ToggleSwitchInput.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { Resource } from '@/models/Program/Resource'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport ResourceTile from './ResourceTile.vue'\nimport ToggleSwitchInput from '@/elements/ToggleSwitchInput.vue'\nimport resourceService, { ResourceFileTypeCategory } from '@/services/resourceService'\nimport DropDownMultiSelect from '@/components/DropDownMultiSelect.vue'\nimport { MultiSelectValue } from '@/lib/support/components/MultiSelect/MultiSelectValue'\n\nexport default defineComponent({\n name: 'ResourceList',\n components: {\n VerticalTabs,\n Loading,\n TextInput,\n SelectInput,\n ResourceTile,\n ToggleSwitchInput,\n DropDownMultiSelect,\n },\n props: {\n resources: { type: Array as PropType, required: true },\n leagueListItem: { type: Object as PropType, required: false, default: null },\n },\n setup(props) {\n const loading = ref(false)\n const searchKeyword = ref('')\n\n /** A human friendly sentence about the current search filters */\n const searchDesciption = computed(() => {\n if (!searchKeyword.value) return `Showing ${displayedResources.value.length} resources.`\n return `Showing ${displayedResources.value.length} resources matching the term \"${searchKeyword.value}\".`\n })\n\n const taxonomies = computed(() => {\n const retval: { [key: string]: Resource[] } = {}\n for (const resource of props.resources) {\n if (resource.leagueDirectoryTaxonomy && Array.isArray(resource.leagueDirectoryTaxonomy)) {\n for (const taxonomyTitle of resource.leagueDirectoryTaxonomy) {\n if (!retval[taxonomyTitle]) {\n retval[taxonomyTitle] = []\n }\n\n retval[taxonomyTitle].push(resource)\n }\n }\n }\n return retval\n })\n\n const taxonomyTitles = computed(() => Object.keys(taxonomies.value).sort())\n\n const taxonomyFilterOptions = computed(() => [...taxonomyTitles.value])\n\n const selectedCategories = ref([])\n\n function toggleCategory(category: string) {\n if (!selectedCategories.value.includes(category)) {\n selectedCategories.value = [...selectedCategories.value, category]\n } else {\n selectedCategories.value = selectedCategories.value.filter((c) => c !== category)\n }\n }\n\n function categorySelected(category: string) {\n return selectedCategories.value.includes(category)\n }\n\n function categoryCount(category: string) {\n return taxonomies.value[category]?.length ?? 0\n }\n\n const selectedResourceTypes = ref([])\n /** This should return the resources that are display on the page.\n * Resources are displayed if the filters are such that the resource matches.\n * If no filter controls are shown, then all resources are shown.\n */\n const displayedResources = computed(() => {\n const filter = (r: Resource): boolean => {\n const resourceCategories = Array.isArray(r.leagueDirectoryTaxonomy)\n ? r.leagueDirectoryTaxonomy\n : ([] as string[])\n return (\n selectedCategories.value.length === 0 ||\n selectedCategories.value.some((c) => resourceCategories.includes(c))\n )\n }\n let myResources = props.resources.filter(filter)\n\n if (searchKeyword.value) {\n myResources = myResources.filter(\n (r) =>\n r.title.toLowerCase().includes(searchKeyword.value.toLowerCase()) ||\n (r.shortDescriptionContent || '').toLowerCase().includes(searchKeyword.value.toLowerCase())\n )\n }\n\n if (selectedResourceTypes.value.length > 0) {\n myResources = myResources.filter((r) => {\n const resourceType = resourceService.getResourceFileType(r.resourceUrl)\n return (\n selectedResourceTypes.value.filter((t) => {\n return t.id === resourceService.getResourceFileTypeCategory(resourceType)\n }).length > 0\n )\n })\n }\n myResources.sort((a, b) => a.title.localeCompare(b.title))\n\n // Get the unique resource\n return myResources.filter((e, i) => myResources.findIndex((a) => a.resourceID === e.resourceID) === i)\n })\n\n const resourceTypes = computed(() =>\n [\n ...new Set(\n props.resources.map((r) => {\n const t = resourceService.getResourceFileType(r.resourceUrl)\n const word = resourceService.getResourceFileTypeCategory(t)\n return word\n })\n ),\n ]\n .sort()\n .map((w: ResourceFileTypeCategory) => {\n const cat = { id: w }\n switch (w) {\n case ResourceFileTypeCategory.archive:\n return { ...cat, description: 'Archives' }\n case ResourceFileTypeCategory.image:\n return { ...cat, description: 'Images' }\n case ResourceFileTypeCategory.pdf:\n return { ...cat, description: 'PDFs' }\n case ResourceFileTypeCategory.slides:\n return { ...cat, description: 'Slides' }\n case ResourceFileTypeCategory.video:\n return { ...cat, description: 'Videos' }\n case ResourceFileTypeCategory.unknown:\n default:\n return null\n }\n })\n .filter((w) => w !== null)\n )\n\n return {\n loading,\n searchKeyword,\n selectedResourceTypes,\n resourceTypes,\n taxonomyFilterOptions,\n displayedResources,\n searchDesciption,\n categoryCount,\n categorySelected,\n toggleCategory,\n }\n },\n})\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!./ResourceList.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!./ResourceList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResourceList.vue?vue&type=template&id=0ad85d0c&scoped=true&\"\nimport script from \"./ResourceList.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResourceList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ResourceList.vue?vue&type=style&index=0&id=0ad85d0c&scoped=true&lang=scss&\"\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 \"0ad85d0c\",\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('div',{staticClass:\"row pt-3\"},[(!_vm.role)?_c('div',{staticClass:\"col\"},[_vm._v(\"Please select a role to view relevant resources.\")]):(!_vm.marketingResources.length)?_c('div',{staticClass:\"col\"},[_vm._v(\"There are no resources for this role.\")]):(_vm.loading)?_c('div',{staticClass:\"col\"},[_c('loading')],1):[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-auto py-0\"},[_c('SelectInput',{attrs:{\"itemsList\":_vm.fileTypeCategories,\"textPropertyName\":\"text\",\"valuePropertyName\":\"value\",\"label\":\"File Type\",\"showBlankItem\":\"\"},model:{value:(_vm.fileTypeCategory),callback:function ($$v) {_vm.fileTypeCategory=$$v},expression:\"fileTypeCategory\"}})],1),_c('div',{staticClass:\"col-auto py-0\"},[_c('TextInput',{attrs:{\"label\":\"Keyword\"},model:{value:(_vm.searchKeyword),callback:function ($$v) {_vm.searchKeyword=$$v},expression:\"searchKeyword\"}})],1),_c('div',{staticClass:\"col-auto\"},[_c('div',{staticClass:\"mt-3\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.doSearch}},[_vm._v(\"Show Resources\")])])]),_vm._m(0)])]),(_vm.hasSearchCriteria)?_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"row\"},[(_vm.searchDesciption)?_c('div',{staticClass:\"col-12 pt-0\"},[_c('div',{staticClass:\"alert alert-info\"},[_vm._v(\" \"+_vm._s(_vm.searchDesciption)+\" \")])]):_vm._e(),_vm._l((_vm.displayedResources),function(resource){return _c('ResourceTile',{key:resource.title,staticClass:\"col-md-6 col-xl-4\",attrs:{\"resource\":resource,\"programType\":_vm.leagueListItem.leagueTypeAbbreviation || '',\"roleDescription\":_vm.role.description}})})],2)]):_c('div',{staticClass:\"col-12 pt-0\"},[_c('div',{staticClass:\"alert alert-info\"},[_vm._v(\" Please select a category and/or a search keyword to view the applicable resources. \")])])]],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col\"},[_c('div',[_vm._v(\" View additional resources on\"),_c('br'),_c('a',{attrs:{\"href\":\"https://www.upward.org/advertising/\",\"target\":\"_blank\"}},[_vm._v(\"Upward.org/advertising\")])])])}]\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\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { Resource } from '@/models/Program/Resource'\nimport { TypeLeagueVolunteerRole } from '@/GeneratedTypes/TypeLeagueVolunteerRole'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport ResourceTile from './ResourceTile.vue'\nimport resourceService, { ResourceFileType, ResourceFileTypeCategory } from '@/services/resourceService'\n\nexport default defineComponent({\n name: 'AdCommissionerResources',\n components: {\n VerticalTabs,\n Loading,\n TextInput,\n SelectInput,\n ResourceTile,\n },\n props: {\n marketingResources: { type: Array as PropType, required: true },\n role: { type: Object as PropType, required: false, default: null },\n leagueListItem: { type: Object as PropType, required: false, default: null },\n },\n setup(props) {\n const loading = ref(false)\n const fileTypeCategory = ref(null)\n const searchKeyword = ref('')\n const committedFileTypeCategory = ref(null)\n const committedSearchKeyword = ref('')\n\n /** A human friendly sentence about the current committed search filters */\n const searchDesciption = computed(() => {\n if (committedFileTypeCategory.value && committedSearchKeyword.value) {\n return `Here are ${props.role?.description} ${committedFileTypeCategory.value} resources containing the keyword \"${committedSearchKeyword.value}\":`\n }\n\n if (committedSearchKeyword.value) {\n return `Here are ${props.role?.description} resources containing the keyword \"${committedSearchKeyword.value}\":`\n }\n\n if (committedFileTypeCategory.value) {\n return `Here are ${props.role?.description} ${committedFileTypeCategory.value} resources:`\n }\n\n return ''\n })\n\n /** The options for the file type filter */\n const fileTypeCategories = computed(() => {\n const categories = [] as { value: ResourceFileTypeCategory; text: string }[]\n\n if (resourcesWithType.value.findIndex((r) => r.category === ResourceFileTypeCategory.pdf) >= 0) {\n categories.push({\n value: ResourceFileTypeCategory.pdf,\n text: 'PDF',\n })\n }\n\n if (resourcesWithType.value.findIndex((r) => r.category === ResourceFileTypeCategory.archive) >= 0) {\n categories.push({\n value: ResourceFileTypeCategory.archive,\n text: 'Archive',\n })\n }\n\n if (resourcesWithType.value.findIndex((r) => r.category === ResourceFileTypeCategory.image) >= 0) {\n categories.push({\n value: ResourceFileTypeCategory.image,\n text: 'Image',\n })\n }\n\n if (resourcesWithType.value.findIndex((r) => r.category === ResourceFileTypeCategory.slides) >= 0) {\n categories.push({\n value: ResourceFileTypeCategory.slides,\n text: 'Slides',\n })\n }\n\n if (resourcesWithType.value.findIndex((r) => r.category === ResourceFileTypeCategory.video) >= 0) {\n categories.push({\n value: ResourceFileTypeCategory.video,\n text: 'Video',\n })\n }\n\n return categories\n })\n\n /** All of the resources with the calculated file type and file type category */\n const resourcesWithType = computed((): {\n resource: Resource\n type: ResourceFileType\n category: ResourceFileTypeCategory\n }[] => {\n return props.marketingResources.map((r) => {\n const fileType = resourceService.getResourceFileType(r.resourceUrl)\n\n return {\n resource: r,\n type: fileType,\n category: resourceService.getResourceFileTypeCategory(fileType),\n }\n })\n })\n\n /** Has the user entered any search criteria? */\n const hasSearchCriteria = computed(\n () => committedSearchKeyword.value.length > 0 || committedFileTypeCategory.value !== null\n )\n\n /** This should return the resources that are display on the page.\n * Resources are displayed if the filters are such that the resource matches\n */\n const displayedResources = computed(() => {\n if (!hasSearchCriteria.value) {\n return []\n }\n\n let resources = resourcesWithType.value\n\n if (committedSearchKeyword.value) {\n resources = resources.filter(\n (r) =>\n r.resource.title.toLowerCase().includes(committedSearchKeyword.value) ||\n (r.resource.shortDescriptionContent || '').toLowerCase().includes(committedSearchKeyword.value)\n )\n }\n\n if (committedFileTypeCategory.value) {\n resources = resources.filter((r) => r.category === committedFileTypeCategory.value)\n }\n\n // Display unique resources\n return resources\n .map((r) => r.resource)\n .filter((e, i, arr) => arr.findIndex((a) => a.resourceID === e.resourceID) === i)\n })\n\n /** Event handler for the filter submit button.\n * This should update the displayed resources based on the filter values.\n */\n function doSearch() {\n committedSearchKeyword.value = searchKeyword.value.trim().toLowerCase()\n committedFileTypeCategory.value = fileTypeCategory.value\n }\n\n watch(\n () => props.role,\n () => {\n // Reset the filters\n fileTypeCategory.value = null\n searchKeyword.value = ''\n committedSearchKeyword.value = ''\n committedFileTypeCategory.value = null\n }\n )\n\n return {\n loading,\n fileTypeCategory,\n fileTypeCategories,\n searchKeyword,\n hasSearchCriteria,\n searchDesciption,\n displayedResources,\n doSearch,\n }\n },\n})\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!./AdCommissionerResources.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!./AdCommissionerResources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdCommissionerResources.vue?vue&type=template&id=2035f4e6&\"\nimport script from \"./AdCommissionerResources.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdCommissionerResources.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch, onMounted, WritableComputedRef } from '@vue/composition-api'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport RoleResources from '@/views/Programs/Resources/RoleResources.vue'\nimport ResourceList from '@/views/Programs/Resources/ResourceList.vue'\nimport AdCommissionerResources from '@/views/Programs/Resources/AdCommissionerResources.vue'\nimport { Location } from 'vue-router'\nimport programsClient from '@/clients/programsClient'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport contentManagementClient from '@/clients/contentManagementClient'\nimport { Resource } from '@/models/Program/Resource'\nimport { TypeLeagueVolunteerRole } from '@/GeneratedTypes/TypeLeagueVolunteerRole'\nimport Loading from '@/elements/Loading.vue'\nimport PageContent from '@/components/PageContent.vue'\nimport ToggleSwitchInput from '@/elements/ToggleSwitchInput.vue'\nimport ResourceTile from './ResourceTile.vue'\nimport localStorageService from '@/services/localStorageService'\nimport { RolesEnum } from '@/lib/support/models/LeagueVolunteer/data'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Resources',\n components: {\n VerticalTabs,\n Loading,\n RoleResources,\n AdCommissionerResources,\n PageContent,\n ToggleSwitchInput,\n ResourceList,\n ResourceTile,\n },\n setup(props, ctx) {\n const storeleague = computed(() => store.getters.leagues.currentItem)\n const storeCamp = computed(() => store.getters.camps.currentItem)\n const storeClinic = computed(() => store.getters.clinics.currentItem)\n const storeConnect = computed(() => store.getters.connects.currentItem)\n\n const leagueListItem = ref(null)\n const resources = ref([])\n const marketingResources = ref([])\n const allResources = ref([])\n const featuredResources = ref([])\n const loading = ref(false)\n const resourcesViewTypeId = ref('resourcesViewType')\n const resourcesViewTypeDefault = ref('v1')\n const resourcesViewTypeCurrent = ref('v1')\n\n const isAdCommissioner = computed(() => currentRole.value?.id === RolesEnum.ADCOMMISSIONER)\n\n const resourcesViewType: WritableComputedRef = computed({\n get(): string {\n return localStorageService.getRaw(resourcesViewTypeId.value) ?? resourcesViewTypeDefault.value\n },\n set(t: string): void {\n localStorageService.set(resourcesViewTypeId.value, t)\n },\n })\n\n const classicView = ref(resourcesViewType.value === 'classic')\n\n watch(\n () => classicView.value,\n () => {\n const myResourcesViewType = classicView.value\n ? resourcesViewTypeDefault.value\n : resourcesViewTypeCurrent.value\n resourcesViewType.value = myResourcesViewType\n }\n )\n\n const directorId = 'director'\n const directorRole: TypeLeagueVolunteerRole = {\n id: 0,\n description: 'Director',\n sortOrder: 0,\n system: true,\n isGameRole: false,\n udfDefinitions: null,\n allowInOPR: true,\n allowInOVR: true,\n }\n\n const cheerDirectorId = 'cheer-director'\n const cheerDirectorRole: TypeLeagueVolunteerRole = {\n id: 0,\n description: 'Cheer Director',\n sortOrder: 0,\n system: true,\n isGameRole: false,\n udfDefinitions: null,\n allowInOPR: true,\n allowInOVR: true,\n }\n\n const programId = computed(() => ctx.root.$route.params.id)\n\n const isLeague = computed(() => ctx.root.$route.path.includes('league'))\n\n const programRoles = computed(() => {\n if (!programId.value) {\n return null\n }\n\n if (storeCamp.value && storeCamp.value.upwardLeagueID === programId.value) {\n return storeCamp.value.roles\n }\n\n if (storeleague.value && storeleague.value.upwardLeagueID === programId.value) {\n return storeleague.value.roles\n }\n\n if (storeClinic.value && storeClinic.value.upwardLeagueID === programId.value) {\n return [directorRole]\n }\n\n if (storeConnect.value && storeConnect.value.upwardLeagueID === programId.value) {\n return [directorRole]\n }\n\n return null\n })\n\n const roleId = computed(() => ctx.root.$route.params.roleId)\n\n const currentRoleResources = computed(() => {\n if (!currentRole.value || !currentRole.value.description) {\n return []\n }\n\n const currentRoleDesc = currentRole.value.description\n return resources.value.filter((r) => r.role && r.role.indexOf(currentRoleDesc) !== -1)\n })\n\n const currentRole = computed(() => {\n if (!roleId.value || !programRoles.value) {\n return null\n }\n\n if (roleId.value === directorId) {\n return directorRole\n }\n\n if (roleId.value === cheerDirectorId) {\n return cheerDirectorRole\n }\n\n return programRoles.value.find((r) => r.id.toString() === roleId.value)\n })\n\n const roles = computed(() => {\n if (!programRoles.value) {\n return []\n }\n\n const roles = programRoles.value.slice().sort((a, b) => a.sortOrder - b.sortOrder)\n return roles\n })\n\n const tabs = computed(() => {\n const tabData = roles.value\n .filter((role) => {\n if (!role.description || role.id === 0) {\n return false\n }\n\n const roleDesc = role.description\n return resources.value.some((r) => r.role && r.role.indexOf(roleDesc) !== -1)\n })\n .map((r) => ({\n text: r.description,\n to: getResourceTabRoute(`${r.id}`),\n }))\n\n tabData.unshift({\n text: directorRole.description,\n to: getResourceTabRoute(directorId),\n })\n\n return tabData\n })\n\n watch(\n () => roles.value,\n () => {\n if (!roleId.value && roles.value.length) {\n const path = getResourceTabRoute(directorId)\n ctx.root.$router.push(path)\n }\n },\n { immediate: true }\n )\n\n function getResourceTabRoute(id: string): Location {\n return {\n name: ctx.root.$route.name || undefined,\n params: {\n ...ctx.root.$route.params,\n roleId: id.toString(),\n },\n }\n }\n\n async function fetchProgram() {\n loading.value = true\n leagueListItem.value = await programsClient.retrieve(programId.value)\n loading.value = false\n }\n\n onMounted(async () => {\n window.scrollTo(0, 0)\n await fetchProgram()\n await fetchResources()\n })\n\n async function fetchResources() {\n try {\n resources.value = []\n const upwardLeagueID = leagueListItem.value!.upwardLeagueID! ?? ''\n const cheerProgramTypeID =\n leagueListItem.value!.cheerProgramTypeID! ?? leagueListItem.value!.programTypeID! ?? ''\n\n const leagueTypeAbbreviation = leagueListItem.value!.leagueTypeAbbreviation! ?? ''\n const productYear = leagueListItem.value!.myLeagueInfo!.productYear! ?? ''\n\n const volunteerResources = contentManagementClient.getVolunteerResources(\n upwardLeagueID,\n cheerProgramTypeID,\n 'Director'\n )\n const myMarketingResources = contentManagementClient.getMarketingResources(\n leagueTypeAbbreviation,\n productYear,\n ''\n )\n const [volunteers, marketing]: Array = await Promise.allSettled([\n volunteerResources,\n myMarketingResources,\n ])\n marketingResources.value = marketing.value.data.filter(dateFilter).map((r: Resource) => {\n r.leagueDirectoryTaxonomy = ['Planning / Advertising']\n return r\n })\n let myResources: Resource[] = volunteers.value.data.filter(dateFilter)\n if (isLeague.value) {\n myResources = myResources.filter(devotionTrackFilter)\n }\n resources.value = myResources\n allResources.value = myResources.concat(marketingResources.value)\n featuredResources.value = allResources.value.filter((r) => r.featuredItem)\n } catch (err) {\n console.error(err)\n loading.value = false\n }\n }\n\n function dateFilter(r: Resource) {\n const now = new Date()\n return (\n r.expirationDate === null ||\n r.expirationDate === '0001-01-01T00:00:00' ||\n new Date(r.expirationDate) > now\n )\n }\n\n function devotionTrackFilter(r: Resource) {\n return r.devotionTrack == null || r.devotionTrack == storeleague.value.typeDevotionTrackID\n }\n\n return {\n classicView,\n loading,\n tabs,\n isAdCommissioner,\n currentRole,\n leagueListItem,\n marketingResources,\n currentRoleResources,\n featuredResources,\n allResources,\n }\n },\n})\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!./Resources.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!./Resources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Resources.vue?vue&type=template&id=3a373f20&scoped=true&\"\nimport script from \"./Resources.vue?vue&type=script&lang=ts&\"\nexport * from \"./Resources.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Resources.vue?vue&type=style&index=0&id=3a373f20&scoped=true&lang=scss&\"\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 \"3a373f20\",\n null\n \n)\n\nexport default component.exports","import { RouteConfig } from 'vue-router'\nimport Resources from '@/views/Programs/Resources/Resources.vue'\n\nexport default function (namePrefix: string) {\n return [\n {\n name: `${namePrefix}RoleResources`,\n path: 'resources/:roleId?',\n component: Resources,\n },\n ] as RouteConfig[]\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',[_vm._m(0),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6\"},[_vm._m(1),_c('div',[_vm._v(_vm._s(_vm.connect.leagueName))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6\"},[_vm._m(2),_c('div',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.connect.connectDate,'MMM dd, yyyy')))])])]),_vm._m(3),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"},[_vm._m(4),_c('div',[_vm._v(_vm._s(_vm.connect.partnerContact.firstName)+\" \"+_vm._s(_vm.connect.partnerContact.lastName))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6\"},[_vm._m(5),_c('div',[_vm._v(_vm._s(_vm.connect.partnerContact.primaryPhoneNumber))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6\"},[_vm._m(6),_c('div',[_vm._v(_vm._s(_vm.connect.partnerContact.secondaryPhoneNumber))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6\"},[_vm._m(7),_c('div',[_vm._v(_vm._s(_vm.connect.partnerContact.alternatePhoneNumber))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6\"},[_vm._m(8),_c('div',[_vm._v(_vm._s(_vm.connect.partnerContact.email ? _vm.connect.partnerContact.email : 'none'))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6\"},[_vm._m(9),_c('div',[_vm._v(_vm._s(_vm.connect.partnerContact.yearsExperience))])])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0 condense\"},[_c('h5',{},[_vm._v(\"Program Information\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b',[_vm._v(\"Connect Name\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b',[_vm._v(\"Connect Date\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-6 pr-0 mt-4 condense\"},[_c('h5',[_vm._v(\"Leadership\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b',[_vm._v(\"Connect Director\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b',[_vm._v(\"Primary Phone\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b',[_vm._v(\"Secondary Phone\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b',[_vm._v(\"Alternate Phone\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b',[_vm._v(\"Email\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b',[_vm._v(\"Years Experience\")])])}]\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\nimport { defineComponent, computed } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\n\nimport date from '@/filters/date'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Archive',\n components: {\n Loading,\n },\n filters: {\n date,\n },\n setup() {\n const connect = computed(() => store.getters.connects.currentItem)\n return {\n connect,\n }\n },\n})\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!./Archive.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!./Archive.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Archive.vue?vue&type=template&id=a1d852ee&\"\nimport script from \"./Archive.vue?vue&type=script&lang=ts&\"\nexport * from \"./Archive.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Archive.vue?vue&type=style&index=0&lang=scss&\"\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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-auto text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.connect,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12 pt-3\"},[_c('ContactPickerAndEditor',{attrs:{\"accountNumber\":_vm.accountNumbers[0],\"isLoading\":_vm.loading,\"canChangeName\":_vm.canChangeName,\"isClean\":_vm.isClean},on:{\"submit\":_vm.onSubmit},model:{value:(_vm.sportContact),callback:function ($$v) {_vm.sportContact=$$v},expression:\"sportContact\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm\"}),_c('div',{staticClass:\"col-sm-auto text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.connect,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('setup-complete-confirmation',{attrs:{\"upwardLeagueId\":_vm.connect.upwardLeagueID},on:{\"change\":_vm.onModalStateChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm\"},[_c('h5',[_vm._v(\"Director\")]),_c('p',{staticClass:\"m-0\"},[_vm._v(\"Select the Director for this program from the list or create a new contact.\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ContactPicker',{attrs:{\"accountNumber\":_vm.accountNumber,\"value\":_vm.value},on:{\"change\":_vm.onChange}}),_c('Modal',{attrs:{\"title\":_vm.modalTitle},model:{value:(_vm.isModalVisible),callback:function ($$v) {_vm.isModalVisible=$$v},expression:\"isModalVisible\"}},[_c('ContactForm',{attrs:{\"canChangeName\":_vm.canChangeName || _vm.isNewMode},model:{value:(_vm.editingValue),callback:function ($$v) {_vm.editingValue=$$v},expression:\"editingValue\"}}),_c('div',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":_vm.isLoading},on:{\"click\":_vm.onSubmit}},[_c('i',{staticClass:\"fa fa-check mr-2\"}),(_vm.isLoading)?_c('Loading',{attrs:{\"is-small\":\"\"}}):[_vm._v(\" Save \")]],2),_c('button',{staticClass:\"btn btn-link\",on:{\"click\":_vm.hideModal}},[_vm._v(\"Cancel\")])])],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:\"row\"},[(_vm.isLoading)?_c('div',{staticClass:\"height-of-card\"},[_c('Loading',{staticClass:\"m-3\"})],1):[_vm._l((_vm.contactsToDisplay),function(contact){return _c('SmallCard',{key:contact.id,staticClass:\"text-center\",attrs:{\"value\":_vm.selectedId === contact.id,\"title\":(\"Select \" + (contact.fullName) + \" to be the director\")},on:{\"click\":function($event){return _vm.select(contact)}}},[_c('p',{staticClass:\"mt-3\"},[_c('i',{staticClass:\"fa fa-3x\",class:_vm.selectedId === contact.id ? 'fa-user-check' : 'fa-user'})]),_c('p',{staticClass:\"ellipsis mt-3\"},[_vm._v(\" \"+_vm._s(contact.firstName)+\" \"),(contact.firstName && contact.lastName)?_c('br'):_vm._e(),_vm._v(\" \"+_vm._s(contact.lastName)+\" \")]),_c('EditIcon',{staticClass:\"fa-xs edit-icon\"})],1)}),_c('SmallCard',{staticClass:\"text-center\",attrs:{\"title\":\"Create a new contact to be the director\"},on:{\"click\":_vm.onClickNew}},[_c('p',{staticClass:\"mt-3\"},[_c('i',{staticClass:\"fa fa-plus fa-3x\"})]),_c('p',{staticClass:\"mt-6\"},[_vm._v(\"New\")])])]],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',{staticClass:\"col-auto mb-3\"},[_c('div',{staticClass:\"card shadow\",class:{ selected: _vm.value }},[_c('div',{staticClass:\"card-body p-2\",class:{ 'bg-primary text-white': _vm.value },on:{\"click\":_vm.onClick}},[_vm._t(\"default\")],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'SmallCard',\n props: {\n value: { type: Boolean, default: false, required: false },\n },\n setup(props, ctx) {\n function onClick() {\n const newValue = !props.value\n ctx.emit('input', newValue)\n ctx.emit('change', newValue)\n ctx.emit('click')\n }\n\n return {\n onClick,\n }\n },\n})\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!./SmallCard.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!./SmallCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SmallCard.vue?vue&type=template&id=25771d80&scoped=true&\"\nimport script from \"./SmallCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./SmallCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SmallCard.vue?vue&type=style&index=0&id=25771d80&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 \"25771d80\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, onMounted, PropType } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\nimport SmallCard from '@/components/SmallCard.vue'\nimport partnersClient from '@/clients/partnersClient'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { EditIcon } from '@/elements/Icons.ts'\n\nexport default defineComponent({\n name: 'ContactPicker',\n components: {\n SmallCard,\n Loading,\n EditIcon,\n },\n props: {\n value: { type: Object as PropType, required: true },\n accountNumber: { required: true, type: String },\n },\n setup(props, ctx) {\n const contacts = ref([])\n const isLoading = ref(true)\n\n async function select(contact: ContactInfo) {\n await refreshData()\n contact = contacts.value.find((c) => c.id === contact.id) || contact\n\n ctx.emit('input', contact)\n ctx.emit('change', contact)\n }\n\n function clearSelection() {\n ctx.emit('input', null)\n ctx.emit('change', null)\n }\n\n async function refreshData() {\n isLoading.value = true\n const result = await partnersClient.retrieveAccountContacts(props.accountNumber)\n\n if (result.isSuccess) {\n contacts.value = result.data!\n }\n\n isLoading.value = false\n }\n\n onMounted(async () => {\n await refreshData()\n })\n\n const selectedId = computed(() => {\n if (!props.value) {\n return null\n }\n\n return props.value.id\n })\n\n function onClickNew() {\n clearSelection()\n }\n\n const selectedContact = computed(() => {\n const trainedContact = contacts.value.find((c) => c.id === selectedId.value)\n\n if (trainedContact) {\n return trainedContact\n }\n\n // Sometimes the current director is not returned in the list of \"trained leaders\"\n return props.value?.fullName?.trim() ? props.value : null\n })\n\n const contactsToDisplay = computed(() => {\n if (!selectedContact.value || contacts.value.findIndex((c) => c.id === selectedId.value) > -1) {\n return contacts.value\n }\n\n return [selectedContact.value, ...contacts.value]\n })\n\n return {\n isLoading,\n contactsToDisplay,\n selectedId,\n onClickNew,\n select,\n }\n },\n})\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!./ContactPicker.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!./ContactPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ContactPicker.vue?vue&type=template&id=5285dcfe&scoped=true&\"\nimport script from \"./ContactPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./ContactPicker.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ContactPicker.vue?vue&type=style&index=0&id=5285dcfe&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 \"5285dcfe\",\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('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('text-input',{staticClass:\"col-sm-6\",attrs:{\"label\":\"First Name\",\"enabled\":_vm.canChangeName,\"required\":\"\"},model:{value:(_vm.internalContact.firstName),callback:function ($$v) {_vm.$set(_vm.internalContact, \"firstName\", $$v)},expression:\"internalContact.firstName\"}}),_c('text-input',{staticClass:\"col-sm-6\",attrs:{\"label\":\"Last Name\",\"enabled\":_vm.canChangeName,\"required\":\"\"},model:{value:(_vm.internalContact.lastName),callback:function ($$v) {_vm.$set(_vm.internalContact, \"lastName\", $$v)},expression:\"internalContact.lastName\"}}),_c('div',{staticClass:\"col-12\"},[(_vm.primaryPhoneNumber)?_c('div',{staticClass:\"row\"},[_c('phone-input',{staticClass:\"col-auto mb-0 pb-0\",attrs:{\"label\":\"Primary Phone\",\"required\":\"\",\"use-partner\":true},model:{value:(_vm.primaryPhoneNumber),callback:function ($$v) {_vm.primaryPhoneNumber=$$v},expression:\"primaryPhoneNumber\"}}),(!_vm.secondaryPhoneNumber)?_c('div',{staticClass:\"col-12 mt-0 pt-0\"},[_c('button',{staticClass:\"btn btn-primary btn-sm\",on:{\"click\":function($event){return _vm.addPhoneNumber('secondary')}}},[_vm._v(\" Add another phone number \")])]):_vm._e()],1):_vm._e(),(_vm.secondaryPhoneNumber)?_c('div',{staticClass:\"row\"},[_c('phone-input',{staticClass:\"col-auto mb-0 pb-0\",attrs:{\"label\":\"Secondary Phone\",\"required\":\"\",\"use-partner\":true},model:{value:(_vm.secondaryPhoneNumber),callback:function ($$v) {_vm.secondaryPhoneNumber=$$v},expression:\"secondaryPhoneNumber\"}}),_c('div',{staticClass:\"col pt-10\"},[_c('i',{staticClass:\"fa fa-minus-circle text-primary clickable\",on:{\"click\":function($event){return _vm.removePhoneNumber('secondary')}}})]),(!_vm.alternatePhoneNumber)?_c('div',{staticClass:\"col-12 mt-0 pt-0\"},[_c('button',{staticClass:\"btn btn-primary btn-sm\",on:{\"click\":function($event){return _vm.addPhoneNumber('alternate')}}},[_vm._v(\" Add another phone number \")])]):_vm._e()],1):_vm._e(),(_vm.alternatePhoneNumber)?_c('div',{staticClass:\"row\"},[_c('phone-input',{staticClass:\"col-auto\",attrs:{\"label\":\"Alternate Phone\",\"required\":\"\",\"use-partner\":true},model:{value:(_vm.alternatePhoneNumber),callback:function ($$v) {_vm.alternatePhoneNumber=$$v},expression:\"alternatePhoneNumber\"}}),_c('div',{staticClass:\"col pt-10\"},[_c('i',{staticClass:\"fa fa-minus-circle text-primary clickable\",on:{\"click\":function($event){return _vm.removePhoneNumber('alternate')}}})])],1):_vm._e()]),_c('text-input',{staticClass:\"col-sm-6\",attrs:{\"label\":\"Email\",\"required\":\"\"},model:{value:(_vm.internalContact.emailAddress),callback:function ($$v) {_vm.$set(_vm.internalContact, \"emailAddress\", $$v)},expression:\"internalContact.emailAddress\"}}),_c('text-input',{staticClass:\"col-sm-6\",attrs:{\"label\":\"Confirm Email\",\"required\":\"\"},on:{\"change\":_vm.onEmailConfirm},model:{value:(_vm.confirmEmail),callback:function ($$v) {_vm.confirmEmail=$$v},expression:\"confirmEmail\"}}),_c('div',{staticClass:\"col-12 pt-0\"},[(_vm.hasEmailMismatch)?_c('small',{staticClass:\"alert alert-warning p-2\",attrs:{\"role\":\"alert\"}},[_vm._v(\" The email addresses do not match \")]):_vm._e()]),_c('preferred-contact-method-select',{staticClass:\"col-sm-6\",attrs:{\"label\":\"Preferred Contact Method\",\"required\":\"\"},model:{value:(_vm.internalContact.typePreferredContactMethodID),callback:function ($$v) {_vm.$set(_vm.internalContact, \"typePreferredContactMethodID\", $$v)},expression:\"internalContact.typePreferredContactMethodID\"}}),_c('preferred-contact-time-select',{staticClass:\"col-sm-6\",attrs:{\"label\":\"Preferred Contact Time\",\"required\":\"\"},model:{value:(_vm.internalContact.typePreferredTimeOfDayID),callback:function ($$v) {_vm.$set(_vm.internalContact, \"typePreferredTimeOfDayID\", $$v)},expression:\"internalContact.typePreferredTimeOfDayID\"}}),_c('preferred-contact-day-select',{staticClass:\"col-sm-4\",attrs:{\"label\":\"Preferred Contact Day\",\"required\":\"\"},model:{value:(_vm.internalContact.typePreferredDayOfWeekID),callback:function ($$v) {_vm.$set(_vm.internalContact, \"typePreferredDayOfWeekID\", $$v)},expression:\"internalContact.typePreferredDayOfWeekID\"}}),_c('integer-input',{staticClass:\"col-sm-4\",attrs:{\"label\":\"Years Experience\",\"required\":\"\",\"min\":0,\"max\":30},model:{value:(_vm.internalContact.yearsExperience),callback:function ($$v) {_vm.$set(_vm.internalContact, \"yearsExperience\", $$v)},expression:\"internalContact.yearsExperience\"}}),_c('yes-no-input',{staticClass:\"col-sm-7\",attrs:{\"label\":\"Full Time Church Staff Member\",\"required\":\"\"},model:{value:(_vm.internalContact.isFullTime),callback:function ($$v) {_vm.$set(_vm.internalContact, \"isFullTime\", $$v)},expression:\"internalContact.isFullTime\"}}),_c('partner-role-type-select',{staticClass:\"col-sm-7\",attrs:{\"label\":\"Closest Matching Job Title\",\"required\":\"\",\"placeholder\":\"Please Select\"},model:{value:(_vm.internalContact.typePartnerRoleID),callback:function ($$v) {_vm.$set(_vm.internalContact, \"typePartnerRoleID\", $$v)},expression:\"internalContact.typePartnerRoleID\"}})],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('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"enabled\":!_vm.isLoading,\"blank-item-text\":\"Day\",\"show-blank-item\":!_vm.required,\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"blank-item-value\":\"\",\"items-list\":_vm.items},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PreferredContactDaySelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isLoading = ref(false)\n const selectedItem = ref(props.value ?? null)\n const items = computed(() => store.getters.partnerDayTypes.allItems)\n\n async function loadItems() {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n await store.dispatch.partnerDayTypes.fetchAll(false)\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => selectedItem.value,\n () => {\n if (props.value !== selectedItem.value) {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = props.value\n }\n )\n\n return {\n isLoading,\n selectedItem,\n items,\n }\n },\n})\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!./PreferredContactDaySelect.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!./PreferredContactDaySelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PreferredContactDaySelect.vue?vue&type=template&id=e8a7aa68&\"\nimport script from \"./PreferredContactDaySelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./PreferredContactDaySelect.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('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"enabled\":!_vm.isLoading,\"blank-item-text\":\"Contact Method\",\"show-blank-item\":!_vm.required,\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"blank-item-value\":\"\",\"items-list\":_vm.items},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PreferredContactMethodSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isLoading = ref(false)\n const selectedItem = ref(props.value ?? null)\n const items = computed(() => store.getters.partnerPreferredContactMethodTypes.allItems)\n\n async function loadItems() {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n await store.dispatch.partnerPreferredContactMethodTypes.fetchAll(false)\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => selectedItem.value,\n () => {\n if (props.value !== selectedItem.value) {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = props.value\n }\n )\n\n return {\n isLoading,\n selectedItem,\n items,\n }\n },\n})\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!./PreferredContactMethodSelect.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!./PreferredContactMethodSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PreferredContactMethodSelect.vue?vue&type=template&id=1b39500f&\"\nimport script from \"./PreferredContactMethodSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./PreferredContactMethodSelect.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('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"enabled\":!_vm.isLoading,\"blank-item-text\":\"Time of Day\",\"show-blank-item\":!_vm.required,\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"blank-item-value\":\"\",\"items-list\":_vm.items},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PreferredContactTimeSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isLoading = ref(false)\n const selectedItem = ref(props.value ?? null)\n const items = computed(() => store.getters.partnerPreferredTimeOfDayTypes.allItems)\n\n async function loadItems() {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n await store.dispatch.partnerPreferredTimeOfDayTypes.fetchAll(false)\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => selectedItem.value,\n () => {\n if (props.value !== selectedItem.value) {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = props.value\n }\n )\n\n return {\n isLoading,\n selectedItem,\n items,\n }\n },\n})\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!./PreferredContactTimeSelect.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!./PreferredContactTimeSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PreferredContactTimeSelect.vue?vue&type=template&id=6ceaebd4&\"\nimport script from \"./PreferredContactTimeSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./PreferredContactTimeSelect.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('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"enabled\":!_vm.isLoading,\"blank-item-text\":\"Role Type\",\"show-blank-item\":!_vm.required,\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"blank-item-value\":\"\",\"items-list\":_vm.items},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PartnerRoleTypeSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isLoading = ref(false)\n const selectedItem = ref(props.value ?? null)\n const items = computed(() => store.getters.partnerRoleTypes.allItems)\n\n async function loadItems() {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n await store.dispatch.partnerRoleTypes.fetchAll(false)\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => selectedItem.value,\n () => {\n if (props.value !== selectedItem.value) {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = props.value\n }\n )\n\n return {\n isLoading,\n selectedItem,\n items,\n }\n },\n})\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!./PartnerRoleTypeSelect.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!./PartnerRoleTypeSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PartnerRoleTypeSelect.vue?vue&type=template&id=62922fd8&\"\nimport script from \"./PartnerRoleTypeSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./PartnerRoleTypeSelect.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport PhoneInput from '@/components/PhoneInput.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\n\nimport PreferredContactDaySelect from '@/components/PreferredContactDaySelect.vue'\nimport PreferredContactMethodSelect from '@/components/PreferredContactMethodSelect.vue'\nimport PreferredContactTimeSelect from '@/components/PreferredContactTimeSelect.vue'\nimport PartnerRoleTypeSelect from '@/components/PartnerRoleTypeSelect.vue'\n\nimport { IndividualPhone } from '@/GeneratedTypes/IndividualPhone'\nimport { Contact } from '@/GeneratedTypes/Partner/Contact'\nimport { cleanPhoneNumber } from '@/services/phoneNumberService'\nimport emailServiceClient from '@/clients/emailServiceClient'\nimport { IndividualEmailCheck } from '@/models/IndividualEmailCheck'\nexport default defineComponent({\n name: 'ContactForm',\n components: {\n TextInput,\n PhoneInput,\n IntegerInput,\n YesNoInput,\n PreferredContactTimeSelect,\n PreferredContactMethodSelect,\n PreferredContactDaySelect,\n PartnerRoleTypeSelect,\n },\n props: {\n value: { type: Object as PropType, required: true },\n canChangeName: { type: Boolean, required: false, default: true },\n },\n setup(props, ctx) {\n const internalContact = ref(getEmptyContact())\n const primaryPhoneNumber = ref(createIndividualPhoneNumber('', ''))\n const secondaryPhoneNumber = ref(null)\n const alternatePhoneNumber = ref(null)\n const confirmEmail = ref('')\n\n watch(\n () => internalContact.value,\n () => {\n if (JSON.stringify(props.value) !== JSON.stringify(internalContact.value)) {\n ctx.emit('input', { ...internalContact.value })\n }\n },\n { deep: true }\n )\n\n watch(\n () => props.value,\n () => {\n if (JSON.stringify(props.value) === JSON.stringify(internalContact.value)) {\n return\n }\n\n internalContact.value = props.value ? { ...props.value } : getEmptyContact()\n\n internalContact.value.primaryPhoneTypeID = internalContact.value.primaryPhoneTypeID ?? ''\n internalContact.value.secondaryPhoneTypeID = internalContact.value.secondaryPhoneTypeID ?? ''\n internalContact.value.alternatePhoneTypeID = internalContact.value.alternatePhoneTypeID ?? ''\n\n if (internalContact.value.emailAddress) {\n confirmEmail.value = internalContact.value.emailAddress\n } else {\n confirmEmail.value = ''\n }\n\n if (internalContact.value.primaryPhoneNumber) {\n primaryPhoneNumber.value = createIndividualPhoneNumber(\n internalContact.value.primaryPhoneNumber,\n internalContact.value.primaryPhoneTypeID\n )\n } else {\n primaryPhoneNumber.value = createIndividualPhoneNumber('', '')\n }\n\n if (internalContact.value.secondaryPhoneNumber) {\n secondaryPhoneNumber.value = createIndividualPhoneNumber(\n internalContact.value.secondaryPhoneNumber,\n internalContact.value.secondaryPhoneTypeID ?? ''\n )\n } else {\n secondaryPhoneNumber.value = null\n }\n\n if (internalContact.value.alternatePhoneNumber) {\n alternatePhoneNumber.value = createIndividualPhoneNumber(\n internalContact.value.alternatePhoneNumber,\n internalContact.value.alternatePhoneTypeID ?? ''\n )\n } else {\n alternatePhoneNumber.value = null\n }\n },\n { immediate: true, deep: true }\n )\n\n watch(\n () => primaryPhoneNumber.value,\n () => {\n if (primaryPhoneNumber.value && primaryPhoneNumber.value.phoneNumber) {\n internalContact.value.primaryPhoneNumber = `${primaryPhoneNumber.value.phoneNumber}${primaryPhoneNumber.value.extension}`\n internalContact.value.primaryPhoneTypeID = primaryPhoneNumber.value.typePhoneID ?? ''\n ctx.emit('input', { ...internalContact.value })\n }\n }\n )\n\n watch(\n () => secondaryPhoneNumber.value,\n () => {\n if (secondaryPhoneNumber.value) {\n internalContact.value.secondaryPhoneNumber = `${secondaryPhoneNumber.value.phoneNumber}${secondaryPhoneNumber.value.extension}`\n internalContact.value.secondaryPhoneTypeID = secondaryPhoneNumber.value.typePhoneID ?? ''\n ctx.emit('input', { ...internalContact.value })\n }\n }\n )\n\n watch(\n () => alternatePhoneNumber.value,\n () => {\n if (alternatePhoneNumber.value) {\n internalContact.value.alternatePhoneNumber = `${alternatePhoneNumber.value.phoneNumber}${alternatePhoneNumber.value.extension}`\n internalContact.value.alternatePhoneTypeID = alternatePhoneNumber.value.typePhoneID ?? ''\n ctx.emit('input', { ...internalContact.value })\n }\n }\n )\n\n function createIndividualPhoneNumber(phoneNumber: string, phoneTypeId: string): IndividualPhone {\n let number = cleanPhoneNumber(phoneNumber)\n let extension = ''\n\n if (number && number.length > 10) {\n extension = number.substring(10)\n number = number.substring(0, 10)\n }\n\n return {\n extension,\n phoneNumber: number ?? '',\n phoneID: 0,\n typePhoneID: phoneTypeId ?? '',\n priority: 0,\n allowSMS: true,\n }\n }\n\n const hasEmailMismatch = computed(() => {\n return (\n (confirmEmail.value || internalContact.value.emailAddress) &&\n confirmEmail.value !== internalContact.value.emailAddress\n )\n })\n\n async function onEmailConfirm() {\n try {\n //run email address through auto-correction\n if (internalContact.value.emailAddress && confirmEmail.value) {\n const correctedEmail = await emailServiceClient.getCorrectedEmail({\n email: internalContact.value.emailAddress,\n } as IndividualEmailCheck)\n\n if (correctedEmail) {\n internalContact.value.emailAddress = correctedEmail\n confirmEmail.value = correctedEmail\n return\n }\n }\n } catch {\n // Ignore these errors since this is more of a convenience feature and not required to work\n // to register successfully\n }\n }\n\n function addPhoneNumber(phoneType: string) {\n if (phoneType === 'secondary') {\n secondaryPhoneNumber.value = createIndividualPhoneNumber('', '')\n }\n\n if (phoneType === 'alternate') {\n alternatePhoneNumber.value = createIndividualPhoneNumber('', '')\n }\n }\n\n function removePhoneNumber(phoneType: string) {\n if (phoneType === 'secondary') {\n secondaryPhoneNumber.value = null\n if (alternatePhoneNumber.value) {\n secondaryPhoneNumber.value = alternatePhoneNumber.value\n alternatePhoneNumber.value = null\n }\n }\n\n if (phoneType === 'alternate') {\n alternatePhoneNumber.value = null\n }\n }\n\n function getEmptyContact(): Contact {\n const contact: Contact = {\n firstName: '',\n lastName: '',\n emailAddress: null,\n emailValid: 'true',\n emailValidReason: '',\n primaryPhoneNumber: null,\n primaryPhoneTypeID: '',\n secondaryPhoneNumber: null,\n secondaryPhoneTypeID: '',\n alternatePhoneNumber: null,\n alternatePhoneTypeID: '',\n yearsExperience: 0,\n isFullTime: false,\n typePartnerRoleID: '',\n typePreferredDayOfWeekID: '',\n typePreferredTimeOfDayID: '',\n typePreferredContactMethodID: '',\n }\n\n return contact\n }\n\n return {\n internalContact,\n primaryPhoneNumber,\n secondaryPhoneNumber,\n alternatePhoneNumber,\n confirmEmail,\n hasEmailMismatch,\n addPhoneNumber,\n removePhoneNumber,\n onEmailConfirm,\n }\n },\n})\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!./ContactForm.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!./ContactForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ContactForm.vue?vue&type=template&id=23386882&\"\nimport script from \"./ContactForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./ContactForm.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch, PropType, nextTick } from '@vue/composition-api'\nimport ContactPicker from '@/components/ContactPicker.vue'\nimport ContactForm from '@/components/ContactForm.vue'\nimport Modal from '@/components/Modal.vue'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { Contact } from '@/GeneratedTypes/Partner/Contact'\nimport { ContactInfoToContact, ContactToContactInfo } from '@/services/contactService'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n name: 'ContactPickerAndEditor',\n components: {\n ContactPicker,\n ContactForm,\n Modal,\n Loading,\n },\n props: {\n value: { type: Object as PropType, required: true },\n accountNumber: { required: true, type: String },\n isLoading: { required: false, type: Boolean, default: false },\n canChangeName: { required: false, type: Boolean, default: true },\n isClean: { required: true, type: Boolean },\n },\n setup(props, ctx) {\n const internalValue = ref(null)\n const editingValue = ref(null)\n const isModalVisible = ref(false)\n const didSubmit = ref(false)\n\n function onSubmit() {\n ctx.emit(\n 'input',\n ContactToContactInfo(editingValue.value, internalValue.value ? internalValue.value.id : 0)\n )\n ctx.emit('submit')\n\n nextTick(() => {\n didSubmit.value = true\n })\n }\n\n function onChange(contact: ContactInfo | null) {\n internalValue.value = contact\n editingValue.value = contact ? ContactInfoToContact(contact) : null\n isModalVisible.value = true\n didSubmit.value = false\n }\n\n function hideModal() {\n isModalVisible.value = false\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n },\n { immediate: true }\n )\n\n watch(\n () => [didSubmit.value, props.isClean],\n () => {\n if (!didSubmit.value || !props.isClean || !isModalVisible.value) {\n return\n }\n\n isModalVisible.value = false\n didSubmit.value = false\n }\n )\n\n const editingValueAsContactInfo = computed(() =>\n ContactToContactInfo(editingValue.value, internalValue.value ? internalValue.value.id : 0)\n )\n\n const modalTitle = computed(() => {\n if (!editingValueAsContactInfo.value.fullName || !editingValueAsContactInfo.value.id) {\n return 'New Contact'\n }\n\n return editingValueAsContactInfo.value.fullName\n })\n\n const isNewMode = computed(() => !editingValueAsContactInfo.value.id)\n\n return {\n isModalVisible,\n modalTitle,\n editingValue,\n isNewMode,\n onChange,\n onSubmit,\n hideModal,\n }\n },\n})\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!./ContactPickerAndEditor.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!./ContactPickerAndEditor.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ContactPickerAndEditor.vue?vue&type=template&id=bb6d8e2a&\"\nimport script from \"./ContactPickerAndEditor.vue?vue&type=script&lang=ts&\"\nexport * from \"./ContactPickerAndEditor.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('modal',{attrs:{\"title\":\"\"},on:{\"change\":_vm.onModalChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('full-body',[_c('div',{staticClass:\"p-3\"},[_c('h4',{staticClass:\"mt-4\"},[_vm._v(\"Next Steps\")]),_c('p',[_vm._v(\" Visit the \"),_c('a',{attrs:{\"href\":'../' + _vm.upwardLeagueId + '/resources/director'}},[_vm._v(\"resource section\")]),_vm._v(\" to view your digital resources for this connect program. \")]),_c('p',[_vm._v(\" You may also purchase items for your connect program by visiting the \"),_c('a',{attrs:{\"href\":'/programs/connect/' + _vm.upwardLeagueId + '/ordering/products/merchandiseorder/select'}},[_vm._v(\" ordering area.\")])]),_c('p',[_vm._v(\" Please note that because the resources for clinic and connect are provided by Upward Sports for free, any merchandise items ordered are not eligible to be returned. \")]),_c('div',{staticClass:\"row\"})])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.hideModal}},[_vm._v(\"OK\")])])],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\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport FullBody from '@/components/FullBody.vue'\n\nexport default defineComponent({\n name: 'SetupCompleteConfirmation',\n components: {\n Modal,\n FullBody,\n },\n props: {\n value: { type: Boolean, required: true },\n upwardLeagueId: { type: String, required: false, default: '' },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(props.value)\n\n function hideModal() {\n modalIsVisible.value = false\n onModalChange()\n }\n\n watch(\n () => props.value,\n () => {\n modalIsVisible.value = props.value\n }\n )\n\n function onModalChange() {\n ctx.emit('input', modalIsVisible.value)\n ctx.emit('change', modalIsVisible.value)\n }\n\n return {\n modalIsVisible,\n onModalChange,\n hideModal,\n }\n },\n})\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!./SetupCompleteConfirmation.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!./SetupCompleteConfirmation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SetupCompleteConfirmation.vue?vue&type=template&id=47a296fe&\"\nimport script from \"./SetupCompleteConfirmation.vue?vue&type=script&lang=ts&\"\nexport * from \"./SetupCompleteConfirmation.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\nimport { useConnectSetup } from '@/composables/ConnectSetup'\n\nimport { ContactToContactInfo, ContactInfoToContact, GetEmptyContactInfo } from '@/services/contactService'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\n\nimport ContactPickerAndEditor from '@/components/ContactPickerAndEditor.vue'\nimport { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\nimport { cloneDeep } from 'lodash'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport SetupCompleteConfirmation from '@/views/Connects/vues/SetupCompleteConfirmation.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Leadership',\n components: {\n ContactPickerAndEditor,\n SaveContinueButton,\n SetupCompleteConfirmation,\n },\n setup(props, ctx) {\n const {\n connect,\n storeConnect,\n loading,\n saveAndContinue,\n beforeRouteLeave,\n afterSaveNew,\n afterUpdateExisting,\n initialLoadDone,\n save,\n } = useConnectSetup(ctx)\n\n const accountNumbers = computed(() => store.getters.authorization.accountNumbers)\n const sportContact = ref(GetEmptyContactInfo())\n const newId = ref('')\n const modalIsVisible = ref(false)\n\n onMounted(() => {\n afterSaveNew.value = afterSaveNewMethod\n afterUpdateExisting.value = afterUpdateExistingMethod\n })\n\n watch(\n () => initialLoadDone.value,\n () => {\n if (initialLoadDone.value && connect.value) {\n sportContact.value = ContactToContactInfo(\n connect.value.partnerContact!,\n connect.value.leagueDirectorPartnerID\n )\n }\n },\n { immediate: true }\n )\n\n const canChangeName = computed(() => !(connect.value && connect.value!.leagueDirectorPartnerID))\n\n async function onSubmit() {\n connect.value.partnerContact = sportContact.value\n ? ContactInfoToContact(sportContact.value)\n : getEmptyContact()\n connect.value.leagueDirectorPartnerID = sportContact.value ? sportContact.value.id : 0\n\n afterSaveNew.value = null\n\n await save()\n if (connect.value.partnerContact) {\n sportContact.value = ContactToContactInfo(\n connect.value!.partnerContact!,\n connect.value!.leagueDirectorPartnerID\n )\n }\n afterSaveNew.value = afterSaveNewMethod\n }\n\n const isClean = computed(\n () => storeConnect.value.leagueDirectorPartnerID === connect.value.leagueDirectorPartnerID\n )\n\n function afterUpdateExistingMethod() {\n connect.value = { ...cloneDeep(storeConnect.value) }\n ctx.root.$router.push(`/programs/connect/${connect.value.upwardLeagueID}/setup/information`)\n }\n\n async function onModalStateChange() {\n await ctx.root.$router.push('/')\n }\n\n async function afterSaveNewMethod() {\n const result = await store.dispatch.connects.create({ item: connect.value })\n\n if (result) {\n connect.value = { ...result }\n newId.value = connect.value.upwardLeagueID ?? ''\n }\n modalIsVisible.value = true\n }\n\n return {\n saveAndContinue,\n connect,\n loading,\n initialLoadDone,\n beforeRouteLeave,\n accountNumbers,\n sportContact,\n onSubmit,\n canChangeName,\n isClean,\n modalIsVisible,\n onModalStateChange,\n }\n },\n beforeRouteLeave(to, from, next) {\n this.beforeRouteLeave(to, from, next)\n },\n})\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!./Leadership.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!./Leadership.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Leadership.vue?vue&type=template&id=375c434a&\"\nimport script from \"./Leadership.vue?vue&type=script&lang=ts&\"\nexport * from \"./Leadership.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'\nimport Setup from '@/views/Connects/Setup.vue'\nimport Information from '@/views/Connects/Information.vue'\nimport ConnectIndex from '@/views/Connects/ConnectIndex.vue'\nimport orders from '@/router/orders'\nimport resources from './resources'\nimport { idExpression } from '@/lib/support/router/idHelper'\nimport Archive from '@/views/Connects/Archive.vue'\nimport Leadership from '@/views/Connects/Leadership.vue'\n\nexport default [\n {\n path: `connect/${idExpression}`,\n component: ConnectIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/connect/${idExpression}/setup`,\n },\n {\n path: 'setup',\n component: Setup,\n children: [\n {\n path: '/',\n redirect: `/programs/connect/${idExpression}/setup/information`,\n },\n {\n path: 'information',\n component: Information,\n },\n {\n path: 'leadership',\n component: Leadership,\n },\n {\n path: 'archive',\n component: Archive,\n },\n ],\n },\n ...resources('Connect'),\n ...orders('connect'),\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex flex-row flex-grow-1 bg-light-2\"},[_c('vertical-tabs',{attrs:{\"tabs\":_vm.tabs}}),_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, onMounted } from '@vue/composition-api'\n\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Setup',\n components: {\n VerticalTabs,\n Loading,\n },\n setup(props, ctx) {\n const clinic = computed(() => store.getters.clinics.currentItem)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const baseRoute = computed(() => `/programs/clinic/${routeId.value}setup`)\n\n const tabs = computed(() => {\n if (clinic.value && !clinic.value.canEdit) {\n return []\n }\n return [\n { text: 'Program Information', to: `/programs/clinic/${routeId.value}setup/information` },\n { text: 'Director', to: `/programs/clinic/${routeId.value}setup/leadership` },\n ]\n })\n\n onMounted(async () => {\n const archivedRoute = `${baseRoute.value}/archive`\n if (clinic.value && !clinic.value.canEdit && ctx.root.$route.path !== archivedRoute) {\n await ctx.root.$router.push(archivedRoute)\n }\n })\n\n return {\n tabs,\n }\n },\n})\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!./Setup.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!./Setup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Setup.vue?vue&type=template&id=6a3e9376&\"\nimport script from \"./Setup.vue?vue&type=script&lang=ts&\"\nexport * from \"./Setup.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.clinic,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Clinic Name\",\"required\":\"\"},model:{value:(_vm.clinic.leagueName),callback:function ($$v) {_vm.$set(_vm.clinic, \"leagueName\", $$v)},expression:\"clinic.leagueName\"}}),_c('date-input',{attrs:{\"label\":\"Clinic Date\",\"required\":\"\"},model:{value:(_vm.clinic.clinicDate),callback:function ($$v) {_vm.$set(_vm.clinic, \"clinicDate\", $$v)},expression:\"clinic.clinicDate\"}}),_c('number-input',{staticClass:\"mb-4\",attrs:{\"label\":\"Estimated # of Participants\",\"required\":\"\",\"show-spin-button\":false},model:{value:(_vm.clinic.playerEstimate),callback:function ($$v) {_vm.$set(_vm.clinic, \"playerEstimate\", $$v)},expression:\"clinic.playerEstimate\"}}),_c('memo-input',{attrs:{\"label\":\"What are your ministry goals and objectives for this clinic? This will help us serve you better as you pursue your ministry goals.\",\"required\":\"\"},model:{value:(_vm.clinic.programMissionObjective),callback:function ($$v) {_vm.$set(_vm.clinic, \"programMissionObjective\", $$v)},expression:\"clinic.programMissionObjective\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.clinic,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Program Information\")])])}]\n\nexport { render, staticRenderFns }","import { computed, ref, watch, onMounted, nextTick, SetupContext } from '@vue/composition-api'\nimport { Route, NavigationGuardNext } from 'vue-router'\nimport { cloneDeep } from 'lodash'\nimport { Clinic } from '@/GeneratedTypes/Clinic'\nimport { PromptToSavePayload } from '@/models/PromptToSavePayload'\nimport store from '@/store'\n\nexport function useClinicSetup(ctx: SetupContext) {\n function beforeRouteLeave(to: Route, from: Route, next: NavigationGuardNext) {\n store.dispatch.promptToSave.onNavigation({\n save: async () => {\n await save()\n },\n continue: () => {\n next()\n },\n } as PromptToSavePayload)\n }\n\n const clinic = ref({} as Clinic)\n const loading = ref(false)\n const initialLoadDone = ref(false)\n const nextRoute = ref('')\n const beforeSave = ref Promise)>(null)\n const afterUpdateExisting = ref void | Promise)>(null)\n const afterSaveNew = ref Promise)>(null)\n\n const storeClinic = computed(() => store.getters.clinics.currentItem)\n\n async function saveAndContinue() {\n await save()\n continueNext()\n }\n\n onMounted(() => {\n nextTick(() => watch(clinic.value, onClinicChange, { deep: true }))\n })\n\n //async created hack from https://stackoverflow.com/questions/64117116/how-can-i-use-async-await-in-the-vue-3-0-setup-function-using-typescript\n const run = (asyncFn: () => Promise) => asyncFn()\n run(async () => {\n clinic.value = cloneDeep(storeClinic.value)\n\n if (!clinic.value.typeLeagueID) {\n loading.value = true\n\n try {\n await store.dispatch.clinics.loadFromCache()\n clinic.value = cloneDeep(storeClinic.value)\n } catch (err) {\n ctx.root.$router.push('/programs/new/')\n } finally {\n loading.value = false\n }\n }\n\n initialLoadDone.value = true\n })\n\n async function save() {\n loading.value = true\n\n try {\n if (beforeSave.value) {\n await beforeSave.value()\n }\n if (clinic.value.upwardLeagueID) {\n await updateExistingClinic()\n\n if (afterUpdateExisting.value) {\n await afterUpdateExisting.value()\n }\n } else {\n await saveNewClinic()\n\n if (afterSaveNew.value) {\n await afterSaveNew.value()\n }\n }\n\n store.commit.promptToSave.setIsDirty({ isDirty: false })\n } finally {\n loading.value = false\n }\n }\n\n function continueNext() {\n if (nextRoute.value) {\n ctx.root.$router.push(nextRoute.value)\n }\n }\n\n async function saveNewClinic() {\n if (clinic.value.upwardLeagueID) {\n return\n }\n\n try {\n await store.dispatch.clinics.cache({ item: clinic.value })\n } catch (err) {\n throw err\n }\n }\n\n async function updateExistingClinic() {\n if (!clinic.value.upwardLeagueID) {\n return\n }\n\n try {\n await store.dispatch.clinics.update({ id: clinic.value.upwardLeagueID, item: clinic.value })\n } catch (err) {\n throw err\n }\n }\n\n function onClinicChange() {\n store.commit.promptToSave.setIsDirty({ isDirty: true })\n }\n\n return {\n clinic,\n storeClinic,\n loading,\n nextRoute,\n afterSaveNew,\n afterUpdateExisting,\n initialLoadDone,\n save,\n saveAndContinue,\n beforeRouteLeave,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, onMounted } from '@vue/composition-api'\nimport { useClinicSetup } from '@/composables/ClinicSetup'\n\nimport DateInput from '@/elements/DateInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\n\nimport Alert from '@/components/Alert.vue'\nimport FullBody from '@/components/FullBody.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport NumberInput from '@/elements/NumberInput.vue'\n\nexport default defineComponent({\n name: 'Information',\n components: {\n Alert,\n DateInput,\n FullBody,\n Loading,\n MemoInput,\n SelectInput,\n TextInput,\n SaveContinueButton,\n NumberInput,\n },\n setup(props, ctx) {\n const { clinic, loading, nextRoute, saveAndContinue, beforeRouteLeave } = useClinicSetup(ctx)\n\n onMounted(() => {\n if (clinic.value.upwardLeagueID) {\n nextRoute.value = `/programs/clinic/${clinic.value.upwardLeagueID}/setup/leadership`\n } else {\n nextRoute.value = '/programs/clinic/setup/leadership'\n }\n })\n\n return {\n saveAndContinue,\n clinic,\n loading,\n beforeRouteLeave,\n }\n },\n beforeRouteLeave(to, from, next) {\n this.beforeRouteLeave(to, from, next)\n },\n})\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!./Information.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!./Information.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Information.vue?vue&type=template&id=65b953cf&\"\nimport script from \"./Information.vue?vue&type=script&lang=ts&\"\nexport * from \"./Information.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 (!_vm.loading)?_c('alert-cloak',{staticClass:\"px-0 py-3\",attrs:{\"type\":_vm.alertTypes,\"uncloak\":_vm.uncloak},scopedSlots:_vm._u([{key:\"head\",fn:function(){return [_c('h4',{staticClass:\"px-4 py-1\"},[(_vm.id)?[_vm._v(\" \"+_vm._s(_vm.currentClinic.leagueName)+\" \")]:[_vm._v(\" New Clinic \")]],2)]},proxy:true}],null,false,1984039981)},[_c('horizontal-tabs',{staticClass:\"underline-split bg-light-1\",attrs:{\"tabs\":_vm.tabs}}),_c('full-body',[_c('router-view')],1)],1):_c('loading',{staticClass:\"m-4\"})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref } from '@vue/composition-api'\nimport FullBody from '@/components/FullBody.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport AlertCloak, { AlertCloakTypes } from '@/components/AlertCloak.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ClinicIndex',\n components: {\n FullBody,\n HorizontalTabs,\n Loading,\n AlertCloak,\n },\n setup(props, ctx) {\n const currentClinic = computed(() => store.getters.clinics.currentItem)\n const alertTypes = ref([AlertCloakTypes.PARTNER])\n const uncloak = ref(false)\n\n const loading = ref(false)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const tabs = computed((): any[] => [\n { text: 'Setup', to: `/programs/clinic/${routeId.value}setup` },\n { text: 'Ordering', to: `/programs/clinic/${routeId.value}ordering`, disabled: !id.value },\n { text: 'Resources', to: `/programs/clinic/${routeId.value}resources`, disabled: !id.value },\n ])\n\n //async created hack from https://stackoverflow.com/questions/64117116/how-can-i-use-async-await-in-the-vue-3-0-setup-function-using-typescript\n const run = (asyncFn: () => Promise) => asyncFn()\n\n //private async created() {\n run(async () => {\n if (ctx.root.$route.params.id) {\n loading.value = true\n await store.dispatch.clinics.retrieveAndSetAsCurrent({ id: ctx.root.$route.params.id })\n loading.value = false\n } else {\n //new clinic, skip notifications\n uncloak.value = true\n }\n })\n //end created\n\n return {\n loading,\n alertTypes,\n uncloak,\n id,\n currentClinic,\n tabs,\n }\n },\n})\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!./ClinicIndex.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!./ClinicIndex.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ClinicIndex.vue?vue&type=template&id=dab85b86&\"\nimport script from \"./ClinicIndex.vue?vue&type=script&lang=ts&\"\nexport * from \"./ClinicIndex.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('div',[_c('div',[_vm._m(0),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('div',{staticClass:\"row\"},[_vm._m(1),_c('div',{staticClass:\"col-xl-6\"},[_vm._v(_vm._s(_vm.clinic.leagueName))])]),_c('div',{staticClass:\"row\"},[_vm._m(2),_c('div',{staticClass:\"col-xl-6\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.clinic.clinicDate,'MMM dd, yyyy')))])])])]),_vm._m(3),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('div',{staticClass:\"row\"},[_vm._m(4),_c('div',{staticClass:\"col-xl-6\"},[_vm._v(\" \"+_vm._s(_vm.clinic.partnerContact.firstName)+\" \"+_vm._s(_vm.clinic.partnerContact.lastName)+\" \")])]),_c('div',{staticClass:\"row\"},[_vm._m(5),_c('div',{staticClass:\"col-xl-6\"},[_vm._v(_vm._s(_vm.clinic.partnerContact.primaryPhoneNumber))])]),_c('div',{staticClass:\"row\"},[_vm._m(6),_c('div',{staticClass:\"col-xl-6\"},[_vm._v(_vm._s(_vm.clinic.partnerContact.secondaryPhoneNumber))])]),_c('div',{staticClass:\"row\"},[_vm._m(7),_c('div',{staticClass:\"col-xl-6\"},[_vm._v(_vm._s(_vm.clinic.partnerContact.alternatePhoneNumber))])]),_c('div',{staticClass:\"row\"},[_vm._m(8),_c('div',{staticClass:\"col-xl-6\"},[_vm._v(_vm._s(_vm.clinic.partnerContact.email))])]),_c('div',{staticClass:\"row\"},[_vm._m(9),_c('div',{staticClass:\"col-xl-6\"},[_vm._v(_vm._s(_vm.clinic.partnerContact.yearsExperience))])])])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Program Information\")])]),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-xl-6\"},[_c('b',[_vm._v(\"Clinic Name\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-xl-6\"},[_c('b',[_vm._v(\"Clinic Date\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Leadership\")])]),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-xl-6\"},[_c('b',[_vm._v(\"Clinic Director\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-xl-6\"},[_c('b',[_vm._v(\"Primary Phone\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-xl-6\"},[_c('b',[_vm._v(\"Secondary Phone\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-xl-6\"},[_c('b',[_vm._v(\"Alternate Phone\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-xl-6\"},[_c('b',[_vm._v(\"Email\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-xl-6\"},[_c('b',[_vm._v(\"Years Experience\")])])}]\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\nimport { defineComponent, computed } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\n\nimport date from '@/filters/date'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Archive',\n components: {\n Loading,\n },\n filters: {\n date,\n },\n setup() {\n const clinic = computed(() => store.getters.clinics.currentItem)\n return {\n clinic,\n }\n },\n})\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!./Archive.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!./Archive.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Archive.vue?vue&type=template&id=1a874eca&\"\nimport script from \"./Archive.vue?vue&type=script&lang=ts&\"\nexport * from \"./Archive.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-auto text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.clinic,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12 pt-3\"},[_c('ContactPickerAndEditor',{attrs:{\"accountNumber\":_vm.accountNumbers[0],\"isLoading\":_vm.loading,\"canChangeName\":_vm.canChangeName,\"isClean\":_vm.isClean},on:{\"submit\":_vm.onSubmit},model:{value:(_vm.sportContact),callback:function ($$v) {_vm.sportContact=$$v},expression:\"sportContact\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm\"}),_c('div',{staticClass:\"col-sm-auto text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.clinic,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('setup-complete-confirmation',{attrs:{\"upwardLeagueId\":_vm.clinic.upwardLeagueID},on:{\"change\":_vm.onModalStateChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm\"},[_c('h5',[_vm._v(\"Director\")]),_c('p',{staticClass:\"m-0\"},[_vm._v(\"Select the Director for this program from the list or create a new contact.\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"title\":\"\"},on:{\"change\":_vm.onModalChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('full-body',[_c('div',{staticClass:\"p-3\"},[_c('h4',{staticClass:\"mt-4\"},[_vm._v(\"Next Steps\")]),_c('p',[_vm._v(\" Visit the \"),_c('a',{attrs:{\"href\":'../' + _vm.upwardLeagueId + '/resources/director'}},[_vm._v(\"resource section\")]),_vm._v(\" to view your digital resources for this clinic program. \")]),_c('p',[_vm._v(\" You may also purchase items for your clinic program by visiting the \"),_c('a',{attrs:{\"href\":'/programs/clinic/' + _vm.upwardLeagueId + '/ordering/products/merchandiseorder/select'}},[_vm._v(\" ordering area.\")])]),_c('p',[_vm._v(\" Please note that because the resources for clinic and connect are provided by Upward Sports for free, any merchandise items ordered are not eligible to be returned. \")]),_c('div',{staticClass:\"row\"})])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.hideModal}},[_vm._v(\"OK\")])])],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\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport FullBody from '@/components/FullBody.vue'\n\nexport default defineComponent({\n name: 'SetupCompleteConfirmation',\n components: {\n Modal,\n FullBody,\n },\n props: {\n value: { type: Boolean, required: true },\n upwardLeagueId: { type: String, required: false, default: '' },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(props.value)\n\n function hideModal() {\n modalIsVisible.value = false\n onModalChange()\n }\n\n watch(\n () => props.value,\n () => {\n modalIsVisible.value = props.value\n }\n )\n\n function onModalChange() {\n ctx.emit('input', modalIsVisible.value)\n ctx.emit('change', modalIsVisible.value)\n }\n\n return {\n modalIsVisible,\n onModalChange,\n hideModal,\n }\n },\n})\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!./SetupCompleteConfirmation.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!./SetupCompleteConfirmation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SetupCompleteConfirmation.vue?vue&type=template&id=53aa54b6&\"\nimport script from \"./SetupCompleteConfirmation.vue?vue&type=script&lang=ts&\"\nexport * from \"./SetupCompleteConfirmation.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\nimport { useClinicSetup } from '@/composables/ClinicSetup'\n\nimport { ContactToContactInfo, ContactInfoToContact, GetEmptyContactInfo } from '@/services/contactService'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\n\nimport ContactPickerAndEditor from '@/components/ContactPickerAndEditor.vue'\nimport { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\nimport { cloneDeep } from 'lodash'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport SetupCompleteConfirmation from '@/views/Clinics/vues/SetupCompleteConfirmation.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Leadership',\n components: {\n ContactPickerAndEditor,\n SaveContinueButton,\n SetupCompleteConfirmation,\n },\n setup(props, ctx) {\n const {\n clinic,\n storeClinic,\n loading,\n saveAndContinue,\n beforeRouteLeave,\n afterSaveNew,\n afterUpdateExisting,\n initialLoadDone,\n save,\n } = useClinicSetup(ctx)\n\n const accountNumbers = computed(() => store.getters.authorization.accountNumbers)\n const sportContact = ref(GetEmptyContactInfo())\n const newId = ref('')\n const modalIsVisible = ref(false)\n\n onMounted(() => {\n afterSaveNew.value = afterSaveNewMethod\n afterUpdateExisting.value = afterUpdateExistingMethod\n })\n\n watch(\n () => initialLoadDone.value,\n () => {\n if (initialLoadDone.value && clinic.value) {\n sportContact.value = ContactToContactInfo(\n clinic.value.partnerContact!,\n clinic.value.leagueDirectorPartnerID\n )\n }\n },\n { immediate: true }\n )\n\n const canChangeName = computed(() => !(clinic.value && clinic.value!.leagueDirectorPartnerID))\n\n async function onSubmit() {\n clinic.value.partnerContact = sportContact.value\n ? ContactInfoToContact(sportContact.value)\n : getEmptyContact()\n clinic.value.leagueDirectorPartnerID = sportContact.value ? sportContact.value.id : 0\n\n afterSaveNew.value = null\n\n await save()\n if (clinic.value.partnerContact) {\n sportContact.value = ContactToContactInfo(\n clinic.value!.partnerContact!,\n clinic.value!.leagueDirectorPartnerID\n )\n }\n afterSaveNew.value = afterSaveNewMethod\n }\n\n const isClean = computed(\n () => storeClinic.value.leagueDirectorPartnerID === clinic.value.leagueDirectorPartnerID\n )\n\n function afterUpdateExistingMethod() {\n clinic.value = { ...cloneDeep(storeClinic.value) }\n ctx.root.$router.push(`/programs/clinic/${clinic.value.upwardLeagueID}/setup/information`)\n }\n\n async function onModalStateChange() {\n await ctx.root.$router.push('/')\n }\n\n async function afterSaveNewMethod() {\n const result = await store.dispatch.clinics.create({ item: clinic.value })\n\n if (result) {\n clinic.value = { ...result }\n newId.value = clinic.value.upwardLeagueID ?? ''\n }\n modalIsVisible.value = true\n }\n\n return {\n saveAndContinue,\n clinic,\n loading,\n initialLoadDone,\n beforeRouteLeave,\n accountNumbers,\n sportContact,\n onSubmit,\n canChangeName,\n isClean,\n modalIsVisible,\n onModalStateChange,\n }\n },\n beforeRouteLeave(to, from, next) {\n this.beforeRouteLeave(to, from, next)\n },\n})\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!./Leadership.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!./Leadership.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Leadership.vue?vue&type=template&id=635768d6&\"\nimport script from \"./Leadership.vue?vue&type=script&lang=ts&\"\nexport * from \"./Leadership.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'\nimport Setup from '@/views/Clinics/Setup.vue'\nimport Information from '@/views/Clinics/Information.vue'\nimport ClinicIndex from '@/views/Clinics/ClinicIndex.vue'\nimport orders from '@/router/orders'\nimport resources from './resources'\nimport { idExpression } from '@/lib/support/router/idHelper'\nimport Archive from '@/views/Clinics/Archive.vue'\nimport Leadership from '@/views/Clinics/Leadership.vue'\n\nexport default [\n {\n path: `clinic/${idExpression}`,\n component: ClinicIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/clinic/${idExpression}/setup`,\n },\n {\n path: 'setup',\n component: Setup,\n children: [\n {\n path: '/',\n redirect: `/programs/clinic/${idExpression}/setup/information`,\n },\n {\n path: 'information',\n component: Information,\n },\n {\n path: 'leadership',\n component: Leadership,\n },\n {\n path: 'archive',\n component: Archive,\n },\n ],\n },\n ...resources('Clinic'),\n ...orders('clinic'),\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex flex-row flex-grow-1 bg-light-2\"},[_c('vertical-tabs',{attrs:{\"tabs\":_vm.tabs}}),_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { leagueScoringTypes } from '@/store/leagueScoringTypes'\n\nexport function isNoStanding(typeLeagueScoringID: string | null) {\n let retval = false\n const leagueScoring = leagueScoringTypes.state.items.find((x) => x.upwardTypeID === typeLeagueScoringID)\n if (leagueScoring) {\n retval = leagueScoring.isNoStanding!\n }\n\n return retval\n}\n\nexport function isWinLoss(typeLeagueScoringID: string | null) {\n let retval = false\n const leagueScoring = leagueScoringTypes.state.items.find((x) => x.upwardTypeID === typeLeagueScoringID)\n if (leagueScoring) {\n retval = leagueScoring.isWinLoss!\n }\n\n return retval\n}\n\nexport function isWinLossScoring(typeLeagueScoringID: string | null) {\n let retval = false\n const leagueScoring = leagueScoringTypes.state.items.find((x) => x.upwardTypeID === typeLeagueScoringID)\n if (leagueScoring) {\n retval = leagueScoring.isWinLossScoring!\n }\n\n return retval\n}\n\nexport const LeagueScoringTypes: Record = {\n NOSTANDINGS: 'NOSTANDINGS',\n WIN_LOSS: 'WIN_LOSS',\n WIN_LOSS_SCORING: 'WIN_LOSS_SCORING',\n}\n","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, onMounted, onUnmounted, ref } from '@vue/composition-api'\n\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport Modal from '@/components/Modal.vue'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport divisionsClient from '@/clients/divisionsClient'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\n\nimport store from '@/store'\nimport { LeagueScoringTypes } from '@/lib/common/LeagueScoringTypes'\n\nexport default defineComponent({\n name: 'DivisionsAndTeams',\n components: {\n VerticalTabs,\n Loading,\n Modal,\n },\n setup(props, ctx) {\n const id = computed(() => ctx.root.$route.params.id)\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n let divisions = ref(null)\n\n onMounted(async () => {\n await store.dispatch.positionTypes.fetchAll(false) //get these cached up\n await store.dispatch.leagueScoringTypes.fetchAll(false)\n\n //get all divisions for this program\n const UpwId = ctx.root.$route.params.id\n divisions.value = await divisionsClient.retrieveAll(UpwId)\n //allDivisions.value = await divisionsClient.retrieveAll(UpwId)\n })\n\n const isLeague = computed(\n () => store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE\n )\n\n const hasScoringDiv = computed(\n () =>\n divisions.value?.some(\n (x) =>\n x.typeLeagueScoringID == LeagueScoringTypes.WIN_LOSS ||\n x.typeLeagueScoringID == LeagueScoringTypes.WIN_LOSS_SCORING\n ) ?? false\n )\n\n const baseRoute = computed(() => {\n if (ctx.root.$route.fullPath.indexOf('/camp/') > 0) {\n return `/programs/camp/${routeId.value}divisions_and_teams`\n }\n return `/programs/league/${routeId.value}divisions_and_teams`\n })\n\n const tabs = computed(() => [\n { text: 'Divisions', to: `${baseRoute.value}/divisions` },\n\n {\n text: 'Team Setup',\n tabs: [\n { text: 'Create Teams', to: `${baseRoute.value}/teams` },\n { text: 'Assign Coaches', to: `${baseRoute.value}/coaches` },\n ...(isLeague.value ? [{ text: 'Assign Practices', to: `${baseRoute.value}/practices` }] : []),\n ],\n },\n\n { text: 'Team Management', to: `${baseRoute.value}/team-management` },\n ...(isLeague.value && hasScoringDiv.value\n ? [{ text: 'Standings/Scores', to: `${baseRoute.value}/standings-scores` }]\n : []),\n ])\n\n onUnmounted(() => {\n store.commit.divisions.clearSelectedDivision(null)\n })\n\n return {\n tabs,\n }\n },\n})\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!./DivisionsAndTeams.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!./DivisionsAndTeams.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionsAndTeams.vue?vue&type=template&id=60e203c4&\"\nimport script from \"./DivisionsAndTeams.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionsAndTeams.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('div',{staticClass:\"row\"},[(_vm.loading)?_c('div',{staticClass:\"col mt-4\"},[_c('loading')],1):_vm._e(),(!_vm.loading && _vm.divisions)?[_c('div',{staticClass:\"col-xl-8\"},[(_vm.mode === 'VIEW')?_c('division-grid',{attrs:{\"divisions\":_vm.divisions,\"programs\":_vm.leaguePrograms,\"selected-program\":_vm.selectedProgramId},on:{\"onProgramChanged\":_vm.onProgramChanged,\"onDeleteConfirmed\":_vm.onDeleteDivision,\"onEdit\":_vm.onEditDivision,\"onAddNew\":_vm.addNew}}):_vm._e(),(_vm.mode === 'EDIT')?_c('division-form',{attrs:{\"division\":_vm.division,\"programs\":_vm.leaguePrograms,\"selected-program\":_vm.selectedProgramId,\"divisionsWithExclusions\":_vm.divisionsWithExclusions(_vm.division)},on:{\"onCanceled\":_vm.onEditCanceled,\"onSaved\":_vm.onDivisionSaved,\"onProgramChanged\":_vm.onProgramChanged}}):_vm._e()],1),_c('div',{staticClass:\"col-xl-4 mt-3 border-xl-left\"},[_c('division-grade-gender-list',{attrs:{\"program-id\":_vm.selectedProgramId,\"isByAge\":_vm.programIsByAge}})],1)]:_vm._e(),_c('info-modal',{attrs:{\"show\":_vm.showAddDivisionModal,\"title\":\"New Division\",\"button-text\":\"Go!\",\"show-close\":true},on:{\"close\":function($event){_vm.showAddDivisionModal = false}}},[_c('span',{staticClass:\"col-md-12 text-center p-5\"},[_vm._v(\"You don't have any divisions. Let's add one.\")])]),_c('division-import-modal',{attrs:{\"show\":_vm.showImportModal,\"previous-divisions\":_vm.previousDivisions,\"isByAge\":_vm.programIsByAge},on:{\"onResponse\":_vm.onImportResponse}})],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',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('h5',{staticClass:\"col-2\"},[_vm._v(\"Divisions\")]),_c('div',{staticClass:\"col-sm-10 pl-0 text-right\"},[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.addNew}},[_c('i',{staticClass:\"fa fa-check mr-2\"}),_vm._v(\" Add New \")])])]),(_vm.programs.cheerProgramTypeID)?_c('type-program-tab',{staticClass:\"mb-3\",attrs:{\"programs\":_vm.programs},model:{value:(_vm.internalSelectedProgram),callback:function ($$v) {_vm.internalSelectedProgram=$$v},expression:\"internalSelectedProgram\"}}):_vm._e(),(_vm.gridData.length === 0)?_c('div',{staticClass:\"text-center rounded border p-5 m-auto mt-2\",staticStyle:{\"max-width\":\"650px\"}},[_vm._v(\" You have no divisions for this program. Click the Add New button to get started \")]):_vm._e(),(_vm.gridData.length > 0)?_c('simple-grid',{attrs:{\"grid-data\":_vm.gridData,\"columns\":_vm.columns,\"show-edit-button\":true,\"show-delete-button\":true,\"deleteButtonClasses\":\"btn\",\"editButtonClasses\":\"btn\",\"delete-button-inner-html\":\"\",\"edit-button-inner-html\":\"\",\"table-striped\":true},on:{\"editButtonClicked\":_vm.editClicked,\"deleteButtonClicked\":_vm.deleteClicked,\"rowDoubleClicked\":_vm.editClicked}}):_vm._e(),_c('confirmation-modal',{attrs:{\"show\":_vm.showDeleteConfirmation,\"title\":(\"Delete \" + (_vm.selectedDivision.divisionName) + \"?\"),\"is-small\":true},on:{\"onResponse\":_vm.onDeleteConfirmationResponse},scopedSlots:_vm._u([{key:\"confirm\",fn:function(){return [_c('i',{staticClass:\"fa fa-minus-circle text-white\"}),_vm._v(\" Delete \")]},proxy:true},{key:\"cancel\",fn:function(){return [_vm._v(\" Cancel \")]},proxy:true}])},[_c('div',{staticClass:\"m-4\"},[_vm._v(\"You will not be able to recover this division. Do you want to delete it?\")])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { LeagueDivisionGradeInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionGradeInfo'\nimport store from '@/store'\n\nexport const GradeRangeArrayToText = (grades: LeagueDivisionGradeInfo[] | null, isByAge: boolean) => {\n let gradeRange: string | null = null\n if (grades) {\n if (grades.length === 1) {\n gradeRange = isByAge\n ? store.getters.gradeTypes.byUpwardTypeId(grades[0].typeGradeID)?.ageByCutoff\n : store.getters.gradeTypes.byUpwardTypeId(grades[0].typeGradeID)?.description\n }\n if (grades.length > 1) {\n gradeRange = `${\n isByAge\n ? store.getters.gradeTypes.byUpwardTypeId(grades[0].typeGradeID)?.ageByCutoff\n : store.getters.gradeTypes.byUpwardTypeId(grades[0].typeGradeID)?.description\n } - ${\n isByAge\n ? store.getters.gradeTypes.byUpwardTypeId(grades[grades.length - 1].typeGradeID)?.ageByCutoff\n : store.getters.gradeTypes.byUpwardTypeId(grades[grades.length - 1].typeGradeID)?.description\n }`\n }\n }\n return gradeRange ? gradeRange : ''\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport { LeagueDivision } from '@/GeneratedTypes/LeagueDivision'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport { GenderIdToText } from '@/lib/support/models/MiscMappings/Gender'\nimport { isByAge } from '@/lib/support/models/LeagueListItem/data'\nimport { GradeRangeArrayToText } from '@/lib/support/models/GeneratedTypes/ListInfo/LeagueDivisionGradeInfo'\n\ninterface GridData {\n gradeLabel: string\n genderLabel: string\n divisionName: string\n countLabel: number\n divisionObject: LeagueDivision\n}\n\nexport default defineComponent({\n name: 'DivisionGrid',\n components: {\n SimpleGrid,\n TypeProgramTab,\n ConfirmationModal,\n },\n props: {\n programs: { type: Object as PropType, required: true },\n divisions: { type: Array as PropType, default: [], required: false },\n selectedProgram: { type: String, required: true },\n },\n setup(props, ctx) {\n const showDeleteConfirmation = ref(false)\n const selectedDivision = ref(getEmptyDivision())\n const internalSelectedProgram = ref(props.selectedProgram)\n\n const programIsByAge = computed(() => isByAge(props.programs))\n\n const columns = computed((): GridColumn[] => {\n return [\n { field: 'divisionName', headerText: 'Division Name', width: 300 } as GridColumn,\n { field: 'genderLabel', headerText: 'Gender' } as GridColumn,\n { field: 'gradeLabel', headerText: programIsByAge.value ? 'Ages' : 'Grades' } as GridColumn,\n { field: 'countLabel', headerText: 'Participant Count', textAlign: 'Right' } as GridColumn,\n ]\n })\n\n const gridData = computed(() => {\n const grid: GridData[] = []\n if (props.divisions.length > 0) {\n props.divisions.forEach((division: LeagueDivision) => {\n grid.push({\n divisionName: division.divisionName,\n genderLabel: GenderIdToText(division.gender),\n gradeLabel: GradeRangeArrayToText(division.grades, programIsByAge.value),\n countLabel: division.participantCount,\n divisionObject: division,\n })\n })\n }\n return grid\n })\n\n function editClicked(div: GridData) {\n selectedDivision.value = div.divisionObject\n ctx.emit('onEdit', div.divisionObject)\n }\n\n function deleteClicked(div: GridData) {\n selectedDivision.value = div.divisionObject\n showDeleteConfirmation.value = true\n }\n\n function onDeleteConfirmationResponse(confirmed: boolean) {\n showDeleteConfirmation.value = false\n if (confirmed) {\n ctx.emit('onDeleteConfirmed', selectedDivision.value)\n }\n }\n\n function addNew() {\n ctx.emit('onAddNew')\n }\n\n watch(\n () => internalSelectedProgram.value,\n (newValue: string) => {\n ctx.emit('onProgramChanged', newValue)\n }\n )\n\n watch(\n () => props.selectedProgram,\n () => {\n internalSelectedProgram.value = props.selectedProgram\n }\n )\n\n function getEmptyDivision() {\n return {\n leagueID: 0,\n typeProgramID: '',\n divisionID: 0,\n accountNumber: '',\n divisionName: '',\n gender: '',\n gameCount: 0,\n practiceLength: 0,\n gameLength: 0,\n typeGameFormatID: '',\n typePracticePlanID: '',\n typeLeagueScoringID: null,\n showStandingsTeamPage: false,\n lastPracticeDate: null,\n overrideNumberOfSegments: 0,\n isInCheerSchedulerMapping: false,\n grades: [],\n exclusionDates: [],\n participantCount: 0,\n }\n }\n\n return {\n addNew,\n internalSelectedProgram,\n gridData,\n columns,\n editClicked,\n deleteClicked,\n showDeleteConfirmation,\n selectedDivision,\n onDeleteConfirmationResponse,\n }\n },\n})\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!./DivisionGrid.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!./DivisionGrid.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionGrid.vue?vue&type=template&id=7566c4a2&scoped=true&\"\nimport script from \"./DivisionGrid.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionGrid.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DivisionGrid.vue?vue&type=style&index=0&id=7566c4a2&lang=scss&scoped=true&\"\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 \"7566c4a2\",\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('div',{staticClass:\"mb-5 mt-3\"},[_c('vee-validate-form',{on:{\"submit\":_vm.submit}},[_c('div',{staticClass:\"row mb-3\"},[_c('h5',{staticClass:\"col-2\"},[_vm._v(\"Divisions\")]),_c('div',{staticClass:\"col-10 text-right\"},[_c('button',{staticClass:\"btn btn-success mr-3\",attrs:{\"type\":\"submit\"}},[(_vm.isSaving)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Save \")]],2),_c('button',{staticClass:\"btn btn-outline-dark\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('section-header',{staticClass:\"mb-3 p-2\",attrs:{\"title\":\"Division Information\"}})],1),(_vm.isNewDivision)?_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.programList.length > 1),expression:\"programList.length > 1\"}],staticClass:\"col-sm-12\"},[_c('radio-group-input',{attrs:{\"label\":\"Program\",\"required\":true,\"value-property-name\":\"id\",\"text-property-name\":\"description\",\"items-list\":_vm.programList,\"item-class\":\"form-check\"},on:{\"change\":_vm.onProgramChanged},model:{value:(_vm.internalDivision.typeProgramID),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"typeProgramID\", $$v)},expression:\"internalDivision.typeProgramID\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-12\"},[_c('text-input',{staticClass:\"mb-0\",attrs:{\"label\":\"Division Name\",\"vee-validate-rules\":\"required\",\"maxlength\":64},model:{value:(_vm.internalDivision.divisionName),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"divisionName\", $$v)},expression:\"internalDivision.divisionName\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('gender-select',{attrs:{\"label\":\"Gender\",\"required\":\"\",\"blank-item-text\":\"Select a gender\",\"blank-item-value\":'',\"show-blank-item\":true,\"vee-validate-rules\":\"required\",\"limit-selection-to\":_vm.validGenders},model:{value:(_vm.internalDivision.gender),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"gender\", $$v)},expression:\"internalDivision.gender\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[(!_vm.isCamp && !_vm.isUpwardSelect)?_c('practice-plan-select',{attrs:{\"label\":_vm.practicePlanLabel,\"required\":\"\",\"blank-item-text\":\"Select a rule level\",\"blank-item-value\":\"\",\"show-blank-item\":true,\"program-type-id\":_vm.internalDivision.typeProgramID,\"vee-validate-rules\":\"non_zero_required\"},model:{value:(_vm.internalDivision.typePracticePlanID),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"typePracticePlanID\", $$v)},expression:\"internalDivision.typePracticePlanID\"}}):_vm._e()],1),_c('div',{staticClass:\"col-sm-4\"},[(!_vm.isCheer && !_vm.isCamp && !_vm.isUpwardSelect)?_c('game-format-select',{attrs:{\"label\":\"Game Format\",\"required\":\"\",\"blank-item-text\":\"Select a game format\",\"blank-item-value\":\"\",\"show-blank-item\":true,\"program-type-id\":_vm.internalDivision.typeProgramID,\"vee-validate-rules\":\"required\"},model:{value:(_vm.internalDivision.typeGameFormatID),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"typeGameFormatID\", $$v)},expression:\"internalDivision.typeGameFormatID\"}}):_vm._e()],1)]),(_vm.internalDivision.gender)?_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-12 py-0\"},[_c('grade-range-dropdowns',{staticClass:\"col-8 p-0\",attrs:{\"required\":\"\",\"label\":_vm.isByAge ? 'Ages Participating' : 'Grades Participating',\"show-range-hint\":true,\"start-grade\":_vm.startGrade,\"end-grade\":_vm.endGrade,\"valid-grades\":_vm.validGradeTypeIDs,\"isByAge\":_vm.isByAge},on:{\"change\":_vm.setGrades}})],1)]):_vm._e(),(_vm.isLeague)?[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('section-header',{staticClass:\"mt-3 p-2\",attrs:{\"title\":\"Scheduling Information\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6\"},[_c('number-input',{staticClass:\"mb-0\",attrs:{\"label\":\"Number of Games\",\"required\":\"\",\"showSpinButton\":false,\"vee-validate-rules\":\"between:1,100|required\"},model:{value:(_vm.internalDivision.gameCount),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"gameCount\", $$v)},expression:\"internalDivision.gameCount\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('label',{staticClass:\"col-12 pb-0\"},[_vm._v(\" What block of time would you like to schedule on the calendar for practices and games? \")]),_c('div',{staticClass:\"col-sm-6 pt-0\"},[_c('number-input',{staticClass:\"mb-0\",attrs:{\"label\":\"Practices\",\"required\":\"\",\"sub-label\":\"(minutes)\",\"spinStep\":15,\"sub-label-inline\":true,\"vee-validate-rules\":\"between:1,120|required\"},model:{value:(_vm.internalDivision.practiceLength),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"practiceLength\", $$v)},expression:\"internalDivision.practiceLength\"}})],1),_c('div',{staticClass:\"col-sm-6 pt-0\"},[_c('number-input',{staticClass:\"mb-0\",attrs:{\"label\":\"Games\",\"required\":\"\",\"sub-label\":\"(minutes)\",\"spinStep\":15,\"sub-label-inline\":true,\"vee-validate-rules\":\"between:1,120|required\"},model:{value:(_vm.internalDivision.gameLength),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"gameLength\", $$v)},expression:\"internalDivision.gameLength\"}})],1)]),(!_vm.isCheer)?_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('league-scoring-select',{attrs:{\"label\":\"League Scoring and Standings\",\"required\":\"\",\"vee-validate-rules\":\"required\"},model:{value:(_vm.internalDivision.typeLeagueScoringID),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"typeLeagueScoringID\", $$v)},expression:\"internalDivision.typeLeagueScoringID\"}})],1)]):_vm._e(),(!_vm.isCheer)?_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12 pt-0\"},[(!_vm.isNoStanding)?_c('checkbox-input',{attrs:{\"label\":\"Display Standings on Team Page.\"},model:{value:(_vm.internalDivision.showStandingsTeamPage),callback:function ($$v) {_vm.$set(_vm.internalDivision, \"showStandingsTeamPage\", $$v)},expression:\"internalDivision.showStandingsTeamPage\"}}):_vm._e()],1)]):_vm._e()]),_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-auto pr-0\"},[_c('h4',[_vm._v(\"Exclusions\")])]),_c('div',{staticClass:\"col\"},[(_vm.divisionsWithExclusions.length)?_c('i',{staticClass:\"fa fa-copy clickable\",attrs:{\"title\":\"Copy exclusions from another division\"},on:{\"click\":_vm.clickCopyExclusions}}):_vm._e()])]),_vm._v(\" Select dates on the calendar below to indicate that practices cannot be scheduled. Remove an exclusion by clicking the date again. \"),(_vm.hasPracticesScheduled)?_c('div',{staticClass:\"mt-3\"},[_vm._v(\" Dates with red dots already have practices scheduled. \")]):_vm._e()]),_c('div',{staticClass:\"col-auto\"},[_c('DatesInput',{attrs:{\"allowedDateMethod\":_vm.isPracticeNight,\"dateHasEventMethod\":_vm.hasPracticeEvent,\"minDate\":_vm.minCalendarDate,\"maxDate\":_vm.maxCalendarDate,\"scrollToDate\":_vm.scrollToDate},model:{value:(_vm.dates),callback:function ($$v) {_vm.dates=$$v},expression:\"dates\"}}),(_vm.datesSorted.length > 0)?_c('label',{staticClass:\"text-uppercase\"},[_vm._v(\"Dates to not schedule practices\")]):_vm._e(),(_vm.showRemoveCheckbox)?_c('checkbox-input',{attrs:{\"label\":\"Remove practices on selected dates\",\"value\":_vm.removePractices},model:{value:(_vm.removePractices),callback:function ($$v) {_vm.removePractices=$$v},expression:\"removePractices\"}}):_vm._e(),_c('ul',_vm._l((_vm.datesSorted),function(d){return _c('li',{key:d && d.toString(),staticClass:\"date\"},[(_vm.hasPracticeEvent(d))?_c('div',[(_vm.hasPracticeEvent(d))?_c('v-popover',{attrs:{\"trigger\":\"click\"}},[_vm._v(\" \"+_vm._s(_vm.shortDateFormat(d))+\" - Practices \"+_vm._s(_vm.removePractices ? ' WILL' : ' will NOT ')+\" be removed. \"),_c('i',{staticClass:\"fas fa-info-circle clickable\",attrs:{\"title\":\"Click here to see practices\"}}),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"text-left clickable\"},_vm._l((_vm.divisionPracticeEvents(d)),function(practice){return _c('div',{key:practice.eventID,staticClass:\"text-center small text-muted\"},[_vm._v(\" \"+_vm._s(practice.description)+\": \"+_vm._s(practice.startTime)+\"-\"+_vm._s(practice.endTime)+\" \")])}),0)])],2):_vm._e()],1):_c('div',[_vm._v(\" \"+_vm._s(_vm.shortDateFormat(d))+\" \")])])}),0)],1)])])])]:_vm._e()],2),_c('confirmation-modal',{attrs:{\"title\":\"Copy Exclusions\",\"is-small\":\"\",\"show\":_vm.showCopyExclusionsModal},on:{\"onResponse\":_vm.confirmCopyExclusions}},[_vm._v(\" Select the division you want to copy exclusions from \"),_c('select-input',{attrs:{\"label\":\"Division To Copy From\",\"items-list\":_vm.divisionsWithExclusions,\"text-property-name\":\"divisionName\",\"value-property-name\":\"divisionID\"},model:{value:(_vm.divisionToCopy),callback:function ($$v) {_vm.divisionToCopy=$$v},expression:\"divisionToCopy\"}})],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:\"form-group\"},[_c('input-label',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"input-name\":_vm.inputId,\"show-help\":_vm.showHelp},on:{\"helpClicked\":function($event){return _vm.$emit('helpClicked')}}}),_c('div',{staticClass:\"input-group\"},[(_vm.prependIcon)?_c('div',{staticClass:\"input-group-prepend\"},[_c('span',{staticClass:\"input-group-text\"},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.prependIcon})])]):_vm._e(),_c('v-date-picker',{attrs:{\"id\":_vm.inputId,\"multiple\":\"\",\"no-title\":\"\",\"min\":_vm.minDate,\"max\":_vm.maxDate,\"name\":\"date\",\"allowed-dates\":_vm.allowedDateMethod,\"events\":_vm.dateHasEventMethod},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}}),(_vm.appendIcon)?_c('div',{staticClass:\"input-group-append\"},[_c('span',{staticClass:\"input-group-text\"},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.appendIcon})])]):_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\nimport { defineComponent, ref, computed, watch, PropType, nextTick } from '@vue/composition-api'\nimport uuid from 'uuid'\n\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { isEqual } from 'lodash'\n\nexport default defineComponent({\n name: 'DatesInput',\n components: {\n InputLabel,\n },\n props: {\n required: { type: Boolean, default: false, required: false },\n strictMode: { type: Boolean, default: false, required: false },\n label: { type: String, default: '', required: false },\n placeholder: { type: String, default: '', required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n showHelp: { type: Boolean, default: false, required: false },\n minDate: { type: (null as unknown) as PropType, default: () => null, required: false },\n maxDate: { type: (null as unknown) as PropType, default: () => null, required: false },\n value: { required: true, type: Array as PropType },\n allowedDateMethod: { type: Function, default: () => true, required: false },\n dateHasEventMethod: { type: Function, default: () => false, required: false },\n scrollToDate: { type: String, default: undefined, required: false },\n },\n setup(props, ctx) {\n const internalValue = ref([])\n const inputId = ref('')\n\n function setInternalValue() {\n if (!props.value) {\n internalValue.value = []\n } else {\n internalValue.value = props.value.map((x) => x.toISOString().split('T')[0])\n }\n }\n\n //private created()\n setInternalValue()\n inputId.value = 'datepicker-' + uuid.v4()\n if (props.scrollToDate) {\n internalValue.value.push(props.scrollToDate)\n nextTick(() => internalValue.value.pop())\n }\n\n const internalValueAsString = computed(() => internalValue.value.map((x) => new Date(x + 'T00:00:00')))\n\n function handleChange() {\n ctx.emit('input', internalValueAsString.value)\n }\n\n watch(\n () => internalValue.value,\n () => {\n const intValue = internalValueAsString.value\n if (!isEqual(intValue, props.value)) {\n handleChange()\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n const intValue = internalValue.value.map((x) => new Date(x))\n if (!isEqual(intValue, props.value)) {\n setInternalValue()\n }\n }\n )\n\n return {\n inputId,\n internalValue,\n }\n },\n})\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!./DatesInput.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!./DatesInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DatesInput.vue?vue&type=template&id=fee6d8d2&\"\nimport script from \"./DatesInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./DatesInput.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 { VDatePicker } from 'vuetify/lib/components/VDatePicker';\ninstallComponents(component, {VDatePicker})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isLoading)?_c('div',{staticClass:\"col\"},[_c('loading')],1):_vm._e(),(!_vm.isLoading)?_c('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"items-list\":_vm.gameFormatList,\"value-property-name\":\"typeGameFormatID\",\"text-property-name\":\"typeGameFormatID\",\"enabled\":true,\"show-blank-item\":_vm.showBlankItem,\"blank-item-text\":_vm.blankItemText,\"blank-item-value\":_vm.blankItemValue,\"vee-validate-rules\":_vm.VeeValidateRules},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}}):_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\nimport { defineComponent, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport divisionsClient from '@/clients/divisionsClient'\nimport { TypeProgramGameFormatInfo } from '@/GeneratedTypes/ListInfo/TypeProgramGameFormatInfo.ts'\n\nexport default defineComponent({\n name: 'GameFormatSelect',\n components: {\n SelectInput,\n Loading,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n value: { type: (null as unknown) as PropType, required: true },\n blankItemText: { type: String, default: '', required: false },\n showBlankItem: { type: Boolean, default: false, required: false },\n blankItemValue: { type: String, default: '', required: false },\n programTypeId: { type: String, required: true },\n VeeValidateRules: { type: String, default: '', required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n const isLoading = ref(false)\n const gameFormatList = ref([])\n\n async function fetchAll() {\n if (isLoading.value) {\n return false\n }\n const gameFormats = await divisionsClient.retrieveGameFormats(props.programTypeId)\n\n if (gameFormats) {\n gameFormatList.value = gameFormats\n }\n\n isLoading.value = false\n }\n\n onMounted(async () => {\n await fetchAll()\n })\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n return {\n isLoading,\n gameFormatList,\n internalValue,\n handleChange,\n }\n },\n})\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!./GameFormatSelect.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!./GameFormatSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameFormatSelect.vue?vue&type=template&id=26591c6a&\"\nimport script from \"./GameFormatSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameFormatSelect.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('div',[(_vm.isLoading)?_c('div',{staticClass:\"col\"},[_c('loading')],1):_vm._e(),(!_vm.isLoading)?_c('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"items-list\":_vm.practicePlanList,\"value-property-name\":\"upwardTypeID\",\"text-property-name\":_vm.isByAge ? 'descriptionByAge' : 'description',\"enabled\":true,\"show-blank-item\":_vm.showBlankItem,\"blank-item-text\":_vm.blankItemText,\"blank-item-value\":_vm.blankItemValue,\"vee-validate-rules\":_vm.VeeValidateRules},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}}):_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\nimport { defineComponent, ref, computed, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport divisionsClient from '@/clients/divisionsClient'\nimport { UpwardPracticePlanTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPracticePlanTypeID.ts'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PracticePlanSelect',\n components: {\n SelectInput,\n Loading,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n blankItemText: { type: String, default: '', required: false },\n programTypeId: { type: String, required: true },\n showBlankItem: { type: Boolean, default: false, required: false },\n blankItemValue: { type: String, required: false, default: '' },\n VeeValidateRules: { type: String, default: '', required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value ?? null)\n const isLoading = ref(false)\n const practicePlanList = ref([])\n const isByAge = computed(() => store.getters.leagueAbstraction.isByAge)\n async function fetchAll() {\n if (isLoading.value) {\n return false\n }\n const practicePlans = await divisionsClient.retrievePracticePlans(props.programTypeId)\n\n if (practicePlans) {\n practicePlanList.value = practicePlans\n }\n\n isLoading.value = false\n }\n\n onMounted(async () => {\n await fetchAll()\n })\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n async () => {\n internalValue.value = props.value\n await fetchAll()\n }\n )\n\n watch(\n () => props.programTypeId,\n async () => {\n await fetchAll()\n }\n )\n\n return {\n isLoading,\n isByAge,\n practicePlanList,\n internalValue,\n handleChange,\n }\n },\n})\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!./PracticePlanSelect.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!./PracticePlanSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PracticePlanSelect.vue?vue&type=template&id=7be9b26c&\"\nimport script from \"./PracticePlanSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./PracticePlanSelect.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 { LeagueListItem } from '@/models/Program/LeagueListItem'\n\nexport const programList = (programs: LeagueListItem) => {\n const list: programListType[] = []\n if (programs.programTypeID) {\n list.push({\n id: programs.programTypeID,\n description: programs.programTypeDescription,\n })\n }\n if (programs.cheerProgramTypeID) {\n list.push({\n id: programs.cheerProgramTypeID,\n description: programs.cheerProgramTypeDescription,\n })\n }\n\n return list\n}\n\nexport interface programListType {\n id: string | null\n description: string | null\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"enabled\":!_vm.isLoading,\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"items-list\":_vm.leagueScoringTypes},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { UpwardLeagueScoringTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardLeagueScoringTypeID'\nimport { LeagueScoringTypes as LST } from '@/lib/common/LeagueScoringTypes'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'LeagueScoringTypeSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n required: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isLoading = ref(false)\n const selectedItem = ref(!props.value || props.value === '' ? LST.NOSTANDINGS : props.value)\n const leagueScoringTypes = ref([])\n\n async function loadItems() {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n await getLeagueScoringTypes()\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => selectedItem.value,\n () => {\n if (props.value !== selectedItem.value) {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = !props.value || props.value === '' ? LST.NOSTANDINGS : props.value\n }\n )\n\n function getLeagueScoringTypes() {\n leagueScoringTypes.value = store.getters.leagueScoringTypes.allItems\n }\n\n return {\n isLoading,\n selectedItem,\n leagueScoringTypes,\n }\n },\n})\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!./LeagueScoringSelect.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!./LeagueScoringSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LeagueScoringSelect.vue?vue&type=template&id=1186734c&\"\nimport script from \"./LeagueScoringSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./LeagueScoringSelect.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 * gameStart is mistyped, and comes in as a string\n * @param s\n * @return Date associated with whatever is passed in\n */\nimport dayjs from 'dayjs'\nexport const NULL_DATE = dayjs('0001-01-01T00:00:00').toDate()\n\n/**\n * Convert a string, Date, epoch or nothing into a date.\n * @param s - param\n * @return {Date}\n */\nexport function toDate(s: string | Date | number | null): Date {\n return dayjs(s ?? NULL_DATE).toDate()\n}\n\n/**\n * Asks the question if ti si a null date.\n * @param d - date\n * @return {boolean} if null date\n */\nexport function isNullDate(d: Date) {\n return !d || d.valueOf() <= NULL_DATE.valueOf()\n}\n\nexport const SERVER_DATE_FORMAT = 'YYYY-MM-DD HH:mm:ss'\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\nimport { LeagueDivision } from '@/GeneratedTypes/LeagueDivision'\nimport { DivisionPracticeExclusion } from '@/GeneratedTypes/DivisionPracticeExclusion'\nimport { FacilityEventInfo } from '@/GeneratedTypes/ListInfo/FacilityEventInfo'\nimport { cloneDeep } from 'lodash'\nimport TextInput from '@/elements/TextInput.vue'\nimport NumberInput from '@/elements/NumberInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport DatesInput from '@/elements/DatesInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport GradeRangeDropdowns from '@/elements/GradeRangeDropdowns.vue'\nimport GenderSelect from '@/elements/GenderSelect.vue'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport GameFormatSelect from '@/elements/GameFormatSelect.vue'\nimport PracticePlanSelect from '@/elements/PracticePlanSelect.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nimport { getGrades } from '@/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades'\nimport divisionsClient from '@/clients/divisionsClient'\nimport facilitiesClient from '@/clients/facilitiesClient'\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { Genders } from '@/lib/support/models/MiscMappings/Gender'\nimport { programList, programListType } from '@/lib/support/models/Program/LeagueListItem'\nimport LeagueScoringSelect from '@/components/LeagueScoringSelect.vue'\n\nimport { Getter } from 'vuex-class'\nimport * as authorizationStore from '@/store/authorization'\nimport SectionHeader from '@/components/SectionHeader.vue'\nimport * as leaguesStore from '@/store/leagues'\nimport { namespace as CampNamespace, getterNames as CampGetters } from '@/store/camps'\n\nimport { League } from '@/GeneratedTypes/League'\nimport { Camp } from '@/GeneratedTypes/Camp'\nimport InputLabel from '@/elements/InputLabel.vue'\n\nimport store from '@/store'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\nimport { toDate } from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport dayjs from 'dayjs'\nimport { isCheer } from '@/lib/common/ProgramTypes'\nimport { isNoStanding } from '@/lib/common/LeagueScoringTypes'\n\nlet useTestData: any = null\nif (process.env.VUE_APP_USE_TEST_DATA == 'YES') {\n import('@/components/testData/divisionForm').then((x) => (useTestData = x))\n}\n\n@Component({\n components: {\n TextInput,\n SelectInput,\n DatesInput,\n CheckboxInput,\n GenderSelect,\n RadioGroupInput,\n Loading,\n GameFormatSelect,\n PracticePlanSelect,\n VeeValidateForm,\n SectionHeader,\n NumberInput,\n InputLabel,\n GradeRangeDropdowns,\n ConfirmationModal,\n LeagueScoringSelect,\n },\n})\nexport default class DivisionForm extends Vue {\n @Getter(authorizationStore.getterNames.firstAccountNumber, { namespace: authorizationStore.namespace })\n private firstAccountNumber!: string\n\n @Getter(leaguesStore.getterNames.currentItem, { namespace: leaguesStore.namespace })\n private currentLeague!: League\n\n @Getter(CampGetters.currentItem, { namespace: CampNamespace })\n private camp!: Camp\n\n @Prop({ type: Object, required: true })\n private readonly division!: LeagueDivision\n\n @Prop({ type: Array, default: () => [] })\n divisionsWithExclusions!: LeagueDivision[]\n\n @Prop({ type: Object, required: true })\n private readonly programs!: LeagueListItem\n\n @Prop({ type: String, required: true })\n private readonly selectedProgram!: string\n\n private isSaving = false\n private internalDivision: LeagueDivision = cloneDeep(this.division)\n private startGrade = 'K3'\n private endGrade = '12th'\n private validGradesForGender: string[] = []\n private selectedGrades: string[] = []\n private programList!: programListType[]\n private isNewDivision = false\n private dates: Date[] = []\n private divisionEvents: FacilityEventInfo[] = []\n private scrollToDate: string | undefined = undefined\n private hasPracticesScheduled = false\n private removePractices = false\n private showCopyExclusionsModal = false\n private divisionToCopy = 0\n private grades = getGrades(false)\n\n private created() {\n this.isNewDivision = this.division.leagueID === 0\n this.setProgram()\n if (useTestData) {\n useTestData.setFieldsForNewDivision(this.internalDivision)\n }\n }\n\n get isLeague() {\n return store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE\n }\n\n get isUpwardSelect() {\n return store.getters.leagueAbstraction.isUpwardSelect\n }\n\n get isByAge() {\n return store.getters.leagueAbstraction.isByAge\n }\n\n get exclusionDates(): DivisionPracticeExclusion[] {\n return this.dates.map((x) => ({ excludeDate: x }))\n }\n\n get datesSorted() {\n return this.dates.sort((x, y) => (x.valueOf() > y.valueOf() ? 1 : -1))\n }\n\n get minCalendarDate() {\n return dayjs(this.programs.myLeagueInfo!.firstPracticeDate!).toISOString().substr(0, 10)\n }\n\n get maxCalendarDate() {\n return dayjs(this.programs.myLeagueInfo!.seasonEndDate!).toISOString().substr(0, 10)\n }\n\n get validGradeTypeIDs() {\n return this.validGradesForGender.map((g) => store.getters.gradeTypes.byUpwardTypeId(g))\n }\n\n private shortDateFormat(val: Date) {\n return dayjs(val).format('MMM D')\n }\n\n clickCopyExclusions() {\n this.showCopyExclusionsModal = true\n }\n\n private confirmCopyExclusions(b: boolean) {\n if (b && this.divisionToCopy) {\n const div = this.divisionsWithExclusions.find((x) => x.divisionID == this.divisionToCopy)\n if (div) {\n this.dates = div.exclusionDates?.map((x) => toDate(x.excludeDate)) ?? []\n }\n }\n this.showCopyExclusionsModal = false\n }\n\n private get practicePlanLabel() {\n if (this.internalDivision.typeProgramID.includes('BASKETBALL')) {\n return 'Rule Level'\n } else {\n return 'Practice Plan'\n }\n }\n\n private setGrades(grades: string[]) {\n this.selectedGrades = grades\n }\n\n private get isCamp() {\n return this.programs.opportunityTypeDescription === 'Camp'\n }\n\n private get leagueId() {\n if (this.isCamp) {\n return this.camp.id\n } else {\n return this.currentLeague.id\n }\n }\n\n private get minGrade() {\n if (this.isCheer) {\n if (this.internalDivision.gender === Genders.both) {\n return this.programs.eitherCheerGradeMin\n }\n\n if (this.internalDivision.gender === Genders.male) {\n return this.programs.maleCheerGradeMin\n }\n\n if (this.internalDivision.gender === Genders.female) {\n return this.programs.femaleCheerGradeMin\n }\n }\n\n if (this.internalDivision.gender === Genders.both) {\n return this.programs.eitherGradeMin\n }\n\n if (this.internalDivision.gender === Genders.male) {\n return this.programs.maleGradeMin\n }\n\n if (this.internalDivision.gender === Genders.female) {\n return this.programs.femaleGradeMin\n }\n return\n }\n\n private get maxGrade() {\n if (this.isCheer) {\n if (this.internalDivision.gender === Genders.both) {\n return this.programs.eitherCheerGradeMax\n }\n\n if (this.internalDivision.gender === Genders.male) {\n return this.programs.maleCheerGradeMax\n }\n\n if (this.internalDivision.gender === Genders.female) {\n return this.programs.femaleCheerGradeMax\n }\n }\n\n if (this.internalDivision.gender === Genders.both) {\n return this.programs.eitherGradeMax\n }\n\n if (this.internalDivision.gender === Genders.male) {\n return this.programs.maleGradeMax\n }\n\n if (this.internalDivision.gender === Genders.female) {\n return this.programs.femaleGradeMax\n }\n }\n\n get validGenders(): string {\n //Cheer program\n if (this.isCheer) {\n if (this.programs.femaleCheerGradeMin !== '' && this.programs.maleCheerGradeMin !== '') {\n return Genders.both\n }\n\n if (this.programs.femaleCheerGradeMin !== '') {\n return Genders.female\n }\n\n if (this.programs.maleCheerGradeMin !== '') {\n return Genders.male\n }\n }\n\n //non-cheer program\n if (this.programs.femaleGradeMin !== '' && this.programs.maleGradeMin !== '') {\n return Genders.both\n }\n\n if (this.programs.femaleGradeMin !== '') {\n return Genders.female\n }\n\n if (this.programs.maleGradeMin !== '') {\n return Genders.male\n }\n\n return ''\n }\n\n private get isCheer() {\n return isCheer(this.internalDivision.typeProgramID)\n }\n\n private formatGradesForSave() {\n return this.selectedGrades.map((grade: string) => {\n return {\n typeGradeID: grade,\n }\n })\n }\n\n private get isNoStanding() {\n return isNoStanding(this.internalDivision.typeLeagueScoringID)\n }\n\n private setProgram() {\n if (this.isNewDivision) {\n this.programList = programList(this.programs)\n if (this.selectedProgram) {\n this.internalDivision.typeProgramID = this.selectedProgram\n }\n }\n }\n\n private async submit() {\n if (this.isNewDivision) {\n await this.saveNew()\n } else {\n await this.saveExisting()\n }\n }\n\n private async saveExisting() {\n this.isSaving = true\n this.internalDivision.exclusionDates = this.exclusionDates\n try {\n this.internalDivision.grades = this.formatGradesForSave()\n await divisionsClient.validateExisting(this.$route.params.id, this.internalDivision)\n await divisionsClient.update(this.$route.params.id, this.internalDivision, this.removePractices)\n } finally {\n this.isSaving = false\n this.$emit('onSaved', this.internalDivision)\n }\n }\n\n private async saveNew() {\n this.isSaving = true\n\n this.internalDivision.accountNumber = this.firstAccountNumber\n this.internalDivision.leagueID = this.leagueId\n this.internalDivision.exclusionDates = this.exclusionDates\n\n try {\n this.internalDivision.grades = this.formatGradesForSave()\n await divisionsClient.validateNew(this.internalDivision)\n await divisionsClient.create(this.internalDivision)\n } finally {\n this.isSaving = false\n this.$emit('onSaved', this.internalDivision)\n }\n }\n\n private cancel() {\n this.$emit('onCanceled')\n }\n\n private isPracticeNight(val: Date) {\n const djs = dayjs(val)\n const practiceNight =\n this.programs.myLeagueInfo?.practiceNights?.find((x) => x.typeDayID == djs.format('dddd')) ?? null\n return practiceNight != null\n }\n\n private hasPracticeEvent(val: Date) {\n const djs = dayjs(val)\n const practiceEvent =\n this.divisionEvents?.find(\n (x) =>\n x.eventStart &&\n x.typeFacilityEventID == FacilityEventEnum.PRACTICES &&\n djs.isSame(dayjs(x.eventStart), 'day')\n ) ?? null\n return practiceEvent != null ? 'red' : false\n }\n\n private divisionPracticeEvents(val: Date) {\n const djs = dayjs(val)\n return this.divisionEvents\n ?.filter(\n (x) =>\n x.eventStart &&\n x.typeFacilityEventID == FacilityEventEnum.PRACTICES &&\n djs.isSame(dayjs(x.eventStart), 'day')\n )\n .map((m) => ({\n description: m.eventName!.replace(' Practice', ''),\n startTime: dayjs(m.eventStart!).format('h:mm A'),\n endTime: dayjs(m.eventEnd!).format('h:mm A'),\n }))\n }\n\n private get showRemoveCheckbox() {\n return this.dates.find((x) => this.hasPracticeEvent(x))\n }\n\n @Watch('division', { immediate: true })\n private async onDivisionChange() {\n this.internalDivision = cloneDeep(this.division)\n this.initGrades()\n this.initDates()\n await this.initEvents()\n }\n\n private initGrades() {\n const divisionGrades = this.division.grades ?? []\n if (this.isNewDivision) {\n this.startGrade = this.validGradesForGender[0]\n this.endGrade = this.validGradesForGender[this.validGradesForGender.length - 1]\n } else {\n this.startGrade = divisionGrades[0].typeGradeID\n this.endGrade = divisionGrades[divisionGrades.length - 1].typeGradeID\n }\n }\n\n private initDates() {\n this.dates = this.internalDivision?.exclusionDates?.map((x) => toDate(x.excludeDate)) || []\n this.scrollToDate = this.dates.length == 0 ? this.minCalendarDate : undefined //if there are exclusions already here, the control will scroll to the last one in line by default so don't scroll elsewhere\n }\n\n private async initEvents() {\n this.divisionEvents =\n (await facilitiesClient.retrieveEventsForDivision(\n this.$route.params.id,\n this.internalDivision.typeProgramID,\n this.internalDivision.divisionID\n )) ?? []\n this.hasPracticesScheduled =\n (this.divisionEvents.find((x) => x.typeFacilityEventID == FacilityEventEnum.PRACTICES) ?? null) != null\n }\n\n onProgramChanged(val: string) {\n this.$emit('onProgramChanged', val)\n }\n\n @Watch('internalDivision.typeProgramID', { immediate: true })\n @Watch('internalDivision.gender', { immediate: true })\n genderChanged() {\n const startIndex = this.grades.findIndex((grade) => grade === this.minGrade)\n const endIndex = this.grades.findIndex((grade) => grade === this.maxGrade)\n this.validGradesForGender = this.grades.slice(startIndex, endIndex + 1)\n this.initGrades()\n }\n\n @Watch('isLeague', { immediate: true })\n isLeagueChanged() {\n if (!this.isLeague) {\n // The API requires these value, but there is no scheudling for camps\n // so these properties are set to a default\n this.internalDivision.gameCount = 8\n this.internalDivision.practiceLength = 60\n this.internalDivision.gameLength = 60\n }\n }\n\n availableStartGrades(endGrade: string) {\n return this.validGradesForGender.filter((g) => this.grades.indexOf(g) <= this.grades.indexOf(endGrade))\n }\n availableStopGrades(startGrade: string) {\n return this.validGradesForGender.filter((g) => this.grades.indexOf(g) >= this.grades.indexOf(startGrade))\n }\n}\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!./DivisionForm.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!./DivisionForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionForm.vue?vue&type=template&id=6e980ea8&scoped=true&\"\nimport script from \"./DivisionForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionForm.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DivisionForm.vue?vue&type=style&index=0&id=6e980ea8&lang=scss&scoped=true&\"\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 \"6e980ea8\",\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('confirmation-modal',{attrs:{\"show\":_vm.modalIsVisible,\"title\":\"Import Divisions\"},on:{\"onResponse\":_vm.onYesNoResponse}},[_c('div',{staticClass:\"m-4\"},[_c('div',[_vm._v(\"Do you want to import your previous division setup?\")]),_c('div',{staticClass:\"border rounded p-3 mt-5 mb-5\"},[_c('h6',{staticClass:\"text-center\"},[_vm._v(\"Previous Division Setup\")]),_c('simple-grid',{attrs:{\"grid-data\":_vm.gridData,\"columns\":_vm.columns,\"table-striped\":true}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { GenderIdToText } from '@/lib/support/models/MiscMappings/Gender'\nimport { GradeRangeArrayToText } from '@/lib/support/models/GeneratedTypes/ListInfo/LeagueDivisionGradeInfo'\n\ninterface GridData {\n divisionName: string | null\n gender: string\n gradeRange: string\n}\n\nexport default defineComponent({\n name: 'DivisionImportModal',\n components: {\n ConfirmationModal,\n SimpleGrid,\n },\n props: {\n previousDivisions: { type: Array as PropType, required: true },\n show: { type: Boolean, required: false, default: false },\n isByAge: { type: Boolean, default: false },\n },\n setup(props, ctx) {\n function onYesNoResponse(confirmation: boolean) {\n ctx.emit('onResponse', confirmation)\n }\n\n const modalIsVisible = ref(false)\n\n onMounted(() => {\n modalIsVisible.value = props.show\n })\n\n const columns = computed((): GridColumn[] => {\n return [\n { field: 'divisionName', headerText: 'Division' } as GridColumn,\n { field: 'gender', headerText: 'Gender' } as GridColumn,\n { field: 'gradeRange', headerText: props.isByAge ? 'Age' : 'Grade' } as GridColumn,\n ]\n })\n\n const gridData = computed(() => {\n const grid: GridData[] = []\n if (props.previousDivisions.length > 0) {\n props.previousDivisions.forEach((division: LeagueDivisionInfo) => {\n grid.push({\n divisionName: division.divisionName,\n gender: GenderIdToText(division.gender),\n gradeRange: GradeRangeArrayToText(division.grades, props.isByAge),\n })\n })\n }\n return grid\n })\n\n watch(\n () => props.show,\n (newValue: boolean) => {\n modalIsVisible.value = newValue\n }\n )\n\n return {\n modalIsVisible,\n onYesNoResponse,\n gridData,\n columns,\n }\n },\n})\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!./DivisionImportModal.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!./DivisionImportModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionImportModal.vue?vue&type=template&id=319d0564&scoped=true&\"\nimport script from \"./DivisionImportModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionImportModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DivisionImportModal.vue?vue&type=style&index=0&id=319d0564&lang=scss&scoped=true&\"\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 \"319d0564\",\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('div',[(_vm.isLoading)?_c('loading',{staticClass:\"m-4\"}):_vm._e(),(!_vm.isLoading)?_c('div',{staticClass:\"bg-light-1 pl-3 pr-3 pb-3\"},[_c('h6',{staticClass:\"text-center pt-4 pb-3\"},[_vm._v(\"Participants By \"+_vm._s(_vm.isByAge ? 'Age' : 'Grade')+\" and Gender\")]),_c('div',{staticClass:\"bg-white p-3\"},[_c('simple-grid',{staticClass:\"text-center\",attrs:{\"grid-data\":_vm.gradeGenderList,\"columns\":_vm.columns,\"table-striped\":true}})],1)]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { LeagueProgramGenderGradeInfo } from '@/GeneratedTypes/ListInfo/LeagueProgramGenderGradeInfo.ts'\n\nexport const groupByGender = (list: LeagueProgramGenderGradeInfo[]) => {\n const gradesGroupedByGender: GradesGroupedByGender[] = []\n\n const grades = [...new Set(list.map((item) => item.typeGradeID))]\n grades.forEach((grade) => {\n const female =\n list.find((item) => item.gender === 'F' && item.typeGradeID === grade)?.participantCount || 0\n const male = list.find((item) => item.gender === 'M' && item.typeGradeID === grade)?.participantCount || 0\n gradesGroupedByGender.push({\n typeGradeID: grade,\n femaleCount: female,\n maleCount: male,\n total: male + female,\n })\n })\n return gradesGroupedByGender\n}\n\nexport interface GradesGroupedByGender {\n typeGradeID: string | null\n femaleCount: number\n maleCount: number\n total: number\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, onMounted } from '@vue/composition-api'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport divisionsClient from '@/clients/divisionsClient'\nimport Loading from '@/elements/Loading.vue'\nimport {\n groupByGender,\n GradesGroupedByGender,\n} from '@/lib/support/models/GeneratedTypes/ListInfo/LeagueProgramGenderGradeInfo'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'DivisionGradeGenderList',\n components: {\n SimpleGrid,\n Loading,\n },\n props: {\n ProgramId: { type: String, required: false, default: null },\n isByAge: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isLoading = ref(true)\n const gradeGenderList = ref([])\n const columns = ref([\n {\n field: props.isByAge ? 'ageByCutoff' : 'gradeDescription',\n headerText: props.isByAge ? 'Age' : 'Grade',\n width: 200,\n } as GridColumn,\n { field: 'femaleCount', headerText: 'Girls' } as GridColumn,\n { field: 'maleCount', headerText: 'Boys' } as GridColumn,\n { field: 'total', headerText: 'Total' } as GridColumn,\n ])\n\n onMounted(async () => {\n await loadList()\n })\n\n async function loadList() {\n isLoading.value = true\n try {\n if (props.ProgramId) {\n const list = await divisionsClient.retrieveGradeGenderList(\n ctx.root.$route.params.id,\n props.ProgramId\n )\n if (list) {\n gradeGenderList.value = groupByGender(list).map((x) => {\n return {\n ...x,\n ageByCutoff: store.getters.gradeTypes.byUpwardTypeId(x.typeGradeID)?.ageByCutoff ?? '',\n gradeDescription: store.getters.gradeTypes.byUpwardTypeId(x.typeGradeID)?.description ?? '',\n }\n })\n }\n } else {\n gradeGenderList.value = []\n }\n } finally {\n isLoading.value = false\n }\n }\n\n watch(\n () => props.ProgramId,\n async () => {\n await loadList()\n }\n )\n\n return {\n isLoading,\n gradeGenderList,\n columns,\n }\n },\n})\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!./DivisionGradeGenderList.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!./DivisionGradeGenderList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionGradeGenderList.vue?vue&type=template&id=143c30ba&scoped=true&\"\nimport script from \"./DivisionGradeGenderList.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionGradeGenderList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DivisionGradeGenderList.vue?vue&type=style&index=0&id=143c30ba&lang=scss&scoped=true&\"\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 \"143c30ba\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, onMounted } from '@vue/composition-api'\nimport DivisionGrid from '@/components/DivisionGrid.vue'\nimport DivisionForm from '@/components/DivisionForm.vue'\nimport InfoModal from '@/components/InfoModal.vue'\nimport DivisionImportModal from '@/components/DivisionImportModal.vue'\nimport DivisionGradeGenderList from '@/components/DivisionGradeGenderList.vue'\nimport programsClient from '@/clients/programsClient'\nimport divisionsClient from '@/clients/divisionsClient'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueDivision } from '@/GeneratedTypes/LeagueDivision'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { isByAge } from '@/lib/support/models/LeagueListItem/data.ts'\nimport Loading from '@/elements/Loading.vue'\nimport store from '@/store'\nimport { LeagueScoringTypes } from '@/lib/common/LeagueScoringTypes'\n\nexport default defineComponent({\n name: 'Divisions',\n components: {\n DivisionGrid,\n DivisionForm,\n DivisionGradeGenderList,\n InfoModal,\n DivisionImportModal,\n Loading,\n },\n setup(props, ctx) {\n const firstAccountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const loading = ref(false)\n const mode = ref<'EDIT' | 'VIEW'>('VIEW')\n const divisions = ref([])\n const previousDivisions = ref([])\n const allDivisions = ref(null)\n const division = ref(null)\n const selectedProgramId = ref('')\n const cheerProgamId = ref('')\n const sportProgramId = ref('')\n const leaguePrograms = ref({} as LeagueListItem)\n const showAddDivisionModal = ref(false)\n const showImportModal = ref(false)\n\n const programIsByAge = computed(() => isByAge(leaguePrograms.value))\n\n function onEditCanceled() {\n mode.value = 'VIEW'\n }\n\n onMounted(async () => {\n try {\n loading.value = true\n await loadPrograms()\n await loadDivisions()\n if (divisionCount.value === 0) {\n await loadPreviousDivisions()\n if (previousDivisions.value.length > 0) {\n showImportModal.value = true\n } else {\n showAddDivisionModal.value = true\n await newDivision()\n }\n }\n } finally {\n loading.value = false\n }\n })\n\n async function loadPrograms() {\n const UpwId = ctx.root.$route.params.id\n try {\n const programs = await programsClient.retrieve(UpwId)\n if (programs) {\n leaguePrograms.value = programs\n selectedProgramId.value = programs.programTypeID!\n cheerProgamId.value = programs.cheerProgramTypeID!\n sportProgramId.value = programs.programTypeID!\n }\n } catch (error) {\n throw error\n }\n }\n\n async function loadDivisions() {\n const UpwId = ctx.root.$route.params.id\n\n try {\n allDivisions.value = await divisionsClient.retrieveAll(UpwId)\n divisionsFilteredByProgram()\n } catch (error) {\n throw error\n }\n }\n\n function divisionsFilteredByProgram() {\n if (allDivisions.value) {\n divisions.value = allDivisions.value.filter((division) => {\n return division.typeProgramID === selectedProgramId.value\n })\n }\n }\n\n async function loadPreviousDivisions() {\n const UpwId = ctx.root.$route.params.id\n\n try {\n const divs = await divisionsClient.retrieveAllPreviousLeagueDivisions(\n UpwId,\n firstAccountNumber.value,\n leaguePrograms.value\n )\n if (divs) {\n previousDivisions.value = divs\n if (divisionCount.value > 0) {\n }\n }\n } catch (error) {\n throw error\n }\n }\n\n const divisionCount = computed(() => {\n if (allDivisions.value) {\n return allDivisions.value.length\n } else {\n return 0\n }\n })\n\n function divisionsWithExclusions(div: LeagueDivision) {\n return allDivisions.value\n ? allDivisions.value.filter(\n (x) => x.exclusionDates && x.exclusionDates.length > 0 && x.divisionID != div.divisionID\n )\n : []\n }\n\n async function onDivisionSaved(div: LeagueDivision) {\n selectedProgramId.value = div.typeProgramID\n await loadDivisions()\n mode.value = 'VIEW'\n }\n\n async function onDeleteDivision(div: LeagueDivision) {\n await divisionsClient.remove(ctx.root.$route.params.id, selectedProgramId.value, div.divisionID)\n loading.value = true\n await loadDivisions()\n loading.value = false\n }\n\n async function onProgramChanged(program: string) {\n selectedProgramId.value = program\n loading.value = true\n await loadDivisions()\n loading.value = false\n }\n\n async function onImportResponse(confirmation: boolean) {\n if (confirmation) {\n await divisionsClient.importAllDivisions(\n ctx.root.$route.params.id,\n previousDivisions.value[0].upwardLeagueID,\n firstAccountNumber.value\n )\n await loadDivisions()\n showImportModal.value = false\n mode.value = 'VIEW'\n }\n\n if (!confirmation) {\n showImportModal.value = false\n await newDivision()\n }\n }\n\n function onEditDivision(div: LeagueDivision) {\n division.value = div\n mode.value = 'EDIT'\n }\n\n async function addNew() {\n await newDivision()\n }\n\n async function newDivision() {\n loading.value = true\n const newDiv = await divisionsClient.retrieveTemplate()\n if (newDiv !== null) {\n newDiv.gameLength = 60 //default to most common length\n newDiv.practiceLength = 60 //default to most common length\n newDiv.typeLeagueScoringID = LeagueScoringTypes.NOSTANDINGS\n }\n division.value = newDiv\n mode.value = 'EDIT'\n loading.value = false\n }\n\n return {\n loading,\n divisions,\n mode,\n leaguePrograms,\n selectedProgramId,\n onProgramChanged,\n onDeleteDivision,\n onEditDivision,\n addNew,\n division,\n divisionsWithExclusions,\n onEditCanceled,\n onDivisionSaved,\n programIsByAge,\n showAddDivisionModal,\n showImportModal,\n previousDivisions,\n onImportResponse,\n }\n },\n})\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!./Divisions.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!./Divisions.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Divisions.vue?vue&type=template&id=3affef29&\"\nimport script from \"./Divisions.vue?vue&type=script&lang=ts&\"\nexport * from \"./Divisions.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 _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pt-3 mt-3 h-100\"},[_c('h5',{staticClass:\"text-primary\"},[_vm._v(\"We have listened\")]),_c('p',{staticClass:\"w-50 text-muted\"},[_vm._v(\" Based on feedback from our users, we have incorporated all the functionality from 'Assign Participants' into the \"),_c('a',{attrs:{\"href\":\"team-management\"}},[_vm._v(\"Team Management\")]),_vm._v(\" page. \")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'Participants',\n})\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!./Participants.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!./Participants.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Participants.vue?vue&type=template&id=9e76d22e&\"\nimport script from \"./Participants.vue?vue&type=script&lang=ts&\"\nexport * from \"./Participants.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('div',{staticClass:\"row mt-3\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showHeaders),expression:\"showHeaders\"}],staticClass:\"col-12 pt-0\"},[_c('DivisionHeader',{staticClass:\"pt-2\",attrs:{\"title\":\"\",\"disabled\":_vm.refreshingAll},on:{\"divisionChanged\":_vm.onDivisionChanged}},[_c('div',{attrs:{\"slot\":\"actionButtons\"},slot:\"actionButtons\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":function($event){_vm.showSwapCoachAssignment = true}}},[_c('i',{staticClass:\"fa fa-exchange-alt mr-2\"}),_vm._v(\" Swap Assignment \")])])])],1),(_vm.refreshingAll || _vm.isLoading)?_c('div',{staticClass:\"bg-white p-3\"},[_c('Loading')],1):_vm._e(),(!_vm.refreshingAll && !_vm.isLoading)?[(_vm.divisionCount === 0)?_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no divisions set up for this program.\")]),_c('p',[_vm._v(\" Click the \"),_c('router-link',{attrs:{\"to\":\"divisions\"}},[_vm._v(\"Divisions\")]),_vm._v(\" tab to add one or more divisions. \")],1)])]):_vm._e(),(_vm.divisionCount > 0 && _vm.teamsCount <= 0)?_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no teams set up for this division.\")]),_c('p',[_vm._v(\"Click the \"),_c('router-link',{attrs:{\"to\":\"teams\"}},[_vm._v(\"Create Teams\")]),_vm._v(\" tab to add one or more teams.\")],1)])]):_vm._e(),(!_vm.isLoading)?_c('div',{staticClass:\"col-12 bg-light-2 p-0\"},[_c('CoachManager',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.divisionCount > 0 && _vm.teamsCount > 0),expression:\"divisionCount > 0 && teamsCount > 0\"}],attrs:{\"program-i-d\":_vm.programID,\"division\":_vm.templateDivision},on:{\"toggleHeader\":_vm.toggleHeader}})],1):_vm._e()]:_vm._e(),_c('SwapCoachAssignment',{attrs:{\"upward-league-id\":_vm.upwardLeagueId,\"division-id\":_vm.divisionId,\"type-program-id\":_vm.typeProgramId},on:{\"saved\":_vm.updateTeamList},model:{value:(_vm.showSwapCoachAssignment),callback:function ($$v) {_vm.showSwapCoachAssignment=$$v},expression:\"showSwapCoachAssignment\"}})],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',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showHeader),expression:\"showHeader\"}],staticClass:\"row\"},[_c('div',{staticClass:\"division-col col-md\"},[(_vm.hasCheer)?_c('type-program-tab',{staticClass:\"mb-0\",attrs:{\"programs\":_vm.programs,\"disabled\":_vm.disabled},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}}):_vm._e(),_c('division-select',{staticClass:\"w-auto d-inline-block form-control p-0 border-0 ml-3\",attrs:{\"upward-league-id\":_vm.upwardLeagueId,\"type-program-id\":_vm.selectedProgram,\"label\":\"Selected Division\",\"disabled\":_vm.disabled},model:{value:(_vm.division),callback:function ($$v) {_vm.division=$$v},expression:\"division\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.division),expression:\"division\"}],staticClass:\"col-md-auto pt-0\"},[_vm._t(\"actionButtons\")],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('select-input',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hasDivisions),expression:\"hasDivisions\"}],staticClass:\"stop-jitter\",attrs:{\"label\":_vm.label,\"enabled\":_vm.hasDivisions && !_vm.disabled,\"text-property-name\":\"divisionName\",\"value-property-name\":\"divisionID\",\"items-list\":_vm.divisions},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\n\nexport function getEmptyLeagueDivisionInfo(): LeagueDivisionInfo {\n return {\n accountNumber: '',\n divisionID: 0,\n divisionName: '',\n gameCount: 0,\n gameLength: 0,\n gender: 'E',\n grades: [],\n exclusionDates: [],\n isInCheerSchedulerMapping: false,\n hasGameSchedulerPreferences: false,\n maxRoundNumber: 0,\n leagueID: 0,\n participantCount: 0,\n practiceLength: 0,\n upwardLeagueID: '',\n typePracticePlanID: '',\n lastPracticeDate: null,\n overrideNumberOfSegments: 0,\n typeLeagueScoringID: null,\n showStandingsTeamPage: false,\n typeGameFormatID: '',\n typeProgramID: '',\n orderedPlayerCount: 0,\n allowTeamColorSelection: false,\n }\n}\n\n/**\n * Returns if this is a purely generated LDI\n * coordinate this with logic and seeding above.\n *\n */\nexport function IsEmptyLeagueDivisionInfo(l: LeagueDivisionInfo | null) {\n return !!(!l || !l.accountNumber)\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport divisionsClient from '@/clients/divisionsClient'\n\nimport { IsEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'DivisionSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n upwardLeagueId: { type: String, required: true },\n typeProgramId: { type: String, required: false, default: '' },\n disabled: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const currentDivision = computed(() => store.getters.divisions.currentDivision)\n const isLoading = ref(false)\n const selectedItem = ref(null)\n const divisions = ref([])\n\n watch(\n () => [props.upwardLeagueId, props.typeProgramId],\n async () => {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n const itemList = await fetchItems()\n divisions.value = itemList\n\n // transpile error was wrapping the boolean function in Object() and Object(false) is true ?!\n const emptyLeague = props.value && !!IsEmptyLeagueDivisionInfo(props.value)\n if (!divisions.value.length) {\n store.commit.divisions.setDivision({ division: null })\n selectedItem.value = null\n } else if (\n // do we have a value already set, or is the value set a placeholder\n (!props.value || emptyLeague) && //blank account number is a seeded,\n itemList?.length && // a list\n !currentDivision.value // and not a preselected league\n ) {\n selectedItem.value = itemList[0].divisionID //set first league returned\n } else if (currentDivision.value) {\n const divisionInCurrentList = itemList.find(\n (item) => item.divisionID === currentDivision.value.divisionID\n )\n if (divisionInCurrentList) {\n selectedItem.value = currentDivision.value.divisionID\n } else {\n if (itemList[0] && itemList[0].divisionID) {\n selectedItem.value = itemList[0].divisionID\n }\n }\n }\n\n isLoading.value = false\n },\n { immediate: true }\n )\n\n async function fetchItems(): Promise {\n if (props.upwardLeagueId) {\n if (props.typeProgramId) {\n const divs = await divisionsClient.retrieveByProgram(props.upwardLeagueId, props.typeProgramId)\n if (divs) {\n return divs\n }\n }\n const divs = await divisionsClient.retrieveAll(props.upwardLeagueId)\n if (divs) {\n return divs\n }\n }\n return []\n }\n\n const hasDivisions = computed(() => {\n if (isLoading.value) return !isLoading.value\n return divisions.value.length > 0\n })\n\n watch(\n () => [isLoading.value, selectedItem.value],\n () => {\n if (isLoading.value) {\n return\n }\n\n if (!selectedItem.value) {\n ctx.emit('input', null)\n ctx.emit('change', null)\n return\n }\n\n //else ...\n if (\n selectedItem.value &&\n (!props.value || (props.value && props.value.divisionID !== selectedItem.value))\n ) {\n const division = divisions.value.find((item) => item.divisionID === selectedItem.value)\n\n if (division) {\n store.commit.divisions.setDivision({ division: division })\n }\n\n ctx.emit('input', division)\n ctx.emit('change', division)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (props.value) {\n if (selectedItem.value !== props.value.divisionID) {\n selectedItem.value = props.value.divisionID\n }\n } else {\n selectedItem.value = null\n }\n }\n )\n\n return {\n selectedItem,\n hasDivisions,\n divisions,\n }\n },\n})\n","export enum CoachConflictTypeEnum {\n CoachLinkNotHonored = 'COACHLINKNOTHONORED',\n PracticeDoubleBooked = 'PRACTICEDOUBLEBOOKED',\n GameDoubleBooked = 'GAMEDOUBLEBOOKED',\n}\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!./DivisionSelect.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!./DivisionSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionSelect.vue?vue&type=template&id=1bb7f798&scoped=true&\"\nimport script from \"./DivisionSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionSelect.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DivisionSelect.vue?vue&type=style&index=0&id=1bb7f798&lang=scss&scoped=true&\"\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 \"1bb7f798\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\n\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { getEmptyLeagueListItem, LeagueListItemSeed } from '@/lib/support/models/LeagueListItem/data'\n\nimport { HeaderValue } from '@/views/Programs/Divisions/ext/headerValue'\n\nimport programsClient from '@/clients/programsClient'\n\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport DivisionSelect from '@/components/DivisionSelect.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'DivisionHeader',\n components: {\n DivisionSelect,\n TypeProgramTab,\n },\n props: {\n title: { required: false, type: String, default: '' },\n disabled: { required: false, type: Boolean, default: false },\n },\n setup(props, ctx) {\n const currentDivision = computed(() => store.getters.divisions.currentDivision)\n const hasCheer = computed(() => store.getters.leagueAbstraction.hasCheer)\n\n const programs = ref(getEmptyLeagueListItem(new LeagueListItemSeed()))\n const selectedProgram = ref('')\n const division = ref(null)\n const loading = ref(false)\n\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n\n onMounted(async () => {\n if (currentDivision.value) {\n division.value = currentDivision.value\n }\n\n await loadPrograms()\n emitValues()\n })\n\n async function loadPrograms() {\n loading.value = true\n try {\n const progs = await programsClient.retrieve(ctx.root.$route.params.id)\n if (progs) {\n programs.value = progs\n if (division.value) {\n selectedProgram.value = division.value.typeProgramID\n } else if (progs.programTypeID) {\n selectedProgram.value = progs.programTypeID\n }\n }\n } finally {\n loading.value = false\n }\n }\n\n watch(\n () => division.value,\n () => {\n if (loading.value) return\n emitValues()\n }\n )\n\n function emitValues() {\n const headerValues = {\n selectedDivision: division.value,\n cheerProgramTypeID: programs.value.cheerProgramTypeID,\n selectedTypeProgramID: selectedProgram.value,\n } as HeaderValue\n\n ctx.emit('divisionChanged', headerValues)\n }\n\n const showHeader = computed(() => {\n if (loading.value) return false\n return division.value || hasCheer.value\n })\n\n return {\n showHeader,\n hasCheer,\n programs,\n selectedProgram,\n division,\n upwardLeagueId,\n }\n },\n})\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!./DivisionHeader.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!./DivisionHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionHeader.vue?vue&type=template&id=3e21599b&\"\nimport script from \"./DivisionHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionHeader.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('div',[(!_vm.managerReady)?_c('div',{staticClass:\"bg-white p-3\"},[_c('Loading')],1):_vm._e(),_c('SideBySideScroll',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.managerReady),expression:\"managerReady\"}],staticClass:\"p-3\",attrs:{\"left\":\"coach section\",\"right\":\"team section\",\"ready\":!_vm.refreshing,\"use-top-offset\":true,\"showToggles\":false},scopedSlots:_vm._u([{key:\"leftHeader\",fn:function(){return [_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_vm._v(\"Coaches\")]),_c('div',{staticClass:\"col-sm\",class:_vm.coachListSwitch === 'show-coach-conflicts' ? 'hidden' : ''},[_c('TextInput',{attrs:{\"prependIcon\":\"search\"},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}})],1),_c('div',{staticClass:\"col-sm\",class:_vm.coachListSwitch === 'show-coach-conflicts' ? 'hidden' : ''},[_c('ToggleSwitchInput',{class:_vm.coachListSwitch === 'show-coach-conflicts' ? 'hidden' : '',attrs:{\"label\":\"Show only coaches with matching preferences\",\"value\":_vm.isOnlyMatchingCoaches},on:{\"change\":_vm.setIsOnlyMatchingCoaches}})],1)]),_c('switch-slot',{staticClass:\"pop\",attrs:{\"mode\":\"radio\",\"options\":_vm.coachListOptions},model:{value:(_vm.coachListSwitch),callback:function ($$v) {_vm.coachListSwitch=$$v},expression:\"coachListSwitch\"}},[_c('coach-conflict-filter',{attrs:{\"slot\":\"show-coach-conflicts\"},slot:\"show-coach-conflicts\"})],1)]},proxy:true},{key:\"left\",fn:function(){return [_c('div',[_c('CoachList',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.coachListSwitch !== 'show-coach-conflicts'),expression:\"coachListSwitch !== 'show-coach-conflicts'\"}],ref:\"coachListChildRef\",staticClass:\"drag-scroll\",attrs:{\"coaches\":_vm.coachesToShow},on:{\"selectCoach\":_vm.selectCoach}}),_c('coach-conflict-list',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.coachListSwitch === 'show-coach-conflicts'),expression:\"coachListSwitch === 'show-coach-conflicts'\"}],attrs:{\"conflicts\":_vm.coachConflicts,\"upwardLeagueID\":_vm.upwardLeagueID}})],1)]},proxy:true},{key:\"rightHeader\",fn:function(){return [_c('div',[_c('div',{staticClass:\"text-muted\"},[_vm._v(\"Teams\")]),_c('switch-slot',{staticClass:\"pop\",attrs:{\"mode\":\"radio\",\"options\":_vm.teamOptions},model:{value:(_vm.teamSwitch),callback:function ($$v) {_vm.teamSwitch=$$v},expression:\"teamSwitch\"}},[_c('team-toggle',{attrs:{\"slot\":\"team-toggle\",\"teams\":_vm.teams,\"teams-checked\":_vm.teamsChecked},on:{\"toggle-team\":_vm.toggleTeam},slot:\"team-toggle\"}),_c('TeamListSort',{attrs:{\"slot\":\"sort-teams\"},slot:\"sort-teams\",model:{value:(_vm.sortTeamBy),callback:function ($$v) {_vm.sortTeamBy=$$v},expression:\"sortTeamBy\"}})],1)],1)]},proxy:true},{key:\"right\",fn:function(){return [_c('TeamCardField',{attrs:{\"teams\":_vm.teamsOnField,\"vertical\":true,\"selectedCoach\":_vm.selectedCoach,\"approvedCoaches\":_vm.coaches},on:{\"toggle-team\":_vm.toggleTeam,\"add-coach\":_vm.addCoach}})]},proxy:true}])})],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('Container',{attrs:{\"drag-class\":\"dragging\",\"drop-class\":\"dropping\",\"get-child-payload\":_vm.getPayload,\"dragHandleSelector\":\".coach-list-drag-handle\"},on:{\"shouldAcceptDrop\":_vm.accepting,\"drop\":_vm.onDrop}},[_vm._l((_vm.coachOrder),function(order){return _c('Draggable',{key:order.coach.individualID},[_c('coach-list-element',{attrs:{\"team-count\":_vm.coachToTeamNumber(order.coach.individualID),\"coach\":order.coach,\"selectedCoachID\":_vm.selectedCoach ? _vm.selectedCoach.individualID : 0},on:{\"selectCoach\":_vm.selectCoach}})],1)}),(!_vm.coachOrder || !_vm.coachOrder.length)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(\" No unassigned coaches \")]):_vm._e()],2)],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:\"coach-list-element list-element container\",class:{ selected: _vm.isSelected },on:{\"click\":_vm.selectCoach}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-auto coach-list-drag-handle\"},[_vm._v(\"⁞⁞\")]),_c('div',{staticClass:\"col thing-header px-0\"},[_c('h5',[_vm._v(_vm._s(_vm.coach.firstName)+\" \"+_vm._s(_vm.coach.lastName))])]),(_vm.coach.coachLinkID > 0)?_c('div',{staticClass:\"col-auto small text-muted text-right\"},[_c('i',{staticClass:\"fa fa-link pr-2\",attrs:{\"title\":'Linked to ' + _vm.coach.coachLinkFirstName + ' ' + _vm.coach.coachLinkLastName}}),_c('b',[_vm._v(_vm._s(_vm.coach.coachLinkFirstName + ' ' + _vm.coach.coachLinkLastName))])]):_vm._e(),_c('div',{staticClass:\"col-auto small text-muted text-right\"},[_vm._v(\" Coaching \"),_c('span',{staticClass:\"value-highlight\"},[_vm._v(_vm._s(_vm.teamCount > 0 ? _vm.teamCount : 'no'))]),_vm._v(\" team\"+_vm._s(_vm.teamCount > 1 ? 's' : '')+\" \")])]),_c('div',{staticClass:\"row pb-2 small\"},[_c('div',{staticClass:\"col-4\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Nights\")]),_c('span',[_vm._v(_vm._s(_vm.coachNights || 'N/A'))])]),_c('div',{staticClass:\"col-3\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Church\")]),_c('span',[_vm._v(_vm._s(_vm.coach.churchName || '-'))])]),_c('div',{staticClass:\"col-5\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Preferences\")]),_c('small',[_vm._v(\" \"+_vm._s(_vm.boyString)+\" \"),(_vm.girlString && _vm.boyString)?_c('br'):_vm._e(),_vm._v(\" \"+_vm._s(_vm.girlString)+\" \")])]),_c('div',{staticClass:\"col-auto\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Notes\")]),_c('small',[_vm._v(_vm._s(_vm.coach.registrationNote || 'N/A'))])])])])}\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\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport { getEmptyLeagueVolunteer } from '@/lib/support/models/LeagueVolunteer/data'\n\nexport default defineComponent({\n name: 'CoachListElement',\n props: {\n coach: {\n type: Object as PropType,\n required: true,\n default: () => getEmptyLeagueVolunteer(),\n },\n teamCount: { required: false, type: Number, default: () => 0 },\n selectedCoachID: { required: false, type: Number, default: () => 0 },\n },\n setup(props, ctx) {\n /***\n * Return string of coach nights in english\n */\n const coachNights = computed(() => props.coach.practiceNights)\n\n const girlString = computed(() => (props.coach.girlGrades ? `Girls: ${props.coach.girlGrades}` : ''))\n\n const boyString = computed(() => (props.coach.boyGrades ? `Boys: ${props.coach.boyGrades}` : ''))\n\n const isSelected = computed(() => props.coach.individualID == props.selectedCoachID)\n\n function selectCoach() {\n ctx.emit('selectCoach', props.coach)\n }\n\n return {\n isSelected,\n coachNights,\n boyString,\n girlString,\n selectCoach,\n }\n },\n})\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!./CoachListElement.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!./CoachListElement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachListElement.vue?vue&type=template&id=2a537723&scoped=true&\"\nimport script from \"./CoachListElement.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachListElement.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CoachListElement.vue?vue&type=style&index=0&id=2a537723&scoped=true&lang=scss&\"\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 \"2a537723\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport CoachListElement from '@/views/Programs/Divisions/common/vue/CoachListElement.vue'\nimport { Container, ContainerProps, Draggable, DropResult } from 'vue-smooth-dnd'\nimport { cloneDeep } from 'lodash'\nimport { watch, defineComponent, PropType, ref } from '@vue/composition-api'\n\ninterface CoachOrderType {\n order: number\n coach: LeagueCoachProgramInfoFLAT\n}\n\nexport default defineComponent({\n name: 'CoachList',\n components: {\n Container,\n Draggable,\n CoachListElement,\n },\n props: {\n coaches: { type: Array as PropType, required: true },\n loading: { type: Boolean, required: false },\n },\n\n setup(props, ctx) {\n let coachOrder = ref([])\n const selectedCoach = ref(null)\n\n /**\n * Pulls the payload out of the container based on the index\n */\n function getPayload(index: number) {\n return coachOrder.value.find((x) => x.order == index)\n }\n\n /**\n * Lets us know if the payload will be accepted\n */\n function accepting(a: ContainerProps, info: Record) {\n if (info && info.coach) {\n return true\n }\n }\n\n /**\n * action for when something is dropped on the field, in this case for reorder.\n */\n function onDrop(movedEvent: DropResult) {\n const f = getPayload(movedEvent.removedIndex)\n const g = getPayload(movedEvent.addedIndex)\n if (f && g) {\n const q = f.coach\n f.coach = g.coach\n g.coach = q\n }\n }\n\n watch(\n () => props.coaches,\n () => {\n let order = 0\n const copyList = cloneDeep(props.coaches)\n .sort((a, b) => (a.lastName ?? '').localeCompare(b.lastName ?? ''))\n .filter((c) => c.approved)\n\n coachOrder.value = copyList.map((x) => ({\n order: order++,\n coach: x,\n }))\n },\n { immediate: true }\n )\n\n const coachToTeamNumber = (coachId: number) =>\n props.coaches.find((c) => c.individualID === coachId)?.teamsCoachedCount ?? 0\n\n function selectCoach(coach: LeagueCoachProgramInfoFLAT | null) {\n if (coach) {\n selectedCoach.value = coach.individualID == selectedCoach.value?.individualID ? null : coach\n } else {\n selectedCoach.value = null\n }\n }\n\n function clearSelectedCoach() {\n selectedCoach.value = null\n }\n\n watch(\n () => selectedCoach.value,\n () => {\n ctx.emit('selectCoach', selectedCoach.value)\n }\n )\n\n return {\n coachOrder,\n onDrop,\n accepting,\n getPayload,\n coachToTeamNumber,\n selectedCoach,\n selectCoach,\n clearSelectedCoach,\n }\n },\n})\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!./CoachList.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!./CoachList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachList.vue?vue&type=template&id=e2735f4a&\"\nimport script from \"./CoachList.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachList.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('div',[_vm._l((_vm.coachConflictOrder),function(order){return _c('div',{key:order.key},[_c('coach-conflict-list-element',{attrs:{\"coachConflict\":order,\"isCalendarMode\":_vm.isCalendarMode},on:{\"toggle-team\":_vm.toggleTeam}})],1)}),(!_vm.coachConflictOrder || !_vm.coachConflictOrder.length)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(\" No conflicts detected \")]):_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('div',{staticClass:\"participant-list-element list-element coach-row\",staticStyle:{\"cursor\":\"auto\"}},[_c('div',{staticClass:\"d-flex flex-nowrap\",staticStyle:{\"align-items\":\"baseline\"}},[_c('div',{staticClass:\"cell header left nowrap\"},[_c('i',{class:_vm.coachConflict.conflict.gender == 'F' ? 'fas fa-female' : 'fas fa-male',attrs:{\"title\":_vm.coachConflict.conflict.gender == 'F' ? 'Female' : 'Male'}})]),_c('div',{staticClass:\"cell header left nowrap pr-0\"},[_c('v-popover',{attrs:{\"trigger\":\"click\",\"popoverClass\":\"wide\",\"popoverInnerClass\":\"tooltip-inner popover-inner wide\"}},[_c('i',{staticClass:\"fas fa-info-circle clickable\",attrs:{\"title\":\"Click here to get more info\"}}),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"text-left clickable\"},[_c('div',{staticClass:\"text-center w-100 small font-weight-bold text-muted pb-3 text-underline\"},[_vm._v(\" \"+_vm._s(_vm.coachConflict.conflict.lastName)+\", \"+_vm._s(_vm.coachConflict.conflict.firstName)+\" \")]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4 small text-muted p-1 text-right\"},[_vm._v(\"Gender:\")]),_c('div',{staticClass:\"col small pb-1 text-left p-1\"},[_vm._v(\" \"+_vm._s(_vm.coachConflict.conflict.gender)+\" \")])]),_c('div',{staticClass:\"row pt-1 mt-1\"},[_c('div',{staticClass:\"col-4 small text-muted p-1 nowrap text-right\"},[_vm._v(\"Teams Coached:\")]),_c('div',{staticClass:\"col small text-left p-1\"},[_vm._v(\" \"+_vm._s(_vm.coachConflict.conflict.teamsCoached)+\" \")])]),_c('div',{staticClass:\"row pt-1 mt-1\"},[_c('div',{staticClass:\"col-4 small text-muted p-1 nowrap text-right\"},[_vm._v(\"Registration Note:\")]),_c('div',{staticClass:\"col small text-left p-1\"},[_vm._v(\" \"+_vm._s(_vm.coachConflict.conflict.registrationNote == '' ? 'none' : _vm.coachConflict.conflict.registrationNote)+\" \")])])])])],2)],1),_c('div',{staticClass:\"cell header left nowrap\"},[_c('h5',[_c('span',{staticStyle:{\"margin-left\":\"4px\"}},[_vm._v(_vm._s(_vm.coachConflict.conflict.lastName)+\", \"+_vm._s(_vm.coachConflict.conflict.firstName))]),(!_vm.isCalendarMode)?_c('span',{staticClass:\"pl-1\"},[_vm._v(\"- \"),_c('i',{class:(\"\" + _vm.exceptionIconClass)})]):_vm._e()])]),(!_vm.isCalendarMode)?_c('div',{staticClass:\"cell header left small\"},[_vm._v(\" \"+_vm._s(_vm.coachConflict.conflict.conflictDescription)+\" \")]):_vm._e()]),_c('div',{staticClass:\"d-flex flex-wrap\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isCoachLinkConflict),expression:\"isCoachLinkConflict\"}],staticClass:\"cell left\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Coach Link\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.coachLink))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isCoachLinkConflict),expression:\"isCoachLinkConflict\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Teams Coaching\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.coachConflict.conflict.teamsCoached || 'None'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isCoachLinkConflict),expression:\"isCoachLinkConflict\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Linked Coach's Teams\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.coachConflict.conflict.linkTeamsCoached || 'None'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isCoachLinkConflict),expression:\"!isCoachLinkConflict\"}],staticClass:\"cell nowrap\",class:_vm.isCalendarMode ? 'left' : ''},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"First Conflict\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.formatAppt(_vm.coachConflict.conflict)))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isCoachLinkConflict),expression:\"!isCoachLinkConflict\"}],staticClass:\"cell pr-0\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"All conflicts\")]),_c('span',{staticClass:\"data clickable\"},[_c('v-popover',{attrs:{\"trigger\":\"click\",\"popoverClass\":\"wide\",\"popoverInnerClass\":\"tooltip-inner popover-inner wide\"}},[_vm._v(\" Click here \"),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"text-left clickable\"},[_c('div',{staticClass:\"text-center w-100 small font-weight-bold text-muted pb-0 text-underline\"},[_vm._v(\" All \"+_vm._s(_vm.allConflictType)+\" conflicts for \"+_vm._s(_vm.coachConflict.conflict.lastName)+\", \"+_vm._s(_vm.coachConflict.conflict.firstName)+\" \")]),_vm._l((_vm.coachConflict.matchingConflicts),function(info){return _c('div',{key:info.appointmentID,staticClass:\"p-1 row mt-1 flex-grow-1\"},[_c('div',{staticClass:\"col small text-muted p-1 text-right flex-grow-1 text-nowrap\"},[_vm._v(\" \"+_vm._s(info.teamName)+\" (\"+_vm._s(info.divisionName)+\"): \")]),_c('div',{staticClass:\"col small pb-1 text-left p-1 text-nowrap\"},[_vm._v(\" \"+_vm._s(_vm.formatDate(info.appointmentStart))+\" - \"+_vm._s(_vm.formatTime(info.appointmentEnd))+\" \")])])})],2)])],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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, PropType, ref } from '@vue/composition-api'\nimport { CoachConflictElement } from '@/models/TeamManagement/CoachConflictElement'\nimport dayjs from 'dayjs'\nimport { CoachConflictInfo } from '@/GeneratedTypes/ListInfo/CoachConflictInfo'\nimport { CoachConflictTypeEnum } from '@/models/TeamManagement/CoachConflictTypeEnum'\n\nexport default defineComponent({\n name: 'CoachConflictListElement',\n props: {\n coachConflict: { type: Object as PropType, required: true },\n isCalendarMode: { type: Boolean, required: false, default: false },\n },\n setup(props) {\n const showAllConflicts = ref(false)\n const coachLink = computed(() => {\n const c = props.coachConflict.conflict\n if (c.coachLinkFirstName) {\n return `${c.coachLinkFirstName} ${c.coachLinkLastName}`\n }\n return ''\n })\n\n const isCoachLinkConflict = computed(() => {\n return props.coachConflict.conflict.typeCoachConflictID === CoachConflictTypeEnum.CoachLinkNotHonored\n })\n\n const exceptionIconClass = computed(() => {\n switch (props.coachConflict.conflict.typeCoachConflictID) {\n case CoachConflictTypeEnum.CoachLinkNotHonored:\n return 'fas fa-user'\n case CoachConflictTypeEnum.PracticeDoubleBooked:\n return 'fas fa-calendar-alt'\n case CoachConflictTypeEnum.GameDoubleBooked:\n return 'far fa-calendar-alt'\n default:\n return 'far fa-question-circle'\n }\n })\n\n const allConflictType = computed(() => {\n return props.coachConflict.conflict.typeCoachConflictID === CoachConflictTypeEnum.PracticeDoubleBooked\n ? 'practice'\n : 'game'\n })\n\n function formatDate(d: Date | null) {\n return d ? dayjs(d).format('MMM DD hh:mm a') : ''\n }\n\n function formatTime(d: Date | null) {\n return d ? dayjs(d).format('hh:mm a') : ''\n }\n\n function formatAppt(info: CoachConflictInfo) {\n return `${info.teamName} (${info.divisionName}): ${formatDate(info.appointmentStart)} - ${formatTime(\n info.appointmentEnd\n )}`\n }\n\n return {\n showAllConflicts,\n coachLink,\n isCoachLinkConflict,\n exceptionIconClass,\n formatDate,\n formatTime,\n formatAppt,\n allConflictType,\n }\n },\n})\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!./CoachConflictListElement.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!./CoachConflictListElement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachConflictListElement.vue?vue&type=template&id=3726edbc&scoped=true&\"\nimport script from \"./CoachConflictListElement.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachConflictListElement.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CoachConflictListElement.vue?vue&type=style&index=0&id=3726edbc&scoped=true&lang=scss&\"\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 \"3726edbc\",\n null\n \n)\n\nexport default component.exports","import { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { computed, ref } from '@vue/composition-api'\nimport participantsClient from '@/clients/participantsClient'\n\nexport function useParticipants() {\n const participants = ref([])\n const loading = ref(false)\n async function refreshParticipants(leagueID: string, programID: string) {\n loading.value = true\n participants.value = (await participantsClient.retrieve(leagueID, programID)) ?? []\n loading.value = false\n }\n\n return {\n refreshParticipants,\n loading: computed(() => loading.value),\n participants,\n }\n}\n","export enum TapeDownReasonEnum {\n LOCKED_TO_TEAM = 'LOCKEDTOTEAM',\n}\n","import { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport { TeamCoachInfo } from '@/GeneratedTypes/ListInfo/TeamCoachInfo'\n\nexport function LeagueCoachProgramInfoFLATToTeamCoachInfo(i: LeagueCoachProgramInfoFLAT): TeamCoachInfo {\n return {\n divisionID: 0,\n formattedNameFirstLast: `${i.firstName} ${i.lastName}`,\n formattedNameLastFirst: `${i.lastName}, ${i.firstName}`,\n formattedNamePrivate: i.firstName,\n headCoach: false,\n practiceNights: [],\n teamID: 0,\n divisionName: null,\n teamName: null,\n typeProgramID: '',\n addresses: [],\n individualID: i.individualID,\n birthDate: i.birthDate,\n churchName: i.churchName,\n emailAddresses: [],\n firstName: i.firstName,\n gender: i.gender,\n lastName: i.lastName,\n leagueID: i.leagueID,\n middleInitial: i.middleInitial,\n phoneNumbers: [],\n thirdPartyClientIDs: [],\n }\n}\n","import { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { TeamPlayerInfo } from '@/GeneratedTypes/ListInfo/TeamPlayerInfo'\n\nexport function LeaguePlayerInfoToTeamPlayerInfo(a: LeaguePlayerInfo): TeamPlayerInfo {\n return {\n evaluationScore: a.evaluationScore,\n addresses: a.addresses,\n athleticScore: a.athleticScore,\n birthDate: a.birthDate,\n churchName: a.churchName,\n divisionID: 0,\n divisionName: null,\n teamName: null,\n draftNumber: 0,\n rosterRanking: '',\n coachAssignedJerseyNumber: null,\n emailAddresses: a.emailAddresses,\n extraScore: a.extraScore,\n firstName: a.firstName,\n formattedNameFirstLast: a.formattedNameFirstLast,\n formattedNameLastFirst: a.formattedNameLastFirst,\n formattedNamePrivate: a.formattedNamePrivate,\n gender: a.gender,\n grade: a.typeGradeID,\n individualID: a.individualID,\n lastName: a.lastName,\n leagueID: a.leagueID,\n manualAssignment: false,\n middleInitial: '',\n phoneNumbers: a.phoneNumbers,\n positionScore: a.positionScore,\n teamID: 0,\n thirdPartyClientIDs: [],\n typePositionID: '',\n typeProgramID: '',\n typeTapeDownReasonID: '',\n draftExceptions: [],\n contacts: [],\n yearsExperience: 0,\n typeGradeID: a.typeGradeID,\n }\n}\n","import { computed, ref } from '@vue/composition-api'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport teamsClient from '@/clients/teamsClient'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport { LeagueCoachProgramInfoFLATToTeamCoachInfo } from '@/lib/support/models/ListInfo/TeamCoachInfo/LeagueCoachProgramInfoFLATToTeamCoachInfo'\nimport { cloneDeep } from 'lodash'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { LeaguePlayerInfoToTeamPlayerInfo } from '@/lib/support/models/ListInfo/TeamPlayerInfo/LeaguePlayerInfoToTeamPlayerInfo'\nimport { TapeDownReasonEnum } from '@/lib/support/models/ListInfo/TeamPlayerInfo/data'\nimport { TeamPlayerInfo } from '@/GeneratedTypes/ListInfo/TeamPlayerInfo'\nimport { TeamPlayer } from '@/GeneratedTypes/TeamPlayer'\nimport { UpwardPositionTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPositionTypeID'\nimport store from '@/store'\n\ninterface TeamListState {\n lastLeagueID: string\n lastDivisionID: number\n lastProgramID: string\n}\n\n/**\n * Small team manager, state is a set of teams, manipulated with the exposed values\n */\nfunction useTeamsRO() {\n const teams = ref([])\n const loading = ref(false)\n const operationProgress = ref('')\n const teamStructureChanging = ref(false)\n\n async function unassignDivisionParticipants(teams: DivisionTeamInfo[], unassignLocked: boolean) {\n try {\n teamStructureChanging.value = true\n let i = 0\n const teamCount = teams.length\n operationProgress.value = 'Clearing... 0%'\n if (teamCount) {\n for (const t of teams) {\n i++\n operationProgress.value = `Clearing... ${Math.floor((i * 100) / teamCount)}%`\n\n const team = await teamsClient.getTeam(\n t.upwardLeagueID ?? '',\n t.typeProgramID ?? '',\n t.divisionID,\n t.teamID\n )\n team.players = unassignLocked ? [] : lockedPlayers(t.players)\n await teamsClient.saveTeam({ team, leagueId: t.upwardLeagueID ?? '' })\n }\n operationProgress.value = 'Complete'\n }\n } catch (exc) {\n throw new Error(`unable to clear participants form teams. ${exc.message}`)\n } finally {\n teamStructureChanging.value = false\n }\n }\n\n function lockedPlayers(players: TeamPlayerInfo[] | null): TeamPlayer[] {\n if (!players) return []\n //get locked players\n const unlocked = players.filter((p) => p.typeTapeDownReasonID == 'LOCKEDTOTEAM')\n //convert from TeamPlayerInfo to TeamPlayer\n return unlocked.map((u) => {\n return {\n playerIndividualID: u.individualID,\n typePositionID: u.typePositionID,\n typeTapeDownReasonID: u.typeTapeDownReasonID,\n manualAssignment: u.manualAssignment,\n draftNumber: u.draftNumber,\n rosterRanking: u.rosterRanking,\n draftExceptions: u.draftExceptions,\n } as TeamPlayer\n })\n }\n\n async function refreshTeams(leagueID: string, divisionID: number, programID: string) {\n loading.value = true\n teams.value = await teamsClient.retrieveTeamList({\n leagueId: leagueID,\n divisionId: divisionID,\n typeProgramId: programID,\n })\n loading.value = false\n }\n\n /**\n * Adds the given coach to the given team.\n * @param teamID\n * @param coach\n * @return - returns if we will make coach a head coach\n */\n function addCoachToTeam(teamID: number, coach: LeagueCoachProgramInfoFLAT) {\n const team = teams.value.find((t) => t.teamID == teamID)\n const hasHeadCoach = team?.coaches?.some((y) => y.headCoach)\n addCoachToLocalState(teamID, coach, teams.value)\n return !hasHeadCoach\n }\n\n /**\n * Maintain the local state of teams so that the user's\n * experience isn't deteriorated by a refresh with each\n * drag/drop\n */\n\n function addCoachToLocalState(\n teamID: number,\n coach: LeagueCoachProgramInfoFLAT,\n teamList: DivisionTeamInfo[]\n ) {\n const team = teamList.find((t) => t.teamID == teamID)\n const teamIdx = teamList.findIndex((x) => x.teamID == teamID)\n const hasHeadCoach = team?.coaches?.some((y) => y.headCoach)\n const newteam = cloneDeep(teamList[teamIdx])\n\n if (teamIdx >= 0) {\n return teamList.splice(teamIdx, 1, {\n ...newteam,\n coaches: [\n ...(newteam?.coaches?.filter((x) => x.individualID != coach.individualID) ?? []),\n { ...LeagueCoachProgramInfoFLATToTeamCoachInfo(coach), headCoach: !hasHeadCoach },\n ],\n })\n }\n return [] as DivisionTeamInfo[]\n }\n\n /**\n * Quick utility triggers an update event on the team list.\n * @param team\n */\n function updateTeam(team: DivisionTeamInfo) {\n const index = teams.value.findIndex((x) => x.teamID == team.teamID)\n if (index >= 0) {\n teams.value.splice(index, 1, cloneDeep(team))\n }\n }\n\n function addParticipantToTeam(teamID: number, player: LeaguePlayerInfo) {\n const team = teams.value.find((x) => x.teamID == teamID)\n\n if (team) {\n const p = LeaguePlayerInfoToTeamPlayerInfo(player)\n p.teamID = teamID\n updateTeam({\n ...team,\n players: [...(team?.players?.filter((x) => x.individualID != player.individualID) ?? []), { ...p }],\n })\n }\n }\n\n function removeCoach(teamID: number, coachID: number) {\n removeLocalCoach(teamID, coachID, teams.value)\n }\n\n /**\n * Maintain the local state of teams so that the user's\n * experience isn't deteriorated by a refresh with each\n * drag/drop\n */\n function removeLocalCoach(teamID: number, coachID: number, teamList: DivisionTeamInfo[]) {\n const team = teamList.find((x) => x.teamID == teamID)\n if (team) {\n const newTeam = { ...team, coaches: team?.coaches?.filter((x) => x.individualID != coachID) ?? [] }\n const index = teamList.findIndex((x) => x.teamID == team.teamID)\n if (index >= 0) {\n teamList.splice(index, 1, cloneDeep(newTeam))\n }\n }\n }\n\n function removeParticipant(teamID: number, participantID: number) {\n const team = teams.value.find((x) => x.teamID == teamID)\n if (team) {\n updateTeam({ ...team, players: team?.players?.filter((x) => x.individualID != participantID) ?? [] })\n }\n }\n\n function changeHeadCoach(teamID: number, coachID: number) {\n const team = teams.value.find((x) => x.teamID == teamID)\n if (team) {\n updateTeam({\n ...team,\n coaches: team?.coaches?.map((x) => ({ ...x, headCoach: x.individualID == coachID })) ?? [],\n })\n }\n }\n\n function clearOperationProgress() {\n operationProgress.value = ''\n }\n\n /***\n * Toggles our player lock, changes state\n * @param teamID\n * @param playerID\n * @return {boolean} new state of lock\n */\n function togglePlayerLock(teamID: number, playerID: number) {\n let newState = false\n const team = teams.value.find((x) => x.teamID == teamID)\n if (team) {\n const player = team.players?.find((x) => x.individualID == playerID)\n if (player) {\n player.typeTapeDownReasonID =\n player.typeTapeDownReasonID == TapeDownReasonEnum.LOCKED_TO_TEAM\n ? ''\n : TapeDownReasonEnum.LOCKED_TO_TEAM\n newState = !!(player.typeTapeDownReasonID == TapeDownReasonEnum.LOCKED_TO_TEAM)\n }\n updateTeam(team)\n }\n return newState\n }\n\n /***\n * Toggles our player position, changes state\n * @param teamID\n * @param playerID\n * @return {string} new state of position\n */\n function togglePlayerPosition(teamID: number, playerID: number) {\n let newState = ''\n const team = teams.value.find((x) => x.teamID == teamID)\n if (team) {\n const posType = store.getters.positionTypes.allItems.find(\n (x: UpwardPositionTypeID) => x.typeProgramID == team.typeProgramID\n )\n const player = team.players?.find((x) => x.individualID == playerID)\n if (player && posType) {\n player.typePositionID = player.typePositionID == posType.upwardTypeID ? '' : posType.upwardTypeID\n newState = player.typePositionID ?? ''\n }\n updateTeam(team)\n }\n return newState\n }\n\n return {\n refreshTeams,\n addCoachToTeam,\n removeCoach,\n changeHeadCoach,\n addParticipantToTeam,\n togglePlayerLock,\n togglePlayerPosition,\n removeParticipant,\n updateTeam,\n unassignDivisionParticipants,\n clearOperationProgress,\n loading: computed(() => loading.value),\n operationProgress,\n teams,\n teamStructureChanging: computed(() => teamStructureChanging.value),\n }\n}\n\n/**\n * Adds read/write API functions\n */\nexport function useTeams() {\n const state: TeamListState = { lastDivisionID: 0, lastLeagueID: '', lastProgramID: '' }\n const manager = useTeamsRO()\n const teamStructureChanging = ref(false)\n\n function saveTeam(teamID: number) {\n return cloneDeep(manager.teams.value.find((x) => x.teamID == teamID))\n }\n\n async function refreshTeams(leagueID: string, divisionID: number, programID: string) {\n await manager.refreshTeams(leagueID, divisionID, programID)\n\n state.lastProgramID = programID\n state.lastLeagueID = leagueID\n state.lastDivisionID = divisionID\n }\n\n async function addCoachToTeam(teamID: number, coach: LeagueCoachProgramInfoFLAT) {\n teamStructureChanging.value = true\n const team = saveTeam(teamID)\n const isHead = manager.addCoachToTeam(teamID, coach)\n try {\n await teamsClient.addCoachToTeam(\n state.lastLeagueID,\n state.lastProgramID,\n state.lastDivisionID,\n teamID,\n coach.individualID,\n isHead\n )\n } catch (e) {\n team && manager.updateTeam(team)\n throw e\n } finally {\n teamStructureChanging.value = false\n }\n }\n\n async function addParticipantToTeam(teamID: number, player: LeaguePlayerInfo) {\n teamStructureChanging.value = true\n const team = saveTeam(teamID)\n manager.addParticipantToTeam(teamID, player)\n try {\n await teamsClient.addPlayerToTeam(\n state.lastLeagueID,\n state.lastProgramID,\n state.lastDivisionID,\n teamID,\n player.individualID,\n false\n )\n } catch (e) {\n team && manager.updateTeam(team)\n throw e\n } finally {\n teamStructureChanging.value = false\n }\n }\n\n async function removeCoach(teamID: number, coachID: number) {\n teamStructureChanging.value = true\n const team = saveTeam(teamID)\n manager.removeCoach(teamID, coachID)\n try {\n await teamsClient.removeCoachFromTeam(\n state.lastLeagueID,\n state.lastProgramID,\n state.lastDivisionID,\n teamID,\n coachID\n )\n } catch (e) {\n team && manager.updateTeam(team)\n throw e\n } finally {\n teamStructureChanging.value = false\n }\n }\n\n async function removeParticipant(teamID: number, participantID: number) {\n teamStructureChanging.value = true\n const team = saveTeam(teamID)\n manager.removeParticipant(teamID, participantID)\n try {\n await teamsClient.removePlayerFromTeam(\n state.lastLeagueID,\n state.lastProgramID,\n state.lastDivisionID,\n teamID,\n participantID\n )\n } catch (e) {\n team && manager.updateTeam(team)\n throw e\n } finally {\n teamStructureChanging.value = false\n }\n }\n\n async function changeHeadCoach(teamID: number, coachID: number) {\n const team = saveTeam(teamID)\n manager.changeHeadCoach(teamID, coachID)\n try {\n await teamsClient.makeCoachHeadCoach(\n state.lastLeagueID,\n state.lastProgramID,\n state.lastDivisionID,\n teamID,\n coachID\n )\n } catch (e) {\n team && manager.updateTeam(team)\n throw e\n }\n }\n\n async function togglePlayerLock(teamID: number, playerID: number) {\n teamStructureChanging.value = true\n const team = saveTeam(teamID)\n const player = team?.players?.find((x) => x.individualID == playerID)\n const newLockState = manager.togglePlayerLock(teamID, playerID)\n try {\n await teamsClient.updatePlayerOnTeam(\n state.lastLeagueID,\n state.lastProgramID,\n state.lastDivisionID,\n teamID,\n playerID,\n newLockState,\n player?.typePositionID ?? ''\n )\n } catch (e) {\n team && manager.updateTeam(team)\n throw e\n } finally {\n teamStructureChanging.value = false\n }\n }\n\n async function togglePlayerPosition(teamID: number, playerID: number) {\n teamStructureChanging.value = true\n const team = saveTeam(teamID)\n const player = team?.players?.find((x) => x.individualID == playerID)\n const newPositionState = manager.togglePlayerPosition(teamID, playerID)\n try {\n await teamsClient.updatePlayerOnTeam(\n state.lastLeagueID,\n state.lastProgramID,\n state.lastDivisionID,\n teamID,\n playerID,\n !!((player?.typeTapeDownReasonID ?? '') == TapeDownReasonEnum.LOCKED_TO_TEAM),\n newPositionState\n )\n } catch (e) {\n team && manager.updateTeam(team)\n throw e\n } finally {\n teamStructureChanging.value = false\n }\n }\n\n return {\n refreshTeams,\n addCoachToTeam,\n removeCoach,\n changeHeadCoach,\n addParticipantToTeam,\n togglePlayerLock,\n togglePlayerPosition,\n removeParticipant,\n unassignAllDivisionParticipants: manager.unassignDivisionParticipants,\n loading: manager.loading,\n teams: manager.teams,\n operationProgress: manager.operationProgress,\n clearOperationProgress: manager.clearOperationProgress,\n teamStructureChanging: computed(() => teamStructureChanging.value || manager.teamStructureChanging.value),\n }\n}\n","import { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport { ref } from '@vue/composition-api'\nimport volunteersClient from '@/clients/volunteersClient'\n\nexport function useCoaches() {\n const coaches = ref([])\n\n async function refreshCoaches(leagueID: string) {\n coaches.value = (await volunteersClient.getCoachProgramListFLAT(leagueID, null, null)) ?? []\n }\n\n async function refreshCoachesById(\n leagueID: string,\n typeProgramID: string,\n divisionID: number,\n isOnlyMatching: boolean\n ) {\n if (isOnlyMatching) {\n coaches.value =\n (await volunteersClient.getCoachProgramListFLAT(leagueID, typeProgramID, divisionID)) || []\n } else {\n coaches.value = (await volunteersClient.getCoachProgramListFLAT(leagueID, null, null)) || []\n }\n }\n\n function incrementCoachTeamCount(coachid: number, increment: number) {\n const coach = coaches.value.find((x) => x.individualID == coachid)\n if (coach) {\n coach.teamsCoachedCount += increment\n }\n }\n\n return {\n coaches,\n refreshCoaches,\n refreshCoachesById,\n incrementCoachTeamCount,\n }\n}\n","import { computed, ref } from '@vue/composition-api'\nimport facilitiesClient from '@/clients/facilitiesClient'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\n\nexport function useFacilities() {\n const facilities = ref([])\n\n async function refreshFacilities(leagueID: string) {\n facilities.value = (await facilitiesClient.retrieveAll(leagueID, false)) ?? []\n }\n\n return {\n facilities: computed(() => facilities.value),\n refreshFacilities,\n }\n}\n","import { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { computed, reactive, UnwrapRef } from '@vue/composition-api'\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { useParticipants } from '@/views/Programs/Divisions/TeamManagement/logic/participants'\nimport { useTeams } from '@/views/Programs/Divisions/common/js/teams'\nimport { useCoaches } from '@/views/Programs/Divisions/common/js/coaches'\nimport { CoachToTeamNumberType } from '@/views/Programs/Divisions/TeamManagement/types'\nimport { difference } from 'lodash'\nimport { useFacilities } from '@/views/Programs/Divisions/TeamManagement/logic/facilities'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport { UpwardTapeDownReasonTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardTapeDownReasonTypeID'\n\ninterface ManagerState {\n division: LeagueDivisionInfo\n programID: string\n participantsInTeams: number[]\n teamsOffField: number[]\n coachToTeams: CoachToTeamNumberType[]\n tapeDownReasons: UpwardTapeDownReasonTypeID[]\n refreshing: { working: boolean }\n currentView: string\n coachRefreshing: boolean\n participantsRefreshing: boolean\n assignedParticipantSorting: string\n}\n\nconst state: ManagerState = {\n division: getEmptyLeagueDivisionInfo(),\n programID: '',\n coachToTeams: [],\n participantsInTeams: [],\n teamsOffField: [],\n tapeDownReasons: [],\n refreshing: { working: false },\n currentView: 'P',\n coachRefreshing: false,\n participantsRefreshing: false,\n assignedParticipantSorting: 'lastName',\n}\n/**\n * manage state with in module scope\n */\nlet stateRef: UnwrapRef\nlet participantOps: ReturnType\nlet teamOps: ReturnType\nlet coachOps: ReturnType\nlet facilityOps: ReturnType\nexport function useManagerLogic() {\n if (!stateRef) {\n stateRef = reactive(state) as UnwrapRef\n\n participantOps = useParticipants()\n teamOps = useTeams()\n coachOps = useCoaches()\n facilityOps = useFacilities()\n }\n\n async function unassignDivisionParticipant(teams: DivisionTeamInfo[], unassignLocked: boolean) {\n await teamOps.unassignAllDivisionParticipants(teams, unassignLocked)\n if (teams.length) {\n await teamOps.refreshTeams(\n teams[0].upwardLeagueID ?? '',\n stateRef.division.divisionID,\n stateRef.programID\n )\n }\n teamOps.clearOperationProgress()\n }\n\n async function refresh() {\n stateRef.refreshing.working = true\n const a: Promise[] = []\n if (!stateRef.tapeDownReasons.length) {\n stateRef.tapeDownReasons = await upwardTypesClient.retrieveTapeDownReasons()\n }\n // do we have an actual division object?\n if (stateRef.division?.divisionID > 0) {\n a.push(facilityOps.refreshFacilities(stateRef.division?.upwardLeagueID ?? ''))\n a.push(\n teamOps.refreshTeams(\n stateRef.division?.upwardLeagueID ?? '',\n stateRef.division.divisionID,\n stateRef.programID\n )\n )\n if (stateRef.currentView == 'C') {\n a.push(coachOps.refreshCoaches(stateRef.division?.upwardLeagueID ?? ''))\n }\n\n if (stateRef.currentView == 'P') {\n a.push(\n participantOps.refreshParticipants(stateRef.division?.upwardLeagueID ?? '', stateRef.programID)\n )\n }\n\n // wait on elements to update\n Promise.all(a).then(() => (stateRef.refreshing.working = false))\n\n teamOps.clearOperationProgress()\n }\n }\n const setDivisionAndRefresh = async (division: LeagueDivisionInfo | undefined) => {\n if (!division) return\n stateRef.division = division\n stateRef.programID = division.typeProgramID ?? ''\n await refresh()\n }\n\n const setCurrentView = async (view: string) => {\n // P = particiapnt; C = coach\n if (view == stateRef.currentView) return // stop unnecessary refresh\n stateRef.currentView = view\n if (stateRef.currentView == 'C' && stateRef.division?.upwardLeagueID && !stateRef.refreshing.working) {\n stateRef.coachRefreshing = true\n await coachOps.refreshCoaches(stateRef.division?.upwardLeagueID ?? '')\n stateRef.coachRefreshing = false\n }\n\n if (stateRef.currentView == 'P' && stateRef.division?.upwardLeagueID && stateRef.programID) {\n stateRef.participantsRefreshing = true\n await participantOps.refreshParticipants(stateRef.division?.upwardLeagueID ?? '', stateRef.programID)\n stateRef.participantsRefreshing = false\n }\n }\n\n const participantsInTeams = computed(() => {\n let rv: number[] = []\n teamOps.teams.value.forEach((x) => {\n if (x && x.players) {\n rv = [...rv, ...x.players.map((y) => y.individualID)]\n }\n })\n return rv\n })\n\n /**\n * Toggles a team from the manager field and back to the list\n * @param teamID\n */\n function toggleTeam(teamID: number) {\n const i = stateRef.teamsOffField.indexOf(teamID)\n if (i >= 0) {\n stateRef.teamsOffField.splice(i, 1)\n } else {\n stateRef.teamsOffField.push(teamID)\n }\n }\n\n /**\n * Sets all the teams that are on the team field.\n * Useful for dragging or loading new teams.\n * @param teams\n */\n function setTeamsOnField(teams: number[]) {\n stateRef.teamsOffField = difference(\n teamOps.teams.value.map((x) => x.teamID),\n teams\n )\n }\n\n const teamsOnField = computed(() =>\n teamOps.teams.value.filter((x) => stateRef.teamsOffField.indexOf(x.teamID) < 0)\n )\n\n const participants = computed(() => participantOps.participants.value)\n\n const assignedParticipantCount = computed(() => {\n return teamOps.teams.value.reduce((cnt, t) => {\n return (t.players?.length ?? 0) + cnt\n }, 0)\n })\n\n async function addCoachToTeam(teamID: number, coach: LeagueCoachProgramInfoFLAT) {\n await teamOps.addCoachToTeam(teamID, coach)\n coachOps.incrementCoachTeamCount(coach.individualID, 1)\n }\n\n function removeCoach(teamID: number, coachID: number) {\n teamOps.removeCoach(teamID, coachID)\n coachOps.incrementCoachTeamCount(coachID, -1)\n }\n\n return {\n participantsLoading: computed(() => participantOps.loading.value),\n teamsLoading: computed(() => teamOps.loading.value),\n teamStructureChanging: teamOps.teamStructureChanging,\n teamsProgress: computed(() => teamOps.operationProgress.value),\n currentProgramID: computed(() => stateRef.programID),\n participantsInTeams,\n coaches: computed(() => coachOps.coaches.value),\n facilities: computed(() => facilityOps.facilities.value),\n tapeDownReasons: computed(() => stateRef.tapeDownReasons),\n refresh,\n setDivisionAndRefresh,\n setCurrentView,\n toggleTeam,\n setTeamsOnField,\n teamsOnField,\n unassignDivisionParticipant,\n addCoachToTeam,\n togglePlayerLock: teamOps.togglePlayerLock,\n togglePlayerPosition: teamOps.togglePlayerPosition,\n changeHeadCoach: teamOps.changeHeadCoach,\n removeCoach,\n removeParticipant: teamOps.removeParticipant,\n addParticipantToTeam: teamOps.addParticipantToTeam,\n participants,\n teams: computed(() => teamOps.teams.value),\n draftedParticipantCount: computed(() => assignedParticipantCount.value),\n refreshing: computed(() => stateRef.refreshing.working),\n coachRefreshing: computed(() => stateRef.coachRefreshing),\n participantsRefreshing: computed(() => stateRef.participantsRefreshing),\n assignedParticipantSort: computed(() => stateRef.assignedParticipantSorting),\n }\n}\n","import { computed, reactive, ref, watch } from '@vue/composition-api'\nimport localStorageService from '@/services/localStorageService'\nimport { useManagerLogic } from '@/views/Programs/Divisions/TeamManagement/logic/ManagerLogic'\nimport { CoachConflictTypeEnum } from '@/models/TeamManagement/CoachConflictTypeEnum'\nimport store from '@/store'\n\ninterface ParticipantColumns {\n label: string\n value: boolean\n id: string\n}\n\ninterface PersistedPreferences {\n v: number\n columns: ParticipantColumns[]\n teamColumns: ParticipantColumns[]\n sortBy: string // sorts unassigned participants\n teamSortBy: string // sorts players within a team\n teamListSortBy: string //sorts the list of teams\n coachTeamListSortBy: string //sorts the list of teams\n}\n\ninterface PreferenceState {\n filterTarget: string\n gender: string[] | null\n hideLocked: boolean\n heightRange: number[]\n scoreRange: number[]\n gradeRange: string[]\n isFiltering: boolean\n isByAge: boolean\n}\n\nconst persistedPreferences: PersistedPreferences = {\n v: 5,\n columns: [\n { id: 'score', label: 'score', value: true },\n { id: 'experience', label: 'experience', value: true },\n { id: 'grade', label: 'grade', value: true },\n { id: 'gender', label: 'gender', value: true },\n { id: 'height', label: 'height', value: false },\n { id: 'cannot practice on', label: 'cannot practice on', value: false },\n { id: 'coach link', label: 'coach link', value: false },\n { id: 'carpool link', label: 'carpool link', value: false },\n { id: 'church', label: 'church', value: false },\n { id: 'player notes', label: 'player notes', value: false },\n ],\n teamColumns: [\n { id: 'score', label: 'score', value: true },\n { id: 'position', label: 'position', value: true },\n { id: 'height', label: 'height', value: true },\n { id: 'grade', label: 'grade', value: true },\n { id: 'experience', label: 'experience', value: false },\n { id: 'cannot practice on', label: 'cannot practice on', value: false },\n ],\n sortBy: 'name_asc',\n teamSortBy: 'name_asc',\n teamListSortBy: 'team_name_asc',\n coachTeamListSortBy: 'team_name_asc',\n}\n\nconst preferenceState: PreferenceState = {\n filterTarget: 'BOTH',\n gender: ['F', 'M'],\n hideLocked: false,\n heightRange: [0, 0],\n scoreRange: [0, 0],\n gradeRange: ['K3', '12th'],\n isFiltering: false,\n isByAge: false,\n}\n\nexport interface FilterTracking {\n label: string\n value: string\n}\n\nexport interface ConflictFilter {\n id: string\n label: string\n value: boolean\n typeDraftExceptionID: string\n}\n\ninterface PersistedConflictPreferences {\n v: number\n filters: ConflictFilter[]\n}\n\nconst persistedConflictPreferences: PersistedConflictPreferences = {\n v: 2,\n filters: [\n {\n id: 'carpool link not honored',\n label: 'carpool link not honored',\n value: true,\n typeDraftExceptionID: 'CARPOOLLINKNOTHONORED',\n },\n {\n id: 'parent / coach link not honored',\n label: 'parent / coach link not honored',\n value: true,\n typeDraftExceptionID: 'PARENTCOACHLINKNOTHONORED',\n },\n {\n id: 'sibling link not honored',\n label: 'sibling link not honored',\n value: true,\n typeDraftExceptionID: 'SIBLINGLINKNOTHONORED',\n },\n {\n id: 'practice night exclusion not honored',\n label: 'practice night exclusion not honored',\n value: true,\n typeDraftExceptionID: 'PRACTICENIGHTEXCLUSIONNOTHONORED',\n },\n ],\n}\n\nexport interface CoachConflictFilter {\n id: string\n label: string\n value: boolean\n typeCoachConflictID: string\n}\n\ninterface PersistedCoachConflictPreferences {\n v: number\n filters: CoachConflictFilter[]\n}\n\nconst persistedCoachConflictPreferences: PersistedCoachConflictPreferences = {\n v: 2,\n filters: [\n {\n id: 'coach link not honored',\n label: 'coach link not honored',\n value: true,\n typeCoachConflictID: CoachConflictTypeEnum.CoachLinkNotHonored,\n },\n {\n id: 'practice double booked',\n label: 'practice double booked',\n value: true,\n typeCoachConflictID: CoachConflictTypeEnum.PracticeDoubleBooked,\n },\n {\n id: 'game double booked',\n label: 'game double booked',\n value: true,\n typeCoachConflictID: CoachConflictTypeEnum.GameDoubleBooked,\n },\n ],\n}\n\nexport default function userPreferences() {\n const { participants, currentProgramID } = useManagerLogic()\n //initialize\n const teamMgtPreferenceKey = 'team-mgt-preferences'\n const teamMgConflictPreferencesKey = 'team-mgt-conflict-preferences'\n const teamMgCoachConflictPreferencesKey = 'team-mgt-coach-conflict-preferences'\n const storedPreferences = localStorageService.getParsed(teamMgtPreferenceKey)\n const storedConflictPreferences = localStorageService.getParsed(\n teamMgConflictPreferencesKey\n )\n const storedCoachConflictPreferences = localStorageService.getParsed(\n teamMgCoachConflictPreferencesKey\n )\n\n if (storedPreferences) {\n //clear existing object from local storage if json shape changes\n if (storedPreferences.v === persistedPreferences.v) {\n persistedPreferences.columns = storedPreferences.columns\n persistedPreferences.sortBy = storedPreferences.sortBy\n persistedPreferences.teamListSortBy = storedPreferences.teamListSortBy\n persistedPreferences.teamSortBy = storedPreferences.teamSortBy\n } else {\n localStorageService.set(teamMgtPreferenceKey, persistedPreferences)\n }\n }\n\n if (storedConflictPreferences) {\n //clear existing object from local storage if json shape changes\n if (storedConflictPreferences.v === persistedConflictPreferences.v) {\n persistedConflictPreferences.filters = storedConflictPreferences.filters\n } else {\n localStorageService.set(teamMgConflictPreferencesKey, persistedConflictPreferences)\n }\n }\n\n if (storedCoachConflictPreferences) {\n //clear existing object from local storage if json shape changes\n if (storedCoachConflictPreferences.v === persistedCoachConflictPreferences.v) {\n persistedCoachConflictPreferences.filters = storedCoachConflictPreferences.filters\n } else {\n localStorageService.set(teamMgCoachConflictPreferencesKey, persistedCoachConflictPreferences)\n }\n }\n\n const state = reactive(persistedPreferences)\n const preferences = reactive(preferenceState)\n const conflictState = reactive(persistedConflictPreferences)\n const coachConflictState = reactive(persistedCoachConflictPreferences)\n const showHeader = ref(true)\n\n const resetFilters = () => {\n setScoreRange([getScoreMinMax.value.min, getScoreMinMax.value.max])\n setHeightRange([getHeightMinMax.value.min, getHeightMinMax.value.max])\n setFilterTarget('BOTH')\n setGender(['F', 'M'])\n setGradeRange(['K3', '12th'])\n setHideLocked(false)\n }\n\n const setColumns = (columnID: string) => {\n state.columns.forEach((c) => {\n if (c.id === columnID) c.value = !c.value\n })\n localStorageService.set(teamMgtPreferenceKey, state)\n }\n\n const setTeamColumns = (columnID: string) => {\n state.teamColumns.forEach((c) => {\n if (c.id === columnID) c.value = !c.value\n })\n localStorageService.set(teamMgtPreferenceKey, state)\n }\n\n const setConflictFilters = (filterID: string) => {\n conflictState.filters.forEach((f) => {\n if (f.id === filterID) f.value = !f.value\n })\n localStorageService.set(teamMgConflictPreferencesKey, conflictState)\n }\n\n const setCoachConflictFilters = (filterID: string) => {\n coachConflictState.filters.forEach((f) => {\n if (f.id === filterID) f.value = !f.value\n })\n localStorageService.set(teamMgCoachConflictPreferencesKey, coachConflictState)\n }\n\n const setShowHeader = (value: boolean) => (showHeader.value = value)\n\n const setSort = (sort: string) => {\n state.sortBy = sort\n localStorageService.set(teamMgtPreferenceKey, state)\n }\n\n const setTeamSort = (sort: string) => {\n state.teamSortBy = sort\n localStorageService.set(teamMgtPreferenceKey, state)\n }\n\n const setTeamListSort = (sort: string) => {\n state.teamListSortBy = sort\n localStorageService.set(teamMgtPreferenceKey, state)\n }\n\n const setCoachTeamListSort = (sort: string) => {\n state.coachTeamListSortBy = sort\n localStorageService.set(teamMgtPreferenceKey, state)\n }\n\n const setHeightRange = (range: number[]) => {\n preferences.heightRange = range\n }\n\n const setScoreRange = (range: number[]) => {\n preferences.scoreRange = range\n }\n\n const setGradeRange = (range: string[]) => {\n preferences.gradeRange = range\n }\n\n const setFilterTarget = (target: string) => {\n preferences.filterTarget = target\n }\n\n const setGender = (gender: string[]) => {\n if (!gender.length) preferences.gender = null\n preferences.gender = [...gender]\n }\n\n const setHideLocked = (hide: boolean) => {\n preferences.hideLocked = hide\n }\n\n const setIsByAge = (iba: boolean) => {\n preferences.isByAge = iba\n const col = state.columns.find((x) => x.id == 'grade')\n if (col) {\n col.label = iba ? 'age' : 'grade'\n }\n const teamCol = state.teamColumns.find((x) => x.id == 'grade')\n if (teamCol) {\n teamCol.label = iba ? 'age' : 'grade'\n }\n localStorageService.set(teamMgtPreferenceKey, state)\n }\n\n const getShowHeader = computed(() => showHeader.value)\n const getColumns = computed(() => state.columns)\n const getTeamColumns = computed(() => state.teamColumns)\n const getSort = computed(() => state.sortBy)\n const getTeamSort = computed(() => state.teamSortBy)\n const getTeamListSort = computed(() => state.teamListSortBy)\n const getCoachTeamListSort = computed(() => state.coachTeamListSortBy)\n const getHideLocked = computed(() => preferences.hideLocked)\n const getIsByAge = computed(() => preferences.isByAge)\n const getGender = computed(() => preferences.gender)\n const getFilterTarget = computed(() => preferences.filterTarget)\n const getHeightRange = computed(() => preferences.heightRange)\n const getScoreRange = computed(() => preferences.scoreRange)\n const getGradeRange = computed(() => preferences.gradeRange)\n const getHeightMinMax = ref<{ min: number; max: number }>({ min: 0, max: 0 })\n const getScoreMinMax = ref<{ min: number; max: number }>({ min: 0, max: 0 })\n const getConflictFilters = computed(() => conflictState.filters)\n const getCoachConflictFilters = computed(() => coachConflictState.filters)\n\n watch(\n () => participants.value,\n () => {\n getHeightMinMax.value = range(participants.value.map((p: any) => p.extraScore))\n getScoreMinMax.value = range(participants.value.map((p: any) => p.evaluationScore))\n resetFilters()\n },\n { immediate: true }\n )\n\n const getIsFilteringTeams = computed(() => {\n if (getFilterTarget.value == 'UNASSIGNED') return false\n return filtersDirty() || !hideLockedClean.value || !gradeFilterClean.value\n })\n\n const getIsFilteringUnassigned = computed(() => {\n if (getFilterTarget.value == 'TEAMS') return false\n return filtersDirty() || !gradeFilterClean.value\n })\n const heightFilterClean = computed(() => {\n if (getHeightMinMax.value.max == 0) return true\n return usingHeight.value\n ? getHeightRange.value[0] == getHeightMinMax.value.min &&\n getHeightRange.value[1] == getHeightMinMax.value.max\n : true\n })\n\n const hideLockedClean = computed(() => (usingHideLock.value ? !getHideLocked.value : true))\n\n const scoreFilterClean = computed(() => {\n if (getHeightMinMax.value.max == 0) return true\n return usingScore.value\n ? getScoreRange.value[0] == getScoreMinMax.value.min &&\n getScoreRange.value[1] == getScoreMinMax.value.max\n : true\n })\n\n const gradeFilterClean = computed(() => {\n const lastIndex = getGradeRange.value.length - 1\n return getGradeRange.value[0] == 'K3' && getGradeRange.value[lastIndex] == '12th'\n })\n\n const genderFilterClean = computed(() => getGender.value?.length == 2)\n\n const usingHeight = computed(() => {\n return currentProgramID.value == 'BASKETBALL' || currentProgramID.value == 'VOLLEYBALL'\n })\n\n const usingPosition = computed(() => {\n return (\n currentProgramID.value == 'FOOTBALL' ||\n currentProgramID.value == 'BASEBALL' ||\n currentProgramID.value == 'SOFTBALL'\n )\n })\n\n const usingHideLock = computed(() => {\n return getFilterTarget.value != 'UNASSIGNED'\n })\n\n const usingScore = computed(() => {\n return !(\n currentProgramID.value == 'BASKETBALLCHEERLEADING' ||\n currentProgramID.value == 'FOOTBALLCHEERLEADING' ||\n currentProgramID.value == 'UPWARDSELECTMSS'\n )\n })\n function filtersDirty(): boolean {\n return !genderFilterClean.value || !heightFilterClean.value || !scoreFilterClean.value\n }\n\n const currentFilters = computed(() => {\n const list = [] as FilterTracking[]\n let heightRange = 'all'\n let scoreRange = 'all'\n let gradeRange = 'all'\n let genders = 'no one'\n\n let target = 'unassigned and teams'\n\n if (getFilterTarget.value != 'BOTH') {\n target = getFilterTarget.value.toLocaleLowerCase()\n }\n list.push({ label: 'Target', value: target })\n\n if (getGender.value && getGender.value.length) {\n genders = getGender.value?.join(',') ?? ''\n genders = genders.replace('F', 'girls')\n genders = genders.replace('M', 'boys')\n }\n list.push({ label: 'Gender', value: genders })\n\n if (usingHeight.value && getHeightMinMax.value.max != 0) {\n if (!heightFilterClean.value) {\n heightRange = `${getHeightRange.value[0]} to ${getHeightRange.value[1]}`\n }\n list.push({ label: 'Height', value: heightRange })\n }\n\n if (usingScore.value && getScoreMinMax.value.max != 0) {\n if (!scoreFilterClean.value) {\n scoreRange = `${getScoreRange.value[0]} to ${getScoreRange.value[1]}`\n }\n list.push({ label: 'Score', value: scoreRange })\n }\n\n if (getFilterTarget.value != 'UNASSIGNED') {\n list.push({ label: 'Hide Locked', value: `${getHideLocked.value}` })\n }\n\n if (!gradeFilterClean.value) {\n gradeRange = `${\n getIsByAge.value\n ? store.getters.gradeTypes.byUpwardTypeId(getGradeRange.value[0])?.ageByCutoff ?? '??'\n : getGradeRange.value[0]\n } to ${\n getIsByAge.value\n ? store.getters.gradeTypes.byUpwardTypeId(getGradeRange.value[getGradeRange.value.length - 1])\n ?.ageByCutoff ?? '??'\n : getGradeRange.value[getGradeRange.value.length - 1]\n }`\n list.push({ label: getIsByAge.value ? 'Ages' : 'Grades', value: gradeRange })\n }\n return list\n })\n\n function range(list: number[]) {\n const min = Math.min(...list)\n const max = Math.max(...list)\n return {\n min: isFinite(min) ? min : 0,\n max: isFinite(max) ? max : 0,\n }\n }\n\n return {\n setColumns,\n setTeamColumns,\n setSort,\n setTeamSort,\n setTeamListSort,\n setCoachTeamListSort,\n setGender,\n setHideLocked,\n setIsByAge,\n setFilterTarget,\n setHeightRange,\n setScoreRange,\n setGradeRange,\n setShowHeader,\n getShowHeader,\n getColumns,\n getTeamColumns,\n getSort,\n getTeamSort,\n getTeamListSort,\n getCoachTeamListSort,\n getFilterTarget,\n getHideLocked,\n getIsByAge,\n getGender,\n getIsFilteringTeams,\n getIsFilteringUnassigned,\n getHeightRange, // value to filter on\n getScoreRange, // value to filter on\n getGradeRange,\n getHeightMinMax, //min/max value for the height slider\n getScoreMinMax, // min/max value for the score sliter\n resetFilters,\n usingHeight,\n usingPosition,\n usingScore,\n currentFilters,\n setConflictFilters,\n getConflictFilters,\n setCoachConflictFilters,\n getCoachConflictFilters,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport CoachConflictListElement from '@/views/Programs/Divisions/TeamManagement/vues/CoachConflictListElement.vue'\nimport { CoachConflictInfo } from '@/GeneratedTypes/ListInfo/CoachConflictInfo'\nimport { CoachConflictElement } from '@/models/TeamManagement/CoachConflictElement'\nimport { CoachConflictTypeEnum } from '@/models/TeamManagement/CoachConflictTypeEnum'\nimport { Container } from 'vue-smooth-dnd'\nimport { cloneDeep, groupBy } from 'lodash'\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\nimport dayjs from 'dayjs'\n\n/***\n * Component hosts a sortable list of participants\n */\nexport default defineComponent({\n name: 'CoachConflictList',\n components: { Container, CoachConflictListElement },\n props: {\n conflicts: { type: Array as PropType, required: true },\n loading: Boolean,\n upwardLeagueID: { type: String, required: true },\n isCalendarMode: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const { getCoachConflictFilters } = userPreferences()\n const coachConflictOrder = ref([])\n\n /***\n * When we get new participants, then sort by last name and set the order.\n */\n watch(\n () => props.conflicts,\n () => {\n applyFilters()\n },\n { immediate: true }\n )\n\n watch(\n () => getCoachConflictFilters.value,\n () => {\n applyFilters()\n },\n { immediate: true, deep: true }\n )\n\n function applyFilters() {\n if (props.conflicts && props.conflicts.length > 0) {\n const copyList = cloneDeep(props.conflicts)\n const filteredList = copyList.filter((c) => {\n return getCoachConflictFilters.value.some(\n (f) => f.value && f.typeCoachConflictID == c.typeCoachConflictID\n )\n })\n\n const groupedByCoachList = groupBy(filteredList, (x) => x.individualID)\n const groupedList = Object.keys(groupedByCoachList).map((x) => {\n return {\n individualID: x,\n dictConflictsByType: groupBy(groupedByCoachList[x], (g) => g.typeCoachConflictID),\n }\n })\n\n const newList = ref([] as CoachConflictElement[])\n for (const coach of groupedList) {\n for (const [typeKey, conflictsByType] of Object.entries(coach.dictConflictsByType)) {\n if (typeKey == CoachConflictTypeEnum.CoachLinkNotHonored) {\n //push all of these\n newList.value.push(\n ...conflictsByType.map((x) => ({\n conflict: x,\n key: x.typeCoachConflictID + '_' + x.individualID,\n matchingConflicts: [] as CoachConflictInfo[],\n }))\n )\n } else {\n //only push the first conflict with the other matching ones with it\n newList.value.push({\n conflict: conflictsByType[0],\n key: typeKey + '_' + coach.individualID,\n matchingConflicts: conflictsByType.sort((a: CoachConflictInfo, b: CoachConflictInfo) => {\n return dayjs(a.appointmentStart ?? dayjs()).isAfter(dayjs(b.appointmentStart ?? dayjs()))\n ? 1\n : -1\n }),\n })\n }\n }\n }\n\n coachConflictOrder.value = newList.value.sort((a: CoachConflictElement, b: CoachConflictElement) => {\n return (\n a.conflict.formattedNameLastFirst?.localeCompare(b.conflict.formattedNameLastFirst ?? '') ?? 0\n )\n })\n } else {\n coachConflictOrder.value = []\n }\n }\n\n const toggleTeam = (teamID: number) => ctx.emit('toggle-team', teamID)\n\n return {\n coachConflictOrder,\n toggleTeam,\n }\n },\n})\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!./CoachConflictList.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!./CoachConflictList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachConflictList.vue?vue&type=template&id=38560ad4&\"\nimport script from \"./CoachConflictList.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachConflictList.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('div',_vm._l((_vm.filters),function(f,i){return _c('checkbox-input',{key:i,staticClass:\"d-inline-block pl-0 pr-2\",attrs:{\"value\":f.value,\"label\":f.label},on:{\"change\":function($event){return _vm.update(f.id)}}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\n\nexport default defineComponent({\n name: 'CoachConflictFilter',\n components: { CheckboxInput },\n setup() {\n const { setCoachConflictFilters, getCoachConflictFilters } = userPreferences()\n\n const update = (filterID: string) => {\n setCoachConflictFilters(filterID)\n }\n\n const filterList = () => {\n return getCoachConflictFilters.value\n }\n\n return {\n update,\n filters: computed(filterList),\n }\n },\n})\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!./CoachConflictFilter.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!./CoachConflictFilter.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachConflictFilter.vue?vue&type=template&id=16c1ec5e&\"\nimport script from \"./CoachConflictFilter.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachConflictFilter.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 (!_vm.loading)?_c('div',{staticClass:\"team-toggle\"},_vm._l((_vm.teamOrder),function(i){return _c('button',{key:i.team.teamID,staticClass:\"btn mr-3 mb-1 d-inline\",class:_vm.isSelected(i.team.teamID) ? 'btn-on' : 'btn-off',on:{\"click\":function($event){return _vm.toggleTeam(i.team.teamID)}}},[_vm._v(\" \"+_vm._s(i.team.teamName)+\" \")])}),0):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\ninterface TeamOrderType {\n order: number\n team: DivisionTeamInfo\n}\n\nexport default defineComponent({\n name: 'TeamToggle',\n props: {\n teams: { required: true, type: Array as PropType },\n teamsChecked: { required: true, type: Array as PropType },\n loading: Boolean,\n },\n setup(props, ctx) {\n const teamOrder = ref([])\n\n watch(\n () => props.teams,\n () => {\n let order = 0\n const copyList = cloneDeep(props.teams).sort(\n (a, b) => a?.teamName?.localeCompare(b?.teamName ?? '') ?? 0\n )\n\n teamOrder.value = copyList.map((x) => ({\n order: order++,\n team: x,\n }))\n },\n { immediate: true }\n )\n\n const isSelected = (teamID: number) => {\n return props.teamsChecked.includes(teamID)\n }\n\n const toggleTeam = (teamID: number) => ctx.emit('toggle-team', teamID)\n\n return {\n toggleTeam,\n teamOrder,\n isSelected,\n }\n },\n})\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!./TeamToggle.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!./TeamToggle.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamToggle.vue?vue&type=template&id=1ac5f2ce&scoped=true&\"\nimport script from \"./TeamToggle.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamToggle.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TeamToggle.vue?vue&type=style&index=0&id=1ac5f2ce&lang=scss&scoped=true&\"\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 \"1ac5f2ce\",\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('div',{staticClass:\"side-by-side\"},[(_vm.showToggles)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 p-0\"},[_c('show-toggle',{attrs:{\"label\":_vm.left,\"show\":_vm.showLeft},on:{\"clicked\":function($event){return _vm.toggleVisible('LEFT')}}}),_c('show-toggle',{staticClass:\"float-right\",attrs:{\"label\":_vm.right,\"show\":_vm.showRight},on:{\"clicked\":function($event){return _vm.toggleVisible('RIGHT')}}})],1)]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showLeft),expression:\"showLeft\"}],class:_vm.showRight ? 'col-12 col-md-6 border-right' : 'col'},[_vm._t(\"leftHeader\")],2),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showRight),expression:\"showRight\"}],class:_vm.showLeft ? 'col-12 col-md-6' : 'col'},[_vm._t(\"rightHeader\")],2)]),_c('div',{staticClass:\"row scroll-area\",style:(_vm.styleScrollHeight)},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showLeft),expression:\"showLeft\"}],staticClass:\"col col-scroll\",class:_vm.showRight ? 'border-right' : ''},[_vm._t(\"left\")],2),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showRight),expression:\"showRight\"}],staticClass:\"col col-scroll\"},[_vm._t(\"right\")],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('button',{staticClass:\"btn btn-link\",on:{\"click\":_vm.toggle}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.fullLabel)}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'ShowToggle',\n props: {\n label: String,\n show: Boolean,\n },\n setup(props, ctx) {\n const showLabel = ' show'\n const hideLabel = ' hide'\n function toggle() {\n ctx.emit('clicked', !props.show)\n }\n\n const fullLabel = computed(() => {\n if (props.show) return `${hideLabel} ${props.label}`\n return `${showLabel} ${props.label}`\n })\n return {\n toggle,\n fullLabel,\n }\n },\n})\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!./ShowToggle.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!./ShowToggle.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ShowToggle.vue?vue&type=template&id=707876c6&scoped=true&\"\nimport script from \"./ShowToggle.vue?vue&type=script&lang=ts&\"\nexport * from \"./ShowToggle.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ShowToggle.vue?vue&type=style&index=0&id=707876c6&lang=scss&scoped=true&\"\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 \"707876c6\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, onUnmounted, nextTick } from '@vue/composition-api'\nimport ShowToggle from '@/elements/ShowToggle.vue'\n\nexport default defineComponent({\n name: 'SideBySideScroll',\n components: { ShowToggle },\n props: {\n left: { type: String, default: '', required: false },\n right: { type: String, default: '', required: false },\n ready: { type: Boolean, default: false, required: false },\n useTopOffset: { type: Boolean, default: false, required: false },\n showToggles: { type: Boolean, default: true, required: false },\n },\n setup(props, ctx) {\n const aboveTheScroll = ref(0)\n const windowHeight = ref(0)\n const footerTop = ref(0)\n const top = ref(0)\n const showLeft = ref(true)\n const showRight = ref(true)\n\n onMounted(() => {\n window.addEventListener('resize', dimensions)\n dimensions()\n })\n\n onUnmounted(() => {\n window.removeEventListener('resize', dimensions)\n })\n\n function dimensions() {\n nextTick(() => {\n const scrollArea = document.getElementsByClassName('scroll-area')\n const footer = document.getElementsByClassName('v-footer')\n const myTop = document.getElementsByClassName('side-by-side')\n if (scrollArea.length && footer.length && myTop.length) {\n aboveTheScroll.value = scrollArea[0].getBoundingClientRect().top\n footerTop.value = footer[0].getBoundingClientRect().height\n top.value = myTop[0].getBoundingClientRect().top\n windowHeight.value = window.innerHeight\n }\n })\n }\n\n function toggleVisible(side: string) {\n side === 'LEFT' ? (showLeft.value = !showLeft.value) : (showRight.value = !showRight.value)\n ctx.emit('toggled', side, side === 'LEFT' ? showLeft.value : showRight.value)\n dimensions()\n }\n\n const styleScrollHeight = computed(() => {\n let height = windowHeight.value - (aboveTheScroll.value + footerTop.value)\n if (props.useTopOffset) {\n height = height + top.value\n }\n return `max-height:${height}px`\n })\n\n watch(\n () => props.ready,\n () => {\n if (props.ready == true) {\n dimensions()\n }\n }\n )\n\n watch(\n () => [showRight.value, showLeft.value],\n () => {\n ctx.emit('showing', { left: showLeft.value, right: showRight.value })\n }\n )\n\n return {\n showLeft,\n showRight,\n toggleVisible,\n styleScrollHeight,\n dimensions,\n }\n },\n})\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!./SideBySideScroll.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!./SideBySideScroll.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SideBySideScroll.vue?vue&type=template&id=6a61620c&scoped=true&\"\nimport script from \"./SideBySideScroll.vue?vue&type=script&lang=ts&\"\nexport * from \"./SideBySideScroll.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SideBySideScroll.vue?vue&type=style&index=0&id=6a61620c&lang=scss&scoped=true&\"\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 \"6a61620c\",\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('div',{staticClass:\"team-card-field\"},[_c('Container',{staticClass:\"w-100\",class:_vm.vertical ? '' : 'grid',attrs:{\"get-child-payload\":_vm.getPayload},on:{\"shouldAcceptDrop\":_vm.accepting,\"drop\":_vm.onDrop}},_vm._l((_vm.teamOrder),function(team){return _c('Draggable',{key:team.team.teamID,attrs:{\"group-name\":\"team\",\"class-name\":\"team-droppable\",\"data-id\":team.team.teamID.toString(),\"get-child-payload\":function () { return team.team; }}},[_c('CoachTeamCard',{attrs:{\"team\":team.team,\"selectedCoach\":_vm.selectedCoach},on:{\"change-head-coach\":_vm.changeHeadCoach,\"remove-coach\":_vm.removeCoach,\"add-coach\":_vm.addCoach,\"toggle-team\":_vm.toggleTeam}})],1)}),1),_c('modal-confirmation',{ref:\"addLinkedCoachConfirm\"})],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:\"team-card rounded\"},[_c('div',{staticClass:\"bg-dark p-2\"},[_c('a',{staticClass:\"float-right text-white\",on:{\"click\":_vm.toggleTeam}},[_vm._v(\"X\")]),_c('h5',{staticClass:\"m-0 text-white\"},[_c('span',{staticClass:\"mr-1\",on:{\"click\":function($event){return _vm.addSelectedCoach()}}},[(_vm.showAssignCoach)?_c('i',{staticClass:\"fas fa-sign-in-alt mr-1 clickable highlighted\"}):_vm._e()]),_c('a',{staticClass:\"text-white text-underline mr-1\",attrs:{\"href\":_vm.team.teamPageUrl,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.team.teamName))]),_c('i',{staticClass:\"small\"},[_vm._v(_vm._s(_vm.evalScore ? (\"[avg. eval score: \" + _vm.evalScore + \"]\") : ''))]),_c('i',{staticClass:\"small\"},[_vm._v(_vm._s(_vm.yearsExperienceAvg ? (\" [avg. yrs exp: \" + _vm.yearsExperienceAvg + \"]\") : ''))])]),(_vm.practiceInfo)?_c('p',{staticClass:\"text-light small m-0\"},[_vm._v(\"Practices \"+_vm._s(_vm.practiceInfo))]):_vm._e()]),_vm._m(0),_c('Container',{staticClass:\"px-2 pt-1 pb-4\",on:{\"shouldAcceptDrop\":_vm.acceptingCoaches,\"onDrop\":_vm.droppingCoaches}},_vm._l((_vm.team.coaches),function(coach){return _c('div',{key:coach.individualID,staticClass:\"row\"},[_c('div',{staticClass:\"col-6 pb-0\"},[_vm._v(_vm._s(coach.formattedNameFirstLast))]),_c('div',{staticClass:\"col-4 pb-0\"},[_c('input',{attrs:{\"type\":\"radio\",\"name\":(\"coach-\" + (_vm.team.teamID))},domProps:{\"checked\":coach.headCoach},on:{\"change\":function($event){return _vm.changeHeadCoach(_vm.team.teamID, coach.individualID)}}})]),_c('div',{staticClass:\"col-2 pb-0\"},[_c('i',{staticClass:\"fas fa-minus-circle clickable\",on:{\"click\":function($event){return _vm.removeCoach(_vm.team.teamID, coach.individualID)}}})])])}),0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row m-0 blue-line\"},[_c('div',{staticClass:\"col-6 p-0 pl-2\"},[_vm._v(\"Coaches\")]),_c('div',{staticClass:\"col-6 p-0\"},[_vm._v(\"Head Coach?\")])])}]\n\nexport { render, staticRenderFns }","import { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\n\nexport function getEmptyDivisionTeamInfo(): DivisionTeamInfo {\n return {\n leagueDirectorPartnerID: 0,\n teamID: 0,\n teamName: '',\n divisionID: 0,\n divisionName: '',\n leagueID: 0,\n typeColorID: null,\n coaches: [],\n practices: [],\n headCoachName: '',\n coachCount: 0,\n playerCount: 0,\n players: [],\n typeProgramID: '',\n upwardTeamID: '',\n teamPageUrl: '',\n currentPracticeNumber: 0,\n currentGameID: 0,\n currentGameOffenseFirst: false,\n overrideTypeGameFormatID: '',\n upwardLeagueID: '',\n hideTeamPageRoster: false,\n hideCoachEmailOnTeamPage: false,\n hideCoachPhoneOnTeamPage: false,\n hideAssistantCoachEmailOnTeamPage: true,\n hideAssistantCoachPhoneOnTeamPage: true,\n hideScheduleOnTeamPage: false,\n hidePracticeScheduleOnTeamPage: false,\n typePracticePlanID: '',\n typeGameFormatID: '',\n overrideNumberOfSegments: 0,\n ruleLevel: 0,\n typeLeagueScoringID: null,\n showStandingsTeamPage: false,\n hideHeadCoachLabel: false,\n }\n}\n\nexport function getCoachNights(x: DivisionTeamInfo | undefined | null) {\n if (x && x.coaches?.length) {\n const headCoach = x.coaches.filter((c) => c.headCoach)\n const y = headCoach && headCoach.length > 0 ? headCoach[0] : x.coaches[0]\n if (y.practiceNights?.length) {\n return y.practiceNights.map((u) => u.typeDayID).join(', ')\n }\n }\n return 'n/a'\n}\n\nexport function getTotalTeamHeight(team: DivisionTeamInfo) {\n return team.players?.map((x) => x.extraScore)?.reduce((total, current) => total + current, 0) ?? 0\n}\n\nexport function getTotalTeamEvalScore(team: DivisionTeamInfo) {\n return team.players?.map((x) => x.evaluationScore)?.reduce((total, current) => total + current, 0) ?? 0\n}\n\nexport function getTotalYearsExperience(team: DivisionTeamInfo) {\n return team.players?.map((x) => x.yearsExperience)?.reduce((total, current) => total + current, 0) ?? 0\n}\n","import { computed, PropType, SetupContext } from '@vue/composition-api'\nimport dayjs from 'dayjs'\n\nimport { DropResult } from 'vue-smooth-dnd'\n\nimport { LeagueVolunteer } from '@/GeneratedTypes/LeagueVolunteer'\nimport { ActualDivisionTeamInfo } from '@/models/Teams/ActualDivisionTeamInfo'\nimport { TeamCoachInfo } from 'src/GeneratedTypes/ListInfo/TeamCoachInfo'\n\nimport {\n getEmptyDivisionTeamInfo,\n getTotalYearsExperience,\n} from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport { toDate } from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport { UpwardTapeDownReasonTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardTapeDownReasonTypeID'\nimport { getTotalTeamEvalScore } from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\n\nexport const getProps = () => ({\n team: {\n type: Object as PropType,\n required: true,\n default: () => getEmptyDivisionTeamInfo(),\n },\n tapeDownReasons: {\n required: false,\n type: Array as PropType,\n default: () => [],\n },\n selectedCoach: {\n type: Object as PropType,\n required: false,\n default: () => null,\n },\n})\n\nexport function useTeamCard(props: any, ctx: SetupContext) {\n function droppingCoaches(e: DropResult) {\n // addedIndex is non-zero for a drop on a target\n if (e.addedIndex != null && e.addedIndex >= 0) {\n const coach = e.payload?.coach as LeagueVolunteer\n if (coach) {\n ctx.emit('add-coach', props.team.teamID, coach)\n }\n }\n }\n\n function acceptingCoaches(e: DropResult, a: Record) {\n return a && a.coach\n }\n\n function removeCoach(teamID: number, coachID: number) {\n ctx.emit('remove-coach', teamID, coachID)\n }\n\n function changeHeadCoach(teamID: number, coachID: number) {\n ctx.emit('change-head-coach', teamID, coachID)\n }\n\n const practiceInfo = computed(() => {\n if (props.team.practices?.length) {\n const dayName =\n days.find((x) => x.value == toDate(props.team!.practices![0].practiceStart).getDay())?.abbr3 ?? ''\n const time = dayjs(toDate(props.team.practices[0].practiceStart)).format('h:mm')\n const time2 = dayjs(toDate(props.team.practices[0].practiceEnd)).format('h:mm A')\n return `${dayName} ${time}-${time2}`\n }\n return ''\n })\n\n /**\n * Returns the team's cumulative eval score.\n */\n const evalScore = computed(() => {\n if (props.team.players?.length) {\n const score = getTotalTeamEvalScore(props.team) / props.team.players?.length\n if (!score || score <= 0) {\n return ''\n }\n return score?.toFixed(2)\n }\n return ''\n })\n\n /**\n * Returns the team's cumulative years of experience.\n */\n const yearsExperienceAvg = computed(() => {\n if (props.team.players?.length) {\n const yearsExperience = getTotalYearsExperience(props.team) / props.team.players?.length\n return yearsExperience.toFixed(1)\n }\n return ''\n })\n\n const showAssignCoach = computed(\n () =>\n props.selectedCoach &&\n !props.team.coaches?.find((x: TeamCoachInfo) => x.individualID == props.selectedCoach.individualID)\n )\n\n function addSelectedCoach() {\n if (props.selectedCoach) {\n ctx.emit('add-coach', props.team.teamID, props.selectedCoach)\n }\n }\n\n return {\n droppingCoaches,\n acceptingCoaches,\n removeCoach,\n changeHeadCoach,\n practiceInfo,\n evalScore,\n yearsExperienceAvg,\n showAssignCoach,\n addSelectedCoach,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport { getProps, useTeamCard } from '@/composables/TeamCard'\nimport { Container, Draggable } from 'vue-smooth-dnd'\n\nexport default defineComponent({\n name: 'CoachTeamCard',\n components: { Container, Draggable },\n props: {\n ...getProps(),\n },\n setup(props, ctx) {\n const {\n addSelectedCoach,\n showAssignCoach,\n evalScore,\n yearsExperienceAvg,\n practiceInfo,\n acceptingCoaches,\n droppingCoaches,\n changeHeadCoach,\n removeCoach,\n } = useTeamCard(props, ctx)\n\n function toggleTeam() {\n ctx.emit('toggle-team', props.team.teamID)\n }\n\n return {\n toggleTeam,\n addSelectedCoach,\n showAssignCoach,\n evalScore,\n yearsExperienceAvg,\n practiceInfo,\n acceptingCoaches,\n droppingCoaches,\n changeHeadCoach,\n removeCoach,\n }\n },\n})\n","import { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport { computed, reactive, UnwrapRef } from '@vue/composition-api'\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { useTeams } from '@/views/Programs/Divisions/common/js/teams'\nimport { useCoaches } from '@/views/Programs/Divisions/common/js/coaches'\nimport { CoachToTeamNumberType } from '@/views/Programs/Divisions/Coaches/types'\nimport { difference } from 'lodash'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport { UpwardTapeDownReasonTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardTapeDownReasonTypeID'\n\ninterface ManagerState {\n division: LeagueDivisionInfo\n programID: string\n teamsOffField: number[]\n coachToTeams: CoachToTeamNumberType[]\n tapeDownReasons: UpwardTapeDownReasonTypeID[]\n refreshing: { working: boolean }\n coachRefreshing: boolean\n isOnlyMatchingCoaches: boolean\n}\n\nconst state: ManagerState = {\n division: getEmptyLeagueDivisionInfo(),\n programID: '',\n coachToTeams: [],\n teamsOffField: [],\n tapeDownReasons: [],\n refreshing: { working: false },\n coachRefreshing: false,\n isOnlyMatchingCoaches: false,\n}\n\n/**\n * manage state with in module scope\n */\nlet stateRef: UnwrapRef\nlet teamOps: ReturnType\nlet coachOps: ReturnType\n\nexport function useManagerLogic() {\n if (!stateRef) {\n stateRef = reactive(state) as UnwrapRef\n\n teamOps = useTeams()\n coachOps = useCoaches()\n }\n\n async function refresh() {\n stateRef.refreshing.working = true\n const a: Promise[] = []\n if (!stateRef.tapeDownReasons.length) {\n stateRef.tapeDownReasons = await upwardTypesClient.retrieveTapeDownReasons()\n }\n // do we have an actual division object?\n if (stateRef.division?.divisionID > 0) {\n a.push(\n teamOps.refreshTeams(\n stateRef.division?.upwardLeagueID ?? '',\n stateRef.division.divisionID,\n stateRef.programID\n )\n )\n\n a.push(\n coachOps.refreshCoachesById(\n stateRef.division?.upwardLeagueID || '',\n stateRef.programID,\n stateRef.division.divisionID,\n stateRef.isOnlyMatchingCoaches\n )\n )\n\n // wait on elements to update\n await Promise.all(a).finally(() => (stateRef.refreshing.working = false))\n\n teamOps.clearOperationProgress()\n }\n }\n\n const setDivisionAndRefresh = async (division: LeagueDivisionInfo | undefined) => {\n if (!division) return\n stateRef.division = division\n stateRef.programID = division.typeProgramID ?? ''\n await refresh()\n }\n\n /**\n * Toggles a team from the manager field and back to the list\n * @param teamID\n */\n function toggleTeam(teamID: number) {\n const i = stateRef.teamsOffField.indexOf(teamID)\n if (i >= 0) {\n stateRef.teamsOffField.splice(i, 1)\n } else {\n stateRef.teamsOffField.push(teamID)\n }\n }\n\n /**\n * Sets all the teams that are on the team field.\n * Useful for dragging or loading new teams.\n * @param teams\n */\n function setTeamsOnField(teams: number[]) {\n stateRef.teamsOffField = difference(\n teamOps.teams.value.map((x) => x.teamID),\n teams\n )\n }\n\n /**\n * Sets all the teams that are on the team field.\n * Useful for dragging or loading new teams.\n * @param teams\n */\n async function setIsOnlyMatchingCoaches(isOnlyMatchingCoaches: boolean) {\n stateRef.isOnlyMatchingCoaches = isOnlyMatchingCoaches\n await refresh()\n }\n\n const teamsOnField = computed(() =>\n teamOps.teams.value.filter((x) => stateRef.teamsOffField.indexOf(x.teamID) < 0)\n )\n\n async function addCoachToTeam(teamID: number, coach: LeagueCoachProgramInfoFLAT) {\n await teamOps.addCoachToTeam(teamID, coach)\n coachOps.incrementCoachTeamCount(coach.individualID, 1)\n }\n\n function removeCoach(teamID: number, coachID: number) {\n teamOps.removeCoach(teamID, coachID)\n coachOps.incrementCoachTeamCount(coachID, -1)\n }\n\n return {\n teamsLoading: computed(() => teamOps.loading.value),\n teamsProgress: computed(() => teamOps.operationProgress.value),\n teamStructureChanging: teamOps.teamStructureChanging,\n currentProgramID: computed(() => stateRef.programID),\n coaches: computed(() => coachOps.coaches.value),\n tapeDownReasons: computed(() => stateRef.tapeDownReasons),\n refresh,\n setDivisionAndRefresh,\n toggleTeam,\n setTeamsOnField,\n teamsOnField,\n addCoachToTeam,\n togglePlayerLock: teamOps.togglePlayerLock,\n changeHeadCoach: teamOps.changeHeadCoach,\n removeCoach: removeCoach,\n teams: computed(() => teamOps.teams.value),\n refreshing: computed(() => stateRef.refreshing.working),\n coachRefreshing: computed(() => stateRef.coachRefreshing),\n isOnlyMatchingCoaches: computed(() => stateRef.isOnlyMatchingCoaches),\n setIsOnlyMatchingCoaches,\n }\n}\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!./CoachTeamCard.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!./CoachTeamCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachTeamCard.vue?vue&type=template&id=2a365cf6&scoped=true&\"\nimport script from \"./CoachTeamCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachTeamCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CoachTeamCard.vue?vue&type=style&index=0&id=2a365cf6&lang=scss&scoped=true&\"\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 \"2a365cf6\",\n null\n \n)\n\nexport default component.exports","import { TeamPlayerInfo } from '@/GeneratedTypes/ListInfo/TeamPlayerInfo'\nimport { sortGrades } from '@/services/gradeService'\nimport { TeamOrderType } from '@/views/Programs/Divisions/TeamManagement/types/TeamOrderType'\n\nconst sortName = (a: TeamPlayerInfo, b: TeamPlayerInfo, isDesc: boolean): number => {\n const r = a?.formattedNameLastFirst?.localeCompare(b?.formattedNameLastFirst ?? '') ?? 0\n return isDesc ? r * -1 : r\n}\nconst sortFirstName = (a: TeamPlayerInfo, b: TeamPlayerInfo, isDesc: boolean): number => {\n const r = a?.formattedNameFirstLast?.localeCompare(b?.formattedNameFirstLast ?? '') ?? 0\n return isDesc ? r * -1 : r\n}\n\nconst sortScore = (a: TeamPlayerInfo, b: TeamPlayerInfo, isDesc: boolean): number => {\n const r = a.evaluationScore - b.evaluationScore\n return isDesc ? r * -1 : r\n}\n\nconst sortByGrades = (a: TeamPlayerInfo, b: TeamPlayerInfo, isDesc: boolean): number => {\n if (!a.grade || !b.grade) return 0\n const r = sortGrades(a.grade, b.grade)\n return isDesc ? r * -1 : r\n}\n\nconst sortTeamName = (a: TeamOrderType, b: TeamOrderType, isDesc: boolean): number => {\n const r = (a.team.teamName ?? '').localeCompare(b.team.teamName ?? '') ?? 0\n return isDesc ? r * -1 : r\n}\n\nconst sortTeamAvgEval = (a: TeamOrderType, b: TeamOrderType, isDesc: boolean): number => {\n const r = a.teamAvgEvalScore - b.teamAvgEvalScore\n return isDesc ? r * -1 : r\n}\n\nconst sortExperience = (a: TeamOrderType, b: TeamOrderType, isDesc: boolean): number => {\n const r = a.teamAvgYearsExperience - b.teamAvgYearsExperience\n return isDesc ? r * -1 : r\n}\n\nexport const sortFunctions: { [key: string]: any } = {\n name_asc: sortName,\n name_desc: sortName,\n firstname_asc: sortFirstName,\n firstname_desc: sortFirstName,\n score_asc: sortScore,\n score_desc: sortScore,\n grade_asc: sortByGrades,\n grade_desc: sortByGrades,\n team_name_asc: sortTeamName,\n team_name_desc: sortTeamName,\n avg_eval_asc: sortTeamAvgEval,\n avg_eval_desc: sortTeamAvgEval,\n avg_years_asc: sortExperience,\n avg_years_desc: sortExperience,\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{attrs:{\"title\":_vm.title,\"isSmall\":_vm.isSmall,\"showClose\":_vm.showClose},model:{value:(_vm.showModal),callback:function ($$v) {_vm.showModal=$$v},expression:\"showModal\"}},[(!_vm.message)?_vm._t(\"default\"):_c('div',[_vm._v(_vm._s(_vm.message))]),_c('template',{slot:\"footer\"},[(_vm.showCancel)?_c('button',{staticClass:\"btn btn-light\",on:{\"click\":function($event){return _vm.resolvePromise(false)}}},[_vm._v(\" \"+_vm._s(_vm.cancelLabel)+\" \")]):_vm._e(),_c('button',{staticClass:\"btn btn-success ml-1\",on:{\"click\":function($event){return _vm.resolvePromise(true)}}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" \"+_vm._s(_vm.okLabel)+\" \")])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Modal from '@/components/Modal.vue'\nimport { defineComponent, ref } from '@vue/composition-api'\nimport { ModalConfirmationSettings } from '@/lib/components/ModalConfirmation/settings'\nexport default defineComponent({\n name: 'ModalConfirmation',\n components: { Modal },\n data() {\n return {\n message: '',\n title: '',\n showOk: true,\n showCancel: true,\n showClose: true,\n cancelLabel: 'Cancel',\n okLabel: 'Ok',\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n resolvePromise: function (result: boolean): void {\n /**/\n },\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n rejectPromise: function (result: boolean): void {\n /**/\n },\n isSmall: false,\n }\n },\n methods: {\n show(message?: string, settings?: ModalConfirmationSettings) {\n return new Promise((resolve, reject) => {\n this.message = message ?? ''\n this.title = settings?.title ?? ''\n this.showOk = settings?.showOk ?? true\n this.showCancel = settings?.showCancel ?? true\n this.showClose = settings?.showClose ?? true\n this.resolvePromise = (result: boolean) => {\n resolve(result)\n this.showModal = false\n }\n this.rejectPromise = (result: boolean) => {\n reject(result)\n this.showModal = false\n }\n this.isSmall = settings?.isSmall ?? false\n this.showModal = true\n this.okLabel = settings?.okLabel ?? 'Ok'\n this.cancelLabel = settings?.cancelLabel ?? 'Cancel'\n })\n },\n hide() {\n this.showModal = false\n },\n },\n setup() {\n const showModal = ref(false)\n return { showModal }\n },\n})\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!./ModalConfirmation.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!./ModalConfirmation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModalConfirmation.vue?vue&type=template&id=0320aeb4&\"\nimport script from \"./ModalConfirmation.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModalConfirmation.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport CoachTeamCard from '@/views/Programs/Divisions/Coaches/vues/CoachTeamCard.vue'\nimport { cloneDeep, difference } from 'lodash'\n\nimport { Container, ContainerProps, Draggable, DropResult } from 'vue-smooth-dnd'\nimport { defineComponent, PropType, ref, watch, computed } from '@vue/composition-api'\nimport { useManagerLogic } from '@/views/Programs/Divisions/Coaches/logic/ManagerLogic'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\nimport { getEmptyDivisionTeamInfo } from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport { TeamOrderType } from '@/views/Programs/Divisions/TeamManagement/types/TeamOrderType'\nimport {\n getTotalTeamEvalScore,\n getTotalYearsExperience,\n} from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport { sortFunctions } from '@/views/Programs/Divisions/TeamManagement/logic/teamSort'\nimport ModalConfirmation from '@/components/ModalConfirmation.vue'\n\nexport default defineComponent({\n name: 'TeamCardField',\n components: { Draggable, Container, CoachTeamCard, ModalConfirmation },\n props: {\n teams: { required: true, type: Array as PropType },\n vertical: { required: false, default: true, type: Boolean },\n selectedCoach: { required: false, default: null, type: Object as PropType },\n approvedCoaches: {\n required: false,\n type: Array as PropType,\n },\n },\n setup(props, ctx) {\n const userPrefs = userPreferences()\n let teamOrder = ref([])\n const innerCoaches = ref(\n props.approvedCoaches ?? ([] as LeagueCoachProgramInfoFLAT[])\n )\n const manager = useManagerLogic()\n /**\n * Pulls the payload out of the container based on the index\n */\n function getPayload(index: number) {\n return teamOrder.value.find((x) => x.order == index)\n }\n\n /**\n * Lets us know if the payload will be accepted\n */\n function accepting(a: ContainerProps, info: Record) {\n if (info && info.team) {\n return true\n }\n }\n\n const sorter = computed(() => {\n return (a: TeamOrderType, b: TeamOrderType) => {\n const fnc = sortFunctions[userPrefs.getCoachTeamListSort.value]\n const isDesc = userPrefs.getCoachTeamListSort.value.indexOf('_desc') > 0\n return fnc(a, b, isDesc)\n }\n })\n\n const toggleTeam = (teamID: number) => ctx.emit('toggle-team', teamID)\n const ordersort = (a: TeamOrderType, b: TeamOrderType) =>\n a.order == b.order ? 0 : a.order > b.order ? 1 : -1\n /**\n * action for when something is dropped on the field, in this case for reorder.\n */\n function onDrop(movedEvent: DropResult) {\n const addedTeam = (movedEvent.payload as unknown) as TeamOrderType\n\n //sanity check here.\n if (addedTeam.team && movedEvent.addedIndex != null && movedEvent.addedIndex >= 0) {\n // thing moved card drop, or nothing if external drop\n let displacedTeam = getPayload(movedEvent.removedIndex)\n\n // remove the displaced team if it exists.\n if (displacedTeam) {\n teamOrder.value = teamOrder.value.filter((x) => x.order != displacedTeam!.order)\n }\n //remap order based on index added\n teamOrder.value = teamOrder.value.map((x) => ({\n ...x,\n order: x.order >= movedEvent.addedIndex ? x.order + 1 : x.order,\n }))\n // now have room to add in the new team with index\n teamOrder.value.push({\n order: movedEvent.addedIndex,\n team: addedTeam.team,\n teamAvgEvalScore: 0,\n teamAvgYearsExperience: 0,\n })\n //reset order.\n let order = 0\n teamOrder.value = teamOrder.value.sort(ordersort).map((x) => ({\n order: order++,\n team: x.team,\n teamAvgEvalScore: x.teamAvgEvalScore,\n teamAvgYearsExperience: x.teamAvgYearsExperience,\n }))\n }\n //set a list of teams currently on the field, syncs checkboxes on the list.\n manager.setTeamsOnField(teamOrder.value.map((x) => x.team.teamID))\n }\n watch(\n () => props.teams,\n () => {\n //teamOrder is pre-sorted\n const hasTeams = teamOrder.value.map((x) => x.team.teamID) // our current team ids\n const newTeams = props.teams.map((x) => x.teamID)\n const addTeams = difference(newTeams, hasTeams)\n const removeTeams = difference(hasTeams, newTeams)\n\n let order = 0\n let teamsCopy = cloneDeep(teamOrder.value)\n let propCopy = cloneDeep(props.teams)\n teamOrder.value = [\n ...teamsCopy\n .filter((x) => removeTeams.indexOf(x.team.teamID) < 0)\n .map((x) => ({\n order: x.order + addTeams.length,\n teamAvgEvalScore: 0,\n teamAvgYearsExperience: 0,\n // clone the team passed in teams will change and get passed in updated but order should not change\n team: cloneDeep(propCopy.find((y) => y.teamID == x.team.teamID) ?? getEmptyDivisionTeamInfo()),\n })),\n ...propCopy\n .filter((x) => addTeams.indexOf(x.teamID) >= 0)\n .map((x) => ({\n order: order++,\n team: x,\n teamAvgEvalScore: getTotalTeamEvalScore(x) / (x.players ?? []).length,\n teamAvgYearsExperience: getTotalYearsExperience(x) / (x.players ?? []).length,\n })),\n ].sort(sorter.value)\n },\n { immediate: true }\n )\n\n watch(\n () => userPrefs.getCoachTeamListSort.value,\n () => {\n teamOrder.value.sort(sorter.value)\n },\n { immediate: true }\n )\n watch(\n () => props.approvedCoaches,\n () => {\n innerCoaches.value = props.approvedCoaches ?? ([] as LeagueCoachProgramInfoFLAT[])\n },\n { immediate: true, deep: true }\n )\n const getApprovedCoach = (coachID: number): LeagueCoachProgramInfoFLAT | null => {\n return innerCoaches.value.find((c) => c.individualID == coachID) ?? null\n }\n const addLinkedCoachPrompt = (\n coach: LeagueCoachProgramInfoFLAT\n ): Promise => {\n const shouldPrompt = coach.coachLinkID > 0\n if (!shouldPrompt) return Promise.resolve(null)\n const approved = getApprovedCoach(coach.coachLinkID)\n const message = approved\n ? `Would you also like to add ${coach.coachLinkFirstName} ${coach.coachLinkLastName} to this team as a linked coach?`\n : `${coach.coachLinkFirstName} ${coach.coachLinkLastName} is a linked coach but is not approved. If you want to add ${coach.coachLinkFirstName} ${coach.coachLinkLastName} as a coach for any team, you must approve them first.`\n const confirm = ctx.refs.addLinkedCoachConfirm as any\n return confirm\n .show(message, {\n title: 'Add Linked Coach',\n okLabel: !approved ? 'Ok' : 'Yes',\n cancelLabel: !approved ? 'Cancel' : 'No',\n showCancel: !!approved,\n isSmall: true,\n })\n .then((yes: boolean) => {\n return yes ? approved : null\n })\n }\n async function addCoach(teamID: number, coach: LeagueCoachProgramInfoFLAT) {\n await manager\n .addCoachToTeam(teamID, coach)\n .then(() => {\n return addLinkedCoachPrompt(coach)\n })\n .then((linked) => {\n return !linked ? Promise.resolve() : manager.addCoachToTeam(teamID, linked)\n })\n ctx.emit('add-coach', teamID, coach)\n }\n\n return {\n teamOrder,\n getPayload,\n accepting,\n onDrop,\n toggleTeam,\n changeHeadCoach: manager.changeHeadCoach,\n addCoach,\n removeCoach: manager.removeCoach,\n }\n },\n})\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!./TeamCardField.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!./TeamCardField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamCardField.vue?vue&type=template&id=e17e50c0&scoped=true&\"\nimport script from \"./TeamCardField.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamCardField.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TeamCardField.vue?vue&type=style&index=0&id=e17e50c0&lang=scss&scoped=true&\"\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 \"e17e50c0\",\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('div',[_c('select-input',{attrs:{\"value\":_vm.sortBy,\"items-list\":_vm.options,\"id\":\"sort\",\"value-property-name\":\"key\",\"text-property-name\":\"text\",\"show-blank-item\":false},on:{\"change\":_vm.update}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, watch, ref, computed } from '@vue/composition-api'\n\nimport SelectInput from '@/elements/SelectInput.vue'\n\ninterface SortOptionType {\n text: string\n key: string\n}\n\nexport default defineComponent({\n name: 'TeamListSort',\n components: { SelectInput },\n props: {\n value: { type: String, required: true },\n program: { type: String, required: true },\n },\n setup(props, { emit }) {\n const sortBy = ref('')\n const list: SortOptionType[] = [\n { text: 'Team Name: A to Z', key: 'team_name_asc' },\n { text: 'Team Name: Z to A', key: 'team_name_desc' },\n { text: 'Average Eval Score: Low to High', key: 'avg_eval_asc' },\n { text: 'Average Eval Score: High to Low', key: 'avg_eval_desc' },\n { text: 'Average Years of Experience: Low to High', key: 'avg_years_asc' },\n { text: 'Average Years of Experience: High to Low', key: 'avg_years_desc' },\n ]\n\n const optionList = computed(() => {\n let options = [...list]\n const hideScore =\n props.program == 'BASKETBALLCHEERLEADING' ||\n props.program == 'FOOTBALLCHEERLEADING' ||\n props.program == 'UPWARDSELECTMSS'\n if (hideScore) options = options.filter((i) => !i.key.includes('avg_eval'))\n return options\n })\n\n watch(\n () => props.value,\n () => (sortBy.value = props.value),\n { immediate: true }\n )\n\n function update(sortBy: string) {\n emit('change', sortBy)\n emit('input', sortBy)\n }\n\n return {\n options: optionList,\n update,\n sortBy,\n }\n },\n})\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!./TeamListSort.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!./TeamListSort.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamListSort.vue?vue&type=template&id=6f96b6e4&\"\nimport script from \"./TeamListSort.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamListSort.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, PropType, ref, watch } from '@vue/composition-api'\n\nimport CoachList from '@/views/Programs/Divisions/common/vue/CoachList.vue'\nimport CoachConflictList from '@/views/Programs/Divisions/TeamManagement/vues/CoachConflictList.vue'\nimport CoachConflictFilter from '@/views/Programs/Divisions/TeamManagement/vues/CoachConflictFilter.vue'\nimport TeamToggle from '@/views/Programs/Divisions/common/vue/TeamToggle.vue'\nimport SideBySideScroll from '@/elements/SideBySideScroll.vue'\nimport TeamCardField from '@/views/Programs/Divisions/Coaches/vues/TeamCardField.vue'\nimport TeamListSort from '@/views/Programs/Divisions/TeamManagement/vues/TeamListSort.vue'\nimport ShowToggle from '@/elements/ShowToggle.vue'\nimport Loading from '@/elements/Loading.vue'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport ToggleSwitchInput from '@/elements/ToggleSwitchInput.vue'\n\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport { CoachConflictInfo } from '@/GeneratedTypes/ListInfo/CoachConflictInfo'\n\nimport { useManagerLogic } from '@/views/Programs/Divisions/Coaches/logic/ManagerLogic'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\nimport volunteersClient from '@/clients/volunteersClient'\n\nexport default defineComponent({\n props: {\n division: { type: Object as PropType, required: true },\n programID: { type: String, required: true },\n },\n components: {\n TeamCardField,\n CoachList,\n CoachConflictList,\n CoachConflictFilter,\n SideBySideScroll,\n TeamToggle,\n ShowToggle,\n Loading,\n SwitchSlot,\n TextInput,\n ToggleSwitchInput,\n TeamListSort,\n },\n\n setup(props) {\n const searchTerm = ref('')\n const manager = useManagerLogic()\n const { setCoachTeamListSort, getCoachTeamListSort } = userPreferences()\n const selectedCoach = ref(null)\n const coachListChildRef = ref()\n const coachConflicts = ref([])\n const upwardLeagueID = ref(props.division.upwardLeagueID)\n\n const teamOptions = [\n { text: 'show/hide teams', value: 'team-toggle' },\n { text: 'sort teams', value: 'sort-teams' },\n { text: 'none', value: 'hide-all' },\n ]\n const teamSwitch = ref(teamOptions[0].value)\n const managerReady = computed(() => !manager.coachRefreshing.value)\n\n const coachListOptions = [\n { text: 'all coaches', value: 'all-coaches' },\n { text: 'show conflicts', value: 'show-coach-conflicts' },\n ]\n const coachListSwitch = ref(coachListOptions[0].value)\n\n const coachesInDivision = computed(() =>\n (manager.coaches.value ?? []).filter((x) => x.typeProgramID == props.programID)\n )\n\n const coachesToShow = computed(() => {\n const searchTermValue = searchTerm.value.toLowerCase()\n return searchTermValue\n ? coachesInDivision.value.filter(\n (c) =>\n c.firstName!.toLowerCase().indexOf(searchTermValue) >= 0 ||\n c.lastName!.toLowerCase().indexOf(searchTermValue) >= 0\n )\n : coachesInDivision.value\n })\n\n const sortTeamBy = computed({\n get(): string {\n return getCoachTeamListSort.value\n },\n set(sortBy: string) {\n setCoachTeamListSort(sortBy)\n },\n })\n\n function selectCoach(coach: LeagueCoachProgramInfoFLAT | null) {\n selectedCoach.value = coach\n }\n\n function addCoach() {\n coachListChildRef.value?.clearSelectedCoach()\n }\n\n async function refreshConflicts() {\n coachConflicts.value =\n (await volunteersClient.retrieveCoachConflicts(props.division.upwardLeagueID!)) ?? []\n }\n\n watch(\n () => manager.teamStructureChanging.value,\n async () => {\n if (!manager.teamStructureChanging.value) {\n await refreshConflicts()\n }\n },\n { immediate: true }\n )\n\n return {\n ...manager,\n coaches: computed(() => manager.coaches.value),\n coachesToShow,\n teamsChecked: computed(() => manager.teamsOnField.value?.map((x) => x.teamID) ?? []),\n managerReady,\n teamOptions,\n teamSwitch,\n searchTerm,\n isOnlyMatchingCoaches: manager.isOnlyMatchingCoaches,\n setIsOnlyMatchingCoaches: manager.setIsOnlyMatchingCoaches,\n sortTeamBy,\n selectedCoach,\n selectCoach,\n addCoach,\n coachListChildRef,\n coachConflicts,\n upwardLeagueID,\n coachListOptions,\n coachListSwitch,\n }\n },\n})\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!./CoachManager.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!./CoachManager.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachManager.vue?vue&type=template&id=05d8e4aa&scoped=true&\"\nimport script from \"./CoachManager.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachManager.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CoachManager.vue?vue&type=style&index=0&id=05d8e4aa&lang=scss&scoped=true&\"\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 \"05d8e4aa\",\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('div',[_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid modal-content\"},[_c('div',{staticClass:\"row modal-row\"},[_c('div',{staticClass:\"col-6\"},[_c('select-input',{attrs:{\"items-list\":_vm.coachList,\"label\":\"Coach\",\"text-property-name\":\"displayValue\",\"value-property-name\":\"id\"},model:{value:(_vm.selectedCoach),callback:function ($$v) {_vm.selectedCoach=$$v},expression:\"selectedCoach\"}})],1)]),_c('div',{staticClass:\"row modal-row ml-1\"},[_c('switch-slot',{staticClass:\"mb-0\",attrs:{\"mode\":\"radio\",\"label\":\"Which action would you like to take?\",\"options\":[\n { text: 'Move to another team', value: 'move' },\n { text: 'Swap with another coach', value: 'swap' } ]},model:{value:(_vm.swapAction),callback:function ($$v) {_vm.swapAction=$$v},expression:\"swapAction\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.swapAction === 'move'),expression:\"swapAction === 'move'\"}],staticClass:\"row modal-row ml-2 border-xl-left\"},[_c('div',{staticClass:\"col-6\"},[_c('select-input',{attrs:{\"items-list\":_vm.filteredTeamList,\"text-property-name\":\"teamName\",\"value-property-name\":\"teamID\",\"label\":\"Team\"},model:{value:(_vm.selectedTeam),callback:function ($$v) {_vm.selectedTeam=$$v},expression:\"selectedTeam\"}})],1)]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.swapAction === 'swap'),expression:\"swapAction === 'swap'\"}],staticClass:\"row ml-2 modal-row overflow-auto border-xl-left\"},[_c('div',{staticClass:\"col-12\"},[_c('SimpleGrid',{attrs:{\"grid-data\":_vm.swapCoachList,\"columns\":_vm.teamGridColumns,\"table-striped\":true},on:{\"rowClicked\":_vm.handleRowSelected}})],1)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.toggleModal}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":_vm.saveButtonText != 'Save'},on:{\"click\":_vm.swapCoach}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" \"+_vm._s(_vm.saveButtonText)+\" \")])])],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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Vue from 'vue'\n\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { TeamCoachInfo } from '@/GeneratedTypes/ListInfo/TeamCoachInfo.ts'\n\nimport teamsClient from '@/clients/teamsClient'\n\nimport Modal from '@/components/Modal.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nclass TeamCoach {\n teamNames: string\n coach: TeamCoachInfo\n\n get coachName(): string {\n return this.coach.formattedNameFirstLast ?? ''\n }\n\n get id(): string {\n return !this.coach ? '' : `${this.coach.teamID}:${this.coach.individualID}`\n }\n\n get displayValue(): string {\n return `${this.coachName} (${this.teamNames})`\n }\n\n constructor(teamName: string, coach: TeamCoachInfo) {\n this.teamNames = teamName\n this.coach = coach\n }\n}\n\nexport default defineComponent({\n name: 'SwapCoachAssignment',\n components: {\n Modal,\n SelectInput,\n SwitchSlot,\n SimpleGrid,\n CheckboxInput,\n },\n props: {\n value: { type: Boolean, default: false, required: false },\n upwardLeagueId: { type: String, default: '', required: false },\n divisionId: { type: Number, default: 0, required: false },\n typeProgramId: { type: String, default: '', required: false },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(props.value)\n const modalTitle = ref('Swap Coach Assignment')\n const selectedCoach = ref('')\n const selectedTeam = ref('')\n const selectedSwapCoach = ref(new TeamCoach('', getEmptyTeamCoachInfo()))\n\n const coachList = ref([])\n const teamList = ref([])\n const filteredTeamList = ref([])\n\n const swapCoachList = ref([])\n const swapAction = ref('move')\n const saveButtonText = ref('Save')\n\n const headCoachTemplate = () => ({\n template: Vue.component('columnTemplate', {\n components: { /* eslint-disable vue/no-unused-components */ CheckboxInput },\n props: { data: {} },\n template: ``,\n }),\n })\n\n const teamGridColumns = ref([\n { field: 'teamNames', headerText: 'Team Name' } as GridColumn,\n { field: 'coach.formattedNameFirstLast', headerText: 'Coach Name' } as GridColumn,\n { field: 'coach.headCoach', headerText: 'Head Coach', template: headCoachTemplate } as GridColumn,\n ])\n\n function toggleModal() {\n modalIsVisible.value = !modalIsVisible.value\n }\n\n function saveAndClose() {\n toggleModal()\n ctx.emit('saved')\n }\n\n watch(\n () => modalIsVisible.value,\n () => {\n if (modalIsVisible.value != props.value) {\n ctx.emit('input', modalIsVisible.value)\n }\n }\n )\n\n watch(\n () => props.value,\n async () => {\n if (modalIsVisible.value != props.value) {\n modalIsVisible.value = props.value\n }\n\n if (modalIsVisible.value) {\n saveButtonText.value = 'Save'\n await updateTeamList()\n }\n }\n )\n\n function handleRowSelected(args: TeamCoach) {\n selectedSwapCoach.value = args\n }\n\n async function updateTeamList() {\n if (props.upwardLeagueId && props.divisionId && props.typeProgramId) {\n const teams = await teamsClient.retrieveTeamList({\n leagueId: props.upwardLeagueId,\n divisionId: props.divisionId,\n typeProgramId: props.typeProgramId,\n })\n\n if (teams) {\n teamList.value = [...teams]\n\n coachList.value = getCoachesFromTeams()\n swapCoachList.value = getSwapCoachList()\n }\n }\n }\n\n function getCoachesFromTeams(): TeamCoach[] {\n const coaches: TeamCoach[] = []\n\n for (const team of teamList.value) {\n for (const coach of team.coaches!) {\n coaches.push(new TeamCoach(team.teamName!, coach))\n }\n }\n\n return coaches\n }\n\n function getSwapCoachList(): TeamCoach[] {\n if (selectedCoach.value) {\n const keys = selectedCoach.value.split(':')\n\n const selectedCoachTeams = coachList.value\n .filter((cl) => cl.coach.individualID === parseInt(keys[1]))\n .map((ct) => ct.coach.teamID)\n\n return coachList.value.filter(\n (cl) =>\n cl.coach.individualID !== parseInt(keys[1]) && selectedCoachTeams.indexOf(cl.coach.teamID) < 0\n )\n }\n return coachList.value\n }\n\n function getFilteredTeamList(): DivisionTeamInfo[] {\n if (selectedCoach.value) {\n const keys = selectedCoach.value.split(':')\n return teamList.value.filter((t) => t.teamID !== parseInt(keys[0]))\n }\n return teamList.value\n }\n\n watch(\n () => selectedCoach.value,\n () => {\n swapCoachList.value = getSwapCoachList()\n filteredTeamList.value = getFilteredTeamList()\n }\n )\n\n async function swapCoach() {\n saveButtonText.value = 'Saving . . .'\n if (!canSave()) {\n saveButtonText.value = 'Save'\n return\n }\n\n let success = false\n if (swapAction.value === 'move') {\n success = await moveCoachToTeam(selectedCoach.value, selectedTeam.value, 0)\n } else {\n success = await swapTeamCoaches(selectedCoach.value, selectedSwapCoach.value)\n }\n saveButtonText.value = 'Save'\n if (success) {\n saveAndClose()\n }\n }\n\n function canSave(): boolean {\n if (!selectedCoach.value || (swapAction.value !== 'move' && swapAction.value !== 'swap')) {\n return false\n }\n\n if (swapAction.value === 'move' && !selectedTeam.value) {\n return false\n }\n\n if (swapAction.value === 'swap' && !selectedSwapCoach.value) {\n return false\n }\n return true\n }\n\n async function moveCoachToTeam(\n selectedCoach: string,\n selectedTeam: string,\n coachCount: number\n ): Promise {\n if (\n !selectedTeam ||\n !selectedCoach ||\n !props.upwardLeagueId ||\n !props.divisionId ||\n !props.typeProgramId\n ) {\n return false\n }\n\n const keys = selectedCoach.split(':')\n if (!keys || keys.length < 2) {\n return false\n }\n\n const previousTeamId = parseInt(keys[0])\n const coachId = parseInt(keys[1])\n // delete coach from previous team.\n let success = await teamsClient.removeCoachFromTeam(\n props.upwardLeagueId,\n props.typeProgramId,\n props.divisionId,\n previousTeamId,\n coachId\n )\n\n // add coach to new team.\n if (success) {\n const teamId = parseInt(selectedTeam)\n const team = teamList.value.find((t) => t.teamID === teamId)\n if (!team) {\n return false\n }\n const isHeadCoach = team.coachCount === coachCount\n\n success = await teamsClient.addCoachToTeam(\n props.upwardLeagueId,\n props.typeProgramId,\n props.divisionId,\n teamId,\n coachId,\n isHeadCoach\n )\n }\n\n return success\n }\n\n async function swapTeamCoaches(selectedCoach: string, selectedSwapCoach: TeamCoach): Promise {\n if (\n !selectedSwapCoach ||\n !selectedCoach ||\n !props.upwardLeagueId ||\n !props.divisionId ||\n !props.typeProgramId\n ) {\n return false\n }\n\n const keys = selectedCoach.split(':')\n if (!keys || keys.length < 2) {\n return false\n }\n\n const teamId1 = keys[0]\n const teamId2 = selectedSwapCoach.coach.teamID.toString()\n\n let success = await moveCoachToTeam(selectedCoach, teamId2, 1)\n if (success) {\n success = await moveCoachToTeam(selectedSwapCoach.id, teamId1, 1)\n }\n return success\n }\n\n function getEmptyTeamCoachInfo(): TeamCoachInfo {\n return {\n leagueID: 0,\n typeProgramID: null,\n divisionID: 0,\n teamID: 0,\n divisionName: null,\n teamName: null,\n headCoach: false,\n individualID: 0,\n firstName: null,\n lastName: null,\n middleInitial: null,\n gender: null,\n birthDate: null,\n churchName: null,\n practiceNights: [],\n addresses: [],\n phoneNumbers: [],\n emailAddresses: [],\n thirdPartyClientIDs: [],\n formattedNameFirstLast: null,\n formattedNameLastFirst: null,\n formattedNamePrivate: null,\n } as TeamCoachInfo\n }\n\n return {\n modalIsVisible,\n modalTitle,\n selectedCoach,\n coachList,\n swapAction,\n selectedTeam,\n filteredTeamList,\n swapCoachList,\n teamGridColumns,\n handleRowSelected,\n toggleModal,\n saveButtonText,\n swapCoach,\n }\n },\n})\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!./SwapCoachAssignment.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!./SwapCoachAssignment.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SwapCoachAssignment.vue?vue&type=template&id=9b1a1354&scoped=true&\"\nimport script from \"./SwapCoachAssignment.vue?vue&type=script&lang=ts&\"\nexport * from \"./SwapCoachAssignment.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SwapCoachAssignment.vue?vue&type=style&index=0&id=9b1a1354&lang=scss&scoped=true&\"\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 \"9b1a1354\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\n\nexport function getUpwardLeagueId(vue: Vue) {\n return vue.$route.params.id\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, onMounted } from '@vue/composition-api'\n\nimport DivisionHeader from '@/views/Programs/Divisions/vues/DivisionHeader.vue'\nimport CoachManager from '@/views/Programs/Divisions/Coaches/CoachManager.vue'\nimport Loading from '@/elements/Loading.vue'\nimport SwapCoachAssignment from '@/components/SwapCoachAssignment.vue'\n\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { HeaderValue } from '@/views/Programs/Divisions/ext/headerValue'\nimport { getUpwardLeagueId } from '@/views/Programs/Divisions/ext/divisionUtils'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { useManagerLogic } from '@/views/Programs/Divisions/Coaches/logic/ManagerLogic'\n\nimport divisionsClient from '@/clients/divisionsClient'\nimport teamsClient from '@/clients/teamsClient'\n\nexport default defineComponent({\n name: 'Coaches',\n components: {\n CoachManager,\n Loading,\n DivisionHeader,\n SwapCoachAssignment,\n },\n setup(props, ctx) {\n const headerValues = ref(null)\n const allLeagueDivisions = ref(null)\n const manager = useManagerLogic()\n\n const programID = ref('')\n const divisionID = ref(-1)\n const teamsCount = ref(99)\n const showHeaders = ref(true)\n const showSwapCoachAssignment = ref(false)\n const isLoading = ref(false)\n\n function toggleHeader(val: any) {\n showHeaders.value = val\n }\n\n const upwardLeagueId = computed(() => getUpwardLeagueId(ctx.root))\n\n const division = computed(() => headerValues.value?.selectedDivision)\n\n const divisionId = computed(() => division.value?.divisionID || 0)\n\n const refreshingAll = computed(() => manager.refreshing.value)\n\n const templateDivision = computed(\n () => headerValues.value?.selectedDivision ?? getEmptyLeagueDivisionInfo()\n )\n\n async function onDivisionChanged(hdrVals: HeaderValue | null) {\n if (hdrVals) {\n headerValues.value = hdrVals\n }\n\n if (divisionID.value != hdrVals?.selectedDivision?.divisionID ?? -1) {\n manager.setDivisionAndRefresh(hdrVals?.selectedDivision ?? undefined)\n }\n programID.value = hdrVals?.selectedTypeProgramID ?? ''\n divisionID.value = hdrVals?.selectedDivision?.divisionID ?? -1\n\n await setTeamsCount(divisionID.value, programID.value)\n isLoading.value = false\n }\n\n onMounted(async () => {\n isLoading.value = true\n allLeagueDivisions.value = await divisionsClient.retrieveAll(upwardLeagueId.value)\n if (allLeagueDivisions.value?.length == 0) {\n isLoading.value = false\n }\n })\n const divisionCount = computed(() => {\n let count = allLeagueDivisions.value ? allLeagueDivisions.value.length : -1\n if (programID.value && allLeagueDivisions.value) {\n const divisions = allLeagueDivisions.value.filter((d) => d.typeProgramID == programID.value)\n count = divisions ? divisions.length : -1\n }\n return count\n })\n\n async function setTeamsCount(divID: number | null, typeProgramId: string) {\n if (divID === -1) {\n divID = null\n }\n\n if (previousDivisionID.value === divID && previousTypeProgramID.value === typeProgramId) {\n return\n }\n\n if (divID && typeProgramId) {\n previousDivisionID.value = divID\n previousTypeProgramID.value = typeProgramId\n\n const teams = await teamsClient.retrieveTeamList({\n leagueId: upwardLeagueId.value,\n divisionId: divID,\n typeProgramId: typeProgramId,\n })\n teamsCount.value = 0\n if (teams) {\n teamsCount.value = teams.length\n }\n }\n }\n\n const typeProgramId = computed(() => {\n if (\n headerValues.value &&\n headerValues.value.selectedDivision &&\n headerValues.value.selectedDivision.typeProgramID\n ) {\n return headerValues.value.selectedDivision.typeProgramID\n }\n\n return ''\n })\n\n const previousDivisionID = ref(null)\n const previousTypeProgramID = ref(null)\n\n async function updateTeamList() {\n if (!divisionId.value) {\n return\n }\n await manager.refresh()\n }\n\n return {\n showHeaders,\n onDivisionChanged,\n refreshingAll,\n showSwapCoachAssignment,\n isLoading,\n divisionCount,\n teamsCount,\n programID,\n divisionID,\n headerValues,\n toggleHeader,\n upwardLeagueId,\n divisionId,\n typeProgramId,\n updateTeamList,\n getEmptyLeagueDivisionInfo,\n templateDivision,\n }\n },\n})\n","export enum DisplayType {\n 'MONTH' = 'month',\n 'WEEK' = 'week',\n 'DAY' = 'day',\n 'CUSTOM_WEELKLY' = 'custom-weekly',\n 'CUSTOM_DAILY' = 'custom-daily',\n 'CATEGORY' = 'category',\n}\n\nexport enum OverlapMode {\n STACK = 'stack',\n COLUMN = 'column',\n}\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!./Coaches.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!./Coaches.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Coaches.vue?vue&type=template&id=04fba61f&\"\nimport script from \"./Coaches.vue?vue&type=script&lang=ts&\"\nexport * from \"./Coaches.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('div',{staticClass:\"pt-3\"},[_c('division-header',{attrs:{\"title\":_vm.teamSquadText},on:{\"divisionChanged\":_vm.onDivisionChanged}},[_c('div',{attrs:{\"slot\":\"actionButtons\"},slot:\"actionButtons\"},[_c('button',{staticClass:\"btn btn-success mr-2 mt-2\",on:{\"click\":_vm.doShowCreateTeamModal}},[_c('i',{staticClass:\"fa fa-plus mr-2\"}),_vm._v(\" Add New \")]),_c('button',{staticClass:\"btn btn-success mt-2\",on:{\"click\":_vm.doShowAutoGenerationModal}},[_c('i',{staticClass:\"fa fa-redo\"}),_vm._v(\" Auto Generate \"+_vm._s(_vm.teamSquadText)+\"s \")])])]),(_vm.teamsLoading)?_c('div',{staticClass:\"mt-4\"},[_c('loading')],1):_vm._e(),(!_vm.teamsLoading && !_vm.hasDivisions)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"alert alert-warning mt-3\",attrs:{\"role\":\"alert\"}},[_c('p',[_vm._v(\"You have no divisions set up for this program.\")]),_c('p',[_vm._v(\" Click the \"),_c('router-link',{attrs:{\"to\":\"divisions\"}},[_vm._v(\"Divisions\")]),_vm._v(\" tab to add one or more divisions. \")],1)])])]):_vm._e(),(_vm.hasDivisions > 0 && !_vm.teamsLoading)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-8\"},[(_vm.hasTeams || _vm.showCreateTeamModal)?_c('div',{staticClass:\"bg-light-1 p-2 team-list-container\"},[_c('div',{staticClass:\"text-uppercase row pl-5 team-data-header\"},[_c('div',{staticClass:\"col-5\"},[_vm._v(_vm._s(_vm.teamSquadText))]),_c('div',{staticClass:\"col-2 d-none d-sm-block text-center\"},[(_vm.programHasTeamColors)?_c('span',[_vm._v(_vm._s(_vm.colorDDLBLabel))]):_vm._e()]),_c('div',{staticClass:\"col-1 d-none d-sm-block text-center\"},[_vm._v(\"Coaches Assigned\")]),_c('div',{staticClass:\"col-1 d-none d-sm-block text-right\"},[_vm._v(\"Participants\")]),(!_vm.isCheer & _vm.isLeague)?_c('div',{staticClass:\"col-2 d-none d-sm-block text-right\"},[_vm._v(\"Average\")]):_vm._e(),_c('div',{staticClass:\"col-1\"})]),_c('accordion',[(_vm.showCreateTeamModal)?_c('accordion-item',{staticClass:\"bg-white shadow-sm\"},[_c('div',{staticClass:\"row\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('div',{staticClass:\"col-5\"},[_c('div',{staticClass:\"d-flex\",on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();}}},[_c('text-input',{ref:\"teamNameInput\",staticClass:\"flex-grow-1\",attrs:{\"setFocus\":_vm.focusTeamNameInput},model:{value:(_vm.newTeam.teamName),callback:function ($$v) {_vm.$set(_vm.newTeam, \"teamName\", $$v)},expression:\"newTeam.teamName\"}}),(!_vm.programHasTeamColors)?_c('button',{staticClass:\"btn btn-primary mb-3 ml-2\",on:{\"click\":function($event){$event.stopPropagation();return _vm.createTeam($event)}}},[_vm._v(\" Save \")]):_vm._e()],1)]),_c('div',{staticClass:\"col-4\"},[(_vm.programHasTeamColors)?_c('div',{staticClass:\"d-flex\",on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();}}},[_c('select-input',{staticClass:\"flex-grow-1\",attrs:{\"show-blank-item\":true,\"blank-item-value\":'N/A',\"blank-item-text\":\"Not Selected\",\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"items-list\":_vm.availableColors},model:{value:(_vm.newTeam.typeColorID),callback:function ($$v) {_vm.$set(_vm.newTeam, \"typeColorID\", $$v)},expression:\"newTeam.typeColorID\"}}),_c('button',{staticClass:\"btn btn-primary mb-3 ml-2\",on:{\"click\":function($event){$event.stopPropagation();return _vm.createTeam($event)}}},[_vm._v(\"Save\")])],1):_vm._e()]),_c('div',{staticClass:\"col-3 text-right\"},[_c('i',{staticClass:\"fa fa-minus-circle\",on:{\"click\":function($event){$event.stopPropagation();return _vm.hideCreateTeamModal()}}})])])]):_vm._e(),_vm._l((_vm.teams),function(team){return _c('accordion-item',{key:team.id,staticClass:\"bg-white my-2 shadow-sm\"},[_c('div',{staticClass:\"row py-1\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('div',{staticClass:\"col-5\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isTeamInEditMode(team)),expression:\"!isTeamInEditMode(team)\"}]},[_c('strong',[_vm._v(_vm._s(team.teamName))]),(team.teamPageUrl && _vm.isLeague)?_c('p',{staticClass:\"team-url\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('small',[_c('a',{staticClass:\"text-muted\",attrs:{\"href\":team.teamPageUrl,\"target\":\"_blank\"}},[_vm._v(\" \"+_vm._s(team.teamPageUrl)+\" \")])])]):_vm._e()]),(_vm.isTeamInEditMode(team))?_c('div',{staticClass:\"d-flex\",on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();}}},[_c('text-input',{staticClass:\"flex-grow-1\",model:{value:(team.teamName),callback:function ($$v) {_vm.$set(team, \"teamName\", $$v)},expression:\"team.teamName\"}}),(!_vm.programHasTeamColors)?_c('button',{staticClass:\"btn btn-success mb-3 ml-2\",on:{\"click\":function($event){$event.stopPropagation();return _vm.saveTeam(team)}}},[_vm._v(\" Save \")]):_vm._e()],1):_vm._e()]),(!_vm.isTeamInEditMode(team))?_c('div',{staticClass:\"col-2\"},[(_vm.programHasTeamColors)?_c('div',{staticClass:\"text-center\"},[_vm._v(\" \"+_vm._s(_vm.teamColorDesc(team))+\" \")]):_vm._e()]):_vm._e(),(_vm.programHasTeamColors && _vm.isTeamInEditMode(team))?_c('div',{staticClass:\"col-4\"},[_c('div',{staticClass:\"d-flex\",on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();}}},[_c('select-input',{staticClass:\"flex-grow-1\",attrs:{\"show-blank-item\":true,\"blank-item-value\":'N/A',\"blank-item-text\":\"Not Selected\",\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"items-list\":_vm.availableColors},model:{value:(team.typeColorID),callback:function ($$v) {_vm.$set(team, \"typeColorID\", $$v)},expression:\"team.typeColorID\"}}),_c('button',{staticClass:\"btn btn-success mb-3 ml-2\",on:{\"click\":function($event){$event.stopPropagation();return _vm.saveTeam(team)}}},[_vm._v(\"Save\")])],1)]):_vm._e(),(_vm.isTeamInEditMode(team) && !_vm.programHasTeamColors)?_c('div',{staticClass:\"col-2\"}):_vm._e(),(!_vm.programHasTeamColors || !_vm.isTeamInEditMode(team))?_c('div',{staticClass:\"col-1 text-center d-none d-sm-block\"},[(team.coaches && team.coaches.length)?_c('i',{staticClass:\"fa fa-check text-success\"}):_vm._e()]):_vm._e(),(!_vm.programHasTeamColors || !_vm.isTeamInEditMode(team))?_c('div',{staticClass:\"col-1 text-right d-none d-sm-block\"},[_vm._v(\" \"+_vm._s(team.players ? team.players.length : '')+\" \")]):_vm._e(),(!_vm.isCheer && _vm.isLeague)?_c('div',{staticClass:\"col-2 text-right d-none d-sm-block\"},[_vm._v(\" \"+_vm._s(_vm._f(\"numberToFixed\")(_vm.calculateTeamAverage(team),2))+\" \")]):_vm._e(),_c('div',{staticClass:\"col text-right\"},[_c('i',{staticClass:\"fas fa-pencil-alt ml-2\",on:{\"click\":function($event){$event.stopPropagation();return _vm.editTeam(team)}}}),_c('i',{staticClass:\"fa fa-minus-circle ml-2\",on:{\"click\":function($event){$event.stopPropagation();return _vm.onDeleteClick(team)}}})])]),_c('hr',{staticClass:\"mx-1 mt-0\"}),_c('div',{staticClass:\"row my-3 px-2 small\"},[_c('div',{staticClass:\"col-sm-6\"},[_c('div',{staticClass:\"row team-data-header text-uppercase\"},[_c('div',{staticClass:\"col-6\"},[_vm._v(\"Coaches\")]),_c('div',{staticClass:\"col-6 text-right\"},[_vm._v(\"Head Coach\")])]),_vm._l((team.coaches),function(coach){return _c('div',{key:coach.id,staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_vm._v(_vm._s(coach.formattedNameFirstLast))]),_c('div',{staticClass:\"col-6 text-right\"},[(coach.headCoach)?_c('i',{staticClass:\"fa fa-check text-success\"}):_vm._e()])])})],2),_c('div',{staticClass:\"col-sm-6 border-sm-left\"},[_c('div',{staticClass:\"row team-data-header text-uppercase\"},[_c('div',{staticClass:\"col-6\"},[_vm._v(\"Participants\")]),(_vm.isLeague)?_c('div',{staticClass:\"col-6 text-right\"},[_vm._v(\"Athletic Score\")]):_vm._e()]),_vm._l((team.players),function(participant){return _c('div',{key:participant.id,staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_vm._v(_vm._s(participant.formattedNameFirstLast))]),(_vm.isLeague)?_c('div',{staticClass:\"col-6 text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"numberToFixed\")(participant.athleticScore,2))+\" \")]):_vm._e()])})],2)])])})],2)],1):_c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_vm._v(\" No \"+_vm._s(_vm.teamSquadTextLower)+\"s currently exist. Do you want to automatically create your \"+_vm._s(_vm.teamSquadTextLower)+\"s, or create them manually? \")]),_c('div',{staticClass:\"col-md-6\"},[_c('div',{staticClass:\"border shadow p-4 mt-3\"},[_c('h6',[_vm._v(\"Automatic \"+_vm._s(_vm.teamSquadText)+\" Creation\")]),_c('p',[_vm._v(\" Suggests number of \"+_vm._s(_vm.teamSquadTextLower)+\"s to create based on the number of registrants and automatically creates team names and team name categories. \")]),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.doShowAutoGenerationModal}},[_vm._v(\" Create \"+_vm._s(_vm.teamSquadText)+\"s Automatically \")])])]),_c('div',{staticClass:\"col-md-6\"},[_c('div',{staticClass:\"border shadow p-4 mt-3\"},[_c('h6',[_vm._v(\"Manual \"+_vm._s(_vm.teamSquadText)+\" Creation\")]),_c('p',[_vm._v(\" Create and specify names for your \"+_vm._s(_vm.teamSquadTextLower)+\"s. If you have already created \"+_vm._s(_vm.teamSquadTextLower)+\"s, selecting this option will allow you to add, edit, or remove those \"+_vm._s(_vm.teamSquadTextLower)+\"s. \")]),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.doShowCreateTeamModal}},[_vm._v(\" Create \"+_vm._s(_vm.teamSquadText)+\" Manually \")])])])])])]),_c('div',{staticClass:\"col-xl-4 border-xl-left\"},[(_vm.headerValues && _vm.headerValues.selectedDivision)?_c('division-grade-gender-list',{attrs:{\"program-id\":_vm.headerValues.selectedDivision.typeProgramID,\"isByAge\":_vm.isByAge}}):_vm._e()],1)]):_vm._e(),(_vm.currentTeam)?_c('confirmation-modal',{attrs:{\"show\":_vm.showDeleteConfirmation,\"title\":(\"Delete \" + (_vm.currentTeam.name) + \"?\"),\"is-small\":true},on:{\"onResponse\":_vm.onDeleteConfirmationResponse},scopedSlots:_vm._u([{key:\"confirm\",fn:function(){return [_c('i',{staticClass:\"fa fa-minus-circle text-white\"}),_vm._v(\" Delete \")]},proxy:true},{key:\"cancel\",fn:function(){return [_vm._v(\" Cancel \")]},proxy:true}],null,false,4173428757)},[_c('div',{staticClass:\"m-4\"},[_vm._v(\"You will not be able to recover this team. Do you want to delete it?\")])]):_vm._e(),(_vm.headerValues && _vm.headerValues.selectedDivision)?_c('auto-create-teams-modal',{attrs:{\"upwardLeagueId\":_vm.headerValues.selectedDivision.upwardLeagueID\n ? _vm.headerValues.selectedDivision.upwardLeagueID\n : undefined,\"divisionId\":_vm.headerValues.selectedDivision.divisionID,\"typeProgramId\":_vm.headerValues.selectedDivision.typeProgramID ? _vm.headerValues.selectedDivision.typeProgramID : undefined,\"teamSquadText\":_vm.teamSquadText,\"hasTeams\":_vm.hasTeams},model:{value:(_vm.showAutoGenerationModal),callback:function ($$v) {_vm.showAutoGenerationModal=$$v},expression:\"showAutoGenerationModal\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default (value: number | string | null | undefined, decimalDigits: number | undefined) => {\n if (typeof value !== 'number') {\n return value\n }\n\n return value.toFixed(decimalDigits)\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.guidelineInfo)?_c('modal',{attrs:{\"title\":'Automatic ' + _vm.teamSquadText + ' Creation',\"header-class\":\"bg-warning text-white\",\"header-icon\":\"fas fa-exclamation-triangle\"},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[(_vm.hasTeams)?_c('div',[_c('h5',[_vm._v(\"Warning\")]),_c('p',[_vm._v(\" This division already has 1 or more \"+_vm._s(_vm.lowerCaseTeamSquadText)+\"s. If you choose to \\\"Create Recommended \"+_vm._s(_vm.teamSquadText)+\"s\\\" below, your exisiting \"+_vm._s(_vm.lowerCaseTeamSquadText)+\"s and any assignments (player and coach) will be removed. \")])]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6 mt-4\"},[_c('h6',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.teamSquadText)+\" Division Information\")]),_c('div',{staticClass:\"list-group alternate-bg-light-1-3\"},[_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Number of Registrants\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.registrantCount))])])]),_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Recommended \"+_vm._s(_vm.teamSquadText)+\" Size\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.suggestedPlayersPerTeam))])])]),_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Minimum Number of \"+_vm._s(_vm.teamSquadText)+\"s\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.minimumTeamCount))])])]),_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Maximum Number of \"+_vm._s(_vm.teamSquadText)+\"s\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.maximumTeamCount))])])]),_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Suggested Number of \"+_vm._s(_vm.teamSquadText)+\"s\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.suggestedTeamCount))])])])])]),_c('div',{staticClass:\"col-md-6 border-md-left mt-4\"},[_c('h6',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.teamSquadText)+\" Name Category Options\")]),_c('select-input',{attrs:{\"label\":_vm.teamSquadText + ' Name Category',\"items-list\":_vm.guidelineInfo.teamCategories,\"valuePropertyName\":\"upwardTypeID\",\"textPropertyName\":\"description\"},model:{value:(_vm.generationData.typeTeamCategoryID),callback:function ($$v) {_vm.$set(_vm.generationData, \"typeTeamCategoryID\", $$v)},expression:\"generationData.typeTeamCategoryID\"}}),_c('toggle-slot',{attrs:{\"label\":'Prefix ' + _vm.teamSquadText + ' Names'}},[_c('text-input',{attrs:{\"label\":_vm.teamSquadText + ' Prefix'},model:{value:(_vm.generationData.prefix),callback:function ($$v) {_vm.$set(_vm.generationData, \"prefix\", $$v)},expression:\"generationData.prefix\"}})],1),_c('yes-no-input',{attrs:{\"label\":'Do Not Duplicate ' + _vm.teamSquadText + ' Names from Other Divisions'},model:{value:(_vm.generationData.removeDupes),callback:function ($$v) {_vm.$set(_vm.generationData, \"removeDupes\", $$v)},expression:\"generationData.removeDupes\"}}),_c('integer-input',{attrs:{\"label\":'Number of ' + _vm.teamSquadText + 's to Create',\"min\":1},model:{value:(_vm.generationData.teamCount),callback:function ($$v) {_vm.$set(_vm.generationData, \"teamCount\", $$v)},expression:\"generationData.teamCount\"}}),_c('p',{staticClass:\"small\"},[_vm._v(\" Note: If you choose to create a number of \"+_vm._s(_vm.lowerCaseTeamSquadText)+\"s that is different from the recommendations at left, you will need to manage \"+_vm._s(_vm.lowerCaseTeamSquadText)+\"s manually. \")])],1)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.hideAutoGenerationModal}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-warning\",attrs:{\"disabled\":_vm.generationData.teamCount <= 0},on:{\"click\":_vm.createRecommendedTeams}},[_vm._v(\" Create Recommended \"+_vm._s(_vm.teamSquadText)+\"s \")])])],2):_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:\"form-group\"},[_c('checkbox-input',{staticClass:\"p-0\",attrs:{\"label\":_vm.label,\"inline\":\"\"},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}},[_c('template',{slot:\"inline-label\"},[_vm._t(\"label\")],2)],2),(_vm.internalValue)?_c('div',{staticClass:\"mt-1 border-left pl-3\"},[_vm._t(\"default\")],2):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nexport default defineComponent({\n name: 'ToggleSlot',\n components: {\n CheckboxInput,\n },\n props: {\n label: { type: String, default: '', required: false },\n value: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n\n watch(\n () => internalValue.value,\n () => {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n )\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n return {\n internalValue,\n }\n },\n})\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!./ToggleSlot.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!./ToggleSlot.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ToggleSlot.vue?vue&type=template&id=81079cc4&\"\nimport script from \"./ToggleSlot.vue?vue&type=script&lang=ts&\"\nexport * from \"./ToggleSlot.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\n\nimport teamsClient from '@/clients/teamsClient'\nimport { TeamGenerationData } from '@/models/Teams/TeamGenerationData'\nimport { TeamGeneratorGuidelineInfo } from '@/GeneratedTypes/ListInfo/TeamGeneratorGuidelineInfo'\n\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport Modal from '@/components/Modal.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport ToggleSlot from '@/elements/ToggleSlot.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\n\nexport default defineComponent({\n name: 'AutoCreateTeamsModal',\n components: {\n IntegerInput,\n Modal,\n SelectInput,\n TextInput,\n ToggleSlot,\n YesNoInput,\n },\n props: {\n value: { type: Boolean, required: true },\n teamSquadText: { type: String, required: true },\n upwardLeagueId: { type: String, default: '', required: false },\n divisionId: { type: Number, default: 0, required: false },\n typeProgramId: { type: String, default: '', required: false },\n hasTeams: { type: Boolean, default: false, required: false },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(props.value)\n const generationData = ref(getEmptyGenerationData())\n\n function getEmptyGenerationData() {\n return {\n typeTeamCategoryID: '',\n prefix: null,\n removeDupes: false,\n teamCount: 0,\n }\n }\n\n const guidelineInfo = ref(null)\n\n const lowerCaseTeamSquadText = computed(() => props.teamSquadText.toLowerCase())\n\n function hideAutoGenerationModal() {\n modalIsVisible.value = false\n }\n\n async function createRecommendedTeams() {\n if (props.upwardLeagueId && props.divisionId && props.typeProgramId) {\n await teamsClient.generateTeams({\n leagueId: props.upwardLeagueId,\n divisionId: props.divisionId,\n typeProgramId: props.typeProgramId,\n teamGenerationData: generationData.value,\n })\n }\n modalIsVisible.value = false\n }\n\n async function doShowAutoGenerationModal() {\n if (props.upwardLeagueId && props.divisionId && props.typeProgramId) {\n guidelineInfo.value = await teamsClient.getTeamGenerationGuidelines({\n leagueId: props.upwardLeagueId,\n divisionId: props.divisionId,\n typeProgramId: props.typeProgramId,\n })\n } else {\n guidelineInfo.value = null\n }\n\n if (guidelineInfo.value) {\n modalIsVisible.value = true\n }\n }\n\n watch(\n () => modalIsVisible.value,\n async () => {\n if (modalIsVisible.value != props.value) {\n ctx.emit('input', modalIsVisible.value)\n }\n\n if (modalIsVisible.value) {\n await doShowAutoGenerationModal()\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (modalIsVisible.value != props.value) {\n modalIsVisible.value = props.value\n }\n generationData.value = getEmptyGenerationData()\n }\n )\n\n return {\n guidelineInfo,\n modalIsVisible,\n generationData,\n lowerCaseTeamSquadText,\n hideAutoGenerationModal,\n createRecommendedTeams,\n }\n },\n})\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!./AutoCreateTeamsModal.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!./AutoCreateTeamsModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AutoCreateTeamsModal.vue?vue&type=template&id=2470d910&\"\nimport script from \"./AutoCreateTeamsModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AutoCreateTeamsModal.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, nextTick } from '@vue/composition-api'\n\nimport teamsClient from '@/clients/teamsClient'\nimport ordersClient from '@/clients/ordersClient'\n\nimport { DivisionTeam } from '@/GeneratedTypes/DivisionTeam'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { ParticipantOrderProductInfo } from '@/GeneratedTypes/ListInfo/ParticipantOrderProductInfo'\n\nimport numberToFixed from '@/filters/numberToFixed'\n\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport Accordion from '@/components/Accordion.vue'\nimport AccordionItem from '@/components/AccordionItem.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport DivisionGradeGenderList from '@/components/DivisionGradeGenderList.vue'\n\nimport AutoCreateTeamsModal from '@/views/Programs/Divisions/vues/AutoCreateTeamsModal.vue'\nimport DivisionHeader from '@/views/Programs/Divisions/vues/DivisionHeader.vue'\n\nimport { getUpwardLeagueId } from '@/views/Programs/Divisions/ext/divisionUtils'\nimport { HeaderValue } from '@/views/Programs/Divisions/ext/headerValue'\n\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\nimport { getColorDescription } from '@/lib/common/upwardColorTypes'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Setup',\n components: {\n Accordion,\n AccordionItem,\n AutoCreateTeamsModal,\n ConfirmationModal,\n DivisionGradeGenderList,\n DivisionHeader,\n Loading,\n TextInput,\n SelectInput,\n },\n filters: {\n numberToFixed,\n },\n setup(props, ctx) {\n const teamsLoading = ref(false)\n const showDeleteConfirmation = ref(false)\n const showAutoGenerationModal = ref(false)\n const showCreateTeamModal = ref(false)\n const currentTeam = ref(null)\n\n const teams = ref([])\n const newTeam = ref(null)\n const teamsInEditMode = ref([])\n const headerValues = ref(null)\n\n const productItems = ref([])\n const productWithTeamColors = ref(null)\n\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n\n const typeProgramId = computed(() => headerValues.value?.selectedTypeProgramID)\n\n const isLeague = computed(\n () => store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE\n )\n\n const isByAge = computed(() => store.getters.leagueAbstraction.isByAge)\n\n const hasDivisions = computed((): boolean => {\n if (headerValues.value) {\n if (headerValues.value.selectedDivision) return true\n }\n return false\n })\n\n //TNT - temporary hack until we get to Vue3 and can do refs\n const focusTeamNameInput = ref(false)\n\n onMounted(async () => {\n teamsLoading.value = true\n productItems.value = (await ordersClient.getLeagueOrderItems(upwardLeagueId.value)) ?? []\n onSelectedTypeProgramIDChanged()\n await store.dispatch.colorTypes.fetchAll(false) //get these cached up\n teamsLoading.value = false\n })\n\n function onSelectedTypeProgramIDChanged() {\n // await this.setDivisionCount()\n productWithTeamColors.value =\n productItems.value.find(\n (x) =>\n x.typeProgramID == typeProgramId.value &&\n x.isColorBasedOnTeamAssignment &&\n store.getters.leagueAbstraction.currentItem.productOfferingConfig.details?.some(\n (d) => d.productID == x.id || d.productID == x.parentProductID\n )\n ) ?? null\n }\n\n watch(\n () => headerValues.value?.selectedTypeProgramID,\n () => {\n onSelectedTypeProgramIDChanged()\n }\n )\n\n const hasTeams = computed(() => teams.value && teams.value.length > 0)\n\n const isCheer = computed(\n () => headerValues.value?.selectedDivision?.typeProgramID === headerValues.value?.cheerProgramTypeID\n )\n\n const programHasTeamColors = computed(() => productWithTeamColors.value != null)\n\n const colorDDLBLabel = computed(() => {\n return productWithTeamColors.value == null\n ? ''\n : productWithTeamColors.value.collectColorInfoWithTeam\n ? 'Jersey Style'\n : 'Color'\n })\n\n function teamColorDesc(team: DivisionTeamInfo) {\n return team && team.typeColorID && team.typeColorID != 'N/A'\n ? getColorDescription(team.typeColorID)\n : 'Not Selected'\n }\n\n const availableColors = computed(() => {\n return productWithTeamColors.value\n ? store.state.colorTypes.items\n .filter(\n (x) =>\n x.upwardTypeID != 'N/A' &&\n (productWithTeamColors.value?.isColorBasedOnTeamAssignment || x.isTeamColor) &&\n productWithTeamColors.value?.productColorSizes?.some((c) => c.typeColorID! == x.upwardTypeID!)\n )\n .sort((a, b) => (a.description! == b.description! ? 0 : a.description! > b.description! ? 1 : -1))\n : []\n })\n\n function doShowAutoGenerationModal() {\n showAutoGenerationModal.value = true\n }\n\n function editTeam(team: DivisionTeam) {\n teamsInEditMode.value.push(team.teamID)\n }\n\n function isTeamInEditMode(team: DivisionTeam): boolean {\n return teamsInEditMode.value.some((x) => x === team.teamID)\n }\n\n const teamSquadText = computed(() => {\n if (\n headerValues.value &&\n headerValues.value.cheerProgramTypeID == headerValues.value.selectedTypeProgramID\n ) {\n return 'Squad'\n }\n return 'Team'\n })\n\n const teamSquadTextLower = computed(() => teamSquadText.value.toLowerCase())\n\n async function saveTeam(team: DivisionTeamInfo) {\n const divisionTeam = await getDivisionTeam(team)\n divisionTeam.teamName = team.teamName ?? ''\n divisionTeam.typeColorID = team.typeColorID\n const saved = await teamsClient.saveTeam({\n team: divisionTeam,\n leagueId: getUpwardLeagueId(ctx.root),\n })\n\n if (saved) {\n const index = teamsInEditMode.value.findIndex((x) => x === team.teamID)\n teamsInEditMode.value.splice(index, 1)\n }\n }\n\n async function getDivisionTeam(team: DivisionTeamInfo) {\n // Must convert to DivisionTeam from DivisionTeamInfo in order to save.\n // That conversion would involve multiple arrays of objects which each need to be\n // converted. This would go as much as 3 levels deep, so just fetch the correct\n // data model from db instead of making a maintence headache.\n return await teamsClient.getTeam(\n team.upwardLeagueID ?? '',\n team.typeProgramID ?? '',\n team.divisionID,\n team.teamID\n )\n }\n\n async function doShowCreateTeamModal() {\n newTeam.value = await teamsClient.getTeamTemplate()\n if (headerValues.value && headerValues.value.selectedDivision) {\n newTeam.value.leagueID = headerValues.value.selectedDivision.leagueID\n newTeam.value.typeProgramID = headerValues.value.selectedDivision.typeProgramID!\n newTeam.value.divisionID = headerValues.value.selectedDivision.divisionID\n }\n showCreateTeamModal.value = true\n\n nextTick(() => {\n /*\n const teamNameInput = ctx.refs.teamNameInput as typeof TextInput\n const teamNameTextbox = teamNameInput.$refs.inputField as HTMLInputElement\n teamNameTextbox.focus()\n */\n focusTeamNameInput.value = true\n })\n }\n\n function hideCreateTeamModal() {\n showCreateTeamModal.value = false\n focusTeamNameInput.value = false\n }\n\n async function createTeam() {\n if (newTeam.value) {\n const teamCreated = await teamsClient.createTeam({ team: newTeam.value })\n\n if (teamCreated && headerValues.value && headerValues.value.selectedDivision) {\n await loadTeams(headerValues.value.selectedDivision)\n showCreateTeamModal.value = false\n focusTeamNameInput.value = false\n }\n }\n }\n\n function onDeleteClick(team: DivisionTeamInfo) {\n currentTeam.value = team\n showDeleteConfirmation.value = true\n }\n\n async function onDeleteConfirmationResponse(confirmed: boolean) {\n showDeleteConfirmation.value = false\n\n if (confirmed && headerValues.value && headerValues.value.selectedDivision && currentTeam.value) {\n await teamsClient.deleteTeam({\n leagueId: getUpwardLeagueId(ctx.root),\n divisionId: headerValues.value.selectedDivision.divisionID,\n typeProgramId: headerValues.value.selectedDivision.typeProgramID!,\n teamId: currentTeam.value.teamID,\n })\n\n await loadTeams(headerValues.value.selectedDivision)\n }\n }\n\n async function loadTeams(division: LeagueDivisionInfo | null) {\n teamsLoading.value = true\n if (division) {\n const teamList = await teamsClient.retrieveTeamList({\n leagueId: getUpwardLeagueId(ctx.root),\n divisionId: division.divisionID,\n typeProgramId: division.typeProgramID!,\n })\n\n teams.value = [...teamList]\n }\n teamsLoading.value = false\n }\n\n async function onDivisionChanged(hdrVals: HeaderValue | null) {\n if (hdrVals) {\n headerValues.value = hdrVals\n await loadTeams(hdrVals.selectedDivision)\n }\n }\n\n watch(\n () => showAutoGenerationModal.value,\n async () => {\n if (!showAutoGenerationModal.value && headerValues.value?.selectedDivision) {\n await loadTeams(headerValues.value.selectedDivision)\n }\n }\n )\n\n function calculateTeamAverage(team: DivisionTeamInfo) {\n if (!team.playerCount) {\n return 0\n }\n\n var totalScore = team.players?.reduce((runningTotal, x) => runningTotal + x.athleticScore, 0) ?? 0\n return totalScore / team.playerCount\n }\n\n return {\n teamSquadText,\n teamSquadTextLower,\n onDivisionChanged,\n doShowCreateTeamModal,\n doShowAutoGenerationModal,\n showAutoGenerationModal,\n teamsLoading,\n hasDivisions,\n hasTeams,\n showCreateTeamModal,\n programHasTeamColors,\n colorDDLBLabel,\n isCheer,\n isLeague,\n newTeam,\n createTeam,\n availableColors,\n hideCreateTeamModal,\n teams,\n isTeamInEditMode,\n saveTeam,\n teamColorDesc,\n calculateTeamAverage,\n editTeam,\n onDeleteClick,\n headerValues,\n isByAge,\n currentTeam,\n showDeleteConfirmation,\n onDeleteConfirmationResponse,\n focusTeamNameInput,\n }\n },\n})\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!./Teams.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!./Teams.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Teams.vue?vue&type=template&id=79720780&scoped=true&\"\nimport script from \"./Teams.vue?vue&type=script&lang=ts&\"\nexport * from \"./Teams.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Teams.vue?vue&type=style&index=0&id=79720780&lang=scss&scoped=true&\"\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 \"79720780\",\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('div',{staticClass:\"col-12\"},[_c('division-header',{attrs:{\"title\":\"Practices\"},on:{\"divisionChanged\":_vm.onDivisionChanged}},[_c('div',{staticClass:\"pt-2\",attrs:{\"slot\":\"actionButtons\"},slot:\"actionButtons\"},[_c('portal-target',{attrs:{\"name\":\"division_practice_buttons\"}})],1)]),(_vm.loading)?_c('div',{staticClass:\"mt-4\"},[_c('loading')],1):[(!_vm.hasFacilites)?_c('div',{staticClass:\"alert alert-warning mt-3\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no facilities set up for this program.\")]),_c('p',[_vm._v(\" Click the \"),_c('router-link',{attrs:{\"to\":'/programs/league/' + _vm.leagueID + '/scheduling/facilities'}},[_vm._v(\"Facilities\")]),_vm._v(\" tab to add one or more facilities. \")],1)]):_vm._e(),_c('div',{staticClass:\"pt-3 h-100\"},[(_vm.hasFacilites)?_c('practice-scheduler',{attrs:{\"division-i-d\":_vm.divisionID,\"program-i-d\":_vm.programID},on:{\"scheduleLoading\":_vm.onLoadingChange}}):_vm._e()],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',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid px-0\"},[(_vm.loading)?_c('div',{staticClass:\"mt-4\"},[_c('loading')],1):_vm._e(),(!_vm.hasDivisions && !_vm.loading)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no divisions set up for this program.\")]),_c('p',[_vm._v(\" Click the \"),_c('router-link',{attrs:{\"to\":_vm.divisionLink}},[_vm._v(\"Divisions/Teams\")]),_vm._v(\" tab to add one or more divisions. \")],1)])])]):_vm._e(),(_vm.hasDivisions)?_c('div',[(_vm.divisionID == -1)?_c('div',{staticClass:\"row my-2\"},[_c('div',{staticClass:\"col-sm-auto py-0\"},[_c('div',{staticClass:\"form-inline\"},[_c('label',{staticClass:\"text-uppercase pr-1\"},[_vm._v(\"Division\")]),_c('select-input',{attrs:{\"items-list\":_vm.divisionSelect,\"value-property-name\":\"divisionID\",\"text-property-name\":\"divisionName\"},model:{value:(_vm.internalDivisionID),callback:function ($$v) {_vm.internalDivisionID=$$v},expression:\"internalDivisionID\"}})],1)]),_c('div',{staticClass:\"col-sm text-right py-0\"},[(_vm.teamsList.length)?_c('button',{staticClass:\"m-1 btn btn-primary\",on:{\"click\":function($event){return _vm.clickAddPractice(null)}}},[_c('i',{staticClass:\"fas fa-plus\"}),_vm._v(\" Add Practice \")]):_vm._e(),(_vm.teamsList.length)?_c('button',{staticClass:\"m-1 btn btn-primary\",on:{\"click\":_vm.clickClearPractices}},[_c('i',{staticClass:\"fas fa-trash\"}),_vm._v(\" Clear Practices for a Team \")]):_vm._e()])]):_c('div',[_c('portal',{attrs:{\"to\":\"division_practice_buttons\"}},[_c('button',{staticClass:\"mr-2 btn btn-primary\",on:{\"click\":_vm.clickClearPractices}},[_c('i',{staticClass:\"fas fa-trash\"}),_vm._v(\" Clear Practices for a Team \")]),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function($event){return _vm.clickAddPractice(null)}}},[_c('i',{staticClass:\"fas fa-plus\"}),_vm._v(\" Add Practice \")])])],1),(_vm.hasTeams == 0 && !_vm.loading)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no teams set up for this division.\")]),_c('p',[_vm._v(\" Click the \"),_c('router-link',{attrs:{\"to\":_vm.teamLink}},[_vm._v(\"Divisions/Teams\")]),_vm._v(\" tab to add one or more divisions. \")],1)])])]):_vm._e(),(_vm.hasTeams == 1)?_c('div',[_c('div',{staticClass:\"mt-3 row no-gutters\"},[_c('div',{staticClass:\"col-3 pl-0 pt-5\"},[_c('checkbox-input',{attrs:{\"label\":\"Hide Scheduled Teams\"},model:{value:(_vm.showUnscheduledOnly),callback:function ($$v) {_vm.showUnscheduledOnly=$$v},expression:\"showUnscheduledOnly\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('Calendar',{attrs:{\"group-name\":\"paracticeScheduler\",\"weekdays\":_vm.weekdays,\"start-date\":_vm.firstGameDate,\"first-day\":_vm.firstGameDate,\"default-event-duration\":_vm.practiceDuration,\"events\":_vm.schedule,\"matchups\":_vm.scheduleTeamsList,\"upwardLeagueID\":_vm.leagueID,\"coachConflictType\":_vm.coachConflictTypeEnum.PracticeDoubleBooked,\"first-time\":\"16:00\",\"last-time\":\"21:00\"},on:{\"drop:external\":_vm.eventDropped,\"drop:internal\":_vm.eventMoved,\"click:event\":_vm.eventClick},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('div',{staticClass:\"tab-fix\"},[_c('div',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.statusText))]),_c('horizontal-tab-filter',{attrs:{\"filters\":_vm.facilitiesToFilter,\"label\":\"Facilities To Show\"},on:{\"filter-update\":_vm.facilityFilterUpdated}}),_c('HorizontalTabs',{attrs:{\"tabs\":_vm.facilitiesAsTabs},model:{value:(_vm.currentFacility),callback:function ($$v) {_vm.currentFacility=$$v},expression:\"currentFacility\"}})],1)]},proxy:true},{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('ScheduleDragItem',{attrs:{\"item\":item}})]}}],null,false,1917362479)})],1)])]):_vm._e()]):_vm._e(),(_vm.practiceModalShowing)?_c('practice-modal',{attrs:{\"division\":_vm.division,\"facility-list\":_vm.eventFacilities,\"league\":this.league,\"practice\":_vm.currentPractice,\"team-list\":_vm.teamsList,\"program-i-d\":_vm.programID,\"loading\":_vm.practiceSaving,\"duration\":_vm.practiceDuration},on:{\"confirmed\":_vm.confirmPractice,\"deleted\":_vm.deletePractice},model:{value:(_vm.practiceModalShowing),callback:function ($$v) {_vm.practiceModalShowing=$$v},expression:\"practiceModalShowing\"}}):_vm._e(),_c('confirmation-modal',{attrs:{\"title\":\"Confirm Clear Practices\",\"show\":_vm.confirmClearPracticesShowing,\"is-small\":true},on:{\"onResponse\":_vm.confirmClearPractices}},[_vm._v(\" Which teams to do you want to remove all practice dates for ? \"),_c('select-input',{attrs:{\"items-list\":_vm.teamsListAndAllTeams,\"text-property-name\":\"teamName\",\"value-property-name\":\"teamID\"},model:{value:(_vm.teamToClear),callback:function ($$v) {_vm.teamToClear=$$v},expression:\"teamToClear\"}}),_c('template',{slot:\"confirm\"},[_vm._v(\"✖ Delete\")]),_c('template',{slot:\"cancel\"},[_vm._v(\"Cancel\")])],2),_c('alert',{attrs:{\"type\":_vm.alertType},model:{value:(_vm.showPracticesCleared),callback:function ($$v) {_vm.showPracticesCleared=$$v},expression:\"showPracticesCleared\"}},[_vm._v(\" Cleared practices \"),_c('b',[_vm._v(_vm._s(_vm.statusText))])]),_c('alert',{attrs:{\"type\":_vm.alertType},model:{value:(_vm.showDeleteConfirmed),callback:function ($$v) {_vm.showDeleteConfirmed=$$v},expression:\"showDeleteConfirmed\"}},[_vm._v(\" Deleted Practice \")])],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('div',{staticClass:\"bg-white d-flex\"},[_c('div',{staticClass:\"col\"},[_c('switch-slot',{staticClass:\"pop text-nowrap\",attrs:{\"mode\":\"radio\",\"options\":_vm.calendarListOptions},model:{value:(_vm.calendarListSwitch),callback:function ($$v) {_vm.calendarListSwitch=$$v},expression:\"calendarListSwitch\"}}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.calendarListSwitch !== 'show-coach-conflicts'),expression:\"calendarListSwitch !== 'show-coach-conflicts'\"}],staticClass:\"mx-2\",staticStyle:{\"flex-grow\":\"1\",\"max-width\":\"250px\"}},[_c('CalendarableEvents',{staticClass:\"correct-top\",attrs:{\"events\":_vm.lMatchups,\"group-name\":_vm.groupName},on:{\"dropped\":_vm.matchupDropped},scopedSlots:_vm._u([{key:\"i\",fn:function(ref){\nvar e = ref.e;\nreturn [_vm._t(\"item\",null,{\"item\":e})]}}],null,true)}),_vm._t(\"comment\")],2),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.calendarListSwitch === 'show-coach-conflicts'),expression:\"calendarListSwitch === 'show-coach-conflicts'\"}],staticClass:\"mx-2\",staticStyle:{\"flex-grow\":\"1\",\"max-width\":\"400px\"}},[_c('coach-conflict-list',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.calendarListSwitch === 'show-coach-conflicts'),expression:\"calendarListSwitch === 'show-coach-conflicts'\"}],attrs:{\"conflicts\":_vm.coachConflicts,\"upwardLeagueID\":_vm.upwardLeagueID,\"isCalendarMode\":true}})],1)],1),_c('div',{staticStyle:{\"flex-grow\":\"1\"}},[_c('div',[_vm._t(\"header\")],2),_c('div',{staticClass:\"d-flex justify-content-between align-items-start border-top border-right border-left\"},[_c('CalendarNav',{staticClass:\"mr-5\",attrs:{\"weeks\":_vm.weeks},model:{value:(_vm.weekId),callback:function ($$v) {_vm.weekId=$$v},expression:\"weekId\"}}),_c('CalendarOptions',{attrs:{\"daysToShow\":_vm.lWeekdays,\"startTime\":_vm.lFirstTime,\"endTime\":_vm.lLastTime},on:{\"update:daysToShow\":function($event){_vm.lWeekdays=$event},\"update:days-to-show\":function($event){_vm.lWeekdays=$event},\"update:startTime\":function($event){_vm.lFirstTime=$event},\"update:start-time\":function($event){_vm.lFirstTime=$event},\"update:endTime\":function($event){_vm.lLastTime=$event},\"update:end-time\":function($event){_vm.lLastTime=$event}}})],1),_c('Container',{staticClass:\"border-bottom\",staticStyle:{\"height\":\"30em\"},attrs:{\"group-name\":_vm.groupName,\"behaviour\":\"drop-zone\"}},[_c('VCalendar',{staticClass:\"upw-daily-calendar\",attrs:{\"event-overlap-mode\":\"column\",\"events\":_vm.lEvents,\"type\":_vm.DisplayType.CUSTOM_DAILY,\"weekdays\":_vm.lWeekdays,\"first-time\":_vm.lFirstTime,\"interval-count\":_vm.intervalCount,\"interval-minutes\":_vm.intervalMinutes,\"interval-format\":_vm.intervalFormat,\"interval-style\":_vm.intervalStyle,\"max-days\":_vm.maxDays,\"start\":_vm.start,\"end\":_vm.end,\"event-color\":_vm.getEventColor,\"event-text-color\":_vm.getEventTextColor},on:{\"mousedown:event\":_vm.startDrag,\"mousedown:time\":_vm.startTime,\"mousemove:time\":_vm.mouseMove,\"mouseup:time\":_vm.endDrag,\"click:event\":_vm.eventClick},nativeOn:{\"mousemove\":function($event){return _vm.mouseMoveNative($event)},\"mouseleave\":function($event){return _vm.cancelDrag($event)}},scopedSlots:_vm._u([{key:\"interval\",fn:function(ref){\nvar date = ref.date;\nvar time = ref.time;\nvar weekday = ref.weekday;\nreturn [_c('div',{staticClass:\"v-calendar-daily__day-interval\",class:{ 'invalid-day': !_vm.allowed(weekday) }})]}},{key:\"event\",fn:function(ref){\nvar event = ref.event;\nvar timed = ref.timed;\nvar eventSummary = ref.eventSummary;\nreturn [_c('div',{staticClass:\"p-2 upw-event\",class:event.class},[_c('div',[_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(event.name))]),_c('div',[_vm._v(_vm._s(_vm.formatTime(event.start))+\" - \"+_vm._s(_vm.formatTime(event.end)))])]),(event.division)?_c('div',{staticClass:\"pt-1\"},[_c('span',{staticClass:\"font-weight-bold font-italic\"},[_vm._v(_vm._s(event.division))])]):_vm._e()])]}}]),model:{value:(_vm.initialDate),callback:function ($$v) {_vm.initialDate=$$v},expression:\"initialDate\"}})],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 mt-5\"},[_c('div',{staticClass:\"row-cols-2\"},[_c('button',{staticClass:\"btn\",on:{\"click\":_vm.prev}},[_c('i',{staticClass:\"fas fa-caret-left med\"})]),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.next}},[_c('i',{staticClass:\"fas fa-caret-right med\"})]),(_vm.showToday)?_c('button',{staticClass:\"btn btn-link btn-xs d-block\",on:{\"click\":_vm.today}},[_vm._v(\"Today\")]):_vm._e()]),_c('div',{staticClass:\"d-inline-block\"},[_c('select-input',{staticClass:\"p-0 m-0\",attrs:{\"items-list\":_vm.weeks,\"text-property-name\":\"text\",\"value-property-name\":\"id\"},model:{value:(_vm.weekId),callback:function ($$v) {_vm.weekId=$$v},expression:\"weekId\"}})],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\nimport { defineComponent, PropType, computed } from '@vue/composition-api'\nimport { Week } from '@/elements/Calendar/types'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport dayjs from 'dayjs'\nimport isBetween from 'dayjs/plugin/isBetween'\n\nexport default defineComponent({\n name: 'CalendarNav',\n components: { SelectInput },\n props: {\n value: { type: Number, required: false, default: 0 },\n weeks: { type: Array as PropType, required: false, default: '' },\n },\n setup(props, ctx) {\n dayjs.extend(isBetween)\n function prev() {\n if (weekId.value > 0) {\n weekId.value = weekId.value - 1\n }\n }\n function next() {\n if (weekId.value < props.weeks.length - 1) {\n weekId.value = weekId.value + 1\n }\n }\n function today() {\n props.weeks.forEach((w) => {\n if (dayjs().isBetween(w.start, w.end)) {\n weekId.value = w.id\n }\n })\n ctx.emit('today')\n }\n\n const weekId = computed({\n get: () => props.value,\n set: (value) => ctx.emit('input', value),\n })\n\n const showToday = computed(() => {\n //only show today button if it is with the range of weeks\n const w = props.weeks\n return dayjs().isBetween(w[0].start, w[w.length - 1].end)\n })\n\n return {\n prev,\n next,\n today,\n weekId,\n showToday,\n }\n },\n})\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!./CalendarNav.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!./CalendarNav.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CalendarNav.vue?vue&type=template&id=7cb1e6bc&scoped=true&\"\nimport script from \"./CalendarNav.vue?vue&type=script&lang=ts&\"\nexport * from \"./CalendarNav.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CalendarNav.vue?vue&type=style&index=0&id=7cb1e6bc&scoped=true&lang=scss&\"\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 \"7cb1e6bc\",\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('div',{staticClass:\"d-flex justify-content-between align-items-end pr-5\"},[_c('checkbox-group-input',{staticClass:\"mb-4 mr-5\",attrs:{\"label\":\"Days to Display\",\"items-list\":_vm.days,\"text-property-name\":\"abbr2\",\"value-property-name\":\"value\",\"horizontal\":\"\"},model:{value:(_vm.lDaysToShow),callback:function ($$v) {_vm.lDaysToShow=$$v},expression:\"lDaysToShow\"}}),(_vm.showTime)?_c('div',{staticClass:\"d-flex\"},[_c('select-input',{staticClass:\"mr-4\",attrs:{\"label\":\"start\",\"value-property-name\":\"value\",\"text-property-name\":\"label\",\"items-list\":_vm.startTimes},model:{value:(_vm.lStartTime),callback:function ($$v) {_vm.lStartTime=$$v},expression:\"lStartTime\"}}),_c('select-input',{attrs:{\"label\":\"end\",\"value-property-name\":\"value\",\"text-property-name\":\"label\",\"items-list\":_vm.endTimes},model:{value:(_vm.lEndTime),callback:function ($$v) {_vm.lEndTime=$$v},expression:\"lEndTime\"}})],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\nimport { defineComponent, PropType, computed } from '@vue/composition-api'\n\nimport CheckboxGroupInput from '@/elements/CheckboxGroupInput.vue'\nimport { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport SelectInput from '@/elements/SelectInput.vue'\n\nexport default defineComponent({\n name: 'CalendarOptions',\n components: { SelectInput, CheckboxGroupInput },\n props: {\n daysToShow: { type: Array as PropType, required: false, default: () => [0, 1, 2, 3, 4, 5, 6] },\n startTime: { type: String, required: false, default: '08:00' }, //must be HH:mm\n endTime: { type: String, required: false, default: '22:00' }, //must be HH:mm\n showTime: { type: Boolean, required: false, default: true },\n },\n setup(props, ctx) {\n const startTimes = Array.from(Array(16)).map((x, i) => {\n const time = i + 7\n return {\n value: `${time.toString().padStart(2, '0')}:00`,\n label: time % 12 == 0 ? (time < 12 ? 'midnight' : 'noon') : `${time % 12} ${time < 12 ? 'AM' : 'PM'}`,\n }\n })\n\n const endTimes = computed(() => {\n return startTimes.filter((y: any) => y.value > lStartTime.value ?? '00:00')\n })\n\n //local daysToShow\n const lDaysToShow = computed({\n get: () => props.daysToShow.map((d) => d.toString()).sort((a, b) => (a > b ? 1 : -1)),\n set: (value) =>\n ctx.emit(\n 'update:daysToShow',\n value.map((v) => Number(v)).sort((a, b) => (a > b ? 1 : -1))\n ),\n })\n\n //local start time\n const lStartTime = computed({\n get: () => props.startTime,\n set: (value) => ctx.emit('update:startTime', value),\n })\n\n //local end time\n const lEndTime = computed({\n get: () => props.endTime,\n set: (value) => ctx.emit('update:endTime', value),\n })\n\n return { days, startTimes, endTimes, lDaysToShow, lStartTime, lEndTime }\n },\n})\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!./CalendarOptions.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!./CalendarOptions.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CalendarOptions.vue?vue&type=template&id=d95c8d96&\"\nimport script from \"./CalendarOptions.vue?vue&type=script&lang=ts&\"\nexport * from \"./CalendarOptions.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('div',[_c('Container',{attrs:{\"group-name\":_vm.groupName},on:{\"drop\":_vm.onDrop}},_vm._l((_vm.events),function(e){return _c('Draggable',{key:e.id,staticClass:\"border p-2 my-2 bg-white shadow\"},[_c('div',[_vm._t(\"i\",null,{\"e\":e})],2)])}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport { Container, Draggable, DropResult } from 'vue-smooth-dnd'\nimport { CalendarData } from '@/elements/Calendar/types'\n\nexport default defineComponent({\n name: 'CalendarableEvents',\n components: { Container, Draggable },\n props: {\n groupName: { type: String, required: true },\n events: {\n type: Array as PropType,\n required: false,\n default: () => [],\n },\n },\n setup(props, ctx) {\n const getPayload = (index: number) => {\n return props.events[index]\n }\n function onDrop(movedEvent: DropResult) {\n ctx.emit('dropped', getPayload(movedEvent.removedIndex))\n }\n\n return { getPayload, onDrop }\n },\n})\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!./CalendarableEvents.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!./CalendarableEvents.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CalendarableEvents.vue?vue&type=template&id=48859073&\"\nimport script from \"./CalendarableEvents.vue?vue&type=script&lang=ts&\"\nexport * from \"./CalendarableEvents.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 dayjs, { Dayjs } from 'dayjs'\nimport { Week } from '@/elements/Calendar/types'\n\nexport function createWeeks(minEventDate: Date) {\n const list: Week[] = []\n\n // starting from the minEventDate, find the previous Sunday\n let sunday = previousSunday(dayjs(minEventDate))\n\n //create a list of weeks that spans 16 weeks from today or the first game date\n let id = 0\n do {\n const saturday = sunday.add(6, 'd')\n list.push({\n id: id++,\n text: `${sunday.format('MMM D')} - ${saturday.format('MMM D YYYY')}`,\n start: sunday,\n end: saturday,\n })\n sunday = saturday.add(1, 'd')\n } while (id < 16)\n return list\n}\n\nexport function previousSunday(dt: Dayjs) {\n let sunday = dt\n while (sunday.format('d') != '0') {\n sunday = sunday.subtract(1, 'd')\n }\n return sunday\n}\n\nexport function nextSaturday(dt: Dayjs) {\n let saturday = dt\n while (saturday.format('d') != '6') {\n saturday = saturday.add(1, 'd')\n }\n return saturday\n}\n\nexport function getDateById(id: number, type: 'start' | 'end', weeks: Week[]) {\n const dt = weeks.find((w) => w.id == id)\n return dt ? dayjs(dt[type]).format('YYYY-MM-DD') : dayjs().format('YYYY-MM-DD')\n}\n\nexport function roundTime(dt: Dayjs, roundTo = 15, down = true) {\n const time = dt.valueOf()\n const roundDownTime = roundTo * 60 * 1000\n\n const rounded = down ? time - (time % roundDownTime) : time + (roundDownTime - (time % roundDownTime))\n return dayjs(rounded)\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { DisplayType } from '@/models/Calendar/enums'\nimport { defineComponent, PropType, ref, watch, computed } from '@vue/composition-api'\nimport { Container } from 'vue-smooth-dnd'\nimport dayjs from 'dayjs'\nimport { CalendarTimestamp } from 'vuetify'\nimport { cloneDeep } from 'lodash'\n\nimport { OverlapMode } from '@/models/Calendar/enums'\nimport { CalendarWeek } from '@/models/Calendar/CalendarWeek'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\n\nimport CalendarNav from '@/elements/Calendar/CalendarNav.vue'\nimport CalendarOptions from '@/elements/Calendar/CalendarOptions.vue'\nimport CalendarableEvents from '@/elements/Calendar/CalendarableEvents.vue'\nimport CoachConflictList from '@/views/Programs/Divisions/TeamManagement/vues/CoachConflictList.vue'\nimport CoachConflictFilter from '@/views/Programs/Divisions/TeamManagement/vues/CoachConflictFilter.vue'\nimport { CoachConflictInfo } from '@/GeneratedTypes/ListInfo/CoachConflictInfo'\nimport volunteersClient from '@/clients/volunteersClient'\nimport store from '@/store'\n\nimport { createWeeks, getDateById, roundTime } from '@/elements/Calendar/helper'\nimport { CalendarTime, CalendarData, ClickEvent } from '@/elements/Calendar/types'\n\nexport default defineComponent({\n name: 'Calendar',\n components: {\n CalendarNav,\n CalendarOptions,\n Container,\n CalendarableEvents,\n SwitchSlot,\n CoachConflictList,\n CoachConflictFilter,\n },\n props: {\n startDate: { type: String, required: false, default: () => dayjs().format('YYYY-MM-DD') },\n now: { type: String, required: false, default: () => dayjs().format('YYYY-MM-DD HH:mm:ss') },\n weekdays: { type: Array as PropType, required: false, default: () => [0, 1, 2, 3, 4, 5, 6] }, // checkbox of weekdays\n overlapMode: { type: String, required: false, default: OverlapMode.COLUMN },\n overlapThreshold: { type: Number, required: false, default: 30 },\n firstDay: { type: String, required: false }, // first date for the calendar. CalendarNav dates are calculated starting from this date\n firstTime: { type: String, required: false, default: '08:00' }, // controls the time initially displayed in the start dropdown\n lastTime: { type: String, required: false, default: '21:00' }, // controls the time initially displayed in the end dropdown\n intervalMinutes: { type: Number, required: false, default: 30 },\n defaultEventDuration: { type: Number, required: false, default: 60 }, // durattion to use when adding new event to calendar\n groupName: { type: String, required: true }, // used to link the calendar and matchup dnd containers\n selectedWeek: { type: Number, require: false, default: 0 }, //the week to select for CalendarNav\n events: {\n type: Array as PropType,\n required: false,\n default: () => [],\n },\n matchups: {\n type: Array as PropType,\n required: false,\n default: () => [],\n },\n upwardLeagueID: { type: String, required: true },\n coachConflictType: { type: String, required: false, default: 'NOTSET' },\n },\n setup(props, ctx) {\n const weekId = ref(0)\n const lWeekdays = ref([1])\n const lFirstTime = ref('')\n const lLastTime = ref('')\n const lEvents = ref([])\n const lMatchups = ref([])\n const start = ref('2022-01-02') // begining of the date range displayed by the calendar\n const end = ref('2022-01-08') // ending of the date range displayed by the calendar\n const allowableDays = ref([0])\n const coachConflicts = ref([])\n\n const calendarListOptions = [\n { text: 'teams', value: 'all-teams' },\n { text: 'coach conflicts', value: 'show-coach-conflicts' },\n ]\n const calendarListSwitch = ref(calendarListOptions[0].value)\n\n watch(\n () => store.getters.scheduling.scheduleChanging,\n async () => {\n if (!store.getters.scheduling.scheduleChanging) {\n await refreshConflicts()\n }\n },\n { immediate: true }\n )\n\n async function refreshConflicts() {\n const newCoachConflicts = (await volunteersClient.retrieveCoachConflicts(props.upwardLeagueID!)) ?? []\n if (newCoachConflicts.length > 0) {\n coachConflicts.value = newCoachConflicts.filter(\n (c) => c.typeCoachConflictID == props.coachConflictType\n )\n } else {\n coachConflicts.value = []\n }\n }\n\n let initialDate = ref(null)\n const maxDays = computed(() => lWeekdays.value.length)\n const minEventDate = computed(() => {\n lEvents.value.sort((a, b) => (dayjs(a.start).isBefore(b.start) ? -1 : 1))\n return lEvents.value.length ? lEvents.value[0].start : null\n })\n const weeks = computed(() => {\n if (props.firstDay) {\n return createWeeks(new Date(props.firstDay))\n } else {\n return createWeeks(minEventDate.value ? new Date(minEventDate.value) : dayjs().toDate())\n }\n })\n\n /*\n Number of intervals between the firstTime and lastTime based on the intervalMinutes\n */\n const intervalCount = computed(() => {\n const s = lFirstTime.value.split(':').map((p) => Number(p))\n const e = lLastTime.value.split(':').map((p) => Number(p))\n const totalIntervalMinutes = dayjs().hour(e[0]).minute(e[1]).diff(dayjs().hour(s[0]).minute(s[1]), 'm')\n return Math.ceil(totalIntervalMinutes / props.intervalMinutes)\n })\n\n function intervalFormat(t: CalendarTimestamp) {\n return dayjs().hour(t.hour).minute(t.minute).second(0).format('h:mm a')\n }\n\n function intervalStyle(t: any) {\n if (t.minute != '00') {\n return { 'border-top': 'dashed 1px lightgrey' }\n } else {\n return { 'border-top': 'solid 1px darkgrey' }\n }\n }\n\n function getEventColor(event: any) {\n return event.color ? event.color : '#0475aa'\n }\n function getEventTextColor(event: any) {\n return event.textColor ? event.textColor : '#000'\n }\n function startTime() {\n if (dragEvent.value && eventDuration.value === null) {\n eventDuration.value = dayjs(dragEvent.value.end).diff(dragEvent.value.start, 'm')\n }\n }\n\n /***************************************\n ** DRAG-AND-DROP WITHIN CALENDAR *\n ***************************************/\n const dragEvent = ref(null) //store the event to be moved\n const eventDuration = ref(null) // event duration in minutes\n const time = ref(null) //the last interval the mouse was pointing to\n let startXY: { x: number | null; y: number | null } = { x: null, y: null } // x and y when the mouse first clicks an event\n let currentXY: { x: number | null; y: number | null } = { x: null, y: null } //current mouse x and y location\n let isActive = true // active/inactive for the currently selected event\n let isAllowed = true // is the day the event is being dragged to allowed; zero based\n\n function startDrag({\n event,\n timed,\n nativeEvent,\n }: {\n event: CalendarData\n timed: boolean\n nativeEvent: MouseEvent\n }) {\n startXY.x = nativeEvent.clientX\n startXY.y = nativeEvent.clientY\n isActive = event.class ? !event.class.includes('inactive') : true\n\n if (event && timed && isActive) {\n dragEvent.value = lEvents.value.find((e) => e.id == event.id) ?? null //intentionally by ref\n eventDuration.value = null\n }\n }\n\n function endDrag() {\n if (dragEvent.value && mouseHasMoved() && isActive && isAllowed) {\n ctx.emit('drop:internal', { ...dragEvent.value })\n }\n }\n\n function eventClick(e: ClickEvent) {\n if (!mouseHasMoved() && isActive && isAllowed) {\n ctx.emit('click:event', e.event)\n }\n\n clear()\n }\n\n /*\n When the mouse leaves the calendar area\n */\n function cancelDrag() {\n clear()\n }\n\n /*\n Stores the event as it is being dragged\n */\n function mouseMove(tms: CalendarTime) {\n allowed(dayjs(tms.date).day())\n if (mouseHasMoved() && isAllowed) {\n if (dragEvent.value && eventDuration.value !== null) {\n const newStart = roundTime(dayjs(tms.date).hour(tms.hour).minute(tms.minute), 30)\n const newEnd = newStart.add(eventDuration.value, 'm')\n dragEvent.value.start = newStart.format('YYYY-MM-DDTHH:mm')\n dragEvent.value.end = newEnd.format('YYYY-MM-DDTHH:mm')\n }\n }\n time.value = tms //used when dragging a matchup onto the calenar\n }\n\n function allowed(dayOfWeek: number) {\n isAllowed = allowableDays.value.some((d) => d == dayOfWeek)\n return isAllowed\n }\n\n /* \n Used in endDrag and eventClick so endDrag isn't triggered by a sloppy click from the user.\n If the mouse moves less that minPixels in either direction, emit the click event.\n If it moves more, emit endDrag.\n */\n function mouseHasMoved() {\n if (startXY.x && startXY.y && currentXY.x && currentXY.y) {\n const minPixels = 5\n if (Math.abs(startXY.x - currentXY.x) > minPixels || Math.abs(startXY.y - currentXY.y) > minPixels) {\n return true\n }\n }\n return false\n }\n\n function mouseMoveNative(e: MouseEvent) {\n currentXY.x = e.clientX\n currentXY.y = e.clientY\n }\n\n function clear() {\n eventDuration.value = null\n dragEvent.value = null\n startXY.x = null\n startXY.y = null\n isActive = true\n isAllowed = true\n }\n\n /******************************************\n ** DRAG-AND-DROP FROM LIST TO CALENDAR *\n *******************************************/\n function matchupDropped(movedEvent: CalendarData) {\n const e = createCalendarEvent(movedEvent)\n if (e) {\n //Event from external to the calendar dropped onto the calendar\n ctx.emit('drop:external', e)\n }\n }\n\n function createCalendarEvent(movedEvent: CalendarData): CalendarData | null {\n if (time.value) {\n const t = time.value\n const start = roundTime(dayjs(t.date).hour(t.hour).minute(t.minute), 30)\n const end = start.add(props.defaultEventDuration, 'm')\n movedEvent.start = start.format('YYYY-MM-DDTHH:mm:ss')\n movedEvent.end = end.format('YYYY-MM-DDTHH:mm:ss')\n time.value = null\n return { ...movedEvent }\n } else {\n return null\n }\n }\n function formatTime(dt: string) {\n return dayjs(dt).format('h:mma')\n }\n\n /************************\n ** Watchers *\n ************************/\n watch(\n () => props.selectedWeek,\n () => {\n if (weekId.value != props.selectedWeek) {\n weekId.value = props.selectedWeek\n }\n },\n { immediate: true }\n )\n watch(\n () => props.weekdays,\n () => {\n allowableDays.value = props.weekdays\n lWeekdays.value = props.weekdays\n },\n { immediate: true }\n )\n watch(\n () => props.firstTime,\n () => (lFirstTime.value = props.firstTime),\n { immediate: true }\n )\n watch(\n () => props.lastTime,\n () => (lLastTime.value = props.lastTime),\n { immediate: true }\n )\n watch(\n () => props.startDate,\n () => (initialDate.value = props.startDate),\n { immediate: true }\n )\n watch(\n () => props.events,\n () => (lEvents.value = cloneDeep(props.events)),\n { immediate: true }\n )\n watch(\n () => props.matchups,\n () => (lMatchups.value = cloneDeep(props.matchups)),\n { immediate: true }\n )\n watch(\n () => weekId.value,\n () => {\n start.value = getDateById(weekId.value, 'start', weeks.value)\n end.value = getDateById(weekId.value, 'end', weeks.value)\n ctx.emit('currentRange', {\n start: start.value,\n end: end.value,\n weekNumber: weekId.value,\n } as CalendarWeek)\n },\n { immediate: true }\n )\n return {\n initialDate,\n intervalFormat,\n intervalStyle,\n intervalCount,\n lFirstTime,\n lLastTime,\n lWeekdays,\n maxDays,\n weeks,\n weekId,\n start,\n end,\n lEvents,\n lMatchups,\n startDrag,\n startTime,\n mouseMove,\n endDrag,\n cancelDrag,\n matchupDropped,\n formatTime,\n DisplayType,\n getEventColor,\n getEventTextColor,\n eventClick,\n mouseMoveNative,\n allowed,\n coachConflicts,\n calendarListOptions,\n calendarListSwitch,\n }\n },\n})\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!./Calendar.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!./Calendar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Calendar.vue?vue&type=template&id=4fa4e644&scoped=true&\"\nimport script from \"./Calendar.vue?vue&type=script&lang=ts&\"\nexport * from \"./Calendar.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Calendar.vue?vue&type=style&index=0&id=4fa4e644&scoped=true&lang=scss&\"\nimport style1 from \"./Calendar.vue?vue&type=style&index=1&lang=scss&\"\nimport style2 from \"./Calendar.vue?vue&type=style&index=2&id=4fa4e644&scoped=true&lang=scss&\"\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 \"4fa4e644\",\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 { VCalendar } from 'vuetify/lib/components/VCalendar';\ninstallComponents(component, {VCalendar})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{staticClass:\"nav nav-tabs\"},[_vm._l((_vm.tabs),function(tab,i){return _c('li',{key:tab.id,staticClass:\"nav-item\",class:{ active: tab.id === _vm.activeTab }},[(tab.id)?_c('a',{staticClass:\"nav-link\",on:{\"click\":function($event){return _vm.tabClicked(tab.id)}}},[_vm._v(\" \"+_vm._s(tab.description)+\" \")]):_vm._e()])}),_c('li',{staticClass:\"nav-item flex-grow-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\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\n\nexport interface TabType {\n id: string\n description: string\n}\n\nexport default defineComponent({\n name: 'HorizontalTabs',\n props: {\n tabs: { type: Array as PropType, required: true, default: () => [] },\n value: { type: String, required: false, default: '' },\n },\n setup(props, ctx) {\n const internalValue = ref('')\n /**\n * Ensures there is always a tab selected by returning\n * internalValue or first tab.\n */\n const activeTab = computed(() => {\n if (props.tabs.length) {\n const tab = props.tabs.find((x) => x.id == internalValue.value)\n if (tab) {\n return tab.id\n }\n return props.tabs[0].id\n }\n return internalValue.value\n })\n\n watch(\n () => internalValue.value,\n () => {\n if (internalValue.value !== props.value) {\n ctx.emit('input', internalValue.value)\n }\n }\n )\n\n watch(\n () => props.tabs,\n () => {\n handleValueChange()\n }\n )\n\n watch(\n () => props.value,\n () => {\n handleValueChange()\n },\n { immediate: true }\n )\n\n function handleValueChange() {\n if (props.tabs.some((x) => x.id == props.value)) {\n if (internalValue.value !== props.value) {\n internalValue.value = props.value\n }\n } else {\n internalValue.value = props.tabs.length ? props.tabs[0].id : ''\n }\n }\n\n function tabClicked(id: string) {\n internalValue.value = id\n }\n\n return {\n internalValue,\n activeTab,\n tabClicked,\n }\n },\n})\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!./HorizontalTabs.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!./HorizontalTabs.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./HorizontalTabs.vue?vue&type=template&id=71148a79&\"\nimport script from \"./HorizontalTabs.vue?vue&type=script&lang=ts&\"\nexport * from \"./HorizontalTabs.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./HorizontalTabs.vue?vue&type=style&index=0&lang=scss&\"\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 (true)?_c('checkbox-group-input',{staticClass:\"row pt-3 pb-3\",attrs:{\"itemClass\":\"col text-no-wrap dense flex-grow-0\",\"value\":_vm.filtersToShow,\"label\":_vm.label,\"items-list\":_vm.internalFilters,\"text-property-name\":\"description\",\"value-property-name\":\"id\",\"collapsible\":\"\"},on:{\"input\":_vm.setFiltersToShow}}):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, ref } from '@vue/composition-api'\nimport CheckboxGroupInput from '@/elements/CheckboxGroupInput.vue'\nimport { cloneDeep } from 'lodash'\n\nexport interface FilterTabType {\n id: string\n description: string\n selected: boolean\n}\n\nexport default defineComponent({\n name: 'HorizontalTabFilter',\n components: { CheckboxGroupInput },\n props: {\n filters: { type: Array as PropType, required: true },\n label: { type: String, required: true, default: '' },\n },\n setup(props, ctx) {\n const internalFilters = cloneDeep(props.filters)\n const filtersToShow = ref(props.filters.map((x) => x.id))\n\n function setFiltersToShow(selectedFilters: string[]) {\n filtersToShow.value = selectedFilters\n ctx.emit('filter-update', selectedFilters)\n }\n\n return {\n internalFilters,\n filtersToShow,\n setFiltersToShow,\n }\n },\n})\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!./HorizontalTabFilter.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!./HorizontalTabFilter.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./HorizontalTabFilter.vue?vue&type=template&id=bb669696&scoped=true&\"\nimport script from \"./HorizontalTabFilter.vue?vue&type=script&lang=ts&\"\nexport * from \"./HorizontalTabFilter.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./HorizontalTabFilter.vue?vue&type=style&index=0&id=bb669696&lang=scss&scoped=true&\"\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 \"bb669696\",\n null\n \n)\n\nexport default component.exports","import { FacilityAvailability } from '@/GeneratedTypes/FacilityAvailability'\nimport { ScheduleBlocks } from '@/models/elements/Scheduler'\nimport { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport { timeStringToMilliseconds } from '@/lib/support/utilities/time/time'\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\n\n/***\n * Funny day names and imprecise times make scheduleBlocks just a bit\n * easier to work with. It also provides a neutral interface for\n * editing different types of schedule blocks.\n * @param availability\n * @param event\n * @constructor\n */\nexport function AvailabilityToScheduleBlocks(\n availability: FacilityAvailability[],\n event: string | FacilityEventEnum\n): ScheduleBlocks[] {\n return (\n (availability ?? [])\n .filter((x) => x.typeFacilityEventID == event)\n .map((x) => ({\n day: days.find((y) => y.name == x.typeDayID)?.value || 0,\n timeStart: timeStringToMilliseconds(x.startTime),\n timeEnd: timeStringToMilliseconds(x.endTime),\n })) ?? []\n )\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{staticClass:\"practice_modal\",attrs:{\"title\":(_vm.dayName + \" \" + _vm.title),\"is-small\":false},model:{value:(_vm.isModalOpen),callback:function ($$v) {_vm.isModalOpen=$$v},expression:\"isModalOpen\"}},[_c('div',{staticClass:\"row\"},[(_vm.isNewPractice)?_c('div',{staticClass:\"col-12\"},[_vm._v(\" Schedule \"+_vm._s(_vm.practiceNoun)+\" for this team for a single date or for the entire season by choosing the date, time and location. \")]):_vm._e(),_c('div',{staticClass:\"col-md-6 pb-0\"},[_c('select-input',{attrs:{\"label\":\"Team\",\"items-list\":_vm.teamList,\"value-property-name\":\"teamID\",\"text-property-name\":\"teamName\"},model:{value:(_vm.teamID),callback:function ($$v) {_vm.teamID=$$v},expression:\"teamID\"}})],1),_c('div',{staticClass:\"col-md-6 pb-0\"},[_c('select-input',{attrs:{\"label\":\"Location\",\"items-list\":_vm.facilityList,\"value-property-name\":\"facilityID\",\"text-property-name\":\"facilityName\"},model:{value:(_vm.facilityID),callback:function ($$v) {_vm.facilityID=$$v},expression:\"facilityID\"}})],1),_c('div',{staticClass:\"col-sm-6 col-md-3 pb-0\"},[_c('date-input',{attrs:{\"label\":\"Date\"},model:{value:(_vm.day),callback:function ($$v) {_vm.day=$$v},expression:\"day\"}})],1),_c('div',{staticClass:\"col-sm-6 col-md-3 pb-0\"},[_c('div',{staticClass:\"form-group\"},[_c('label',{staticClass:\"text-uppercase\"},[_vm._v(\"Coach Nights\")]),_c('div',[_vm._v(\" \"+_vm._s(_vm.getCoachNights(_vm.teamList.find(function (x) { return x.teamID == _vm.teamID; })))+\" \")])])]),(!_vm.availability.length)?_c('div',{staticClass:\"col-sm-12 col-md-6 pb-0 align-middle\"},[_vm._v(\" This facility is not available for \"+_vm._s(_vm.futureNoun)+\" on this day of the week. \")]):_vm._e(),(_vm.availability.length)?_c('div',{staticClass:\"col-sm-6 col-md-3 pb-0\"},[_c('TimePicker',{attrs:{\"label\":\"Start Time\",\"min\":\"00:00:\",\"max\":\"23:30\"},model:{value:(_vm.startTime),callback:function ($$v) {_vm.startTime=$$v},expression:\"startTime\"}})],1):_vm._e(),(_vm.availability.length)?_c('div',{staticClass:\"col-sm-6 col-md-3 pb-0\"},[_c('TimePicker',{attrs:{\"label\":\"End Time\",\"min\":\"00:00:\",\"max\":\"23:30\"},model:{value:(_vm.endTime),callback:function ($$v) {_vm.endTime=$$v},expression:\"endTime\"}})],1):_vm._e()]),(_vm.isNewPractice)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 pb-0\"},[_c('hr',{staticClass:\"mx-2\"})]),_c('div',{staticClass:\"col-md-6\"},[_c('div',{staticClass:\"row-md-auto\"},[_c('label',{staticClass:\"text-uppercase\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.repeat),expression:\"repeat\"}],attrs:{\"type\":\"checkbox\",\"value\":\"1\"},domProps:{\"checked\":Array.isArray(_vm.repeat)?_vm._i(_vm.repeat,\"1\")>-1:(_vm.repeat)},on:{\"change\":[function($event){var $$a=_vm.repeat,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"1\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.repeat=$$a.concat([$$v]))}else{$$i>-1&&(_vm.repeat=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.repeat=$$c}},_vm.enableLastDay]}}),_vm._v(\" Repeat for the rest of the season \")])]),(_vm.showPracticeExclusionsForNew)?_c('div',{staticClass:\"row-md-auto\"},[_c('v-popover',{attrs:{\"trigger\":\"click\"}},[_c('span',{staticClass:\"small pl-4 pr-1\"},[_vm._v(\"This division has setup practice exclusion dates that will be skipped.\")]),_c('i',{staticClass:\"fas fa-info-circle clickable\",attrs:{\"title\":\"Click here to see the exclusion dates\"}}),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"text-left clickable\"},_vm._l((_vm.division.exclusionDates),function(ex){return _c('div',{key:ex.excludeDate,staticClass:\"text-center small text-muted\"},[_vm._v(\" \"+_vm._s(_vm.shortDateFormat(ex.excludeDate))+\" \")])}),0)])],2)],1):_vm._e()]),(_vm.repeat)?_c('div',{staticClass:\"col-md-6\"},[_c('date-input',{attrs:{\"label\":\"End On or Before\",\"displayCalendarTop\":true},model:{value:(_vm.lastDay),callback:function ($$v) {_vm.lastDay=$$v},expression:\"lastDay\"}})],1):_vm._e()]):_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 pb-0\"},[_c('hr',{staticClass:\"mx-2\"})]),_c('div',{staticClass:\"col-md-6\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.changeType),expression:\"changeType\"}],attrs:{\"type\":\"radio\",\"id\":\"wholeSeason\",\"value\":\"wholeSeason\"},domProps:{\"checked\":_vm._q(_vm.changeType,\"wholeSeason\")},on:{\"change\":function($event){_vm.changeType=\"wholeSeason\"}}}),_c('label',{staticClass:\"ml-2\",attrs:{\"for\":\"wholeSeason\"}},[_vm._v(\" Apply to all future \"+_vm._s(_vm.futureNoun)+\".\")])]),_c('div',{staticClass:\"col-md-6\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.changeType),expression:\"changeType\"}],attrs:{\"type\":\"radio\",\"id\":\"thisDate\",\"value\":\"thisDate\"},domProps:{\"checked\":_vm._q(_vm.changeType,\"thisDate\")},on:{\"change\":function($event){_vm.changeType=\"thisDate\"}}}),_c('label',{staticClass:\"ml-2\",attrs:{\"for\":\"thisDate\"}},[_vm._v(\"Apply to this date only.\")])])]),(_vm.showPracticeExclusions)?_c('div',{staticClass:\"row\"},[_c('v-popover',{attrs:{\"trigger\":\"click\"}},[_c('span',{staticClass:\"small pl-4 pr-1\"},[_vm._v(\"This division has setup practice exclusion dates that will be skipped.\")]),_c('i',{staticClass:\"fas fa-info-circle clickable\",attrs:{\"title\":\"Click here to see the exclusion dates\"}}),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"text-left clickable\"},_vm._l((_vm.division.exclusionDates),function(ex){return _c('div',{key:ex.excludeDate,staticClass:\"text-center small text-muted\"},[_vm._v(\" \"+_vm._s(_vm.shortDateFormat(ex.excludeDate))+\" \")])}),0)])],2)],1):_vm._e()]),(_vm.lastDay)?_c('div',{staticClass:\"col-md-6\"},[_c('date-input',{attrs:{\"label\":\"End On or Before\",\"displayCalendarTop\":true},model:{value:(_vm.lastDay),callback:function ($$v) {_vm.lastDay=$$v},expression:\"lastDay\"}})],1):_vm._e()]),_c('template',{slot:\"footer\"},[_c('div',{staticClass:\"row\"},[(_vm.id !== 0 && !_vm.loading)?_c('div',{staticClass:\"pb-2 col-auto\"},[_c('button',{staticClass:\"float-right ml-2 btn btn-danger\",class:{ disabled: !_vm.shouldSubmitShow },attrs:{\"disabled\":!_vm.shouldSubmitShow},on:{\"click\":_vm.deleted}},[_c('i',{staticClass:\"fa fa-times\"}),_vm._v(\" Delete Schedule \")])]):_vm._e(),_c('div',{staticClass:\"pb-2 col text-right\"},[(_vm.loading)?_c('loading'):[_c('button',{staticClass:\"ml-2 btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"ml-2 btn btn-success\",class:{ disabled: !_vm.shouldSubmitShow },attrs:{\"disabled\":!_vm.shouldSubmitShow},on:{\"click\":_vm.confirmed}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Schedule \")])]],2)])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * information gleaned from the practice modal\n */\nexport interface PracticeModalInfoType {\n //** practice id, 0 is not based on a practice\n id: number\n teamID: number\n startDate: Date\n endDate: Date\n facilityID: number\n //*** null is no last date, single practice.\n lastDate: Date | null\n updateSeason: boolean\n}\n\nexport function getEmptyPracticeModalInfoType(): PracticeModalInfoType {\n return {\n id: 0,\n teamID: 0,\n startDate: new Date(),\n endDate: new Date(),\n facilityID: 0,\n lastDate: new Date(),\n updateSeason: false,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport {\n defineComponent,\n ref,\n computed,\n watch,\n onMounted,\n onUnmounted,\n PropType,\n nextTick,\n} from '@vue/composition-api'\nimport { getProps, useModalValue } from '@/composables/ModalValue'\nimport Modal from '@/components/Modal.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\n\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport DateInput from '@/elements/DateInput.vue'\nimport { League } from '@/GeneratedTypes/League'\nimport dayjs from 'dayjs'\nimport { getEmptyLeague } from '@/lib/support/models/League/data'\nimport { timeStringSplit } from '@/lib/support/utilities/time/time'\nimport { AvailabilityToScheduleBlocks } from '@/lib/support/models/ScheduleBlocks/AvailabilityToScheduleBlock'\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\nimport {\n getEmptyPracticeModalInfoType,\n PracticeModalInfoType,\n} from '@/models/Scheduling/PracticeModalInfoType'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport TimePicker from '@/elements/TimePicker2.vue'\nimport { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport { getCoachNights } from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport Loading from '@/elements/Loading.vue'\nimport { cloneDeep } from 'lodash'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PracticeModal',\n components: { Loading, TimePicker, DateInput, SelectInput, Modal },\n props: {\n teamList: { type: Array as PropType, default: () => [] },\n division: { type: Object as PropType, default: () => getEmptyLeagueDivisionInfo() },\n practice: {\n type: Object as PropType,\n default: () => getEmptyPracticeModalInfoType(),\n },\n duration: { type: Number, default: 0 },\n facilityList: { type: Array as PropType, default: () => [] },\n eventType: { type: String as PropType, default: () => FacilityEventEnum.PRACTICES },\n loading: { type: Boolean, default: () => false },\n league: { type: Object as PropType, default: () => getEmptyLeague() },\n programID: { type: String, default: () => '' },\n title: { type: String, default: () => 'Practice' },\n ...getProps(),\n },\n setup(props, ctx) {\n const { isModalOpen, closeModal } = useModalValue(props, ctx)\n const storeLeague = computed(() => store.getters.leagues.currentItem)\n const day = ref(new Date())\n const startTime = ref('')\n const endTime = ref('')\n const facilityID = ref(0)\n const lastDay = ref(null)\n const teamID = ref(0)\n const id = ref(0)\n const unwatch = ref(() => {\n return\n })\n const repeat = ref(true)\n\n const changeType = ref('wholeSeason')\n\n const currentFacility = computed((): LeagueFacility | undefined =>\n props.facilityList?.find((x) => x.facilityID == facilityID.value)\n )\n\n /**\n * Return what we are scheduling\n */\n const practiceNoun = computed(() => {\n if (props.eventType == FacilityEventEnum.PRACTICES) {\n return 'practices'\n } else {\n return 'appointment'\n }\n })\n\n const futureNoun = computed(() => {\n if (props.eventType == FacilityEventEnum.PRACTICES) {\n return 'practices'\n } else {\n return 'games'\n }\n })\n\n const isNewPractice = computed(() => id.value === 0)\n\n const showPracticeExclusionsForNew = computed(() => {\n return (\n props.eventType == FacilityEventEnum.PRACTICES &&\n repeat.value &&\n props.division.exclusionDates &&\n props.division.exclusionDates.length > 0\n )\n })\n\n const showPracticeExclusions = computed(() => {\n return (\n props.eventType == FacilityEventEnum.PRACTICES &&\n changeType.value == 'wholeSeason' &&\n props.division.exclusionDates &&\n props.division.exclusionDates.length > 0\n )\n })\n\n const dayName = computed(() => {\n if (!day.value) {\n return ''\n }\n\n const dayObj = days.find((x) => x.value === day.value.getDay())\n return dayObj?.name || ''\n })\n\n const availability = computed(() => {\n const facility = currentFacility.value\n if (facility) {\n const myDay = day.value.getDay()\n //** contains the schedule blocks that are for this facility\n return AvailabilityToScheduleBlocks(facility?.availability ?? [], props.eventType)?.filter(\n (x) => x.day == myDay\n )\n }\n return []\n })\n\n function enableLastDay() {\n const end = timeStringSplit(endTime.value)\n if (!repeat.value) {\n lastDay.value = dayjs(day.value).hour(end[0]).minute(end[1]).toDate()\n } else {\n lastDay.value = storeLeague.value.seasonEndDate || dayjs(day.value).add(12, 'week').toDate()\n }\n }\n\n const practiceValue = computed(\n (): PracticeModalInfoType => {\n const start = timeStringSplit(startTime.value)\n const end = timeStringSplit(endTime.value)\n return {\n id: id.value,\n startDate: dayjs(day.value).hour(start[0]).minute(start[1]).toDate(),\n endDate: dayjs(day.value).hour(end[0]).minute(end[1]).toDate(),\n teamID: teamID.value,\n lastDate: lastDay.value,\n facilityID: facilityID.value,\n updateSeason: changeType.value === 'wholeSeason',\n }\n }\n )\n\n function startTimeChanged() {\n endTime.value = interval(startTime.value, props.duration)\n }\n\n onMounted(() => {\n nextTick(() => {\n unwatch.value = watch(() => startTime.value, startTimeChanged)\n enableLastDay()\n })\n })\n\n onUnmounted(() => {\n unwatch.value()\n })\n\n watch(\n () => props.practice,\n () => {\n id.value = props.practice.id\n day.value = props.practice.endDate\n startTime.value = props.practice.startDate\n ? dayjs(props.practice.startDate).format('HH:mm')\n : '8:00AM'\n endTime.value = props.practice.endDate ? dayjs(props.practice.endDate).format('HH:mm') : ''\n teamID.value = props.practice.teamID\n facilityID.value = props.practice.facilityID\n repeat.value = true\n if (isNewPractice.value) {\n enableLastDay()\n } else {\n lastDay.value = props.practice.lastDate\n }\n },\n { immediate: true, deep: true }\n )\n\n function interval(time: string, duration: number) {\n const start = timeStringSplit(time)\n return dayjs().hour(start[0]).minute(start[1]).add(duration, 'minutes').format('HH:mm')\n }\n\n const shouldSubmitShow = computed(() => {\n if (\n practiceValue.value.facilityID &&\n practiceValue.value.teamID &&\n !isNaN(practiceValue.value.endDate.valueOf()) &&\n !isNaN(practiceValue.value.startDate.valueOf())\n ) {\n return true\n }\n\n return false\n })\n\n function shortDateFormat(val: Date) {\n return dayjs(val).format('MMM D')\n }\n\n /**\n * Caller will need to close the box.\n */\n function confirmed() {\n ctx.emit('confirmed', cloneDeep(practiceValue.value))\n }\n\n /**\n * Caller will need to close the box.\n */\n function deleted() {\n ctx.emit('deleted', cloneDeep(practiceValue.value))\n }\n\n function cancel() {\n closeModal()\n }\n\n return {\n isModalOpen,\n dayjs,\n getCoachNights,\n dayName,\n isNewPractice,\n practiceNoun,\n teamID,\n facilityID,\n day,\n id,\n availability,\n futureNoun,\n startTime,\n endTime,\n repeat,\n enableLastDay,\n showPracticeExclusionsForNew,\n shortDateFormat,\n lastDay,\n changeType,\n showPracticeExclusions,\n shouldSubmitShow,\n deleted,\n cancel,\n confirmed,\n }\n },\n})\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!./PracticeModal.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!./PracticeModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PracticeModal.vue?vue&type=template&id=10472894&\"\nimport script from \"./PracticeModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./PracticeModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PracticeModal.vue?vue&type=style&index=0&lang=scss&scopped=true&\"\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","export function undefinedIsZero(u: number | undefined) {\n if (u === undefined) {\n return 0\n }\n return u\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.item.class,staticStyle:{\"min-width\":\"220px\"}},[_c('div',[_c('span',{staticClass:\"grabbable\"},[_vm._v(\"⁞⁞\")]),_c('span',{staticClass:\"font-weight-bold ml-2\"},[_vm._v(_vm._s(_vm.item && _vm.item.name))])]),(_vm.showCoaches)?_c('div',[_c('span',{staticClass:\"small text-muted\"},[_vm._v(\"Head Coach: \")]),_c('span',{staticClass:\"small\"},[_vm._v(_vm._s(_vm.item.headCoachName))])]):_vm._e(),(_vm.showCoaches)?_c('div',[_c('span',{staticClass:\"small text-muted\"},[_vm._v(\"Coach Nights: \")]),_c('span',{staticClass:\"small\"},[_vm._v(_vm._s(_vm.item.nights))])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport { CalendarData } from '@/elements/Calendar/types'\n\nexport default defineComponent({\n name: 'ScheduleDragItem',\n\n props: {\n item: { type: Object as PropType, reuired: true },\n showCoaches: { type: Boolean, reuired: false, default: true },\n },\n})\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!./ScheduleDragItem.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!./ScheduleDragItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ScheduleDragItem.vue?vue&type=template&id=63a9d2d1&\"\nimport script from \"./ScheduleDragItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./ScheduleDragItem.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 * Event colors are for the primary event being displayed. For example, on the squad\n * scheduler, the squad events would be the primary event so squads for the current division would,\n * be event[Bg/Text]Color, and the squads for other divisions would be eventInactive[Bg/Text]Color.\n *\n * inactive[Bg/Text]Color is used for the secondary events. For example, on squad scheduler\n * games are also displayed, so the games would use inactive[Bg/Text]Color.\n *********************************/\n\nexport const eventBgColor = '#76FF03'\nexport const eventTextColor = '#1B5E20'\nexport const inactiveBgColor = 'rgba(38,50,56,0.4)'\nexport const inactiveTextColor = '#ECEFF1'\nexport const eventInactiveBgColor = 'rgba(100,221,23,0.5)'\nexport const eventInactiveTextColor = '#558B2F'\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { getEmptyLeagueListItem, LeagueListItemSeed } from '@/lib/support/models/LeagueListItem/data'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueProgams2LeagueListItem } from '@/lib/support/models/LeagueListItem/LeaguePrograms2LeagueListItem'\nimport { League } from '@/GeneratedTypes/League'\n\nimport { namespace } from 'vuex-class'\nimport { getterNames as leagueGetters, namespace as leagueStoreName } from '@/store/leagues'\nimport {\n actionNames as facilitiesActions,\n getterNames as facilitiesGetters,\n namespace as facilitiesStoreName,\n} from '@/store/facilities'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport {\n actionNames as divisionActions,\n getterNames as divisionGetters,\n mutationNames as divisionMutations,\n namespace as divisionNamespace,\n} from '@/store/divisions'\n\nimport Calendar from '@/elements/Calendar.vue'\nimport HorizontalTabs, { TabType } from '@/components/HorizontalTabs.vue'\nimport HorizontalTabFilter, { FilterTabType } from '@/components/HorizontalTabFilter.vue'\n\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport DivisionSelect from '@/components/DivisionSelect.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport dayjs from 'dayjs'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport {\n isNullDate,\n SERVER_DATE_FORMAT,\n toDate,\n} from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport { UpdateEnlistedEventType } from '@/models/Scheduler'\n\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\n\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\nimport { AvailabilityToScheduleBlocks } from '@/lib/support/models/ScheduleBlocks/AvailabilityToScheduleBlock'\nimport { FacilityEventInfo } from '@/GeneratedTypes/ListInfo/FacilityEventInfo'\nimport PracticeModal from '@/views/Programs/Scheduling/Practices/PracticeModal.vue'\nimport { getCoachNights, getEmptyDivisionTeamInfo } from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport {\n getEmptyPracticeModalInfoType,\n PracticeModalInfoType,\n} from '@/models/Scheduling/PracticeModalInfoType'\nimport { DivisionTeamPracticeAppointmentInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamPracticeAppointmentInfo'\nimport { undefinedIsZero } from '@/lib/support/utilities/numbers/undefinedIsZero'\nimport { DivisionTeamPracticeAppointmentInfoModified } from '@/models/Practices/DivisionTeamPracticeAppointmentInfoModified'\nimport store from '@/store'\nimport { cloneDeep } from 'lodash'\nimport { DeleteIcon, AddIcon } from '@/elements/Icons'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nimport ScheduleDragItem from '@/views/Programs/Scheduling/Squads/ScheduleDragItem.vue'\nimport { CalendarData } from '@/elements/Calendar/types'\nimport * as colors from '@/views/Programs/Scheduling/ext/colors'\nimport { CoachConflictTypeEnum } from '@/models/TeamManagement/CoachConflictTypeEnum'\n\nconst league = namespace(leagueStoreName)\nconst facilities = namespace(facilitiesStoreName)\n\nconst divisions = namespace(divisionNamespace)\n\nconst WEEK_IN_SECONDS = 7 * 24 * 3600 * 1000\nconst START_DAY = 1 //monday\n\n@Component({\n components: {\n ConfirmationModal,\n Alert,\n SelectInput,\n DivisionSelect,\n HorizontalTabs,\n HorizontalTabFilter,\n Calendar,\n TypeProgramTab,\n PracticeModal,\n DeleteIcon,\n AddIcon,\n CheckboxInput,\n Loading,\n ScheduleDragItem,\n },\n methods: {\n getCoachNights,\n },\n})\nexport default class PracticeScheduler extends Vue {\n /** getters */\n @league.Getter(leagueGetters.currentItem) league!: League\n @facilities.Getter(facilitiesGetters.items) facilities!: LeagueFacility[]\n @divisions.Mutation(divisionMutations.setDivision) setDivision!: ({\n division,\n }: {\n division: LeagueDivisionInfo\n }) => void\n @divisions.Getter(divisionGetters.allItems) divisionList!: (s: UpwardLeagueIDType) => LeagueDivisionInfo[]\n @divisions.Getter(divisionGetters.currentDivision) currentDivision!: LeagueDivisionInfo\n @divisions.Action(divisionActions.fetchAll) fetchAllDivisions!: ({\n upwardLeagueId,\n force,\n }: {\n upwardLeagueId: UpwardLeagueIDType\n force: boolean\n }) => Promise\n @facilities.Action(facilitiesActions.load)\n private readonly retrieveFacilities!: ({ id }: { id: UpwardLeagueIDType }) => LeagueFacility[] | null\n\n private readonly retrieveEvents = store.dispatch.scheduling.loadEvents\n\n private readonly loadTeams = store.dispatch.scheduling.loadTeams\n\n private showUnscheduledOnly = true\n\n addPractices = store.dispatch.scheduling.addPractices\n clearPractices = store.dispatch.scheduling.clearPractices\n\n deletePractices = store.dispatch.scheduling.deletePractice\n\n get coachConflictTypeEnum(): typeof CoachConflictTypeEnum {\n return CoachConflictTypeEnum\n }\n\n get statusText() {\n return store.getters.scheduling.statusText\n }\n get events() {\n return store.getters.scheduling.events\n }\n get teams() {\n return this.$store.direct.getters.scheduling.teams\n }\n\n get hasDivisions(): boolean {\n if (this.currentDivision) return true\n return false\n }\n\n get divisionLink() {\n return `/programs/league/${this.$route.params.id}/divisions_and_teams/divisions`\n }\n\n get teamLink() {\n return `/programs/league/${this.$route.params.id}/divisions_and_teams`\n }\n\n get practiceDuration(): number {\n if (this.currentDivision) return this.currentDivision.practiceLength\n return 0\n }\n\n /***\n * Actual program ID passed from index (e.g. FOOTBALL )\n */\n @Prop({ type: String, required: true })\n programID!: string\n\n @Prop({ type: Number, required: false, default: () => -1 })\n divisionID!: number\n\n alertType = AlertTypeEnum.NOTICE\n\n private loading = false\n private divisionLoading = true\n private loadingTeams = true\n\n private currentSelectedFacility = ''\n\n //** this is the epoch of the start of the week **/\n private week = 0\n private internalDivisionID = 0\n\n @Watch('divisionID', { immediate: true })\n private updateDivisionID() {\n this.internalDivisionID = this.divisionID\n }\n\n private get division(): LeagueDivisionInfo {\n return (\n this.practiceDivisionList.find((x) => x.divisionID == this.internalDivisionID) ??\n getEmptyLeagueDivisionInfo()\n )\n }\n\n /**\n * Filtered by current division\n */\n get teamsList() {\n return this.teams.filter((t) => t.divisionID == this.internalDivisionID)\n }\n\n get scheduleTeamsList() {\n let teams = cloneDeep(this.teamsList)\n\n if (this.showUnscheduledOnly) {\n teams = this.teamsList.filter((t) => !t.practices || t.practices?.length <= 0)\n }\n\n return teams.map((t) => {\n return {\n name: t.teamName,\n start: null,\n end: null,\n class: '',\n id: t.teamID,\n headCoachName: t.headCoachName,\n nights: getCoachNights(t),\n color: colors.eventBgColor,\n textColor: colors.eventTextColor,\n division: t.divisionName,\n }\n })\n }\n\n get practiceDivisionList() {\n return this.divisionList(this.leagueID)\n }\n\n @Watch('divisionSelect', { immediate: true })\n divisionSelectUpdated() {\n if (this.divisionSelect.length) {\n this.internalDivisionID = this.divisionSelect[0].divisionID\n }\n }\n\n @Watch('divisionID')\n divisionIDUpdated() {\n this.refreshTeams()\n }\n\n private currentPractice: PracticeModalInfoType = getEmptyPracticeModalInfoType()\n\n /**\n * Make a practice using the team selected\n */\n makeNewPractice(practiceID?: number, teamID?: number): PracticeModalInfoType {\n let dateList: DivisionTeamPracticeAppointmentInfo[] = []\n const team = this.teams.find((x) => x.teamID == teamID ?? 0)\n const practices = cloneDeep(team?.practices)\n if (practices?.length) {\n dateList =\n practices?.sort((a, b) =>\n undefinedIsZero(a?.practiceStart?.valueOf()) > undefinedIsZero(b?.practiceStart?.valueOf()) ? 1 : -1\n ) ?? []\n }\n\n const lastDateOnSchedule = dateList.length\n ? dateList[dateList.length - 1].practiceStart ?? new Date()\n : new Date()\n const twelveWeeksLater = dayjs(this.league.firstPracticeDate ?? new Date())\n .add(12, 'week')\n .toDate()\n\n let lastDate =\n lastDateOnSchedule.valueOf() > twelveWeeksLater.valueOf() ? lastDateOnSchedule : twelveWeeksLater\n\n if (this.league.seasonEndDate) {\n lastDate = this.league.seasonEndDate\n }\n\n const defaultStartDt = this.league.firstPracticeDate ?? new Date()\n\n return {\n id: practiceID ?? 0,\n teamID: team?.teamID || 0,\n lastDate,\n startDate: dateList.length && dateList[0].practiceStart ? dateList[0].practiceStart : defaultStartDt,\n endDate: dateList.length && dateList[0].practiceEnd ? dateList[0].practiceEnd : new Date(),\n facilityID: this.currentFacilityID,\n updateSeason: false,\n }\n }\n\n eventClick(e: CalendarData) {\n this.eventSelected({\n id: e.id,\n event: { end: new Date(), start: new Date(), title: '' },\n })\n }\n\n /***\n * Event is selected from the calendar\n ***/\n private eventSelected(e: UpdateEnlistedEventType) {\n const event = this.events.find((x) => x.eventID == parseInt(this.eventid2id(e.id) ?? '0'))\n if (event) {\n const practice = this.teamPractices.find((x) => event.eventID == x.id)\n if (practice) {\n this.currentPractice = {\n ...this.makeNewPractice(parseInt(this.eventid2id(e.id) ?? '0'), practice.teamID),\n id: practice.id,\n teamID: practice.teamID,\n endDate: toDate(practice.practiceEnd) ?? new Date(), //practice end -- time as just a time in localtime\n startDate: toDate(practice.practiceStart) ?? new Date(), //practice start --local time\n facilityID: practice.facilityID,\n }\n this.practiceModalShowing = true\n }\n }\n }\n\n teamToClear = 0\n\n get teamsListAndAllTeams() {\n return [{ ...getEmptyDivisionTeamInfo(), teamID: 0, teamName: 'All Teams' }, ...this.teamsList]\n }\n\n confirmClearPracticesShowing = false\n clickClearPractices() {\n this.confirmClearPracticesShowing = true\n }\n async confirmClearPractices(b: boolean) {\n if (b) {\n this.confirmClearPracticesShowing = false\n this.showPracticesCleared = true\n await this.clearPractices({\n id: this.leagueID,\n divisionID: this.internalDivisionID,\n programID: this.programID,\n teamIDs: this.teamToClear ? [this.teamToClear] : this.divisionTeams.map((x) => x.teamID),\n })\n }\n this.confirmClearPracticesShowing = false\n }\n showPracticesCleared = false\n\n private practiceModalShowing = false\n\n /**\n * Button on the top right \"+ Add Practice\" clicked.\n */\n private clickAddPractice(start: Date | null = null) {\n this.currentPractice = this.makeNewPractice()\n\n if (start) {\n this.currentPractice.startDate = start\n } else {\n this.currentPractice.startDate = dayjs(this.currentPractice.startDate)\n .hour(8)\n .minute(0)\n .second(0)\n .toDate()\n }\n\n // add practice we will use default practice length\n this.currentPractice.endDate = dayjs(this.currentPractice.startDate)\n .add(this.division.practiceLength, 'm')\n .toDate()\n\n this.practiceModalShowing = true\n }\n\n // return the days of the week to display on the calendar as an array of\n // numbers (e.g. sunday = 0)\n get weekdays(): number[] {\n const facility = this.facilities.find((x) => x.facilityID == this.currentFacilityID)\n\n if (facility) {\n return AvailabilityToScheduleBlocks(facility.availability ?? [], this.event).map((f) => f.day)\n }\n return [0, 1, 2, 3, 4, 5, 6]\n }\n\n /** ID of currently selected facility **/\n get currentFacilityID() {\n return parseInt(this.currentSelectedFacility)\n }\n get currentFacility() {\n return this.currentSelectedFacility\n }\n set currentFacility(facility: string) {\n this.currentSelectedFacility = facility\n }\n\n get firstGameDate(): string {\n const practicedate = this.league.firstPracticeDate ?? new Date()\n return dayjs(practicedate).format('YYYY-MM-DD')\n }\n\n /***\n * Used to constrain the calendar\n *\n */\n get startEpoch(): number {\n const gamedate = this.league.firstPracticeDate ?? this.league.firstGameDate ?? new Date()\n return dayjs(gamedate).day(START_DAY).hour(0).minute(0).millisecond(0).valueOf() //get epoch of sunday before game day\n }\n\n /***\n * This logic will change per Thomas\n */\n get endEpoch(): number {\n // 16 WEEKS LATER\n return this.startEpoch + WEEK_IN_SECONDS * 16\n }\n\n @Watch('division')\n divisionUpdated() {\n this.refreshTeams()\n }\n\n @Watch('practiceModalShowing')\n private async onPracticeModalShowingChange() {\n if (!this.practiceModalShowing) {\n // Modal just closed\n await this.refreshEvents()\n }\n }\n\n /** -- these computed properties will set what games are visible in the UI **/\n\n /**\n * does the given game meet facility criteria\n */\n private meetsFacilityCriteria(game: FacilityEventInfo | DivisionTeamPracticeAppointmentInfo) {\n if (!this.currentFacilityID) {\n return true\n }\n return game?.facilityID == this.currentFacilityID\n }\n\n /**\n * does the given game meet division criteria?\n * */\n private meetsDivisionCriteria(game: FacilityEventInfo) {\n return game.divisionID == this.internalDivisionID\n }\n\n /**\n * Returns all games that are scheduled for the active facility, grey if not meeting\n * round and division criteria.\n */\n private get schedule(): CalendarData[] {\n return [\n ...this.events\n .filter((x) => !isNullDate(toDate(x.eventStart)) && this.meetsFacilityCriteria(x))\n .map((x) => ({\n start: dayjs(x.eventStart ?? '').format('YYYY-MM-DDTHH:mm'),\n end: dayjs(x.eventEnd ?? '').format('YYYY-MM-DDTHH:mm'),\n name: `${x.eventName}`,\n class: this.meetsFacilityCriteria(x) && this.meetsDivisionCriteria(x) ? 'active' : 'inactive',\n id: this.id2eventid(x.eventID.toString()),\n color: this.color(x, 'COLOR'),\n textColor: this.color(x, 'TEXT'),\n division: x.divisionName ?? '',\n })),\n ]\n }\n\n private color(e: FacilityEventInfo, type: 'COLOR' | 'TEXT') {\n if (\n e.typeFacilityEventID == FacilityEventEnum.SQUADS ||\n e.typeFacilityEventID == FacilityEventEnum.GAMES\n ) {\n return type == 'COLOR' ? colors.inactiveBgColor : colors.inactiveTextColor\n } else if (e.typeFacilityEventID == FacilityEventEnum.PRACTICES) {\n if (this.meetsDivisionCriteria(e)) {\n return type == 'COLOR' ? colors.eventBgColor : colors.eventTextColor\n } else {\n return type == 'COLOR' ? colors.eventInactiveBgColor : colors.eventInactiveTextColor\n }\n }\n }\n\n id2eventid(s: string) {\n return this.event + s\n }\n\n eventid2id(s: string) {\n if (!s) {\n return null\n }\n\n const rv = s.split(this.event)\n if (rv.length > 1) {\n return rv[1]\n }\n\n return null\n }\n\n private get teamPractices(): DivisionTeamPracticeAppointmentInfo[] {\n let rv: DivisionTeamPracticeAppointmentInfo[] = []\n this.teams\n .map((x) => x.practices)\n .forEach((x) => {\n if (x) {\n rv = [...rv, ...x]\n }\n })\n return rv\n }\n\n protected teamFromList(id: number) {\n return this.teams.find((x) => x.teamID == id) || getEmptyDivisionTeamInfo()\n }\n\n @Watch('endEpoch')\n changeInEndEpoch() {\n if (this.week > this.endEpoch) {\n this.week = dayjs(this.endEpoch).day(START_DAY).subtract(7, 'day').valueOf()\n }\n }\n\n @Watch('startEpoch')\n changeInStartEpoch() {\n if (this.week < this.startEpoch) {\n this.week = this.startEpoch\n }\n }\n\n // External event dragged onto the calendar\n eventDropped(ev: CalendarData) {\n const start = dayjs(ev.start)\n\n if (this.validDayOfWeek(start.day())) {\n const teamID = ev.id\n this.currentPractice = this.makeNewPractice(0, Number(teamID))\n this.currentPractice.startDate = start.toDate()\n this.currentPractice.endDate = dayjs(this.currentPractice.startDate)\n .add(this.division.practiceLength, 'm')\n .toDate()\n this.currentPractice.teamID = Number(teamID)\n this.currentPractice.lastDate = this.league.seasonEndDate\n this.practiceModalShowing = true\n }\n }\n\n validDayOfWeek(dayOfWeek: number) {\n return this.weekdays.some((d) => d == dayOfWeek)\n }\n\n /***\n * Receives a moved element on the calendar, time is correct when we get it on move.\n */\n eventMoved(e: CalendarData) {\n const practiceId = Number(this.eventid2id(e.id))\n\n if (!practiceId) {\n return\n }\n\n const event = this.events.find((x) => x.eventID === practiceId)\n const practice = this.teamPractices.find((x) => x.id === practiceId)\n\n if (!event || !practice) {\n return\n }\n\n const start = dayjs(e.start)\n const end = dayjs(e.end)\n this.currentPractice = {\n ...this.makeNewPractice(practiceId, practice.teamID),\n id: practice.id,\n teamID: practice.teamID,\n startDate: start.toDate(),\n endDate: end.toDate(),\n facilityID: practice.facilityID,\n }\n\n this.practiceModalShowing = true\n }\n\n showDeleteConfirmed = false\n async deletePractice(newelement: PracticeModalInfoType) {\n this.practiceSaving = true\n try {\n if (newelement.updateSeason) {\n await this.deleteFuturePractices(newelement)\n } else {\n const team = this.teams.find((x) => x.teamID == newelement.teamID)\n if (team && newelement.id) {\n await this.deletePractices({\n id: this.leagueID,\n teamID: team.teamID,\n practiceIDs: [newelement.id],\n programID: this.programID,\n divisionID: this.internalDivisionID,\n })\n }\n }\n this.practiceModalShowing = false\n this.showDeleteConfirmed = true\n } finally {\n this.practiceSaving = false\n }\n }\n\n basicPractice(t: PracticeModalInfoType): DivisionTeamPracticeAppointmentInfo {\n return {\n practiceEnd: new Date(),\n practiceStart: new Date(),\n teamID: t.teamID,\n facilityID: t.facilityID,\n id: 0,\n divisionID: this.internalDivisionID,\n facilityName: '',\n leagueID: this.league.id,\n typeProgramID: this.programID,\n }\n }\n\n async deleteFuturePractices(modalInfo: PracticeModalInfoType) {\n // get original start time.\n const eventStart = this.events.find((e) => e.eventID === modalInfo.id)?.eventStart\n if (eventStart) {\n const evtStart = new Date(eventStart)\n\n // find all future events for this team\n const eventsToUpdate = this.events.filter(\n (e) =>\n e.leagueID === this.league.id &&\n e.typeProgramID == this.programID &&\n e.divisionID == this.internalDivisionID &&\n e.facilityID == modalInfo.facilityID &&\n e.typeFacilityEventID == this.event &&\n e.eventStart &&\n new Date(e.eventStart).getHours() == evtStart.getHours() &&\n new Date(e.eventStart).getMinutes() == evtStart.getMinutes() &&\n new Date(e.eventStart) >= modalInfo.startDate\n )\n const eventsToDelete = eventsToUpdate.map((x) => x.eventID)\n if (eventsToDelete.indexOf(modalInfo.id) < 0) {\n eventsToDelete.push(modalInfo.id)\n }\n await this.deletePractices({\n id: this.leagueID,\n teamID: modalInfo.teamID,\n practiceIDs: eventsToDelete,\n programID: this.programID,\n divisionID: this.internalDivisionID,\n })\n }\n }\n\n /**\n * Used after a modal is confirmed\n */\n practiceSaving = false\n async confirmPractice(modalInfo: PracticeModalInfoType) {\n this.practiceSaving = true\n try {\n if (modalInfo.updateSeason) {\n await this.deleteFuturePractices(modalInfo)\n modalInfo.id = 0\n }\n\n //expressed in milliseconds\n const practiceLength = modalInfo.endDate.valueOf() - modalInfo.startDate.valueOf()\n\n if (modalInfo.id === 0) {\n const lastDate = modalInfo.lastDate ?? modalInfo.endDate\n const practices: DivisionTeamPracticeAppointmentInfoModified[] = []\n const activeStart = dayjs(modalInfo.startDate)\n const eodLastDay = dayjs(lastDate).hour(24).minute(0).toDate().valueOf()\n for (let week = 0; activeStart.add(week, 'week').toDate().valueOf() < eodLastDay; week++) {\n if (\n !(\n this.division.exclusionDates &&\n this.division.exclusionDates.find((x) =>\n activeStart.add(week, 'week').isSame(dayjs(x.excludeDate!), 'day')\n )\n )\n ) {\n practices.push({\n ...this.basicPractice(modalInfo),\n\n practiceStart: activeStart.add(week, 'week').format(SERVER_DATE_FORMAT),\n practiceEnd: activeStart\n .add(week, 'week')\n .add(practiceLength, 'millisecond')\n .format(SERVER_DATE_FORMAT),\n })\n }\n }\n await this.addPractices({ id: this.leagueID, programID: this.programID, practices })\n } else {\n // replaces a practice that was clicked on\n\n await this.addPractices({\n id: this.leagueID,\n programID: this.programID,\n practices: [\n {\n ...this.basicPractice(modalInfo),\n\n practiceStart: dayjs(modalInfo.startDate).format('YYYY-MM-DDTHH:mm:ss'),\n practiceEnd: dayjs(modalInfo.endDate).format('YYYY-MM-DDTHH:mm:ss'),\n id: modalInfo.id,\n },\n ],\n })\n }\n\n this.practiceModalShowing = false\n } catch (e) {\n throw e\n } finally {\n this.practiceSaving = false\n }\n }\n\n event = FacilityEventEnum.PRACTICES\n\n /***\n * Restricts tabs to the facilities that have programming for the given event\n */\n get facilitiesAsTabs(): TabType[] {\n return (\n this.facilitiesToFilter\n .filter((y) => y.selected)\n .map((x) => ({\n id: x.id,\n description: x.description,\n })) ?? []\n )\n }\n\n private facilitiesToFilter: FilterTabType[] = []\n private eventFacilities: LeagueFacility[] = []\n\n @Watch('facilities', { immediate: true })\n facilitiesUpdated() {\n this.facilitiesToFilter =\n this.facilities\n .filter((y) => (y.availability || []).findIndex((z) => z.typeFacilityEventID == this.event) >= 0)\n .map((x) => ({\n id: x.facilityID.toString(),\n description: x.facilityName,\n selected: true,\n })) ?? []\n this.eventFacilities = this.facilities.filter(\n (y) => (y.availability || []).findIndex((z) => z.typeFacilityEventID == this.event) >= 0\n )\n }\n\n facilityFilterUpdated(selectedFilters: string[]) {\n this.facilitiesToFilter.forEach((x) => {\n x.selected = selectedFilters.includes(x.id)\n })\n }\n\n refreshLeagues() {\n this.divisionLoading = true\n this.fetchAllDivisions({ upwardLeagueId: this.leagueID, force: true })\n this.divisionLoading = false\n }\n\n async refreshAll() {\n await this.refreshLeagues()\n await this.refreshTeams()\n await this.refreshEvents()\n }\n\n get divisionSelect() {\n return this.practiceDivisionList.filter((x) => x.typeProgramID == this.programID)\n }\n\n get divisionTeams() {\n return this.teams.filter((x) => x.divisionID == this.internalDivisionID)\n }\n\n get hasTeams() {\n if (this.loadingTeams) return -1\n if (this.teamsList.length) return 1\n return 0\n }\n\n /**\n * Get teams\n */\n private async refreshTeams() {\n this.loadingTeams = true\n if (this.programID) {\n await this.loadTeams({\n id: this.leagueID,\n\n programID: this.programID,\n })\n }\n this.loadingTeams = false\n }\n\n private async refreshEvents() {\n await this.retrieveEvents({ id: this.leagueID })\n }\n\n /**\n * Get teams\n */\n private async refreshFacilities() {\n await this.retrieveFacilities({ id: this.leagueID })\n }\n\n /***\n * Returns the structure to define the tabs based on loaded league\n */\n\n get leagueID() {\n return this.$route.params.id\n }\n\n public async mounted() {\n this.loading = true\n try {\n await this.refreshLeagues()\n await this.refreshFacilities()\n await this.refreshEvents()\n } finally {\n // !! used to emit actual fase value instead of aborting emit\n this.$emit('scheduleLoading', { val: false })\n }\n this.loading = false\n }\n\n get tabs(): LeagueListItem {\n if (this.league && this.league.programs) {\n return LeagueProgams2LeagueListItem(this.league.programs)\n }\n return getEmptyLeagueListItem(new LeagueListItemSeed())\n }\n\n @Watch('internalDivisionID', { immediate: true })\n private onSelectedItemChange() {\n if (this.internalDivisionID !== this.divisionID) {\n const division = this.practiceDivisionList.find((item) => item.divisionID === this.internalDivisionID)\n\n if (division) {\n this.setDivision({ division: division })\n }\n }\n }\n}\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!./PracticeScheduler.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!./PracticeScheduler.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PracticeScheduler.vue?vue&type=template&id=74bdc1ea&scoped=true&\"\nimport script from \"./PracticeScheduler.vue?vue&type=script&lang=ts&\"\nexport * from \"./PracticeScheduler.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PracticeScheduler.vue?vue&type=style&index=0&id=74bdc1ea&lang=scss&scoped=true&\"\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 \"74bdc1ea\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, onMounted } from '@vue/composition-api'\n\nimport SelectInput from '@/elements/SelectInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\n\nimport DivisionHeader from '@/views/Programs/Divisions/vues/DivisionHeader.vue'\nimport { HeaderValue } from '@/views/Programs/Divisions/ext/headerValue'\nimport PracticeScheduler from '@/views/Programs/Scheduling/Practices/PracticeScheduler.vue'\nimport Loading from '@/elements/Loading.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Practices',\n components: {\n PracticeScheduler,\n SelectInput,\n CheckboxInput,\n TextInput,\n DivisionHeader,\n Loading,\n },\n setup(props, ctx) {\n const facilities = computed(() => store.getters.facilities.items)\n const headerValues = ref(null)\n\n const programID = ref('')\n const divisionID = ref(-1)\n const loading = ref(false)\n\n const leagueID = computed(() => ctx.root.$route.params.id)\n\n const hasFacilites = computed(() => facilities.value.length > 0)\n\n function onDivisionChanged(headers: HeaderValue | null) {\n if (headers) {\n headerValues.value = headers\n }\n programID.value = headers?.selectedDivision?.typeProgramID ?? ''\n divisionID.value = headers?.selectedDivision?.divisionID ?? -1\n }\n\n function onLoadingChange(status: { val: boolean }) {\n loading.value = status.val\n }\n\n onMounted(async () => {\n loading.value = true\n try {\n await store.dispatch.facilities.load({ id: leagueID.value })\n } finally {\n loading.value = false\n }\n })\n\n return {\n loading,\n hasFacilites,\n leagueID,\n divisionID,\n programID,\n onDivisionChanged,\n onLoadingChange,\n }\n },\n})\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!./Practices.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!./Practices.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Practices.vue?vue&type=template&id=607d25c6&\"\nimport script from \"./Practices.vue?vue&type=script&lang=ts&\"\nexport * from \"./Practices.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('div',{staticClass:\"row mt-3\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showHeaders),expression:\"showHeaders\"}],staticClass:\"col-12 pt-0\"},[_c('division-header',{staticClass:\"pt-2\",attrs:{\"title\":\"\",\"disabled\":_vm.refreshingAll},on:{\"divisionChanged\":_vm.onDivisionChanged}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isLeague),expression:\"isLeague\"}],attrs:{\"slot\":\"actionButtons\"},slot:\"actionButtons\"},[(_vm.teamsCount > 0)?_c('button',{staticClass:\"btn btn-outline-dark mr-2\",attrs:{\"disabled\":_vm.refreshingAll},on:{\"click\":_vm.clearFilter}},[_vm._v(\" Reset Filters \")]):_vm._e(),(_vm.teamsCount > 0)?_c('button',{staticClass:\"btn btn-success mr-2\",attrs:{\"disabled\":_vm.refreshingAll},on:{\"click\":function($event){_vm.showFilters = !_vm.showFilters}}},[_c('i',{staticClass:\"fas fa-filter\"}),_vm._v(\" Filters \")]):_vm._e(),(_vm.divisionCount)?_c('v-badge',{staticClass:\"mr-2\",attrs:{\"content\":_vm.reportCount,\"color\":\"red\",\"overlap\":\"\",\"bordered\":\"\",\"value\":_vm.reportCount > 0}},[_c('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":_vm.refreshingAll},on:{\"click\":function($event){_vm.showReports = !_vm.showReports}}},[_c('i',{staticClass:\"fas fa-flag-checkered\"}),_vm._v(\" Reports \")])]):_vm._e(),_c('button',{staticClass:\"btn btn-success mr-2\",attrs:{\"disabled\":_vm.refreshingAll,\"s\":\"\"},on:{\"click\":_vm.doShowAutoGenerationModal}},[_c('i',{staticClass:\"fas fa-clipboard-check\"}),_vm._v(\" Auto Draft Participants \")])],1)])],1),(_vm.refreshingAll || _vm.isLoading)?_c('div',{staticClass:\"bg-white p-3\"},[_c('loading')],1):_vm._e(),(!_vm.refreshingAll)?[(_vm.divisionCount === 0)?_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no divisions set up for this program.\")]),_c('p',[_vm._v(\" Click the \"),_c('router-link',{attrs:{\"to\":\"divisions\"}},[_vm._v(\"Divisions\")]),_vm._v(\" tab to add one or more divisions. \")],1)])]):_vm._e(),(_vm.divisionCount > 0 && _vm.teamsCount <= 0)?_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no teams set up for this division.\")]),_c('p',[_vm._v(\"Click the \"),_c('router-link',{attrs:{\"to\":\"teams\"}},[_vm._v(\"Create Teams\")]),_vm._v(\" tab to add one or more teams.\")],1)])]):_vm._e(),(!_vm.isLoading)?_c('div',{staticClass:\"col-12 bg-light-2 p-0\"},[_c('team-manager',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.divisionCount > 0 && _vm.teamsCount > 0),expression:\"divisionCount > 0 && teamsCount > 0\"}],attrs:{\"program-i-d\":_vm.programID,\"division\":_vm.templateDivision},on:{\"autoDraft\":_vm.doShowAutoGenerationModal,\"toggleHeader\":_vm.toggleHeader}})],1):_vm._e()]:_vm._e(),_c('filter-modal',{model:{value:(_vm.showFilters),callback:function ($$v) {_vm.showFilters=$$v},expression:\"showFilters\"}}),_c('modal',{attrs:{\"title\":\"Reports\",\"showClose\":true,\"renderConditionally\":false},model:{value:(_vm.showReports),callback:function ($$v) {_vm.showReports=$$v},expression:\"showReports\"}},[(_vm.division)?_c('report-footer',{staticClass:\"status-area\",attrs:{\"division\":_vm.division}}):_vm._e(),_c('portal-target',{attrs:{\"name\":\"reports\"}})],1),(_vm.headerValues && _vm.headerValues.selectedDivision)?_c('auto-team-player-assignment-modal',{attrs:{\"show\":_vm.showAutoGenerationModal,\"upward-league-id\":_vm.headerValues.selectedDivision.upwardLeagueID\n ? _vm.headerValues.selectedDivision.upwardLeagueID\n : undefined,\"division-id\":_vm.headerValues.selectedDivision.divisionID,\"type-program-id\":_vm.headerValues.selectedDivision.typeProgramID ? _vm.headerValues.selectedDivision.typeProgramID : undefined,\"team-squad-text\":_vm.getTeamSquadText(false),\"has-players-assigned\":_vm.hasPlayersAssigned},on:{\"playersDrafted\":_vm.onPlayersDrafted,\"update\":function (val) { return (_vm.showAutoGenerationModal = val); }}}):_vm._e(),(_vm.headerValues && _vm.headerValues.selectedDivision)?_c('draft-summary-report-modal',{attrs:{\"upward-league-id\":_vm.headerValues.selectedDivision.upwardLeagueID\n ? _vm.headerValues.selectedDivision.upwardLeagueID\n : undefined,\"division-id\":_vm.headerValues.selectedDivision.divisionID,\"type-program-id\":_vm.headerValues.selectedDivision.typeProgramID ? _vm.headerValues.selectedDivision.typeProgramID : undefined,\"division-name\":_vm.headerValues.selectedDivision.divisionName ? _vm.headerValues.selectedDivision.divisionName : '',\"has-players-assigned\":_vm.hasPlayersAssigned},model:{value:(_vm.showDraftSummaryReport),callback:function ($$v) {_vm.showDraftSummaryReport=$$v},expression:\"showDraftSummaryReport\"}}):_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('div',[_c('div',{staticClass:\"bg-white px-3\",class:_vm.showHeader ? 'pb-3' : 'pb-1'},[_c('tab-menu',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showHeader),expression:\"showHeader\"}],staticClass:\"shadow-sm\",model:{value:(_vm.currentTab),callback:function ($$v) {_vm.currentTab=$$v},expression:\"currentTab\"}}),_c('show-toggle',{staticClass:\"float-right pr-0\",attrs:{\"label\":\"header\",\"show\":_vm.showHeader},on:{\"clicked\":_vm.toggled}}),_c('div',{staticStyle:{\"clear\":\"both\"}})],1),(_vm.showFilters)?_c('div',{staticClass:\"bg-white px-3\"},[_c('h5',{staticClass:\"text-muted small d-inline pr-2\"},[_vm._v(\"FILTERS\")]),_vm._l((_vm.currentFilters),function(filter){return _c('div',{key:filter.label,staticClass:\"d-inline small text-muted mr-4\"},[_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(filter.label)+\": \")]),_c('span',[_vm._v(_vm._s(filter.value))])])})],2):_vm._e(),(!_vm.managerReady && !_vm.showDraftChoice)?_c('div',{staticClass:\"bg-white p-3\"},[_c('loading')],1):_vm._e(),(_vm.showDraftChoice)?_c('draft-options-info',{staticClass:\"col-12\",on:{\"autoDraft\":function($event){return _vm.$emit('autoDraft')},\"manualDraft\":_vm.hideDraftChoice}}):_vm._e(),(!_vm.showDraftChoice)?_c('SideBySideScroll',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.managerReady),expression:\"managerReady\"}],ref:\"sideBySide\",staticClass:\"p-3\",attrs:{\"left\":((_vm.currentTab == 'C' ? 'coach' : 'participant') + \" section\"),\"right\":\"team section\",\"ready\":!_vm.refreshing,\"use-top-offset\":true},on:{\"showing\":_vm.sideBySideStateChange},scopedSlots:_vm._u([{key:\"leftHeader\",fn:function(){return [_c('div',{staticStyle:{\"max-width\":\"600px\"}},[_c('div',{staticClass:\"text-muted\"},[_vm._v(_vm._s(_vm.currentTab == 'C' ? 'Coaches' : 'Participants'))]),_c('switch-slot',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isLeague),expression:\"isLeague\"}],staticClass:\"pop\",attrs:{\"mode\":\"radio\",\"options\":_vm.unassignedOptions},model:{value:(_vm.unassignedSwitch),callback:function ($$v) {_vm.unassignedSwitch=$$v},expression:\"unassignedSwitch\"}},[_c('participant-sort',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'P'),expression:\"currentTab === 'P'\"}],attrs:{\"slot\":\"sort-unassigned\",\"program\":_vm.programID},slot:\"sort-unassigned\"}),_c('column-selector',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'P'),expression:\"currentTab === 'P'\"}],attrs:{\"slot\":\"field-toggle\",\"program\":_vm.programID},slot:\"field-toggle\"}),_c('player-conflict-filter',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'P'),expression:\"currentTab === 'P'\"}],attrs:{\"slot\":\"show-conflicts\"},slot:\"show-conflicts\"}),_c('coach-conflict-filter',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'C'),expression:\"currentTab === 'C'\"}],attrs:{\"slot\":\"show-coach-conflicts\"},slot:\"show-coach-conflicts\"})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'P' && _vm.getIsFilteringUnassigned),expression:\"currentTab === 'P' && getIsFilteringUnassigned\"}],staticClass:\"alert alert-warning p-0 m-0 small text-center m-auto\",staticStyle:{\"max-width\":\"100px\"}},[_vm._v(\" FILTERING ON \")])],1)]},proxy:true},{key:\"left\",fn:function(){return [_c('div',[_c('coach-list',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'C' && _vm.unassignedSwitch !== 'show-coach-conflicts'),expression:\"currentTab === 'C' && unassignedSwitch !== 'show-coach-conflicts'\"}],ref:\"coachListChildRef\",staticClass:\"drag-scroll\",attrs:{\"coaches\":_vm.coachesInDivision},on:{\"selectCoach\":_vm.selectCoach}}),_c('participant-list',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'P' && _vm.unassignedSwitch !== 'show-conflicts'),expression:\"currentTab === 'P' && unassignedSwitch !== 'show-conflicts'\"}],ref:\"playerListChildRef\",staticClass:\"drag-scroll\",attrs:{\"participants\":_vm.participantsNotAssigned},on:{\"selectPlayer\":_vm.selectPlayer}}),_c('player-conflict-list',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'P' && _vm.unassignedSwitch === 'show-conflicts'),expression:\"currentTab === 'P' && unassignedSwitch === 'show-conflicts'\"}],attrs:{\"conflicts\":_vm.playerConflicts,\"upwardLeagueID\":_vm.upwardLeagueID},on:{\"toggle-team\":_vm.toggleTeam,\"refresh-conflicts\":_vm.refreshConflicts}}),_c('coach-conflict-list',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.currentTab === 'C' && _vm.unassignedSwitch === 'show-coach-conflicts'),expression:\"currentTab === 'C' && unassignedSwitch === 'show-coach-conflicts'\"}],attrs:{\"conflicts\":_vm.coachConflicts,\"upwardLeagueID\":_vm.upwardLeagueID}})],1)]},proxy:true},{key:\"rightHeader\",fn:function(){return [_c('div',[_c('div',{staticClass:\"text-muted\"},[_vm._v(\"Teams\")]),_c('switch-slot',{staticClass:\"pop\",attrs:{\"mode\":\"radio\",\"options\":_vm.teamOptions},model:{value:(_vm.teamSwitch),callback:function ($$v) {_vm.teamSwitch=$$v},expression:\"teamSwitch\"}},[_c('team-toggle',{attrs:{\"slot\":\"team-toggle\",\"teams\":_vm.teams,\"teams-checked\":_vm.teamsChecked},on:{\"toggle-team\":_vm.toggleTeam},slot:\"team-toggle\"}),_c('team-sort',{attrs:{\"slot\":\"sort-assigned\",\"program\":_vm.programID},slot:\"sort-assigned\"}),_c('team-column-selector',{attrs:{\"slot\":\"team-field-toggle\"},slot:\"team-field-toggle\"}),_c('TeamListSort',{attrs:{\"slot\":\"sort-teams\",\"program\":_vm.programID},slot:\"sort-teams\",model:{value:(_vm.sortTeamBy),callback:function ($$v) {_vm.sortTeamBy=$$v},expression:\"sortTeamBy\"}}),_c('unassign-division-participants',{attrs:{\"slot\":\"remove-all\",\"division\":_vm.division,\"teams\":_vm.teams},slot:\"remove-all\"})],1)],1)]},proxy:true},{key:\"right\",fn:function(){return [_c('team-card-field',{attrs:{\"teams\":_vm.teamsOnField,\"tape-down-reasons\":_vm.tapeDownReasons,\"vertical\":!_vm.showingTeamsOnly,\"selectedCoach\":_vm.selectedCoach,\"selectedPlayer\":_vm.selectedPlayer,\"approvedCoaches\":_vm.coaches},on:{\"toggle-team\":_vm.toggleTeam,\"add-coach\":_vm.addCoach,\"add-player\":_vm.addPlayer}})]},proxy:true}],null,false,3901599329)}):_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('div',[_c('Container',{attrs:{\"drag-class\":\"dragging\",\"drop-class\":\"dropping\",\"get-child-payload\":_vm.getPayload,\"dragHandleSelector\":\".participant-list-drag-handle\"},on:{\"shouldAcceptDrop\":_vm.accepting,\"drop\":_vm.onDrop}},[_vm._l((_vm.participantOrder),function(order){return _c('Draggable',{key:order.participant.individualID},[_c('participant-list-element',{attrs:{\"participant\":order.participant,\"selectedPlayerID\":_vm.selectedPlayer ? _vm.selectedPlayer.individualID : 0},on:{\"selectPlayer\":_vm.selectPlayer}})],1)}),(!_vm.participantOrder || !_vm.participantOrder.length)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(\" No unassigned participants \")]):_vm._e()],2)],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:\"participant-list-element list-element participant-row\",class:{ selected: _vm.isSelected },on:{\"click\":_vm.selectPlayer}},[_c('div',{staticClass:\"d-flex flex-wrap\"},[_c('div',{staticClass:\"pr-2 participant-list-drag-handle\"},[_vm._v(\"⁞⁞\")]),_c('div',{staticClass:\"cell\"},[_c('h5',[_vm._v(_vm._s(_vm.participant.lastName)+\", \"+_vm._s(_vm.participant.firstName))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isSport && _vm.showScore && _vm.isLeague && !_vm.isUpwardSelect),expression:\"isSport && showScore && isLeague && !isUpwardSelect\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Score\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.participant.evaluationScore))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showPositionScore && _vm.showScore && _vm.isLeague && !_vm.isUpwardSelect),expression:\"showPositionScore && showScore && isLeague && !isUpwardSelect\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(_vm._s(_vm.positionScoreLabel))]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.participant.positionScore))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showExperience),expression:\"showExperience\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Experience\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.participant.yearsExperience))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showGrade),expression:\"showGrade\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.typeGradeIDValue))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showGender),expression:\"showGender\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Gender\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.participant.gender))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.sportUsesHeight && _vm.showHeight),expression:\"sportUsesHeight && showHeight\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Height\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.participant.extraScore ? ((_vm.participant.extraScore) + \"\\\"\") : '-'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showExclude),expression:\"showExclude\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Cannot Practice On\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.practiceNights || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showCarpool),expression:\"showCarpool\"}],staticClass:\"cell left\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Carpool Link\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.carPoolLink || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showCoach),expression:\"showCoach\"}],staticClass:\"cell left\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Coach Link\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.coachLink || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showChurch),expression:\"showChurch\"}],staticClass:\"cell left\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Church\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.churchName || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showNotes),expression:\"showNotes\"}],staticClass:\"cell left\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Player Notes\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.generalNotes || 'N/A'))])])])])}\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\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\n\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\nimport store from '@/store'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\nimport { UpwardPositionTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPositionTypeID'\nimport { getProperGradeLabel } from '@/services/gradeService'\n\nexport default defineComponent({\n name: 'ParticipantListElement',\n props: {\n participant: { type: Object as PropType, required: true },\n selectedPlayerID: { type: Number, required: false, default: 0 },\n },\n setup(props, ctx) {\n const { getColumns, getIsByAge } = userPreferences()\n const carPoolLink = computed(() => {\n const p = props.participant\n if (p.actualCarpoolLinkLastName) {\n return `${p.actualCarpoolLinkFirstName} ${p.actualCarpoolLinkLastName}`\n }\n return ''\n })\n\n const coachLink = computed(() => {\n const p = props.participant\n if (p.actualCoachLinkLastName) {\n return `${p.actualCoachLinkFirstName} ${p.actualCoachLinkLastName}`\n }\n if (p.pendingCoachLinkLastName) {\n return `${p.pendingCoachLinkFirstName} ${p.pendingCoachLinkLastName} (pending)`\n }\n return ''\n })\n const churchName = computed(() => {\n return props.participant.churchName\n })\n const generalNotes = computed(() => {\n const g = props.participant.generalNotes\n return g\n })\n const practiceNights = computed(() => {\n return props.participant?.practiceNightExclusions\n ?.map((x) => x.typeDayID ?? '')\n .map((x) => days.find((y) => y.name == x)?.abbr3)\n ?.join(',')\n })\n const sportUsesHeight = computed(() => {\n return (\n props.participant?.typeProgramID == 'BASKETBALL' || props.participant?.typeProgramID == 'VOLLEYBALL'\n )\n })\n\n const isLeague = computed(() => {\n return store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE\n })\n\n const isSport = computed(() => {\n return (\n props.participant?.typeProgramID != 'BASKETBALLCHEERLEADING' &&\n props.participant?.typeProgramID != 'FOOTBALLCHEERLEADING'\n )\n })\n\n const positionType = computed(() => {\n return store.getters.positionTypes.allItems.find(\n (x: UpwardPositionTypeID) => x.typeProgramID == props.participant.typeProgramID\n )\n })\n\n const typeGradeIDValue = computed(() =>\n getProperGradeLabel(props.participant.typeGradeID!, getIsByAge.value, '')\n )\n\n const showPositionScore = computed(() => {\n return !!positionType.value\n })\n\n const positionScoreLabel = computed(() => {\n return !!positionType.value ? `${positionType.value.description} Score` : ''\n })\n\n const showScore = computed(() => getColumns.value.find((c) => c.id == 'score')?.value)\n const showExperience = computed(() => getColumns.value.find((c) => c.id == 'experience')?.value)\n const showGrade = computed(() => getColumns.value.find((c) => c.id == 'grade')?.value)\n const showGender = computed(() => getColumns.value.find((c) => c.id == 'gender')?.value)\n const showHeight = computed(() => getColumns.value.find((c) => c.id == 'height')?.value)\n const showExclude = computed(() => getColumns.value.find((c) => c.id == 'cannot practice on')?.value)\n const showCarpool = computed(() => getColumns.value.find((c) => c.id == 'carpool link')?.value)\n const showCoach = computed(() => getColumns.value.find((c) => c.id == 'coach link')?.value)\n const showNotes = computed(() => getColumns.value.find((c) => c.id == 'player notes')?.value)\n const showChurch = computed(() => getColumns.value.find((c) => c.id == 'church')?.value)\n\n const isSelected = computed(() => props.participant.individualID == props.selectedPlayerID)\n\n function selectPlayer() {\n ctx.emit('selectPlayer', props.participant)\n }\n\n return {\n carPoolLink,\n coachLink,\n practiceNights,\n sportUsesHeight,\n isSport,\n isByAge: computed(() => getIsByAge.value),\n isUpwardSelect: store.getters.leagueAbstraction.isUpwardSelect,\n showScore,\n showExperience,\n showGrade,\n showGender,\n showHeight,\n showExclude,\n showCarpool,\n showCoach,\n showNotes,\n showChurch,\n isLeague,\n churchName,\n generalNotes,\n isSelected,\n selectPlayer,\n showPositionScore,\n positionScoreLabel,\n typeGradeIDValue,\n }\n },\n})\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!./ParticipantListElement.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!./ParticipantListElement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantListElement.vue?vue&type=template&id=069d92bf&scoped=true&\"\nimport script from \"./ParticipantListElement.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantListElement.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ParticipantListElement.vue?vue&type=style&index=0&id=069d92bf&scoped=true&lang=scss&\"\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 \"069d92bf\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport ParticipantListElement from '@/views/Programs/Divisions/TeamManagement/vues/ParticipantListElement.vue'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { Container, ContainerProps, Draggable, DropResult } from 'vue-smooth-dnd'\nimport { cloneDeep } from 'lodash'\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\ninterface ParticipantOrderType {\n participant: LeaguePlayerInfo\n order: number\n}\n\n/***\n * Component hosts a sortable list of participants\n */\nexport default defineComponent({\n name: 'ParticipantList',\n components: { Container, Draggable, ParticipantListElement },\n props: { participants: { type: Array as PropType, required: true }, loading: Boolean },\n setup(props, ctx) {\n const participantOrder = ref([])\n const selectedPlayer = ref(null)\n /**\n * our payload is the participant at the given index.\n */\n const getPayload = (index: number) => {\n return participantOrder.value.find((x) => x.order == index)\n }\n\n /**\n * this container accepts things that have participants\n */\n const accepting = (a: ContainerProps, info: Record) => {\n return info && info.participant\n }\n /**\n * reorder players on the list\n */\n function onDrop(movedEvent: DropResult) {\n const f = getPayload(movedEvent.removedIndex)\n const g = getPayload(movedEvent.addedIndex)\n if (f && g) {\n const q = f.participant\n f.participant = g.participant\n g.participant = q\n }\n }\n\n /***\n * When we get new participants, then sort by last name and set the order.\n */\n watch(\n () => props.participants,\n () => {\n let order = 0\n const copyList = cloneDeep(props.participants)\n participantOrder.value = copyList.map((x) => ({\n order: order++,\n participant: x,\n originator: 'list',\n }))\n },\n { immediate: true }\n )\n\n function selectPlayer(player: LeaguePlayerInfo | null) {\n if (player) {\n selectedPlayer.value = player.individualID == selectedPlayer.value?.individualID ? null : player\n } else {\n selectedPlayer.value = null\n }\n }\n\n function clearSelectedPlayer() {\n selectedPlayer.value = null\n }\n\n watch(\n () => selectedPlayer.value,\n () => {\n ctx.emit('selectPlayer', selectedPlayer.value)\n }\n )\n\n return {\n onDrop,\n accepting,\n getPayload,\n participantOrder,\n selectedPlayer,\n selectPlayer,\n clearSelectedPlayer,\n }\n },\n})\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!./ParticipantList.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!./ParticipantList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantList.vue?vue&type=template&id=3ae03a24&\"\nimport script from \"./ParticipantList.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantList.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('div',[_vm._l((_vm.conflictOrder),function(order){return _c('div',{key:order.key},[_c('player-conflict-list-element',{attrs:{\"conflict\":order.conflict},on:{\"toggle-team\":_vm.toggleTeam,\"show-admin-note-modal\":function($event){return _vm.popupAdminNoteModal(order.conflict)}}})],1)}),(!_vm.conflictOrder || !_vm.conflictOrder.length)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(\" No conflicts for this division \")]):_vm._e(),_c('player-admin-note-edit-modal',{attrs:{\"conflict\":_vm.adminNoteConflict,\"visible\":_vm.isAdminNoteModalVisible},on:{\"confirm\":_vm.saveAdminNote,\"close\":_vm.closeAdminNote}})],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',{staticClass:\"participant-list-element list-element participant-row\",staticStyle:{\"cursor\":\"auto\"}},[_c('div',{staticClass:\"d-flex flex-nowrap\",staticStyle:{\"align-items\":\"baseline\"}},[_c('div',{staticClass:\"cell header left nowrap\"},[(_vm.conflict.playerIsLockedToTeam)?_c('i',{staticClass:\"fas fa-lock\",attrs:{\"title\":\"Player is locked to this team\"}}):_c('i',{staticClass:\"fas fa-unlock\",attrs:{\"title\":\"Player is NOT locked to this team\"}})]),_c('div',{staticClass:\"cell header left nowrap\"},[(_vm.conflict.manualAssignment)?_c('i',{staticClass:\"fas fa-keyboard\",attrs:{\"title\":\"Player was manually assigned to this team\"}}):_c('i',{staticClass:\"fas fa-laptop-code\",attrs:{\"title\":\"Player was drafted to this team\"}})]),_c('div',{staticClass:\"cell header left nowrap pr-0\"},[_c('v-popover',{attrs:{\"trigger\":\"click\"}},[_c('i',{staticClass:\"fas fa-info-circle clickable\",attrs:{\"title\":\"Click here to get more info\"}}),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"text-left clickable\"},[_c('div',{staticClass:\"text-center w-100 small font-weight-bold text-muted\"},[_vm._v(\" \"+_vm._s(_vm.conflict.lastName)+\", \"+_vm._s(_vm.conflict.firstName)+\" \")]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showUDFs),expression:\"showUDFs\"}],staticClass:\"text-muted small pb-0\"},[_vm._v(\"UDFs:\")]),_vm._l((_vm.udfsWithValues),function(udf){return _c('div',{key:udf.udfid,staticClass:\"pb-1\"},[_c('span',{staticClass:\"small pl-1\"},[_vm._v(_vm._s(udf.label)+\": \"+_vm._s(udf.udfValue))])])}),_c('div',{staticClass:\"text-muted small pb-0\"},[_vm._v(\"General Notes:\")]),_c('div',{staticClass:\"small pb-1 text-left pl-1\"},[_vm._v(\" \"+_vm._s(_vm.conflict.generalNotes == '' ? 'none' : _vm.conflict.generalNotes)+\" \")]),_c('div',{staticClass:\"text-muted small pb-0\"},[_vm._v(\" Admin Notes \"),_c('i',{staticClass:\"fa fa-pencil-alt\",attrs:{\"title\":\"Edit Admin Notes\"},on:{\"click\":_vm.showAdminNoteModal}}),_vm._v(\": \")]),_c('div',{staticClass:\"small text-left pl-1\"},[_vm._v(\" \"+_vm._s(_vm.conflict.adminNotes == '' ? 'none' : _vm.conflict.adminNotes)+\" \")])],2)])],2)],1),_c('div',{staticClass:\"cell header left nowrap\"},[_c('h5',[_c('a',{on:{\"click\":_vm.scrollToTeam}},[_c('u',{staticStyle:{\"margin-left\":\"4px\"}},[_vm._v(_vm._s(_vm.conflict.lastName)+\", \"+_vm._s(_vm.conflict.firstName))])]),_vm._v(\" - \"),_c('i',{class:(\"\" + _vm.exceptionIconClass)})])]),_c('div',{staticClass:\"cell header left small\"},[_vm._v(\" \"+_vm._s(_vm.conflict.draftExceptionDescription)+\" \")])]),_c('div',{staticClass:\"d-flex flex-wrap\"},[_c('div',{staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.getProperGradeLabel(_vm.conflict.typeGradeID, _vm.isByAge, '')))])]),_c('div',{staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Gender\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.conflict.gender))])]),_c('div',{staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Team\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.conflict.teamName))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showCarpoolLink),expression:\"showCarpoolLink\"}],staticClass:\"cell left\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Carpool Link\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.carPoolLink || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showCoaches),expression:\"showCoaches\"}],staticClass:\"cell left\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Coach Link\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.coachLink || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showCoaches),expression:\"showCoaches\"}],staticClass:\"cell\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Team Coaches\")]),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.teamCoaches || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showPracticeNights),expression:\"showPracticeNights\"}],staticClass:\"cell\"},[_vm._m(0),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.practiceNights || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showPracticeNights),expression:\"showPracticeNights\"}],staticClass:\"cell\"},[_vm._m(1),_c('span',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.teamPracticeNights || 'N/A'))])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showSiblingInfoLink),expression:\"showSiblingInfoLink\"}],staticClass:\"cell pr-0\"},[_c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Sibling Info\")]),_c('span',{staticClass:\"data clickable\"},[_c('v-popover',{attrs:{\"trigger\":\"click\"},on:{\"show\":_vm.loadSiblingInfo}},[_vm._v(\" Click here \"),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"text-left clickable\"},[_c('div',{staticClass:\"text-center w-100 small font-weight-bold text-muted pb-1\"},[_vm._v(\" Siblings of \"+_vm._s(_vm.conflict.lastName)+\", \"+_vm._s(_vm.conflict.firstName)+\" \")]),_vm._l((_vm.siblings),function(info){return _c('div',{key:info.label,staticClass:\"pb-1\"},[_c('div',{staticClass:\"text-muted small\",class:info.value == ' ' ? '' : info.class},[_vm._v(\" \"+_vm._s(info.label)+\": \")]),_c('span',{staticClass:\"small sibling-team-info\"},[_vm._v(_vm._s(info.value == ' ' ? 'none' : info.value))])])})],2)])],2)],1)])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Can't\"),_c('br'),_vm._v(\"Practice\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mini-header text-muted\"},[_vm._v(\"Team\"),_c('br'),_vm._v(\"Practices\")])}]\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\nimport { defineComponent, computed, PropType, ref } from '@vue/composition-api'\nimport Vue from 'vue'\nimport { PlayerConflictInfo } from '@/GeneratedTypes/ListInfo/PlayerConflictInfo'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { DivisionTeamPracticeAppointmentInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamPracticeAppointmentInfo'\nimport { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport participantsClient from '@/clients/participantsClient'\nimport teamsClient from '@/clients/teamsClient'\nimport { uniq } from 'lodash'\nimport { toDate } from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport { getProperGradeLabel } from '@/services/gradeService'\nimport store from '@/store'\n\ninterface SiblingInfo {\n label: string\n value: string\n class: string\n}\n\nexport default defineComponent({\n name: 'PlayerConflictListElement',\n props: {\n conflict: { type: Object as PropType, required: true },\n },\n setup(props, ctx) {\n const siblings = ref([])\n\n const isByAge = computed(() => store.getters.leagueAbstraction.isByAge)\n\n const carPoolLink = computed(() => {\n const c = props.conflict\n if (c.carpoolLinkFirstName) {\n return `${c.carpoolLinkFirstName} ${c.carpoolLinkLastName}`\n }\n return ''\n })\n\n const coachLink = computed(() => {\n const c = props.conflict\n if (c.coachLinkFirstName) {\n return `${c.coachLinkFirstName} ${c.coachLinkLastName}`\n }\n return ''\n })\n const practiceNights = computed(() => {\n return props.conflict?.practiceNightExclusions\n ?.map((x) => x.typeDayID ?? '')\n .map((x) => days.find((y) => y.name == x)?.abbr3)\n ?.join(',')\n })\n\n const teamPracticeNights = computed(() => {\n return props.conflict?.teamPracticeNights\n ?.map((x) => x.upwardTypeID ?? '')\n .map((x) => days.find((y) => y.name == x)?.abbr3)\n ?.join(',')\n })\n\n const teamCoaches = computed(() => {\n return props.conflict?.teamCoaches?.map((x) => x.formattedNameFirstLast ?? '')?.join(',')\n })\n\n const manuallyAssigned = computed(() => {\n return props.conflict.manualAssignment ? 'Yes' : 'No'\n })\n\n const lockedToTeam = computed(() => {\n return props.conflict.playerIsLockedToTeam ? 'Yes' : 'No'\n })\n\n const showCarpoolLink = computed(() => {\n return props.conflict.typeDraftExceptionID === 'CARPOOLLINKNOTHONORED'\n })\n\n const showCoaches = computed(() => {\n return props.conflict.typeDraftExceptionID === 'PARENTCOACHLINKNOTHONORED'\n })\n\n const showPracticeNights = computed(() => {\n return (\n props.conflict.typeDraftExceptionID === 'PRACTICENIGHTEXCLUSIONNOTHONORED' ||\n props.conflict.typeDraftExceptionID === 'SIBLINGLINKNOTHONORED'\n )\n })\n\n const showSiblingInfoLink = computed(() => {\n return props.conflict.typeDraftExceptionID === 'SIBLINGLINKNOTHONORED'\n })\n\n const showUDFs = computed(() => {\n return udfsWithValues.value?.length > 0\n })\n\n const udfsWithValues = computed(() => {\n return props.conflict.udFs?.filter((x) => x.udfValue) ?? []\n })\n\n const exceptionIconClass = computed(() => {\n switch (props.conflict.typeDraftExceptionID) {\n case 'CARPOOLLINKNOTHONORED':\n return 'fas fa-car-side'\n case 'PARENTCOACHLINKNOTHONORED':\n return 'fas fa-user'\n case 'PRACTICENIGHTEXCLUSIONNOTHONORED':\n return 'fas fa-calendar-alt'\n case 'SIBLINGLINKNOTHONORED':\n return 'fas fa-user-friends'\n default:\n return 'far fa-question-circle'\n }\n })\n\n async function scrollToTeam() {\n //this is all ugly. I'm sure there is a better way. But it works I guess, so....\n const selector = \"div[class-name='team-droppable'][data-id='\" + props.conflict.teamID.toString() + \"']\"\n let div = document.querySelector(selector)\n if (!div) {\n ctx.emit('toggle-team', props.conflict.teamID) //assume team is not visible yet; turn it on\n await Vue.nextTick() //...give team box time to load (for some reason it takes two of these calls to get the next line to return something)\n await Vue.nextTick(() => (div = document.querySelector(selector))) //...try to find new team box)\n }\n\n if (div) {\n div.scrollIntoView({ behavior: 'smooth' })\n const playerDiv = div.querySelector(\n \"div[class~='team-participant-element'][data-id='\" + props.conflict.individualID.toString() + \"']\"\n )\n if (playerDiv) {\n if (!playerDiv.className.includes('flashing')) {\n //if the player is not already being flashed, then flash them\n const orgClassName = playerDiv.className\n playerDiv.className += ' flashing'\n setTimeout(() => (playerDiv.className = orgClassName), 2000)\n }\n }\n }\n }\n\n async function loadSiblingInfo() {\n if (siblings.value.length === 0) {\n const siblingList =\n (await participantsClient.retrieveSiblingLinks(\n ctx.root.$route.params.id,\n props.conflict.individualID\n )) ?? []\n if (siblingList) {\n const calls: Promise[] = []\n siblingList.forEach((sibling: LeaguePlayerInfo) => calls.push(getSiblingTeamInfo(sibling)))\n await Promise.all(calls)\n }\n }\n }\n\n async function getSiblingTeamInfo(sibling: LeaguePlayerInfo) {\n const teamsInfo = await teamsClient.retrieveTeamInfo({\n leagueID: ctx.root.$route.params.id,\n individualId: sibling.individualID,\n })\n let assignmentInfo = 'Not assigned to a team'\n if (teamsInfo && teamsInfo.length > 0) {\n assignmentInfo = `${teamsInfo[0].divisionName} (${teamsInfo[0].teamName}) ${practiceNightFormatter(\n teamsInfo[0].practices\n )}`\n }\n siblings.value.push({\n label: sibling.formattedNameFirstLast!,\n value: assignmentInfo,\n class: '',\n })\n }\n\n function practiceNightFormatter(nights: DivisionTeamPracticeAppointmentInfo[] | null) {\n let retval = 'No practices scheduled'\n\n if (nights && nights.length > 0) {\n retval = uniq(nights.map((x) => toDate(x.practiceStart).getDay() ?? -1))\n .map((x) => days.find((y) => y.value == x)?.abbr3)\n ?.join(',')\n }\n\n return retval\n }\n\n function showAdminNoteModal() {\n ctx.emit('show-admin-note-modal')\n }\n\n return {\n carPoolLink,\n coachLink,\n practiceNights,\n teamPracticeNights,\n lockedToTeam,\n manuallyAssigned,\n teamCoaches,\n showCarpoolLink,\n showCoaches,\n showPracticeNights,\n showSiblingInfoLink,\n showUDFs,\n udfsWithValues,\n exceptionIconClass,\n scrollToTeam,\n siblings,\n loadSiblingInfo,\n showAdminNoteModal,\n isByAge,\n getProperGradeLabel,\n }\n },\n})\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!./PlayerConflictListElement.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!./PlayerConflictListElement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PlayerConflictListElement.vue?vue&type=template&id=5893d116&scoped=true&\"\nimport script from \"./PlayerConflictListElement.vue?vue&type=script&lang=ts&\"\nexport * from \"./PlayerConflictListElement.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PlayerConflictListElement.vue?vue&type=style&index=0&id=5893d116&scoped=true&lang=scss&\"\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 \"5893d116\",\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 (_vm.conflict)?_c('modal',{staticClass:\"password-reset\",attrs:{\"is-small\":\"\",\"title\":\"Edit Admin Note\"},on:{\"input\":_vm.close},scopedSlots:_vm._u([{key:\"footer\",fn:function(){return [_c('button',{staticClass:\"btn rounded-0 border-success btn-success\",on:{\"click\":_vm.confirm}},[_vm._v(\"Save\")]),_c('button',{staticClass:\"btn rounded-0 border-secondary btn-secondary\",on:{\"click\":function($event){return _vm.close(false)}}},[_vm._v(\"Cancel\")])]},proxy:true}],null,false,372725444),model:{value:(_vm.internalVisibleRef),callback:function ($$v) {_vm.internalVisibleRef=$$v},expression:\"internalVisibleRef\"}},[_c('div',[_c('span',{staticClass:\"title\"},[_vm._v(\"Edit Admin Note\")])]),_c('div',[_c('span',[_vm._v(\"Participant Name:\")]),_c('span',{staticClass:\"value\"},[_vm._v(_vm._s(_vm.conflict.formattedNameFirstLast))])]),_c('div',[_c('div',[_c('memo-input',{attrs:{\"label\":\"Admin Note\",\"maxLength\":256},model:{value:(_vm.adminNote),callback:function ($$v) {_vm.adminNote=$$v},expression:\"adminNote\"}})],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\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { PlayerConflictInfo } from '@/GeneratedTypes/ListInfo/PlayerConflictInfo'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport Modal from '@/components/Modal.vue'\n\nexport default defineComponent({\n name: 'PlayerAdminNoteEditModal',\n props: {\n conflict: { type: Object as PropType, required: false },\n visible: { type: Boolean, required: true },\n },\n components: { MemoInput, Modal },\n setup(props, ctx) {\n const adminNote = ref('')\n const internalVisibleRef = ref(false)\n\n watch(\n () => props.visible,\n () => {\n if (props.visible != internalVisibleRef.value) {\n internalVisibleRef.value = props.visible\n }\n },\n { immediate: true }\n )\n\n watch(\n () => props.conflict,\n () => {\n if (props.conflict) {\n adminNote.value = props.conflict?.adminNotes\n }\n },\n { immediate: true, deep: true }\n )\n\n function close(b: boolean) {\n internalVisibleRef.value = b\n if (!b) {\n ctx.emit('close')\n }\n }\n function confirm() {\n ctx.emit('confirm', props.conflict, adminNote.value)\n }\n\n return { adminNote, confirm, internalVisibleRef, close }\n },\n})\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!./PlayerAdminNoteEditModal.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!./PlayerAdminNoteEditModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PlayerAdminNoteEditModal.vue?vue&type=template&id=0405043a&scoped=true&\"\nimport script from \"./PlayerAdminNoteEditModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./PlayerAdminNoteEditModal.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 \"0405043a\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport PlayerConflictListElement from '@/views/Programs/Divisions/TeamManagement/vues/PlayerConflictListElement.vue'\nimport PlayerAdminNoteEditModal from '@/views/Programs/Divisions/TeamManagement/vues/PlayerAdminNoteEditModal.vue'\nimport { PlayerConflictInfo } from '@/GeneratedTypes/ListInfo/PlayerConflictInfo'\nimport { Container } from 'vue-smooth-dnd'\nimport { cloneDeep } from 'lodash'\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport participantsClient from '@/clients/participantsClient'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\n\ninterface ConflictOrderType {\n conflict: PlayerConflictInfo\n order: number\n key: string\n}\n\n/***\n * Component hosts a sortable list of participants\n */\nexport default defineComponent({\n name: 'PlayerConflictList',\n components: { Container, PlayerConflictListElement, PlayerAdminNoteEditModal },\n props: {\n conflicts: { type: Array as PropType, required: true },\n loading: Boolean,\n upwardLeagueID: { type: String, required: true },\n },\n setup(props, ctx) {\n const { getConflictFilters } = userPreferences()\n const isAdminNoteModalVisible = ref(false)\n const adminNoteConflict = ref(null)\n const conflictOrder = ref([])\n /**\n * our payload is the participant at the given index.\n */\n const getPayload = (index: number) => {\n return conflictOrder.value.find((x) => x.order == index)\n }\n\n /***\n * When we get new participants, then sort by last name and set the order.\n */\n watch(\n () => props.conflicts,\n () => {\n applyFilters()\n },\n { immediate: true }\n )\n\n watch(\n () => getConflictFilters.value,\n () => {\n applyFilters()\n },\n { immediate: true, deep: true }\n )\n\n function applyFilters() {\n if (props.conflicts && props.conflicts.length > 0) {\n let order = 0\n const copyList = cloneDeep(props.conflicts)\n conflictOrder.value = copyList\n .filter((c) => {\n return getConflictFilters.value.some(\n (f) => f.value && f.typeDraftExceptionID == c.typeDraftExceptionID\n )\n })\n .map((x) => ({\n order: order++,\n conflict: x,\n key: x.typeDraftExceptionID + '_' + x.individualID,\n }))\n } else {\n conflictOrder.value = []\n }\n }\n\n const toggleTeam = (teamID: number) => ctx.emit('toggle-team', teamID)\n\n const saveAdminNote = async (c: PlayerConflictInfo, note: string) => {\n try {\n const lp = await participantsClient.retrieveParticipant(props.upwardLeagueID, c.individualID)\n if (lp) {\n const prog = lp.programs?.find((x) => x.typeProgramID == c.typeProgramID)\n if (prog) {\n prog.adminNotes = note\n await participantsClient.save(props.upwardLeagueID, lp, false, false)\n ctx.emit('refresh-conflicts')\n isAdminNoteModalVisible.value = false\n }\n }\n } catch (e) {\n throw e\n }\n }\n\n const popupAdminNoteModal = (c: PlayerConflictInfo) => {\n adminNoteConflict.value = c\n isAdminNoteModalVisible.value = true\n }\n\n const closeAdminNote = () => {\n isAdminNoteModalVisible.value = false\n }\n\n return {\n getPayload,\n conflictOrder,\n toggleTeam,\n adminNoteConflict,\n isAdminNoteModalVisible,\n saveAdminNote,\n closeAdminNote,\n popupAdminNoteModal,\n }\n },\n})\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!./PlayerConflictList.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!./PlayerConflictList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PlayerConflictList.vue?vue&type=template&id=196bc256&\"\nimport script from \"./PlayerConflictList.vue?vue&type=script&lang=ts&\"\nexport * from \"./PlayerConflictList.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('div',{staticClass:\"btn-group border rounded wide-buttons\"},[_c('button',{staticClass:\"col btn btn-default text-capitalize\",class:{\n 'btn-success': _vm.currentTab === 'P',\n 'bg-light-1': _vm.currentTab !== 'P',\n },attrs:{\"disabled\":_vm.disabled,\"type\":\"button\"},on:{\"click\":function($event){_vm.currentTab = 'P'}}},[_vm._v(\" Participants \")]),_c('button',{staticClass:\"col btn bt-default text-capitalize\",class:{\n 'btn-success': _vm.currentTab === 'C',\n 'bg-light-1': _vm.currentTab !== 'C',\n },attrs:{\"disabled\":_vm.disabled,\"type\":\"button\"},on:{\"click\":function($event){_vm.currentTab = 'C'}}},[_vm._v(\" Coaches \")])])}\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\nimport { defineComponent, ref, watch } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'TabMenu',\n props: {\n value: { required: true, type: String, default: () => 'P' },\n disabled: { required: false, type: Boolean, default: false },\n },\n setup(props, ctx) {\n const currentTab = ref('P')\n\n watch(\n () => props.value,\n () => {\n if (props.value != currentTab.value) {\n currentTab.value = props.value\n }\n },\n { immediate: true }\n )\n\n watch(\n () => currentTab.value,\n () => {\n input()\n }\n )\n\n function input() {\n ctx.emit('input', currentTab.value)\n }\n\n return {\n currentTab,\n }\n },\n})\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!./TabMenu.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!./TabMenu.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TabMenu.vue?vue&type=template&id=8e06741a&scoped=true&\"\nimport script from \"./TabMenu.vue?vue&type=script&lang=ts&\"\nexport * from \"./TabMenu.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TabMenu.vue?vue&type=style&index=0&id=8e06741a&lang=scss&scoped=true&\"\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 \"8e06741a\",\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('div',{staticClass:\"remove-participants\"},[_c('button',{staticClass:\"btn btn-link text-primary font-italic pl-0\",on:{\"click\":_vm.confirm}},[_vm._v(\" Remove all participants from all teams in \"),_c('b',[_vm._v(_vm._s(_vm.division.divisionName))])]),_c('div',{staticClass:\"small text-muted\"},[_vm._v(_vm._s(_vm.progress))]),_c('confirmation-modal',{attrs:{\"show\":_vm.showConfirmation,\"title\":\"Unassign participants?\",\"is-small\":true},on:{\"onResponse\":_vm.confirmationResponse},scopedSlots:_vm._u([{key:\"confirm\",fn:function(){return [_c('i',{staticClass:\"fa fa-minus-circle text-white\"}),_vm._v(\" Remove \")]},proxy:true},{key:\"cancel\",fn:function(){return [_vm._v(\" Cancel \")]},proxy:true}])},[_c('div',{staticClass:\"m-4 text-left\"},[_vm._v(\" This cannot be undone. Remove all participants from all teams in \"),_c('b',[_vm._v(_vm._s(_vm.division.divisionName))]),_vm._v(\"? \")]),_c('checkbox-input',{staticClass:\"clean-align\",attrs:{\"label\":\"Remove all locked participants also\"},model:{value:(_vm.unassignLocked),callback:function ($$v) {_vm.unassignLocked=$$v},expression:\"unassignLocked\"}})],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\nimport { defineComponent, PropType, ref } from '@vue/composition-api'\n\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\n\nimport { useManagerLogic } from '@/views/Programs/Divisions/TeamManagement/logic/ManagerLogic'\n\nexport default defineComponent({\n name: 'UnassignAllDivisionParticipants',\n components: { ConfirmationModal, CheckboxInput },\n props: {\n division: { type: Object as PropType, required: true },\n teams: { type: Array as PropType, required: true },\n },\n setup(props) {\n const showConfirmation = ref(false)\n const manager = useManagerLogic()\n const unassignLocked = ref(false)\n\n function confirm() {\n showConfirmation.value = true\n }\n\n async function confirmationResponse(response: boolean) {\n showConfirmation.value = false\n if (response) {\n await manager.unassignDivisionParticipant(props.teams, unassignLocked.value)\n unassignLocked.value = false\n }\n }\n\n return {\n showConfirmation,\n unassignLocked,\n confirm,\n confirmationResponse,\n progress: manager.teamsProgress,\n }\n },\n})\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!./UnassignDivisionParticipants.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!./UnassignDivisionParticipants.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UnassignDivisionParticipants.vue?vue&type=template&id=6bb8189a&scoped=true&\"\nimport script from \"./UnassignDivisionParticipants.vue?vue&type=script&lang=ts&\"\nexport * from \"./UnassignDivisionParticipants.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UnassignDivisionParticipants.vue?vue&type=style&index=0&id=6bb8189a&lang=scss&scoped=true&\"\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 \"6bb8189a\",\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('div',_vm._l((_vm.columns),function(c,i){return _c('checkbox-input',{key:i,staticClass:\"d-inline-block pl-0 pr-2\",attrs:{\"value\":c.value,\"label\":c.label},on:{\"change\":function($event){return _vm.update(c.id)}}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\n\nexport default defineComponent({\n name: 'ColumnSelect',\n components: { CheckboxInput },\n props: {\n program: { type: String, required: true },\n },\n setup(props) {\n const { setColumns, getColumns } = userPreferences()\n\n const update = (columnID: string) => {\n setColumns(columnID)\n }\n\n const columnList = () => {\n let columns = getColumns.value\n const showHeight = props.program == 'BASKETBALL' || props.program == 'VOLLEYBALL'\n const hideScore =\n props.program == 'BASKETBALLCHEERLEADING' ||\n props.program == 'FOOTBALLCHEERLEADING' ||\n props.program == 'UPWARDSELECTMSS'\n if (!showHeight) columns = columns.filter((c) => c.id != 'height')\n if (hideScore) columns = columns.filter((c) => c.id != 'score')\n\n return columns\n }\n\n return {\n update,\n columns: computed(columnList),\n }\n },\n})\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!./ColumnSelector.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!./ColumnSelector.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ColumnSelector.vue?vue&type=template&id=ba061e12&\"\nimport script from \"./ColumnSelector.vue?vue&type=script&lang=ts&\"\nexport * from \"./ColumnSelector.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('div',_vm._l((_vm.columns),function(c,i){return _c('checkbox-input',{key:i,staticClass:\"d-inline-block pl-0 pr-2\",attrs:{\"value\":c.value,\"label\":c.label},on:{\"change\":function($event){return _vm.update(c.id)}}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\n\nexport default defineComponent({\n name: 'TeamColumnSelector',\n components: { CheckboxInput },\n setup() {\n const { setTeamColumns, getTeamColumns, usingHeight, usingScore, usingPosition } = userPreferences()\n\n const update = (filterID: string) => {\n setTeamColumns(filterID)\n }\n\n const columnsList = () => {\n let columns = getTeamColumns.value\n\n if (!usingHeight.value) columns = columns.filter((c) => c.id != 'height')\n if (!usingPosition.value) columns = columns.filter((c) => c.id != 'position')\n if (!usingScore.value) columns = columns.filter((c) => c.id != 'score')\n\n return columns\n }\n\n return {\n update,\n columns: computed(columnsList),\n }\n },\n})\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!./TeamColumnSelector.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!./TeamColumnSelector.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamColumnSelector.vue?vue&type=template&id=76a9b9b2&\"\nimport script from \"./TeamColumnSelector.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamColumnSelector.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('div',[_c('select-input',{attrs:{\"value\":_vm.sort,\"items-list\":_vm.options,\"id\":\"sort\",\"value-property-name\":\"key\",\"text-property-name\":\"text\",\"show-blank-item\":false},on:{\"change\":_vm.update}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, watch } from '@vue/composition-api'\n\nimport SelectInput from '@/elements/SelectInput.vue'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\n\ninterface SortOptionType {\n text: string\n key: string\n}\n\nexport default defineComponent({\n name: 'ParticipantSort',\n components: { SelectInput },\n props: {\n program: { type: String, required: true },\n },\n setup(props) {\n const { setSort, getSort } = userPreferences()\n const list: SortOptionType[] = [\n { text: 'Last Name: A to Z', key: 'name_asc' },\n { text: 'Last Name: Z to A', key: 'name_desc' },\n { text: 'Score: Low to High', key: 'score_asc' },\n { text: 'Score: High to Low', key: 'score_desc' },\n { text: 'Experience: Low to High', key: 'exp_asc' },\n { text: 'Experience: High to Low', key: 'exp_desc' },\n { text: 'Grade: Low to High', key: 'grade_asc' },\n { text: 'Grade: High to Low', key: 'grade_desc' },\n { text: 'Gender: Girls then Boys', key: 'gender_asc' },\n { text: 'Gender: Boys then Girls', key: 'gender_desc' },\n { text: 'Height: Low to High', key: 'height_asc' },\n { text: 'Height: High to Low', key: 'height_desc' },\n ]\n\n const optionList = computed(() => {\n let options = [...list]\n const showHeight = props.program == 'BASKETBALL' || props.program == 'VOLLEYBALL'\n const hideScore =\n props.program == 'BASKETBALLCHEERLEADING' ||\n props.program == 'FOOTBALLCHEERLEADING' ||\n props.program == 'UPWARDSELECTMSS'\n if (!showHeight) options = options.filter((i) => !i.key.includes('height'))\n if (hideScore) options = options.filter((i) => !i.key.includes('score'))\n return options\n })\n\n const update = (sortBy: string) => {\n setSort(sortBy)\n }\n\n watch(\n () => props.program,\n () => {\n const exists = optionList.value.findIndex((a) => a.key == getSort.value) > 0\n if (!exists) update(optionList.value[0].key)\n },\n { immediate: true }\n )\n\n return {\n sort: computed(() => getSort.value),\n options: optionList,\n update,\n }\n },\n})\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!./ParticipantSort.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!./ParticipantSort.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantSort.vue?vue&type=template&id=303967a0&\"\nimport script from \"./ParticipantSort.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantSort.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('div',_vm._l((_vm.filters),function(f,i){return _c('checkbox-input',{key:i,staticClass:\"d-inline-block pl-0 pr-2\",attrs:{\"value\":f.value,\"label\":f.label},on:{\"change\":function($event){return _vm.update(f.id)}}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\n\nexport default defineComponent({\n name: 'PlayerConflictFilter',\n components: { CheckboxInput },\n setup() {\n const { setConflictFilters, getConflictFilters } = userPreferences()\n\n const update = (filterID: string) => {\n setConflictFilters(filterID)\n }\n\n const filterList = () => {\n return getConflictFilters.value\n }\n\n return {\n update,\n filters: computed(filterList),\n }\n },\n})\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!./PlayerConflictFilter.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!./PlayerConflictFilter.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PlayerConflictFilter.vue?vue&type=template&id=2c66291a&\"\nimport script from \"./PlayerConflictFilter.vue?vue&type=script&lang=ts&\"\nexport * from \"./PlayerConflictFilter.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('div',[_c('select-input',{attrs:{\"value\":_vm.sort,\"items-list\":_vm.options,\"id\":\"sort\",\"value-property-name\":\"key\",\"text-property-name\":\"text\",\"show-blank-item\":false},on:{\"change\":_vm.update}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, watch } from '@vue/composition-api'\n\nimport SelectInput from '@/elements/SelectInput.vue'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\n\ninterface SortOptionType {\n text: string\n key: string\n}\n\nexport default defineComponent({\n name: 'TeamSort',\n components: { SelectInput },\n props: {\n program: { type: String, required: true },\n },\n setup(props) {\n const { setTeamSort, getTeamSort } = userPreferences()\n const list: SortOptionType[] = [\n { text: 'Last Name: A to Z', key: 'name_asc' },\n { text: 'Last Name: Z to A', key: 'name_desc' },\n { text: 'First Name: A to Z', key: 'firstname_asc' },\n { text: 'First Name: Z to A', key: 'firstname_desc' },\n { text: 'Score: Low to High', key: 'score_asc' },\n { text: 'Score: High to Low', key: 'score_desc' },\n { text: 'Grade: Low to High', key: 'grade_asc' },\n { text: 'Grade: High to Low', key: 'grade_desc' },\n ]\n\n const optionList = computed(() => {\n let options = [...list]\n const hideScore =\n props.program == 'BASKETBALLCHEERLEADING' ||\n props.program == 'FOOTBALLCHEERLEADING' ||\n props.program == 'UPWARDSELECTMSS'\n if (hideScore) options = options.filter((i) => !i.key.includes('score'))\n return options\n })\n\n const update = (sortBy: string) => {\n setTeamSort(sortBy)\n }\n\n watch(\n () => props.program,\n () => {\n const exists = optionList.value.findIndex((a) => a.key == getTeamSort.value) > 0\n if (!exists) update(optionList.value[0].key)\n },\n { immediate: true }\n )\n\n return {\n sort: computed(() => getTeamSort.value),\n options: optionList,\n update,\n }\n },\n})\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!./TeamSort.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!./TeamSort.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamSort.vue?vue&type=template&id=d019a4c4&\"\nimport script from \"./TeamSort.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamSort.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('div',{staticClass:\"team-card-field\"},[_c('Container',{staticClass:\"w-100\",class:_vm.gridClass,attrs:{\"get-child-payload\":_vm.getPayload},on:{\"shouldAcceptDrop\":_vm.accepting,\"drop\":_vm.onDrop}},_vm._l((_vm.teamOrder),function(team){return _c('Draggable',{key:team.team.teamID,attrs:{\"group-name\":\"team\",\"class-name\":\"team-droppable\",\"data-id\":team.team.teamID.toString(),\"get-child-payload\":function () { return team.team; }}},[_c('team-card',{attrs:{\"team\":team.team,\"tape-down-reasons\":_vm.tapeDownReasons,\"selectedCoach\":_vm.selectedCoach,\"selectedPlayer\":_vm.selectedPlayer},on:{\"change-head-coach\":_vm.changeHeadCoach,\"remove-coach\":_vm.removeCoach,\"remove-participant\":_vm.removeParticipant,\"add-coach\":_vm.addCoach,\"toggle-team\":_vm.toggleTeam,\"toggle-player-lock\":_vm.togglePlayerLock,\"toggle-player-position\":_vm.togglePlayerPosition,\"add-participant\":_vm.addParticipant}})],1)}),1),_c('modal-confirmation',{ref:\"addLinkedCoachConfirm\"})],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:\"team-card rounded\"},[_c('div',{staticClass:\"bg-dark p-2\"},[_c('a',{staticClass:\"float-right text-white\",on:{\"click\":_vm.toggleTeam}},[_vm._v(\"X\")]),_c('h5',{staticClass:\"m-0 text-white\"},[_c('span',{staticClass:\"mr-1\",on:{\"click\":function($event){return _vm.addSelectedCoachOrPlayer()}}},[(_vm.showAssignCoachOrPlayer)?_c('i',{staticClass:\"fas fa-sign-in-alt mr-1 clickable highlighted\"}):_vm._e()]),_c('a',{staticClass:\"text-white text-underline mr-1\",attrs:{\"href\":_vm.team.teamPageUrl,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.team.teamName))]),_c('i',{staticClass:\"small\"},[_vm._v(_vm._s(_vm.evalScore ? (\"[avg. eval score: \" + _vm.evalScore + \"]\") : ''))]),_c('i',{staticClass:\"small\"},[_vm._v(_vm._s(_vm.heightAvg ? (\" [avg. height: \" + _vm.heightAvg + \"]\") : ''))]),_c('i',{staticClass:\"small\"},[_vm._v(_vm._s(_vm.yearsExperienceAvg ? (\" [avg. yrs exp: \" + _vm.yearsExperienceAvg + \"]\") : ''))])]),(_vm.practiceInfo)?_c('p',{staticClass:\"text-light small m-0\"},[_vm._v(\"Practices \"+_vm._s(_vm.practiceInfo))]):_vm._e()]),_vm._m(0),_c('Container',{staticClass:\"px-2 pt-1 pb-4\",on:{\"shouldAcceptDrop\":_vm.acceptingCoaches,\"onDrop\":_vm.droppingCoaches}},_vm._l((_vm.team.coaches),function(coach){return _c('div',{key:coach.individualID,staticClass:\"row\"},[_c('div',{staticClass:\"col-6 pb-0\"},[_vm._v(_vm._s(coach.formattedNameFirstLast))]),_c('div',{staticClass:\"col-4 pb-0\"},[_c('input',{attrs:{\"type\":\"radio\",\"name\":(\"coach-\" + (_vm.team.teamID))},domProps:{\"checked\":coach.headCoach},on:{\"change\":function($event){return _vm.changeHeadCoach(_vm.team.teamID, coach.individualID)}}})]),_c('div',{staticClass:\"col-2 pb-0\"},[_c('i',{staticClass:\"fas fa-minus-circle clickable\",attrs:{\"title\":\"Remove from this team\"},on:{\"click\":function($event){return _vm.removeCoach(_vm.team.teamID, coach.individualID)}}})])])}),0),_c('div',{staticClass:\"d-flex blue-line py-2\"},[_c('div',{staticClass:\"header-gutter m-0 p-0\"}),_c('div',{staticClass:\"name ml-2 pl-1\"},[_vm._v(\"Participants \"+_vm._s(_vm.playerCount))]),(_vm.showScore && !_vm.isCheerSquad && _vm.isLeague && !_vm.isUpwardSelect)?_c('div',{staticClass:\"score text-center\"},[_vm._v(\" Eval Score \")]):_vm._e(),(_vm.showPosition && _vm.showingPosition && _vm.isLeague && !_vm.isUpwardSelect)?_c('div',{staticClass:\"position text-center pl-2\"},[_vm._v(\" \"+_vm._s(_vm.positionLabel)+\" \")]):_vm._e(),(_vm.showHeight && _vm.showingHeight)?_c('div',{staticClass:\"height text-center\"},[_vm._v(\"Height\")]):_vm._e(),(_vm.showGrade)?_c('div',{staticClass:\"grade text-center pl-2\"},[_vm._v(_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]):_vm._e(),(_vm.showExperience)?_c('div',{staticClass:\"height text-center pl-2\"},[_vm._v(\"Yrs Exp\")]):_vm._e(),(_vm.showExclude)?_c('div',{staticClass:\"height text-center pl-2\"},[_vm._v(\"Can't practice\")]):_vm._e(),_c('div',{staticClass:\"blank mr-2 pr-1\"})]),(_vm.isFiltering)?_c('div',{class:[_vm.isFiltering ? 'alert alert-warning p-0 m-0' : '']},[_c('div',{staticClass:\"text-center small\"},[_vm._v(\"FILTERING ON\")])]):_vm._e(),_c('Container',{staticClass:\"px-2 pt-1 pb-4\",attrs:{\"drag-class\":\"dragging\",\"drop-class\":\"dropping\",\"get-child-payload\":function (val) { return _vm.getParticipantPayload(val, _vm.team.teamID); },\"dragHandleSelector\":\".participant-drag-handle\"},on:{\"shouldAcceptDrop\":_vm.acceptingParticipants,\"onDrop\":_vm.droppingParticipants}},_vm._l((_vm.filteredParticipants),function(player){return _c('Draggable',{key:player.individualID},[_c('div',{staticClass:\"d-flex team-participant-element py-1 px-1\",attrs:{\"data-id\":player.individualID.toString()}},[_c('div',{staticClass:\"p-0 m-0 mr-2 participant-drag-handle\"},[_vm._v(\"⁞⁞\")]),_c('div',{staticClass:\"p-o m-0 mr-1\"},[_c('i',{class:player.gender == 'F' ? 'fas fa-female' : 'fas fa-male',attrs:{\"title\":player.gender == 'F' ? 'Girl' : 'Boy'}})]),_c('div',{staticClass:\"name\"},[_vm._v(_vm._s(player.lastName)+\", \"+_vm._s(player.firstName))]),(_vm.showScore && !_vm.isCheerSquad && _vm.isLeague && !_vm.isUpwardSelect)?_c('div',{staticClass:\"score text-center\"},[_vm._v(\" \"+_vm._s(player.evaluationScore)+\" \")]):_vm._e(),(_vm.showPosition && _vm.showingPosition && _vm.isLeague && !_vm.isUpwardSelect)?_c('div',{staticClass:\"position text-center\"},[_c('checkbox-input',{key:player.individualID,attrs:{\"value\":!!player.typePositionID},on:{\"change\":function($event){return _vm.positionToggle(player.individualID)}}})],1):_vm._e(),(_vm.showHeight && _vm.showingHeight)?_c('div',{staticClass:\"height text-center\"},[_vm._v(_vm._s(player.extraScore))]):_vm._e(),(_vm.showGrade)?_c('div',{staticClass:\"grade text-center\"},[_vm._v(\" \"+_vm._s(_vm.getProperGradeLabel(player.typeGradeID, _vm.isByAge, ''))+\" \")]):_vm._e(),(_vm.showExperience)?_c('div',{staticClass:\"experience text-center\"},[_vm._v(\" \"+_vm._s(_vm.playerYearsExperienceByTeamPlayer(player))+\" \")]):_vm._e(),(_vm.showExclude)?_c('div',{staticClass:\"exclusion text-center\"},[_vm._v(\" \"+_vm._s(_vm.playerExclusionByTeamPlayer(player))+\" \")]):_vm._e(),_c('div',{staticClass:\"actions text-right\"},[_c('div',{staticClass:\"pr-3 d-inline-block clickable\"},[_c('v-popover',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.notes(player)),expression:\"notes(player)\"}],attrs:{\"trigger\":\"click\"}},[_c('i',{staticClass:\"fas fa-sticky-note\"}),_c('template',{slot:\"popover\"},[_c('p',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"clickable\"},[_vm._v(\" \"+_vm._s(_vm.notes(player))+\" \")])])],2)],1),(_vm.isLeague)?_c('a',{staticClass:\"pr-3 d-inline-block\",staticStyle:{\"color\":\"black\"},attrs:{\"title\":_vm.locked(player) ? 'Unlock player from this team' : 'Lock player to this team'},on:{\"click\":function($event){return _vm.togglePlayerLock(player.individualID)}}},[(_vm.locked(player))?_c('i',{staticClass:\"fas fa-lock\"}):_c('i',{staticClass:\"fas fa-unlock\"})]):_vm._e(),_c('i',{staticClass:\"fas fa-minus-circle clickable pr-3\",attrs:{\"title\":\"Remove from this team\"},on:{\"click\":function($event){return _vm.removeParticipant(_vm.team.teamID, player.individualID)}}})]),_c('div',{staticClass:\"clickable\",attrs:{\"title\":\"Additional player info\"}},[_c('v-popover',{attrs:{\"trigger\":\"click\"}},[_c('i',{staticClass:\"fas fa-info-circle\"}),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"text-left clickable\"},[_c('div',{staticClass:\"text-center w-100 small font-weight-bold text-muted\"},[_vm._v(\" \"+_vm._s(player.formattedNameFirstLast)+\" \")]),_vm._l((_vm.playerInfo(player)),function(info){return _c('div',{key:info.label},[_c('span',{staticClass:\"text-muted pr-1\",class:info.value == ' ' ? '' : info.class},[_vm._v(_vm._s(info.label)+\":\")]),_c('span',[_vm._v(_vm._s(info.value == ' ' ? 'none' : info.value))])])})],2)])],2)],1)])])}),1)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row m-0 blue-line\"},[_c('div',{staticClass:\"col-6 p-0 pl-2\"},[_vm._v(\"Coaches\")]),_c('div',{staticClass:\"col-6 p-0\"},[_vm._v(\"Head Coach?\")])])}]\n\nexport { render, staticRenderFns }","import { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { TeamPlayerInfo } from '@/GeneratedTypes/ListInfo/TeamPlayerInfo'\n\nexport function TeamPlayerInfoToLeaguePlayerInfo(a: TeamPlayerInfo): LeaguePlayerInfo {\n return {\n leagueID: a.leagueID,\n accountNumber: null,\n typeGradeID: a.typeGradeID,\n medicalNotes: null,\n generalNotes: null,\n registrationTransactionID: 0,\n isImported: false,\n typeProgramID: a.typeProgramID,\n yearsExperience: 0,\n adminNotes: null,\n pendingCoachLinkIndividualID: 0,\n pendingCoachLinkFirstName: null,\n pendingCoachLinkLastName: null,\n active: true,\n registrationFeeExpectedToPay: 0,\n amountExpectedToPay: 0,\n amountPaid: 0,\n isPlayerSizingComplete: false,\n registrationCompletionInformation: null,\n evaluationScore: a.evaluationScore,\n positionScore: a.positionScore,\n athleticScore: a.athleticScore,\n hasBrokenCarpoolLink: false,\n hasBrokenCoachLink: false,\n actualCoachLinkIndividualID: 0,\n actualCoachLinkFirstName: null,\n actualCoachLinkLastName: null,\n actualCarpoolLinkIndividualID: 0,\n actualCarpoolLinkFirstName: null,\n actualCarpoolLinkLastName: null,\n extraScore: a.extraScore,\n practiceNightExclusions: null,\n products: null,\n individualID: a.individualID,\n firstName: a.firstName,\n lastName: a.lastName,\n middleInitial: a.middleInitial,\n gender: a.gender,\n birthDate: a.birthDate,\n churchName: a.churchName,\n addresses: a.addresses,\n phoneNumbers: a.phoneNumbers,\n emailAddresses: a.addresses,\n thirdPartyClientIDs: a.thirdPartyClientIDs,\n formattedNameFirstLast: a.formattedNameFirstLast,\n formattedNameLastFirst: a.formattedNameLastFirst,\n formattedNamePrivate: a.formattedNamePrivate,\n }\n}\n","import { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { TapeDownReasonEnum } from '@/lib/support/models/ListInfo/TeamPlayerInfo/data'\nimport { filterGrades } from '@/services/gradeService'\n\ninterface FillerPlayer {\n extraScore: number\n evaluationScore: number\n gender: string | null\n}\n\ninterface AssignedPlayer {\n typeTapeDownReasonID: string | null\n grade: string | null\n typeGradeID: string | null\n}\n\n/* \nFilters that apply to assigned participants (TeamPlayerInfo)\nand unassigned participants (LeaguePlayerInfo).\n*/\nexport function participantFilters(\n x: FillerPlayer,\n gender: string[],\n heightRange: number[],\n scoreRange: number[]\n) {\n let genderPasses = true\n let heightPasses = true\n let scorePasses = true\n if (gender) {\n genderPasses = gender.indexOf(x.gender ?? '') >= 0\n }\n heightPasses = x.extraScore >= heightRange[0] && x.extraScore <= heightRange[1]\n scorePasses = x.evaluationScore >= scoreRange[0] && x.evaluationScore <= scoreRange[1]\n\n return genderPasses && heightPasses && scorePasses\n}\n\n/*\nFilters that apply to unassigned participants only\n(LeaguePLayerInfo).\n*/\n\nexport function unassignedParticipantFilters(x: LeaguePlayerInfo, gradeRange: string[]) {\n return filterGrades(gradeRange[0], gradeRange[gradeRange.length - 1], x.typeGradeID)\n}\n\n/*\nFilters that apply to assigned participants only.\n*/\n\nexport function assignedParticipantFilter(x: AssignedPlayer, hideLocked: boolean, gradeRange: string[]) {\n let passesLocked = true\n let passesGrade = true\n if (hideLocked) {\n passesLocked = x.typeTapeDownReasonID != TapeDownReasonEnum.LOCKED_TO_TEAM\n }\n passesGrade = filterGrades(gradeRange[0], gradeRange[gradeRange.length - 1], x.typeGradeID)\n return passesLocked && passesGrade\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { getProps, useTeamCard } from '@/composables/TeamCard'\nimport { getTotalTeamHeight } from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport { TeamPlayerInfoToLeaguePlayerInfo } from '@/lib/support/models/TeamPlayerInfo/TeamPlayerInfoToLeaguePlayerInfo'\nimport { Container, ContainerProps, DropResult, Draggable } from 'vue-smooth-dnd'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { TeamPlayerInfo } from '@/GeneratedTypes/ListInfo/TeamPlayerInfo'\nimport { TapeDownReasonEnum } from '@/lib/support/models/ListInfo/TeamPlayerInfo/data'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\nimport { useManagerLogic } from '@/views/Programs/Divisions/TeamManagement/logic/ManagerLogic'\nimport { sortFunctions } from '@/views/Programs/Divisions/TeamManagement/logic/teamSort'\nimport {\n participantFilters,\n assignedParticipantFilter,\n} from '@/views/Programs/Divisions/TeamManagement/logic/participantFilters'\n\nimport store from '@/store'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\nimport { UpwardPositionTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPositionTypeID'\nimport { isCheer } from '@/lib/common/ProgramTypes'\nimport { getProperGradeLabel } from '@/services/gradeService'\n\nexport default defineComponent({\n name: 'TeamCard',\n components: { Container, Draggable, CheckboxInput },\n props: {\n selectedPlayer: { type: Object as PropType, required: false, default: () => null },\n ...getProps(),\n },\n setup(props, ctx) {\n const {\n showAssignCoach,\n evalScore,\n yearsExperienceAvg,\n practiceInfo,\n acceptingCoaches,\n droppingCoaches,\n changeHeadCoach,\n removeCoach,\n } = useTeamCard(props, ctx)\n\n const userPrefs = userPreferences()\n const manager = useManagerLogic()\n\n const showScore = computed(() => userPrefs.getTeamColumns.value.find((c) => c.id == 'score')?.value)\n\n const showPosition = computed(() => userPrefs.getTeamColumns.value.find((c) => c.id == 'position')?.value)\n\n const showHeight = computed(() => userPrefs.getTeamColumns.value.find((c) => c.id == 'height')?.value)\n\n const showExperience = computed(\n () => userPrefs.getTeamColumns.value.find((c) => c.id == 'experience')?.value\n )\n\n const showGrade = computed(() => userPrefs.getTeamColumns.value.find((c) => c.id == 'grade')?.value)\n\n const showExclude = computed(\n () => userPrefs.getTeamColumns.value.find((c) => c.id == 'cannot practice on')?.value\n )\n\n const isByAge = computed(() => userPrefs.getIsByAge.value)\n\n const showingHeight = computed(() => props.team.typeProgramID == 'BASKETBALL')\n\n const isFiltering = computed(() => userPrefs.getIsFilteringTeams.value)\n\n const assignedParticipantSort = computed(() => userPrefs.getTeamSort.value)\n\n const isLeague = computed(\n () => store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE\n )\n\n const isUpwardSelect = computed(() => store.getters.leagueAbstraction.isUpwardSelect)\n\n const filteredParticipants = computed(() => {\n let p = props.team.players ?? []\n if (userPrefs.getFilterTarget.value != 'UNASSIGNED') {\n p = p\n ?.filter((p) =>\n participantFilters(\n p,\n userPrefs.getGender.value ?? [],\n userPrefs.getHeightRange.value,\n userPrefs.getScoreRange.value\n )\n )\n .filter((p) =>\n assignedParticipantFilter(p, userPrefs.getHideLocked.value, userPrefs.getGradeRange.value)\n )\n .sort((a: TeamPlayerInfo, b: TeamPlayerInfo) => {\n const fnc = sortFunctions[assignedParticipantSort.value]\n const isDesc = assignedParticipantSort.value.indexOf('_desc') > 0\n return fnc(a, b, isDesc)\n })\n }\n return p.map((x) => {\n return {\n ...x,\n ageByCutoff: store.getters.gradeTypes.byUpwardTypeId(x.typeGradeID)?.ageByCutoff ?? '',\n }\n })\n })\n\n /**\n * Returns a description of the player count\n */\n const playerCount = computed(() => {\n if (props.team.players?.length) {\n const boysCount = props.team.players.filter((x) => x.gender == 'M').length\n const girlsCount = props.team.players.filter((x) => x.gender == 'F').length\n\n if (girlsCount && boysCount) {\n const boysString = boysCount === 1 ? `${boysCount} boy` : `${boysCount} boys`\n const girlsString = girlsCount === 1 ? `${girlsCount} girl` : `${girlsCount} girls`\n\n return `(${boysString} ${girlsString})`\n }\n\n return `(${boysCount + girlsCount})`\n }\n return '' // no players\n })\n\n /***\n * Returns a height for basketball teams or nothing.\n */\n const heightAvg = computed(() => {\n if (showingHeight.value && props.team.players?.length) {\n const score = getTotalTeamHeight(props.team) / props.team.players?.length\n\n if (score && score >= 0) {\n return score?.toFixed(2)\n }\n }\n return ''\n })\n\n function notes(p: TeamPlayerInfo) {\n const trr = props.tapeDownReasons.find((x) => x.upwardTypeID == p.typeTapeDownReasonID)\n if (trr && p.typeTapeDownReasonID != 'LOCKEDTOTEAM') {\n switch (p.typeTapeDownReasonID) {\n case 'CARPOOLLINK':\n return (\n trr.verbiageTemplate\n ?.replaceAll('{0}', p.formattedNameFirstLast ?? '')\n .replaceAll('{1}', linkedToPlayer(p) ?? '') ?? ''\n )\n default:\n return (\n trr.verbiageTemplate\n ?.replaceAll('{0}', p.formattedNameFirstLast ?? '')\n .replaceAll('{1}', props.team.teamName ?? '') ?? ''\n )\n }\n }\n return ''\n }\n\n function linkedToPlayer(p: TeamPlayerInfo) {\n const participant = manager.participants.value.find((fp) => fp.individualID == p.individualID)\n return participant\n ? `${participant.actualCarpoolLinkFirstName} ${participant.actualCarpoolLinkLastName}`\n : 'carpool link not found'\n }\n\n function playerYearsExperienceByTeamPlayer(player: TeamPlayerInfo) {\n const p = manager.participants.value.find(\n (pp) => pp.individualID === player.individualID\n ) as LeaguePlayerInfo\n\n return p.yearsExperience\n }\n\n function playerExclusionByLeaguePlayer(p: LeaguePlayerInfo, useShort: boolean) {\n return p.practiceNightExclusions && p.practiceNightExclusions.length\n ? (useShort\n ? p.practiceNightExclusions[0].typeDayID?.substring(0, 3)\n : p.practiceNightExclusions[0].typeDayID) ?? ''\n : useShort\n ? ''\n : 'none'\n }\n\n function playerExclusionByTeamPlayer(player: TeamPlayerInfo) {\n const p = manager.participants.value.find(\n (pp) => pp.individualID === player.individualID\n ) as LeaguePlayerInfo\n\n return playerExclusionByLeaguePlayer(p, true)\n }\n\n function playerInfo(player: TeamPlayerInfo) {\n const p = manager.participants.value.find(\n (pp) => pp.individualID === player.individualID\n ) as LeaguePlayerInfo\n\n if (!p) return\n const list: { label: string; value: string; class: string }[] = []\n list.push({ label: 'Experience', value: `${p.yearsExperience.toString()} yr(s)`, class: '' })\n list.push({ label: 'Gender', value: p.gender == 'F' ? 'girl' : 'boy', class: '' })\n list.push({\n label: isByAge.value ? 'Age' : 'Grade',\n value: isByAge.value\n ? store.getters.gradeTypes.byUpwardTypeId(p.typeGradeID)?.ageByCutoff ?? ''\n : store.getters.gradeTypes.byUpwardTypeId(p.typeGradeID)?.description ?? p.typeGradeID,\n class: '',\n })\n\n const exclusion = playerExclusionByLeaguePlayer(p, false)\n\n list.push({ label: 'Exclusion', value: exclusion, class: '' })\n\n list.push({\n label: 'Coach Link',\n value: `${p.actualCoachLinkFirstName} ${p.actualCoachLinkLastName}`,\n class: 'd-block',\n })\n\n list.push({\n label: 'Carpool Link',\n value: `${p.actualCarpoolLinkFirstName} ${p.actualCarpoolLinkLastName}`,\n class: 'd-block',\n })\n\n return list\n }\n\n const isCheerSquad = computed(() => isCheer(props.team.typeProgramID))\n\n function locked(t: TeamPlayerInfo) {\n return t.typeTapeDownReasonID == TapeDownReasonEnum.LOCKED_TO_TEAM\n }\n\n function droppingParticipants(e: DropResult) {\n if (e.addedIndex != null && e.addedIndex >= 0 && e.payload?.participant) {\n let p = e.payload.participant as LeaguePlayerInfo | TeamPlayerInfo\n const exists = props.team.players?.find((player) => player.individualID == p.individualID)\n if (exists) return\n\n if (e.payload.originator == 'team') {\n const teamParticipant = e.payload.participant as TeamPlayerInfo\n p = TeamPlayerInfoToLeaguePlayerInfo(teamParticipant)\n removeParticipant(teamParticipant.teamID, p.individualID)\n } else {\n p = e.payload.participant as LeaguePlayerInfo\n }\n ctx.emit('add-participant', props.team.teamID, p)\n }\n }\n\n function acceptingParticipants(e: ContainerProps, a: Record) {\n return a && a.participant\n }\n\n function getParticipantPayload(index: number) {\n const payload = filteredParticipants.value[index]\n return { order: index, participant: { ...payload }, originator: 'team' }\n }\n\n function removeParticipant(teamID: number, participantID: number) {\n ctx.emit('remove-participant', teamID, participantID)\n }\n\n function togglePlayerLock(playerId: number) {\n ctx.emit('toggle-player-lock', props.team.teamID, playerId)\n }\n\n function toggleTeam() {\n ctx.emit('toggle-team', props.team.teamID)\n }\n\n const showAssignCoachOrPlayer = computed(() => showAssignCoach.value || props.selectedPlayer)\n\n function addSelectedCoachOrPlayer() {\n if (props.selectedCoach) {\n ctx.emit('add-coach', props.team.teamID, props.selectedCoach)\n }\n\n if (props.selectedPlayer) {\n ctx.emit('add-participant', props.team.teamID, props.selectedPlayer)\n }\n }\n\n const positionType = computed(() => {\n return store.getters.positionTypes.allItems.find(\n (x: UpwardPositionTypeID) => x.typeProgramID == props.team.typeProgramID\n )\n })\n\n const showingPosition = computed(() => !!positionType.value)\n\n const positionLabel = computed(() => (!!positionType.value ? positionType.value.description : ''))\n\n function positionToggle(playerID: number) {\n ctx.emit('toggle-player-position', props.team.teamID, playerID)\n }\n\n return {\n toggleTeam,\n addSelectedCoachOrPlayer,\n showAssignCoachOrPlayer,\n evalScore,\n heightAvg,\n yearsExperienceAvg,\n practiceInfo,\n acceptingCoaches,\n droppingCoaches,\n changeHeadCoach,\n removeCoach,\n playerCount,\n showScore,\n isCheerSquad,\n isLeague,\n isUpwardSelect,\n isByAge,\n showPosition,\n showingPosition,\n positionLabel,\n showHeight,\n showingHeight,\n showGrade,\n showExperience,\n showExclude,\n isFiltering,\n acceptingParticipants,\n droppingParticipants,\n getParticipantPayload,\n filteredParticipants,\n positionToggle,\n playerYearsExperienceByTeamPlayer,\n playerExclusionByTeamPlayer,\n notes,\n togglePlayerLock,\n locked,\n removeParticipant,\n playerInfo,\n getProperGradeLabel,\n }\n },\n})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, PropType, ref, watch, reactive, onMounted } from '@vue/composition-api'\n\nimport ParticipantList from '@/views/Programs/Divisions/TeamManagement/vues/ParticipantList.vue'\nimport PlayerConflictList from '@/views/Programs/Divisions/TeamManagement/vues/PlayerConflictList.vue'\nimport CoachConflictList from '@/views/Programs/Divisions/TeamManagement/vues/CoachConflictList.vue'\nimport CoachList from '@/views/Programs/Divisions/common/vue/CoachList.vue'\nimport TabMenu from '@/views/Programs/Divisions/TeamManagement/vues/TabMenu.vue'\nimport UnassignDivisionParticipants from '@/views/Programs/Divisions/TeamManagement/vues/UnassignDivisionParticipants.vue'\nimport TeamToggle from '@/views/Programs/Divisions/common/vue/TeamToggle.vue'\nimport SideBySideScroll from '@/elements/SideBySideScroll.vue'\nimport ColumnSelector from '@/views/Programs/Divisions/TeamManagement/vues/ColumnSelector.vue'\nimport TeamColumnSelector from '@/views/Programs/Divisions/TeamManagement/vues/TeamColumnSelector.vue'\nimport ParticipantSort from '@/views/Programs/Divisions/TeamManagement/vues/ParticipantSort.vue'\nimport PlayerConflictFilter from '@/views/Programs/Divisions/TeamManagement/vues/PlayerConflictFilter.vue'\nimport CoachConflictFilter from '@/views/Programs/Divisions/TeamManagement/vues/CoachConflictFilter.vue'\nimport TeamSort from '@/views/Programs/Divisions/TeamManagement/vues/TeamSort.vue'\nimport TeamListSort from '@/views/Programs/Divisions/TeamManagement/vues/TeamListSort.vue'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\nimport TeamCardField from '@/views/Programs/Divisions/TeamManagement/vues/TeamCardField.vue'\nimport ShowToggle from '@/elements/ShowToggle.vue'\nimport DraftOptionsInfo from '@/views/Programs/Divisions/TeamManagement/DraftOptionsInfo.vue'\nimport Loading from '@/elements/Loading.vue'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\n\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { PlayerConflictInfo } from '@/GeneratedTypes/ListInfo/PlayerConflictInfo'\nimport { CoachConflictInfo } from '@/GeneratedTypes/ListInfo/CoachConflictInfo'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\n\nimport { useManagerLogic } from '@/views/Programs/Divisions/TeamManagement/logic/ManagerLogic'\nimport { sortFunctions } from '@/views/Programs/Divisions/TeamManagement/logic/participantSort'\nimport {\n participantFilters,\n unassignedParticipantFilters,\n} from '@/views/Programs/Divisions/TeamManagement/logic/participantFilters'\n\nimport participantsClient from '@/clients/participantsClient'\nimport volunteersClient from '@/clients/volunteersClient'\nimport store from '@/store'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\n\nexport enum tmTabType {\n COACHES = 'C',\n PARTICIPANTS = 'P',\n}\n\nexport default defineComponent({\n props: {\n division: { type: Object as PropType, required: true },\n programID: { type: String, required: true },\n },\n components: {\n TeamCardField,\n TabMenu,\n CoachList,\n ParticipantList,\n PlayerConflictList,\n CoachConflictList,\n SideBySideScroll,\n UnassignDivisionParticipants,\n TeamToggle,\n ColumnSelector,\n TeamColumnSelector,\n ParticipantSort,\n PlayerConflictFilter,\n CoachConflictFilter,\n ShowToggle,\n DraftOptionsInfo,\n Loading,\n SwitchSlot,\n TeamSort,\n TeamListSort,\n },\n\n setup(props, ctx) {\n const sideBySide = ref(null)\n const currentTab = ref(tmTabType.PARTICIPANTS)\n const resize = ref(true)\n const showDraftChoice = ref(false)\n const userWantsManualDraft = ref(false)\n const sideBySideState = reactive({ left: true, right: true })\n const playerConflicts = ref([])\n const coachConflicts = ref([])\n const upwardLeagueID = ref(props.division.upwardLeagueID)\n const manager = useManagerLogic()\n const {\n getSort,\n getTeamSort,\n getFilterTarget,\n getGender,\n getHeightRange,\n getScoreRange,\n getGradeRange,\n getIsFilteringUnassigned,\n currentFilters,\n getIsFilteringTeams,\n getShowHeader,\n setShowHeader,\n setTeamListSort,\n setIsByAge,\n getTeamListSort,\n } = userPreferences()\n\n const teamOptions = [\n { text: 'show/hide teams', value: 'team-toggle' },\n { text: 'show/hide fields', value: 'team-field-toggle' },\n { text: 'sort assigned participants', value: 'sort-assigned' },\n { text: 'sort teams', value: 'sort-teams' },\n { text: 'remove all', value: 'remove-all' },\n { text: 'none', value: 'hide-all' },\n ]\n const teamSwitch = ref(teamOptions[0].value)\n\n const playerOptions = [\n { text: 'show/hide fields', value: 'field-toggle' },\n { text: 'sort unassigned participants', value: 'sort-unassigned' },\n { text: 'none', value: 'hide-all' },\n { text: 'show conflicts', value: 'show-conflicts' },\n ]\n\n const coachOptions = [\n { text: 'all coaches', value: 'all-coaches' },\n { text: 'show conflicts', value: 'show-coach-conflicts' },\n ]\n\n let lastPlayerOption = playerOptions[0].value\n let lastCoachOption = coachOptions[0].value\n\n const unassignedOptions = ref(playerOptions)\n\n const unassignedSwitch = ref(lastPlayerOption)\n\n const selectedCoach = ref(null)\n const selectedPlayer = ref(null)\n const coachListChildRef = ref()\n const playerListChildRef = ref()\n\n onMounted(() => setIsByAge(store.getters.leagueAbstraction.isByAge))\n\n const participantsNotAssigned = computed(() => {\n const sort = getSort.value\n const isFilteringUnassigned = getFilterTarget.value != 'TEAMS'\n\n // General filtering\n const x = manager.participants.value.filter((x) => {\n const notInTeam = manager.participantsInTeams.value.indexOf(x.individualID) < 0\n const inProgram = x.typeProgramID == props.programID\n const inGender = props.division.gender == 'E' || x.gender === props.division.gender\n const inGrade =\n props.division?.grades?.length &&\n props.division.grades.findIndex((y) => x?.typeGradeID == y?.typeGradeID) >= 0\n return inProgram && inGrade && notInTeam && inGender\n })\n\n //Sorting\n let participants = x.sort((a: LeaguePlayerInfo, b: LeaguePlayerInfo) => {\n const fnc = sortFunctions[sort]\n const isDesc = sort.indexOf('_desc') > 0\n return fnc(a, b, isDesc)\n })\n\n //Filtering based on user selections\n if (isFilteringUnassigned) {\n return participants\n .filter((p) => {\n return participantFilters(p, getGender.value ?? [], getHeightRange.value, getScoreRange.value)\n })\n .filter((x) => unassignedParticipantFilters(x, getGradeRange.value))\n }\n return participants\n })\n\n function toggled(value: boolean) {\n resize.value = !!resize.value\n setShowHeader(value)\n ctx.emit('toggleHeader', value)\n if (sideBySide && sideBySide.value && sideBySide.value.data) {\n sideBySide.value.data.dimensions()\n }\n }\n\n const showFilters = computed(() => {\n const filtering = getIsFilteringUnassigned.value || getIsFilteringTeams.value\n return !loading.value && filtering\n })\n\n const loading = computed(() => manager.refreshing.value)\n // const participantsLoading = computed(() => manager.participantsRefreshing)\n const managerReady = computed(\n () => !manager.coachRefreshing.value && !manager.participantsRefreshing.value\n )\n\n function sideBySideStateChange(state: { left: boolean; right: boolean }) {\n sideBySideState.left = state.left\n sideBySideState.right = state.right\n }\n\n const showingTeamsOnly = computed(() => {\n return sideBySideState.left == false && sideBySideState.right === true\n })\n\n const draftedCount = computed(() => manager.draftedParticipantCount.value)\n\n function setShowDraftChoice() {\n if (\n isLeague.value &&\n currentTab.value == 'P' &&\n manager.draftedParticipantCount.value <= 0 &&\n !userWantsManualDraft.value\n ) {\n showDraftChoice.value = true\n } else {\n showDraftChoice.value = false\n }\n }\n\n function hideDraftChoice() {\n userWantsManualDraft.value = true\n setShowDraftChoice()\n }\n\n async function refreshConflicts() {\n let conflicts =\n (await participantsClient.retrievePlayerConflicts(\n props.division.upwardLeagueID!,\n props.programID,\n props.division.divisionID\n )) ?? []\n\n if (conflicts.length > 0) {\n conflicts.sort((a: PlayerConflictInfo, b: PlayerConflictInfo) => {\n return a?.formattedNameLastFirst?.localeCompare(b?.formattedNameLastFirst ?? '') ?? 0\n })\n }\n\n playerConflicts.value = conflicts\n\n let newCoachConflicts =\n (await volunteersClient.retrieveCoachConflicts(props.division.upwardLeagueID!)) ?? []\n\n /* no need to sort these since we lose the sorting downstream\n if (newCoachConflicts.length > 0) {\n newCoachConflicts.sort((a: CoachConflictInfo, b: CoachConflictInfo) => {\n return a?.formattedNameLastFirst?.localeCompare(b?.formattedNameLastFirst ?? '') ?? 0\n })\n }\n */\n\n coachConflicts.value = newCoachConflicts\n }\n\n const isLeague = computed(\n () => store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE\n )\n\n watch(\n () => manager.teamStructureChanging.value,\n async () => {\n if (!manager.teamStructureChanging.value) {\n await refreshConflicts()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => currentTab.value,\n async () => {\n if (currentTab.value == 'P') {\n unassignedOptions.value = playerOptions\n unassignedSwitch.value = lastPlayerOption\n } else {\n unassignedOptions.value = coachOptions\n unassignedSwitch.value = lastCoachOption\n }\n\n if (sideBySide && sideBySide.value && sideBySide.value.data) {\n sideBySide.value.data.dimensions()\n }\n setShowDraftChoice()\n await manager.setCurrentView(currentTab.value)\n if (currentTab.value == 'C') {\n playerListChildRef.value?.clearSelectedPlayer()\n }\n if (currentTab.value == 'P') {\n coachListChildRef.value?.clearSelectedCoach()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => unassignedSwitch.value,\n () => {\n if (unassignedSwitch.value === 'show-conflicts') {\n playerListChildRef.value?.clearSelectedPlayer()\n }\n\n if (currentTab.value == 'P') {\n lastPlayerOption = unassignedSwitch.value\n } else {\n lastCoachOption = unassignedSwitch.value\n }\n }\n )\n\n watch(\n () => draftedCount.value,\n () => {\n setShowDraftChoice()\n },\n { immediate: true }\n )\n\n watch(\n () => props.division,\n () => {\n userWantsManualDraft.value = false\n setShowDraftChoice()\n }\n )\n\n watch(\n () => props.programID,\n () => {\n userWantsManualDraft.value = false\n setShowDraftChoice()\n }\n )\n\n const sortTeamBy = computed({\n get(): string {\n return getTeamListSort.value\n },\n set(sortBy: string) {\n setTeamListSort(sortBy)\n },\n })\n\n function selectCoach(coach: LeagueCoachProgramInfoFLAT | null) {\n selectedCoach.value = coach\n }\n\n function addCoach() {\n coachListChildRef.value?.clearSelectedCoach()\n }\n\n function selectPlayer(player: LeaguePlayerInfo | null) {\n selectedPlayer.value = player\n }\n\n function addPlayer() {\n playerListChildRef.value?.clearSelectedPlayer()\n }\n\n return {\n ...manager,\n currentFilters,\n currentTab,\n participantsNotAssigned,\n getIsFilteringUnassigned,\n getIsFilteringTeams,\n showHeader: computed(() => getShowHeader.value),\n coachesInDivision: computed(() =>\n (manager.coaches.value ?? []).filter((x) => x.typeProgramID == props.programID)\n ),\n teamsChecked: computed(() => manager.teamsOnField.value?.map((x) => x.teamID) ?? []),\n toggled,\n sideBySide,\n showingTeamsOnly,\n sideBySideStateChange,\n showFilters,\n draftedCount,\n showDraftChoice,\n hideDraftChoice,\n userWantsManualDraft,\n managerReady,\n teamOptions,\n teamSwitch,\n unassignedOptions,\n unassignedSwitch,\n getTeamSort,\n playerConflicts,\n coachConflicts,\n upwardLeagueID,\n refreshConflicts,\n isLeague,\n sortTeamBy,\n selectedCoach,\n selectCoach,\n addCoach,\n coachListChildRef,\n selectedPlayer,\n selectPlayer,\n addPlayer,\n playerListChildRef,\n }\n },\n})\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!./TeamCard.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!./TeamCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamCard.vue?vue&type=template&id=2a4e4e1f&scoped=true&\"\nimport script from \"./TeamCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TeamCard.vue?vue&type=style&index=0&id=2a4e4e1f&lang=scss&scoped=true&\"\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 \"2a4e4e1f\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport TeamCard from '@/views/Programs/Divisions/TeamManagement/vues/TeamCard.vue'\nimport { cloneDeep, difference } from 'lodash'\n\nimport { Container, ContainerProps, Draggable, DropResult } from 'vue-smooth-dnd'\nimport { defineComponent, PropType, ref, watch, computed } from '@vue/composition-api'\nimport { useManagerLogic } from '@/views/Programs/Divisions/TeamManagement/logic/ManagerLogic'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\nimport { getEmptyDivisionTeamInfo } from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport { UpwardTapeDownReasonTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardTapeDownReasonTypeID'\nimport { sortFunctions } from '@/views/Programs/Divisions/TeamManagement/logic/teamSort'\nimport { TeamOrderType } from '@/views/Programs/Divisions/TeamManagement/types/TeamOrderType'\nimport {\n getTotalTeamEvalScore,\n getTotalYearsExperience,\n} from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport ModalConfirmation from '@/components/ModalConfirmation.vue'\n\nexport default defineComponent({\n name: 'TeamCardField',\n\n components: { Draggable, Container, TeamCard, ModalConfirmation },\n props: {\n teams: { required: true, type: Array as PropType },\n vertical: { required: false, default: true, type: Boolean },\n tapeDownReasons: {\n required: true,\n type: Array as PropType,\n default: () => [],\n },\n selectedCoach: { required: false, default: null, type: Object as PropType },\n selectedPlayer: { required: false, default: null, type: Object as PropType },\n approvedCoaches: {\n required: false,\n type: Array as PropType,\n },\n },\n setup(props, ctx) {\n const userPrefs = userPreferences()\n let teamOrder = ref([])\n const manager = useManagerLogic()\n const innerCoaches = ref(\n props.approvedCoaches ?? ([] as LeagueCoachProgramInfoFLAT[])\n )\n /**\n * Pulls the payload out of the container based on the index\n */\n function getPayload(index: number) {\n return teamOrder.value.find((x) => x.order == index)\n }\n\n const gridClass = computed(() => {\n if (props.vertical) return ''\n\n let selectedColumns = userPrefs.getTeamColumns.value.filter((c) => c.value)\n if (!userPrefs.usingHeight.value) selectedColumns = selectedColumns.filter((c) => c.label != 'height')\n if (!userPrefs.usingPosition.value)\n selectedColumns = selectedColumns.filter((c) => c.label != 'position')\n if (!userPrefs.usingScore.value) selectedColumns = selectedColumns.filter((c) => c.label != 'score')\n\n const showPosition = selectedColumns.find((c) => c.label == 'position')?.value ?? false\n\n return selectedColumns.length > 3 && showPosition\n ? 'grid-wide-position'\n : selectedColumns.length > 3\n ? 'grid-wide'\n : 'grid'\n })\n\n /**\n * Lets us know if the payload will be accepted\n */\n function accepting(a: ContainerProps, info: Record) {\n if (info && info.team) {\n return true\n }\n }\n\n const sorter = computed(() => {\n return (a: TeamOrderType, b: TeamOrderType) => {\n const fnc = sortFunctions[userPrefs.getTeamListSort.value]\n const isDesc = userPrefs.getTeamListSort.value.indexOf('_desc') > 0\n return fnc(a, b, isDesc)\n }\n })\n\n const toggleTeam = (teamID: number) => ctx.emit('toggle-team', teamID)\n const ordersort = (a: TeamOrderType, b: TeamOrderType) =>\n a.order == b.order ? 0 : a.order > b.order ? 1 : -1\n /**\n * action for when something is dropped on the field, in this case for reorder.\n */\n function onDrop(movedEvent: DropResult) {\n const addedTeam = (movedEvent.payload as unknown) as TeamOrderType\n\n //sanity check here.\n if (addedTeam.team && movedEvent.addedIndex != null && movedEvent.addedIndex >= 0) {\n // thing moved card drop, or nothing if external drop\n let displacedTeam = getPayload(movedEvent.removedIndex)\n\n // remove the displaced team if it exists.\n if (displacedTeam) {\n teamOrder.value = teamOrder.value.filter((x) => x.order != displacedTeam!.order)\n }\n //remap order based on index added\n teamOrder.value = teamOrder.value.map((x) => ({\n ...x,\n order: x.order >= movedEvent.addedIndex ? x.order + 1 : x.order,\n }))\n // now have room to add in the new team with index\n teamOrder.value.push({\n order: movedEvent.addedIndex,\n teamAvgEvalScore: addedTeam.teamAvgEvalScore,\n teamAvgYearsExperience: addedTeam.teamAvgYearsExperience,\n team: addedTeam.team,\n })\n //reset order.\n let order = 0\n teamOrder.value = teamOrder.value.sort(ordersort).map((x) => ({\n order: order++,\n team: x.team,\n teamAvgEvalScore: x.teamAvgEvalScore,\n teamAvgYearsExperience: x.teamAvgYearsExperience,\n }))\n }\n //set a list of teams currently on the field, syncs checkboxes on the list.\n manager.setTeamsOnField(teamOrder.value.map((x) => x.team.teamID))\n }\n watch(\n () => props.teams,\n () => {\n //teamOrder is pre-sorted\n\n const hasTeams = teamOrder.value.map((x) => x.team.teamID) // our current team ids\n const newTeams = props.teams.map((x) => x.teamID)\n const addTeams = difference(newTeams, hasTeams)\n const removeTeams = difference(hasTeams, newTeams)\n\n let order = 0\n let teamsCopy = cloneDeep(teamOrder.value)\n let propCopy = cloneDeep(props.teams)\n\n teamOrder.value = [\n ...teamsCopy\n .filter((x) => removeTeams.indexOf(x.team.teamID) < 0)\n .map((x) => ({\n order: x.order + addTeams.length,\n teamAvgEvalScore: 0,\n teamAvgYearsExperience: 0,\n // clone the team passed in teams will change and get passed in updated but order should not change\n team: cloneDeep(propCopy.find((y) => y.teamID == x.team.teamID) ?? getEmptyDivisionTeamInfo()),\n })),\n ...propCopy\n .filter((x) => addTeams.indexOf(x.teamID) >= 0)\n .map((x) => ({\n order: order++,\n team: x,\n teamAvgEvalScore: getTotalTeamEvalScore(x) / (x.players ?? []).length,\n teamAvgYearsExperience: getTotalYearsExperience(x) / (x.players ?? []).length,\n })),\n ].sort(sorter.value)\n },\n { immediate: true }\n )\n\n watch(\n () => userPrefs.getTeamListSort.value,\n () => {\n teamOrder.value.sort(sorter.value)\n },\n { immediate: true }\n )\n watch(\n () => props.approvedCoaches,\n () => {\n innerCoaches.value = props.approvedCoaches ?? ([] as LeagueCoachProgramInfoFLAT[])\n },\n { immediate: true, deep: true }\n )\n const getApprovedCoach = (coachID: number): LeagueCoachProgramInfoFLAT | null => {\n return innerCoaches.value.find((c) => c.individualID == coachID) ?? null\n }\n const addLinkedCoachPrompt = (\n coach: LeagueCoachProgramInfoFLAT\n ): Promise => {\n const shouldPrompt = coach.coachLinkID > 0\n if (!shouldPrompt) return Promise.resolve(null)\n const approved = getApprovedCoach(coach.coachLinkID)\n const message = approved\n ? `Would you also like to add ${coach.coachLinkFirstName} ${coach.coachLinkLastName} to this team as a linked coach?`\n : `${coach.coachLinkFirstName} ${coach.coachLinkLastName} is a linked coach but is not approved. If you want to add ${coach.coachLinkFirstName} ${coach.coachLinkLastName} as a coach for any team, you must approve them first.`\n const confirm = ctx.refs.addLinkedCoachConfirm as any\n return confirm\n .show(message, {\n title: 'Add Linked Coach',\n okLabel: !approved ? 'Ok' : 'Yes',\n cancelLabel: !approved ? 'Cancel' : 'No',\n showCancel: !!approved,\n isSmall: true,\n })\n .then((yes: boolean) => {\n return yes ? approved : null\n })\n }\n async function addCoach(teamID: number, coach: LeagueCoachProgramInfoFLAT) {\n await manager\n .addCoachToTeam(teamID, coach)\n .then(() => {\n return addLinkedCoachPrompt(coach)\n })\n .then((linked) => {\n return !linked ? Promise.resolve() : manager.addCoachToTeam(teamID, linked)\n })\n ctx.emit('add-coach', teamID, coach)\n }\n\n function addParticipant(teamID: number, player: LeaguePlayerInfo) {\n manager.addParticipantToTeam(teamID, player)\n ctx.emit('add-player', teamID, player)\n }\n\n return {\n teamOrder,\n getPayload,\n accepting,\n onDrop,\n gridClass,\n toggleTeam,\n togglePlayerLock: manager.togglePlayerLock,\n togglePlayerPosition: manager.togglePlayerPosition,\n changeHeadCoach: manager.changeHeadCoach,\n addCoach,\n removeCoach: manager.removeCoach,\n addParticipant,\n removeParticipant: manager.removeParticipant,\n }\n },\n})\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!./TeamCardField.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!./TeamCardField.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamCardField.vue?vue&type=template&id=6a7bb770&scoped=true&\"\nimport script from \"./TeamCardField.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamCardField.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TeamCardField.vue?vue&type=style&index=0&id=6a7bb770&lang=scss&scoped=true&\"\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 \"6a7bb770\",\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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row bg-white\"},[_vm._m(0),_c('div',{staticClass:\"col-12 col-md-6\"},[_c('div',{staticClass:\"border shadow p-4 mr-3\"},[_c('h6',[_vm._v(\"Automatic Draft\")]),_c('p',[_vm._v(\" Draft all your participants in this division automatically. Automatic draft creates balanced teams while respecting coach and carpool links when possible. After the automatic draft, you are free to reassign participants. \")]),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function () { return _vm.$emit('autoDraft'); }}},[_c('i',{staticClass:\"fas fa-clipboard-check\"}),_vm._v(\" Auto Draft Participants \")])])]),_c('div',{staticClass:\"col-12 col-md-6\"},[_c('div',{staticClass:\"border shadow p-4 mr-3 d-flex flex-column\",staticStyle:{\"height\":\"100%\"}},[_c('h6',[_vm._v(\"Manual Draft\")]),_c('p',{staticStyle:{\"flex-grow\":\"1\"}},[_vm._v(\" Draft your participants manually by dragging and dropping each one onto a team. \")]),_c('div',[_c('button',{staticClass:\"btn btn-outline-dark\",on:{\"click\":_vm.manual}},[_vm._v(\"Manually Draft Participants\")])])])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12\"},[_c('h5',{staticClass:\"text-primary\"},[_vm._v(\"This division is ready to draft participants\")]),_c('div',{staticClass:\"text-muted small font-italic\"},[_vm._v(\" Do you want to conduct your draft automatically or manually? \")])])}]\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\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'DraftOptionSelect',\n setup(props, ctx) {\n function manual() {\n ctx.emit('manualDraft')\n }\n\n return { manual }\n },\n})\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!./DraftOptionsInfo.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!./DraftOptionsInfo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DraftOptionsInfo.vue?vue&type=template&id=34240ba8&\"\nimport script from \"./DraftOptionsInfo.vue?vue&type=script&lang=ts&\"\nexport * from \"./DraftOptionsInfo.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 { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { sortGrades } from '@/services/gradeService'\n\nconst sortByGrades = (a: LeaguePlayerInfo, b: LeaguePlayerInfo, isDesc: boolean): number => {\n if (!a.typeGradeID || !b.typeGradeID) return 0\n const r = sortGrades(a.typeGradeID, b.typeGradeID)\n return isDesc ? r * -1 : r\n}\n\nconst sortName = (a: LeaguePlayerInfo, b: LeaguePlayerInfo, isDesc: boolean): number => {\n const r = a?.formattedNameLastFirst?.localeCompare(b?.formattedNameLastFirst ?? '') ?? 0\n return isDesc ? r * -1 : r\n}\n\nconst sortScore = (a: LeaguePlayerInfo, b: LeaguePlayerInfo, isDesc: boolean): number => {\n const r = a.evaluationScore - b.evaluationScore\n return isDesc ? r * -1 : r\n}\n\nconst sortHeight = (a: LeaguePlayerInfo, b: LeaguePlayerInfo, isDesc: boolean): number => {\n const r = a.extraScore - b.extraScore\n return isDesc ? r * -1 : r\n}\n\nconst sortGender = (a: LeaguePlayerInfo, b: LeaguePlayerInfo, isDesc: boolean): number => {\n const r = a?.gender?.localeCompare(b?.gender ?? '') ?? 0\n return isDesc ? r * -1 : r\n}\n\nconst sortExperience = (a: LeaguePlayerInfo, b: LeaguePlayerInfo, isDesc: boolean): number => {\n const r = a.yearsExperience - b.yearsExperience\n return isDesc ? r * -1 : r\n}\n\nexport const sortFunctions: { [key: string]: any } = {\n name_asc: sortName,\n name_desc: sortName,\n score_asc: sortScore,\n score_desc: sortScore,\n exp_asc: sortExperience,\n exp_desc: sortExperience,\n grade_asc: sortByGrades,\n grade_desc: sortByGrades,\n gender_asc: sortGender,\n gender_desc: sortGender,\n height_asc: sortHeight,\n height_desc: sortHeight,\n}\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!./TeamManager.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!./TeamManager.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamManager.vue?vue&type=template&id=4a03c3d0&scoped=true&\"\nimport script from \"./TeamManager.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamManager.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TeamManager.vue?vue&type=style&index=0&id=4a03c3d0&lang=scss&scoped=true&\"\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 \"4a03c3d0\",\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('report-modal',{attrs:{\"title\":\"Draft Summary Report\"},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-3\"},[_c('img',{staticClass:\"pb-1\",attrs:{\"src\":\"/img/Upward-Sports_Gray-1024x342.png\",\"width\":\"100\"}})]),_c('div',{staticClass:\"col-md-6 text-center\"},[_c('h5',[_vm._v(\"Draft Summary Report\")])]),_c('div',{staticClass:\"col-md-3 text-right\"},[_c('h5',[_vm._v(\"Division: \"+_vm._s(_vm.divisionName))])])]),_c('div',{staticClass:\"row bg-light-3 border border-secondary font-weight-bold\"},[_c('div',{staticClass:\"col-md-3\"},[_vm._v(\"Participant Name\")]),_c('div',{staticClass:\"col-md-7\"},[_vm._v(\"Reason Participant was taped down\")]),_c('div',{staticClass:\"col-md-2\"},[_vm._v(\"Team\")])]),_vm._l((_vm.reportResults),function(item,index){return _c('div',{key:item.ParticipantName + item.TeamName,staticClass:\"row border-left border-right border-bottom border-secondary\"},[_c('div',{staticClass:\"col-md-3\"},[_vm._v(_vm._s(item.ParticipantName))]),_c('div',{staticClass:\"col-md-7\"},[_vm._v(_vm._s(item.Note))]),_c('div',{staticClass:\"col-md-2\"},[_vm._v(_vm._s(item.TeamName))])])}),(_vm.reportResults && _vm.reportResults.length === 0)?_c('div',{staticClass:\"row border-left border-right border-bottom border-secondary\"},[_c('div',{staticClass:\"col-md-12 text-center\"},[_vm._v(\"No Draft Issues Found\")])]):_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('modal',{staticClass:\"report-modal\",attrs:{\"title\":_vm.internalTitle,\"value\":_vm.internalValue},on:{\"input\":function($event){_vm.internalValue = false}}},[_c('div',{ref:\"slotref\"},[_vm._t(\"default\",[_vm._v(\" report here. \")])],2),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.downloadPDF}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\"Generate PDF\")])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import jsPDF from 'jspdf'\n\n/**\n * HTML Element to a PDF document based on jsPDF.\n * Documentation is here: http://raw.githack.com/MrRio/jsPDF/master/docs/\n * @param node\n * @param options\n */\nexport async function html2pdf(node: HTMLElement, options?: { filename?: string }) {\n const doc = new jsPDF({ format: 'letter' })\n return await doc.html(node, {\n x: 15,\n y: 15,\n filename: options?.filename ?? 'report.pdf',\n margin: 15,\n html2canvas: { allowTaint: true, scale: 0.2 },\n callback: (doc1) => {\n doc1.save(options?.filename ?? 'report.pdf')\n },\n })\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Modal from './Modal.vue'\nimport { snakeCase } from 'lodash'\n\nimport { html2pdf } from '@/lib/support/utilities/html2pdf/html2pdf'\nexport default defineComponent({\n components: {\n Modal,\n },\n props: {\n value: {\n type: Boolean,\n required: true,\n default: false,\n },\n title: {\n type: String,\n required: false,\n default: '',\n },\n },\n setup(props, ctx) {\n const internalValue = ref(false)\n const internalTitle = ref('')\n const slotRef = ref(null)\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n },\n { immediate: true }\n )\n watch(\n () => props.title,\n () => {\n internalTitle.value = props.title\n },\n { immediate: true }\n )\n\n watch(\n () => internalValue.value,\n () => ctx.emit('input', internalValue.value)\n )\n\n async function downloadPDF() {\n if (slotRef.value) {\n await html2pdf(slotRef.value, { filename: snakeCase(internalTitle.value) + '.pdf' })\n }\n }\n\n function cancel() {\n internalValue.value = false\n }\n\n return { cancel, internalValue, internalTitle, slotref: slotRef, downloadPDF }\n },\n})\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!./ReportModal.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!./ReportModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReportModal.vue?vue&type=template&id=4fdb31fc&\"\nimport script from \"./ReportModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReportModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ReportModal.vue?vue&type=style&index=0&lang=scss&\"\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 restService from '@/services/restService'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { DraftResultRecord } from '@/models/Reports/DraftResultRecord'\nimport { ReportTemplateResource } from '@/models/Reports/ReportTemplateResource'\n\nexport interface CoachLinksOverageType {\n CoachIndividualID: number\n CoachName: string\n DivisionName: string\n FemaleGradesToCoach: string | null\n MaleGradesToCoach: string | null\n Grade: string\n Gender: string\n ParticipantName: string\n}\n\nexport interface CoachLinksBrokenReportType {\n ParticipantName: string\n RequestedCoachName: string\n DivisionName: string\n}\n\nexport interface CarpoolLinksBrokenReportType {\n ParticipantName: string\n RequestedParticipantName: string\n DivisionName: string\n}\n\nexport interface EvaluationsMissingType {\n ParticipantName: string\n Gender: string\n Grade: string\n ActivityText: string\n ActivityValue: string | null\n ParticipantID: number\n}\n\nconst baseUrl = 'reports'\n\nexport async function getCoachLinksBroken(id: UpwardLeagueIDType, typeProgramId: string, divisionId: number) {\n const results = await restService.post>(\n `${baseUrl}/${id}/coachlinksbroken`,\n {\n parameters: {\n DivisionID: divisionId,\n TypeProgramID: typeProgramId,\n },\n }\n )\n if (results.isSuccess) {\n return results.data ?? []\n } else {\n throw new Error('Error in coachlinksbroken')\n }\n}\n\nexport async function getCoachLinksOverage(\n id: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number\n) {\n const results = await restService.post>(`${baseUrl}/${id}/coachlinksoverage`, {\n parameters: {\n DivisionID: divisionId,\n TypeProgramID: typeProgramId,\n },\n })\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in coachlinksoverage')\n }\n}\n\nexport async function getCarPoolLinks(id: UpwardLeagueIDType, typeProgramId: string, divisionId: number) {\n const results = await restService.post>(\n `${baseUrl}/${id}/carpoollinksbroken`,\n {\n parameters: {\n DivisionID: divisionId,\n TypeProgramID: typeProgramId,\n },\n }\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in carpoollinksbroken')\n }\n}\n\nexport async function getEvaluationsMissing(\n id: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number\n) {\n const results = await restService.post>(\n `${baseUrl}/${id}/evaluationsmissing`,\n {\n parameters: {\n DivisionID: divisionId,\n TypeProgramID: typeProgramId,\n },\n }\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in missing evaluations report')\n }\n}\n\n/**\n * get a report from the server as a generic request to the report service endpoint\n * @param reportName\n * @param upwardLeagueId - league id\n * @param typeProgramId - optional, defaults the parameter for most reports\n * @param params - parameter object when specified becomes the parameters for the body of the report, false and undefined dont' go in the parameters for the report\n */\nexport async function getReport(\n reportName: string,\n upwardLeagueId: string,\n typeProgramId: string,\n params?: Record | undefined | boolean\n): Promise[] | null> {\n let body = {\n parameters: {},\n }\n if (typeProgramId && !params) {\n body = {\n parameters: {\n TypeProgramID: typeProgramId,\n },\n }\n }\n if (params) {\n body.parameters = params\n }\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/${reportName}`, body)\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving report.')\n }\n}\n\nexport async function saveAs(jsonData: string, saveType: string, fileName: string): Promise {\n const result = await restService.post(\n `${baseUrl}/savespreadsheet`,\n {\n JSONData: jsonData,\n saveType: saveType,\n url: `${baseUrl}/savespreadsheet`,\n fileName: fileName,\n },\n {\n responseType: 'blob',\n }\n )\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred saving the spreadsheet file.')\n }\n}\n\nconst getDraftLog = async (\n upwardLeagueId: string,\n typeProgramId: string,\n divisionId: number\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/draftlog`, {\n parameters: {\n DivisionID: divisionId,\n TypeProgramID: typeProgramId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the draft report.')\n }\n}\n\nconst getEvaluationData = async (\n upwardLeagueId: string,\n accountNumber: string,\n createBlankReport: boolean,\n typeProgramId: string,\n showAll = '1',\n gender = 'E',\n filterByDate = false,\n filterByGrade = false,\n startDate = '1900-01-01',\n endDate = '2099-01-01',\n startGrade = '0',\n endGrade = '0',\n noEvalScoresOnly = false\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/evaluation`, {\n parameters: {\n AccountNumber: accountNumber,\n ShowAll: showAll,\n Gender: gender,\n FilterByDate: filterByDate ? '1' : '0',\n FilterByGrade: filterByGrade ? '1' : '0',\n StartDate: startDate,\n EndDate: endDate,\n StartGrade: startGrade,\n EndGrade: endGrade,\n NoEvalScoresOnly: noEvalScoresOnly ? '1' : '0',\n CreateBlankReport: createBlankReport,\n TypeProgramID: typeProgramId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the evaluation report.')\n }\n}\n\nconst getEvaluationActivityData = async (\n upwardLeagueId: string,\n accountNumber: string,\n typeProgramId: string,\n startGrade = '0',\n endGrade = '0'\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/evaluationbyactivity`, {\n parameters: {\n AccountNumber: accountNumber,\n StartGradeID: startGrade,\n EndGradeID: endGrade,\n TypeProgramID: typeProgramId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the evaluation report.')\n }\n}\n\nconst getReportTemplate = async (templateID: string): Promise => {\n const result = await restService.get(\n `contentmanagement/reporttemplates/${templateID}`\n )\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the report template.')\n }\n}\n\nconst getEvaluationQuestionsData = async (\n upwardLeagueId: string,\n accountNumber: string,\n typeProgramId: string\n): Promise => {\n // this will go away once the api is update to use string instead of int.\n //const typeProgram = typeProgramId.toLocaleLowerCase() == 'football' ? 4 : 3\n\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/evaluationquestionssubreport`, {\n parameters: {\n AccountNumber: accountNumber,\n TypeProgramID: typeProgramId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the evaluation questions report.')\n }\n}\n\nconst getEvaluationSizeData = async (\n upwardLeagueId: string,\n accountNumber: string,\n leagueId: number,\n typeProgramId: string,\n createBlankReport: boolean\n): Promise => {\n // this will go away once the api is update to use string instead of int.\n //const typeProgram = typeProgramId.toLocaleLowerCase() == 'football' ? 4 : 3\n\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/evaluationsizingsubreport`, {\n parameters: {\n LeagueID: leagueId,\n AccountNumber: accountNumber,\n TypeProgramID: typeProgramId,\n CreateBlankReport: createBlankReport,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the evaluation size report.')\n }\n}\n\nconst getCoachRoster = async (\n upwardLeagueId: string,\n accountNumber: string,\n teamId: string,\n divisionId: string,\n typeProgramId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/roster`, {\n parameters: {\n AccountNumber: accountNumber,\n TeamID: teamId ?? '0',\n DivisionID: divisionId ?? '0',\n TypeProgramID: typeProgramId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the coach roster report.')\n }\n}\n\nconst getCoachRosterByTeamRosterID = async (\n upwardLeagueId: string,\n accountNumber: string,\n typeProgramID: string,\n teamId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/teamroster`, {\n parameters: {\n AccountNumber: accountNumber,\n TypeProgramID: typeProgramID,\n UpwardTeamID: teamId ?? '',\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the coach roster report.')\n }\n}\n\nconst getCoachSubReport = async (\n upwardLeagueId: string,\n accountNumber: string,\n teamId: string,\n divisionId: string,\n typeProgramId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/coachsubreport`, {\n parameters: {\n AccountNumber: accountNumber,\n TeamID: teamId === '0' ? '' : teamId ?? '',\n DivisionID: divisionId === '0' ? '' : divisionId ?? '',\n TypeProgramID: typeProgramId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the coach sub report.')\n }\n}\n\nconst getMailingLabels = async (\n upwardLeagueId: string,\n accountNumber: string,\n teamId: string,\n divisionId: string,\n includeParticipants: boolean,\n includeVolunteers: boolean,\n filterByGrade = false,\n startGrade = '0',\n endGrade = '0',\n typeProgramId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/mailinglabel`, {\n parameters: {\n AccountNumber: accountNumber,\n TeamID: teamId ?? '0',\n DivisionID: divisionId ?? '0',\n IncludeParticipants: includeParticipants ? '1' : '0',\n IncludeVolunteers: includeVolunteers ? '1' : '0',\n FilterByGrade: filterByGrade ? '1' : '0',\n StartGrade: startGrade,\n EndGrade: endGrade,\n TypeProgramID: typeProgramId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the mailing label report.')\n }\n}\n\nconst getGameSchedule = async (\n upwardLeagueId: string,\n divisionId: string,\n typeProgramId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/gameschedule`, {\n parameters: {\n TypeProgramID: typeProgramId,\n DivisionID: divisionId,\n PreserveColumnNames: true,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the game schedule.')\n }\n}\n\nconst getGameScheduleByTeam = async (\n upwardLeagueId: string,\n divisionId: string,\n typeProgramId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/gameschedulebyteam`, {\n parameters: {\n TypeProgramID: typeProgramId,\n DivisionID: divisionId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the game schedule by team.')\n }\n}\n\nconst getPracticeSchedule = async (\n upwardLeagueId: string,\n divisionId: string,\n typeProgramId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/practiceschedule`, {\n parameters: {\n TypeProgramID: typeProgramId,\n DivisionID: divisionId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the practice schedule.')\n }\n}\n\nconst getSiblingsReport = async (upwardLeagueId: string, accountNumber: string): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/sibling`, {\n parameters: {\n AccountNumber: accountNumber,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the sibling report.')\n }\n}\n\nconst getParticipantIntroReport = async (\n upwardLeagueId: string,\n accountNumber: string,\n teamId: string,\n divisionId: string,\n typeProgramId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/participantintroduction`, {\n parameters: {\n AccountNumber: accountNumber,\n TeamID: teamId === '0' ? '' : teamId ?? '',\n DivisionID: divisionId === '0' ? '' : divisionId ?? '',\n TypeProgramID: typeProgramId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the participant introduction report.')\n }\n}\n\nconst getPaymentReportData = async (\n upwardLeagueId: string,\n accountNumber: string,\n paymentStatus: number\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/payments`, {\n parameters: {\n AccountNumber: accountNumber,\n PaymentStatus: paymentStatus,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the participant payment report.')\n }\n}\n\nconst getShippedCompletedOrdersData = async (\n statusBeginDate: string,\n statusEndDate: string,\n orderType: string,\n orderStatus: string,\n pageSize: number\n): Promise => {\n const result = await restService.post(`${baseUrl}/ordersadmin/shippedcompletedorders`, {\n parameters: {\n StatusBeginDate: statusBeginDate,\n StatusEndDate: statusEndDate,\n OrderType: orderType,\n OrderStatus: orderStatus,\n PageSize: pageSize,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the Shipped Completed Orders report.')\n }\n}\n\nconst getMinistryImpactData = async (\n accountNumber: string,\n compareType: string,\n beginDate: string,\n endDate: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/admindashboard/ministryimpact`, {\n parameters: {\n accountNumber: accountNumber,\n compareType: compareType,\n beginDate: beginDate,\n endDate: endDate,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the Ministry Impact report.')\n }\n}\n\nconst getOutstandingBalanceReportData = async (\n upwardLeagueId: string,\n accountNumber: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/outstandingbalance`, {\n parameters: {\n AccountNumber: accountNumber,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the outstanding balance report.')\n }\n}\n\nconst getRefereeSchedule = async (\n upwardLeagueId: string,\n divisionId: string,\n typeProgramId: string\n): Promise => {\n const result = await restService.post(`${baseUrl}/${upwardLeagueId}/refereeschedule`, {\n parameters: {\n TypeProgramID: typeProgramId,\n DivisionID: divisionId,\n },\n })\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('A problem occurred retrieving the schedule.')\n }\n}\n\nexport default {\n getCoachLinksBroken,\n getCarPoolLinks,\n getCoachLinksOverage,\n getEvaluationsMissing,\n getReport,\n saveAs,\n getDraftLog,\n getEvaluationData,\n getEvaluationActivityData,\n getReportTemplate,\n getEvaluationQuestionsData,\n getEvaluationSizeData,\n getCoachRoster,\n getCoachSubReport,\n getMailingLabels,\n getGameSchedule,\n getGameScheduleByTeam,\n getSiblingsReport,\n getPracticeSchedule,\n getCoachRosterByTeamRosterID,\n getParticipantIntroReport,\n getPaymentReportData,\n getOutstandingBalanceReportData,\n getRefereeSchedule,\n getShippedCompletedOrdersData,\n getMinistryImpactData,\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\n\nimport ReportModal from '@/components/ReportModal.vue'\n\nimport reportsClient from '@/clients/reportsClient'\n\nimport { DraftResultRecord } from '@/models/Reports/DraftResultRecord'\n\nexport default defineComponent({\n name: 'DraftSummaryReportModal',\n components: {\n ReportModal,\n },\n props: {\n divisionName: { type: String, required: true },\n value: { type: Boolean, required: true },\n divisionId: { type: Number, default: 0, required: false },\n typeProgramId: { type: String, default: '', required: false },\n upwardLeagueId: { type: String, default: '', required: false },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(props.value)\n const reportResults = ref([])\n\n async function doShowDraftResultsModal() {\n if (props.upwardLeagueId && props.divisionId && props.typeProgramId) {\n let results = await reportsClient.getDraftLog(\n props.upwardLeagueId,\n props.typeProgramId,\n props.divisionId\n )\n\n if (!results) {\n results = []\n }\n\n reportResults.value = results\n }\n\n modalIsVisible.value = true\n }\n\n watch(\n () => modalIsVisible.value,\n async () => {\n if (modalIsVisible.value != props.value) {\n ctx.emit('input', modalIsVisible.value)\n }\n\n if (modalIsVisible.value) {\n await doShowDraftResultsModal()\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (modalIsVisible.value != props.value) {\n modalIsVisible.value = props.value\n }\n }\n )\n\n return {\n modalIsVisible,\n reportResults,\n }\n },\n})\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!./DraftSummaryReportModal.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!./DraftSummaryReportModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DraftSummaryReportModal.vue?vue&type=template&id=6b4efede&\"\nimport script from \"./DraftSummaryReportModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./DraftSummaryReportModal.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('modal',{attrs:{\"title\":\"Filters\",\"showClose\":true,\"renderConditionally\":false},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 border-bottom\"},[_c('radio-group-input',{attrs:{\"label\":\"Target\",\"value\":_vm.target,\"items-list\":_vm.targets,\"value-property-name\":\"value\",\"text-property-name\":\"text\",\"item-class\":\"form-check form-check-inline\",\"wrapperClass\":\"input-label-inline\"},on:{\"change\":_vm.setFilterTarget}})],1),_c('div',{staticClass:\"col-12 col-md-4\"},[_c('checkbox-group-input',{attrs:{\"label\":\"Gender\",\"value\":_vm.gender,\"items-list\":_vm.genders,\"value-property-name\":\"value\",\"text-property-name\":\"text\",\"item-class\":\"form-check form-check-inline\",\"wrapperClass\":\"input-label-inline\"},on:{\"change\":_vm.setGender}}),_c('checkbox-input',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.target != 'UNASSIGNED'),expression:\"target != 'UNASSIGNED'\"}],staticClass:\"pl-0 mt-1 mb-0\",attrs:{\"value\":_vm.hideLocked,\"label\":\"Hide locked participants\",\"inline\":false},on:{\"change\":_vm.setHideLocked}})],1),_c('div',{staticClass:\"col-12 col-md-8\"},[(_vm.showHeight)?_c('div',[_c('input-label',{attrs:{\"label\":\"height\"}}),(_vm.heightRange.max > 0)?_c('range-slider',{attrs:{\"value\":_vm.height,\"min\":_vm.heightRange.min,\"max\":_vm.heightRange.max},on:{\"change\":_vm.setHeightRange}}):_c('div',{staticClass:\"small text-muted\"},[_vm._v(\"No heights to filter\")])],1):_vm._e(),(_vm.showScore)?_c('div',[_c('input-label',{attrs:{\"label\":\"Score\"}}),(_vm.scoreRange.max > 0)?_c('range-slider',{attrs:{\"value\":_vm.score,\"min\":_vm.scoreRange.min,\"max\":_vm.scoreRange.max},on:{\"change\":_vm.setScoreRange}}):_c('div',{staticClass:\"small text-muted\"},[_vm._v(\"No scores to filter\")])],1):_vm._e(),_c('grade-range-dropdowns',{staticClass:\"col-12 p-0\",attrs:{\"start-grade\":_vm.grades[0],\"end-grade\":_vm.grades[_vm.grades.length - 1],\"label\":_vm.isByAge ? 'Age Range' : 'Grade Range',\"isByAge\":_vm.isByAge},on:{\"change\":_vm.setGradeRange}})],1)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-outline-dark mr-2\",on:{\"click\":_vm.clear}},[_vm._v(\"Reset Filters\")]),_c('button',{staticClass:\"btn btn-primary mr-2\",on:{\"click\":function($event){_vm.internalValue = !_vm.internalValue}}},[_vm._v(\"Close\")])])],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('base-input-wrapper',{attrs:{\"required\":_vm.required,\"label\":_vm.label,\"id\":_vm.elementId,\"sub-label\":_vm.subLabel,\"sub-label-inline\":_vm.subLabelInline}},[_c('div',{staticClass:\"mx-1 pt-5 bg-white\"},[_c('v-range-slider',{attrs:{\"id\":_vm.elementId,\"min\":_vm.min,\"max\":_vm.max,\"color\":\"blue\",\"track-color\":\"grey\",\"disabled\":_vm.disabled,\"readonly\":_vm.readonly,\"dense\":\"\",\"thumb-label\":\"always\",\"thumb-size\":20},on:{\"change\":_vm.change,\"input\":_vm.input},model:{value:(_vm.local),callback:function ($$v) {_vm.local=$$v},expression:\"local\"}})],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\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport uuid from 'uuid'\n\nimport BaseInputWrapper from '@/elements/BaseInputWrapper.vue'\n\nexport default defineComponent({\n name: 'ClinicOverview',\n components: {\n BaseInputWrapper,\n },\n props: {\n value: { type: Array as PropType, required: true },\n id: { type: String, default: '', required: false },\n min: { type: Number, default: 0, required: false },\n max: { type: Number, default: 10, required: false },\n subLabel: { type: String, required: false },\n subLabelInline: { type: Boolean, default: false, required: false },\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n disabled: { type: Boolean, default: false, required: false },\n readonly: { type: Boolean, default: false, required: false },\n },\n setup(props, ctx) {\n const guid = ref(uuid.v4())\n const local = ref([0, 10])\n\n const elementId = computed(() => props.id || `range-slider-${guid.value}`)\n\n function change() {\n ctx.emit('change', local.value)\n }\n\n function input() {\n ctx.emit('input', local.value)\n }\n\n function setDefaults() {\n local.value = [props.min, props.max]\n input()\n }\n\n watch(\n () => props.max,\n () => {\n local.value = [local.value[0], props.max]\n input()\n change()\n },\n { immediate: true }\n )\n\n watch(\n () => props.min,\n () => {\n local.value = [props.min, local.value[1]]\n input()\n change()\n },\n { immediate: true }\n )\n\n watch(\n () => props.value,\n () => {\n if (!props.value || !props.value.length) {\n setDefaults()\n return\n }\n local.value = [props.value[0], props.value[1]]\n },\n { immediate: true }\n )\n\n return {\n elementId,\n local,\n change,\n input,\n }\n },\n})\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!./RangeSlider.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!./RangeSlider.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RangeSlider.vue?vue&type=template&id=57e1a4ce&\"\nimport script from \"./RangeSlider.vue?vue&type=script&lang=ts&\"\nexport * from \"./RangeSlider.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RangeSlider.vue?vue&type=style&index=0&lang=scss&\"\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 { VRangeSlider } from 'vuetify/lib/components/VRangeSlider';\ninstallComponents(component, {VRangeSlider})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, ref, watch } from '@vue/composition-api'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport CheckboxGroupInput from '@/elements/CheckboxGroupInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport RangeSlider from '@/elements/RangeSlider.vue'\nimport Modal from '@/components/Modal.vue'\nimport GradeRangeSlider from '@/elements/GradeRangeSlider.vue'\nimport GradeRangeDropdowns from '@/elements/GradeRangeDropdowns.vue'\nimport store from '@/store'\n\ninterface ListItem {\n value: string\n text: string\n}\nexport default defineComponent({\n name: 'Filters',\n components: {\n RadioGroupInput,\n CheckboxGroupInput,\n CheckboxInput,\n InputLabel,\n TextInput,\n RangeSlider,\n Modal,\n GradeRangeSlider,\n GradeRangeDropdowns,\n },\n props: {\n value: { type: Boolean, required: true, default: false },\n },\n setup(props, ctx) {\n const internalValue = ref(false)\n const {\n getFilterTarget,\n getGender,\n getHideLocked,\n getHeightRange,\n getScoreRange,\n getGradeRange,\n getHeightMinMax,\n getScoreMinMax,\n setGender,\n setFilterTarget,\n setHideLocked,\n setHeightRange,\n setScoreRange,\n setGradeRange,\n resetFilters,\n usingHeight,\n usingScore,\n } = userPreferences()\n const targets: ListItem[] = [\n { value: 'UNASSIGNED', text: 'Unassigned Participants' },\n { value: 'TEAMS', text: 'Teams' },\n { value: 'BOTH', text: 'Both' },\n ]\n const genders: ListItem[] = [\n { value: 'F', text: 'Girls' },\n { value: 'M', text: 'Boys' },\n ]\n\n const isByAge = store.getters.leagueAbstraction.isByAge\n\n function clear() {\n resetFilters()\n internalValue.value = false\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n },\n { immediate: true }\n )\n\n watch(\n () => internalValue.value,\n () => ctx.emit('input', internalValue.value)\n )\n\n return {\n targets,\n target: computed(() => getFilterTarget.value),\n genders,\n gender: computed(() => getGender.value),\n hideLocked: computed(() => getHideLocked.value),\n setGender,\n setFilterTarget,\n setHideLocked,\n setHeightRange,\n setScoreRange,\n setGradeRange,\n clear,\n height: computed(() => getHeightRange.value),\n heightRange: computed(() => getHeightMinMax.value),\n grades: computed(() => getGradeRange.value),\n score: computed(() => getScoreRange.value),\n scoreRange: computed(() => getScoreMinMax.value),\n showHeight: usingHeight,\n showScore: usingScore,\n internalValue,\n isByAge,\n }\n },\n})\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!./FilterModal.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!./FilterModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FilterModal.vue?vue&type=template&id=4324af43&\"\nimport script from \"./FilterModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./FilterModal.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('div',[_c('div',{staticClass:\"row\"},[(\n _vm.summary.brokenCoachLinkCount == 0 &&\n _vm.summary.coachLinksExceededCount == 0 &&\n _vm.summary.brokenCarpoolLinkCount == 0 &&\n _vm.summary.missingEvalScoresCount == 0\n )?_c('h3',{staticClass:\"m-auto my-5 py-5\"},[_vm._v(\" No reports \")]):_vm._e(),(_vm.summary.brokenCoachLinkCount)?_c('div',{staticClass:\"col-md-3\"},[_c('a',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"traditional\",on:{\"click\":function($event){_vm.seeBrokenCoachLink = true}}},[_vm._v(\"Broken Coach Links\")]),_c('p',[_c('small',[_vm._v(\" You have \"),_c('b',[_vm._v(_vm._s(_vm.summary.brokenCoachLinkCount))]),_vm._v(\" registrants in this division who have requested a specific coach that are NOT linked or does not match an existing coach. \")])])]):_vm._e(),(_vm.summary.brokenCarpoolLinkCount)?_c('div',{staticClass:\"col-md-3\"},[_c('a',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"traditional\",on:{\"click\":function($event){_vm.seeBrokenCarpoolLink = true}}},[_vm._v(\"Carpool Requests Not Linked\")]),_c('p',[_c('small',[_vm._v(\" You have \"),_c('b',[_vm._v(_vm._s(_vm.summary.brokenCarpoolLinkCount))]),_vm._v(\" registrants in this division who have specified a carpool link that does not match an existing registrant \")])])]):_vm._e(),(_vm.summary.missingEvalScoresCount)?_c('div',{staticClass:\"col-md-3\"},[_c('a',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"traditional\",on:{\"click\":function($event){_vm.seeMissingEvaluations = true}}},[_vm._v(\"Evaluation Status\")]),_c('p',[_c('small',[_vm._v(\" You have \"),_c('b',[_vm._v(_vm._s(_vm.summary.missingEvalScoresCount))]),_vm._v(\" registrants in this division who have not completed an evaluation. \")])])]):_vm._e(),(_vm.summary.coachLinksExceededCount)?_c('div',{staticClass:\"col-md-3\"},[_c('a',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"traditional\",on:{\"click\":function($event){_vm.seeCoachLinkStatus = true}}},[_vm._v(\"Coach Link Status\")]),_c('p',[_c('small',[_vm._v(\" You have \"),_c('b',[_vm._v(_vm._s(_vm.summary.coachLinksExceededCount))]),_vm._v(\" coaches in this division that have more than 2 players linked. The draft will only honor 2 links. \")])])]):_vm._e()]),_c('portal',{attrs:{\"to\":\"reports\"}},[_c('report-modal',{attrs:{\"title\":\"Broken Coach Links\"},model:{value:(_vm.seeBrokenCoachLink),callback:function ($$v) {_vm.seeBrokenCoachLink=$$v},expression:\"seeBrokenCoachLink\"}},[_c('broken-coach-link-report',{attrs:{\"report\":_vm.reportCoachLinks}})],1),_c('report-modal',{attrs:{\"title\":\"Carpool Requests Not Linked\"},model:{value:(_vm.seeBrokenCarpoolLink),callback:function ($$v) {_vm.seeBrokenCarpoolLink=$$v},expression:\"seeBrokenCarpoolLink\"}},[_c('broken-carpool-link-report',{attrs:{\"report\":_vm.reportCarpoolLinks}})],1),_c('report-modal',{attrs:{\"title\":\"Missing Evaluations\"},model:{value:(_vm.seeMissingEvaluations),callback:function ($$v) {_vm.seeMissingEvaluations=$$v},expression:\"seeMissingEvaluations\"}},[_c('evaluations-missing-report',{attrs:{\"report\":_vm.reportEvaluationsMissing}})],1),_c('report-modal',{attrs:{\"title\":\"Coach Link Status\"},model:{value:(_vm.seeCoachLinkStatus),callback:function ($$v) {_vm.seeCoachLinkStatus=$$v},expression:\"seeCoachLinkStatus\"}},[_c('coach-overage-report',{attrs:{\"report\":_vm.reportCoachOverage}})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { LeagueDivisionContactInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionContactInfo'\n\nexport function getEmptyLeagueDivisionContactInfo(): LeagueDivisionContactInfo {\n return {\n address: '',\n cityStateZip: '',\n emailAddress: '',\n fullName: '',\n latitude: 0,\n longitude: 0,\n phone: '',\n }\n}\n","import { getEmptyLeagueDivisionContactInfo } from '@/lib/support/models/LeagueDivisionContactInfo/data'\nimport { LeagueDivisionExtendedInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionExtendedInfo'\n\nexport function getEmptyLeagueDivisionExtendedInfo(): LeagueDivisionExtendedInfo {\n return {\n brokenCarpoolLinkCount: 0,\n brokenCoachLinkCount: 0,\n coachLinksExceededCount: 0,\n contact: getEmptyLeagueDivisionContactInfo(),\n divisionID: 0,\n leagueID: 0,\n missingEvalScoresCount: 0,\n typeProgramID: '',\n }\n}\n","import { LeagueDivisionExtendedInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionExtendedInfo'\nimport { computed, ref } from '@vue/composition-api'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport divisionsClient from '@/clients/divisionsClient'\nimport { getEmptyLeagueDivisionExtendedInfo } from '@/lib/support/models/LeagueDivisionExtendedInfo/data'\nimport reportsClient, {\n CarpoolLinksBrokenReportType,\n CoachLinksBrokenReportType,\n CoachLinksOverageType,\n EvaluationsMissingType,\n} from '@/clients/reportsClient'\n\nexport function useReports() {\n const summary = ref(getEmptyLeagueDivisionExtendedInfo())\n const reportCoachLinks = ref>([])\n const reportEvaluationsMissing = ref>([])\n const reportCarpoolLinks = ref>([])\n const reportCoachOverage = ref>([])\n\n async function fetchAndSetBrokenCarpoolLinks(\n leagueID: UpwardLeagueIDType,\n programID: string,\n divisionID: number\n ) {\n reportCarpoolLinks.value = (await reportsClient.getCarPoolLinks(leagueID, programID, divisionID)) ?? []\n }\n /**\n * refresh the reports, will autoload reports with data.\n * @param leagueID\n * @param programID\n * @param divisionID\n */\n const refresh = async (leagueID: UpwardLeagueIDType, programID: string, divisionID: number) => {\n // Added this to prevent errors like this:\n // GET http://azqaweb01.eastus.cloudapp.azure.com:8080/api/divisions///0/extendedInfo 404 (Not Found)\n if (!leagueID || !programID || !divisionID) {\n return\n }\n\n summary.value =\n (await divisionsClient.retrieveSummaryInfo(leagueID, programID, divisionID)) ??\n getEmptyLeagueDivisionExtendedInfo()\n\n if (summary.value.brokenCoachLinkCount) {\n reportCoachLinks.value =\n (await reportsClient.getCoachLinksBroken(leagueID, programID, divisionID)) ?? []\n }\n if (summary.value.missingEvalScoresCount) {\n reportEvaluationsMissing.value =\n (await reportsClient.getEvaluationsMissing(leagueID, programID, divisionID)) ?? []\n }\n\n if (summary.value.brokenCarpoolLinkCount) {\n await fetchAndSetBrokenCarpoolLinks(leagueID, programID, divisionID)\n }\n if (summary.value.coachLinksExceededCount) {\n reportCoachOverage.value =\n (await reportsClient.getCoachLinksOverage(leagueID, programID, divisionID)) ?? []\n }\n }\n return {\n summary: computed(() => summary.value),\n reportCoachLinks: computed(() => reportCoachLinks.value),\n reportCoachOverage: computed(() => reportCoachOverage.value),\n reportCarpoolLinks: computed(() => reportCarpoolLinks.value),\n reportEvaluationsMissing: computed(() => reportEvaluationsMissing.value),\n refresh,\n fetchAndSetBrokenCarpoolLinks,\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"report\"},[_c('img',{staticClass:\"report-logo\",attrs:{\"src\":require(\"@/assets/upward-sports-black.png\")}}),_c('h2',[_vm._v(\"Broken Coach Links Report\")]),_c('table',{staticClass:\"table\"},[_vm._m(0),_vm._l((_vm.internalReport),function(line){return _c('tr',{key:line.ParticipantName},[_c('td',[_vm._v(_vm._s(line.DivisionName))]),_c('td',[_vm._v(_vm._s(line.ParticipantName))]),_c('td',[_vm._v(_vm._s(line.RequestedCoachName))])])})],2)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',[_c('th',[_vm._v(\"Division\")]),_c('th',[_vm._v(\"Participant\")]),_c('th',[_vm._v(\"Requested Coach\")])])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { CoachLinksBrokenReportType } from '@/clients/reportsClient'\n\nexport default defineComponent({\n props: {\n report: {\n type: Array as PropType>,\n default: () => [],\n required: true,\n },\n },\n\n setup(props) {\n const internalReport = ref>([])\n watch(\n () => props.report,\n () => (internalReport.value = props.report),\n { immediate: true }\n )\n\n return { internalReport }\n },\n})\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!./BrokenCoachLinkReport.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!./BrokenCoachLinkReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BrokenCoachLinkReport.vue?vue&type=template&id=0f8ac45b&\"\nimport script from \"./BrokenCoachLinkReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./BrokenCoachLinkReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./BrokenCoachLinkReport.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"report\"},[_vm._m(0),_vm._l((_vm.internalReport),function(coach){return _c('div',{key:coach.CoachName},[_c('table',{staticClass:\"table\"},[_c('tr',[_vm._m(1,true),_c('td',[_vm._v(_vm._s(coach.CoachName))])]),(coach.MaleGradesToCoach)?_c('tr',[_vm._m(2,true),_c('td',[_vm._v(_vm._s(coach.MaleGradesToCoach))])]):_vm._e(),(coach.FemaleGradesToCoach)?_c('tr',[_vm._m(3,true),_c('td',[_vm._v(_vm._s(coach.FemaleGradesToCoach))])]):_vm._e()]),_c('table',{staticClass:\"table\"},[_vm._m(4,true),_vm._l((coach.participants),function(kid){return _c('tr',{key:kid.name},[_c('td',[_vm._v(_vm._s(kid.name))]),_c('td',[_vm._v(_vm._s(kid.gender))]),_c('td',[_vm._v(_vm._s(kid.grade))])])})],2)])})],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"report-header\"},[_c('img',{staticClass:\"report-logo\",attrs:{\"src\":require(\"@/assets/upward-sports-black.png\")}}),_c('h2',[_vm._v(\"Coach Overage Report\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('b',[_vm._v(\"Coach\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('b',[_vm._v(\"Male Grades Preferred\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('td',[_c('b',[_vm._v(\"Female Grades Preferred\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',[_c('th',[_vm._v(\"Name\")]),_c('th',[_vm._v(\"Gender\")]),_c('th',[_vm._v(\"Grade\")])])}]\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\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { CoachLinksOverageType } from '@/clients/reportsClient'\n\ninterface ParticipantBreakout {\n name: string\n gender: string\n grade: string\n}\n\ninterface CoachBreakout {\n CoachName: string\n MaleGradesToCoach: string | null\n FemaleGradesToCoach: string | null\n participants: ParticipantBreakout[]\n}\n\nexport default defineComponent({\n props: {\n report: {\n type: Array as PropType>,\n default: () => [],\n required: true,\n },\n },\n\n setup(props) {\n const internalReport = ref>([])\n watch(\n () => props.report,\n () => {\n internalReport.value = []\n props.report.forEach((x) => {\n let z = internalReport.value.find((a) => a.CoachName == x.CoachName)\n if (!z) {\n z = {\n CoachName: x.CoachName,\n MaleGradesToCoach: x.MaleGradesToCoach,\n FemaleGradesToCoach: x.FemaleGradesToCoach,\n participants: [],\n }\n internalReport.value.push(z)\n }\n if (z) {\n z.participants.push({ gender: x.Gender, name: x.ParticipantName, grade: x.Grade })\n }\n })\n },\n { immediate: true }\n )\n\n return { internalReport }\n },\n})\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!./CoachOverageReport.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!./CoachOverageReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachOverageReport.vue?vue&type=template&id=056b34c0&\"\nimport script from \"./CoachOverageReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachOverageReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CoachOverageReport.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"report\"},[_c('img',{staticClass:\"report-logo\",attrs:{\"src\":require(\"@/assets/upward-sports-black.png\")}}),_c('h2',[_vm._v(\"Missing Evaluations\")]),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{class:[{ 'col-12': _vm.selectedID == 0 }, { 'col-6': _vm.selectedID > 0 }]},[_c('table',{staticClass:\"table\"},[_c('tr',[_c('th',[_vm._v(\"Participant\")]),_c('th',[_vm._v(_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('th',[_vm._v(\"Gender\")])]),_vm._l((_vm.internalReport),function(line){return _c('tr',{key:line.ParticipantName,class:['line-hover', { 'line-selected': _vm.selectedID == line.ParticipantID }],on:{\"click\":function($event){return _vm.select(line.ParticipantID)}}},[_c('td',[_c('div',[_vm._v(_vm._s(line.ParticipantName))])]),_c('td',[_vm._v(_vm._s(line.Grade))]),_c('td',[_vm._v(_vm._s(line.Gender))])])})],2)]),(_vm.selectedID > 0)?_c('div',{class:[{ 'col-6': _vm.selectedID > 0 }]},[(_vm.selectedID > 0)?_c('batch-eval',{attrs:{\"participant-i-d\":_vm.selectedID}}):_vm._e()],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:\"player-eval-wrapper\"},[(!_vm.loading)?_c('div',[(!_vm.loading && _vm.participant.programs && _vm.participant.programs.length)?_c('player-evaluation-edit-grid',{model:{value:(_vm.participant.programs[0].evaluations),callback:function ($$v) {_vm.$set(_vm.participant.programs[0], \"evaluations\", $$v)},expression:\"participant.programs[0].evaluations\"}}):_vm._e(),_c('button',{staticClass:\"btn btn-success mb-auto mr-2\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.saveParticipant}},[(_vm.loading)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_c('i',{staticClass:\"fa fa-check mr-2\"})],_vm._v(\" Save \")],2)],1):_c('div',[_c('loading')],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\nimport { computed, defineComponent, ref, watch } from '@vue/composition-api'\nimport PlayerEvaluationEditGrid from '@/components/PlayerEvaluationEditGrid.vue'\nimport { LeaguePlayerSeedInfo } from '@/lib/support/models/LeaguePlayerInfo/data'\nimport participantsClient from '@/clients/participantsClient'\nimport { LeaguePlayer } from '@/GeneratedTypes/LeaguePlayer'\nimport { getEmptyLeaguePlayer } from '@/lib/support/models/LeaguePlayer/data'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n components: { Loading, PlayerEvaluationEditGrid },\n props: {\n ParticipantID: {\n type: Number,\n required: true,\n default: 0,\n },\n LeagueID: {\n type: String,\n\n default: '',\n },\n },\n setup(props, ctx) {\n const internalLeagueID = ref(ctx?.parent?.$route?.params?.id ?? props.LeagueID)\n const participant = ref(getEmptyLeaguePlayer(new LeaguePlayerSeedInfo()))\n\n /**\n * Loads a participant from server\n */\n async function refreshParticipant() {\n participant.value = getEmptyLeaguePlayer(new LeaguePlayerSeedInfo())\n participant.value =\n (await participantsClient.retrieveParticipant(internalLeagueID.value, props.ParticipantID)) ??\n getEmptyLeaguePlayer(new LeaguePlayerSeedInfo())\n }\n\n /**\n * Calculates if we are in a loading state, note that the default player won't have a program assigned\n */\n const loading = computed(() => {\n participant.value.programs?.length && participant.value.programs[0].evaluations?.length\n })\n /**\n * Save a given participant including evaluation.\n */\n const saveParticipant = async () => {\n if (participant.value.programs?.length) {\n await participantsClient.save(internalLeagueID.value, participant.value)\n await refreshParticipant()\n }\n }\n watch(() => props.LeagueID, refreshParticipant, { immediate: true })\n watch(() => props.ParticipantID, refreshParticipant, { immediate: true })\n return { participant, saveParticipant, loading }\n },\n})\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!./BatchEval.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!./BatchEval.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BatchEval.vue?vue&type=template&id=e0288878&\"\nimport script from \"./BatchEval.vue?vue&type=script&lang=ts&\"\nexport * from \"./BatchEval.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./BatchEval.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, ref, watch, computed } from '@vue/composition-api'\nimport { EvaluationsMissingType } from '@/clients/reportsClient'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nimport { getEmptyLeaguePlayerInfo, LeaguePlayerSeedInfo } from '@/lib/support/models/LeaguePlayerInfo/data'\nimport BatchEval from '@/views/Programs/Divisions/TeamManagement/vues/batchevals/BatchEval.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n components: { BatchEval },\n props: {\n report: {\n type: Array as PropType>,\n default: () => [],\n required: true,\n },\n },\n\n setup(props) {\n const internalReport = ref>([])\n const isByAge = computed(() => store.getters.leagueAbstraction.isByAge)\n watch(\n () => props.report,\n () => (internalReport.value = props.report),\n { immediate: true }\n )\n const participantLoaded = ref(getEmptyLeaguePlayerInfo(new LeaguePlayerSeedInfo()))\n const selectedID = ref(0)\n function select(id: number) {\n selectedID.value = id\n }\n\n return { selectedID, select, participantLoaded, internalReport, isByAge }\n },\n})\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!./EvaluationsMissingReport.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!./EvaluationsMissingReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EvaluationsMissingReport.vue?vue&type=template&id=6161d93a&\"\nimport script from \"./EvaluationsMissingReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./EvaluationsMissingReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./EvaluationsMissingReport.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"report\"},[_c('div',{staticClass:\"d-flex justify-content-end\"},[_c('button',{staticClass:\"btn btn-link d-block\",on:{\"click\":_vm.download}},[_c('i',{staticClass:\"fas fa-file-download\"}),_vm._v(\" Download CSV \")])]),_c('img',{staticClass:\"report-logo\",attrs:{\"alt\":\"report logo\",\"src\":require(\"@/assets/upward-sports-black.png\")}}),_c('h2',[_vm._v(\"Carpool Requests Not Linked\")]),_c('table',{staticClass:\"table\"},[_vm._m(0),_vm._l((_vm.internalReport),function(line){return _c('tr',{key:line.ParticipantName},[_c('td',[_vm._v(_vm._s(line.DivisionName))]),_c('td',[_vm._v(_vm._s(line.ParticipantName))]),_c('td',[_vm._v(_vm._s(line.RequestedParticipantName))])])})],2)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',[_c('th',[_vm._v(\"Division\")]),_c('th',[_vm._v(\"Participant Making Request\")]),_c('th',[_vm._v(\"Requested Participant\")])])}]\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\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { CarpoolLinksBrokenReportType } from '@/clients/reportsClient'\nimport { downloadCSV } from '@/lib/common/csv/downloadCSV'\nimport { GridColumn } from '@/models/Grid/GridColumn'\n\nexport default defineComponent({\n props: {\n report: {\n type: Array as PropType>,\n default: () => [],\n required: true,\n },\n },\n\n setup(props) {\n const internalReport = ref>([])\n const columns: GridColumn[] = [\n { field: 'DivisionName', headerText: 'Division' },\n { field: 'ParticipantName', headerText: 'Participant Making Request' },\n { field: 'RequestedParticipantName', headerText: 'Requested Participant' },\n ]\n\n function download() {\n downloadCSV(columns, internalReport.value, 'carpool_request_not_linked.csv')\n }\n\n watch(\n () => props.report,\n () => (internalReport.value = props.report),\n { immediate: true }\n )\n\n return { internalReport, download }\n },\n})\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!./BrokenCarpoolLinkReport.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!./BrokenCarpoolLinkReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BrokenCarpoolLinkReport.vue?vue&type=template&id=6ddf7cd2&\"\nimport script from \"./BrokenCarpoolLinkReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./BrokenCarpoolLinkReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./BrokenCarpoolLinkReport.vue?vue&type=style&index=0&lang=scss&\"\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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n//import Vue from 'vue'\nimport { computed, defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { useReports } from '@/views/Programs/Divisions/TeamManagement/logic/reports'\nimport { getEmptyLeagueDivisionExtendedInfo } from '@/lib/support/models/LeagueDivisionExtendedInfo/data'\nimport { LeagueDivisionExtendedInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionExtendedInfo'\n\nimport Accordion from '@/components/Accordion.vue'\nimport AccordionItem from '@/components/AccordionItem.vue'\nimport ReportModal from '@/components/ReportModal.vue'\nimport BrokenCoachLinkReport from '@/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCoachLinkReport.vue'\nimport CoachOverageReport from '@/views/Programs/Divisions/TeamManagement/vues/reports/CoachOverageReport.vue'\nimport EvaluationsMissingReport from '@/views/Programs/Divisions/TeamManagement/vues/reports/EvaluationsMissingReport.vue'\nimport BrokenCarpoolLinkReport from '@/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCarpoolLinkReport.vue'\n\nexport default defineComponent({\n components: {\n CoachOverageReport,\n ReportModal,\n BrokenCoachLinkReport,\n EvaluationsMissingReport,\n BrokenCarpoolLinkReport,\n Accordion,\n AccordionItem,\n },\n props: {\n division: {\n type: Object as PropType,\n required: true,\n default: () => getEmptyLeagueDivisionInfo(),\n },\n },\n setup(props) {\n const reports = useReports()\n const seeBrokenCoachLink = ref(false)\n const seeBrokenCarpoolLink = ref(false)\n const seeMissingEvaluations = ref(false)\n const seeCoachLinkStatus = ref(false)\n watch(\n () => props.division,\n () => {\n if (props.division) {\n reports.refresh(\n props.division?.upwardLeagueID ?? '',\n props.division?.typeProgramID ?? '',\n props.division.divisionID\n )\n }\n },\n { immediate: true }\n )\n\n return {\n summary: computed(\n () =>\n reports.summary?.value ??\n ({ value: getEmptyLeagueDivisionExtendedInfo() } as { value: LeagueDivisionExtendedInfo })\n ),\n seeBrokenCoachLink,\n seeBrokenCarpoolLink,\n seeCoachLinkStatus,\n seeMissingEvaluations,\n reportCoachLinks: reports.reportCoachLinks,\n reportCarpoolLinks: reports.reportCarpoolLinks,\n reportEvaluationsMissing: reports.reportEvaluationsMissing,\n reportCoachOverage: reports.reportCoachOverage,\n }\n },\n})\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!./ReportFooter.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!./ReportFooter.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReportFooter.vue?vue&type=template&id=8072500c&\"\nimport script from \"./ReportFooter.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReportFooter.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ReportFooter.vue?vue&type=style&index=0&lang=scss&\"\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 (_vm.guidelineInfo)?_c('modal',{attrs:{\"title\":'Automatic ' + _vm.teamSquadText + ' Participant Assignment (Draft)',\"header-class\":\"bg-primary text-white\",\"header-icon\":\"fas fa-clipboard-check\"},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[(!_vm.readyToDraft)?_c('div',[_c('p',{staticClass:\"alert alert-warning\"},[_vm._v(\" You have \"),_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.brokenLinksCount))]),_vm._v(\" registrants in this division who have requested a carpool link that is not currently linked to a player. You are encouraged to link any carpool requests prior to running the draft to ensure the requests are honored. \")]),_c('broken-carpool-link-report',{attrs:{\"report\":_vm.reportCarpoolLinks}})],1):_vm._e(),(_vm.readyToDraft)?_c('auto-team-player-assignment-choices',{attrs:{\"team-squad-text\":_vm.teamSquadText,\"has-players-assigned\":_vm.hasPlayersAssigned,\"guideline-info\":_vm.guidelineInfo},on:{\"selected\":_vm.optionsSelected}}):_vm._e(),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-outline-dark\",on:{\"click\":_vm.hideAutoGenerationModal}},[_vm._v(\"Cancel\")]),(!_vm.readyToDraft)?[_c('button',{staticClass:\"btn btn-outline-dark\",on:{\"click\":function($event){return _vm.overrideBrokenLinkWarning(true)}}},[_vm._v(\" Continue to Draft \")]),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.goToParticipants}},[_vm._v(\"Fix Participant Links\")])]:_vm._e(),(_vm.readyToDraft)?[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.draftParticipants}},[_vm._v(\"Assign Participants Automatically\")])]:_vm._e()],2)],2):_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',[(_vm.hasPlayersAssigned)?_c('div',{staticClass:\"alert alert-warning\"},[_c('h5',[_vm._v(\"Warning\")]),_c('p',{staticClass:\"small\"},[_vm._v(\" This division already has 1 or more participants assigned to a \"+_vm._s(_vm.lowerCaseTeamSquadText)+\". Please review the options available for \"),_c('u',[_vm._v(\"Draft Mode\")]),_vm._v(\" carefully before proceeding with this action. To lock players, close this modal and use the lock icon next to a participant's name. Click Assign Participants Automatically to start the draft process again. \")])]):_vm._e(),_c('div',[_c('p',{staticClass:\"small\"},[_vm._v(\" Automatically assign participants to \"+_vm._s(_vm.lowerCaseTeamSquadText)+\"s. The automatic draft will create the most equally-balanced \"+_vm._s(_vm.lowerCaseTeamSquadText)+\"s. Keep in mind that the draft is affected by coach links, practice nights exclusions, and carpool links. You may choose to manually move participants after the draft is complete. \")])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6 mt-4\"},[_c('h6',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.teamSquadText)+\" Division Information\")]),_c('div',{staticClass:\"list-group alternate-bg-light-1-3\"},[_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Number of Registrants\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.registrantCount))])])]),_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Recommended \"+_vm._s(_vm.teamSquadText)+\" Size\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.suggestedPlayersPerTeam))])])]),_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Minimum Number of \"+_vm._s(_vm.teamSquadText)+\"s\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.minimumTeamCount))])])]),_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Maximum Number of \"+_vm._s(_vm.teamSquadText)+\"s\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.maximumTeamCount))])])]),_c('div',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Suggested Number of \"+_vm._s(_vm.teamSquadText)+\"s\")]),_c('div',{staticClass:\"col-auto\"},[_vm._v(_vm._s(_vm.guidelineInfo.suggestedTeamCount))])])])])]),_c('div',{staticClass:\"col-md-6 border-md-left mt-4\"},[_c('h6',[_vm._v(\"Draft Preferences\")]),_c('radio-group-input',{attrs:{\"itemsList\":[\n { text: 'Honor Carpool Links, then Practice Night Exclusions', value: false },\n { text: 'Honor Practice Night Exclusions, then Carpool Links', value: true } ],\"textPropertyName\":\"text\",\"valuePropertyName\":\"value\"},model:{value:(_vm.practiceNightsFirst),callback:function ($$v) {_vm.practiceNightsFirst=$$v},expression:\"practiceNightsFirst\"}}),_c('h6',[_vm._v(\"Draft Mode\")]),_c('radio-group-input',{attrs:{\"itemsList\":[\n { text: 'Full Draft - Clear all participants (ignores lock)', value: 'FULLDRAFT' },\n { text: 'Draft Unlocked Participants Only', value: 'DRAFTUNLOCKEDONLY' },\n { text: 'Draft Unassigned Participants Only', value: 'DRAFTUNASSIGNEDONLY' } ],\"textPropertyName\":\"text\",\"valuePropertyName\":\"value\"},model:{value:(_vm.draftingMode),callback:function ($$v) {_vm.draftingMode=$$v},expression:\"draftingMode\"}})],1),_c('div',{staticClass:\"col-md-6 border-md-left mt-4\"})])])}\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\nimport { computed, defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport { TeamGeneratorGuidelineInfo } from '@/GeneratedTypes/ListInfo/TeamGeneratorGuidelineInfo'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\n\nexport interface DraftOptions {\n drafting: string\n practiceNightsFirst: boolean\n}\n\nexport default defineComponent({\n props: {\n teamSquadText: { type: String, required: true },\n hasPlayersAssigned: { type: Boolean, required: false, default: false },\n guidelineInfo: {\n type: Object as PropType,\n required: false,\n default: null,\n },\n },\n components: {\n RadioGroupInput,\n },\n setup(props, ctx) {\n const practiceNightsFirst = ref(false)\n const draftingMode = ref('DRAFTUNLOCKEDONLY')\n\n const lowerCaseTeamSquadText = computed(() => props.teamSquadText.toLowerCase())\n\n watch(\n () => draftingMode.value,\n () => emitData()\n )\n\n watch(\n () => practiceNightsFirst.value,\n () => emitData()\n )\n\n function emitData() {\n ctx.emit('selected', {\n drafting: draftingMode.value,\n practiceNightsFirst: practiceNightsFirst.value,\n } as DraftOptions)\n }\n\n return {\n lowerCaseTeamSquadText,\n draftingMode,\n practiceNightsFirst,\n }\n },\n})\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!./AutoTeamPlayerAssignmentChoices.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!./AutoTeamPlayerAssignmentChoices.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AutoTeamPlayerAssignmentChoices.vue?vue&type=template&id=649b6c3e&\"\nimport script from \"./AutoTeamPlayerAssignmentChoices.vue?vue&type=script&lang=ts&\"\nexport * from \"./AutoTeamPlayerAssignmentChoices.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, ref, watch, onBeforeUnmount, onMounted } from '@vue/composition-api'\n\nimport { useReports } from '@/views/Programs/Divisions/TeamManagement/logic/reports'\n\nimport teamsClient from '@/clients/teamsClient'\nimport divisionsClient from '@/clients/divisionsClient'\n\nimport { TeamGeneratorGuidelineInfo } from '@/GeneratedTypes/ListInfo/TeamGeneratorGuidelineInfo'\n\nimport Modal from '@/components/Modal.vue'\nimport AutoTeamPlayerAssignmentChoices from '@/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentChoices.vue'\nimport BrokenCarpoolLinkReport from '@/views/Programs/Divisions/TeamManagement/vues/reports/BrokenCarpoolLinkReport.vue'\n\nexport default defineComponent({\n props: {\n show: { type: Boolean, required: true },\n teamSquadText: { type: String, required: true },\n divisionId: { type: Number, required: false, default: false },\n hasPlayersAssigned: { type: Boolean, required: false, default: false },\n typeProgramId: { type: String, required: false, default: '' },\n upwardLeagueId: { type: String, required: false, default: '' },\n },\n components: {\n Modal,\n BrokenCarpoolLinkReport,\n AutoTeamPlayerAssignmentChoices,\n },\n setup(props, ctx) {\n const reports = useReports()\n const draftingMode = ref('DRAFTUNLOCKEDONLY')\n const guidelineInfo = ref(null)\n const modalIsVisible = ref(false)\n const practiceNightsFirst = ref(false)\n const overrideWarning = ref(false)\n\n const lowerCaseTeamSquadText = computed(() => props.teamSquadText.toLowerCase())\n modalIsVisible.value = props.show\n\n async function draftParticipants() {\n if (props.upwardLeagueId && props.divisionId && props.typeProgramId) {\n await divisionsClient.runPlayerDraft(\n props.upwardLeagueId,\n props.typeProgramId,\n props.divisionId,\n draftingMode.value,\n practiceNightsFirst.value\n )\n ctx.emit('playersDrafted')\n }\n modalIsVisible.value = false\n }\n\n async function fetchAndSetBrokenLinks() {\n await reports.fetchAndSetBrokenCarpoolLinks(props.upwardLeagueId, props.typeProgramId, props.divisionId)\n }\n\n async function doShowAutoGenerationModal() {\n if (props.upwardLeagueId && props.divisionId && props.typeProgramId) {\n guidelineInfo.value = await teamsClient.getTeamGenerationGuidelines({\n leagueId: props.upwardLeagueId,\n divisionId: props.divisionId,\n typeProgramId: props.typeProgramId,\n })\n } else {\n guidelineInfo.value = null\n }\n\n if (guidelineInfo.value) {\n modalIsVisible.value = true\n }\n }\n\n function hideAutoGenerationModal() {\n modalIsVisible.value = false\n }\n\n function overrideBrokenLinkWarning(val: boolean) {\n overrideWarning.value = val\n }\n\n function optionsSelected(choices: { drafting: string; practiceNightsFirst: boolean }) {\n draftingMode.value = choices.drafting\n practiceNightsFirst.value = choices.practiceNightsFirst\n }\n\n function goToParticipants() {\n const current = ctx.root.$route.fullPath.split(props.upwardLeagueId)\n ctx.root.$router.push(`${current[0]}${props.upwardLeagueId}/participants/list`)\n }\n\n const brokenLinksCount = computed(() => reports.reportCarpoolLinks.value.length)\n const readyToDraft = computed(() => {\n return brokenLinksCount.value == 0 || overrideWarning.value == true\n })\n\n watch(\n () => modalIsVisible.value,\n async () => {\n if (modalIsVisible.value != props.show) {\n ctx.emit('update', modalIsVisible.value)\n }\n if (modalIsVisible.value) {\n await doShowAutoGenerationModal()\n }\n overrideWarning.value = false\n }\n )\n\n watch(\n () => props.show,\n () => (modalIsVisible.value = props.show)\n )\n\n watch(\n () => props.divisionId,\n async () => await fetchAndSetBrokenLinks()\n )\n\n watch(\n () => props.typeProgramId,\n async () => await fetchAndSetBrokenLinks()\n )\n\n onMounted(async () => await fetchAndSetBrokenLinks())\n\n onBeforeUnmount(() => {\n ctx.emit('update', false)\n overrideWarning.value = false\n })\n\n return {\n hideAutoGenerationModal,\n draftParticipants,\n guidelineInfo,\n lowerCaseTeamSquadText,\n draftingMode,\n modalIsVisible,\n practiceNightsFirst,\n reportCarpoolLinks: reports.reportCarpoolLinks,\n optionsSelected,\n readyToDraft,\n overrideBrokenLinkWarning,\n brokenLinksCount,\n goToParticipants,\n }\n },\n})\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!./AutoTeamPlayerAssignmentModal.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!./AutoTeamPlayerAssignmentModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AutoTeamPlayerAssignmentModal.vue?vue&type=template&id=78dfc54e&\"\nimport script from \"./AutoTeamPlayerAssignmentModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AutoTeamPlayerAssignmentModal.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\n\nimport DivisionHeader from '@/views/Programs/Divisions/vues/DivisionHeader.vue'\nimport TeamManager from '@/views/Programs/Divisions/TeamManagement/TeamManager.vue'\nimport DraftSummaryReportModal from '@/views/Programs/Divisions/vues/DraftSummaryReportModal.vue'\nimport FilterModal from '@/views/Programs/Divisions/TeamManagement/vues/FilterModal.vue'\nimport ReportFooter from '@/views/Programs/Divisions/TeamManagement/vues/ReportFooter.vue'\nimport AutoTeamPlayerAssignmentModal from '@/views/Programs/Divisions/vues/AutoTeamPlayerAssignmentModal.vue'\nimport Loading from '@/elements/Loading.vue'\nimport Modal from '@/components/Modal.vue'\n\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { HeaderValue } from '@/views/Programs/Divisions/ext/headerValue'\nimport { getUpwardLeagueId } from '@/views/Programs/Divisions/ext/divisionUtils'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { useManagerLogic } from '@/views/Programs/Divisions/TeamManagement/logic/ManagerLogic'\nimport { useReports } from '@/views/Programs/Divisions/TeamManagement/logic/reports'\nimport userPreferences from '@/views/Programs/Divisions/TeamManagement/logic/userPreferences'\n\nimport divisionsClient from '@/clients/divisionsClient'\nimport teamsClient from '@/clients/teamsClient'\nimport store from '@/store'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\n\nexport default defineComponent({\n name: 'TeamManagement',\n components: {\n TeamManager,\n Loading,\n DivisionHeader,\n ReportFooter,\n FilterModal,\n Modal,\n AutoTeamPlayerAssignmentModal,\n DraftSummaryReportModal,\n },\n setup(props, ctx) {\n const headerValues = ref(null)\n const allLeagueDivisions = ref(null)\n const manager = useManagerLogic()\n const reports = useReports()\n const userPrefs = userPreferences()\n\n const programID = ref('')\n const divisionID = ref(-1)\n const teamsCount = ref(99)\n const showFilters = ref(false)\n const showReports = ref(false)\n const showHeaders = ref(true)\n const showAutoGenerationModal = ref(false)\n const showDraftSummaryReport = ref(false)\n\n function toggleHeader(val: any) {\n showHeaders.value = val\n }\n\n const upwardLeagueId = computed(() => getUpwardLeagueId(ctx.root))\n\n const division = computed(() => headerValues.value?.selectedDivision)\n\n const refreshingAll = computed(() => manager.refreshing.value)\n\n const templateDivision = computed(\n () => headerValues.value?.selectedDivision ?? getEmptyLeagueDivisionInfo()\n )\n\n const isLoading = ref(true)\n\n const isLeague = computed(\n () => store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE\n )\n\n const reportCount = computed((): number => {\n let count = 0\n const s = reports.summary.value\n\n if (s.brokenCarpoolLinkCount > 0) count++\n if (s.brokenCoachLinkCount > 0) count++\n if (s.missingEvalScoresCount > 0) count++\n if (s.coachLinksExceededCount > 0) count++\n\n return count\n })\n\n async function onDivisionChanged(hdrVals: HeaderValue | null) {\n if (hdrVals) {\n headerValues.value = hdrVals\n }\n\n if (divisionID.value != hdrVals?.selectedDivision?.divisionID ?? -1) {\n manager.setDivisionAndRefresh(hdrVals?.selectedDivision || undefined)\n }\n programID.value = hdrVals?.selectedTypeProgramID ?? ''\n divisionID.value = hdrVals?.selectedDivision?.divisionID ?? -1\n\n await setTeamsCount(divisionID.value, programID.value)\n isLoading.value = false\n }\n\n onMounted(async () => {\n isLoading.value = true\n allLeagueDivisions.value = await divisionsClient.retrieveAll(upwardLeagueId.value)\n if (allLeagueDivisions.value?.length == 0) {\n isLoading.value = false\n }\n })\n\n const divisionCount = computed(() => {\n let count = allLeagueDivisions.value ? allLeagueDivisions.value.length : -1\n if (programID.value && allLeagueDivisions.value) {\n const divisions = allLeagueDivisions.value.filter((d) => d.typeProgramID == programID.value)\n count = divisions ? divisions.length : -1\n }\n return count\n })\n\n async function setTeamsCount(divID: number | null, typeProgramID: string) {\n if (divID === -1) {\n divID = null\n }\n\n if (previousDivisionID.value === divID && previousTypeProgramID.value === typeProgramID) {\n return\n }\n\n if (divID && typeProgramID) {\n previousDivisionID.value = divID\n previousTypeProgramID.value = typeProgramID\n\n const teams = await teamsClient.retrieveTeamList({\n leagueId: upwardLeagueId.value,\n divisionId: divID,\n typeProgramId: typeProgramID!,\n })\n teamsCount.value = 0\n if (teams) {\n teamsCount.value = teams.length\n }\n }\n }\n\n function clearFilter() {\n userPrefs.resetFilters()\n }\n\n function doShowAutoGenerationModal() {\n showAutoGenerationModal.value = true\n }\n\n async function onPlayersDrafted() {\n await manager.refresh()\n showDraftSummaryReport.value = true\n }\n\n const hasPlayersAssigned = computed(() => !!manager.teamsOnField.value.find((t) => t.playerCount > 0))\n\n function getTeamSquadText(lower: boolean): string {\n if (\n headerValues.value &&\n headerValues.value.selectedDivision &&\n headerValues.value.cheerProgramTypeID === headerValues.value.selectedDivision.typeProgramID\n ) {\n return lower ? 'squad' : 'Squad'\n }\n return lower ? 'team' : 'Team'\n }\n\n const previousDivisionID = ref(null)\n const previousTypeProgramID = ref(null)\n\n watch(\n () => headerValues.value?.selectedDivision,\n () => {\n const div = headerValues.value?.selectedDivision\n reports.refresh(div?.upwardLeagueID ?? '', div?.typeProgramID ?? '', div?.divisionID ?? 0)\n },\n { deep: true }\n )\n\n return {\n getEmptyLeagueDivisionInfo,\n showHeaders,\n onDivisionChanged,\n refreshingAll,\n isLeague,\n teamsCount,\n clearFilter,\n showFilters,\n divisionCount,\n reportCount,\n showReports,\n doShowAutoGenerationModal,\n showAutoGenerationModal,\n programID,\n divisionID,\n headerValues,\n toggleHeader,\n division,\n getTeamSquadText,\n hasPlayersAssigned,\n onPlayersDrafted,\n showDraftSummaryReport,\n isLoading,\n templateDivision,\n }\n },\n})\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!./TeamManagement.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!./TeamManagement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TeamManagement.vue?vue&type=template&id=4bf0ed48&\"\nimport script from \"./TeamManagement.vue?vue&type=script&lang=ts&\"\nexport * from \"./TeamManagement.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 { VBadge } from 'vuetify/lib/components/VBadge';\ninstallComponents(component, {VBadge})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row mt-4\"},[_c('div',{staticClass:\"col-8\"},[_c('div',{staticClass:\"row\"},[_c('division-header',{attrs:{\"title\":\"Standings and Scores\"},on:{\"divisionScoreStandingHeaderChanged\":_vm.onDivisionChanged,\"divisionScoreStandingHeaderIncompleteGamesChanged\":_vm.onIncompleteGameChanged,\"divisionScoreStandingHeaderTeamRoundChanged\":_vm.onTeamRoundChanged}})],1),_c('div',{staticClass:\"row\"},[(_vm.loading)?_c('div',{staticClass:\"mt-4\"},[_c('loading')],1):_vm._e(),(!_vm.loading && _vm.divisions)?[_c('div',{staticClass:\"col-xl-12\"},[_c('division-game-list',{attrs:{\"program-id\":_vm.selectedProgramId,\"division-id\":_vm.selectedDivisionId,\"team-id\":_vm.selectedTeamId,\"round-id\":_vm.selectedRoundId,\"incomplete-games-only\":_vm.incompleteGamesOnly,\"increment-id\":_vm.currentIncrementID},on:{\"divisionScoreGameScoreChanged\":_vm.onGameScoreChanged}})],1)]:_vm._e()],2)]),_c('div',{staticClass:\"col-xl-4 mt-3 border-xl-left\"},[_c('division-standing-list',{attrs:{\"program-id\":_vm.selectedProgramId,\"division-id\":_vm.selectedDivisionId,\"increment-id\":_vm.currentIncrementID}})],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',[(_vm.isLoading)?_c('loading',{staticClass:\"m-4\"}):_vm._e(),(!_vm.isLoading)?_c('div',{staticClass:\"bg-light-1 pl-3 pr-3 pb-3\"},[_c('h6',{staticClass:\"text-center pt-4 pb-3\"},[_vm._v(\"Division Standings\")]),_c('div',{staticClass:\"bg-white p-3\"},[_c('simple-grid',{staticClass:\"text-center\",attrs:{\"grid-data\":_vm.divisionStandingList,\"columns\":_vm.columns,\"table-striped\":true,\"disableHeaderSort\":true}})],1)]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { LeagueDivisionStandingInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionStandingInfo'\n\nexport const divisionStandings = (list: LeagueDivisionStandingInfo[]) => {\n // Sort the list by Win Percentage (descending) and then teamName (ascending)\n list.sort((a, b) => {\n const wpctA = (a.teamWins + 0.5 * a.teamTies) / (a.teamWins + a.teamLosses + a.teamTies)\n const wpctB = (b.teamWins + 0.5 * b.teamTies) / (b.teamWins + b.teamLosses + b.teamTies)\n\n if (wpctA !== wpctB) {\n return wpctB - wpctA // Descending order based on WPCT\n }\n if (a.teamWins !== b.teamWins) {\n return b.teamWins - a.teamWins // Descending order based on total Wins\n }\n return (a.teamName || '').localeCompare(b.teamName || '') // Alphabetical tiebreaker\n })\n\n // Directly map the sorted list to the desired format\n const standings: divisionStanding[] = list.map((item) => ({\n teamID: item.teamID,\n teamName: item.teamName,\n teamWins: item.teamWins,\n teamLosses: item.teamLosses,\n teamTies: item.teamTies,\n upwardTeamID: item.upwardTeamID,\n }))\n\n return standings\n}\n\nexport interface divisionStanding {\n teamID: number\n teamName: string | null\n upwardTeamID: string | null\n teamWins: number\n teamLosses: number\n teamTies: number\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport divisionsClient from '@/clients/divisionsClient'\nimport Loading from '@/elements/Loading.vue'\nimport {\n divisionStandings,\n divisionStanding,\n} from '@/lib/support/models/GeneratedTypes/ListInfo/LeagueDivisionStandingsInfo'\n\nexport default defineComponent({\n name: 'DivisionStandingsList',\n components: {\n SimpleGrid,\n Loading,\n },\n props: {\n ProgramId: { type: String, required: false, default: null },\n DivisionId: { type: Number as PropType, required: true, default: 1 },\n IncrementId: { type: Number as PropType, required: true, default: 0 },\n },\n setup(props, ctx) {\n const isLoading = ref(true)\n const divisionStandingList = ref([])\n const columns = ref([\n { field: 'teamName', headerText: 'Team' } as GridColumn,\n { field: 'teamWins', headerText: 'Wins' } as GridColumn,\n { field: 'teamLosses', headerText: 'Losses' } as GridColumn,\n { field: 'teamTies', headerText: 'Ties' } as GridColumn,\n ])\n onMounted(async () => {\n await loadList()\n })\n\n async function loadList() {\n isLoading.value = true\n // Ensure `ProgramId` is a string and not null or undefined\n const programId = props.ProgramId ? props.ProgramId : ''\n\n const divisionId = props.DivisionId\n\n try {\n if (props.ProgramId) {\n const list = await divisionsClient.retrieveStandingByDivision(\n ctx.root.$route.params.id,\n programId,\n divisionId\n )\n if (list) {\n divisionStandingList.value = divisionStandings(list).map((x) => ({ ...x }))\n }\n } else {\n divisionStandingList.value = []\n }\n } finally {\n isLoading.value = false\n }\n }\n\n watch(\n () => props.ProgramId,\n async () => {\n await loadList()\n }\n )\n\n watch(\n () => props.DivisionId,\n async () => {\n await loadList()\n }\n )\n\n watch(\n () => props.IncrementId,\n async () => {\n await loadList()\n }\n )\n\n return {\n isLoading,\n divisionStandingList,\n columns,\n }\n },\n})\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!./DivisionStandingList.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!./DivisionStandingList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionStandingList.vue?vue&type=template&id=495e12f2&\"\nimport script from \"./DivisionStandingList.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionStandingList.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('div',[_c('h5',[_vm._v(\" Scheduled Games for \"),_c('i',{staticClass:\"text-primary\"},[_vm._v(_vm._s(_vm.divisionNameEx))])]),(_vm.isLoading)?_c('loading',{staticClass:\"m-4\"}):_vm._e(),(!_vm.isLoading)?[(_vm.isWinLossDivision)?_c('div',{staticClass:\"col-sm-12\"},[(!_vm.isLoading)?_c('div',{staticClass:\"bg-light-1 pl-3 pr-3 pb-3\"},[_c('div',{staticClass:\"bg-white p-3\"},[_c('simple-grid',{staticClass:\"text-center\",attrs:{\"grid-data\":_vm.divisionGameList,\"columns\":_vm.columnsWinLoss,\"table-striped\":true,\"disableHeaderSort\":false,\"show-edit-button\":true,\"editButtonClasses\":\"btn\",\"edit-button-inner-html\":\"\"},on:{\"editButtonClicked\":_vm.editClicked,\"rowDoubleClicked\":_vm.editClicked}})],1)]):_vm._e()]):_vm._e(),(_vm.isWinLossScoringDivision)?_c('div',{staticClass:\"col-sm-12\"},[(!_vm.isLoading)?_c('div',{staticClass:\"bg-light-1 pl-3 pr-3 pb-3\"},[_c('div',{staticClass:\"bg-white p-3\"},[_c('simple-grid',{staticClass:\"text-center\",attrs:{\"grid-data\":_vm.divisionGameList,\"columns\":_vm.columnsWinLossScoring,\"table-striped\":true,\"disableHeaderSort\":false,\"show-edit-button\":true,\"editButtonClasses\":\"btn\",\"edit-button-inner-html\":\"\"},on:{\"editButtonClicked\":_vm.editClicked,\"rowDoubleClicked\":_vm.editClicked}})],1)]):_vm._e()]):_vm._e()]:_vm._e(),_c('game-modal',{attrs:{\"division-list\":_vm.gameDivisionList,\"facility-list\":_vm.facilityList,\"league\":_vm.currentLeague,\"round-list\":_vm.roundList,\"game\":_vm.currentGame,\"team-list\":_vm.teams,\"program-i-d\":_vm.selectedProgramId,\"game-length\":_vm.currentDivisionRoundMax,\"type-league-scoring-i-d\":_vm.currentDivisionLeagueScoringID,\"editScores\":true},on:{\"confirmed\":_vm.confirmGame,\"deleted\":_vm.deleteGame},model:{value:(_vm.gameModalShowing),callback:function ($$v) {_vm.gameModalShowing=$$v},expression:\"gameModalShowing\"}}),_c('alert',{attrs:{\"type\":_vm.alertType},model:{value:(_vm.showDeleteConfirmed),callback:function ($$v) {_vm.showDeleteConfirmed=$$v},expression:\"showDeleteConfirmed\"}},[_vm._v(\"Game Deleted\")])],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('modal',{staticClass:\"game_modal\",attrs:{\"title\":\"Game Info\",\"is-small\":true},model:{value:(_vm.isModalOpen),callback:function ($$v) {_vm.isModalOpen=$$v},expression:\"isModalOpen\"}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 dense\"},[_c('select-input',{attrs:{\"label\":\"DIVISION\",\"items-list\":_vm.divisionList,\"value-property-name\":\"divisionID\",\"text-property-name\":\"divisionName\",\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.divisionID),callback:function ($$v) {_vm.divisionID=$$v},expression:\"divisionID\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 dense\"},[_c('select-input',{attrs:{\"label\":\"ROUND\",\"items-list\":_vm.rounds,\"value-property-name\":\"id\",\"text-property-name\":\"description\",\"show-blank-item\":true,\"blank-item-text\":\"Select a Round\",\"blank-item-value\":\"0\",\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.roundID),callback:function ($$v) {_vm.roundID=$$v},expression:\"roundID\"}})],1)]),_c('div',{staticClass:\"row align-items-center\"},[_c('div',{staticClass:\"col-5 dense\"},[_c('select-input',{attrs:{\"label\":\"Home Team\",\"items-list\":_vm.teams,\"value-property-name\":\"teamID\",\"text-property-name\":\"teamName\",\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.homeTeam),callback:function ($$v) {_vm.homeTeam=$$v},expression:\"homeTeam\"}})],1),_c('div',{staticClass:\"col-1 dense\"},[_c('button',{attrs:{\"title\":\"swap teams\"},on:{\"click\":_vm.swap}},[_c('i',{staticClass:\"fas fa-exchange-alt m-1\"})])]),_c('div',{staticClass:\"col-6 dense\"},[_c('select-input',{attrs:{\"label\":\"Away Team\",\"items-list\":_vm.teams,\"value-property-name\":\"teamID\",\"text-property-name\":\"teamName\",\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.awayTeam),callback:function ($$v) {_vm.awayTeam=$$v},expression:\"awayTeam\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('checkbox-input',{attrs:{\"label\":\"Is Tournament Game?\",\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.tournamentGame),callback:function ($$v) {_vm.tournamentGame=$$v},expression:\"tournamentGame\"}})],1)]),(_vm.gameResultsEnabled && _vm.game.gameID && _vm.editGameScheduleMode)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 dense\"},[_c('div',{staticClass:\"p-2 row-break\"},[_vm._v(\"Game Scores (Optional)\")])])]):_vm._e(),(_vm.divisionWithScoring && _vm.editGameScheduleMode)?_c('div',{staticClass:\"row align-items-center\"},[_c('div',{staticClass:\"col-6\"},[_c('number-input',{staticClass:\"mb-0\",attrs:{\"label\":\"Home Team Score\",\"showSpinButton\":false,\"vee-validate-rules\":\"min:0|required\"},model:{value:(_vm.homeTeamScore),callback:function ($$v) {_vm.homeTeamScore=$$v},expression:\"homeTeamScore\"}})],1),_c('div',{staticClass:\"col-6\"},[_c('number-input',{staticClass:\"mb-0\",attrs:{\"label\":\"Away Team Score\",\"showSpinButton\":false,\"vee-validate-rules\":\"min:0|required\"},model:{value:(_vm.awayTeamScore),callback:function ($$v) {_vm.awayTeamScore=$$v},expression:\"awayTeamScore\"}})],1)]):_vm._e(),(_vm.divisionWinLoss && _vm.editGameScheduleMode)?_c('div',{staticClass:\"col-12\"},[_c('select-input',{attrs:{\"label\":\"Winning Team\",\"items-list\":_vm.winningteams,\"value-property-name\":\"teamID\",\"text-property-name\":\"teamName\"},model:{value:(_vm.winningTeamID),callback:function ($$v) {_vm.winningTeamID=$$v},expression:\"winningTeamID\"}})],1):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 dense\"},[_c('div',{staticClass:\"p-2 row-break\"},[_vm._v(\"Game Schedule (optional)\")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 text-muted\"},[_vm._v(\"Scheduling this game is not required to save the above game.\")])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 dense\"},[_c('select-input',{attrs:{\"label\":\"Location\",\"items-list\":_vm.facilityList,\"value-property-name\":\"facilityID\",\"text-property-name\":\"facilityName\",\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.facilityID),callback:function ($$v) {_vm.facilityID=$$v},expression:\"facilityID\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4 dense\"},[_c('date-input',{attrs:{\"label\":\"Day\",\"disabled\":_vm.editGameScheduleMode},model:{value:(_vm.day),callback:function ($$v) {_vm.day=$$v},expression:\"day\"}})],1),_c('div',{staticClass:\"col-4 dense\"},[(_vm.availability.length)?_c('time-picker',{attrs:{\"label\":\"Start Time\",\"min\":_vm.minTime,\"max\":_vm.maxTime,\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.startTime),callback:function ($$v) {_vm.startTime=$$v},expression:\"startTime\"}}):_vm._e()],1),_c('div',{staticClass:\"col-4 dense\"},[(_vm.availability.length)?_c('time-picker',{attrs:{\"label\":\"End Time\",\"min\":_vm.minTime,\"max\":_vm.maxTime,\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.endTime),callback:function ($$v) {_vm.endTime=$$v},expression:\"endTime\"}}):_vm._e()],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 dense\"},[_c('combo-box-input',{attrs:{\"placeholder\":'Select one or more ' + _vm.refLabel.toLowerCase() + 's',\"label\":_vm.refLabel + 's',\"items-list\":_vm.approvedRefs,\"text-property-name\":\"formattedNameFirstLast\",\"value-property-name\":\"individualID\",\"multiple\":\"\",\"chips\":\"\",\"deletable-chips\":\"\",\"enabled\":!_vm.editGameScheduleMode},model:{value:(_vm.referees),callback:function ($$v) {_vm.referees=$$v},expression:\"referees\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"}),_c('div',{staticClass:\"col-4\"}),_c('div',{staticClass:\"col-4\"})])]),_c('template',{slot:\"footer\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"pb-2 col-12 dense\"},[(!_vm.isEmptyDivisionGame(_vm.gameValue) && !_vm.editGameScheduleMode)?_c('button',{staticClass:\"ml-2 btn btn-danger\",class:{ disabled: !_vm.shouldSubmitShow },attrs:{\"disabled\":!_vm.shouldSubmitShow},on:{\"click\":_vm.deleted}},[_c('i',{staticClass:\"fa fa-times\"}),_vm._v(\" Delete Game \")]):_vm._e(),_c('button',{staticClass:\"float-right ml-2 btn btn-success\",class:{ disabled: !_vm.shouldSubmitShow },attrs:{\"disabled\":!_vm.shouldSubmitShow},on:{\"click\":_vm.confirmed}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" \"),(_vm.game.gameID)?_c('span',[_vm._v(\"Save\")]):_c('span',[_vm._v(\"Add Game\")])]),_c('button',{staticClass:\"float-right ml-2 btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")])])])])])],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('base-input-wrapper',{attrs:{\"required\":_vm.required,\"label\":_vm.label,\"prepend-icon\":_vm.prependIcon,\"append-icon\":_vm.appendIcon,\"id\":_vm.elementId}},[_c('v-autocomplete',{staticClass:\"form-control combobox\",attrs:{\"id\":_vm.elementId,\"items\":_vm.itemsList,\"solo\":\"\",\"chips\":_vm.chips,\"deletable-chips\":_vm.deletableChips,\"small-chips\":\"\",\"dense\":_vm.dense,\"multiple\":_vm.multiple,\"placeholder\":_vm.placeholder,\"item-text\":_vm.textProperty,\"item-value\":_vm.valueProperty,\"disabled\":!_vm.enabled},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})],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\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport BaseInputWrapper from '@/elements/BaseInputWrapper.vue'\nimport uuid from 'uuid'\n\nexport default defineComponent({\n name: 'ComboBoxInput',\n components: {\n BaseInputWrapper,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n multiple: { type: Boolean, default: false, required: false },\n chips: { type: Boolean, default: false, required: false },\n dense: { type: Boolean, default: false, required: false },\n deletableChips: { type: Boolean, default: false, required: false },\n enabled: { type: Boolean, default: true, required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n id: { type: String, default: '', required: false },\n value: { required: true },\n textPropertyName: { type: String, default: '', required: false },\n valuePropertyName: { type: String, default: '', required: false },\n placeholder: { type: String, default: '', required: false },\n itemsList: { type: Array, required: true },\n },\n setup(props, ctx) {\n const guid = ref(uuid.v4())\n const internalValue = ref(props.value)\n\n const elementId = computed(() => props.id || `combobox-${guid.value}`)\n\n watch(\n () => internalValue.value,\n () => {\n ctx.emit('input', internalValue.value)\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (internalValue.value !== props.value) {\n internalValue.value = props.value\n }\n }\n )\n\n const valueProperty = computed(() => {\n if (!props.valuePropertyName && props.textPropertyName) {\n return props.textPropertyName\n }\n return props.valuePropertyName\n })\n\n const textProperty = computed(() => {\n if (!props.textPropertyName && props.valuePropertyName) {\n return props.valuePropertyName\n }\n return props.textPropertyName\n })\n\n return {\n elementId,\n internalValue,\n textProperty,\n valueProperty,\n }\n },\n})\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!./ComboBoxInput.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!./ComboBoxInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ComboBoxInput.vue?vue&type=template&id=281898e0&scoped=true&\"\nimport script from \"./ComboBoxInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./ComboBoxInput.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ComboBoxInput.vue?vue&type=style&index=0&id=281898e0&lang=scss&scoped=true&\"\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 \"281898e0\",\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';\ninstallComponents(component, {VAutocomplete})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch, onMounted, PropType, nextTick } from '@vue/composition-api'\nimport { getProps, useModalValue } from '@/composables/ModalValue'\nimport ComboBoxInput from '@/elements/ComboBoxInput.vue'\nimport Modal from '@/components/Modal.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport NumberInput from '@/elements/NumberInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport {\n decrementingDGStrategy,\n DivisionGameTypes,\n getEmptyDivisionGame,\n isEmptyDivisionGame,\n} from '@/lib/support/models/DivisionGame/data'\nimport { DivisionGame } from '@/GeneratedTypes/DivisionGame'\nimport { LeagueDivision } from '@/GeneratedTypes/LeagueDivision'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport DateInput from '@/elements/DateInput.vue'\nimport { League } from '@/GeneratedTypes/League'\nimport dayjs from 'dayjs'\nimport { getEmptyLeague } from '@/lib/support/models/League/data'\nimport {\n millisecondsToTimeString,\n timeStringLooksValid,\n timeStringSplit,\n timeStringToMilliseconds,\n} from '@/lib/support/utilities/time/time'\nimport { AvailabilityToScheduleBlocks } from '@/lib/support/models/ScheduleBlocks/AvailabilityToScheduleBlock'\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\nimport TimePicker from '@/elements/TimePicker2.vue'\nimport { cloneDeep } from 'lodash'\nimport Loading from '@/elements/Loading.vue'\nimport { VolunteerRoleIDs } from '@/views/Programs/Volunteers/ext/roleutils'\n\nimport store from '@/store'\nimport { LeagueScoringTypes } from '@/lib/common/LeagueScoringTypes'\n\nexport default defineComponent({\n name: 'GameModal',\n components: {\n TimePicker,\n DateInput,\n SelectInput,\n NumberInput,\n Modal,\n Loading,\n ComboBoxInput,\n CheckboxInput,\n },\n props: {\n divisionList: { type: Array as PropType, default: () => [] },\n roundList: { type: Array as PropType<{ id: string; description: string }[]>, default: () => [] },\n game: {\n type: Object as PropType,\n default: () => getEmptyDivisionGame(decrementingDGStrategy(0)),\n },\n teamList: { type: Array as PropType, default: () => [] },\n facilityList: { type: Array as PropType, default: () => [] },\n league: { type: Object as PropType, default: () => getEmptyLeague() },\n programID: { type: String, default: () => '' },\n typeLeagueScoringID: { type: String, default: () => '' },\n editScores: {\n type: Boolean as PropType,\n required: false,\n },\n gameLength: { type: Number, default: 60 },\n ...getProps(),\n },\n setup(props, ctx) {\n const { isModalOpen, closeModal } = useModalValue(props, ctx)\n const divisionWinLoss = ref(false)\n const divisionWithScoring = ref(false)\n const gameResultsEnabled = ref(false)\n\n const day = ref(new Date())\n const startTime = ref('8:00')\n const endTime = ref('9:00')\n const facilityID = ref(0)\n const awayTeamID = ref(0)\n const homeTeamID = ref(0)\n const divisionID = ref(0)\n const roundID = ref(0)\n const homeTeamScore = ref(0)\n const awayTeamScore = ref(0)\n\n const winningTeamID = ref(0)\n const editGameScheduleMode = ref(true)\n\n const startTimeGuard = ref(true)\n const loading = ref(false)\n\n const homeTeam = computed({\n get(): number {\n if (homeTeamID.value == 0 && teams.value?.length) {\n homeTeamID.value = teams.value[0].teamID\n }\n return homeTeamID.value\n },\n set(i: number) {\n if (awayTeamID.value != i) {\n homeTeamID.value = i\n } else {\n // when the internal state is not mutated (skipped like here) it\n // will reflect the component's version of internal state even\n // if the prop was updated, so you have to force update the prop.\n const a = homeTeamID.value\n homeTeamID.value = 4.3e9 + Math.random()\n nextTick(() => {\n homeTeamID.value = a\n })\n }\n },\n })\n\n const awayTeam = computed({\n get(): number {\n if (awayTeamID.value == 0 && teams.value?.length > 1) {\n awayTeamID.value = teams.value[1].teamID\n }\n return awayTeamID.value\n },\n set(i: number) {\n if (homeTeamID.value != i) {\n awayTeamID.value = i\n } else {\n // when the internal state is not mutated (skipped like here) it\n // will reflect the component's version of internal state even\n // if the prop was updated, so you have to force update the prop.\n const a = awayTeamID.value\n awayTeamID.value = 4.3e9 + Math.random()\n nextTick(() => {\n awayTeamID.value = a\n })\n }\n },\n })\n\n const tiesItem = {\n leagueID: 0,\n typeProgramID: props.programID,\n leagueDirectorPartnerID: 0,\n divisionID: divisionID.value, // Match the current division ID\n divisionName: 'N/A',\n teamID: -9999,\n teamName: 'Tie Game',\n upwardTeamID: null,\n typeColorID: null,\n teamPageUrl: null,\n currentPracticeNumber: 0,\n currentGameID: 0,\n currentGameOffenseFirst: false,\n overrideTypeGameFormatID: null,\n practices: null,\n coaches: null,\n players: null,\n coachCount: 0,\n playerCount: 0,\n headCoachName: null,\n upwardLeagueID: null,\n hideTeamPageRoster: false,\n hideCoachEmailOnTeamPage: false,\n hideCoachPhoneOnTeamPage: false,\n hideAssistantCoachEmailOnTeamPage: false,\n hideAssistantCoachPhoneOnTeamPage: false,\n hideScheduleOnTeamPage: false,\n hidePracticeScheduleOnTeamPage: false,\n typePracticePlanID: null,\n typeGameFormatID: null,\n overrideNumberOfSegments: 0,\n ruleLevel: 0,\n typeLeagueScoringID: null,\n showStandingsTeamPage: false,\n hideHeadCoachLabel: false,\n }\n\n const teams = computed(() => props.teamList.filter((x) => x.divisionID == divisionID.value))\n const winningteams = computed(() =>\n props.teamList\n .filter((x) => x.teamID == homeTeamID.value || x.teamID == awayTeamID.value)\n .concat(tiesItem)\n )\n const tournamentGame = ref(props.game.typeDivisionGameID === DivisionGameTypes.TOURNAMENT_GAME)\n const divisionGameType = computed(() =>\n tournamentGame.value ? DivisionGameTypes.TOURNAMENT_GAME : DivisionGameTypes.REGULAR_GAME\n )\n\n watch(\n [() => props.game.typeDivisionGameID, () => props.game.gameID],\n ([newTypeDivisionGameID]) => {\n tournamentGame.value = newTypeDivisionGameID === DivisionGameTypes.TOURNAMENT_GAME\n },\n { immediate: true }\n )\n\n watch(\n () => props.editScores,\n (newValue) => {\n if (newValue === false) {\n editGameScheduleMode.value = false\n } else {\n editGameScheduleMode.value = true\n }\n },\n { immediate: true } // This ensures the watcher runs immediately on setup\n )\n\n const currentFacility = computed((): LeagueFacility | undefined =>\n props.facilityList?.find((x) => x.facilityID == facilityID.value)\n )\n\n const rounds = computed(() => {\n const list = cloneDeep(props.roundList)\n return list.filter((r) => r.description != 'All')\n })\n\n function setTimeInAvailabilityWindow() {\n if (timeStringToMilliseconds(startTime.value) < timeStringToMilliseconds(minTime.value)) {\n startTime.value = minTime.value\n }\n if (timeStringToMilliseconds(endTime.value) < timeStringToMilliseconds(startTime.value)) {\n const gmLength = props.gameLength * 60000\n const gameTime =\n timeStringToMilliseconds(minTime.value) +\n ((props.game.gameEnd ?? new Date()).valueOf() - (props.game.gameStart ?? new Date()).valueOf())\n\n endTime.value = millisecondsToTimeString(gameTime + gmLength)\n }\n }\n\n function swap() {\n const home = homeTeam.value\n const away = awayTeam.value\n homeTeam.value = 1 // Circumvent check that stops the same team from being selected for home and away\n awayTeam.value = home\n homeTeam.value = away\n }\n\n watch(\n () => facilityID.value,\n () => {\n //resets the time availability on new facility change\n setTimeInAvailabilityWindow()\n }\n //{ immediate: true } //for some reason this throws an error in the consle about the refs at the top being undefined, so making the call in onMounted\n )\n\n watch(\n () => props.typeLeagueScoringID,\n (newVal) => {\n if (newVal === LeagueScoringTypes.WIN_LOSS_SCORING) {\n homeTeamScore.value = 0\n awayTeamScore.value = 0\n } else {\n homeTeamScore.value = null\n awayTeamScore.value = null\n }\n\n divisionWinLoss.value = newVal === LeagueScoringTypes.WIN_LOSS\n divisionWithScoring.value = newVal === LeagueScoringTypes.WIN_LOSS_SCORING\n },\n { immediate: true }\n )\n\n watch(\n () => props.game.gameID,\n (newVal) => {\n gameResultsEnabled.value = (divisionWinLoss.value || divisionWithScoring.value) && newVal !== 0\n },\n { immediate: true }\n )\n\n onMounted(() => {\n setTimeInAvailabilityWindow()\n })\n\n watch([() => tournamentGame.value], () => {\n if (loading.value) return\n })\n\n watch(\n () => startTime.value,\n () => {\n if (startTimeGuard.value) return // don't increment endTime if startTime changes because existing game populating\n const gmLength = props.gameLength * 60000\n nextTick(\n () =>\n (endTime.value = millisecondsToTimeString(timeStringToMilliseconds(startTime.value) + gmLength))\n )\n }\n )\n\n const availability = computed(() => {\n const facility = currentFacility.value\n if (facility) {\n const myDay = day.value?.getDay() ?? -1\n //** contains the schedule blocks that are for this facility\n return AvailabilityToScheduleBlocks(facility?.availability ?? [], FacilityEventEnum.GAMES)?.filter(\n (x) => x.day == myDay\n )\n }\n return []\n })\n\n const maxTime = computed(() => {\n if (availability.value?.length) {\n return millisecondsToTimeString(\n availability.value?.map((x) => x.timeEnd).reduce((x, y) => (x > y ? x : y))\n )\n }\n return '23:59:59'\n })\n\n const minTime = computed(() => {\n if (availability.value?.length) {\n return millisecondsToTimeString(\n availability.value?.map((x) => x.timeStart).reduce((x, y) => (x < y ? x : y))\n )\n }\n return '00:00:00'\n })\n\n const gameValue = computed(\n (): DivisionGame => {\n const start = timeStringSplit(startTime.value)\n const end = timeStringSplit(endTime.value)\n\n return {\n gameStart: dayjs(day.value).hour(start[0]).minute(start[1]).toDate(),\n gameEnd: dayjs(day.value).hour(end[0]).minute(end[1]).toDate(),\n divisionID: divisionID.value,\n roundNumber: roundID.value,\n homeTeamID: homeTeam.value,\n awayTeamID: awayTeam.value,\n facilityID: facilityID.value,\n gameID: props.game.gameID <= 0 ? 0 : props.game.gameID,\n leagueID: props.league.id,\n typeProgramID: props.programID,\n winningTeamID: winningTeamID.value ?? null,\n homeTeamScore: homeTeamScore.value ?? null,\n awayTeamScore: awayTeamScore.value ?? null,\n typeDivisionGameID: divisionGameType.value ?? DivisionGameTypes.REGULAR_GAME,\n volunteers: refereeList.value\n .filter((r) => referees.value.some((x) => x == r.individualID))\n .map((x) => {\n return {\n volunteerIndividualID: x.individualID,\n roleID: VolunteerRoleIDs.REFEREES,\n }\n }),\n }\n }\n )\n\n /**************\n /* Referees \n ***************/\n const refLabel = computed(() => store.getters.leagueAbstraction.refLabel)\n const refereeList = computed(() => store.getters.volunteers.referees)\n const referees = ref([])\n\n const approvedRefs = computed(() => {\n const listCopy = cloneDeep(refereeList.value)\n return listCopy\n .filter(\n (r) =>\n r.refereeRoleApproved ||\n props.game.volunteers?.some((v) => v.volunteerIndividualID == r.individualID)\n )\n .sort((a, b) =>\n (a.formattedNameFirstLast ?? '').toLowerCase() > (b.formattedNameFirstLast ?? '').toLowerCase()\n ? 1\n : -1\n )\n })\n\n watch(\n () => props.league.upwardLeagueID,\n async () => {\n if (!props.league.upwardLeagueID) return\n loading.value = true\n await store.dispatch.volunteers.fetchReferees({\n upwId: props.league.upwardLeagueID ?? '',\n force: true,\n })\n loading.value = false\n },\n { immediate: true }\n )\n\n watch(\n () => props.game,\n () => {\n startTimeGuard.value = true\n defaultTimes()\n day.value = props.game.gameStart ?? new Date()\n startTime.value = dayjs(props.game.gameStart ?? '8:00').format('HH:mm')\n endTime.value = dayjs(props.game.gameEnd ?? '9:00').format('HH:mm')\n facilityID.value = props.game.facilityID\n awayTeamID.value = props.game.awayTeamID\n homeTeamID.value = props.game.homeTeamID\n homeTeamScore.value = props.game.homeTeamScore\n awayTeamScore.value = props.game.awayTeamScore\n winningTeamID.value = props.game.winningTeamID\n tournamentGame.value = props.game.typeDivisionGameID === DivisionGameTypes.TOURNAMENT_GAME\n roundID.value = props.game.roundNumber\n divisionID.value = props.game.divisionID\n referees.value = props.game.volunteers?.map((v) => v.volunteerIndividualID) ?? []\n\n setTimeInAvailabilityWindow()\n\n nextTick(() => (startTimeGuard.value = false))\n },\n { immediate: true }\n )\n\n function defaultTimes() {\n if (dayjs(props.game.gameStart ?? new Date()).format('HH:mm') == '00:00') {\n //For new games only\n props.game.gameStart = dayjs(props.game.gameStart ?? '8:00')\n .hour(8)\n .minute(0)\n .second(0)\n .toDate()\n props.game.gameEnd = dayjs(props.game.gameStart).add(90, 'minute').toDate()\n }\n }\n\n const shouldSubmitShow = computed(() => {\n const x =\n !!awayTeamID.value &&\n !!homeTeamID.value &&\n timeStringLooksValid(endTime.value) &&\n timeStringLooksValid(startTime.value) &&\n !!availability.value.length\n\n return x\n })\n\n /**\n * Caller will need to close the box.\n */\n function confirmed() {\n ctx.emit('confirmed', gameValue.value)\n }\n\n /**\n * Caller will need to close the box.\n */\n function deleted() {\n ctx.emit('deleted', gameValue.value)\n }\n\n function cancel() {\n closeModal()\n }\n\n return {\n isModalOpen,\n isEmptyDivisionGame,\n divisionID,\n roundID,\n rounds,\n homeTeam,\n teams,\n swap,\n awayTeam,\n facilityID,\n day,\n availability,\n startTime,\n minTime,\n maxTime,\n endTime,\n refLabel,\n approvedRefs,\n referees,\n gameValue,\n shouldSubmitShow,\n deleted,\n confirmed,\n cancel,\n gameResultsEnabled,\n homeTeamScore,\n awayTeamScore,\n winningTeamID,\n divisionWithScoring,\n divisionWinLoss,\n tournamentGame,\n winningteams,\n editGameScheduleMode,\n }\n },\n})\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!./GameModal.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!./GameModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameModal.vue?vue&type=template&id=56ff996e&\"\nimport script from \"./GameModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameModal.vue?vue&type=style&index=0&lang=scss&\"\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 { DivisionGameInfo } from '@/GeneratedTypes/ListInfo/DivisionGameInfo'\nimport { GameVolunteerInfo } from '@/GeneratedTypes/ListInfo/GameVolunteerInfo'\n\nexport const divisionGames = (list: DivisionGameInfo[]) => {\n // Sort the list by teamWins (descending) and teamName (ascending)\n list.sort((a, b) => {\n return (a.homeTeamName || '').localeCompare(b.homeTeamName || '') // Ascending order\n })\n\n // Directly map the sorted list to the desired format\n const games: divisionGame[] = list.map((item) => ({\n leagueID: item.leagueID,\n typeProgramID: item.typeProgramID,\n divisionID: item.divisionID,\n gameID: item.gameID,\n roundNumber: item.roundNumber,\n homeTeamID: item.homeTeamID,\n awayTeamID: item.awayTeamID,\n winningTeamID: item.winningTeamID,\n homeTeamScore: item.homeTeamScore,\n awayTeamScore: item.awayTeamScore,\n typeDivisionGameID: item.typeDivisionGameID,\n facilityID: item.facilityID,\n gameStart: item.gameStart,\n gameEnd: item.gameEnd,\n serverGameStart: item.serverGameStart,\n serverGameEnd: item.serverGameEnd,\n volunteers: item.volunteers,\n divisionName: item.divisionName,\n homeTeamName: item.homeTeamName,\n awayTeamName: item.awayTeamName,\n winningTeamName: item.winningTeamName,\n facilityName: item.facilityName,\n prettyStartDate: '',\n prettyStartTime: '',\n prettyEndDate: '',\n prettyEndTime: '',\n prettyTimeRange: '',\n gameName: '',\n gameResult: '',\n }))\n\n return games\n}\n\nexport interface divisionGame {\n leagueID: number\n typeProgramID: string | null\n divisionID: number\n gameID: number\n roundNumber: number\n homeTeamID: number\n awayTeamID: number\n winningTeamID: number\n homeTeamScore: number | null\n awayTeamScore: number | null\n typeDivisionGameID: string | null\n facilityID: number\n gameStart: Date | null\n gameEnd: Date | null\n serverGameStart: Date | null\n serverGameEnd: Date | null\n volunteers: GameVolunteerInfo[] | null\n divisionName: string | null\n homeTeamName: string | null\n awayTeamName: string | null\n winningTeamName: string | null\n facilityName: string | null\n prettyStartDate: String | null\n prettyStartTime: String | null\n prettyEndDate: String | null\n prettyEndTime: String | null\n prettyTimeRange: String | null\n gameName: String\n gameResult: String | null\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, onMounted, PropType, computed } from '@vue/composition-api'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport dayjs from 'dayjs'\nimport Loading from '@/elements/Loading.vue'\nimport { cloneDeep } from 'lodash'\nimport { isNullDate, toDate } from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport store from '@/store'\n\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport GameModal from '@/views/Programs/Scheduling/Games/ext/GameModal.vue'\n\nimport divisionsClient from '@/clients/divisionsClient'\nimport { DivisionGameInfo } from '@/GeneratedTypes/ListInfo/DivisionGameInfo'\nimport { DivisionGame } from '@/GeneratedTypes/DivisionGame'\nimport { DivisionGameInfoToDivisionGame } from '@/lib/support/models/DivisionGame/DivisionGameInfoToDivisionGame'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { League } from '@/GeneratedTypes/League'\nimport { LeagueDivision } from '@/GeneratedTypes/LeagueDivision'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { LeagueScoringTypes } from '@/lib/common/LeagueScoringTypes'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\n\nimport {\n divisionGames,\n divisionGame,\n} from '@/lib/support/models/GeneratedTypes/ListInfo/LeagueDivisionGameInfo'\nimport {\n decrementingDGStrategy,\n DivisionGameTypes,\n getEmptyDivisionGame,\n} from '@/lib/support/models/DivisionGame/data'\n\nimport { getterNames as leagueGetters, namespace as leagueStoreName } from '@/store/leagues'\nimport { getterNames as volunteerGetters, namespace as volunteerStoreName } from '@/store/volunteers'\nimport { getterNames as facilitiesGetters, namespace as facilitiesStoreName } from '@/store/facilities'\nimport { actionNames as divisionActions, namespace as divisionsStoreName } from '@/store/divisions'\n//import { HeaderStandingScoreValue } from '@/views/Programs/Divisions/ext/headerStandingScoreValue'\n\nexport default defineComponent({\n name: 'DivisionGamesList',\n components: {\n SimpleGrid,\n Loading,\n Alert,\n GameModal,\n },\n props: {\n ProgramId: { type: String, required: false, default: null },\n DivisionId: { type: Number as PropType, required: true, default: 1 },\n TeamId: { type: Number as PropType, required: true, default: 1 },\n RoundId: { type: Number as PropType, required: true, default: 1 },\n IncompleteGamesOnly: { type: Boolean as PropType, required: true, default: false },\n IncrementId: { type: Number as PropType, required: true, default: 0 },\n },\n setup(props, ctx) {\n const alertType = AlertTypeEnum.NOTICE\n //const division = ref(null)\n const currentDivision = computed(() => store.getters.divisions.currentDivision)\n const currentDivisionRoundMax = currentDivision.value?.maxRoundNumber ?? 16\n const currentGameDivisionGameID = computed(\n () => currentGame.value.typeDivisionGameID ?? DivisionGameTypes.REGULAR_GAME\n )\n const currentDivisionLeagueScoringID = computed(\n () => currentDivision.value?.typeLeagueScoringID ?? LeagueScoringTypes.WIN_LOSS\n )\n const currentGame = ref(getEmptyDivisionGame(decrementingDGStrategy(0)))\n const currentLeague = ref()\n const divisionGameList = ref([])\n const divisionList = ref([])\n const facilityList = ref([])\n const games = computed(() => store.getters.scheduling.games)\n const gameLength = currentDivision.value?.gameLength\n const gameModalShowing = ref(false)\n const isLoading = ref(true)\n const incompleteGamesOnly = computed(() => props.IncompleteGamesOnly ?? false)\n //const currentGame: DivisionGame = getEmptyDivisionGame(decrementingDGStrategy(0))\n const internalGames = ref([])\n const programID = ref('')\n const showDeleteConfirmed = ref(false)\n const selectedProgramId = computed(() => props.ProgramId ?? '')\n const selectedDivisionId = computed(() => props.DivisionId ?? 0)\n const selectedTeamId = computed(() => props.TeamId ?? 0)\n const selectedRoundId = computed(() => props.RoundId ?? 0)\n const selectedGame = ref({} as DivisionGame)\n const teams = ref([])\n const divisionName = ref('')\n const divisionNameEx = computed(() => store.getters.divisions.currentDivision?.divisionName ?? '')\n const typeLeagueScoringID = ref(null)\n\n const isWinLossDivision = computed(\n () => currentDivision.value?.typeLeagueScoringID === LeagueScoringTypes.WIN_LOSS\n )\n const leagueID = computed(() => {\n const id = ctx.root.$route.params.id\n return id\n })\n const isWinLossScoringDivision = computed(\n () => currentDivision.value?.typeLeagueScoringID === LeagueScoringTypes.WIN_LOSS_SCORING\n )\n const columnsWinLoss = ref([\n { field: 'roundNumber', headerText: 'Round' } as GridColumn,\n { field: 'gameName', headerText: 'Game Name' } as GridColumn,\n { field: 'winningTeamName', headerText: 'Winning Team' } as GridColumn,\n { field: 'prettyStartDate', headerText: 'Date' } as GridColumn,\n { field: 'prettyTimeRange', headerText: 'Time' } as GridColumn,\n ])\n\n const columnsWinLossScoring = ref([\n { field: 'roundNumber', headerText: 'Round' } as GridColumn,\n { field: 'gameName', headerText: 'Game Name' } as GridColumn,\n { field: 'gameResult', headerText: 'Game Result' } as GridColumn,\n { field: 'prettyStartDate', headerText: 'Date' } as GridColumn,\n { field: 'prettyTimeRange', headerText: 'Time' } as GridColumn,\n ])\n\n const confirmGame = async (newelement: DivisionGameInfo) => {\n try {\n await store.dispatch.scheduling.upsertGame({ id: leagueID.value, game: newelement })\n } catch (e) {\n console.error(e) // Log the error or handle it as needed\n throw e\n }\n emitValuesGameScores()\n gameModalShowing.value = false\n }\n\n function emitValuesGameScores() {\n if (!currentDivision.value) return\n const headerValues = {\n selectedDivision: currentDivision.value,\n selectedTypeProgramID: selectedProgramId.value,\n selectedTeamID: selectedTeamId.value,\n selectedRoundID: selectedRoundId.value,\n incompleteGamesOnly: incompleteGamesOnly.value,\n }\n ctx.emit('divisionScoreGameScoreChanged', headerValues)\n }\n\n const deleteGame = async (newelement: DivisionGame) => {\n try {\n await store.dispatch.scheduling.removeGame({ id: props.ProgramId, gameID: newelement.gameID })\n showDeleteConfirmed.value = true\n gameModalShowing.value = false\n } catch (e) {\n console.error(e) // Log the error or handle it as needed\n throw e\n }\n }\n\n const gameDivisionList = ref([])\n\n const eventClick = async (gameID: number) => {\n const localGame = internalGames.value.find((x) => x.gameID === gameID)\n if (localGame) {\n // game is going to be in league time zone, dialog expects it in local.\n currentGame.value = {\n ...DivisionGameInfoToDivisionGame(localGame),\n gameStart: localGame.gameStart,\n gameEnd: localGame.gameEnd,\n volunteers: localGame.volunteers,\n }\n\n const localTeams = await store.getters.scheduling.teams\n teams.value = [...localTeams] // Creates a new mutable array\n\n const localLeague = store.getters.leagues.currentItem\n currentLeague.value = localLeague\n\n const localDivision = await divisionsClient.retrieveAll(ctx.root.$route.params.id)\n //gameDivisionList.value = localDivision!\n gameDivisionList.value = localDivision!.map((division) => ({\n ...division,\n typeProgramID: division.typeProgramID ?? props.ProgramId,\n }))\n\n const localFacilities = store.getters.facilities.items\n facilityList.value = localFacilities!\n\n gameModalShowing.value = true\n }\n }\n\n const roundList = computed(() => {\n const roundlimit = currentDivision.value?.maxRoundNumber || 16\n const rounds = Array.from(Array(roundlimit), (_, i) => ({\n id: (i + 1).toString(), // Convert id to string\n description: `Round ${i + 1}`,\n }))\n return rounds\n })\n\n const clearGames = computed(() => store.dispatch.scheduling.clearGames)\n const removeGame = computed(() => store.dispatch.scheduling.removeGame)\n const upsertGame = computed(() => store.dispatch.scheduling.upsertGame)\n const retrieveEvents = store.dispatch.scheduling.loadEvents\n const retrieveTeams = store.dispatch.scheduling.loadTeams\n const retrieveGames = store.dispatch.scheduling.loadGames\n const league = computed(() => store.getters[leagueGetters.currentItem])\n const referees = computed(() => store.getters[volunteerGetters.referees])\n const facilities = computed(() => store.getters[facilitiesGetters.items])\n\n const fetchAllDivisions = async ({\n upwardLeagueId,\n force,\n }: {\n upwardLeagueId: string\n force: boolean\n }) => {\n await (divisionActions.fetchAll,\n {\n upwardLeagueId,\n force,\n })\n }\n\n const retrieveFacilities = async (id: { id: string }) => {\n return await store.dispatch.facilities.load(id)\n }\n\n const refreshLeagues = async () => {\n await fetchAllDivisions({ upwardLeagueId: ctx.root.$route.params.id!, force: true })\n }\n\n const refreshFacilities = async () => {\n await retrieveFacilities({ id: ctx.root.$route.params.id! })\n }\n\n const refreshGames = async () => {\n await retrieveGames({ id: ctx.root.$route.params.id! })\n }\n\n const refreshEvents = async () => {\n await retrieveEvents({ id: ctx.root.$route.params.id! })\n }\n\n const refreshTeams = async () => {\n await retrieveTeams({\n id: ctx.root.$route.params.id!,\n programID: props.ProgramId,\n divisionID: selectedDivisionId.value, // Ensure you pass all necessary params\n })\n }\n\n onMounted(async () => {\n await Promise.all([refreshLeagues(), refreshFacilities(), refreshGames(), refreshEvents()])\n if (props.ProgramId) {\n await Promise.all([refreshTeams()])\n }\n loadList()\n divisionName.value = currentDivision.value?.divisionName ?? null\n })\n\n function editClicked(item: divisionGame) {\n gameModalShowing.value = true\n eventClick(item.gameID)\n }\n\n // Helper function to format game results\n function formatGameResults(awayTeamScore: number | null, homeTeamScore: number | null): string | null {\n // Check if both scores are null\n if (awayTeamScore === null && homeTeamScore === null) {\n return 'No Results Available'\n }\n\n // Format the result if at least one score is present\n return `${homeTeamScore !== null ? homeTeamScore : 'N/A'} (H) - ${\n awayTeamScore !== null ? awayTeamScore : 'N/A'\n } (A)`\n }\n\n // Define the getPrettyTime function\n function getPrettyTime(evtStart: Date, evtEnd: Date | null): string {\n const startJS = dayjs(evtStart)\n const endJS = dayjs(evtEnd ?? '')\n\n if (startJS.startOf('day').isSame(startJS) && evtEnd == null) {\n return ''\n } else {\n if (evtEnd != null) {\n return startJS.format('h:mmA') + ' - ' + endJS.format('h:mmA')\n } else {\n return startJS.format('h:mmA')\n }\n }\n }\n\n function gamesSort(a: divisionGame, b: divisionGame): number {\n // Handle cases where gameStart might be null\n if (a.gameStart === null && b.gameStart === null) {\n // Both are null, treat as equal\n return 0\n }\n if (a.gameStart === null) {\n // a is null and b is not null\n return 1\n }\n if (b.gameStart === null) {\n // b is null and a is not null\n return -1\n }\n\n // Both are not null, perform sorting based on datetime\n const dateStartA = dayjs(a.gameStart)\n const dateStartB = dayjs(b.gameStart)\n\n const same = dateStartA.isSame(dateStartB, 'minute')\n if (!same) {\n return dateStartA.isAfter(dateStartB) ? 1 : -1\n } else {\n // Sort by facilityName\n const facilityNameA = a.facilityName?.toLowerCase() || ''\n const facilityNameB = b.facilityName?.toLowerCase() || ''\n\n if (facilityNameA > facilityNameB) return 1\n if (facilityNameA < facilityNameB) return -1\n return 0\n }\n }\n\n function loadList() {\n isLoading.value = true\n try {\n if (props.ProgramId) {\n const list = [...games.value]\n if (list) {\n divisionGameList.value = divisionGames(list)\n .filter(\n (x) =>\n !isNullDate(toDate(x.gameStart)) &&\n x.divisionID === selectedDivisionId.value &&\n (x.roundNumber == selectedRoundId.value || selectedRoundId.value == 0) &&\n (x.awayTeamID == selectedTeamId.value ||\n selectedTeamId.value == 0 ||\n x.homeTeamID == selectedTeamId.value ||\n selectedTeamId.value == 0) &&\n (incompleteGamesOnly.value === false ||\n (x.winningTeamID != null &&\n incompleteGamesOnly.value !== null &&\n incompleteGamesOnly.value! === true))\n )\n .map((x: DivisionGameInfo) => ({\n ...x,\n prettyStartDate: x.gameStart ? dayjs(x.gameStart ?? '').format('ddd MMM DD') : null,\n prettyStartTime: x.gameEnd !== null ? getPrettyTime(x.gameStart!, null) : '',\n prettyEndDate: x.gameEnd ? dayjs(x.gameEnd ?? '').format('ddd MMM DD') : null,\n prettyEndTime: x.gameEnd !== null ? getPrettyTime(x.gameEnd!, null) : '',\n prettyTimeRange:\n x.gameStart !== null && x.gameEnd !== null ? getPrettyTime(x.gameStart!, x.gameEnd) : '',\n gameName: `${x.awayTeamName} at ${x.homeTeamName}`,\n winningTeamName:\n x.winningTeamName === null || x.winningTeamName === undefined || x.winningTeamName === ''\n ? x.winningTeamID === x.awayTeamID\n ? x.awayTeamName\n : x.winningTeamID === x.homeTeamID\n ? x.homeTeamName\n : x.winningTeamID === -9999\n ? 'Tie'\n : ''\n : x.winningTeamName,\n gameResult: formatGameResults(x.awayTeamScore, x.homeTeamScore),\n }))\n .sort(gamesSort)\n }\n } else {\n divisionGameList.value = []\n }\n } finally {\n isLoading.value = false\n }\n }\n\n watch(\n () => props.ProgramId,\n async () => {\n await loadList(),\n await refreshLeagues(),\n await refreshFacilities(),\n await refreshGames(),\n await refreshEvents()\n await refreshTeams()\n }\n )\n\n watch(\n () => props.DivisionId,\n async () => {\n await loadList()\n await refreshTeams()\n }\n )\n\n watch(\n () => props.TeamId,\n async () => {\n await loadList()\n }\n )\n watch(\n () => props.RoundId,\n async () => {\n await loadList()\n }\n )\n watch(\n () => props.IncompleteGamesOnly,\n async () => {\n await loadList()\n }\n )\n\n watch(\n () => props.IncrementId,\n async () => {\n refreshGames()\n store.getters.scheduling.games\n await loadList()\n }\n )\n\n watch(\n () => currentDivision.value?.typeLeagueScoringID,\n (newVal) => {\n typeLeagueScoringID.value = newVal\n },\n { immediate: true } // Run immediately to initialize the value\n )\n\n // watch(\n // () => currentDivision.value,\n // (newVal) => {\n // division.value = newVal\n // },\n // { immediate: true } // Run immediately to initialize the value\n // )\n\n // Watch for changes in `games`\n watch(\n games,\n (newGames) => {\n internalGames.value = cloneDeep(\n newGames.map((x) => ({\n ...x,\n gameStart: x.gameStart ? dayjs(x.gameStart).toDate() : null,\n gameEnd: x.gameEnd ? dayjs(x.gameEnd).toDate() : null,\n }))\n )\n },\n { immediate: true }\n )\n\n return {\n alertType,\n Alert,\n clearGames,\n columnsWinLoss,\n columnsWinLossScoring,\n confirmGame,\n currentDivisionRoundMax,\n currentGame,\n currentLeague,\n deleteGame,\n DivisionGameInfoToDivisionGame,\n divisionGameList,\n divisionList,\n divisionName,\n divisionNameEx,\n editClicked,\n eventClick,\n facilityList,\n gameDivisionList,\n gameLength,\n games,\n gameModalShowing,\n incompleteGamesOnly,\n internalGames,\n isLoading,\n isWinLossDivision,\n isWinLossScoringDivision,\n leagueID,\n programID,\n removeGame,\n roundList,\n selectedDivisionId,\n selectedGame,\n selectedProgramId,\n selectedRoundId,\n selectedTeamId,\n showDeleteConfirmed,\n teams,\n upsertGame,\n typeLeagueScoringID,\n leagueStoreName,\n volunteerStoreName,\n facilitiesStoreName,\n divisionsStoreName,\n retrieveEvents,\n league,\n referees,\n facilities,\n fetchAllDivisions,\n currentGameDivisionGameID,\n currentDivisionLeagueScoringID,\n }\n },\n})\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!./DivisionGameList.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!./DivisionGameList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionGameList.vue?vue&type=template&id=20f2039a&\"\nimport script from \"./DivisionGameList.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionGameList.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('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showHeader),expression:\"showHeader\"}],staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('division-select',{staticClass:\"w-auto d-inline-block form-control p-0 border-0 ml-3\",attrs:{\"upward-league-id\":_vm.upwardLeagueId,\"type-program-id\":_vm.selectedProgram,\"label\":\"Selected Division\",\"disabled\":_vm.disabled},model:{value:(_vm.division),callback:function ($$v) {_vm.division=$$v},expression:\"division\"}})],1),_c('div',{staticClass:\"col-sm-2\"},[_c('select-input',{attrs:{\"items-list\":_vm.roundList,\"text-property-name\":\"description\",\"value-property-name\":\"id\",\"label\":\"Round\"},model:{value:(_vm.selectedRound),callback:function ($$v) {_vm.selectedRound=$$v},expression:\"selectedRound\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.teams,\"textPropertyName\":\"teamName\",\"valuePropertyName\":\"teamID\",\"label\":\"Teams\",\"showBlankItem\":false},model:{value:(_vm.selectedTeam),callback:function ($$v) {_vm.selectedTeam=$$v},expression:\"selectedTeam\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('checkbox-input',{staticClass:\"mt-8\",staticStyle:{\"display\":\"flex\",\"align-items\":\"center\"},attrs:{\"label\":\"Display Incomplete Games Only\",\"label-class\":\"mt-2\"},model:{value:(_vm.incompleteGamesOnly),callback:function ($$v) {_vm.incompleteGamesOnly=$$v},expression:\"incompleteGamesOnly\"}})],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('select-input',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hasDivisions),expression:\"hasDivisions\"}],staticClass:\"stop-jitter\",attrs:{\"label\":_vm.label,\"enabled\":_vm.hasDivisions && !_vm.disabled,\"text-property-name\":\"divisionName\",\"value-property-name\":\"divisionID\",\"items-list\":_vm.divisions},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\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\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport divisionsClient from '@/clients/divisionsClient'\n\nimport { IsEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport store from '@/store'\nimport { LeagueScoringTypes } from '@/lib/common/LeagueScoringTypes'\nimport { HeaderStandingScoreValue } from '@/views/Programs/Divisions/ext/headerStandingScoreValue'\n\nexport default defineComponent({\n name: 'DivisionStandingScoreSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n label: { type: String, required: false, default: '' },\n upwardLeagueId: { type: String, required: true },\n typeProgramId: { type: String, required: false, default: '' },\n disabled: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const currentDivision = computed(() => store.getters.divisions.currentDivision)\n const isLoading = ref(false)\n const selectedItem = ref(null)\n const divisions = ref([])\n const programID = ref('')\n const divisionID = ref(-1)\n const headerValues = ref(null)\n\n watch(\n () => [props.upwardLeagueId, props.typeProgramId],\n async () => {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n const itemList = await fetchItems()\n divisions.value = itemList\n\n // transpile error was wrapping the boolean function in Object() and Object(false) is true ?!\n const emptyLeague = props.value && !!IsEmptyLeagueDivisionInfo(props.value)\n if (!divisions.value.length) {\n store.commit.divisions.setDivision({ division: null })\n selectedItem.value = null\n } else if (\n // do we have a value already set, or is the value set a placeholder\n (!props.value || emptyLeague) && //blank account number is a seeded,\n itemList?.length && // a list\n !currentDivision.value // and not a preselected league\n ) {\n selectedItem.value = itemList[0].divisionID //set first league returned\n } else if (currentDivision.value) {\n const divisionInCurrentList = itemList.find(\n (item) => item.divisionID === currentDivision.value.divisionID\n )\n if (divisionInCurrentList) {\n selectedItem.value = currentDivision.value.divisionID\n } else {\n if (itemList[0] && itemList[0].divisionID) {\n selectedItem.value = itemList[0].divisionID\n }\n }\n }\n\n isLoading.value = false\n },\n { immediate: true }\n )\n\n async function fetchItems(): Promise {\n if (props.upwardLeagueId) {\n const divs = await divisionsClient.retrieveAll(props.upwardLeagueId)\n if (divs) {\n return divs.filter((div) => div.typeLeagueScoringID !== LeagueScoringTypes.NOSTANDINGS)\n }\n }\n return []\n }\n\n const hasDivisions = computed(() => {\n if (isLoading.value) return !isLoading.value\n return divisions.value.length > 0\n })\n\n function onDivisionChanged(headers: HeaderStandingScoreValue | null) {\n if (headers) {\n headerValues.value = headers\n }\n programID.value = headers?.selectedDivision?.typeProgramID ?? ''\n divisionID.value = headers?.selectedDivision?.divisionID ?? -1\n }\n\n watch(\n () => [isLoading.value, selectedItem.value],\n () => {\n if (isLoading.value) {\n return\n }\n\n if (!selectedItem.value) {\n ctx.emit('input', null)\n ctx.emit('change', null)\n return\n }\n\n //else ...\n if (\n selectedItem.value &&\n (!props.value || (props.value && props.value.divisionID !== selectedItem.value))\n ) {\n const division = divisions.value.find((item) => item.divisionID === selectedItem.value)\n\n if (division) {\n store.commit.divisions.setDivision({ division: division })\n }\n\n ctx.emit('input', division)\n ctx.emit('change', division)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (props.value) {\n if (selectedItem.value !== props.value.divisionID) {\n selectedItem.value = props.value.divisionID\n }\n } else {\n selectedItem.value = null\n }\n }\n )\n\n return {\n selectedItem,\n hasDivisions,\n divisions,\n divisionID,\n programID,\n onDivisionChanged,\n }\n },\n})\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!./DivisionStandingScoreSelect.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!./DivisionStandingScoreSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionStandingScoreSelect.vue?vue&type=template&id=4d386cd6&scoped=true&\"\nimport script from \"./DivisionStandingScoreSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionStandingScoreSelect.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DivisionStandingScoreSelect.vue?vue&type=style&index=0&id=4d386cd6&lang=scss&scoped=true&\"\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 \"4d386cd6\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { getEmptyLeagueListItem, LeagueListItemSeed } from '@/lib/support/models/LeagueListItem/data'\nimport { HeaderStandingScoreValue } from '../ext/headerStandingScoreValue'\nimport programsClient from '@/clients/programsClient'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport DivisionSelect from '@/components/DivisionStandingScoreSelect.vue'\nimport store from '@/store'\nimport teamsClient from '@/clients/teamsClient'\n\nexport default defineComponent({\n name: 'DivisionHeader',\n components: {\n DivisionSelect,\n SelectInput,\n CheckboxInput,\n },\n props: {\n title: { required: false, type: String, default: '' },\n disabled: { required: false, type: Boolean, default: false },\n },\n setup(props, ctx) {\n const currentDivision = computed(() => store.getters.divisions.currentDivision)\n\n const programs = ref(getEmptyLeagueListItem(new LeagueListItemSeed()))\n const selectedProgram = ref('')\n const division = ref(null)\n const loading = ref(false)\n\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const selectedTeam = ref(0)\n const teams = ref([{}])\n const selectedRound = ref(-1)\n const filterByWeek = ref(false)\n const incompleteGamesOnly = ref(false)\n const roundList = computed(() => {\n const roundlimit = division.value?.maxRoundNumber || 16\n const rounds = Array.from(Array(roundlimit), (x, i) => ({ id: i + 1, description: `Round ${i + 1}` }))\n rounds.unshift({ id: 0, description: 'All' })\n return rounds\n })\n\n onMounted(async () => {\n if (currentDivision.value) {\n division.value = currentDivision.value\n }\n\n await loadPrograms()\n await loadTeams()\n emitValues()\n selectedRound.value = 0\n })\n\n watch(\n () => division.value,\n async () => {\n await loadTeams()\n }\n )\n\n async function loadPrograms() {\n loading.value = true\n\n try {\n const progs = await programsClient.retrieve(ctx.root.$route.params.id)\n if (progs) {\n programs.value = progs\n\n if (division.value) {\n selectedProgram.value = division.value.typeProgramID\n } else if (progs.programTypeID) {\n selectedProgram.value = progs.programTypeID\n }\n }\n } finally {\n loading.value = false\n }\n }\n async function loadTeams() {\n selectedTeam.value = 0\n teams.value = []\n const myTeams =\n (await teamsClient.retrieveTeamList({\n leagueId: upwardLeagueId.value,\n divisionId: division.value?.divisionID,\n typeProgramId: division.value?.typeProgramID ?? '',\n })) ?? []\n\n //default is all\n teams.value.push({\n teamID: 0,\n teamName: 'All' ?? '',\n })\n\n myTeams.forEach((r) =>\n teams.value.push({\n teamID: r.teamID,\n teamName: r.teamName ?? '',\n })\n )\n }\n\n watch([() => division.value, () => selectedProgram.value], () => {\n if (loading.value) return\n emitValues()\n })\n\n watch([() => selectedTeam.value, () => selectedRound.value], () => {\n if (loading.value) return\n emitValuesTeamWeek()\n })\n\n watch([() => incompleteGamesOnly.value], () => {\n if (loading.value) return\n emitValuesIncompleteGames()\n })\n\n function emitValues() {\n if (!division.value) return\n const headerValues = {\n selectedDivision: division.value,\n cheerProgramTypeID: programs.value.cheerProgramTypeID,\n selectedTypeProgramID: selectedProgram.value,\n selectedTeamID: selectedTeam.value,\n selectedRoundID: selectedRound.value,\n incompleteGamesOnly: incompleteGamesOnly.value,\n } as HeaderStandingScoreValue\n\n ctx.emit('divisionScoreStandingHeaderChanged', headerValues)\n }\n\n function emitValuesTeamWeek() {\n if (!division.value) return\n const headerValues = {\n selectedDivision: division.value,\n cheerProgramTypeID: programs.value.cheerProgramTypeID,\n selectedTypeProgramID: selectedProgram.value,\n selectedTeamID: selectedTeam.value,\n selectedRoundID: selectedRound.value,\n incompleteGamesOnly: incompleteGamesOnly.value,\n } as HeaderStandingScoreValue\n ctx.emit('divisionScoreStandingHeaderTeamRoundChanged', headerValues)\n }\n\n function emitValuesIncompleteGames() {\n if (!division.value) return\n const headerValues = {\n selectedDivision: division.value,\n cheerProgramTypeID: programs.value.cheerProgramTypeID,\n selectedTypeProgramID: selectedProgram.value,\n selectedTeamID: selectedTeam.value,\n selectedRoundID: selectedRound.value,\n incompleteGamesOnly: incompleteGamesOnly.value,\n } as HeaderStandingScoreValue\n\n ctx.emit('divisionScoreStandingHeaderIncompleteGamesChanged', headerValues)\n }\n\n const showHeader = computed(() => {\n if (loading.value) return false\n return division.value\n })\n\n return {\n showHeader,\n programs,\n selectedProgram,\n division,\n upwardLeagueId,\n filterByWeek,\n roundList,\n selectedRound,\n teams,\n selectedTeam,\n incompleteGamesOnly,\n }\n },\n})\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!./DivisionStandingScoresHeader.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!./DivisionStandingScoresHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionStandingScoresHeader.vue?vue&type=template&id=1850963f&\"\nimport script from \"./DivisionStandingScoresHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionStandingScoresHeader.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, onMounted } from '@vue/composition-api'\n//import DivisionGrid from '@/components/DivisionGrid.vue'\nimport DivisionForm from '@/components/DivisionForm.vue'\nimport DivisionStandingList from '@/components/DivisionStandingList.vue'\nimport DivisionGameList from '@/components/DivisionGameList.vue'\nimport programsClient from '@/clients/programsClient'\nimport divisionsClient from '@/clients/divisionsClient'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueDivision } from '@/GeneratedTypes/LeagueDivision'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport Loading from '@/elements/Loading.vue'\nimport store from '@/store'\nimport DivisionHeader from '@/views/Programs/Divisions/vues/DivisionStandingScoresHeader.vue'\nimport { HeaderStandingScoreValue } from './ext/headerStandingScoreValue'\n\nexport default defineComponent({\n name: 'Divisions',\n components: {\n // DivisionGrid,\n DivisionGameList,\n DivisionForm,\n DivisionStandingList,\n Loading,\n DivisionHeader,\n },\n setup(props, ctx) {\n const loading = ref(false)\n const divisions = ref([])\n const allDivisions = ref(null)\n const division = ref(null)\n const leaguePrograms = ref({} as LeagueListItem)\n const headerValues = ref(null)\n\n const selectedDivisionId = ref(-1)\n const selectedProgramId = ref('')\n const selectedTeamId = ref(-1)\n const selectedRoundId = ref(-1)\n const currentIncrementID = ref(0)\n const incompleteGamesOnly = ref(false)\n const leagueId = ctx.root.$route.params.id\n\n onMounted(async () => {\n try {\n loading.value = true\n await loadPrograms()\n await loadDivisions()\n } finally {\n loading.value = false\n }\n })\n\n async function loadPrograms() {\n const UpwId = ctx.root.$route.params.id\n try {\n const programs = await programsClient.retrieve(UpwId)\n if (programs) {\n leaguePrograms.value = programs\n selectedProgramId.value = programs.programTypeID!\n }\n } catch (error) {\n throw error\n }\n }\n\n async function loadDivisions() {\n const UpwId = ctx.root.$route.params.id\n\n try {\n allDivisions.value = await divisionsClient.retrieveAll(UpwId)\n divisionsFilteredByProgram()\n } catch (error) {\n throw error\n }\n }\n\n function divisionsFilteredByProgram() {\n if (allDivisions.value) {\n divisions.value = allDivisions.value.filter((division) => {\n return division.typeProgramID === selectedProgramId.value\n })\n }\n }\n\n async function onProgramChanged(program: string) {\n selectedProgramId.value = program\n loading.value = true\n await loadDivisions()\n loading.value = false\n }\n\n function onDivisionChanged(headers: HeaderStandingScoreValue | null) {\n if (headers) {\n headerValues.value = headers\n store.commit.divisions.setDivision({ division: headers.selectedDivision })\n }\n selectedTeamId.value = headers?.selectedTeamID ?? -1\n selectedRoundId.value = headers?.selectedRoundID ?? -1\n incompleteGamesOnly.value = headers?.incompleteGamesOnly ?? false\n selectedDivisionId.value = headers?.selectedDivision?.divisionID ?? -1\n selectedProgramId.value = headers?.selectedDivision?.typeProgramID ?? ''\n currentIncrementID.value += 1\n }\n\n function onIncompleteGameChanged(headers: HeaderStandingScoreValue | null) {\n if (headers) {\n headerValues.value = headers\n }\n selectedTeamId.value = headers?.selectedTeamID ?? -1\n selectedRoundId.value = headers?.selectedRoundID ?? -1\n incompleteGamesOnly.value = headers?.incompleteGamesOnly ?? false\n selectedDivisionId.value = headers?.selectedDivision?.divisionID ?? -1\n selectedProgramId.value = headers?.selectedDivision?.typeProgramID ?? ''\n }\n\n function onTeamRoundChanged(headers: HeaderStandingScoreValue | null) {\n if (headers) {\n headerValues.value = headers\n }\n selectedTeamId.value = headers?.selectedTeamID ?? -1\n selectedRoundId.value = headers?.selectedRoundID ?? -1\n incompleteGamesOnly.value = headers?.incompleteGamesOnly ?? false\n selectedDivisionId.value = headers?.selectedDivision?.divisionID ?? -1\n selectedProgramId.value = headers?.selectedDivision?.typeProgramID ?? ''\n }\n\n function onGameScoreChanged(headers: HeaderStandingScoreValue | null) {\n if (headers) {\n headerValues.value = headers\n store.dispatch.scheduling.loadGames({ id: leagueId })\n }\n\n selectedTeamId.value = headers?.selectedTeamID ?? -1\n selectedRoundId.value = headers?.selectedRoundID ?? -1\n incompleteGamesOnly.value = headers?.incompleteGamesOnly ?? false\n selectedDivisionId.value = headers?.selectedDivision?.divisionID ?? -1\n selectedProgramId.value = headers?.selectedDivision?.typeProgramID ?? ''\n currentIncrementID.value += 1\n }\n\n return {\n loading,\n divisions,\n leaguePrograms,\n selectedProgramId,\n currentIncrementID,\n selectedDivisionId,\n onProgramChanged,\n division,\n DivisionHeader,\n onDivisionChanged,\n onIncompleteGameChanged,\n onTeamRoundChanged,\n onGameScoreChanged,\n selectedTeamId,\n selectedRoundId,\n incompleteGamesOnly,\n }\n },\n})\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!./StandingsAndScores.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!./StandingsAndScores.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StandingsAndScores.vue?vue&type=template&id=40c71d6a&\"\nimport script from \"./StandingsAndScores.vue?vue&type=script&lang=ts&\"\nexport * from \"./StandingsAndScores.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'\nimport DivisionsAndTeams from '@/views/Programs/Divisions/DivisionsAndTeams.vue'\nimport Divisions from '@/views/Programs/Divisions/Divisions.vue'\nimport Participants from '@/views/Programs/Divisions/Participants.vue'\nimport Coaches from '@/views/Programs/Divisions/Coaches.vue'\nimport Teams from '@/views/Programs/Divisions/Teams.vue'\nimport Practices from '@/views/Programs/Divisions/Practices.vue'\nimport TeamManagement from '@/views/Programs/Divisions/TeamManagement.vue'\nimport StandingsAndScores from '@/views/Programs/Divisions/StandingsAndScores.vue'\nimport { idExpression } from '@/lib/support/router/idHelper'\n\nexport default function (programType: string) {\n programType = programType ?? 'league'\n return [\n {\n path: 'divisions_and_teams',\n component: DivisionsAndTeams,\n children: [\n {\n path: '/',\n redirect: `/programs/${programType}/${idExpression}/divisions_and_teams/divisions`,\n },\n {\n path: 'divisions',\n component: Divisions,\n },\n {\n path: 'teams',\n component: Teams,\n },\n {\n path: 'coaches',\n component: Coaches,\n },\n {\n path: 'practices',\n component: Practices,\n },\n {\n path: 'participants',\n component: Participants,\n },\n {\n path: 'team-management',\n component: TeamManagement,\n },\n {\n path: 'standings-scores',\n component: StandingsAndScores,\n },\n ],\n },\n ] as RouteConfig[]\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"game-index-page d-flex flex-row flex-grow-1 bg-light-2\"},[_c('vertical-tabs',{attrs:{\"is-on-route\":_vm.resolver,\"tabs\":_vm.tabs}}),_c('full-body',{staticClass:\"bg-white\"},[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport Modal from '@/components/Modal.vue'\nimport { Route } from 'vue-router'\nimport FullBody from '@/components/FullBody.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Index',\n components: {\n VerticalTabs,\n Loading,\n Modal,\n FullBody,\n },\n setup(props, ctx) {\n const storeLeague = computed(() => store.getters.leagues.currentItem)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const baseRoute = computed(() => `/programs/league/${routeId.value}scheduling`)\n\n function resolver($route: Route, to: string | undefined) {\n if (!to) {\n return false\n }\n //games matches games\n if ($route.path.match(/.*scheduling\\/(auto|manual|game)$/) && to.match(/.*games$/)) {\n return true\n }\n\n //prevents .../practices from matching /practices/cheer\n if ($route.path.match(/.*practices$/) && to.match(/.*cheer$/)) {\n return false\n }\n\n //prevents .../practices/cheer from matching /practices\n if ($route.path.match(/.*cheer$/) && to.match(/.*practices$/)) {\n return false\n }\n\n return $route.path.indexOf(to) !== -1\n }\n\n const tabs = computed(() => {\n let retval = [\n { text: 'Facilities', to: `${baseRoute.value}/facilities` },\n {\n text: 'Teams',\n tabs: [\n { text: 'Team Games', to: `${baseRoute.value}/games` },\n { text: 'Team Practices', to: `${baseRoute.value}/practices` },\n ],\n },\n ]\n\n if (storeLeague.value && storeLeague.value.programs && storeLeague.value.programs?.length > 1) {\n retval = [\n ...retval,\n ...[\n {\n text: 'Squads',\n tabs: [\n { text: 'Squads ', to: `${baseRoute.value}/cheer` },\n { text: 'Squad Practices', to: `${baseRoute.value}/practices/cheer` },\n ],\n },\n ],\n ]\n }\n\n retval = [...retval, ...[{ text: 'Special Events', to: `${baseRoute.value}/specialEvents` }]]\n\n return retval\n })\n\n return {\n tabs,\n resolver,\n }\n },\n})\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!./Index.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!./Index.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Index.vue?vue&type=template&id=957ae33a&\"\nimport script from \"./Index.vue?vue&type=script&lang=ts&\"\nexport * from \"./Index.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Index.vue?vue&type=style&index=0&lang=scss&\"\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('div',[_c(_vm.componentName,{tag:\"component\"})],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:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-4 col-md-4\"},[_c('button',{staticClass:\"btn btn-outline-dark mr-3\",on:{\"click\":function($event){return _vm.showFacilityImport()}}},[_c('i',{staticClass:\"fa fa-plus mr-2\"}),[_vm._v(\"Add Existing\")]],2),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":function($event){return _vm.create()}}},[_c('i',{staticClass:\"fa fa-check mr-2\"}),[_vm._v(\"Add New\")]],2)])]),_c('div',{staticClass:\"row no-padding-top facilities-row\"},[(_vm.isLoading)?_c('div',{staticClass:\"col\"},[_c('loading')],1):_c('div',{staticClass:\"col pt-1 fill-height\"},[_c('DataTable',{staticClass:\"elevation-1\",attrs:{\"dense\":\"\",\"headers\":_vm.headers,\"items\":_vm.getFacilities,\"hide-footer\":false,\"items-per-page\":15},on:{\"rowSelected\":_vm.rowSelected,\"dblClick\":_vm.rowDoubleClick},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('EditBtn',{on:{\"click\":function($event){return _vm.editItem(item)}}}),_c('DeleteBtn',{on:{\"click\":function($event){return _vm.deleteItem(item)}}})]}}])}),(_vm.isDeleting)?_c('div',{staticClass:\"float-right\"},[_vm._v(\"deleting ... \"),_c('loading',{attrs:{\"isSmall\":true}})],1):_vm._e()],1),_c('div',{staticClass:\"col-xl-4 pt-1\"},[(_vm.selectedFacilityId)?_c('div',{staticClass:\"card info-card\"},[_c('div',{staticClass:\"card-body fill-height\",staticStyle:{\"min-height\":\"350px\"}},[(_vm.currentFacility)?_c('span',{staticClass:\"facility-info-header\"},[_vm._v(_vm._s(_vm.currentFacility.facilityName))]):_vm._e(),_c('group-box',{staticClass:\"pt-4\",attrs:{\"header\":\"Available For Games\"}},[_c('div',{staticClass:\"status-items\"},[_vm._v(_vm._s(_vm.renderGameDayList(_vm.currentFacility.availability)))])]),_c('group-box',{staticClass:\"pt-4\",attrs:{\"header\":\"Available For Practices\"}},[_c('div',{staticClass:\"status-items\"},[_vm._v(_vm._s(_vm.renderPracticeDayList(_vm.currentFacility.availability)))])]),(_vm.groupDetails(_vm.currentFacility.street1))?_c('group-box',{staticClass:\"pt-4\",attrs:{\"header\":\"Group Details\"}},[_c('div',{staticClass:\"status-items\"},[_vm._v(_vm._s(_vm.groupDetails(_vm.currentFacility.street1)))])]):_vm._e()],1)]):_vm._e()])]),_c('confirm-delete-modal',{attrs:{\"has-confirm-box\":false,\"title\":\"Delete this Facility?\"},on:{\"onDeleteConfirmed\":_vm.confirmDeleteFacility,\"onDeleteDismissed\":_vm.cancelDeleteFacility},model:{value:(_vm.showConfirmDelete),callback:function ($$v) {_vm.showConfirmDelete=$$v},expression:\"showConfirmDelete\"}},[_vm._v(\"Are you sure you want to delete facility \"+_vm._s(this.currentFacility.facilityName)+\" ?\")]),_c('facility-import',{attrs:{\"isVisible\":_vm.showImport},on:{\"closed\":function($event){_vm.showImport = false},\"import\":_vm.importFacility}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-8 pr-0\"},[_c('h5',[_vm._v(\"Facilities\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h6',[_vm._v(_vm._s(_vm.header))]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'GroupBox',\n props: {\n header: { type: String, required: true, default: 'HEADER' },\n },\n})\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!./GroupBox.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!./GroupBox.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GroupBox.vue?vue&type=template&id=778bf44c&\"\nimport script from \"./GroupBox.vue?vue&type=script&lang=ts&\"\nexport * from \"./GroupBox.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('modal',{attrs:{\"title\":\"Import\",\"value\":_vm.isVisible},on:{\"change\":_vm.close}},[_c('div',{staticClass:\"row no-padding-top facilities-row\"},[_c('div',{staticClass:\"col-xl-12 pt-1 fill-height\"},[_c('DataTable',{staticClass:\"data-table-zebra mt-4\",attrs:{\"headers\":_vm.headers,\"items\":_vm.getFacilities,\"items-per-page\":10,\"dense\":\"\"},on:{\"rowSelected\":_vm.rowSelected}})],1)]),_c('template',{slot:\"footer\"},[_c('div',{staticClass:\"col-md-12\"},[_c('div',{staticClass:\"float-right\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.close}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success clear-all ml-3\",attrs:{\"disabled\":!_vm.canSelect},on:{\"click\":_vm.selectForImport}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Select \")])])])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { FacilityAvailability } from '@/GeneratedTypes/FacilityAvailability'\n\nexport const events = {\n Games: 'GAMES',\n Practices: 'PRACTICES',\n}\n\nconst weekDaysList = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']\n\nexport function renderGameDays(a: FacilityAvailability[]) {\n if (a && a.length) {\n const days = a\n .filter((avl) => avl.typeFacilityEventID == events.Games)\n .sort((a, b) => weekDaysList.indexOf(a.typeDayID) - weekDaysList.indexOf(b.typeDayID))\n .map((g) => g.typeDayID.substring(0, 3))\n return days.length ? days.join(', ') : 'no days available'\n }\n}\n\nexport function renderPracticeDays(a: FacilityAvailability[]) {\n if (a && a.length) {\n const days = a\n .filter((avl) => avl.typeFacilityEventID == events.Practices)\n .sort((a, b) => weekDaysList.indexOf(a.typeDayID) - weekDaysList.indexOf(b.typeDayID))\n .map((g) => g.typeDayID.substring(0, 3))\n return days.length ? days.join(', ') : 'no days available'\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Prop } from 'vue-property-decorator'\nimport Modal from '@/components/Modal.vue'\nimport { Getter } from 'vuex-class'\nimport facilitiesClient from '@/clients/facilitiesClient'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport * as facilityStore from '@/store/facilities'\nimport DataTable from '@/elements/DataTable/DataTable.vue'\nimport { DataTableHeader } from 'vuetify/types'\nimport { DataTableSelection } from '@/models/DataTable/DataTableSelection'\nimport { renderGameDays, renderPracticeDays } from '@/views/Programs/Scheduling/Facilities/ext/logic'\n\ninterface Facility extends LeagueFacility {\n prettyGameDays: string[]\n prettyPracticeDays: string[]\n}\n\n@Component({\n components: {\n Modal,\n DataTable,\n },\n})\nexport default class FacilityImport extends Vue {\n @Prop({ type: Boolean, required: false, default: false })\n private readonly isVisible!: boolean\n\n @Getter(facilityStore.getterNames.currentItem, {\n namespace: facilityStore.namespace,\n })\n private currentFacility!: LeagueFacility\n\n facilities: LeagueFacility[] | null = []\n program!: string\n lastLeagueID!: string\n\n private selectedFacility: LeagueFacility | null = null\n\n public async mounted() {\n const leagueID = this.$route.params.id\n\n if (leagueID && this.lastLeagueID != leagueID) {\n this.lastLeagueID = leagueID\n this.facilities = await this.retrieveFacilities(leagueID)\n }\n }\n\n private async retrieveFacilities(id: string): Promise {\n const facilties = await facilitiesClient.retrieveAll(id, true)\n\n return (facilties as unknown) as LeagueFacility[]\n }\n\n get getFacilities() {\n if (this.facilities && this.facilities.length > 0) {\n return this.facilities\n .sort((a, b) => (a.facilityName > b.facilityName ? 1 : -1))\n .map((f) => {\n return {\n ...f,\n prettyGameDays: renderGameDays(f.availability ?? []),\n prettyPracticeDays: renderPracticeDays(f.availability ?? []),\n }\n })\n }\n\n return []\n }\n\n get canSelect() {\n return this.selectedFacility != null\n }\n\n private rowSelected(row: DataTableSelection) {\n this.selectedFacility = row.item\n }\n\n private selectForImport() {\n if (!this.selectedFacility) {\n return\n }\n\n this.$emit('import', this.selectedFacility)\n this.close()\n }\n\n private close() {\n this.$emit('closed')\n }\n\n get headers(): DataTableHeader[] {\n return [\n { text: 'Facility', value: 'facilityName' },\n { text: 'Available For Games', value: 'prettyGameDays' },\n { text: 'Available For Practices', value: 'prettyPracticeDays' },\n ]\n }\n}\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!./FacilityImport.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!./FacilityImport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FacilityImport.vue?vue&type=template&id=7fca4a76&\"\nimport script from \"./FacilityImport.vue?vue&type=script&lang=ts&\"\nexport * from \"./FacilityImport.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 { DataTableHeader } from 'vuetify/types'\nexport const headers: DataTableHeader[] = [\n { text: 'Facility', value: 'facilityName' },\n { text: 'Available For Games', value: 'games' },\n { text: 'Available For Practice', value: 'practices' },\n { text: '', value: 'actions' },\n]\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue } from 'vue-property-decorator'\nimport { Action, Getter } from 'vuex-class'\nimport * as facilityStore from '@/store/facilities'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport GroupBox from '@/elements/GroupBox.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport ConfirmDeleteModal from '@/components/ConfirmDeleteModal.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport DataTable from '@/elements/DataTable/DataTable.vue'\nimport EditBtn from '@/elements/DataTable/vue/EditBtn.vue'\nimport DeleteBtn from '@/elements/DataTable/vue/DeleteBtn.vue'\nimport { DataTableSelection } from '@/models/DataTable/DataTableSelection'\n\nimport { FacilityAvailability } from '@/GeneratedTypes/FacilityAvailability'\nimport { viewModes } from '@/store/facilities'\nimport { FacilityItemEditor } from './ext/FacilityItemEditor'\nimport FacilityImport from './FacilityImport.vue'\n\n/** external data */\nimport { headers } from '@/views/Programs/Scheduling/Facilities/ext/headers'\nimport { getEmptyLeagueFacility } from '@/lib/support/models/LeagueFacility/data'\n\nimport { renderGameDays, renderPracticeDays } from './ext/logic'\n\nimport { FACILITY_DEFAULT_TIMES } from '@/services/facilityService'\n\n@Component({\n components: {\n GroupBox,\n TextInput,\n YesNoInput,\n ConfirmDeleteModal,\n FacilityImport,\n Loading,\n DataTable,\n EditBtn,\n DeleteBtn,\n },\n})\nexport default class FacilityList extends Vue implements FacilityItemEditor {\n public deleteItem(facility: LeagueFacility) {\n if (facility) {\n this.setCurrentFacility({ id: facility.facilityID })\n this.showConfirmDelete = true\n }\n }\n\n public async editItem(facility: LeagueFacility) {\n if (facility) {\n this.setCurrentFacility({ id: facility.facilityID })\n await this.beginEdit()\n }\n }\n\n @Action(facilityStore.actionNames.load, {\n namespace: facilityStore.namespace,\n })\n private readonly retrieveFacilities!: ({ id }: { id: string }) => LeagueFacility[] | null\n\n @Action(facilityStore.actionNames.delete, {\n namespace: facilityStore.namespace,\n })\n private readonly deleteFacility!: () => boolean\n\n @Getter(facilityStore.getterNames.currentItem, {\n namespace: facilityStore.namespace,\n })\n private currentFacility!: LeagueFacility\n\n @Getter(facilityStore.getterNames.items, {\n namespace: facilityStore.namespace,\n })\n private facilities!: LeagueFacility[]\n\n @Action(facilityStore.actionNames.set, {\n namespace: facilityStore.namespace,\n })\n private readonly setCurrentFacility!: ({ id }: { id: number }) => LeagueFacility\n\n @Action(facilityStore.actionNames.beginEdit, {\n namespace: facilityStore.namespace,\n })\n private readonly beginEdit!: () => void\n\n @Action(facilityStore.actionNames.beginCreating, {\n namespace: facilityStore.namespace,\n })\n private readonly beginCreating!: () => void\n\n @Action(facilityStore.actionNames.beginCreatingFrom, {\n namespace: facilityStore.namespace,\n })\n private readonly beginCreatingFrom!: ({ facility }: { facility: LeagueFacility }) => void\n\n @Getter(facilityStore.getterNames.viewMode, {\n namespace: facilityStore.namespace,\n })\n private viewMode!: viewModes\n\n headers = headers\n private renderGameDayList = renderGameDays\n private renderPracticeDayList = renderPracticeDays\n private showConfirmDelete = false\n private showImport = false\n private selectedFacilityId = 0\n private isLoading = true\n private isDeleting = false\n\n public async mounted() {\n await this.retrieveFacilities({ id: this.$route.params.id })\n this.isLoading = false\n }\n\n rowSelected(x: DataTableSelection) {\n this.selectedFacilityId = x.item.facilityID\n this.setCurrentFacility({ id: this.selectedFacilityId })\n }\n\n rowDoubleClick() {\n this.beginEdit()\n }\n\n private renderGroupDetails(value: any): string | undefined {\n if (value) {\n return value.toString().replace('Facilities -', '')\n }\n }\n\n private onBeginEdit() {\n this.beginEdit()\n }\n\n private async create() {\n await this.beginCreating()\n }\n\n private showFacilityImport() {\n if (!this.showImport) {\n this.showImport = true\n }\n }\n\n private edit() {\n this.beginEdit()\n }\n\n async confirmDeleteFacility() {\n try {\n this.isDeleting = true\n await this.deleteFacility()\n await this.retrieveFacilities({ id: this.$route.params.id })\n } finally {\n this.showConfirmDelete = false\n this.isDeleting = false\n }\n }\n\n private cancelDeleteFacility() {\n this.showConfirmDelete = false\n }\n\n get getFacilities() {\n if (this.facilities && this.facilities.length > 0) {\n return this.facilities.map((f) => {\n return {\n facilityID: f.facilityID,\n facilityName: f.facilityName,\n games: f.availability ? renderGameDays(f.availability) : null,\n practices: f.availability ? renderPracticeDays(f.availability) : null,\n actions: '',\n }\n })\n }\n\n return []\n }\n\n async importFacility(facility: LeagueFacility) {\n const leagueFacility = getEmptyLeagueFacility()\n\n leagueFacility.postalCode = facility.postalCode\n leagueFacility.typeCountryID = facility.typeCountryID\n leagueFacility.isShared = facility.isShared\n leagueFacility.facilityName = facility.facilityName\n leagueFacility.active = facility.active\n leagueFacility.street1 = facility.street1\n leagueFacility.street2 = facility.street2\n leagueFacility.subdivision1 = facility.subdivision1\n leagueFacility.subdivision2 = facility.subdivision2\n leagueFacility.availability =\n facility.availability?.map((d) => {\n return {\n id: 0,\n typeDayID: d.typeDayID,\n typeFacilityEventID: d.typeFacilityEventID,\n startTime: FACILITY_DEFAULT_TIMES.start,\n endTime: FACILITY_DEFAULT_TIMES.end,\n } as FacilityAvailability\n }) ?? []\n\n await this.beginCreatingFrom({ facility: leagueFacility })\n }\n\n groupDetails(street: string): string | null {\n const d = this.renderGroupDetails(street)\n return d ? d : null\n }\n}\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!./FacilityList.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!./FacilityList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FacilityList.vue?vue&type=template&id=e6d5a4aa&\"\nimport script from \"./FacilityList.vue?vue&type=script&lang=ts&\"\nexport * from \"./FacilityList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FacilityList.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col pl-0 text-right\"},[_c('button',{staticClass:\"btn btn-success mr-2\",on:{\"click\":_vm.saveItem}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Save\")]),_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancelEdit}},[_vm._v(\"Cancel\")])]),_c('div',{staticClass:\"col-12\"},[_c('ValidationObserver',{ref:\"observer\"},[_c('text-input',{staticClass:\"w-50\",attrs:{\"label\":\"Facility\",\"required\":\"\"},model:{value:(_vm.localInEditItem.facilityName),callback:function ($$v) {_vm.$set(_vm.localInEditItem, \"facilityName\", $$v)},expression:\"localInEditItem.facilityName\"}}),_c('div',{staticClass:\"form-group day-selection mt-4\"},[_c('label',{staticClass:\"text-uppercase\"},[_vm._v(\"AVAILABLE PRACTICE DAYS\")]),_c('i',{staticClass:\"fas fa-pencil-alt text-primary\",on:{\"click\":function($event){return _vm.editPracticeDays()}}}),_c('div',{staticClass:\"mt-3\"},[_c('span',[_vm._v(_vm._s(_vm.getPracticeDays()))])])]),_c('div',{staticClass:\"form-group day-selection mt-4\"},[_c('label',{staticClass:\"text-uppercase\"},[_vm._v(\"AVAILABLE GAMES DAYS\")]),_c('i',{staticClass:\"fas fa-pencil-alt text-primary\",on:{\"click\":function($event){return _vm.editGameDays()}}}),_c('div',{staticClass:\"mt-3\"},[_c('span',[_vm._v(_vm._s(_vm.getGameDays()))])])]),_c('div',{staticClass:\"form-group mt-4\"},[_c('p',{staticClass:\"w-50\"},[_vm._v(\" You may choose to organize your areas into groups such as \\\"Soccer Fields\\\" or \\\"Christian Life Center Areas\\\". This option may be helpful if you have multiple facilities or conduct multiple sports \")]),_c('label',{staticClass:\"text-uppercase\"},[_vm._v(\"GROUP\")]),_c('div',{staticClass:\"input-group mb-3 w-25\"},[_c('input',{staticClass:\"form-control\",attrs:{\"name\":\"group-details\",\"type\":\"text\",\"aria-describedby\":\"group-details\"},domProps:{\"value\":_vm.getGroupDetails()},on:{\"change\":function($event){return _vm.inputValueChanged($event)}}}),_c('div',{staticClass:\"input-group-append\"},[_c('button',{staticClass:\"btn btn-outline-secondary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.selectGroup}},[_c('i',{staticClass:\"fas fa-edit\"})])])])])],1)],1)]),_c('available-practice-days',{ref:\"availablePracticeDays\",on:{\"practiceDaysUpdated\":_vm.practiceDaysUpdated}}),_c('available-game-days',{ref:\"availableGameDays\",on:{\"gameDaysUpdated\":_vm.gameDaysUpdated}}),_c('group-list',{ref:\"groups\",on:{\"onGroupSelectionChanged\":_vm.groupSelectionChanged}})],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('modal-multi-select',{attrs:{\"title\":\"Available Practice Days\",\"values\":_vm.list,\"disabled-ids\":_vm.disableds,\"selected-ids\":_vm.selected},on:{\"save\":_vm.save},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, onMounted } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\n\nimport { LeaguePracticeNight } from '@/GeneratedTypes/LeaguePracticeNight'\nimport ModalMultiSelect from '@/components/ModalMultiSelect.vue'\nimport { days as upwardDays } from '../../../../lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'AvailablePracticeDays',\n components: {\n ModalMultiSelect,\n Modal,\n },\n setup(props, ctx) {\n // original coder was haning on to this on mount and modifies it on save.\n const practiceNights = ref([])\n // the days selected at program set up\n const selectedDays = ref([])\n //the days currently selected for practice\n const disabledDays = ref([])\n\n const days = ref(upwardDays)\n\n const modalIsVisible = ref(false)\n\n onMounted(async () => {\n try {\n const leagueID = ctx.root.$route.params.id\n // so, original coder pulled in the practice nights from facility service,\n // then hangs on to them to modify on save.\n const nights = await store.dispatch.facilities.loadPracticeNights({ id: leagueID })\n practiceNights.value = nights ?? []\n\n // it appears these are the days that are not available for selection\n const programDays = (await store.dispatch.facilities.loadSelectedPracticeDays({ id: leagueID })) ?? []\n // then ironically the selections are disabled, he can set them on toggle the toggle\n // method below as well, but this is the only place they are disabled.\n disabledDays.value = days.value.filter((x) => programDays?.indexOf(x.name) == -1).map((x) => x.name)\n } catch (error) {}\n })\n\n function toggle(currentDays: string[] | null) {\n modalIsVisible.value = !modalIsVisible.value\n selectedDays.value = currentDays ?? []\n }\n\n const list = computed(() => days.value.map((x) => ({ id: x.name, description: x.name })))\n\n const disableds = computed(() => disabledDays.value)\n\n const selected = computed(() => selectedDays.value.filter((sd) => !disableds.value.some((d) => d === sd)))\n\n function save(nights: string[]) {\n modalIsVisible.value = false\n\n const practiceDays: LeaguePracticeNight[] = []\n if (practiceNights.value) {\n const myPracticeNights = practiceNights.value\n myPracticeNights.forEach((pn) => {\n const night = nights.some((x) => x == pn.typeDayID)\n\n if (night) {\n practiceDays.push(pn)\n }\n })\n }\n ctx.emit('practiceDaysUpdated', practiceDays)\n }\n\n return {\n modalIsVisible,\n list,\n disableds,\n selected,\n save,\n toggle,\n }\n },\n})\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!./AvailablePracticeDays.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!./AvailablePracticeDays.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AvailablePracticeDays.vue?vue&type=template&id=c36e3aec&scoped=true&\"\nimport script from \"./AvailablePracticeDays.vue?vue&type=script&lang=ts&\"\nexport * from \"./AvailablePracticeDays.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AvailablePracticeDays.vue?vue&type=style&index=0&id=c36e3aec&lang=scss&scoped=true&\"\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 \"c36e3aec\",\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('modal-multi-select',{attrs:{\"title\":\"Available Game Days\",\"values\":_vm.list,\"disabled-ids\":_vm.disableds,\"selected-ids\":_vm.selected},on:{\"save\":_vm.save},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport ModalMultiSelect from '@/components/ModalMultiSelect.vue'\nimport { days as upwardDays } from '../../../../lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\n\nexport default defineComponent({\n name: 'AvailableGameDays',\n components: {\n ModalMultiSelect,\n Modal,\n },\n setup(props, ctx) {\n const currentDays = ref([])\n const days = ref(upwardDays)\n\n const list = computed(() => days.value.map((x) => ({ id: x.name, description: x.name })))\n\n const disableds = ref([])\n\n const selected = computed(() => currentDays.value)\n\n const modalIsVisible = ref(false)\n\n function toggle(myCurrentDays: string[]) {\n currentDays.value = myCurrentDays\n modalIsVisible.value = !modalIsVisible.value\n }\n\n function save(selected: string[]) {\n ctx.emit('gameDaysUpdated', selected)\n }\n\n return {\n modalIsVisible,\n list,\n disableds,\n selected,\n save,\n toggle,\n }\n },\n})\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!./AvailableGameDays.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!./AvailableGameDays.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AvailableGameDays.vue?vue&type=template&id=74b0db22&scoped=true&\"\nimport script from \"./AvailableGameDays.vue?vue&type=script&lang=ts&\"\nexport * from \"./AvailableGameDays.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AvailableGameDays.vue?vue&type=style&index=0&id=74b0db22&lang=scss&scoped=true&\"\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 \"74b0db22\",\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('div',[_c('modal',{attrs:{\"title\":\"Groups\",\"is-small\":true},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"modal-body\"},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-12\"},[_c('DataTable',{staticClass:\"data-table-zebra mt-5\",attrs:{\"headers\":_vm.headers,\"items\":_vm.groups,\"items-per-page\":10,\"dense\":\"\",\"hide-footer\":false},on:{\"rowSelected\":_vm.rowSelected}})],1)])])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.select}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Select\")])])],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\nimport { Component, Vue } from 'vue-property-decorator'\nimport { Action } from 'vuex-class'\n\nimport Modal from '@/components/Modal.vue'\nimport DataTable from '@/elements/DataTable/DataTable.vue'\n\nimport * as facilityStore from '@/store/facilities'\n\nimport { DataTableSelection } from '@/models/DataTable/DataTableSelection'\nimport { DataTableHeader } from 'vuetify/types'\n\n@Component({\n components: {\n Modal,\n DataTable,\n },\n})\nexport default class GroupList extends Vue {\n modalIsVisible = false\n isDirty = false\n\n @Action(facilityStore.actionNames.loadGroup, {\n namespace: facilityStore.namespace,\n })\n private readonly loadGroups!: ({ id }: { id: string }) => string[] | null\n\n /**\n * mounted\n */\n public async mounted() {\n const leagueID = this.$route.params.id\n const facilityGroups = await this.loadGroups({ id: leagueID.toString() })\n\n if (facilityGroups) {\n const groupData: any[] = []\n facilityGroups.forEach((g: string) => {\n groupData.push({ name: g })\n this.groups = groupData\n })\n }\n }\n public toggle() {\n this.modalIsVisible = !this.modalIsVisible\n }\n\n private updateSelections(row: any) {\n this.selectedGroup = row.row.name\n }\n\n rowSelected(x: DataTableSelection<{ name: string }>) {\n this.selectedGroup = x.item.name\n }\n\n private cancel() {\n this.modalIsVisible = false\n }\n private select() {\n this.modalIsVisible = false\n this.$emit('onGroupSelectionChanged', this.selectedGroup)\n }\n\n groups: any[] | null = []\n selectedGroup!: string\n\n headers: DataTableHeader[] = [{ text: 'Group Name', value: 'name' }]\n}\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!./GroupList.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!./GroupList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GroupList.vue?vue&type=template&id=064afa00&scoped=true&\"\nimport script from \"./GroupList.vue?vue&type=script&lang=ts&\"\nexport * from \"./GroupList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GroupList.vue?vue&type=style&index=0&id=064afa00&lang=scss&scoped=true&\"\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 \"064afa00\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue'\nimport Component from 'vue-class-component'\nimport { Watch } from 'vue-property-decorator'\nimport * as facilityStore from '@/store/facilities'\nimport { Action, Getter, Mutation } from 'vuex-class'\nimport { cloneDeep } from 'lodash'\nimport { viewModes, eventTypes } from '@/store/facilities'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport { FacilityAvailability } from '@/GeneratedTypes/FacilityAvailability'\nimport TextInput from '@/elements/TextInput.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nimport AvailablePracticeDays from './AvailablePracticeDays.vue'\nimport AvailableGameDays from './AvailableGameDays.vue'\nimport GroupList from './GroupList.vue'\nimport { LeaguePracticeNight } from '@/GeneratedTypes/LeaguePracticeNight'\nimport facilityServices from '@/services/facilityService'\nimport { ValidationObserver } from 'vee-validate'\n\n@Component({\n components: {\n TextInput,\n AvailablePracticeDays,\n AvailableGameDays,\n GroupList,\n VeeValidateForm,\n ValidationObserver,\n },\n})\nexport default class FacilityEditor extends Vue {\n @Action(facilityStore.actionNames.endEdit, {\n namespace: facilityStore.namespace,\n })\n private readonly endEdit!: () => void\n\n @Action(facilityStore.actionNames.endCreating, {\n namespace: facilityStore.namespace,\n })\n private readonly endCreating!: () => void\n\n @Action(facilityStore.actionNames.validate, {\n namespace: facilityStore.namespace,\n })\n private readonly validate!: () => boolean\n\n @Action(facilityStore.actionNames.save, {\n namespace: facilityStore.namespace,\n })\n private readonly save!: () => LeagueFacility\n\n @Getter(facilityStore.getterNames.viewMode, {\n namespace: facilityStore.namespace,\n })\n private viewMode!: viewModes\n\n @Getter(facilityStore.getterNames.editorItem, {\n namespace: facilityStore.namespace,\n })\n private inEditItem!: LeagueFacility\n\n @Mutation(facilityStore.mutationNames.setInEditItem, {\n namespace: facilityStore.namespace,\n })\n private setInEditItem!: ({ item }: { item: LeagueFacility }) => void\n\n private localInEditItem: LeagueFacility = this.getEmptyLeagueFacility()\n\n availability!: FacilityAvailability[] | null\n practiceDays!: string\n gameDays!: string\n groupDetails!: string\n loaded = false\n\n @Watch('viewMode', { immediate: true })\n private onViewModeChanged() {\n this.updateView()\n }\n @Watch('localInEditItem.availability', { immediate: true })\n private onAvailabilityChanged() {\n this.updateView()\n }\n\n @Watch('localInEditItem.street1', { immediate: true })\n private onStreet1Changed() {\n this.updateView()\n }\n\n public mounted() {\n this.localInEditItem = cloneDeep(this.inEditItem)\n this.updateView()\n }\n\n private isInEditMode() {\n return this.viewMode === viewModes.edit\n }\n\n private getEmptyLeagueFacility() {\n return {\n leagueID: 0,\n facilityID: 0,\n accountNumber: '',\n isShared: false,\n facilityName: '',\n active: false,\n street1: '',\n street2: '',\n subdivision1: '',\n subdivision2: '',\n postalCode: '',\n typeCountryID: '',\n childFacilities: [],\n availability: [],\n } as LeagueFacility\n }\n\n private getGroupDetails() {\n return this.parseGroupDetails(this.localInEditItem.street1)\n }\n private getPracticeDays() {\n return this.getDays(this.localInEditItem, eventTypes.Practices)\n }\n\n private getGameDays() {\n return this.getDays(this.localInEditItem, eventTypes.Games)\n }\n\n private getDays(facility: LeagueFacility, eventType: eventTypes): string {\n let days: string[] = []\n if (facility && facility.availability) {\n const availability = facility.availability\n for (const item of availability) {\n if (item.typeFacilityEventID === eventType) {\n const day = item.typeDayID\n days.push(day)\n }\n }\n }\n\n days = [...new Set(days)] //remove dups\n return this.sortDays(days).join(', ')\n }\n\n private sortDays(days: string[]) {\n const localDays = days\n if (localDays) {\n localDays.sort(function sortByDay(a, b) {\n // sort days by days of the week\n const sorter: any = {\n sunday: 0, // << if sunday is first day of week\n monday: 1,\n tuesday: 2,\n wednesday: 3,\n thursday: 4,\n friday: 5,\n saturday: 6,\n }\n const day1 = a.toLowerCase()\n const day2 = b.toLowerCase()\n return sorter[day1] - sorter[day2]\n })\n }\n return localDays\n }\n private parseGroupDetails(value: string | null): string {\n if (value) {\n return value.toString().replace('Facilities -', '')\n }\n return ''\n }\n\n private editPracticeDays() {\n const currentDays = this.practiceDays.replace(/\\s/g, '').split(',')\n ;(this.$refs.availablePracticeDays as Vue & { toggle: (current: string[]) => void }).toggle(currentDays)\n }\n\n private editGameDays() {\n const currentDays = this.gameDays.replace(/\\s/g, '').split(',')\n ;(this.$refs.availableGameDays as Vue & { toggle: (current: string[]) => void }).toggle(currentDays)\n }\n\n private selectGroup() {\n ;(this.$refs.groups as Vue & { toggle: () => void }).toggle()\n }\n\n private async saveItem() {\n // make sure form is valid\n const formIsValid = await (this.$refs.observer as Vue & { validate: () => boolean }).validate()\n if (formIsValid) {\n this.setInEditItem({ item: this.localInEditItem })\n // validate data structure before submitting\n const validData = await this.validate()\n\n if (validData) {\n await this.save()\n if (this.viewMode === viewModes.create) {\n this.endCreating()\n } else {\n this.endEdit()\n }\n }\n }\n }\n\n private cancelEdit() {\n if (this.viewMode === viewModes.edit) {\n this.endEdit()\n }\n\n if (this.viewMode === viewModes.create) {\n this.endCreating()\n }\n }\n\n private practiceDaysUpdated(days: LeaguePracticeNight[]) {\n facilityServices.updatePracticeDays(days, this.localInEditItem.availability)\n //update selected practices\n this.practiceDays = ''\n\n this.$nextTick(() => {\n this.updateView()\n })\n }\n\n private gameDaysUpdated(days: string[]) {\n facilityServices.updateGameDays(days, this.localInEditItem.availability)\n this.gameDays = ''\n\n this.$nextTick(() => {\n this.updateView()\n })\n }\n\n private groupSelectionChanged(group: string) {\n this.localInEditItem.street1 = group\n this.groupDetails = ''\n this.$nextTick(() => {\n this.updateView()\n })\n }\n\n private inputValueChanged(event: any) {\n const value = event.srcElement.value\n this.localInEditItem.street1 = value\n }\n\n private updateView() {\n this.practiceDays = this.getDays(this.localInEditItem, eventTypes.Practices)\n this.gameDays = this.getDays(this.localInEditItem, eventTypes.Games)\n this.groupDetails = this.parseGroupDetails(this.localInEditItem.street1)\n }\n}\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!./FacilityEditor.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!./FacilityEditor.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FacilityEditor.vue?vue&type=template&id=d262cc4e&scoped=true&\"\nimport script from \"./FacilityEditor.vue?vue&type=script&lang=ts&\"\nexport * from \"./FacilityEditor.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FacilityEditor.vue?vue&type=style&index=0&id=d262cc4e&lang=scss&scoped=true&\"\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 \"d262cc4e\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\nimport FacilityList from './FacilityList.vue'\nimport FacilityEditor from './FacilityEditor.vue'\nimport * as facilityStore from '@/store/facilities'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Facilities',\n components: {\n FacilityList,\n FacilityEditor,\n },\n setup() {\n const viewMode = computed(() => store.getters.facilities.viewMode)\n\n const componentName = ref('FacilityList')\n\n onMounted(() => {\n store.dispatch.facilities.endEdit(null)\n })\n\n watch(\n () => viewMode.value,\n () => {\n if (isInEditOrCreateMode()) {\n componentName.value = 'FacilityEditor'\n } else {\n componentName.value = 'FacilityList'\n }\n },\n { immediate: true }\n )\n\n function isInEditOrCreateMode(): boolean {\n return (\n viewMode.value === facilityStore.viewModes.edit || viewMode.value === facilityStore.viewModes.create\n )\n }\n\n return {\n componentName,\n }\n },\n})\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!./Facilities.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!./Facilities.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Facilities.vue?vue&type=template&id=52800f33&\"\nimport script from \"./Facilities.vue?vue&type=script&lang=ts&\"\nexport * from \"./Facilities.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('div',{staticClass:\"p-2\"},[(!_vm.facilities.length)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no facilities set up for this program.\")]),_c('p',[_vm._v(\" Click the \"),_c('router-link',{attrs:{\"to\":_vm.facilitiesLink}},[_vm._v(\"Facilities\")]),_vm._v(\" tab to add one or more facilities. \")],1)]):_vm._e(),(_vm.facilities.length)?_c('practice-scheduler',{attrs:{\"program-i-d\":_vm.programID}}):_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\nimport { defineComponent, computed, onMounted } from '@vue/composition-api'\n\nimport PracticeScheduler from '@/views/Programs/Scheduling/Practices/PracticeScheduler.vue'\nimport { undefinedIsZero } from '@/lib/support/utilities/numbers/undefinedIsZero'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Practices',\n components: { PracticeScheduler },\n setup(props, ctx) {\n const league = computed(() => store.getters.leagues.currentItem)\n const facilities = computed(() => store.getters.facilities.items)\n\n const leagueID = computed(() => ctx.root.$route.params.id)\n\n /***\n * cheer or blank\n */\n const programIsCheer = computed(() => ctx.root.$route.params.program == 'cheer')\n\n /***\n * cheer or blank\n */\n const programID = computed(() => {\n const couldBeCheer = undefinedIsZero(league.value.programs?.length) > 1\n if (programIsCheer.value && couldBeCheer) {\n //@ts-ignore -- checked above.\n return league.value.programs[1].typeProgramID || ''\n }\n\n if (league.value && league.value.programs?.length) {\n return league.value.programs[0].typeProgramID || ''\n }\n return ''\n })\n\n const facilitiesLink = computed(\n () => `/programs/league/${ctx.root.$route.params.id}/scheduling/facilities`\n )\n\n onMounted(async () => {\n await store.dispatch.facilities.load({ id: leagueID.value })\n })\n\n return {\n facilities,\n facilitiesLink,\n programID,\n }\n },\n})\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!./Practices.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!./Practices.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Practices.vue?vue&type=template&id=3c057f2e&\"\nimport script from \"./Practices.vue?vue&type=script&lang=ts&\"\nexport * from \"./Practices.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('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('div',{staticClass:\"row pt-2\"},[_c('h5',{staticClass:\"col-md-12 col-lg-2\"},[_vm._v(\"Games\")]),_c('div',{staticClass:\"col-md-12 col-lg-10 pb-0 move-right\"},[_c('button',{staticClass:\"m-1 btn btn-success\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.autoSchedule}},[_c('i',{staticClass:\"far fa-clock\"}),_vm._v(\" Auto-Schedule Games \")]),_c('button',{staticClass:\"m-1 btn btn-outline-dark\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.clickAddGame}},[_c('i',{staticClass:\"fas fa-plus\"}),_vm._v(\" Add Game \")]),_c('button',{staticClass:\"m-1 btn btn-outline-dark\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.clickPairGames}},[_c('i',{staticClass:\"fas fa-network-wired\"}),_vm._v(\" Create Default Matchups \")]),_c('button',{staticClass:\"m-1 btn btn-outline-dark\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.clearDivisionGames}},[_c('i',{staticClass:\"fas fa-trash\"}),_vm._v(\" Clear Division Games \")])])]),_c('div',{staticClass:\"row\"},[(!_vm.loading)?_c('div',{staticClass:\"col d-flex pb-0 pt-0\"},[_c('select-input',{staticClass:\"mr-3\",attrs:{\"items-list\":_vm.roundList,\"text-property-name\":\"description\",\"value-property-name\":\"id\",\"label\":\"Round\"},model:{value:(_vm.round),callback:function ($$v) {_vm.round=$$v},expression:\"round\"}}),_c('select-input',{attrs:{\"items-list\":_vm.gameDivisionList,\"text-property-name\":\"divisionName\",\"value-property-name\":\"divisionID\",\"label\":\"Division\"},model:{value:(_vm.divisionID),callback:function ($$v) {_vm.divisionID=$$v},expression:\"divisionID\"}})],1):_vm._e()]),(_vm.loading)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12 text-center\"},[_c('loading')],1)]):_vm._e(),(!_vm.loading)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-3\"},[_c('div',[_c('toggle-links',{attrs:{\"value-property-name\":\"id\",\"text-property-name\":\"text\",\"items-list\":[\n { id: 'calendar', text: 'Calendar View' },\n { id: 'list', text: 'List View' } ]},model:{value:(_vm.viewtype),callback:function ($$v) {_vm.viewtype=$$v},expression:\"viewtype\"}})],1)])]):_vm._e(),(!_vm.loading)?[(_vm.viewtype === 'calendar')?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('Calendar',{attrs:{\"group-name\":\"paracticeScheduler\",\"weekdays\":_vm.weekdays,\"start-date\":_vm.firstGameDate,\"first-day\":_vm.firstGameDate,\"default-event-duration\":_vm.gameDuration,\"events\":_vm.schedule,\"matchups\":_vm.unscheduledData,\"first-time\":\"08:00\",\"last-time\":\"21:00\",\"selectedWeek\":_vm.calendarWeekNumber,\"upwardLeagueID\":_vm.leagueID,\"coachConflictType\":_vm.coachConflictTypeEnum.GameDoubleBooked},on:{\"drop:external\":_vm.eventDropped,\"drop:internal\":_vm.eventMoved,\"click:event\":_vm.eventClick,\"currentRange\":_vm.currentRange},scopedSlots:_vm._u([{key:\"comment\",fn:function(){return [(_vm.totalUnscheduled == 0)?_c('div',{staticClass:\"border p-3 mx-2\"},[_c('div',{staticClass:\"text-center font-weight-bold\"},[_vm._v(\"No matchups to schedule\")]),_c('p',{staticClass:\"text-muted pt-2 text-center\"},[_vm._v(\" Either all matchups are scheduled, or no matchups have been generated. \")])]):_vm._e()]},proxy:true},{key:\"header\",fn:function(){return [_c('div',{staticClass:\"tab-fix\"},[_c('div',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.schedulingStatus))]),_c('horizontal-tab-filter',{attrs:{\"filters\":_vm.facilitiesToFilter,\"label\":\"Facilities To Show\"},on:{\"filter-update\":_vm.facilityFilterUpdated}}),_c('HorizontalTabs',{attrs:{\"tabs\":_vm.facilitiesAsTabs},model:{value:(_vm.currentFacility),callback:function ($$v) {_vm.currentFacility=$$v},expression:\"currentFacility\"}})],1)]},proxy:true},{key:\"item\",fn:function(ref){\n var item = ref.item;\nreturn [_c('ScheduleSquadItem',{attrs:{\"item\":item,\"showCoaches\":false}})]}}],null,false,2908972073)})],1)]):_vm._e(),(_vm.viewtype === 'list')?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-3\"},[_c('div',{staticClass:\"pl-1 pr-2\"},[_c('game-schedule-info',{attrs:{\"schedule\":_vm.gridSchedule,\"rounds\":_vm.roundList,\"games\":_vm.internalGames,\"divisionId\":_vm.divisionID}})],1)]),_c('div',{staticClass:\"col-9\"},[_c('h5',[_vm._v(\" Scheduled Games for \"),_c('i',{staticClass:\"text-primary\"},[_vm._v(_vm._s(_vm.divisionName))])]),_c('DataTable',{staticClass:\"elevation-1 data-table-zebra\",attrs:{\"dense\":\"\",\"headers\":_vm.headers,\"items\":_vm.gridSchedule,\"items-per-page\":15},on:{\"dblClick\":_vm.dblClickGrid},scopedSlots:_vm._u([{key:\"item.referees\",fn:function(ref){\n var item = ref.item;\nreturn _vm._l((item.volunteers),function(name,i){return _c('div',{key:i},[_vm._v(_vm._s(_vm.maxStringLength(name, 15)))])})}},{key:\"item.actions\",fn:function(ref){\n var item = ref.item;\nreturn [_c('EditBtn',{on:{\"click\":function($event){return _vm.editItem(item)}}}),_c('DeleteBtn',{on:{\"click\":function($event){return _vm.deleteItem(item)}}})]}}],null,false,3956639677)})],1)]):_vm._e()]:_vm._e(),_c('game-modal',{attrs:{\"division-list\":_vm.gameDivisionList,\"facility-list\":_vm.eventFacilities,\"league\":this.league,\"round-list\":_vm.roundList,\"game\":_vm.currentGame,\"team-list\":_vm.teams,\"program-i-d\":_vm.programID,\"game-length\":_vm.division.gameLength,\"editScores\":false},on:{\"confirmed\":_vm.confirmGame,\"deleted\":_vm.deleteGame},model:{value:(_vm.gameModalShowing),callback:function ($$v) {_vm.gameModalShowing=$$v},expression:\"gameModalShowing\"}}),_c('confirmation-modal',{attrs:{\"is-small\":\"\",\"title\":\"Confirm Pairings\",\"show\":_vm.showConfirmPairings},on:{\"onResponse\":_vm.pairingsConfirmed}},[_vm._v(\" Creating default matchups will clear all current game matchups for this division and reset them to default matchups. \"),_c('template',{slot:\"confirm\"},[_vm._v(\"Confirm\")])],2),_c('alert',{attrs:{\"type\":_vm.alertType},model:{value:(_vm.showPairingsConfirmed),callback:function ($$v) {_vm.showPairingsConfirmed=$$v},expression:\"showPairingsConfirmed\"}},[_vm._v(\" Pairings generated. \")]),_c('confirmation-modal',{attrs:{\"is-small\":\"\",\"title\":\"Confirm Delete\",\"show\":_vm.showDeleteConfirmation},on:{\"onResponse\":_vm.deleteConfirmed}},[_vm._v(\" This will remove the game. Do you wish to continue? \")]),_c('confirmation-modal',{attrs:{\"is-small\":\"\",\"title\":\"Clear Division Games\",\"show\":_vm.clearGameWarning},on:{\"onResponse\":_vm.clearGameConfirmed}},[_vm._v(\" Do you want to delete all the games scheduled for \"),_c('b',[_vm._v(_vm._s(_vm.divisionName))]),_vm._v(\"? \")]),_c('confirmation-modal',{attrs:{\"is-small\":\"\",\"title\":\"Auto-schedule Warning\",\"show\":_vm.autoscheduleWarning},on:{\"onResponse\":_vm.autoscheduleConfirmed}},[_c('p',{staticClass:\"text-center alert-warning p-3\"},[_c('i',{staticClass:\"fas fa-exclamation-triangle\"}),_vm._v(\" There are already games scheduled for \"),_c('b',[_vm._v(_vm._s(_vm.divisionName))]),_vm._v(\". \")]),_c('p',{staticClass:\"px-3\"},[_vm._v(\" Auto-schedule will delete all games in this division and replace them with a new schedule. Do you want to continue to the auto-schedule tool? \")])]),_c('alert',{attrs:{\"type\":_vm.alertType},model:{value:(_vm.showDeleteConfirmed),callback:function ($$v) {_vm.showDeleteConfirmed=$$v},expression:\"showDeleteConfirmed\"}},[_vm._v(\"Game Deleted\")])],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.hasNoSchedule)?_c('div',{staticClass:\"p-3 border text-center\"},[_c('p',[_c('b',[_vm._v(_vm._s(_vm.unscheduledMatchupCount))]),_vm._v(\" unscheduled matchups \"),_c('br'),_vm._v(\" across \"),_c('b',[_vm._v(_vm._s(_vm.rounds.length - 1))]),_vm._v(\" rounds \")]),(_vm.unscheduledMatchupCount > 0)?_c('p',{staticClass:\"text-muted\"},[_vm._v(\" To schedule matchups, switch to Calendar View \")]):_vm._e()]):_vm._e(),(_vm.hasNoSchedule && _vm.unscheduledMatchupCount == 0)?_c('div',{staticClass:\"bg-light-2 border p-4\"},[_c('div',{staticClass:\"font-weight-bold text-center\"},[_vm._v(\"Start Scheduling\")]),_c('p',{staticClass:\"text-muted text-center small\"},[_vm._v(\"Three ways to schedule games\")]),_c('div',{staticClass:\"font-weight-bold small\"},[_vm._v(\"1) Complete Automation\")]),_vm._m(0),_c('div',{staticClass:\"font-weight-bold small\"},[_vm._v(\"2) Partial Automation\")]),_vm._m(1),_c('div',{staticClass:\"font-weight-bold small\"},[_vm._v(\"3) Manual\")]),_vm._m(2)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_vm._v(\"Automatically generate team matchups and schedule games by clicking \"),_c('i',[_vm._v(\"Auto-schedule Games\")]),_vm._v(\".\")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_vm._v(\" Automatically generate team matchups by clicking \"),_c('i',[_vm._v(\"Create Default Matchups\")]),_vm._v(\", then switch to \"),_c('i',[_vm._v(\"Calendar View\")]),_vm._v(\" and select a date and time for each game by dragging-and-dropping the matchups onto the calendar. \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_vm._v(\"Click \"),_c('i',[_vm._v(\"Add Game\")]),_vm._v(\" to manually select the matchup, date, time and facility for games.\")])}]\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\nimport { defineComponent, PropType, computed } from '@vue/composition-api'\nimport { ScheduleGridData } from '@/views/Programs/Scheduling/ext/helper'\nimport { isNullDate, toDate } from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport { DivisionGameInfo } from '@/GeneratedTypes/ListInfo/DivisionGameInfo'\n\nexport default defineComponent({\n name: 'GameScheduleInfo',\n props: {\n games: { type: Array as PropType, required: true },\n rounds: { type: Array as PropType<{ id: number; description: string }[]>, required: true },\n schedule: { type: Array as PropType, required: true },\n divisionId: { type: Number, required: true },\n },\n setup(props) {\n const hasNoSchedule = computed(() => unscheduledMatchupCount.value == 0 && props.schedule.length == 0)\n const unscheduledMatchupCount = computed(() => {\n const unscheduled = props.games.filter(\n (x) => isNullDate(toDate(x.gameStart)) && x.divisionID == props.divisionId\n )\n return unscheduled.length\n })\n\n return { unscheduledMatchupCount, hasNoSchedule }\n },\n})\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!./GameScheduleInfo.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!./GameScheduleInfo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameScheduleInfo.vue?vue&type=template&id=8e9e92cc&\"\nimport script from \"./GameScheduleInfo.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameScheduleInfo.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 dayjs from 'dayjs'\n\nexport function scheduleSort(a: ScheduleGridData, b: ScheduleGridData) {\n //sort by datetime then location\n const same = dayjs(a.start, 'minute').isSame(b.start, 'minute')\n if (!same) {\n return dayjs(a.start).isAfter(b.start) ? 1 : -1\n } else {\n if (a.location.toLowerCase() > b.location.toLowerCase()) return 1\n if (a.location.toLowerCase() < b.location.toLowerCase()) return -1\n return 0\n }\n}\n\nexport interface ScheduleGridData {\n start: Date\n end: Date\n prettyDate: string\n prettyTime: string\n location: string\n title: string\n division: string\n round: number\n id: number\n referees?: string[]\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._l((_vm.itemsList),function(item,index){return _c('span',{key:_vm.getOptionKey(item, index)},[_c('a',{class:{\n active: _vm.internalValue == _vm.getOptionValue(item, index),\n dormant: _vm.internalValue != _vm.getOptionValue(item, index),\n },on:{\"click\":function($event){return _vm.select(item, index)}}},[_vm._v(_vm._s(_vm.getOptionText(item)))]),(index != _vm.itemsList.length - 1)?_c('span',[_vm._v(\" / \")]):_vm._e()])}),0)}\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\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport { getProps, useSelectList } from '@/composables/SelectListProperties'\n\nexport default defineComponent({\n name: 'ToggleLinks',\n props: {\n value: { type: String, required: true, default: () => '' },\n ...getProps(),\n },\n setup(props, ctx) {\n const { getOptionValue, getOptionKey, getOptionText } = useSelectList(props)\n const internalValue = ref('')\n\n function select(item: Record, index: number) {\n internalValue.value = getOptionValue(item, index)\n input()\n }\n\n function input() {\n ctx.emit('input', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n },\n { immediate: true }\n )\n\n return {\n internalValue,\n select,\n getOptionValue,\n getOptionKey,\n getOptionText,\n }\n },\n})\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!./ToggleLinks.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!./ToggleLinks.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ToggleLinks.vue?vue&type=template&id=42a80631&scoped=true&\"\nimport script from \"./ToggleLinks.vue?vue&type=script&lang=ts&\"\nexport * from \"./ToggleLinks.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ToggleLinks.vue?vue&type=style&index=0&id=42a80631&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 \"42a80631\",\n null\n \n)\n\nexport default component.exports","/**\n * Builds an event ID out of an ID and a prefix, this can help disambiguate ids coming from different sources\n * (e.g. events which can be practices or games )\n * @param prefix - prefix that makes this ID uniques (e.g. \"GAMES\")\n * @param s - id of the thing as a string\n */\nexport function id2eventid(prefix: string, s: string) {\n return prefix + s\n}\n\n/**\n * returns the original id from a combined id.\n * @param searchprefix - prefix originally used\n * @param s - id to break up\n */\nexport function eventid2id(searchprefix: string, s: string | null): string {\n const rv = s?.split(searchprefix)\n if (rv && rv.length > 1) {\n return rv[1] as string\n }\n return '0'\n}\n","import { DataTableHeader } from 'vuetify/types'\nimport store from '@/store'\n\nexport const headers: DataTableHeader[] = [\n { text: 'Round', value: 'round' },\n { text: 'Game Name', value: 'title' },\n { text: 'Date', value: 'prettyDate' },\n { text: 'Time', value: 'prettyTime' },\n { text: 'Location', value: 'location' },\n { text: `${store.getters.leagueAbstraction.refLabel}s`, value: 'referees' },\n { text: '', value: 'actions' },\n]\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport { getEmptyLeagueListItem, LeagueListItemSeed } from '@/lib/support/models/LeagueListItem/data'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueProgams2LeagueListItem } from '@/lib/support/models/LeagueListItem/LeaguePrograms2LeagueListItem'\nimport { League } from '@/GeneratedTypes/League'\nimport { DataTableSelection } from '@/models/DataTable/DataTableSelection'\n\nimport { namespace } from 'vuex-class'\nimport { getterNames as leagueGetters, namespace as leagueStoreName } from '@/store/leagues'\nimport { getterNames as volunteerGetters, namespace as volunteerStoreName } from '@/store/volunteers'\nimport { getterNames as schedulingGetters, namespace as schedulingStoreName } from '@/store/scheduling'\nimport {\n actionNames as facilitiesActions,\n getterNames as facilitiesGetters,\n namespace as facilitiesStoreName,\n} from '@/store/facilities'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport {\n actionNames as divisionActions,\n getterNames as divisionGetters,\n namespace as divisionNamespace,\n} from '@/store/divisions'\n\nimport HorizontalTabs, { TabType } from '@/components/HorizontalTabs.vue'\nimport HorizontalTabFilter, { FilterTabType } from '@/components/HorizontalTabFilter.vue'\nimport { DivisionGameInfo } from '@/GeneratedTypes/ListInfo/DivisionGameInfo'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport DivisionSelect from '@/components/DivisionSelect.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport dayjs from 'dayjs'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { cloneDeep } from 'lodash'\nimport { isNullDate, toDate } from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport { DivisionGameInfoToDivisionGame } from '@/lib/support/models/DivisionGame/DivisionGameInfoToDivisionGame'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport GameScheduleInfo from '@/views/Programs/Scheduling/Games/vues/GameScheduleInfo.vue'\nimport { DivisionGame } from '@/GeneratedTypes/DivisionGame'\nimport { LeagueVolunteerInfo } from '@/GeneratedTypes/ListInfo/LeagueVolunteerInfo'\nimport { ScheduleGridData, scheduleSort } from '@/views/Programs/Scheduling/ext/helper'\nimport { decrementingDGStrategy, getEmptyDivisionGame } from '@/lib/support/models/DivisionGame/data'\nimport GameModal from '@/views/Programs/Scheduling/Games/ext/GameModal.vue'\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\nimport { AvailabilityToScheduleBlocks } from '@/lib/support/models/ScheduleBlocks/AvailabilityToScheduleBlock'\nimport ToggleLinks from '@/elements/ToggleLinks.vue'\nimport { FacilityEventInfo } from '@/GeneratedTypes/ListInfo/FacilityEventInfo'\nimport { eventid2id, id2eventid } from '@/views/Programs/Scheduling/ext/id_utils'\nimport store from '@/store'\nimport Loading from '@/elements/Loading.vue'\nimport { DeleteIcon } from '@/elements/Icons'\nimport { CalendarWeek } from '@/models/Calendar/CalendarWeek'\n\nimport Calendar from '@/elements/Calendar.vue'\nimport ScheduleSquadItem from '@/views/Programs/Scheduling/Squads/ScheduleDragItem.vue'\nimport { CalendarData } from '@/elements/Calendar/types'\n\nimport DataTable from '@/elements/DataTable/DataTable.vue'\nimport EditBtn from '@/elements/DataTable/vue/EditBtn.vue'\nimport DeleteBtn from '@/elements/DataTable/vue/DeleteBtn.vue'\nimport { headers } from '@/views/Programs/Scheduling/Games/ext/headers'\nimport { maxStringLength } from '@/filters/maxStringLength'\nimport * as colors from '@/views/Programs/Scheduling/ext/colors'\nimport { CoachConflictTypeEnum } from '@/models/TeamManagement/CoachConflictTypeEnum'\n\nconst league = namespace(leagueStoreName)\nconst facilities = namespace(facilitiesStoreName)\nconst divisions = namespace(divisionNamespace)\nconst schedules = namespace(schedulingStoreName)\nconst volunteers = namespace(volunteerStoreName)\n\nconst WEEK_IN_SECONDS = 7 * 24 * 3600 * 1000\nconst START_DAY = 1 //monday\n\n@Component({\n components: {\n DataTable,\n EditBtn,\n DeleteBtn,\n ToggleLinks,\n ConfirmationModal,\n Alert,\n SelectInput,\n DivisionSelect,\n HorizontalTabs,\n HorizontalTabFilter,\n TypeProgramTab,\n GameModal,\n Loading,\n DeleteIcon,\n GameScheduleInfo,\n Calendar,\n ScheduleSquadItem,\n },\n data() {\n return { headers }\n },\n methods: {\n maxStringLength,\n },\n})\nexport default class GameSchedule extends Vue {\n /** getters */\n @league.Getter(leagueGetters.currentItem) league!: League\n @volunteers.Getter(volunteerGetters.referees) referees!: LeagueVolunteerInfo[]\n @facilities.Getter(facilitiesGetters.items) facilities!: LeagueFacility[]\n @schedules.Getter(schedulingGetters.gamesStatusText) schedulingStatus!: string\n @divisions.Getter(divisionGetters.allItems) divisionList!: (s: string) => LeagueDivisionInfo[]\n @divisions.Action(divisionActions.fetchAll) fetchAllDivisions!: ({\n upwardLeagueId,\n force,\n }: {\n upwardLeagueId: UpwardLeagueIDType\n force: boolean\n }) => Promise\n @facilities.Action(facilitiesActions.load)\n private readonly retrieveFacilities!: ({ id }: { id: string }) => LeagueFacility[] | null\n\n //*** represents time-zone adjusted start and end times.\n private internalGames: DivisionGameInfo[] = []\n\n private readonly loadGames = this.store.dispatch.scheduling.loadGames\n private readonly clearGames = this.store.dispatch.scheduling.clearGames\n private readonly removeGame = this.store.dispatch.scheduling.removeGame\n private readonly pairTeams = this.store.dispatch.scheduling.pairTeams\n private readonly upsertGame = this.store.dispatch.scheduling.upsertGame\n private readonly loadTeams = this.store.dispatch.scheduling.loadTeams\n private readonly retrieveEvents = this.store.dispatch.scheduling.loadEvents\n\n get games() {\n return store.getters.scheduling.games\n }\n get events() {\n return store.getters.scheduling.events\n }\n get teams() {\n return this.$store.direct.getters.scheduling.teams\n }\n\n get coachConflictTypeEnum(): typeof CoachConflictTypeEnum {\n return CoachConflictTypeEnum\n }\n\n get autoScheduleRoute() {\n if (this.$route.params.divisionID) {\n return '../auto/' + this.divisionID\n }\n if (this.divisionID) {\n return 'auto/' + this.divisionID\n }\n return 'auto'\n }\n\n // TO DO: set back to list'\n private viewtype = 'list' //alternate is calendar\n\n private loading = true\n private readonly alertType = AlertTypeEnum.NOTICE\n private currentSelectedFacility = ''\n\n divisionID = parseInt(this.$route.params.divisionID) ?? 0\n\n get store() {\n return store\n }\n\n get gameDivisionList() {\n return (store.getters.divisions['allItems'](this.leagueID) as LeagueDivisionInfo[]).filter(\n (x) => x.typeProgramID == this.programID\n )\n }\n\n get divisionGameCount() {\n return this.gridSchedule.length\n }\n\n private autoscheduleWarning = false\n autoSchedule() {\n if (this.divisionGameCount > 0) {\n this.autoscheduleWarning = true\n } else {\n this.$router.push(this.autoScheduleRoute)\n }\n }\n\n autoscheduleConfirmed(response: boolean) {\n this.autoscheduleWarning = false\n if (response) this.$router.push(this.autoScheduleRoute)\n }\n\n private clearGameWarning = false\n async clearGameConfirmed(response: boolean) {\n this.clearGameWarning = false\n if (response) {\n const games = cloneDeep(this.games)\n const gameIds = games.filter((g) => g.divisionID == this.divisionID).map((g) => g.gameID)\n if (gameIds.length) {\n await this.clearGames({ id: this.leagueID, gameIDs: gameIds })\n }\n }\n }\n\n dblClickGrid(e: DataTableSelection) {\n const d = e.item\n this.eventClick({\n name: '',\n start: '',\n end: '',\n class: '',\n id: `GAMES${d.id}`,\n color: '',\n textColor: '',\n division: '',\n })\n }\n\n editItem(e: ScheduleGridData) {\n this.eventClick({\n name: '',\n start: '',\n end: '',\n class: '',\n id: `GAMES${e.id}`,\n color: '',\n textColor: '',\n division: '',\n })\n }\n\n clearDivisionGames() {\n this.clearGameWarning = true\n }\n\n private async refreshEvents() {\n await this.retrieveEvents({ id: this.leagueID })\n }\n\n @Watch('gameDivisionList', { immediate: true })\n gameDivisionListUpdated() {\n if (this.gameDivisionList.length && !this.divisionID) {\n this.divisionID = this.gameDivisionList[0].divisionID\n }\n }\n\n get division() {\n return this.gameDivisionList.find((x) => x.divisionID == this.divisionID) ?? getEmptyLeagueDivisionInfo()\n }\n\n get divisionName() {\n return this.division.divisionName\n }\n\n private currentGame: DivisionGame = getEmptyDivisionGame(decrementingDGStrategy(0))\n\n eventClick(e: CalendarData) {\n const id = eventid2id(this.event, e.id) || '0'\n const game = this.internalGames.find((x) => x.gameID == parseInt(id))\n if (game) {\n // game is going to be in league time zone, dialog expects it in local.\n this.currentGame = {\n ...DivisionGameInfoToDivisionGame(game),\n gameStart: game.gameStart,\n gameEnd: game.gameEnd,\n volunteers: game.volunteers,\n }\n this.gameModalShowing = true\n }\n }\n\n gameModalShowing = false\n\n /**\n * Add game button was clicked\n */\n clickAddGame() {\n const localGame = cloneDeep(this.makeNewGame())\n localGame.gameEnd = dayjs(localGame.gameStart ?? new Date())\n .add(this.division.gameLength, 'm')\n .toDate()\n this.currentGame = localGame\n this.gameModalShowing = true\n }\n\n showConfirmPairings = false\n showPairingsConfirmed = false\n clickPairGames() {\n this.showConfirmPairings = true\n }\n\n pairingsConfirmed(b: boolean) {\n this.showConfirmPairings = false\n\n if (b) {\n this.pairTeams({\n id: this.leagueID,\n divisionID: this.divisionID,\n programID: this.programID,\n })\n this.showPairingsConfirmed = true\n }\n }\n\n /***\n * Gives us the times the facilty is open for a given event\n */\n get weekdays(): number[] {\n const facility = this.facilities.find((x) => x.facilityID == this.currentFacilityID)\n\n if (facility) {\n return AvailabilityToScheduleBlocks(facility.availability ?? [], FacilityEventEnum.GAMES).map(\n (f) => f.day\n )\n }\n return [0, 1, 2, 3, 4, 5, 6]\n }\n\n /**\n * Returns a \"game round\" list for the drop down.\n * Apparently 1..n+1\n */\n get roundList() {\n const roundlimit = this.division.maxRoundNumber || 16\n const a = Array.from(Array(roundlimit), (x, i) => ({ id: i + 1, description: `Round ${i + 1}` }))\n if (this.viewtype != 'calendar') {\n a.unshift({ id: 0, description: 'All' })\n }\n return a\n }\n\n private round = 0\n\n /** ID of currently selected facilty **/\n get currentFacilityID() {\n return parseInt(this.currentSelectedFacility)\n }\n get currentFacility() {\n return this.currentSelectedFacility\n }\n set currentFacility(facility: string) {\n this.currentSelectedFacility = facility\n }\n\n /***\n * Used to constrain the calendar\n *\n */\n get startEpoch(): number {\n const gamedate = this.league.firstGameDate ?? new Date()\n return dayjs(gamedate).day(START_DAY).hour(0).minute(0).millisecond(0).valueOf() //get epoch of sunday before game day\n }\n\n /***\n * This logic will change per Thomas\n */\n get endEpoch(): number {\n // 16 WEEKS LATER\n return this.startEpoch + WEEK_IN_SECONDS * 16\n }\n\n /***\n * Build a new game on add game click\n */\n makeNewGame(): DivisionGame {\n const defaultStart = dayjs(this.startEpoch).hour(8)\n return {\n ...getEmptyDivisionGame(decrementingDGStrategy(parseInt(this.leagueID))),\n typeProgramID: this.programID,\n facilityID: this.currentFacilityID,\n divisionID: this.divisionID,\n gameStart: defaultStart.toDate(),\n gameEnd: defaultStart.add(this.division.gameLength, 'm').toDate(),\n roundNumber: this.round,\n }\n }\n\n @Watch('games', { immediate: true })\n updateInternalGames() {\n this.internalGames = cloneDeep(\n this.games.map((x) => ({\n ...x,\n gameStart: x.gameStart ? dayjs(x.gameStart).toDate() : null,\n gameEnd: x.gameEnd ? dayjs(x.gameEnd).toDate() : null,\n }))\n )\n }\n\n @Watch('division')\n divisionUpdated() {\n this.refreshTeams()\n }\n\n /** -- these computed properties will set what games are visible in the UI **/\n\n /**\n * does the given game meet round criteria\n */\n private meetsRoundCriteria(game: DivisionGameInfo | FacilityEventInfo) {\n return game?.roundNumber == this.round\n }\n\n /**\n * does the given game meet facility criteria\n */\n private meetsFacilityCriteria(game: DivisionGameInfo | FacilityEventInfo) {\n return game?.facilityID == this.currentFacilityID\n }\n\n /**\n * does the given game meet division criteria?\n * */\n private meetsDivisionCriteria(game: DivisionGameInfo | FacilityEventInfo) {\n return game.divisionID == this.divisionID\n }\n\n /**\n * Returns all games that are scheduled for the active facility, grey if not meeting\n * round and division criteria.\n */\n private get schedule(): CalendarData[] {\n return this.events\n .filter((x) => x.eventStart && x.eventEnd && this.meetsFacilityCriteria(x))\n .map((x) => {\n return {\n start: dayjs(x.eventStart ?? '').format('YYYY-MM-DDTHH:mm'),\n end: dayjs(x.eventEnd ?? '').format('YYYY-MM-DDTHH:mm'),\n name: `${x.eventName}`,\n class: this.meetsDivisionCriteria(x) ? 'active' : 'inactive',\n id: id2eventid(x.typeFacilityEventID ?? '', x.eventID.toString()),\n color: this.color(x, 'COLOR'),\n textColor: this.color(x, 'TEXT'),\n division: x.divisionName,\n } as CalendarData\n })\n }\n\n private color(e: FacilityEventInfo, type: 'COLOR' | 'TEXT') {\n if (\n e.typeFacilityEventID == FacilityEventEnum.SQUADS ||\n e.typeFacilityEventID == FacilityEventEnum.PRACTICES\n ) {\n return type == 'COLOR' ? colors.inactiveBgColor : colors.inactiveTextColor\n } else if (e.typeFacilityEventID == FacilityEventEnum.GAMES) {\n if (this.meetsDivisionCriteria(e)) {\n return type == 'COLOR' ? colors.eventBgColor : colors.eventTextColor\n } else {\n return type == 'COLOR' ? colors.eventInactiveBgColor : colors.eventInactiveTextColor\n }\n }\n }\n\n get totalUnscheduled() {\n return this.internalGames.filter((x) => isNullDate(toDate(x.gameStart))).length\n }\n /**\n * Returns all games for the list\n * round and division criteria.\n */\n private get gridSchedule(): ScheduleGridData[] {\n return this.internalGames\n .filter(\n (x) =>\n !isNullDate(toDate(x.gameStart)) &&\n x.divisionID === this.divisionID &&\n (x.roundNumber == this.round || this.round == 0)\n )\n\n .map((x) => ({\n start: x.gameStart ?? new Date(),\n end: x.gameEnd ?? new Date(),\n prettyDate: dayjs(x.gameStart ?? '').format('ddd MMM DD'),\n prettyTime: dayjs(x.gameStart ?? '').format('h:mmA') + ' - ' + dayjs(x.gameEnd ?? '').format('h:mmA'),\n title: `${x.awayTeamName} at ${x.homeTeamName}`,\n id: x.gameID,\n location: x.facilityName\n ? x.facilityName\n : this.facilities.find((y) => y.facilityID == x.facilityID)?.facilityName ?? 'n/a',\n division: x.divisionName\n ? x.divisionName\n : this.gameDivisionList.find((y) => y.divisionID == x.divisionID)?.divisionName ?? 'n/a',\n round: x.roundNumber,\n volunteers: this.referees\n .filter((r) => x.volunteers?.some((v) => v.volunteerIndividualID == r.individualID))\n .map((x: LeagueVolunteerInfo) => x.formattedNameFirstLast ?? '')\n .sort((a, b) => (a.toLowerCase() > b.toLowerCase() ? 1 : -1)),\n }))\n .sort(scheduleSort)\n }\n\n @Watch('viewtype')\n viewTypeChanged() {\n if (this.viewtype == 'calendar' && this.round == 0) this.round = 1\n if (this.viewtype == 'list') this.round = 0\n }\n\n idTODelete = 0\n showDeleteConfirmed = false\n showDeleteConfirmation = false\n\n /***\n * This is called when delete is selected off the grid\n */\n deleteItem(r: ScheduleGridData) {\n this.idTODelete = r.id\n this.showDeleteConfirmation = true\n }\n\n async deleteConfirmed(b: boolean) {\n this.showDeleteConfirmation = false\n if (b) {\n await this.removeGame({ id: this.leagueID, gameID: this.idTODelete })\n this.showDeleteConfirmed = true\n }\n }\n\n /**\n * Called by delete on modal */\n async deleteGame(newelement: DivisionGame) {\n await this.removeGame({ id: this.leagueID, gameID: newelement.gameID })\n this.showDeleteConfirmed = true\n this.gameModalShowing = false\n }\n\n /** Called by the draggable game tiles */\n private async deleteUnscheduledGame(gameID: number) {\n await this.removeGame({ id: this.leagueID, gameID })\n }\n\n /***\n * Unscheduled data is data with a null time < NULL_DATE\n * also no facility, facility is assigned by dragging to the schedule.\n * map to the scheduler data type.\n */\n get unscheduledData() {\n return this.internalGames\n .filter(\n (x) => isNullDate(toDate(x.gameStart)) && this.meetsRoundCriteria(x) && this.meetsDivisionCriteria(x)\n )\n .map((g) => {\n return {\n name: `${g.awayTeamName} at ${g.homeTeamName}`,\n start: null,\n end: null,\n class: '',\n id: g.gameID,\n }\n })\n }\n\n eventDropped = (ev: CalendarData) => {\n const newevent = cloneDeep(ev)\n newevent.end = dayjs(newevent.start).add(this.division.gameLength, 'm').format('YYYY-MM-DDTHH:mm')\n return this.move(newevent as CalendarData)\n }\n\n /***\n * Receives a moved element on the calendar, time is correct when we get it on move.\n */\n eventMoved = async (ev: CalendarData) => {\n const event = cloneDeep(ev)\n event.id = eventid2id(this.event, ev.id)\n await this.move(event)\n }\n\n /**\n * Used after a modal is confirmed\n */\n async confirmGame(newelement: DivisionGameInfo) {\n try {\n await this.upsertGame({ id: this.leagueID, game: newelement })\n } catch (e) {\n throw e\n }\n\n this.gameModalShowing = false\n }\n\n /**\n * Called when a game time is moved (even from no time to time)\n * Adjust time based on source of data, game time is moved.\n */\n async move(ev: CalendarData) {\n try {\n const idToFind = parseInt(ev.id)\n const elementIdx = this.internalGames.findIndex((x) => x.gameID == idToFind)\n\n if (elementIdx >= 0) {\n const newelement = cloneDeep(this.internalGames[elementIdx])\n const start = dayjs(ev.start)\n newelement.gameStart = start.toDate()\n\n const end = dayjs(ev.end)\n const currentLengthMs = end.toDate().getTime() - start.toDate().getTime()\n var lengthMinutes = currentLengthMs > 0 ? currentLengthMs / 1000 / 60 : this.division.gameLength\n const endDate = start.add(lengthMinutes, 'minute').toDate()\n\n newelement.gameEnd = endDate\n newelement.facilityID = this.currentFacilityID\n newelement.divisionName = ev.division ?? ''\n\n await this.upsertGame({ id: this.leagueID, game: newelement })\n\n this.internalGames.splice(elementIdx, 1, newelement)\n }\n } catch (e) {\n throw e\n }\n }\n\n event = FacilityEventEnum.GAMES\n\n /***\n * Restricts tabs to the facilities that have programming for the given event\n */\n get facilitiesAsTabs(): TabType[] {\n return (\n this.facilitiesToFilter\n .filter((y) => y.selected)\n .map((x) => ({\n id: x.id,\n description: x.description,\n })) ?? []\n )\n }\n\n private facilitiesToFilter: FilterTabType[] = []\n private eventFacilities: LeagueFacility[] = []\n\n @Watch('facilities', { immediate: true })\n facilitiesUpdated() {\n this.facilitiesToFilter =\n this.facilities\n .filter((y) => (y.availability || []).findIndex((z) => z.typeFacilityEventID == this.event) >= 0)\n .map((x) => ({\n id: x.facilityID.toString(),\n description: x.facilityName,\n selected: true,\n })) ?? []\n this.eventFacilities = this.facilities.filter(\n (y) => (y.availability || []).findIndex((z) => z.typeFacilityEventID == this.event) >= 0\n )\n }\n\n facilityFilterUpdated(selectedFilters: string[]) {\n this.facilitiesToFilter.forEach((x) => {\n x.selected = selectedFilters.includes(x.id)\n })\n }\n\n async refreshGames() {\n await this.loadGames({ id: this.leagueID })\n }\n\n async refreshLeagues() {\n await this.fetchAllDivisions({ upwardLeagueId: this.leagueID, force: true })\n }\n\n get divisionTeams() {\n return this.teams.filter((x) => x.divisionID == this.divisionID)\n }\n\n /**\n * Get teams\n */\n private async refreshTeams() {\n if (this.programID) {\n await this.loadTeams({\n id: this.leagueID,\n\n programID: this.programID,\n })\n }\n }\n\n /**\n * Get teams\n */\n private async refreshFacilities() {\n await this.retrieveFacilities({ id: this.leagueID })\n }\n\n /***\n * Returns the structure to define the tabs based on loaded league\n */\n\n get programID() {\n if (this.league && this.league.programs?.length) {\n return this.league.programs[0].typeProgramID || ''\n }\n return ''\n }\n\n get leagueID() {\n return this.$route.params.id\n }\n\n public async mounted() {\n await Promise.all([\n this.refreshLeagues(),\n this.refreshFacilities(),\n this.refreshGames(),\n this.refreshEvents(),\n this.refreshTeams(),\n ])\n\n this.loading = false\n }\n\n get tabs(): LeagueListItem {\n if (this.league && this.league.programs) {\n return LeagueProgams2LeagueListItem(this.league.programs)\n }\n return getEmptyLeagueListItem(new LeagueListItemSeed())\n }\n\n get firstGameDate(): string {\n const firstGameDate = this.league.firstGameDate ?? new Date()\n return dayjs(firstGameDate).format('YYYY-MM-DD')\n }\n get gameDuration(): number {\n if (this.division) return this.division.gameLength\n return 0\n }\n\n range: CalendarWeek | null = null\n currentRange(r: CalendarWeek) {\n this.range = r\n this.round = r.weekNumber + 1\n }\n\n get calendarWeekNumber() {\n return this.round - 1\n }\n}\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!./GameSchedule.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!./GameSchedule.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameSchedule.vue?vue&type=template&id=081e21ed&scoped=true&\"\nimport script from \"./GameSchedule.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameSchedule.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GameSchedule.vue?vue&type=style&index=0&id=081e21ed&scoped=true&lang=scss&\"\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 \"081e21ed\",\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('div',{staticClass:\"row px-3 py-2\"},[_c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[(!_vm.loading && !_vm.facilities.length)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no facilities set up for this program.\")]),_c('p',[_vm._v(\" Click the \"),_c('router-link',{attrs:{\"to\":\"facilities\"}},[_vm._v(\"Facilities\")]),_vm._v(\" tab to add one or more facilities. \")],1)]):_vm._e()])]),(!_vm.loading && _vm.facilities.length)?[_vm._m(0),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('div',{staticClass:\"card bg-light mb-3\"},[_c('div',{staticClass:\"card-body bg-light\"},[_c('h5',[_vm._v(\"Automatic Game Scheduler\")]),_c('p',[_vm._v(\" Set preferences and facility availability for each division then schedule games for the entire season \")]),_c('router-link',{staticClass:\"btn btn-primary\",attrs:{\"to\":\"auto\"}},[_vm._v(\"Schedule Games Automatically\")])],1)])]),_c('div',{staticClass:\"col-6\"},[_c('div',{staticClass:\"card bg-light mb-3\"},[_c('div',{staticClass:\"card-body bg-light\"},[_c('h5',[_vm._v(\"Manual Game Creation\")]),_c('p',[_vm._v(\" Manually create game pairings and assign to specific time slots for each available facility \")]),_c('router-link',{staticClass:\"btn btn-primary\",attrs:{\"to\":\"./manual\"}},[_vm._v(\"Schedule Games Manually\")])],1)])])])]:_vm._e()],2)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\" No games currently exist. Do you want to automatically create a game schedule for each division or create them manually? \")])])])}]\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\nimport { defineComponent, computed, ref, onMounted } from '@vue/composition-api'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Games',\n components: {\n TypeProgramTab,\n },\n setup(props, ctx) {\n const facilities = computed(() => store.getters.facilities.items)\n const games = computed(() => store.getters.scheduling.games)\n\n const loading = ref(true)\n /***\n * Returns the structure to define the tabs based on loaded league\n */\n /** index into this.leagues.programs[] variables */\n\n onMounted(async () => {\n await Promise.all([\n store.dispatch.facilities.load({ id: ctx.root.$route.params.id ?? '' }),\n store.dispatch.scheduling.loadGames({ id: ctx.root.$route.params.id ?? '' }),\n ])\n if (games.value.length) {\n await ctx.root.$router.push('manual')\n }\n\n loading.value = false\n })\n\n return {\n loading,\n facilities,\n }\n },\n})\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!./Games.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!./Games.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Games.vue?vue&type=template&id=66696555&\"\nimport script from \"./Games.vue?vue&type=script&lang=ts&\"\nexport * from \"./Games.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('div',{staticClass:\"bg-white p-2\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6 pb-0\"},[_c('h5',[_c('router-link',{staticClass:\"text-underline\",attrs:{\"to\":_vm.gamepath}},[_vm._v(\"Games\")]),_vm._v(\" > \"),_c('span',[_vm._v(\"Auto-schedule\")])],1)]),(!_vm.isReadyToSchedule)?_c('div',{staticClass:\"col-6 pb-0 text-right\"},[_c('portal-target',{attrs:{\"name\":\"nextDivisionButton\"}}),_c('button',{staticClass:\"m-2 btn btn-primary\",attrs:{\"type\":\"button\",\"disabled\":_vm.teamsLoading},on:{\"click\":_vm.clickSchedule}},[_c('i',{staticClass:\"far fa-clock\"}),_vm._v(\" Schedule Now \")])],1):_vm._e(),(_vm.isReadyToSchedule)?_c('div',{staticClass:\"col-6\"},[_c('portal-target',{attrs:{\"name\":\"autoSchedulerButtons\"}})],1):_vm._e()]),_vm._m(0),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[(!_vm.isReadyToSchedule)?_c('DivisionPreferences',{attrs:{\"league\":_vm.league,\"program-i-d\":_vm.programID,\"facility-list\":_vm.facilities,\"division-list\":_vm.divisionsList},on:{\"update\":_vm.update},model:{value:(_vm.divisionID),callback:function ($$v) {_vm.divisionID=$$v},expression:\"divisionID\"}}):_vm._e()],1)]),_c('facility-time-warning-modal',{on:{\"confirmed\":_vm.continueScheduling},model:{value:(_vm.showTimeWarning),callback:function ($$v) {_vm.showTimeWarning=$$v},expression:\"showTimeWarning\"}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_vm._v(\"Setup game assignment preferences and facility availability for each division.\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"title\":\"Facility Warning\",\"is-small\":true},model:{value:(_vm.isModalOpen),callback:function ($$v) {_vm.isModalOpen=$$v},expression:\"isModalOpen\"}},[_c('div',{staticClass:\"container\"},[_vm._v(\" Some of the Assigned Facilities are set to allow game times that are outside the standard for most leagues. Upward recommends changing your facility availability times by clicking the Edit button next to the corresponding facilities under Assigned Facilities. Do you wish to proceed with this schedule? \")]),_c('template',{slot:\"footer\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('button',{staticClass:\"float-right ml-2 btn btn-light\",on:{\"click\":_vm.confirmed}},[_vm._v(\"Yes\")]),_c('button',{staticClass:\"float-right ml-2 btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"No\")])])])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport { getProps, useModalValue } from '@/composables/ModalValue'\nimport Modal from '@/components/Modal.vue'\n\nexport default defineComponent({\n name: 'FacilityTimeWarningModal',\n components: {\n Modal,\n },\n props: {\n ...getProps(),\n },\n setup(props, ctx) {\n const { isModalOpen, closeModal } = useModalValue(props, ctx)\n\n function cancel() {\n closeModal()\n }\n\n function confirmed() {\n ctx.emit('confirmed')\n closeModal()\n }\n\n return {\n isModalOpen,\n confirmed,\n cancel,\n }\n },\n})\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!./FacilityTimeWarningModal.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!./FacilityTimeWarningModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FacilityTimeWarningModal.vue?vue&type=template&id=50c9da64&\"\nimport script from \"./FacilityTimeWarningModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./FacilityTimeWarningModal.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 { DivisionGameSchedulerPreference } from '@/GeneratedTypes/DivisionGameSchedulerPreference'\n\nexport function getEmptyDivisionGameSchedulerPreference(): DivisionGameSchedulerPreference {\n return {\n typeScheduleAssignmentID: '',\n typeProgramID: '',\n typeOddTeamCountSchedulingID: '',\n leagueID: 0,\n gamesPerWeek: 0,\n facilityPreferences: [],\n exclusionDates: [],\n divisionID: 0,\n byeGamesStartAfterRoundNumber: 0,\n byeGamesPerTeam: 0,\n }\n}\n\nexport function isValidDivisionGameSchedulerPreference(s: DivisionGameSchedulerPreference) {\n return (\n !!s &&\n !!s.facilityPreferences?.length &&\n !!s.typeProgramID &&\n !!s.typeOddTeamCountSchedulingID &&\n !!s.gamesPerWeek\n )\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-3\"},[_c('select-input',{attrs:{\"label\":\"Division\",\"value-property-name\":\"divisionID\",\"text-property-name\":\"divisionName\",\"items-list\":_vm.divisionSelectList,\"upward-league-id\":_vm.leagueID},model:{value:(_vm.internalDivisionID),callback:function ($$v) {_vm.internalDivisionID=$$v},expression:\"internalDivisionID\"}})],1),_c('div',{staticClass:\"col-3 link-container\"},[(_vm.divisionsWithSettings.length)?_c('a',{staticClass:\"link\",on:{\"click\":_vm.clickCopySettings}},[_vm._v(\"Copy Settings from another division\")]):_vm._e()])]),_c('division-settings',{attrs:{\"program-i-d\":_vm.programID,\"league\":this.league,\"division\":this.division,\"facility-list\":_vm.facilityList,\"value\":_vm.settings},on:{\"input\":_vm.updateSettings}}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-7\"}),_c('confirmation-modal',{attrs:{\"title\":\"Confirm Apply All Settings\",\"is-small\":\"\",\"show\":_vm.showApplyAllSettingsConfirmationModal},on:{\"onResponse\":_vm.confirmApplyAllSettings}},[_vm._v(\" Are you sure you want to apply all settings to all divisions? \")]),_c('confirmation-modal',{attrs:{\"title\":\"Copy Settings\",\"is-small\":\"\",\"show\":_vm.showCopySettingsModal},on:{\"onResponse\":_vm.confirmCopySettings}},[_vm._v(\" Select the division you want to copy settings from \"),_c('select-input',{attrs:{\"label\":\"Division To Copy From\",\"items-list\":_vm.divisionsWithSettings,\"text-property-name\":\"divisionName\",\"value-property-name\":\"divisionID\"},model:{value:(_vm.divisionToCopy),callback:function ($$v) {_vm.divisionToCopy=$$v},expression:\"divisionToCopy\"}})],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:\"row\"},[_c('div',{staticClass:\"col-xl-7 pt-3\"},[_c('facility-dropper',{attrs:{\"facility-list\":_vm.facilityList,\"divisionName\":_vm.division.divisionName},on:{\"input\":_vm.input},model:{value:(_vm.facilityOptions),callback:function ($$v) {_vm.facilityOptions=$$v},expression:\"facilityOptions\"}})],1),_c('div',{staticClass:\"border-xl-left pt-3 col-xl-5\"},[_c('scheduler-settings-panel',{on:{\"input\":_vm.input},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})],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:\"container\"},[(!_vm.internalFacilityOptions.length)?_c('div',{staticClass:\"row\"},[_vm._m(0)]):_vm._e(),_c('div',{staticClass:\"row\"},[_vm._m(1),_c('div',{staticClass:\"outline col-5\"},[_c('h5',[_vm._v(\"Available Facilities\")]),_c('Container',{staticStyle:{\"height\":\"90%\"},attrs:{\"get-child-payload\":_vm.setInactivePayload,\"group-name\":\"facilityDropper\",\"dragHandleSelector\":\".inactive-drag-handle\"},on:{\"drop\":_vm.moveToInactive}},_vm._l((_vm.inactiveFacilityList),function(data){return _c('Draggable',{key:data.facilityID,staticClass:\"border shadow p-2 bg-white my-4\"},[_c('div',{staticClass:\"inactive row\"},[_c('div',{staticClass:\"col-1\"},[_c('span',{staticClass:\"inactive-drag-handle grabbable\"},[_vm._v(\"⁞⁞\")])]),_c('div',{staticClass:\"col pl-1 pr-1\"},[_vm._v(\" \"+_vm._s(data.facilityName)+\" \")]),_c('div',{staticClass:\"col-2 pl-1\"},[_c('a',{attrs:{\"href\":\"javascript:void(0);\",\"title\":\"Assign this Facility\"},on:{\"click\":function($event){return _vm.assignFacility(data)}}},[_c('i',{staticClass:\"fas fa-angle-double-right\"})])])])])}),1)],1),_c('div',{staticClass:\"outline col-7\"},[_c('h5',[_vm._v(\"Assigned Facilities\")]),_c('div',{staticClass:\"small text-center text-danger\"},[_vm._v(_vm._s(_vm.facilityWarning))]),_c('Container',{staticStyle:{\"height\":\"90%\"},attrs:{\"get-child-payload\":_vm.setActivePayload,\"group-name\":\"facilityDropper\",\"dragHandleSelector\":\".column-drag-handle\"},on:{\"drop\":_vm.moveToActive}},_vm._l((_vm.activeFacilityList),function(data){return _c('Draggable',{key:data.facilityID,staticClass:\"shadow border p-2 bg-white my-4\"},[_c('facility-summary-box',{staticClass:\"active\",attrs:{\"sub-schedule\":_vm.subScheduleForFacility(data),\"super-schedule\":_vm.superScheduleForFacility(data),\"facility\":data,\"upArrowEnabled\":!_vm.isTopPriority(data.facilityID),\"downArrowEnabled\":!_vm.isLowestPriority(data.facilityID)},on:{\"edit-clicked\":_vm.editFacilityAvailability,\"remove-clicked\":_vm.unassignFacility,\"up-clicked\":_vm.moveFacilityUp,\"down-clicked\":_vm.moveFacilityDown}})],1)}),1)],1)]),_c('DivisionDayPreferencesModal',{attrs:{\"sub-schedule\":_vm.facilityAssignedAvailabilityUnderEdit,\"super-schedule\":_vm.facilityAvailabilityUnderEdit},on:{\"update-schedule\":_vm.updateFacilityAvailability},model:{value:(_vm.areDivisionPreferencesShowing),callback:function ($$v) {_vm.areDivisionPreferencesShowing=$$v},expression:\"areDivisionPreferencesShowing\"}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12\"},[_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(\" You will need at least one facility with days available to save division preferences. \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12\"},[_c('h4',[_vm._v(\"Facilities\")]),_vm._v(\" Select from the list of available facilities which facilities you wish to schedule games at for this division by dragging them to the right \")])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-auto column-drag-handle grabbable pr-0\"},[_vm._v(\"⁞⁞\")]),_c('div',{staticClass:\"col pl-3\"},[_c('h5',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.facility.facilityName))])]),_c('div',{staticClass:\"col-auto mt-1 pl-1 pr-1\"},[_c('a',{attrs:{\"href\":\"javascript:void(0);\",\"title\":\"Unassign this Facility\"},on:{\"click\":_vm.removeClicked}},[_vm._m(0)]),_c('span',{staticClass:\"pl-2\"}),_c('a',{attrs:{\"href\":\"javascript:void(0);\",\"title\":\"Edit settings\"},on:{\"click\":_vm.editClicked}},[_c('EditIcon')],1),_c('span',{staticClass:\"pl-2\"}),(_vm.upArrowEnabled)?_c('a',{attrs:{\"href\":\"javascript:void(0);\",\"title\":\"Move up in the order\"},on:{\"click\":_vm.upClicked}},[_vm._m(1)]):_c('span',{staticClass:\"inactive-button\"},[_c('i',{staticClass:\"fas fa-chevron-circle-up\"})]),_c('span',{staticClass:\"pl-2\"}),(_vm.downArrowEnabled)?_c('a',{attrs:{\"href\":\"javascript:void(0);\",\"title\":\"Move down in the order\"},on:{\"click\":_vm.downClicked}},[_vm._m(2)]):_c('span',{staticClass:\"inactive-button\"},[_c('i',{staticClass:\"fas fa-chevron-circle-down\"})])])]),_c('div',{staticClass:\"time-col\",class:_vm.isCollapsed ? 'time-col-collapsed' : ''},_vm._l((_vm.facilityAvailabilityByDay),function(av,i){return _c('div',{key:av.typeDayID,staticClass:\"row\"},[_c('div',{staticClass:\"col-3 py-2 small\"},[_vm._v(_vm._s(_vm.dayIDToName(i)))]),_c('div',{staticClass:\"col-9 py-2 small\"},[(av.assigned)?_c('span',[_vm._v(\" \"+_vm._s(_vm.dayjs('2000-0-0T' + _vm.millisecondsToTimeString(av.assigned.timeStart)).format('h:mm a'))+\" - \"+_vm._s(_vm.dayjs('2000-0-0T' + _vm.millisecondsToTimeString(av.assigned.timeEnd)).format('h:mm a'))+\" \")]):(av.available)?_c('em',[_vm._v(\" Facility Not Available \")]):_c('em',[_vm._v(\" Not used on this day \")])])])}),0),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 text-center\"},[(!_vm.isCollapsed)?_c('i',{staticClass:\"fas fa-chevron-up\",on:{\"click\":function($event){_vm.isCollapsed = !_vm.isCollapsed}}}):_c('i',{staticClass:\"fas fa-chevron-down\",on:{\"click\":function($event){_vm.isCollapsed = !_vm.isCollapsed}}})])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_c('i',{staticClass:\"fas fas fa-angle-double-left\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_c('i',{staticClass:\"fas fa-chevron-circle-up\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_c('i',{staticClass:\"fas fa-chevron-circle-down\"})])}]\n\nexport { render, staticRenderFns }","import { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport { ScheduleBlocks } from '@/models/elements/Scheduler'\n\n/**\n * Schedule blocks of assigned availability vs. actual availability.\n * assigned is what the user has chosen\n * available is what the facility default is.\n * assigned undefined or empty -- not used\n * available undefined or empty - not available.\n */\nexport interface AugmentedFacilityAvailability {\n assigned?: ScheduleBlocks\n available?: ScheduleBlocks\n}\n\nexport function dayNameToID(dayid: string) {\n return days.find((y) => y.name == dayid)?.value || 0\n}\n\nexport function dayIDToName(dayid: number) {\n return days.find((y) => y.value == dayid)?.name ?? 'n/a'\n}\n\nexport function FacilityAvailabilityByDay(\n superSchedule: ScheduleBlocks[],\n subSchedule: ScheduleBlocks[]\n): AugmentedFacilityAvailability[] {\n const daymap = new Array(days.length)\n for (let i = 0; i < days.length; i++) {\n const superDay = superSchedule.findIndex((x) => x.day == i)\n const subDay = subSchedule.findIndex((x) => x.day == i)\n daymap[i] = {\n assigned: subDay >= 0 ? subSchedule[subDay] : undefined,\n available: superDay >= 0 ? superSchedule[superDay] : undefined,\n }\n }\n return daymap\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { millisecondsToTimeString } from '@/lib/support/utilities/time/time'\n\nimport { Component, Emit, Prop, Vue } from 'vue-property-decorator'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport { getEmptyLeagueFacility } from '@/lib/support/models/LeagueFacility/data'\nimport dayjs from 'dayjs'\nimport { ScheduleBlocks } from '@/models/elements/Scheduler'\nimport {\n AugmentedFacilityAvailability,\n dayIDToName,\n dayNameToID,\n FacilityAvailabilityByDay,\n} from '@/views/Programs/Scheduling/Games/ext/augmented_facility_availability'\nimport { EditIcon, DeleteIcon } from '@/elements/Icons'\n\n@Component({\n components: {\n EditIcon,\n DeleteIcon,\n },\n methods: { dayjs, dayNameToID, dayIDToName, millisecondsToTimeString },\n})\nexport default class FacilitySummaryBox extends Vue {\n @Prop({ required: true, default: () => getEmptyLeagueFacility(), type: Object })\n facility!: LeagueFacility\n\n @Prop({ required: true, default: () => [], type: Array })\n superSchedule!: ScheduleBlocks[]\n\n @Prop({ required: true, default: () => [], type: Array })\n subSchedule!: ScheduleBlocks[]\n\n @Prop({ type: Boolean, default: true, required: false })\n private readonly upArrowEnabled!: boolean\n\n @Prop({ type: Boolean, default: true, required: false })\n private readonly downArrowEnabled!: boolean\n\n isCollapsed = false\n\n @Emit()\n editClicked() {\n return this.facility.facilityID\n }\n\n @Emit()\n removeClicked() {\n return this.facility\n }\n\n @Emit()\n upClicked() {\n return this.facility.facilityID\n }\n\n @Emit()\n downClicked() {\n return this.facility.facilityID\n }\n\n get facilityAvailabilityByDay(): AugmentedFacilityAvailability[] {\n return FacilityAvailabilityByDay(this.superSchedule, this.subSchedule)\n }\n}\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!./FacilitySummaryBox.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!./FacilitySummaryBox.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FacilitySummaryBox.vue?vue&type=template&id=4fad064e&scoped=true&\"\nimport script from \"./FacilitySummaryBox.vue?vue&type=script&lang=ts&\"\nexport * from \"./FacilitySummaryBox.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FacilitySummaryBox.vue?vue&type=style&index=0&id=4fad064e&scoped=true&lang=scss&\"\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 \"4fad064e\",\n null\n \n)\n\nexport default component.exports","import { DivisionGameSchedulerFacility } from '@/GeneratedTypes/DivisionGameSchedulerFacility'\nimport { ScheduleBlocks } from '@/models/elements/Scheduler'\nimport { days } from '@/lib/support/models/UpwardTypes/UpdwardDayTypeID/days'\nimport { timeStringToMilliseconds } from '@/lib/support/utilities/time/time'\n\n/**\n * Converts optiosn for DivisionGame to ScheduleBlocks\n * @param a - accepts a filtered version (by type and facility) blocks and translates to schedule blocks\n * @constructor\n */\nexport function DivisionGameSchedulerFacilityToScheduleBlocks(\n a: DivisionGameSchedulerFacility[]\n): ScheduleBlocks[] {\n return a.map((x) => ({\n day: days.find((y) => y.name == x.typeDayID)?.value || 0,\n timeEnd: timeStringToMilliseconds(x.endTime),\n timeStart: timeStringToMilliseconds(x.startTime),\n }))\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{staticClass:\"division_modal\",attrs:{\"is-small\":true,\"title\":\"Edit Facility Scheduler Preferences\"},model:{value:(_vm.isModalOpen),callback:function ($$v) {_vm.isModalOpen=$$v},expression:\"isModalOpen\"}},[_vm._t(\"default\",[_c('div',{staticClass:\"container time-input\"},[_c('div',{staticClass:\"row\"},[_c('div',{attrs:{\"clas\":\"col-12\"}},[_vm._v(\" Edit this area's game preferences by checking the days that are to be used and entering the time ranges for those days. \")])]),_vm._l((_vm.facilityAvailabilityByDay),function(d,i){return _c('div',{key:i,staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"},[_c('input',{attrs:{\"disabled\":!d.available,\"type\":\"checkbox\"},domProps:{\"value\":i,\"checked\":!!d.assigned},on:{\"click\":function($event){return _vm.toggleAssigned(i)}}}),_vm._v(\" \"+_vm._s(_vm.dayIDToName(i))+\" \")]),(d.available && d.assigned)?_c('div',{staticClass:\"col-4\"},[_c('TimePicker',{attrs:{\"value\":_vm.millisecondsToTimeString(d.assigned.timeStart),\"min\":_vm.millisecondsToTimeString(d.available.timeStart),\"max\":_vm.millisecondsToTimeString(d.assigned.timeEnd)},on:{\"input\":function($event){return _vm.updateTimeStart(i, $event)}}})],1):_vm._e(),(d.available && d.assigned)?_c('div',{staticClass:\"col-4\"},[_c('TimePicker',{attrs:{\"value\":_vm.millisecondsToTimeString(d.assigned.timeEnd),\"min\":_vm.millisecondsToTimeString(d.assigned.timeStart),\"max\":_vm.millisecondsToTimeString(d.available.timeEnd)},on:{\"input\":function($event){return _vm.updateTimeEnd(i, $event)}}})],1):_vm._e(),(!d.assigned && d.available)?_c('div',{staticClass:\"col-8 not-used\"},[_vm._v(\"Facility is not used this day.\")]):_vm._e(),(!d.available)?_c('div',{staticClass:\"col-8 not-available\"},[_vm._v(\"Facility is not available this day.\")]):_vm._e()])})],2)]),_vm._t(\"footer\",[_c('div',{staticClass:\"float-right pb-3\"},[_c('button',{staticClass:\"m-1 btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"m-1 btn btn-success\",attrs:{\"disabled\":!this.areTimesValid},on:{\"click\":_vm.confirmed}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Confirm \")])])])],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\n\n\n\n\n\n\nimport { defineComponent, ref, watch, computed, PropType } from '@vue/composition-api'\nimport { getProps, useModalValue } from '@/composables/ModalValue'\nimport { ScheduleBlocks } from '@/models/elements/Scheduler'\nimport Modal from '@/components/Modal.vue'\nimport {\n AugmentedFacilityAvailability,\n dayIDToName,\n dayNameToID,\n FacilityAvailabilityByDay as FacilityAvailabilityByDayExt,\n} from '@/views/Programs/Scheduling/Games/ext/augmented_facility_availability'\nimport { millisecondsToTimeString, timeStringToMilliseconds } from '@/lib/support/utilities/time/time'\nimport TimePicker from '@/elements/TimePicker2.vue'\nimport { cloneDeep } from 'lodash'\nimport { RuntimeException } from '@/lib/common/exceptions/RuntimeException'\nclass DivisionDayPreferencesModalError extends RuntimeException {\n name = 'Division Day Preference Error'\n}\n\nexport default defineComponent({\n name: 'DivisionDayPreferencesModal',\n components: {\n Modal,\n TimePicker,\n },\n props: {\n superSchedule: { type: Array as PropType, required: true, default: () => [] },\n subSchedule: { type: Array as PropType, required: true, default: () => [] },\n ...getProps(),\n },\n setup(props, ctx) {\n const { isModalOpen, closeModal } = useModalValue(props, ctx)\n const internalSubSchedule = ref([])\n\n function confirmed() {\n updateSchedule()\n closeModal()\n }\n\n /***\n * Toggle the day, resets on re-click, disables on click\n * @param day 0-6\n */\n function toggleAssigned(day: number) {\n if (facilityAvailabilityByDay.value[day].assigned) {\n internalSubSchedule.value = cloneDeep(internalSubSchedule.value.filter((x) => x.day != day))\n } else {\n const f = props.superSchedule.find((x) => x.day == day)\n if (f) {\n internalSubSchedule.value.push({\n day: f.day,\n timeStart: f.timeStart,\n timeEnd: f.timeEnd,\n })\n } else {\n throw new DivisionDayPreferencesModalError('Cannot find the day given ' + day)\n }\n }\n }\n\n function updateTimeStart(index: number, time: string) {\n const y = internalSubSchedule.value.map((x) => {\n return {\n timeStart: x.day == index ? timeStringToMilliseconds(time) : x.timeStart,\n timeEnd: x.timeEnd,\n day: x.day,\n }\n })\n internalSubSchedule.value = y\n }\n\n function updateTimeEnd(index: number, time: string) {\n internalSubSchedule.value = cloneDeep(\n internalSubSchedule.value.map((x) => ({\n timeStart: x.timeStart,\n timeEnd: x.day == index ? timeStringToMilliseconds(time) : x.timeEnd,\n day: x.day,\n }))\n )\n }\n\n const facilityAvailabilityByDay = computed((): AugmentedFacilityAvailability[] => {\n return FacilityAvailabilityByDayExt(props.superSchedule, internalSubSchedule.value)\n })\n\n const areTimesValid = computed((): boolean => {\n const b: boolean =\n internalSubSchedule.value.findIndex(\n (x) => isNaN(x.timeStart) || isNaN(x.timeEnd) || x.timeStart > x.timeEnd\n ) < 0\n return b\n })\n\n function cancel() {\n closeModal()\n }\n\n watch(\n () => props.subSchedule,\n () => {\n internalSubSchedule.value = cloneDeep(props.subSchedule)\n },\n { immediate: true }\n )\n\n function updateSchedule() {\n ctx.emit('update-schedule', internalSubSchedule.value)\n }\n\n return {\n isModalOpen,\n dayNameToID,\n dayIDToName,\n millisecondsToTimeString,\n facilityAvailabilityByDay,\n toggleAssigned,\n updateTimeStart,\n updateTimeEnd,\n cancel,\n areTimesValid,\n confirmed,\n }\n },\n})\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!./DivisionDayPreferencsModal.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!./DivisionDayPreferencsModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionDayPreferencsModal.vue?vue&type=template&id=798b8e2a&\"\nimport script from \"./DivisionDayPreferencsModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionDayPreferencsModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DivisionDayPreferencsModal.vue?vue&type=style&index=0&lang=scss&\"\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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Emit, Prop, Vue, Watch } from 'vue-property-decorator'\nimport { DivisionGameSchedulerFacility } from '@/GeneratedTypes/DivisionGameSchedulerFacility'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport { Container, Draggable, DropResult } from 'vue-smooth-dnd'\n\nimport { cloneDeep, isEqual } from 'lodash'\nimport FacilitySummaryBox from '@/views/Programs/Scheduling/Games/auto/FacilitySummaryBox.vue'\nimport { ScheduleBlocks } from '@/models/elements/Scheduler'\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\nimport { AvailabilityToScheduleBlocks } from '@/lib/support/models/ScheduleBlocks/AvailabilityToScheduleBlock'\nimport { RuntimeException } from '@/lib/common/exceptions/RuntimeException'\nimport { DivisionGameSchedulerFacilityToScheduleBlocks } from '@/lib/support/models/ScheduleBlocks/DivisionGameSchedulerFacilityToScheduleBlocks'\nimport { dayIDToName } from '@/views/Programs/Scheduling/Games/ext/augmented_facility_availability'\nimport { millisecondsToTimeString } from '@/lib/support/utilities/time/time'\nimport DivisionDayPreferencesModal from '@/views/Programs/Scheduling/Games/auto/DivisionDayPreferencsModal.vue'\nimport { getEmptyLeagueFacility } from '@/lib/support/models/LeagueFacility/data'\n\nclass FacilityDropperException extends RuntimeException {\n name = 'Facility Dropper Runtime Error'\n}\n\nconst PRIORITY_OFFSET = 1 //start priorities at this number\n/***\n * The output of this is the DivisionGameSchedulerFacility[]\n */\n\n@Component({\n components: { FacilitySummaryBox, DivisionDayPreferencesModal, Container, Draggable },\n})\nexport default class FacilityDropper extends Vue {\n //** event we are displaying the dropper for\n event = FacilityEventEnum.GAMES\n @Prop({ type: Array, default: () => [] })\n facilityList!: LeagueFacility[]\n\n @Prop({ type: Array, default: () => [] })\n value!: DivisionGameSchedulerFacility[]\n\n @Prop({ type: String, default: 'Division' })\n private divisionName!: string\n\n facilityWarning = ''\n\n internalFacilityOptions: DivisionGameSchedulerFacility[] = []\n\n //** preferences box showing to edit time for a facility\n areDivisionPreferencesShowing = false\n //** actual availability to constrain the edit box.\n facilityAvailabilityUnderEdit: ScheduleBlocks[] = []\n //** availability edited by the user.\n facilityAssignedAvailabilityUnderEdit: ScheduleBlocks[] = []\n //** actual availability to constrain the edit box.\n facilityIDUnderEdit = 0\n /**\n * schedule blocks to plug into the facility availability\n * and notify parent\n * @param s\n */\n updateFacilityAvailability(s: ScheduleBlocks[]) {\n const f = cloneDeep(this.internalFacilityOptions)\n this.internalFacilityOptions = [\n ...f.filter((x) => x.facilityID != this.facilityIDUnderEdit),\n ...s.map((x) => ({\n facilityID: this.facilityIDUnderEdit,\n typeDayID: dayIDToName(x.day),\n startTime: millisecondsToTimeString(x.timeStart),\n endTime: millisecondsToTimeString(x.timeEnd),\n typeRoundNumberModeID: 'PRIMARY',\n priority: this.faclityPriority,\n })),\n ]\n }\n\n get faclityPriority() {\n const a = cloneDeep(this.internalFacilityOptions)\n return a.find((f) => f.facilityID == this.facilityIDUnderEdit)?.priority ?? 0\n }\n /**\n * Someone clicked edit facility availability, we'll build up an edit structure then\n * trigger the modal for edit, dismiss goes into the dustbin, and an update event\n * will communicate to the parent to build game scheduler preferences\n * @param id - facility id to build edit list off of.\n */\n editFacilityAvailability(id: number) {\n const f = this.facilityForID(id)\n if (f) {\n this.facilityIDUnderEdit = id\n this.facilityAvailabilityUnderEdit = this.superScheduleForFacility(f)\n this.facilityAssignedAvailabilityUnderEdit = this.subScheduleForFacility(f)\n this.areDivisionPreferencesShowing = true\n } else {\n throw new FacilityDropperException(\"Cannot choose a facility that isn't in the division: \" + id)\n }\n }\n\n facilityForID(id: number) {\n return this.facilityList.find((x) => x.facilityID == id)\n }\n\n superScheduleForFacility(f: LeagueFacility): ScheduleBlocks[] {\n return AvailabilityToScheduleBlocks(f?.availability ?? [], this.event)\n }\n\n subScheduleForFacility(f: LeagueFacility): ScheduleBlocks[] {\n return DivisionGameSchedulerFacilityToScheduleBlocks(\n this.internalFacilityOptions.filter((x) => x.facilityID == f.facilityID) ?? []\n )\n }\n\n /**\n * Drag Handlers for inactive facilities\n */\n // get inactiveDragHandlers() {\n // return [DivTarget('#active-target', (this.moveToActive as unknown) as DropHandler)]\n // }\n\n /**\n * sets order based on priority, shows facilities that have options.\n */\n get activeFacilityList(): LeagueFacility[] {\n //build array\n const copyFacilities: DivisionGameSchedulerFacility[] = cloneDeep(this.internalFacilityOptions)\n const facilityIDsInOrder = Array.from(\n // from unique elements\n new Set(\n // that are IDs sorted by priority\n copyFacilities.sort((x, y) => (x.priority > y.priority ? 1 : -1))?.map((x) => x.facilityID)\n )\n )\n // return ids mapped back to facilities\n return facilityIDsInOrder\n .map((x) => this.facilityList.find((y) => y.facilityID == x) ?? getEmptyLeagueFacility())\n .filter((y) => y.facilityID)\n }\n\n /**\n * trolls facility list looking for anything that doesn't have options set and hours for the\n * type of event we are dealing with.\n */\n get inactiveFacilityList(): LeagueFacility[] {\n return this.facilityList.filter(\n (y) =>\n y.facilityID &&\n this.internalFacilityOptions.findIndex((x) => x.facilityID == y.facilityID) < 0 &&\n (y.availability || []).findIndex((z) => z.typeFacilityEventID == this.event) >= 0\n )\n }\n\n /**\n * Takes a facility and copies the available hours to facility options\n */\n createFacilityOptions(f: LeagueFacility, priority: number): DivisionGameSchedulerFacility[] {\n return (\n (f.availability ?? [])\n .filter((x) => x.typeFacilityEventID == this.event)\n ?.map((x) => {\n return {\n facilityID: f.facilityID,\n typeDayID: x.typeDayID,\n startTime: '08:00:00', //default start to 8AM\n endTime: x.endTime,\n typeRoundNumberModeID: 'PRIMARY',\n priority: priority + PRIORITY_OFFSET,\n }\n }) ?? []\n )\n }\n\n /**\n * Move an active facility to the inactive list\n */\n moveToInactive(dropResult: DropResult) {\n const f = (dropResult.payload as unknown) as LeagueFacility\n if (dropResult && dropResult.addedIndex == null) return //not inactivating a facility, so everything below can be ignored\n if (this.activeFacilityList.length == 1) {\n this.toggleFacilityWarning(true)\n return false\n }\n this.internalFacilityOptions = cloneDeep(\n this.internalFacilityOptions.filter((x) => x.facilityID != f.facilityID)\n )\n //reorder priorities\n let id = 0\n let priority = 0\n this.internalFacilityOptions.forEach((f) => {\n if (id != f.facilityID) {\n priority++\n id = f.facilityID\n }\n f.priority = priority\n })\n }\n\n unassignFacility(facility: LeagueFacility) {\n if (this.activeFacilityList.length == 1) {\n this.toggleFacilityWarning(true)\n return false\n }\n this.internalFacilityOptions = cloneDeep(\n this.internalFacilityOptions.filter((x) => x.facilityID != facility.facilityID)\n )\n //reorder priorities\n let id = 0\n let priority = 0\n this.internalFacilityOptions.forEach((f) => {\n if (id != f.facilityID) {\n priority++\n id = f.facilityID\n }\n f.priority = priority\n })\n }\n\n toggleFacilityWarning(show: boolean) {\n this.facilityWarning = show\n ? 'At least one facility is required. Please add a new one before removing this one.'\n : ''\n }\n /**\n * Moves an inactive facility to active, sets priority.\n * @param f\n */\n moveToActive(dropResult: DropResult) {\n const f = (cloneDeep(dropResult.payload) as unknown) as LeagueFacility\n if (dropResult && dropResult.addedIndex == null) return //not activating facility, so everything below can be ignored\n const facilityCopy: DivisionGameSchedulerFacility[] = cloneDeep(this.internalFacilityOptions)\n const maxPriority = facilityCopy.length ? Math.max(...facilityCopy.map((f) => f.priority)) : 0\n this.internalFacilityOptions = cloneDeep([\n ...this.createFacilityOptions(f, maxPriority),\n ...facilityCopy.filter((x) => x.facilityID != f.facilityID),\n ])\n this.toggleFacilityWarning(false)\n }\n\n assignFacility(facility: LeagueFacility) {\n const facilityCopy: DivisionGameSchedulerFacility[] = cloneDeep(this.internalFacilityOptions)\n const maxPriority = facilityCopy.length ? Math.max(...facilityCopy.map((f) => f.priority)) : 0\n this.internalFacilityOptions = cloneDeep([\n ...this.createFacilityOptions(facility, maxPriority),\n ...facilityCopy.filter((x) => x.facilityID != facility.facilityID),\n ])\n this.toggleFacilityWarning(false)\n }\n\n moveFacilityUp(id: number) {\n const dgsf = this.internalFacilityOptions.find((x) => x.facilityID == id)\n if (dgsf && dgsf.priority > 1) {\n this.internalFacilityOptions.forEach((x) => {\n if (x.priority == dgsf.priority - 1) {\n x.priority++\n }\n })\n dgsf.priority--\n }\n }\n\n moveFacilityDown(id: number) {\n const dgsf = this.internalFacilityOptions.find((x) => x.facilityID == id)\n if (dgsf && dgsf.priority < this.internalFacilityOptions.length) {\n this.internalFacilityOptions.forEach((x) => {\n if (x.priority == dgsf.priority + 1) {\n x.priority--\n }\n })\n dgsf.priority++\n }\n }\n\n isTopPriority(id: number) {\n const dgsf = this.internalFacilityOptions.find((x) => x.facilityID == id)\n return dgsf && dgsf.priority == 1\n }\n\n isLowestPriority(id: number) {\n const dgsf = this.internalFacilityOptions.find((x) => x.facilityID == id)\n return dgsf && dgsf.priority == this.internalFacilityOptions.length\n }\n\n setActivePayload(idx: number) {\n return this.activeFacilityList[idx]\n }\n\n setInactivePayload(idx: number) {\n return this.inactiveFacilityList[idx]\n }\n\n @Watch('value', { immediate: true, deep: true })\n updateValue() {\n if (!isEqual(this.value, this.internalFacilityOptions)) {\n this.internalFacilityOptions = cloneDeep(this.value)\n }\n }\n\n @Watch('internalFacilityOptions', { immediate: true, deep: true })\n updatedInternalFacilityOptions() {\n if (!isEqual(this.value, this.internalFacilityOptions)) {\n this.input()\n }\n }\n\n @Emit()\n input() {\n return this.internalFacilityOptions\n }\n}\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!./FacilityDropper.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!./FacilityDropper.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FacilityDropper.vue?vue&type=template&id=11fe2354&scoped=true&\"\nimport script from \"./FacilityDropper.vue?vue&type=script&lang=ts&\"\nexport * from \"./FacilityDropper.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FacilityDropper.vue?vue&type=style&index=0&id=11fe2354&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 \"11fe2354\",\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('div',{staticClass:\"container settings-panel\"},[_c('div',{staticClass:\"row\"},[_vm._m(0),_c('div',{staticClass:\"col-auto\"},[_c('DatesInput',{on:{\"input\":_vm.detectChangeAndFire},model:{value:(_vm.dates),callback:function ($$v) {_vm.dates=$$v},expression:\"dates\"}}),(_vm.datesSorted.length > 0)?_c('label',{staticClass:\"text-uppercase\"},[_vm._v(\"Dates to Exclude from Schedule\")]):_vm._e(),_c('ul',_vm._l((_vm.datesSorted),function(d){return _c('li',{key:d && d.toString(),staticClass:\"date\"},[_vm._v(\" \"+_vm._s(d.toLocaleDateString('en-US'))+\" \")])}),0)],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('SelectInput',{attrs:{\"label\":\"Games Per Week\",\"enabled\":false,\"items-list\":[1, 2],\"value\":\"1\",\"value-and-text-the-same\":\"\"},on:{\"input\":_vm.detectChangeAndFire},model:{value:(_vm.gamesPerWeek),callback:function ($$v) {_vm.gamesPerWeek=$$v},expression:\"gamesPerWeek\"}})],1),(_vm.hasOddTeam)?_c('div',{staticClass:\"col\"},[_c('SelectInput',{attrs:{\"label\":\"Odd Team Preference\",\"items-list\":[\n { val: 'BYEGAMES', text: 'Bye Games' },\n { val: 'DOUBLEHEADER', text: 'Double Header' } ],\"value\":\"DOUBLEHEADER\",\"value-property-name\":\"val\",\"text-property-name\":\"text\"},on:{\"input\":_vm.detectChangeAndFire},model:{value:(_vm.oddTeamPreference),callback:function ($$v) {_vm.oddTeamPreference=$$v},expression:\"oddTeamPreference\"}})],1):_vm._e()]),_vm._m(1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"},[_c('fieldset',[_c('legend',[_vm._v(\" \"),_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.assignment),expression:\"assignment\"}],attrs:{\"value\":\"RANDOM\",\"name\":\"assignment\",\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.assignment,\"RANDOM\")},on:{\"change\":[function($event){_vm.assignment=\"RANDOM\"},_vm.detectChangeAndFire]}}),_vm._v(\" Random\")])]),_vm._v(\" Time slots will be randomly assigned across available facilities, days and times \")])]),_c('div',{staticClass:\"col-4\"},[_c('fieldset',[_c('legend',[_vm._v(\" \"),_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.assignment),expression:\"assignment\"}],attrs:{\"value\":\"FACILITYUTILIZATION\",\"name\":\"assignment\",\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.assignment,\"FACILITYUTILIZATION\")},on:{\"change\":[function($event){_vm.assignment=\"FACILITYUTILIZATION\"},_vm.detectChangeAndFire]}}),_vm._v(\" By Facility Order\")])]),_vm._v(\" Based on the order of the facilities, all time slots will be filled in the first facility before moving to the next one. \")])]),_c('div',{staticClass:\"col-4\"},[_c('fieldset',[_c('legend',[_vm._v(\" \"),_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.assignment),expression:\"assignment\"}],attrs:{\"value\":\"EARLIESTTIME\",\"name\":\"assignment\",\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.assignment,\"EARLIESTTIME\")},on:{\"change\":[function($event){_vm.assignment=\"EARLIESTTIME\"},_vm.input]}}),_vm._v(\" By Time Slot\")])]),_vm._v(\" All early time slots will be assigned first across all chosen facilities before moving to the next available time slot. \")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12\"},[_c('h4',[_vm._v(\"Exclusions\")]),_vm._v(\" Select dates on the calendar below to indicate that games cannot be scheduled. Remove an exclusion by clicking the date again. \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('label',[_vm._v(\"SCHEDULE GAMES USING ONE OF THE FOLLOWING OPTIONS\")])])])}]\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\nimport { Component, Emit, Prop, Vue, Watch } from 'vue-property-decorator'\n\nimport DatesInput from '@/elements/DatesInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { DivisionGameSchedulerPreference } from '@/GeneratedTypes/DivisionGameSchedulerPreference'\nimport { getEmptyDivisionGameSchedulerPreference } from '@/lib/support/models/DivisionGameSchedulerPreference/data'\nimport { cloneDeep, isEqual } from 'lodash'\nimport { toDate } from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport { DivisionGameSchedulerExclusion } from '@/GeneratedTypes/DivisionGameSchedulerExclusion'\n\nimport store from '@/store'\n\n@Component({\n components: { SelectInput, DatesInput },\n})\nexport default class SchedulerSettingsPanel extends Vue {\n @Prop({ required: true, default: () => getEmptyDivisionGameSchedulerPreference(), type: Object })\n value!: DivisionGameSchedulerPreference\n internalValue!: DivisionGameSchedulerPreference\n\n get exclusionDates(): DivisionGameSchedulerExclusion[] {\n return this.dates.map((x) => ({ excludeDate: x }))\n }\n\n get datesSorted() {\n return this.dates.sort((x, y) => (x.valueOf() > y.valueOf() ? 1 : -1))\n }\n\n @Watch('value', { immediate: true })\n valueUpdated() {\n if (!isEqual(this.value, this.internalValue)) {\n this.assignment = this.value.typeScheduleAssignmentID || 'EARLIESTTIME'\n this.oddTeamPreference = this.value.typeOddTeamCountSchedulingID || 'DOUBLEHEADER'\n this.gamesPerWeek = this.value.gamesPerWeek || 1\n this.dates = this.value?.exclusionDates?.map((x) => toDate(x.excludeDate)) || []\n\n this.internalValue = cloneDeep(this.value)\n this.detectChangeAndFire()\n }\n }\n\n @Watch('value.divisionID')\n async divisionChanged() {\n await this.retrieveTeams()\n }\n\n async retrieveTeams() {\n if (!this.value.typeProgramID || !this.$route.params.id) return\n await store.dispatch.scheduling.loadTeams({\n id: this.$route.params.id,\n divisionID: this.value.divisionID,\n programID: this.value.typeProgramID,\n })\n }\n\n dates: Date[] = []\n assignment = 'EARLIESTTIME'\n oddTeamPreference = 'DOUBLEHEADER'\n gamesPerWeek = 0\n assignmentChange(v: string) {\n this.assignment = v\n }\n\n get calculatedSettings(): DivisionGameSchedulerPreference {\n return {\n ...this.internalValue,\n typeScheduleAssignmentID: this.assignment,\n typeOddTeamCountSchedulingID: this.oddTeamPreference,\n gamesPerWeek: this.gamesPerWeek,\n exclusionDates: this.exclusionDates,\n }\n }\n\n private get hasOddTeam(): boolean {\n return this.$store.direct.getters.scheduling.teams.length % 2 === 1\n }\n\n /***\n * Fire a change if the value is different than the calculated settings\n */\n detectChangeAndFire() {\n if (!isEqual(this.value, this.calculatedSettings)) {\n this.input()\n }\n }\n\n @Emit()\n input() {\n return this.calculatedSettings\n }\n}\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!./SchedulerSettingsPanel.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!./SchedulerSettingsPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SchedulerSettingsPanel.vue?vue&type=template&id=3332e3e8&\"\nimport script from \"./SchedulerSettingsPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./SchedulerSettingsPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SchedulerSettingsPanel.vue?vue&type=style&index=0&lang=scss&\"\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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport FacilityDropper from '@/views/Programs/Scheduling/Games/auto/FacilityDropper.vue'\nimport SchedulerSettingsPanel from '@/views/Programs/Scheduling/Games/auto/SchedulerSettingsPanel.vue'\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { DivisionGameSchedulerPreference } from '@/GeneratedTypes/DivisionGameSchedulerPreference'\nimport { getEmptyDivisionGameSchedulerPreference } from '@/lib/support/models/DivisionGameSchedulerPreference/data'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport { getEmptyLeague } from '@/lib/support/models/League/data'\nimport { League } from '@/GeneratedTypes/League'\nimport { isEqual, cloneDeep } from 'lodash'\nimport { DivisionGameSchedulerFacility } from '@/GeneratedTypes/DivisionGameSchedulerFacility'\n\n/***\n * The product of this component is a DivisionGameSchedulerPreference\n */\n\nexport default defineComponent({\n name: 'DivisionSettings',\n components: { FacilityDropper, SchedulerSettingsPanel },\n props: {\n division: {\n type: Object as PropType,\n required: true,\n default: () => getEmptyLeagueDivisionInfo(),\n },\n facilityList: { type: Array as PropType, required: true, default: () => [] },\n league: { type: Object as PropType, default: () => getEmptyLeague(), required: true },\n programID: { type: String, default: () => '', required: true },\n value: {\n type: Object as PropType,\n default: () => getEmptyDivisionGameSchedulerPreference(),\n },\n },\n setup(props, ctx) {\n const internalValue = ref(getEmptyDivisionGameSchedulerPreference())\n\n const facilityOptions = ref([])\n\n watch(\n () => props.value,\n () => {\n internalValue.value = cloneDeep(props.value)\n facilityOptions.value = cloneDeep(props.value.facilityPreferences) || []\n },\n { immediate: true }\n )\n\n const calculatedValue = computed(\n (): DivisionGameSchedulerPreference => {\n return cloneDeep({\n ...internalValue.value,\n facilityPreferences: facilityOptions.value,\n typeProgramID: props.programID,\n leagueID: props.league.id,\n\n divisionID: props.division.divisionID,\n })\n }\n )\n\n function input() {\n const newValue = calculatedValue.value\n if (!isEqual(newValue, props.value)) {\n ctx.emit('input', calculatedValue.value)\n }\n }\n\n return {\n input,\n facilityOptions,\n internalValue,\n }\n },\n})\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!./DivisionSettings.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!./DivisionSettings.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionSettings.vue?vue&type=template&id=19dda98f&\"\nimport script from \"./DivisionSettings.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionSettings.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Emit, Prop, Vue, Watch } from 'vue-property-decorator'\n\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { League } from '@/GeneratedTypes/League'\nimport { getEmptyLeague } from '@/lib/support/models/League/data'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport { DivisionGameSchedulerPreference } from '@/GeneratedTypes/DivisionGameSchedulerPreference'\nimport {\n getEmptyDivisionGameSchedulerPreference,\n isValidDivisionGameSchedulerPreference,\n} from '@/lib/support/models/DivisionGameSchedulerPreference/data'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport DivisionSettings from '@/views/Programs/Scheduling/Games/auto/DivisionSettings.vue'\nimport { isEqual, cloneDeep, difference } from 'lodash'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport gamesClient from '@/clients/gamesClient'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\n@Component({\n components: {\n SelectInput,\n DivisionSettings,\n ConfirmationModal,\n RadioGroupInput,\n },\n})\nexport default class DivisionPreferences extends Vue {\n get division(): LeagueDivisionInfo {\n const x = this.divisionList.find((x) => x.divisionID == this.internalDivisionID)\n if (!x) {\n return getEmptyLeagueDivisionInfo()\n } else return x\n }\n\n @Prop({ type: Array, default: () => [] })\n divisionList!: LeagueDivisionInfo[]\n\n settings: DivisionGameSchedulerPreference = getEmptyDivisionGameSchedulerPreference()\n @Prop({ type: Array, default: () => [] })\n facilityList!: LeagueFacility[]\n @Prop({ type: Object, default: () => getEmptyLeague() })\n league!: League\n @Prop({ type: String, default: () => '' })\n programID!: string\n @Prop({ type: Number, required: true })\n value!: number\n\n internalDivisionID = 0\n\n @Watch('value')\n updateInternalDivisionID() {\n if (this.internalDivisionID !== this.value) {\n this.internalDivisionID = this.value\n }\n }\n\n settingsByDivision = new Array<{ id: number; settings: DivisionGameSchedulerPreference }>()\n\n get leagueID() {\n return this.$route.params.id\n }\n\n async loadDivisionPreferences() {\n for (const x of this.divisionList) {\n const settings = await gamesClient.getPreferences(this.leagueID, this.programID, x.divisionID)\n if (settings) {\n this.putDivisionPreference(x.divisionID, settings)\n }\n }\n }\n\n @Watch('divisionList', { immediate: true })\n divisionListUpdated() {\n if (!this.internalDivisionID && this.divisionList.length) {\n this.internalDivisionID = this.divisionList[0].divisionID\n }\n //load preferences too\n this.loadDivisionPreferences()\n }\n\n @Watch('internalDivisionID')\n async divisionIDUpdated() {\n if (this.internalDivisionID !== this.value) {\n this.$emit('input', this.internalDivisionID)\n }\n\n if (this.internalDivisionID) {\n const savedSettings = this.settingsByDivision.find((x) => x.id == this.internalDivisionID)\n if (savedSettings) {\n this.settings = cloneDeep(savedSettings.settings)\n } else {\n const settings = await gamesClient.getPreferences(\n this.league.upwardLeagueID ?? '',\n this.programID,\n this.internalDivisionID\n )\n if (settings) {\n this.settings = settings\n } else {\n this.settings = getEmptyDivisionGameSchedulerPreference()\n }\n }\n }\n }\n\n clickCopySettings() {\n this.showCopySettingsModal = true\n }\n\n showCopySettingsModal = false\n divisionToCopy = 0\n async confirmCopySettings(b: boolean) {\n if (b && this.divisionToCopy) {\n const settings = this.settingsByDivision.find((x) => x.id == this.divisionToCopy)\n if (settings) {\n this.settings = cloneDeep(settings.settings)\n this.settings.divisionID = this.internalDivisionID\n await this.saveSettings()\n }\n }\n this.showCopySettingsModal = false\n }\n\n showApplyAllSettingsConfirmationModal = false\n /**\n * Triggered when apply confirm is made\n */\n confirmApplyAllSettings(b: boolean) {\n if (b) {\n //Sets the divisions to all the same things.\n\n this.settingsByDivision = this.divisionList.map((x) => ({\n id: x.divisionID,\n settings: {\n ...this.settings,\n divisionID: x.divisionID,\n },\n }))\n // save everything copied.\n this.settingsByDivision.forEach(async (x) => await this.savePreferences(x.settings))\n //move on to the schedule screen\n this.clickSchedule()\n }\n this.showApplyAllSettingsConfirmationModal = false\n }\n\n /**\n *\n * Pushes given preferences to the server\n */\n async savePreferences(p: DivisionGameSchedulerPreference) {\n await gamesClient.savePreferences(this.league.upwardLeagueID ?? '', p.typeProgramID, p.divisionID, p)\n }\n\n /***\n * save settings that are current if valid, show a message.\n */\n async saveBackSettings() {\n if (this.areSettingsValid) {\n await this.savePreferences(this.settings)\n this.$emit('update', this.settings)\n }\n }\n\n /**\n * Update division preference by the division ID -- will save back so that menu change will\n * pull the right division preferences\n * @return boolean if division was updated, doesn't have to be if no changes.\n */\n putDivisionPreference(id: number, settings: DivisionGameSchedulerPreference) {\n const existingSettings = this.settingsByDivision.find((x) => x.id == id)\n if (!existingSettings || !isEqual(existingSettings, settings)) {\n // remove the existing settings\n this.settingsByDivision = this.settingsByDivision.filter((x) => x.id != id)\n // add the new settings\n\n this.settingsByDivision.push({ id, settings })\n if (this.internalDivisionID == id) {\n this.settings = settings\n }\n return true //did update preferences, changes detected\n }\n return false //did not update preferences, no changes\n }\n\n async updateSettings(d: DivisionGameSchedulerPreference) {\n if (!isEqual(this.settings, d)) {\n this.settings = cloneDeep(d)\n await this.saveSettings()\n }\n }\n\n async saveSettings() {\n if (this.putDivisionPreference(this.settings.divisionID, this.settings)) {\n await this.saveBackSettings()\n }\n }\n\n getSettings(divisionID: number) {\n return this.settingsByDivision.find((x) => x.id == divisionID)\n }\n\n settingsValid(s: DivisionGameSchedulerPreference | undefined) {\n return !!s && isValidDivisionGameSchedulerPreference(s)\n }\n\n get areSettingsValid(): boolean {\n return this.settingsValid(this.settings)\n }\n\n /***\n * Returns a select list with divisions name and id\n */\n get divisionSelectList() {\n return this.divisionList\n .filter((x) => x.typeProgramID == this.programID)\n .map((x) => ({\n divisionName: `${x.divisionName}`,\n divisionID: x.divisionID,\n }))\n }\n\n /***\n * Returns a list of selections of divisions with settings\n * that are not the current division for drop down.\n */\n get divisionsWithSettings() {\n const divisionsWithSettings = Array.from(\n this.settingsByDivision.filter((y) => y.id != this.internalDivisionID).map((y) => y.id)\n )\n return this.divisionList.filter(\n (x) => divisionsWithSettings.indexOf(x.divisionID) >= 0 && !isCheer(x.typeProgramID)\n )\n }\n\n /***\n * Returns the list of division IDs that is not yet completely filled out.\n */\n divisionsNeedingSettings() {\n const divisionsWithSettings = Array.from(this.settingsByDivision.map((y) => y.id))\n const divisions = Array.from(this.divisionList.map((x) => x.divisionID))\n const diff = difference(divisions, divisionsWithSettings)\n\n return diff\n }\n\n nextDivision() {\n const x = this.divisionsNeedingSettings()\n if (x.length) {\n this.internalDivisionID = x[0]\n }\n }\n\n @Emit()\n clickSchedule() {\n return this.settings\n }\n}\n","export enum DivisionStatusEnum {\n COMPLETE,\n SKIPPED,\n PENDING,\n ERROR,\n IN_PROCESS,\n}\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!./DivisionPreferences.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!./DivisionPreferences.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DivisionPreferences.vue?vue&type=template&id=7d87711b&scoped=true&\"\nimport script from \"./DivisionPreferences.vue?vue&type=script&lang=ts&\"\nexport * from \"./DivisionPreferences.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DivisionPreferences.vue?vue&type=style&index=0&id=7d87711b&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 \"7d87711b\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport FacilityTimeWarningModal from '@/views/Programs/Scheduling/Games/ext/FacilityTimeWarningModal.vue'\nimport { LeagueInfoMoreThanOneProgram } from '@/lib/support/models/LeagueListItem/data'\nimport { League } from '@/GeneratedTypes/League'\n\nimport { namespace } from 'vuex-class'\nimport { getterNames as leagueGetters, namespace as leagueStoreName } from '@/store/leagues'\nimport { getterNames as schedulingGetters, namespace as schedulingStoreName } from '@/store/scheduling'\n\nconst league = namespace(leagueStoreName)\nconst schedulingStore = namespace(schedulingStoreName)\n\nimport {\n getterNames as facilitiesGetters,\n actionNames as facilitiesActions,\n namespace as facilitiesStoreName,\n} from '@/store/facilities'\n\nclass SchedulerData {\n program = ''\n divisionID = 0\n excludedDates: Date[] = []\n preferences = getEmptyDivisionGameSchedulerPreference()\n}\n\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport { getEmptyDivisionGameSchedulerPreference } from '@/lib/support/models/DivisionGameSchedulerPreference/data.ts'\nimport DivisionPreferences from '@/views/Programs/Scheduling/Games/auto/DivisionPreferences.vue'\nimport { DivisionGameSchedulerPreference } from '@/GeneratedTypes/DivisionGameSchedulerPreference'\n\nconst facilities = namespace(facilitiesStoreName)\n\nimport {\n getterNames as divisionGetters,\n actionNames as divisionActions,\n namespace as divisionNamespace,\n} from '@/store/divisions'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { DivisionAutoSchedulerStatus } from '@/models/Scheduling/DivisionAutoSchedulerStatus'\nimport { DivisionStatusEnum } from '@/models/Scheduling/DivisionStatusEnum'\nimport gamesClient from '@/clients/gamesClient'\nimport { LeagueDivision } from '@/GeneratedTypes/LeagueDivision'\n\nconst divisions = namespace(divisionNamespace)\n\n@Component({\n components: {\n TypeProgramTab,\n DivisionPreferences,\n FacilityTimeWarningModal,\n },\n methods: {\n LeagueInfoMoreThanOneProgram,\n },\n})\nexport default class AutomaticScheduling extends Vue {\n /** getters */\n @league.Getter(leagueGetters.currentItem) league!: League\n @schedulingStore.Getter(schedulingGetters.teamsLoading) teamsLoading!: Boolean\n @facilities.Getter(facilitiesGetters.items) facilities!: LeagueFacility[]\n\n @facilities.Action(facilitiesActions.load)\n private readonly retrieveFacilities!: ({ id }: { id: string }) => LeagueFacility[] | null\n\n @divisions.Getter(divisionGetters.allItems) divisionList!: (s: string) => LeagueDivisionInfo[]\n @divisions.Action(divisionActions.fetchAll) fetchAllDivisions!: ({\n upwardLeagueId,\n force,\n }: {\n upwardLeagueId: UpwardLeagueIDType\n force: boolean\n }) => Promise\n\n divisionID = 0\n showTimeWarning = false\n\n async clickSchedule() {\n const date = new Date()\n const dateString = `${date.getUTCFullYear()}-${('0' + date.getUTCMonth()).slice(-2)}-${(\n '0' + date.getUTCDate()\n ).slice(-2)}T`\n const startDate = new Date(`${dateString}08:00:00.000-00:00`)\n const endDate = new Date(`${dateString}21:00:00.000-00:00`)\n\n var hasFacilityTimesOutsideRange = this.settings.some(\n (f) =>\n f.divisionID === this.divisionID &&\n f.facilityPreferences?.some(\n (a) =>\n new Date(`${dateString}${(a.startTime + ':00').substring(0, 8)}.000-00:00`) < startDate ||\n new Date(`${dateString}${(a.endTime + ':00').substring(0, 8)}.000-00:00`) > endDate\n )\n )\n\n this.showTimeWarning = hasFacilityTimesOutsideRange\n if (!hasFacilityTimesOutsideRange) {\n await this.continueScheduling()\n }\n }\n\n get gamepath() {\n return `/programs/league/${this.$route.params.id}/scheduling/games`\n }\n\n isReadyToSchedule = false\n async continueScheduling() {\n const scheduleSettings = this.settings.find((s) => {\n return s.divisionID === this.divisionID\n })\n if (!scheduleSettings) {\n throw Error('No division settings. Nothing scheduled')\n }\n\n const schedulingStatus = this.divisionStatusList.find(\n (ds) =>\n ds.division.divisionID === scheduleSettings.divisionID &&\n ds.division.typeProgramID === scheduleSettings.typeProgramID\n )\n if (!schedulingStatus) {\n return\n }\n\n await gamesClient.schedule(\n this.upwardLeagueID,\n scheduleSettings.typeProgramID,\n scheduleSettings.divisionID,\n {\n clearExistingSchedule: schedulingStatus?.shouldOverwrite ?? false,\n createDefaultPairings: (schedulingStatus?.scheduledGames ?? 0) <= 0,\n generateGameSchedule: true,\n }\n )\n this.$router.push(`/programs/league/${this.upwardLeagueID}/scheduling/manual/${this.divisionID}`)\n }\n\n settings: DivisionGameSchedulerPreference[] = []\n\n update(s: DivisionGameSchedulerPreference) {\n if (this.settings && s && s.divisionID) {\n var setting = this.settings.find((l) => l.divisionID === s.divisionID)\n if (setting) {\n //remove previous setting\n const settingToRemoveIndex = this.settings.indexOf(setting)\n this.settings.splice(settingToRemoveIndex, 1)\n }\n this.settings.push(s)\n }\n }\n\n @Watch('divisionsList', { immediate: true })\n async divisionsListUpdate() {\n for (const divisionInfo of this.divisionsList) {\n const divisionPreference = await gamesClient.getPreferences(\n this.upwardLeagueID,\n divisionInfo?.typeProgramID ?? '',\n divisionInfo?.divisionID ?? 0\n )\n if (divisionPreference) {\n this.update(divisionPreference)\n }\n }\n }\n\n /** other variables**/\n private loading = true\n get programID() {\n if (this.league && this.league.programs?.length) {\n return this.league.programs[0].typeProgramID || ''\n }\n return ''\n }\n\n get upwardLeagueID() {\n return this.$route.params.id\n }\n\n public async mounted() {\n this.divisionID = parseInt(this.$route.params.divisionID) ?? 0\n await this.retrieveFacilities({ id: this.upwardLeagueID })\n await this.fetchAllDivisions({ upwardLeagueId: this.upwardLeagueID, force: true })\n\n this.loading = false\n }\n\n get divisionsList() {\n return this.divisionList(this.league?.upwardLeagueID ?? '')\n }\n\n get divisionStatusList(): DivisionAutoSchedulerStatus[] {\n let priority = 1\n\n return this.divisionsList\n .filter((x) => x.typeProgramID == this.programID)\n\n .map((x) => ({\n division: { ...(x as LeagueDivision) },\n shouldSkip: false,\n shouldOverwrite: false,\n status: DivisionStatusEnum.PENDING,\n priority: priority++,\n scheduledGames: -1,\n preferences:\n this.settings.find((y) => y.divisionID == x.divisionID) ??\n getEmptyDivisionGameSchedulerPreference(),\n }))\n }\n data = new SchedulerData()\n step = 'DivisionPreferences'\n}\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!./AutomaticScheduling.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!./AutomaticScheduling.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AutomaticScheduling.vue?vue&type=template&id=327e0746&\"\nimport script from \"./AutomaticScheduling.vue?vue&type=script&lang=ts&\"\nexport * from \"./AutomaticScheduling.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AutomaticScheduling.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[(_vm.loading)?_c('loading'):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[(!_vm.loading && !_vm.hasGames)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\"You have no games set up for this program.\")]),_c('p',[_vm._v(\"Click the \"),_c('router-link',{attrs:{\"to\":\"./games\"}},[_vm._v(\"Games\")]),_vm._v(\" tab to add one or more games.\")],1)]):_vm._e()])]),(!_vm.loading && !_vm.hasAppointments && _vm.hasGames)?[_vm._m(0),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('div',{staticClass:\"card bg-light mb-3\"},[_c('div',{staticClass:\"card-body bg-light\"},[_c('h5',[_vm._v(\"Automatic Game Assignment Scheduler\")]),_c('p',[_vm._v(\"Set preferences and then schedule games assignments for the entire season.\")]),_c('router-link',{staticClass:\"btn btn-primary\",attrs:{\"to\":\"cheer/auto\"}},[_vm._v(\"Schedule Assignments Automatically\")])],1)])]),_c('div',{staticClass:\"col-6\"},[_c('div',{staticClass:\"card bg-light mb-3\"},[_c('div',{staticClass:\"card-body bg-light\"},[_c('h5',[_vm._v(\"Manual Squad Assignment\")]),_c('p',[_vm._v(\"Manually assign squads to specific time slots for each available facility. facility\")]),_c('router-link',{staticClass:\"btn btn-primary\",attrs:{\"to\":\"cheer/manual\"}},[_vm._v(\"Schedule Assignments Manually\")])],1)])])])]:_vm._e()],2)])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"mt-2\"},[_vm._v(\" No squads have been assigned to any dates. Do you want to automatically create a game assignments for each division or create them manually? \")])])])}]\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\nimport { defineComponent, computed, ref, onMounted } from '@vue/composition-api'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\n\nimport store from '@/store'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n name: 'Squads',\n components: {\n Loading,\n TypeProgramTab,\n },\n setup(props, ctx) {\n const games = computed(() => store.getters.scheduling.games)\n const appointments = computed(() => store.getters.scheduling.appointments)\n\n const hasGames = computed(() => !!games.value?.length)\n\n const hasAppointments = computed(() => !!appointments.value?.length)\n\n /** other variables**/\n const loading = ref(true)\n /***\n * Returns the structure to define the tabs based on loaded league\n */\n /** index into this.leagues.programs[] variables */\n\n onMounted(async () => {\n loading.value = true\n await Promise.all([\n store.dispatch.scheduling.loadAppointments({ id: ctx.root.$route.params.id ?? '' }),\n store.dispatch.scheduling.loadGames({ id: ctx.root.$route.params.id ?? '' }),\n ])\n if (appointments.value?.length) {\n await ctx.root.$router.push('cheer/manual')\n }\n\n loading.value = false\n })\n\n return {\n loading,\n hasGames,\n hasAppointments,\n }\n },\n})\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!./Squads.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!./Squads.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Squads.vue?vue&type=template&id=3688ac01&\"\nimport script from \"./Squads.vue?vue&type=script&lang=ts&\"\nexport * from \"./Squads.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('div',[_c('div',{staticClass:\"bg-white flex-grow-1 mt-3 container-fluid\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6 pb-0\"},[_c('h5',[_c('router-link',{staticClass:\"text-underline\",attrs:{\"to\":\"../cheer\"}},[_vm._v(\"Squads\")]),_vm._v(\" > \"),_c('span',[_vm._v(\"Auto-schedule\")])],1)]),(_vm.canScheduleNow)?_c('div',{staticClass:\"col-6 pb-0 text-right\"},[_c('button',{staticClass:\"m-2 btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.clickSchedule}},[_c('i',{staticClass:\"far fa-clock\"}),_vm._v(\" Schedule Now \")])]):_vm._e()]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"},[_c('div',{staticClass:\"container settings-panel\"},[_vm._m(0),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('fieldset',[_c('legend',[_vm._v(\" \"),_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.strategy),expression:\"strategy\"}],attrs:{\"name\":\"strategy\",\"type\":\"radio\"},domProps:{\"value\":_vm.STRATEGY_DIVISION,\"checked\":_vm._q(_vm.strategy,_vm.STRATEGY_DIVISION)},on:{\"change\":function($event){_vm.strategy=_vm.STRATEGY_DIVISION}}}),_vm._v(\" By Division\")])]),_vm._v(\" This option designates a cheerleading division to cheer for specific sport divisions. \")])]),_c('div',{staticClass:\"col-6\"},[_c('fieldset',[_c('legend',[_vm._v(\" \"),_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.strategy),expression:\"strategy\"}],attrs:{\"name\":\"strategy\",\"type\":\"radio\"},domProps:{\"value\":_vm.STRATEGY_RANDOM,\"checked\":_vm._q(_vm.strategy,_vm.STRATEGY_RANDOM)},on:{\"change\":function($event){_vm.strategy=_vm.STRATEGY_RANDOM}}}),_vm._v(\" Random\")])]),_vm._v(\" This options will assign cheer squads to the game matchups regardless of sport division, day, time or available facility \")])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('select-input',{attrs:{\"items-list\":_vm.offsetList,\"text-property-name\":\"desc\",\"value-property-name\":\"id\",\"label\":\"Game Time Offset\"},model:{value:(_vm.offset),callback:function ($$v) {_vm.offset=$$v},expression:\"offset\"}})],1)])])])]),_c('div',{staticClass:\"col-8\"},[_c('cheer-scheduling-grid',{attrs:{\"disabled\":_vm.strategy == _vm.STRATEGY_RANDOM,\"divisions-list\":_vm.divisionsList,\"league\":_vm.league},model:{value:(_vm.mapping),callback:function ($$v) {_vm.mapping=$$v},expression:\"mapping\"}})],1)])]),_c('alert',{attrs:{\"type\":_vm.alertType},model:{value:(_vm.confirmCheerScheduledShowing),callback:function ($$v) {_vm.confirmCheerScheduledShowing=$$v},expression:\"confirmCheerScheduledShowing\"}},[_vm._v(\"Cheer Squads Scheduled \")]),_c('confirmation-modal',{attrs:{\"show\":_vm.showScheduleConfirm,\"is-small\":\"\",\"title\":\"Confirm Schedule\"},on:{\"onResponse\":_vm.scheduleCheerConfirmed}},[_vm._v(\" This will clear the existing cheer schedule and assign squads to games. Are you OK to proceed? \")])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_vm._v(\" Setup squad assignment using preferences below. \"),_c('p'),_c('label',[_vm._v(\"Schedule Squads using one of the following options\")])])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"table-responsive\"},[(_vm.canShowGrid)?_c('table',{staticClass:\"table table-bordered\"},[_c('tr',[_c('th',{attrs:{\"id\":\"cd\",\"rowspan\":\"2\"}},[_vm._v(\"Cheer Divisions\")]),_c('th',{attrs:{\"id\":\"sd\",\"colspan\":_vm.sportDivisions.length}},[_vm._v(\"Sport Divisions\")])]),_c('tr',_vm._l((_vm.sportDivisions),function(sportDivision){return _c('th',{key:(\"sd-\" + (sportDivision.divisionID)),staticClass:\"div-header\",attrs:{\"id\":(\"sd-\" + (sportDivision.divisionID)),\"headers\":\"sd\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(sportDivision.divisionName)+\" \")])}),0),_vm._l((_vm.cheerDivisions),function(cheerDivision){return _c('tr',{key:(\"cd-\" + (cheerDivision.divisionID)),attrs:{\"id\":(\"cd-\" + (cheerDivision.divisionID))}},[_c('th',{staticClass:\"cheer-header\",attrs:{\"headers\":\"cd\",\"scope\":\"row\"}},[_vm._v(\" \"+_vm._s(cheerDivision.divisionName)+\" \")]),_vm._l((_vm.sportDivisions),function(sportDivision){return _c('td',{key:(\"cell-\" + (sportDivision.divisionID) + \"-\" + (cheerDivision.divisionID)),attrs:{\"id\":(\"cell-\" + (sportDivision.divisionID) + \"-\" + (cheerDivision.divisionID)),\"headers\":(\"sd-\" + (sportDivision.divisionID))}},[_c('input',{attrs:{\"id\":(\"checkbox-\" + (sportDivision.divisionID) + \"-\" + (cheerDivision.divisionID)),\"type\":\"checkbox\",\"disabled\":_vm.disabled},domProps:{\"checked\":_vm.isMapping(sportDivision.divisionID, cheerDivision.divisionID)},on:{\"input\":function($event){return _vm.toggleMapping(sportDivision.divisionID, cheerDivision.divisionID)}}})])})],2)})],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export interface DivisionSquadMapElement {\n cheerDivisionID: number\n sportDivisionID: number\n}\n\nexport type DivisionSquadMap = DivisionSquadMapElement[]\n\nexport function getEmptyDivisionSquadMap(): DivisionSquadMap {\n return []\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Emit, Prop, Vue, Watch } from 'vue-property-decorator'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { getEmptyLeague } from '@/lib/support/models/League/data'\nimport { League } from '@/GeneratedTypes/League'\nimport { DivisionSquadMap, getEmptyDivisionSquadMap } from '@/models/Scheduling/DivisionSquadMap'\nimport { isEqual, cloneDeep } from 'lodash'\n@Component({})\nexport default class CheerSchedulingGrid extends Vue {\n @Prop({ required: true, default: () => [] })\n divisionsList!: LeagueDivisionInfo[]\n\n @Prop({ required: true, default: () => getEmptyLeague() })\n league!: League\n\n @Prop({ type: Boolean, required: false, default: () => false })\n disabled!: League\n\n @Prop({ type: Array, required: false, default: () => [] })\n value!: DivisionSquadMap\n internalValue: DivisionSquadMap = getEmptyDivisionSquadMap()\n\n @Watch('value', { immediate: true })\n valueUpdated() {\n this.internalValue = cloneDeep(this.value)\n }\n\n @Watch('internalValue')\n internalValueUpdated() {\n if (!isEqual(this.value, this.internalValue)) {\n this.input()\n }\n }\n @Emit()\n input() {\n return this.internalValue\n }\n\n isMapping(sportDivision: number, cheerDivision: number) {\n return this.getMappingIndex(sportDivision, cheerDivision) >= 0\n }\n getMappingIndex(sportDivision: number, cheerDivision: number) {\n return this.internalValue.findIndex(\n (x) => x.sportDivisionID == sportDivision && x.cheerDivisionID == cheerDivision\n )\n }\n\n /**\n * Turn on or off the combo\n * @param sportDivision\n * @param cheerDivision\n */\n toggleMapping(sportDivision: number, cheerDivision: number) {\n const isConnected = this.isMapping(sportDivision, cheerDivision)\n if (isConnected) {\n const mappingIndex = this.getMappingIndex(sportDivision, cheerDivision)\n this.internalValue.splice(mappingIndex, 1)\n } else {\n this.internalValue.push({ sportDivisionID: sportDivision, cheerDivisionID: cheerDivision })\n }\n }\n\n get canShowGrid() {\n return this.sportDivisions?.length && this.cheerDivisions?.length\n }\n\n get sportProgramID() {\n if (this.league?.programs?.length) {\n return this.league.programs[0].typeProgramID\n }\n return ''\n }\n get cheerProgramID() {\n if (this.league && this.league?.programs && this.league?.programs?.length > 1) {\n return this.league.programs[1].typeProgramID\n }\n return '' //should never happen with valid data\n }\n\n get sportDivisions() {\n return this.divisionsList.filter((x) => x.typeProgramID == this.sportProgramID)\n }\n get cheerDivisions() {\n return this.divisionsList.filter((x) => x.typeProgramID == this.cheerProgramID)\n }\n}\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!./CheerSchedulingGrid.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!./CheerSchedulingGrid.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CheerSchedulingGrid.vue?vue&type=template&id=6756f1c2&scoped=true&\"\nimport script from \"./CheerSchedulingGrid.vue?vue&type=script&lang=ts&\"\nexport * from \"./CheerSchedulingGrid.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CheerSchedulingGrid.vue?vue&type=style&index=0&id=6756f1c2&scoped=true&lang=scss&\"\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 \"6756f1c2\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport { LeagueInfoMoreThanOneProgram } from '@/lib/support/models/LeagueListItem/data'\n\nimport { League } from '@/GeneratedTypes/League'\n\nimport { namespace } from 'vuex-class'\nimport { getterNames as leagueGetters, namespace as leagueStoreName } from '@/store/leagues'\nconst league = namespace(leagueStoreName)\nimport {\n getterNames as facilitiesGetters,\n actionNames as facilitiesActions,\n namespace as facilitiesStoreName,\n} from '@/store/facilities'\n\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\n\nconst facilities = namespace(facilitiesStoreName)\n\nimport {\n getterNames as divisionGetters,\n actionNames as divisionActions,\n namespace as divisionNamespace,\n} from '@/store/divisions'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport CheerSchedulingGrid from '@/views/Programs/Scheduling/Squads/ext/CheerSchedulingGrid.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { getEmptyDivisionSquadMap } from '@/models/Scheduling/DivisionSquadMap'\nimport { CheerSquadSchedulerMapping } from '@/GeneratedTypes/CheerSquadSchedulerMapping'\nimport appointmentClient from '@/clients/appointmentClient'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\n\nconst divisions = namespace(divisionNamespace)\n@Component({\n components: {\n ConfirmationModal,\n SelectInput,\n CheerSchedulingGrid,\n TypeProgramTab,\n Alert,\n },\n methods: {\n LeagueInfoMoreThanOneProgram,\n },\n})\nexport default class SquadsAutomaticScheduling extends Vue {\n /** getters */\n @league.Getter(leagueGetters.currentItem) league!: League\n @facilities.Getter(facilitiesGetters.items) facilities!: LeagueFacility[]\n\n @facilities.Action(facilitiesActions.load)\n private readonly retrieveFacilities!: ({ id }: { id: string }) => LeagueFacility[] | null\n\n @divisions.Getter(divisionGetters.allItems) divisionList!: (s: string) => LeagueDivisionInfo[]\n @divisions.Action(divisionActions.fetchAll) fetchAllDivisions!: ({\n upwardLeagueId,\n force,\n }: {\n upwardLeagueId: UpwardLeagueIDType\n force: boolean\n }) => Promise\n STRATEGY_RANDOM = 'RANDOM'\n STRATEGY_DIVISION = 'DIVISION'\n\n showScheduleConfirm = false\n clickSchedule() {\n this.showScheduleConfirm = true\n }\n\n internalSquadMapping: CheerSquadSchedulerMapping[] = []\n get squadMapping(): CheerSquadSchedulerMapping[] {\n return this.mapping.map((x) => ({\n cheerDivisionID: x.cheerDivisionID,\n sportDivisionID: x.sportDivisionID,\n cheerTypeProgramID: this.cheerProgramID ?? '',\n sportTypeProgramID: this.sportProgramID ?? '',\n leagueID: this.league.id,\n }))\n }\n\n squadMappingUpdated() {\n appointmentClient.savePreferences(this.upwardLeagueID, this.squadMapping)\n }\n\n /***\n * mapping --\n */\n mapping = getEmptyDivisionSquadMap()\n alertType = AlertTypeEnum.NOTICE\n strategy = this.STRATEGY_RANDOM\n\n @Watch('strategy')\n strategyUpdated() {\n if (this.strategy === this.STRATEGY_RANDOM) {\n appointmentClient.savePreferences(this.upwardLeagueID, [])\n }\n }\n\n @Watch('internalSquadMapping', { immediate: true })\n updateInternalSquadMapping() {\n this.mapping = this.internalSquadMapping.map((x) => ({\n cheerDivisionID: x.cheerDivisionID,\n sportDivisionID: x.sportDivisionID,\n }))\n }\n\n /** other variables**/\n private loading = true\n get sportProgramID() {\n if (this.league && this.league.programs?.length) {\n return this.league.programs[0].typeProgramID || ''\n }\n return undefined\n }\n get cheerProgramID() {\n if (this.league && this.league.programs && this.league.programs?.length > 1) {\n return this.league.programs[1].typeProgramID || ''\n }\n return undefined\n }\n\n get upwardLeagueID() {\n return this.$route.params.id\n }\n\n public async mounted() {\n await this.retrieveFacilities({ id: this.upwardLeagueID })\n await this.fetchAllDivisions({ upwardLeagueId: this.upwardLeagueID, force: true })\n this.internalSquadMapping = (await appointmentClient.getPreferences(this.upwardLeagueID)) ?? []\n this.$nextTick(() => this.$watch('squadMapping', this.squadMappingUpdated))\n this.loading = false\n }\n\n offset = 5\n get offsetList() {\n const rv = []\n for (let i = 0; i < 60; i += 5) {\n rv.push({ id: i.toString(), desc: `${i} Minutes` })\n }\n return rv\n }\n\n get canScheduleNow() {\n return this.mapping.length > 0 || this.strategy == this.STRATEGY_RANDOM\n }\n\n confirmCheerScheduledShowing = false\n async scheduleCheerConfirmed(b: boolean) {\n if (b) {\n await appointmentClient.clearSchedule(this.upwardLeagueID)\n await appointmentClient.schedule(this.upwardLeagueID, { offset: this.offset })\n this.confirmCheerScheduledShowing = true\n }\n this.showScheduleConfirm = false\n this.$router.push(`/programs/league/${this.upwardLeagueID}/scheduling/cheer/manual`)\n }\n\n get divisionsList() {\n return this.divisionList(this.league?.upwardLeagueID ?? '')\n }\n}\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!./SquadsAutomaticScheduling.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!./SquadsAutomaticScheduling.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SquadsAutomaticScheduling.vue?vue&type=template&id=6462b1fe&\"\nimport script from \"./SquadsAutomaticScheduling.vue?vue&type=script&lang=ts&\"\nexport * from \"./SquadsAutomaticScheduling.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SquadsAutomaticScheduling.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('div',{staticClass:\"row pt-2\"},[_c('h5',{staticClass:\"col-md-12 col-lg-2 pb-0\"},[_vm._v(\"Squads\")]),_c('div',{staticClass:\"col-md-12 col-lg-10 pb-0 move-right\"},[_c('button',{staticClass:\"btn btn-success mr-2\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.auto}},[_c('i',{staticClass:\"far fa-clock\"}),_vm._v(\" Auto-Schedule Squads \")]),_c('button',{staticClass:\"btn btn-outline-dark mr-2\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.clickAddGame}},[_c('i',{staticClass:\"fas fa-plus\"}),_vm._v(\" Add Appointment \")]),_c('button',{staticClass:\"btn btn-outline-dark\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.clickClearAppointments}},[_c('i',{staticClass:\"fas fa-trash\"}),_vm._v(\" Clear Division Appointments \")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4 mt-1 d-flex\"},[_c('div',[_c('select-input',{attrs:{\"items-list\":_vm.gameDivisionList,\"text-property-name\":\"divisionName\",\"value-property-name\":\"divisionID\",\"label\":\"Division\"},model:{value:(_vm.divisionID),callback:function ($$v) {_vm.divisionID=$$v},expression:\"divisionID\"}})],1)])]),_c('div',{staticClass:\"row py-0\"},[_c('div',{staticClass:\"col-3 py-0\"},[_c('div',[_c('toggle-links',{attrs:{\"value-property-name\":\"id\",\"text-property-name\":\"text\",\"items-list\":[\n { id: 'calendar', text: 'Calendar View' },\n { id: 'list', text: 'List View' } ]},model:{value:(_vm.viewtype),callback:function ($$v) {_vm.viewtype=$$v},expression:\"viewtype\"}})],1)])]),_c('div',{staticClass:\"row\"},[(_vm.viewtype == 'calendar')?_c('div',{staticClass:\"col\"},[_c('Calendar',{attrs:{\"group-name\":\"squadScheduler\",\"weekdays\":_vm.weekdays,\"start-date\":_vm.firstGameDate,\"first-day\":_vm.firstGameDate,\"default-event-duration\":_vm.duration,\"events\":_vm.schedule,\"matchups\":_vm.unscheduledTeams,\"upwardLeagueID\":_vm.leagueID,\"coachConflictType\":_vm.coachConflictTypeEnum.GameDoubleBooked},on:{\"drop:external\":_vm.eventDropped,\"drop:internal\":_vm.eventMoved,\"click:event\":_vm.eventClick,\"currentRange\":_vm.currentRange},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('div',{staticClass:\"tab-fix\"},[_c('div',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.statusText))]),(_vm.viewtype === 'calendar')?_c('HorizontalTabs',{attrs:{\"tabs\":_vm.facilitiesAsTabs},model:{value:(_vm.currentFacility),callback:function ($$v) {_vm.currentFacility=$$v},expression:\"currentFacility\"}}):_vm._e()],1)]},proxy:true},{key:\"item\",fn:function(ref){\n var item = ref.item;\nreturn [_c('ScheduleDragItem',{attrs:{\"item\":item}})]}}],null,false,3076220153)})],1):_vm._e()]),(!_vm.loading && _vm.viewtype == 'list')?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-3\"},[_c('squad-schedule-info',{attrs:{\"unscheduled\":_vm.unscheduledTeams}})],1),_c('div',{staticClass:\"col-9\"},[_c('h5',[_vm._v(\"Squad Schedule\")]),_c('DataTable',{staticClass:\"elevation-1 data-table-zebra\",attrs:{\"dense\":\"\",\"headers\":_vm.headers,\"items\":_vm.gridSchedule,\"items-per-page\":15},on:{\"dblClick\":_vm.doubleClickGrid},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\n var item = ref.item;\nreturn [_c('EditBtn',{on:{\"click\":function($event){return _vm.editItem(item)}}}),_c('DeleteBtn',{on:{\"click\":function($event){return _vm.deleteItem(item)}}})]}}],null,false,77907056)})],1)]):_vm._e(),_c('practice-modal',{attrs:{\"division-list\":_vm.gameDivisionList,\"facility-list\":_vm.eventFacilities,\"league\":this.league,\"practice\":_vm.currentAppointment,\"team-list\":_vm.teamsList,\"program-i-d\":_vm.programID,\"event-type\":_vm.schedulingType,\"duration\":_vm.duration,\"title\":\"Appointment\"},on:{\"confirmed\":_vm.confirmAppointment,\"deleted\":_vm.deleteAppointment},model:{value:(_vm.schedulingModalShowing),callback:function ($$v) {_vm.schedulingModalShowing=$$v},expression:\"schedulingModalShowing\"}}),_c('confirmation-modal',{attrs:{\"title\":\"Confirm Clear Appointments\",\"show\":_vm.confirmClearAppointmentsShowing,\"is-small\":true},on:{\"onResponse\":_vm.confirmClearAppointments}},[_vm._v(\" Which squads to do you want to remove all appointment dates for ? \"),_c('select-input',{attrs:{\"items-list\":_vm.teamsListAndAllTeams,\"text-property-name\":\"teamName\",\"value-property-name\":\"teamID\"},model:{value:(_vm.teamToClear),callback:function ($$v) {_vm.teamToClear=$$v},expression:\"teamToClear\"}}),_c('template',{slot:\"confirm\"},[_vm._v(\"✖ Delete\")]),_c('template',{slot:\"cancel\"},[_vm._v(\"Cancel\")])],2),_c('confirmation-modal',{attrs:{\"is-small\":\"\",\"title\":\"Confirm Delete\",\"show\":_vm.showDeleteConfirmation},on:{\"onResponse\":_vm.deleteConfirmed}},[_vm._v(\" This action will delete the squad appointment. Do you wish to continue? \")]),_c('alert',{attrs:{\"type\":_vm.alertType},model:{value:(_vm.showDeleteConfirmed),callback:function ($$v) {_vm.showDeleteConfirmed=$$v},expression:\"showDeleteConfirmed\"}},[_vm._v(\"Game Deleted\")])],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:\"text-center border p-3\"},[_c('p',[_c('b',[_vm._v(_vm._s(_vm.unscheduledTeamCount))]),_vm._v(\" unscheduled squad\"+_vm._s(_vm.unscheduledTeamCount > 1 ? 's' : '')+\" \")]),(_vm.unscheduledTeamCount)?_c('p',{staticClass:\"text-muted\"},[_vm._v(\" Switch to \"),_c('i',[_vm._v(\"Calendar View\")]),_vm._v(\" to schedule using drag-and-drop, or click \"),_c('i',[_vm._v(\"Add Appointment\")]),_vm._v(\". \")]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, computed } from '@vue/composition-api'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\n\nexport default defineComponent({\n name: 'SquadScheduleInfo',\n props: {\n unscheduled: { type: Array as PropType, required: true },\n },\n setup(props) {\n const unscheduledTeamCount = computed(() => props.unscheduled.length)\n\n return { unscheduledTeamCount }\n },\n})\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!./SquadScheduleInfo.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!./SquadScheduleInfo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SquadScheduleInfo.vue?vue&type=template&id=17945553&\"\nimport script from \"./SquadScheduleInfo.vue?vue&type=script&lang=ts&\"\nexport * from \"./SquadScheduleInfo.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 { DataTableHeader } from 'vuetify/types'\nexport const headers: DataTableHeader[] = [\n { text: 'Game Name', value: 'title' },\n { text: 'Date', value: 'prettyDate' },\n { text: 'Time', value: 'prettyTime' },\n { text: 'Location', value: 'location' },\n { text: '', value: 'actions' },\n]\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport { namespace } from 'vuex-class'\nimport dayjs from 'dayjs'\nimport { cloneDeep } from 'lodash'\n\n/* components */\nimport Calendar from '@/elements/Calendar.vue'\nimport HorizontalTabs, { TabType } from '@/components/HorizontalTabs.vue'\nimport DivisionSelect from '@/components/DivisionSelect.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport ScheduleDragItem from '@/views/Programs/Scheduling/Squads/ScheduleDragItem.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport ToggleLinks from '@/elements/ToggleLinks.vue'\nimport PracticeModal from '@/views/Programs/Scheduling/Practices/PracticeModal.vue'\nimport SquadScheduleInfo from '@/views/Programs/Scheduling/Games/vues/SquadScheduleInfo.vue'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport DataTable from '@/elements/DataTable/DataTable.vue'\nimport EditBtn from '@/elements/DataTable/vue/EditBtn.vue'\nimport DeleteBtn from '@/elements/DataTable/vue/DeleteBtn.vue'\n\n/* models and utils */\nimport * as colors from '@/views/Programs/Scheduling/ext/colors'\nimport { getEmptyLeagueListItem, LeagueListItemSeed } from '@/lib/support/models/LeagueListItem/data'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueProgams2LeagueListItem } from '@/lib/support/models/LeagueListItem/LeaguePrograms2LeagueListItem'\nimport { League } from '@/GeneratedTypes/League'\nimport { DivisionGameInfo } from '@/GeneratedTypes/ListInfo/DivisionGameInfo'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { CalendarWeek } from '@/models/Calendar/CalendarWeek'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { getEmptyLeagueDivisionInfo } from '@/lib/support/models/LeagueDivisionInfo/data'\nimport { ScheduleGridData, scheduleSort } from '@/views/Programs/Scheduling/ext/helper'\nimport { headers } from '@/views/Programs/Scheduling/Squads/ext/headers'\nimport { DataTableSelection } from '@/models/DataTable/DataTableSelection'\n\nimport {\n isNullDate,\n SERVER_DATE_FORMAT,\n toDate,\n} from '@/lib/support/models/ListInfo/DivisionGameInfo/time_util'\nimport { UpdateEnlistedEventType } from '@/models/Scheduler'\nimport { FacilityEventEnum } from '@/lib/support/models/FacilityAvailability/types'\nimport { AvailabilityToScheduleBlocks } from '@/lib/support/models/ScheduleBlocks/AvailabilityToScheduleBlock'\nimport { FacilityEventInfo } from '@/GeneratedTypes/ListInfo/FacilityEventInfo'\nimport {\n getEmptyPracticeModalInfoType,\n PracticeModalInfoType,\n} from '@/models/Scheduling/PracticeModalInfoType'\nimport { CheerSquadGameAppointmentInfoModified } from '@/models/Appointments/CheerSquadGameAppointmentInfoModified'\n\nimport { CheerSquadGameAppointmentInfo } from '@/GeneratedTypes/ListInfo/CheerSquadGameAppointmentInfo'\nimport { getCoachNights, getEmptyDivisionTeamInfo } from '@/lib/support/models/ListInfo/DivisionTeamInfo/data'\nimport { eventid2id, id2eventid } from '@/views/Programs/Scheduling/ext/id_utils'\nimport { CalendarData } from '@/elements/Calendar/types'\n\n/** store **/\nimport store from '@/store'\nimport { getterNames as leagueGetters, namespace as leagueStoreName } from '@/store/leagues'\nimport {\n actionNames as facilitiesActions,\n getterNames as facilitiesGetters,\n namespace as facilitiesStoreName,\n} from '@/store/facilities'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport {\n actionNames as divisionActions,\n getterNames as divisionGetters,\n namespace as divisionNamespace,\n} from '@/store/divisions'\n\n/* plugin */\nimport isBetween from 'dayjs/plugin/isBetween'\nimport { CoachConflictTypeEnum } from '@/models/TeamManagement/CoachConflictTypeEnum'\n\nconst league = namespace(leagueStoreName)\nconst facilities = namespace(facilitiesStoreName)\nconst divisions = namespace(divisionNamespace)\n\nconst WEEK_IN_SECONDS = 7 * 24 * 3600 * 1000\nconst START_DAY = 0 //sunday\n\n@Component({\n components: {\n DataTable,\n DeleteBtn,\n EditBtn,\n ToggleLinks,\n ConfirmationModal,\n Alert,\n SelectInput,\n DivisionSelect,\n HorizontalTabs,\n Calendar,\n PracticeModal,\n SquadScheduleInfo,\n ScheduleDragItem,\n },\n methods: {\n getCoachNights,\n },\n data() {\n return { headers }\n },\n})\nexport default class SquadsSchedule extends Vue {\n /** getters */\n @league.Getter(leagueGetters.currentItem) league!: League\n @facilities.Getter(facilitiesGetters.items) facilities!: LeagueFacility[]\n @divisions.Getter(divisionGetters.allItems) divisionList!: (s: string) => LeagueDivisionInfo[]\n @divisions.Action(divisionActions.fetchAll) fetchAllDivisions!: ({\n upwardLeagueId,\n force,\n }: {\n upwardLeagueId: UpwardLeagueIDType\n force: boolean\n }) => Promise\n @facilities.Action(facilitiesActions.load)\n private readonly retrieveFacilities!: ({ id }: { id: string }) => LeagueFacility[] | null\n\n get teams() {\n return this.$store.direct.getters.scheduling.teams\n }\n\n get appointments() {\n return this.$store.direct.getters.scheduling.appointments\n }\n get events() {\n return this.$store.direct.getters.scheduling.events\n }\n get statusText() {\n return this.$store.direct.getters.scheduling.statusText\n }\n\n get duration(): number {\n if (this.division) return this.division.gameLength\n return 0\n }\n\n get coachConflictTypeEnum(): typeof CoachConflictTypeEnum {\n return CoachConflictTypeEnum\n }\n\n private readonly loadAppointments = store.dispatch.scheduling.loadAppointments\n private readonly removeAppointment = store.dispatch.scheduling.removeAppointment\n private readonly upsertAppointments = store.dispatch.scheduling.upsertAppointments\n private readonly loadTeams = store.dispatch.scheduling.loadTeams\n private readonly retrieveEvents = store.dispatch.scheduling.loadEvents\n private readonly clearAppointments = store.dispatch.scheduling.clearAppointments\n private viewtype = 'list' //alternate is calendar\n\n private loading = true\n private readonly alertType = AlertTypeEnum.NOTICE\n private currentSelectedFacility = ''\n range: CalendarWeek | null = null\n\n currentRange(r: CalendarWeek) {\n this.range = r\n }\n\n //** this is the epoch of the start of the week **/\n private week = 0\n divisionID = 0\n\n schedulingType = FacilityEventEnum.GAMES\n\n get gameDivisionList() {\n return this.divisionList(this.leagueID).filter((x) => x.typeProgramID == this.programID)\n }\n\n private async refreshEvents() {\n await this.retrieveEvents({ id: this.leagueID })\n }\n\n auto() {\n this.$router.push('../cheer/auto')\n }\n\n get division() {\n return this.gameDivisionList.find((x) => x.divisionID == this.divisionID) ?? getEmptyLeagueDivisionInfo()\n }\n\n private currentAppointment: PracticeModalInfoType = getEmptyPracticeModalInfoType()\n\n /************************\n * Grid Events\n ***********************/\n doubleClickGrid(e: DataTableSelection) {\n this.eventSelected({\n id: id2eventid(this.event, e.item.id.toString()),\n event: { end: new Date(), start: new Date(), title: '' },\n })\n }\n\n editItem(e: ScheduleGridData) {\n this.eventSelected({\n id: id2eventid(this.event, e.id.toString()),\n event: { end: new Date(), start: new Date(), title: '' },\n })\n }\n\n /************************\n * Calendar Events\n ***********************/\n\n eventSelected(e: UpdateEnlistedEventType) {\n const id = eventid2id(this.event, e.id) || '0'\n const game = this.appointments.find((x) => x.id == parseInt(id))\n if (game) {\n this.currentAppointment = this.CSGAI2PracticeModal(game)\n this.schedulingModalShowing = true\n }\n }\n\n // External event dragged onto the calendar\n eventDropped(ev: CalendarData) {\n const start = dayjs(ev.start)\n\n if (this.validDayOfWeek(start.day())) {\n const teamID = ev.id\n this.currentAppointment = cloneDeep(this.makeNewAppointment())\n this.currentAppointment.startDate = start.toDate()\n this.currentAppointment.endDate = dayjs(this.currentAppointment.startDate)\n .add(this.division.gameLength, 'm')\n .toDate()\n this.currentAppointment.teamID = Number(teamID)\n this.currentAppointment.lastDate = this.league.seasonEndDate\n this.schedulingModalShowing = true\n }\n }\n\n // event moved from within the calendar\n eventMoved(ev: CalendarData) {\n const start = dayjs(ev.start)\n const end = dayjs(ev.end)\n\n const id = eventid2id(this.event, ev.id) || '0'\n const game = this.appointments.find((x) => x.id == parseInt(id))\n if (game) {\n this.confirmAppointment({\n ...this.CSGAI2PracticeModal(game),\n endDate: end.toDate(),\n startDate: start.toDate(),\n lastDate: null,\n })\n }\n }\n\n eventClick(e: CalendarData) {\n this.eventSelected({\n id: e.id,\n event: { end: new Date(), start: new Date(), title: '' },\n })\n }\n\n validDayOfWeek(dayOfWeek: number) {\n return this.weekdays.some((d) => d == dayOfWeek)\n }\n /**********************\n * Calendar Options\n ********************/\n get weekdays(): number[] {\n const facility = this.facilities.find((x) => x.facilityID == this.currentFacilityID)\n\n if (facility) {\n return AvailabilityToScheduleBlocks(facility.availability ?? [], FacilityEventEnum.GAMES).map(\n (f) => f.day\n )\n }\n return [0, 1, 2, 3, 4, 5, 6]\n }\n\n /***\n * CSGAI2PracticeModal\n */\n CSGAI2PracticeModal(i: CheerSquadGameAppointmentInfo): PracticeModalInfoType {\n return {\n teamID: i.teamID,\n facilityID: i.facilityID,\n endDate: toDate(i.gameEnd) ?? new Date(),\n startDate: toDate(i.gameStart) ?? new Date(),\n lastDate: null,\n id: i.id,\n updateSeason: false,\n }\n }\n\n /***************************\n * Clear all appointements\n ***************************/\n teamToClear = 0\n\n get teamsListAndAllTeams() {\n return [{ ...getEmptyDivisionTeamInfo(), teamID: 0, teamName: 'All Squads' }, ...this.teamsList]\n }\n\n confirmClearAppointmentsShowing = false\n clickClearAppointments() {\n this.confirmClearAppointmentsShowing = true\n }\n async confirmClearAppointments(b: boolean) {\n if (b) {\n this.confirmClearAppointmentsShowing = false\n this.showPracticesCleared = true\n await this.clearAppointments({\n id: this.leagueID,\n\n teamIDs: this.teamToClear ? [this.teamToClear] : this.divisionTeams.map((x) => x.teamID),\n })\n }\n this.confirmClearAppointmentsShowing = false\n }\n\n showPracticesCleared = false\n\n /**********************\n * Add/Edit Modal\n **********************/\n schedulingModalShowing = false\n clickAddGame() {\n this.currentAppointment = cloneDeep(this.makeNewAppointment())\n this.schedulingModalShowing = true\n }\n\n /**\n * Returns a \"game round\" list for the drop down.\n * Apparently 1..n+1\n */\n get roundList() {\n const roundlimit = this.division.maxRoundNumber || 16\n return Array.from(Array(roundlimit), (x, i) => ({ id: i + 1, description: ` ${i + 1}` }))\n }\n\n private readonly round = 1 //default\n\n /** ID of currently selected facilty **/\n get currentFacilityID() {\n return parseInt(this.currentSelectedFacility)\n }\n get currentFacility() {\n return this.currentSelectedFacility\n }\n set currentFacility(facility: string) {\n this.currentSelectedFacility = facility\n }\n\n /***\n * Used to constrain the calendar\n *\n */\n\n get firstGameDate(): string {\n const gamedate = this.league.firstGameDate ?? new Date()\n return dayjs(gamedate).format('YYYY-MM-DD')\n }\n\n /***\n * This logic will change per Thomas\n */\n get endEpoch(): number {\n // 16 WEEKS LATER\n return this.startEpoch + WEEK_IN_SECONDS * 16\n }\n\n /***\n * Build a new game on add game click\n */\n makeNewAppointment(): PracticeModalInfoType {\n const start = dayjs(this.startEpoch).hour(8)\n const end = start.add(this.division.gameLength ?? 0, 'm')\n return {\n ...getEmptyPracticeModalInfoType(),\n facilityID: this.currentFacilityID,\n startDate: start.toDate(),\n endDate: end.toDate(),\n lastDate: null,\n }\n }\n\n get startEpoch(): number {\n const gamedate = this.league.firstGameDate ?? new Date()\n return dayjs(gamedate).day(START_DAY).hour(0).minute(0).millisecond(0).valueOf() //get epoch of sunday before game day\n }\n\n /**\n * Filtered by current division\n */\n get teamsList() {\n return this.teams.filter((t) => t.divisionID == this.divisionID)\n }\n get unscheduledTeams() {\n const start = this.range ? this.range.start : null\n const end = this.range ? this.range.end : null\n const scheduledSquads: string[] = [\n ...new Set(\n this.gridSchedule\n .filter((i) => {\n if (start && end) {\n return dayjs(i.start).isBetween(start, end, 'day', '[]')\n }\n return false\n })\n .map((s) => s.title)\n ),\n ]\n return this.teamsList\n .filter((t) => !scheduledSquads.some((tname) => tname == t.teamName))\n .map((t) => {\n return {\n name: t.teamName,\n start: null,\n end: null,\n class: '',\n id: t.teamID,\n headCoachName: t.headCoachName,\n nights: getCoachNights(t),\n color: colors.eventBgColor,\n textColor: colors.eventTextColor,\n division: t.divisionName,\n }\n })\n }\n\n /**\n * Returns all games that are scheduled for the active facility.\n * Appointment is grey and inactive if not meeting division criteria.\n */\n private get schedule(): CalendarData[] {\n return this.events\n .filter((x) => x.eventStart && x.eventEnd && this.meetsFacilityCriteria(x))\n .map((x) => ({\n start: dayjs(x.eventStart ?? '').format('YYYY-MM-DDTHH:mm'),\n end: dayjs(x.eventEnd ?? '').format('YYYY-MM-DDTHH:mm'),\n name: x.eventName || '',\n class: this.meetsDivisionCriteria(x) && this.meetsTypeCriteria(x) ? 'active' : 'inactive',\n id: id2eventid(this.event, x.eventID.toString()),\n division: x.divisionName ?? '',\n color: this.color(x, 'COLOR'),\n textColor: this.color(x, 'TEXT'),\n }))\n }\n\n private color(e: FacilityEventInfo, type: 'COLOR' | 'TEXT') {\n if (\n e.typeFacilityEventID == FacilityEventEnum.PRACTICES ||\n e.typeFacilityEventID == FacilityEventEnum.GAMES\n ) {\n return type == 'COLOR' ? colors.inactiveBgColor : colors.inactiveTextColor\n } else if (e.typeFacilityEventID == FacilityEventEnum.SQUADS) {\n if (this.meetsDivisionCriteria(e)) {\n return type == 'COLOR' ? colors.eventBgColor : colors.eventTextColor\n } else {\n return type == 'COLOR' ? colors.eventInactiveBgColor : colors.eventInactiveTextColor\n }\n }\n }\n\n private meetsFacilityCriteria(game: DivisionGameInfo | FacilityEventInfo) {\n return game?.facilityID == this.currentFacilityID\n }\n\n private meetsTypeCriteria(game: FacilityEventInfo) {\n return game.typeFacilityEventID == FacilityEventEnum.SQUADS\n }\n\n private meetsDivisionCriteria(game: DivisionGameInfo | FacilityEventInfo) {\n return game.divisionID == this.divisionID\n }\n\n teamFromID(teamID: number) {\n return this.teams.find((x) => x.teamID == teamID)\n }\n\n divisionFromID(divisionID: number) {\n return this.gameDivisionList.find((x) => x.divisionID == divisionID)\n }\n facilityFromID(id: number) {\n return this.facilities.find((x) => x.facilityID == id)\n }\n\n /**\n * Returns all games for the criteria.\n */\n private get gridSchedule(): ScheduleGridData[] {\n return this.appointments\n .filter((x) => !isNullDate(toDate(x.gameStart)) && x.divisionID === this.divisionID)\n .map((x: CheerSquadGameAppointmentInfo) => ({\n start: dayjs(x.gameStart ?? '').toDate(),\n end: dayjs(x.gameEnd ?? '').toDate(),\n prettyDate: dayjs(x.gameStart ?? '').format('MMM DD'),\n prettyTime: dayjs(x.gameStart ?? '').format('h:mmA') + ' - ' + dayjs(x.gameEnd ?? '').format('h:mmA'),\n title: `${this.teamFromID(x.teamID)?.teamName}`,\n id: x.id,\n location: this.facilityFromID(x.facilityID)?.facilityName ?? '',\n division: this.divisionFromID(x.divisionID)?.divisionName ?? '',\n round: 0,\n }))\n .sort(scheduleSort)\n }\n\n idTODelete = 0\n showDeleteConfirmed = false\n showDeleteConfirmation = false\n\n /***\n * This is called when delete is selected off the grid\n */\n\n async deleteConfirmed(b: boolean) {\n if (b) {\n await this.removeAppointment({ id: this.leagueID, appointmentID: this.idTODelete })\n this.showDeleteConfirmed = true\n }\n this.showDeleteConfirmation = false\n }\n\n deleteItem(r: ScheduleGridData) {\n this.idTODelete = r.id\n this.showDeleteConfirmation = true\n }\n\n async deleteAppointment(newelement: PracticeModalInfoType) {\n await this.removeAppointment({ id: this.leagueID, appointmentID: newelement.id })\n this.schedulingModalShowing = false\n this.showDeleteConfirmed = true\n }\n\n @Watch('endEpoch')\n changeInEndEpoch() {\n if (this.week > this.endEpoch) {\n this.week = dayjs(this.endEpoch).day(START_DAY).subtract(7, 'day').valueOf()\n }\n }\n\n @Watch('startEpoch')\n changeInStartEpoch() {\n if (this.week < this.startEpoch) {\n this.week = this.startEpoch\n }\n }\n\n @Watch('division')\n divisionUpdated() {\n this.refreshTeams()\n }\n\n @Watch('gameDivisionList', { immediate: true })\n gameDivisionListUpdated() {\n if (this.gameDivisionList.length) {\n this.divisionID = this.gameDivisionList[0].divisionID\n }\n }\n\n /**\n * Used after a modal is confirmed\n */\n async confirmAppointment(modalInfo: PracticeModalInfoType) {\n const newgames: CheerSquadGameAppointmentInfoModified[] = []\n\n if (!modalInfo.lastDate) {\n newgames.push({ ...this.basicAppointmentInfo(modalInfo) })\n } else {\n const apptlength = modalInfo.endDate.valueOf() - modalInfo.startDate.valueOf()\n if (modalInfo.lastDate || modalInfo.id === 0) {\n const lastDate = modalInfo.lastDate ?? modalInfo.endDate\n\n const activestart = dayjs(modalInfo.startDate)\n const eodLastDay = dayjs(lastDate).hour(24).minute(0).toDate().valueOf()\n for (let week = 0; activestart.add(week, 'week').toDate().valueOf() < eodLastDay; week++) {\n newgames.push({\n ...this.basicAppointmentInfo(modalInfo),\n\n gameStart: activestart.add(week, 'week').format(SERVER_DATE_FORMAT),\n gameEnd: activestart.add(week, 'week').add(apptlength, 'millisecond').format(SERVER_DATE_FORMAT),\n })\n }\n }\n }\n\n try {\n if (newgames.length > 0) {\n await this.upsertAppointments({ id: this.leagueID, appointments: newgames })\n }\n } catch (e) {\n throw e\n }\n\n this.schedulingModalShowing = false\n }\n\n basicAppointmentInfo(modalInfo: PracticeModalInfoType): CheerSquadGameAppointmentInfoModified {\n return {\n gameStart: dayjs(modalInfo.startDate).format(SERVER_DATE_FORMAT),\n gameEnd: dayjs(modalInfo.endDate).format(SERVER_DATE_FORMAT),\n divisionID: this.divisionID,\n facilityID: modalInfo.facilityID,\n facilityName: '',\n leagueID: this.league.id,\n id: modalInfo.id,\n teamID: modalInfo.teamID,\n typeProgramID: this.programID,\n }\n }\n\n event = FacilityEventEnum.GAMES\n\n /***\n * Restricts tabs to the facilities that have programming for the given event\n */\n get facilitiesAsTabs(): TabType[] {\n return (\n this.facilities\n .filter((y) => (y.availability || []).findIndex((z) => z.typeFacilityEventID == this.event) >= 0)\n .map((x) => ({\n id: x.facilityID.toString(),\n description: x.facilityName,\n })) ?? []\n )\n }\n\n private eventFacilities: LeagueFacility[] = []\n\n @Watch('facilities', { immediate: true })\n facilitiesUpdated() {\n this.eventFacilities = this.facilities.filter(\n (y) => (y.availability || []).findIndex((z) => z.typeFacilityEventID == this.event) >= 0\n )\n }\n\n refreshAppointments() {\n this.loadAppointments({ id: this.leagueID })\n }\n\n refreshLeagues() {\n this.fetchAllDivisions({ upwardLeagueId: this.leagueID, force: true })\n }\n\n get divisionTeams() {\n return this.teams.filter((x) => x.divisionID == this.divisionID)\n }\n\n /**\n * Get teams\n */\n private async refreshTeams() {\n if (this.programID) {\n await this.loadTeams({\n id: this.leagueID,\n\n programID: this.programID,\n })\n }\n }\n\n /**\n * Get teams\n */\n private async refreshFacilities() {\n await this.retrieveFacilities({ id: this.leagueID })\n }\n\n /***\n * Returns the structure to define the tabs based on loaded league\n */\n\n get programID() {\n if (this.league && this.league.programs && this.league.programs?.length > 1) {\n return this.league.programs[1].typeProgramID || ''\n }\n return ''\n }\n\n get leagueID() {\n return this.$route.params.id\n }\n\n public async mounted() {\n dayjs.extend(isBetween)\n await Promise.all([\n this.refreshLeagues(),\n this.refreshFacilities(),\n this.refreshAppointments(),\n this.refreshEvents(),\n ])\n await this.refreshTeams()\n this.loading = false\n }\n\n get tabs(): LeagueListItem {\n if (this.league && this.league.programs) {\n return LeagueProgams2LeagueListItem(this.league.programs)\n }\n return getEmptyLeagueListItem(new LeagueListItemSeed())\n }\n}\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!./SquadsSchedule.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!./SquadsSchedule.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SquadsSchedule.vue?vue&type=template&id=23c91662&scoped=true&\"\nimport script from \"./SquadsSchedule.vue?vue&type=script&lang=ts&\"\nexport * from \"./SquadsSchedule.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SquadsSchedule.vue?vue&type=style&index=0&id=23c91662&scoped=true&lang=scss&\"\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 \"23c91662\",\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('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('div',{staticClass:\"row pt-2\"},[_c('h5',{staticClass:\"col-md-12 col-lg-2 pb-0\"},[_vm._v(\"Special Events\")]),_c('div',{staticClass:\"col-md-12 col-lg-10 pb-0 move-right\"},[_c('button',{staticClass:\"btn btn-outline-dark mr-2\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.clickAddSpecialEvent}},[_c('i',{staticClass:\"fas fa-plus\"}),_vm._v(\" Add Special Event \")])])]),_c('div',{staticClass:\"row py-0\"},[_c('div',{staticClass:\"col-3 py-0\"},[_c('div',[_c('toggle-links',{attrs:{\"value-property-name\":\"id\",\"text-property-name\":\"text\",\"items-list\":[\n { id: 'calendar', text: 'Calendar View' },\n { id: 'list', text: 'List View' } ]},model:{value:(_vm.viewtype),callback:function ($$v) {_vm.viewtype=$$v},expression:\"viewtype\"}})],1)])]),_c('div',{staticClass:\"row\"},[(_vm.viewtype == 'calendar')?_c('div',{staticClass:\"col\"},[_c('SpecialEventCalendar',{attrs:{\"group-name\":\"specialEventScheduler\",\"weekdays\":_vm.weekdays,\"start-date\":_vm.calendarStartDate,\"events\":_vm.schedule},on:{\"click:event\":_vm.eventClick,\"click:date\":_vm.dateClick,\"click:more\":_vm.moreClick}})],1):_vm._e()]),(!_vm.loading && _vm.viewtype == 'list')?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('DataTable',{staticClass:\"elevation-1 data-table-zebra\",attrs:{\"dense\":\"\",\"headers\":_vm.headers,\"items\":_vm.gridSchedule,\"items-per-page\":15},on:{\"dblClick\":_vm.doubleClickGrid},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\n var item = ref.item;\nreturn [_c('EditBtn',{on:{\"click\":function($event){return _vm.editItem(item)}}}),_c('DeleteBtn',{on:{\"click\":function($event){return _vm.deleteItem(item)}}})]}}],null,false,77907056)})],1)]):_vm._e(),_c('special-event-modal',{attrs:{\"leaguePrograms\":_vm.programList,\"division-list\":_vm.leagueDivisionList,\"team-list\":_vm.teams,\"facility-list\":_vm.facilities,\"specialEvent\":_vm.currentSpecialEvent},on:{\"confirmed\":_vm.confirmSpecialEvent,\"deleted\":_vm.deleteSpecialEvent},model:{value:(_vm.schedulingModalShowing),callback:function ($$v) {_vm.schedulingModalShowing=$$v},expression:\"schedulingModalShowing\"}}),_c('confirmation-modal',{attrs:{\"is-small\":\"\",\"title\":\"Confirm Delete\",\"show\":_vm.showDeleteConfirmation},on:{\"onResponse\":_vm.deleteConfirmed}},[_vm._v(\" This action will delete the special event. Do you wish to continue? \")]),_c('alert',{attrs:{\"type\":_vm.alertType},model:{value:(_vm.showDeleteConfirmed),callback:function ($$v) {_vm.showDeleteConfirmed=$$v},expression:\"showDeleteConfirmed\"}},[_vm._v(\"Special Event Deleted\")]),_c('modal',{attrs:{\"title\":_vm.showMoreTitle,\"show-close\":true,\"is-small\":false},model:{value:(_vm.showMoreModalShowing),callback:function ($$v) {_vm.showMoreModalShowing=$$v},expression:\"showMoreModalShowing\"}},[_vm._t(\"default\",[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('DataTable',{staticClass:\"elevation-1 data-table-zebra\",attrs:{\"dense\":\"\",\"headers\":_vm.showMoreHeaders,\"items\":_vm.showMoreSchedule,\"items-per-page\":5},on:{\"dblClick\":_vm.doubleClickGrid},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\n var item = ref.item;\nreturn [_c('EditBtn',{on:{\"click\":function($event){return _vm.editItem(item)}}}),_c('DeleteBtn',{on:{\"click\":function($event){return _vm.deleteItem(item)}}})]}}])})],1)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function($event){_vm.showMoreModalShowing = false}}},[_vm._t(\"confirm\",[_vm._v(\"Close\")])],2)])],2)],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('div',{staticClass:\"bg-white d-flex\"},[_c('div',{staticStyle:{\"flex-grow\":\"1\"}},[_c('div',[_vm._t(\"header\")],2),_c('div',{staticClass:\"d-flex justify-content-between align-items-start border-top border-right border-left\"},[_c('div',{staticClass:\"d-flex mt-5\"},[_c('div',[_c('button',{staticClass:\"btn\",on:{\"click\":_vm.prevMonth}},[_c('i',{staticClass:\"fas fa-caret-left med\"})]),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.nextMonth}},[_c('i',{staticClass:\"fas fa-caret-right med\"})]),_c('span',{staticClass:\"pl-2\"},[_vm._v(_vm._s(_vm.calendarTitle))])])]),_c('CalendarOptions',{attrs:{\"daysToShow\":_vm.lWeekdays,\"showTime\":false},on:{\"update:daysToShow\":function($event){_vm.lWeekdays=$event},\"update:days-to-show\":function($event){_vm.lWeekdays=$event}}})],1),_c('Container',{staticClass:\"border-bottom\",staticStyle:{\"height\":\"60vh\",\"min-height\":\"38em\"},attrs:{\"group-name\":_vm.groupName,\"behaviour\":\"drop-zone\"}},[_c('VCalendar',{ref:\"thisCalendar\",staticClass:\"upw-daily-calendar\",attrs:{\"events\":_vm.lEvents,\"type\":_vm.DisplayType.MONTH,\"weekdays\":_vm.lWeekdays,\"max-days\":_vm.maxDays,\"start\":_vm.start,\"end\":_vm.end,\"event-color\":_vm.getEventColor,\"event-text-color\":_vm.getEventTextColor},on:{\"click:event\":_vm.eventClick,\"click:date\":_vm.dateClick,\"click:more\":_vm.moreClick,\"change\":_vm.monthChanged},scopedSlots:_vm._u([{key:\"interval\",fn:function(ref){\nvar date = ref.date;\nvar time = ref.time;\nvar weekday = ref.weekday;\nreturn [_c('div',{staticClass:\"v-calendar-daily__day-interval\",class:{ 'invalid-day': !_vm.allowed(weekday) }})]}},{key:\"event\",fn:function(ref){\nvar event = ref.event;\nvar timed = ref.timed;\nvar eventSummary = ref.eventSummary;\nreturn [_c('div',{staticClass:\"pl-1 upw-event\",class:event.class},[_c('div',[_c('div',{attrs:{\"title\":_vm.getEventHover(event)}},[(event.timed)?_c('span',{staticClass:\"font-weight-bold pr-2\"},[_vm._v(_vm._s(_vm.getEventTime(event)))]):_vm._e(),_vm._v(_vm._s(event.name)+\" \")])]),(event.division)?_c('div',{staticClass:\"pt-1\"},[_c('span',{staticClass:\"font-weight-bold font-italic\"},[_vm._v(_vm._s(event.division))])]):_vm._e()])]}}]),model:{value:(_vm.initialDate),callback:function ($$v) {_vm.initialDate=$$v},expression:\"initialDate\"}})],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\nimport { DisplayType } from '@/models/Calendar/enums'\nimport { defineComponent, PropType, ref, watch, computed } from '@vue/composition-api'\nimport { Container } from 'vue-smooth-dnd'\nimport dayjs from 'dayjs'\nimport { cloneDeep } from 'lodash'\n\nimport CalendarOptions from '@/elements/Calendar/CalendarOptions.vue'\n\nimport { ClickEvent, ClickDate } from '@/elements/Calendar/types'\nimport { SpecialEventCalendarData } from '@/views/Programs/Scheduling/SpecialEvents/ext/types'\nimport { programTypes } from '@/store/programTypes'\n\nexport type VCalenderType = Vue & { move: (amount: number) => void; title: string }\n\nexport default defineComponent({\n name: 'SpecialEventCalendar',\n components: { CalendarOptions, Container },\n props: {\n startDate: { type: String, required: false, default: () => dayjs().format('YYYY-MM-DD') },\n now: { type: String, required: false, default: () => dayjs().format('YYYY-MM-DD HH:mm:ss') },\n weekdays: { type: Array as PropType, required: false, default: () => [0, 1, 2, 3, 4, 5, 6] }, // checkbox of weekdays\n groupName: { type: String, required: true }, // used to link the calendar and matchup dnd containers\n events: {\n type: Array as PropType,\n required: false,\n default: () => [],\n },\n },\n setup(props, ctx) {\n const lWeekdays = ref([1])\n const lEvents = ref([])\n const start = ref('2022-01-02') // begining of the date range displayed by the calendar\n const end = ref('2022-01-08') // ending of the date range displayed by the calendar\n const allowableDays = ref([0])\n const calendarTitle = ref('')\n\n let initialDate = ref(null)\n const maxDays = computed(() => lWeekdays.value.length)\n\n function getEventTime(evt: SpecialEventCalendarData) {\n if (evt.timed) {\n return formatTime(evt.start)\n } else {\n return ''\n }\n }\n\n function prevMonth() {\n if (ctx.refs.thisCalendar) {\n ;(ctx.refs.thisCalendar as VCalenderType).move(-1)\n }\n }\n\n function nextMonth() {\n if (ctx.refs.thisCalendar) {\n ;(ctx.refs.thisCalendar as VCalenderType).move(1)\n }\n }\n\n function monthChanged() {\n calendarTitle.value = (ctx.refs.thisCalendar as VCalenderType).title\n }\n\n function getEventHover(evt: SpecialEventCalendarData) {\n let retval = evt.eventLabel\n\n if (evt.typeProgramID && evt.typeProgramID != 'NONE') {\n if (evt.divisionID > 0) {\n if (evt.teamID > 0) {\n retval = `${retval}\\n${evt.teamName} (${evt.divisionName}) `\n } else {\n retval = `${retval}\\n${evt.divisionName}`\n }\n } else {\n const programDesc =\n programTypes.state.items.find((p) => p.upwardTypeID == evt.typeProgramID)?.description ??\n evt.typeProgramID\n retval = `${retval}\\n${programDesc}`\n }\n }\n if (evt.facilityID > 0) {\n retval = `${retval}\\nLocation: ${evt.facilityName}`\n }\n if (evt.eventEnd) {\n retval = `${retval}\\nEnds at ${formatTime(evt.end)}`\n }\n return retval\n }\n\n function getEventColor(event: any) {\n return event.color ? event.color : '#0475aa'\n }\n function getEventTextColor(event: any) {\n return event.textColor ? event.textColor : '#000'\n }\n\n /***************************************\n ** DRAG-AND-DROP WITHIN CALENDAR *\n ***************************************/\n const eventDuration = ref(null) // event duration in minutes\n let startXY: { x: number | null; y: number | null } = { x: null, y: null } // x and y when the mouse first clicks an event\n let isAllowed = true // is the day the event is being dragged to allowed; zero based\n\n function eventClick(e: ClickEvent) {\n if (isAllowed) {\n ctx.emit('click:event', e.event)\n }\n\n clear()\n }\n\n function dateClick(e: ClickDate) {\n if (isAllowed) {\n ctx.emit('click:date', e)\n }\n\n clear()\n }\n\n function moreClick(e: ClickDate) {\n //click:more has same event args as ClickDate so share\n if (isAllowed) {\n ctx.emit('click:more', e)\n }\n\n clear()\n }\n\n function allowed(dayOfWeek: number) {\n isAllowed = allowableDays.value.some((d) => d == dayOfWeek)\n return isAllowed\n }\n\n function clear() {\n eventDuration.value = null\n startXY.x = null\n startXY.y = null\n isAllowed = true\n }\n\n function formatTime(dt: string) {\n return dayjs(dt).format('h:mma')\n }\n\n /************************\n ** Watchers *\n ************************/\n watch(\n () => props.weekdays,\n () => {\n allowableDays.value = props.weekdays\n lWeekdays.value = props.weekdays\n },\n { immediate: true }\n )\n watch(\n () => props.startDate,\n () => (initialDate.value = props.startDate),\n { immediate: true }\n )\n watch(\n () => props.events,\n () => (lEvents.value = cloneDeep(props.events)),\n { immediate: true }\n )\n return {\n initialDate,\n lWeekdays,\n maxDays,\n start,\n end,\n lEvents,\n formatTime,\n DisplayType,\n getEventColor,\n getEventTextColor,\n getEventTime,\n getEventHover,\n monthChanged,\n calendarTitle,\n eventClick,\n dateClick,\n moreClick,\n allowed,\n prevMonth,\n nextMonth,\n }\n },\n})\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!./SpecialEventCalendar.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!./SpecialEventCalendar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SpecialEventCalendar.vue?vue&type=template&id=79924b2e&scoped=true&\"\nimport script from \"./SpecialEventCalendar.vue?vue&type=script&lang=ts&\"\nexport * from \"./SpecialEventCalendar.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SpecialEventCalendar.vue?vue&type=style&index=0&id=79924b2e&scoped=true&lang=scss&\"\nimport style1 from \"./SpecialEventCalendar.vue?vue&type=style&index=1&lang=scss&\"\nimport style2 from \"./SpecialEventCalendar.vue?vue&type=style&index=2&id=79924b2e&scoped=true&lang=scss&\"\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 \"79924b2e\",\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 { VCalendar } from 'vuetify/lib/components/VCalendar';\ninstallComponents(component, {VCalendar})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{staticClass:\"practice_modal\",attrs:{\"title\":\"Special Event\",\"is-small\":false},model:{value:(_vm.isModalOpen),callback:function ($$v) {_vm.isModalOpen=$$v},expression:\"isModalOpen\"}},[_c('div',{staticClass:\"row\"},[(_vm.isNewSpecialEvent)?_c('div',{staticClass:\"col-12\"},[_vm._v(\" Schedule special events for the entire league, program, division, or team by choosing the date, time and location (optional). \")]):_vm._e(),_c('div',{staticClass:\"col-sm-6 col-md-6 pb-0\"},[_c('text-input',{staticClass:\"col-sm-6 col-md-3\",attrs:{\"label\":\"Event Name\",\"required\":\"\",\"maxlength\":64},model:{value:(_vm.internalSpecialEvent.eventLabel),callback:function ($$v) {_vm.$set(_vm.internalSpecialEvent, \"eventLabel\", $$v)},expression:\"internalSpecialEvent.eventLabel\"}})],1),_c('div',{staticClass:\"col-sm-6 col-md-6 pb-0\"},[_c('memo-input',{attrs:{\"cols\":40,\"rows\":4,\"label\":\"Event Description\",\"maxLength\":256},model:{value:(_vm.internalSpecialEvent.eventDescription),callback:function ($$v) {_vm.$set(_vm.internalSpecialEvent, \"eventDescription\", $$v)},expression:\"internalSpecialEvent.eventDescription\"}})],1),_c('div',{staticClass:\"col-sm-6 col-md-2 pb-0\"},[_c('date-input',{attrs:{\"label\":\"Date\"},model:{value:(_vm.day),callback:function ($$v) {_vm.day=$$v},expression:\"day\"}})],1),_c('div',{staticClass:\"col-sm-6 col-md-4 pb-0\"},[_c('div',{staticClass:\"row-md-auto mt-7\"},[_c('label',{staticClass:\"text-uppercase\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.allDayNoTime),expression:\"allDayNoTime\"}],attrs:{\"type\":\"checkbox\",\"value\":\"1\"},domProps:{\"checked\":Array.isArray(_vm.allDayNoTime)?_vm._i(_vm.allDayNoTime,\"1\")>-1:(_vm.allDayNoTime)},on:{\"change\":function($event){var $$a=_vm.allDayNoTime,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=\"1\",$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.allDayNoTime=$$a.concat([$$v]))}else{$$i>-1&&(_vm.allDayNoTime=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.allDayNoTime=$$c}}}}),_vm._v(\" All day event or time not applicable \")])])]),_c('div',{staticClass:\"col-sm-6 col-md-3 pb-0\"},[_c('TimePicker',{attrs:{\"label\":\"Start Time\",\"min\":\"00:00:\",\"max\":\"23:30\",\"enabled\":!_vm.allDayNoTime},model:{value:(_vm.startTime),callback:function ($$v) {_vm.startTime=$$v},expression:\"startTime\"}})],1),_c('div',{staticClass:\"col-sm-6 col-md-3 pb-0\"},[_c('TimePicker',{attrs:{\"label\":\"End Time\",\"min\":\"00:00:\",\"max\":\"23:30\",\"enabled\":!_vm.allDayNoTime},model:{value:(_vm.endTime),callback:function ($$v) {_vm.endTime=$$v},expression:\"endTime\"}})],1),_c('div',{staticClass:\"col-md-6 pb-0\"},[_c('select-input',{attrs:{\"label\":\"Program\",\"items-list\":_vm.programList,\"value-property-name\":\"upwardTypeID\",\"text-property-name\":\"description\",\"showBlankItem\":_vm.leaguePrograms.length > 1,\"blankItemText\":\"Both programs\",\"blankItemValue\":\"NONE\"},model:{value:(_vm.selectedTypeProgramID),callback:function ($$v) {_vm.selectedTypeProgramID=$$v},expression:\"selectedTypeProgramID\"}})],1),_c('div',{staticClass:\"col-md-6 pb-0\"},[_c('select-input',{attrs:{\"label\":\"Division\",\"items-list\":_vm.divisionListForProgram,\"value-property-name\":\"divisionID\",\"text-property-name\":\"divisionName\",\"showBlankItem\":true,\"blankItemText\":\"All Divisions\",\"blankItemValue\":\"0\"},model:{value:(_vm.internalSpecialEvent.divisionID),callback:function ($$v) {_vm.$set(_vm.internalSpecialEvent, \"divisionID\", $$v)},expression:\"internalSpecialEvent.divisionID\"}})],1),_c('div',{staticClass:\"col-md-6 pb-0\"},[_c('select-input',{attrs:{\"label\":\"Team\",\"items-list\":_vm.teamListForDivision,\"value-property-name\":\"teamID\",\"text-property-name\":\"teamName\",\"showBlankItem\":true,\"blankItemText\":\"All Teams\",\"blankItemValue\":\"0\"},model:{value:(_vm.internalSpecialEvent.teamID),callback:function ($$v) {_vm.$set(_vm.internalSpecialEvent, \"teamID\", $$v)},expression:\"internalSpecialEvent.teamID\"}})],1),_c('div',{staticClass:\"col-md-6 pb-0\"},[_c('select-input',{attrs:{\"label\":\"Location\",\"items-list\":_vm.facilityList,\"value-property-name\":\"facilityID\",\"text-property-name\":\"facilityName\",\"showBlankItem\":true,\"blankItemText\":\"No Specific Location\",\"blankItemValue\":\"0\"},model:{value:(_vm.internalSpecialEvent.facilityID),callback:function ($$v) {_vm.$set(_vm.internalSpecialEvent, \"facilityID\", $$v)},expression:\"internalSpecialEvent.facilityID\"}})],1)]),_c('template',{slot:\"footer\"},[_c('div',{staticClass:\"row\"},[(_vm.internalSpecialEvent.eventID !== 0 && !_vm.loading)?_c('div',{staticClass:\"pb-2 col-auto\"},[_c('button',{staticClass:\"float-right ml-2 btn btn-danger\",class:{ disabled: !_vm.shouldSubmitShow },attrs:{\"disabled\":!_vm.shouldSubmitShow},on:{\"click\":_vm.deleted}},[_c('i',{staticClass:\"fa fa-times\"}),_vm._v(\" Delete Special Event \")])]):_vm._e(),_c('div',{staticClass:\"pb-2 col text-right\"},[(_vm.loading)?_c('loading'):[_c('button',{staticClass:\"ml-2 btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"ml-2 btn btn-success\",class:{ disabled: !_vm.shouldSubmitShow },attrs:{\"disabled\":!_vm.shouldSubmitShow},on:{\"click\":_vm.confirmed}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Schedule \")])]],2)])])],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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\nimport { getProps, useModalValue } from '@/composables/ModalValue'\nimport Modal from '@/components/Modal.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport TimePicker from '@/elements/TimePicker2.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\n\nimport { LeagueProgramInfo } from '@/GeneratedTypes/ListInfo/LeagueProgramInfo'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { DivisionTeamInfo } from '@/GeneratedTypes/ListInfo/DivisionTeamInfo'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport { LeagueSpecialEvent } from '@/GeneratedTypes/LeagueSpecialEvent'\n\nimport dayjs from 'dayjs'\nimport { timeStringSplit } from '@/lib/support/utilities/time/time'\nimport Loading from '@/elements/Loading.vue'\nimport { cloneDeep } from 'lodash'\nimport { programTypes } from '@/store/programTypes'\n\nexport default defineComponent({\n name: 'SpecialEventModal',\n components: { Loading, TimePicker, DateInput, SelectInput, Modal, TextInput, MemoInput },\n props: {\n leaguePrograms: { type: Array as PropType, required: true },\n divisionList: { type: Array as PropType, required: true },\n teamList: { type: Array as PropType, default: () => [] },\n facilityList: { type: Array as PropType, default: () => [] },\n specialEvent: { type: Object as PropType, required: true },\n loading: { type: Boolean, default: () => false },\n ...getProps(),\n },\n setup(props, ctx) {\n const { isModalOpen, closeModal } = useModalValue(props, ctx)\n const internalSpecialEvent = ref({ ...props.specialEvent })\n const selectedTypeProgramID = ref('NONE')\n const day = ref(new Date())\n const startTime = ref('')\n const endTime = ref('')\n const allDayNoTime = ref(true)\n\n const programList = computed(() => {\n if (props.leaguePrograms.length == 1) {\n selectedTypeProgramID.value = props.leaguePrograms[0].typeProgramID!\n }\n return programTypes.state.items.filter((p) =>\n props.leaguePrograms.find((x) => p.upwardTypeID == x.typeProgramID)\n )\n })\n\n const divisionListForProgram = computed(() =>\n props.divisionList.filter((x) => x.typeProgramID == selectedTypeProgramID.value)\n )\n\n const teamListForDivision = computed(() => {\n return props.teamList.filter(\n (x) =>\n x.typeProgramID == selectedTypeProgramID.value &&\n x.divisionID == internalSpecialEvent.value.divisionID\n )\n })\n\n const isNewSpecialEvent = computed(() => internalSpecialEvent.value.eventID === 0)\n\n watch(\n () => divisionListForProgram.value,\n () => {\n const div = divisionListForProgram.value.find(\n (x) => x.divisionID == internalSpecialEvent.value.divisionID\n )\n if (!div) {\n internalSpecialEvent.value.divisionID = 0\n internalSpecialEvent.value.teamID = 0\n }\n }\n )\n\n watch(\n () => teamListForDivision.value,\n () => {\n const team = teamListForDivision.value.find((x) => x.teamID == internalSpecialEvent.value.teamID)\n if (!team) {\n internalSpecialEvent.value.teamID = 0\n }\n }\n )\n\n watch(\n () => props.specialEvent,\n () => {\n internalSpecialEvent.value = cloneDeep(props.specialEvent)\n const startJS = dayjs(internalSpecialEvent.value.eventStart ?? '')\n const endJS = dayjs(internalSpecialEvent.value.eventEnd ?? '')\n\n day.value = startJS.toDate()\n if (startJS.startOf('day').isSame(startJS) && internalSpecialEvent.value.eventEnd == null) {\n startTime.value = ''\n endTime.value = ''\n allDayNoTime.value = true\n } else {\n allDayNoTime.value = isNewSpecialEvent.value\n if (internalSpecialEvent.value.eventEnd != null) {\n startTime.value = startJS.format('HH:mm')\n endTime.value = endJS.format('HH:mm')\n } else {\n startTime.value = startJS.format('HH:mm')\n endTime.value = ''\n }\n }\n\n if (props.leaguePrograms.length == 1) {\n selectedTypeProgramID.value = props.leaguePrograms[0].typeProgramID!\n } else {\n selectedTypeProgramID.value = internalSpecialEvent.value.typeProgramID ?? 'NONE'\n }\n },\n { immediate: true, deep: true }\n )\n\n const shouldSubmitShow = computed(() => {\n return (\n internalSpecialEvent.value.eventLabel &&\n day.value &&\n (allDayNoTime.value || (startTime.value && (!endTime.value || endTime.value > startTime.value)))\n )\n })\n\n /**\n * Caller will need to close the box.\n */\n function confirmed() {\n //deal with type program id\n internalSpecialEvent.value.typeProgramID = selectedTypeProgramID.value\n\n if (props.leaguePrograms.length <= 1) {\n if (internalSpecialEvent.value.divisionID == 0) {\n //if this is a singular program league and there is no division, then unset the program since we set it above\n internalSpecialEvent.value.typeProgramID = 'NONE'\n }\n }\n\n //deal with event start/end\n if (allDayNoTime.value) {\n internalSpecialEvent.value.eventStart = dayjs(day.value).hour(0).minute(0).toDate()\n internalSpecialEvent.value.eventEnd = null\n } else {\n const start = timeStringSplit(startTime.value)\n internalSpecialEvent.value.eventStart = dayjs(day.value).hour(start[0]).minute(start[1]).toDate()\n if (endTime.value) {\n const end = timeStringSplit(endTime.value)\n internalSpecialEvent.value.eventEnd = dayjs(day.value).hour(end[0]).minute(end[1]).toDate()\n } else {\n internalSpecialEvent.value.eventEnd = null\n }\n }\n\n if (internalSpecialEvent.value.typeProgramID == 'NONE') {\n internalSpecialEvent.value.divisionID = 0\n }\n\n if (internalSpecialEvent.value.divisionID == 0) {\n internalSpecialEvent.value.teamID = 0\n }\n\n ctx.emit('confirmed', cloneDeep(internalSpecialEvent.value))\n }\n\n /**\n * Caller will need to close the box.\n */\n function deleted() {\n ctx.emit('deleted', cloneDeep(internalSpecialEvent.value))\n }\n\n function cancel() {\n closeModal()\n }\n\n return {\n isModalOpen,\n dayjs,\n isNewSpecialEvent,\n internalSpecialEvent,\n day,\n allDayNoTime,\n startTime,\n endTime,\n selectedTypeProgramID,\n programList,\n divisionListForProgram,\n teamListForDivision,\n shouldSubmitShow,\n deleted,\n cancel,\n confirmed,\n }\n },\n})\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!./SpecialEventModal.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!./SpecialEventModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SpecialEventModal.vue?vue&type=template&id=97ae38d0&\"\nimport script from \"./SpecialEventModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./SpecialEventModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SpecialEventModal.vue?vue&type=style&index=0&lang=scss&scopped=true&\"\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","export const genericEventBgColor = '#76FF03'\nexport const genericEventTextColor = '#000000'\nexport const teamEventBgColor = '#0575AA'\nexport const teamEventTextColor = '#FFFFFF'\nexport const divisionEventBgColor = '#005B81'\nexport const divisionEventTextColor = '#FFFFFF'\nexport const programEventBgColor = '#FFFF00'\nexport const programEventTextColor = '#000000'\n","import { DataTableHeader } from 'vuetify/types'\nexport const headers: DataTableHeader[] = [\n { text: 'Event', value: 'eventLabel' },\n { text: 'Date', value: 'prettyDate' },\n { text: 'Time', value: 'prettyTime' },\n { text: 'Location', value: 'facilityName' },\n { text: 'Program', value: 'prettyProgramName' },\n { text: 'Division', value: 'divisionName' },\n { text: 'Team', value: 'teamName' },\n { text: '', value: 'actions' },\n]\n\nexport const showMoreHeaders: DataTableHeader[] = [\n { text: 'Event', value: 'eventLabel' },\n { text: 'Time', value: 'prettyTime' },\n { text: 'Location', value: 'facilityName' },\n { text: 'Program', value: 'prettyProgramName' },\n { text: 'Division', value: 'divisionName' },\n { text: 'Team', value: 'teamName' },\n { text: '', value: 'actions' },\n]\n","import { LeagueSpecialEvent } from '@/GeneratedTypes/LeagueSpecialEvent'\nimport { LeagueSpecialEventInfo } from '@/GeneratedTypes/ListInfo/LeagueSpecialEventInfo'\n\nexport function getEmptyLeagueSpecialEvent(): LeagueSpecialEvent {\n return {\n leagueID: 0,\n eventID: 0,\n typeProgramID: 'NONE',\n divisionID: 0,\n teamID: 0,\n facilityID: 0,\n eventStart: null,\n eventEnd: null,\n eventLabel: '',\n eventDescription: '',\n }\n}\n\nexport function getLSEfromLSEInfo(lseInfo: LeagueSpecialEventInfo): LeagueSpecialEvent {\n return {\n leagueID: lseInfo.leagueID,\n eventID: lseInfo.eventID,\n typeProgramID: lseInfo.typeProgramID,\n divisionID: lseInfo.divisionID,\n teamID: lseInfo.teamID,\n facilityID: lseInfo.facilityID,\n eventStart: lseInfo.eventStart,\n eventEnd: lseInfo.eventEnd,\n eventLabel: lseInfo.eventLabel ?? '',\n eventDescription: lseInfo.eventDescription,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue } from 'vue-property-decorator'\nimport { namespace } from 'vuex-class'\nimport dayjs from 'dayjs'\nimport { cloneDeep } from 'lodash'\n\n/* components */\nimport SpecialEventCalendar from '@/views/Programs/Scheduling/SpecialEvents/SpecialEventCalendar.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport ToggleLinks from '@/elements/ToggleLinks.vue'\nimport SpecialEventModal from '@/views/Programs/Scheduling/SpecialEvents/SpecialEventModal.vue'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport DataTable from '@/elements/DataTable/DataTable.vue'\nimport EditBtn from '@/elements/DataTable/vue/EditBtn.vue'\nimport DeleteBtn from '@/elements/DataTable/vue/DeleteBtn.vue'\nimport Modal from '@/components/Modal.vue'\n\n/* models and utils */\nimport * as colors from '@/views/Programs/Scheduling/SpecialEvents/ext/colors'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { getEmptyLeagueListItem, LeagueListItemSeed } from '@/lib/support/models/LeagueListItem/data'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { headers, showMoreHeaders } from '@/views/Programs/Scheduling/SpecialEvents/ext/headers'\nimport { SpecialEventGridData } from '@/views/Programs/Scheduling/SpecialEvents/ext/types'\nimport { DataTableSelection } from '@/models/DataTable/DataTableSelection'\n\nimport { LeagueSpecialEventInfo } from '@/GeneratedTypes/ListInfo/LeagueSpecialEventInfo'\nimport { LeagueSpecialEvent } from '@/GeneratedTypes/LeagueSpecialEvent'\nimport { getEmptyLeagueSpecialEvent, getLSEfromLSEInfo } from '@/lib/support/models/LeagueSpecialEvent/data'\nimport { SpecialEventCalendarData } from '@/views/Programs/Scheduling/SpecialEvents/ext/types'\nimport { ClickDate } from '@/elements/Calendar/types'\n\n/** store **/\nimport store from '@/store'\nimport {\n actionNames as facilitiesActions,\n getterNames as facilitiesGetters,\n namespace as facilitiesStoreName,\n} from '@/store/facilities'\nimport { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\nimport {\n actionNames as divisionActions,\n getterNames as divisionGetters,\n namespace as divisionNamespace,\n} from '@/store/divisions'\nimport { programTypes } from '@/store/programTypes'\n\nimport programsClient from '@/clients/programsClient'\n\nconst facilities = namespace(facilitiesStoreName)\nconst divisions = namespace(divisionNamespace)\n\nconst START_DAY = 0 //sunday\n\n@Component({\n components: {\n DataTable,\n DeleteBtn,\n EditBtn,\n ToggleLinks,\n ConfirmationModal,\n Alert,\n SelectInput,\n SpecialEventCalendar,\n SpecialEventModal,\n Modal,\n },\n data() {\n return { headers, showMoreHeaders }\n },\n})\nexport default class SpecialEventSchedule extends Vue {\n /** getters */\n @facilities.Getter(facilitiesGetters.items) facilities!: LeagueFacility[]\n @divisions.Getter(divisionGetters.allItems) divisionList!: (s: string) => LeagueDivisionInfo[]\n @divisions.Action(divisionActions.fetchAll) fetchAllDivisions!: ({\n upwardLeagueId,\n force,\n }: {\n upwardLeagueId: UpwardLeagueIDType\n force: boolean\n }) => Promise\n @facilities.Action(facilitiesActions.load)\n private readonly retrieveFacilities!: ({ id }: { id: string }) => LeagueFacility[] | null\n\n get teams() {\n return this.$store.direct.getters.teams.teams\n }\n\n get specialEvents() {\n return this.$store.direct.getters.scheduling.specialEvents\n }\n\n get statusText() {\n return this.$store.direct.getters.scheduling.statusText\n }\n\n private readonly loadSpecialEvents = store.dispatch.scheduling.loadSpecialEvents\n private readonly upsertSpecialEvent = store.dispatch.scheduling.upsertSpecialEvent\n private readonly removeSpecialEvent = store.dispatch.scheduling.removeSpecialEvent\n private readonly fetchTeams = store.dispatch.teams.fetchTeams\n private viewtype = 'list' //alternate is calendar\n\n private league: LeagueListItem = {} as LeagueListItem\n\n private loading = true\n\n private showMoreModalShowing = false\n private showMoreTitle = ''\n private showMoreSchedule: SpecialEventGridData[] = []\n\n private readonly alertType = AlertTypeEnum.NOTICE\n\n get leagueDivisionList() {\n return this.divisionList(this.leagueID)\n }\n\n get programList() {\n return this.league.myLeagueInfo?.programs ?? []\n }\n\n private currentSpecialEvent: LeagueSpecialEvent = getEmptyLeagueSpecialEvent()\n\n /************************\n * Grid Events\n ***********************/\n doubleClickGrid(e: DataTableSelection) {\n this.editItem(e.item)\n }\n\n editItem(e: SpecialEventGridData | SpecialEventCalendarData) {\n this.currentSpecialEvent = getLSEfromLSEInfo(e)\n this.showMoreModalShowing = false\n this.schedulingModalShowing = true\n }\n\n /************************\n * Calendar Events\n ***********************/\n eventClick(e: SpecialEventCalendarData) {\n this.editItem(e)\n }\n\n dateClick(e: ClickDate) {\n this.currentSpecialEvent = cloneDeep(this.makeNewSpecialEvent())\n this.currentSpecialEvent.eventStart = dayjs(e.date).toDate()\n this.schedulingModalShowing = true\n }\n\n moreClick(e: ClickDate) {\n const startDayJS = dayjs(e.date)\n this.showMoreTitle = `Special Events for ${startDayJS.format('MMM D YYYY')}`\n this.showMoreSchedule = this.gridSchedule.filter((x) =>\n dayjs(x.eventStart ?? '').isSame(startDayJS, 'day')\n )\n this.showMoreModalShowing = true\n }\n\n /**********************\n * Calendar Options\n ********************/\n get weekdays(): number[] {\n return [0, 1, 2, 3, 4, 5, 6] //just return them all for special events\n }\n\n /**********************\n * Add/Edit Modal\n **********************/\n schedulingModalShowing = false\n clickAddSpecialEvent() {\n this.currentSpecialEvent = cloneDeep(this.makeNewSpecialEvent())\n this.schedulingModalShowing = true\n }\n\n /***\n * Used to constrain the calendar\n *\n */\n\n get calendarStartDate(): string {\n if (this.specialEvents.length > 0) {\n return dayjs(this.specialEvents[0].eventStart ?? new Date()).format('YYYY-MM-DD')\n } else {\n return this.firstEvalDate\n }\n }\n\n get firstGameDate(): string {\n const gamedate = this.league.myLeagueInfo?.firstGameDate ?? new Date()\n return dayjs(gamedate).format('YYYY-MM-DD')\n }\n\n get firstEvalDate(): string {\n const evalDate = this.league.myLeagueInfo?.firstEvalDate ?? new Date()\n return dayjs(evalDate).format('YYYY-MM-DD')\n }\n\n get seasonEndDate(): string {\n const sed = this.league.myLeagueInfo?.seasonEndDate ?? new Date()\n return dayjs(sed).format('YYYY-MM-DD')\n }\n\n makeNewSpecialEvent(): LeagueSpecialEvent {\n const start = dayjs(this.startEpoch).hour(0)\n return {\n ...getEmptyLeagueSpecialEvent(),\n leagueID: this.league.leagueID,\n eventStart: start.toDate(),\n }\n }\n\n get startEpoch(): number {\n const gamedate = this.league.myLeagueInfo?.firstGameDate ?? new Date()\n return dayjs(gamedate).day(START_DAY).hour(0).minute(0).millisecond(0).valueOf() //get epoch of sunday before game day\n }\n\n private get schedule(): SpecialEventCalendarData[] {\n return this.specialEvents.map((x) => ({\n ...x,\n name: x.eventLabel ?? '',\n start: dayjs(x.eventStart ?? '').format('YYYY-MM-DDTHH:mm'),\n end: x.eventEnd ? dayjs(x.eventEnd).format('YYYY-MM-DDTHH:mm') : '',\n timed: !(\n dayjs(x.eventStart ?? '').isSame(dayjs(x.eventStart ?? '').startOf('day')) && x.eventEnd == null\n ),\n class: 'active',\n color: this.getEventColor(x, 'COLOR'),\n textColor: this.getEventColor(x, 'TEXT'),\n }))\n }\n\n private getEventColor(evt: LeagueSpecialEventInfo, type: 'COLOR' | 'TEXT'): string {\n let retval = type == 'COLOR' ? colors.genericEventBgColor : colors.genericEventTextColor\n\n if (evt.typeProgramID && evt.typeProgramID != 'NONE') {\n if (evt.divisionID > 0) {\n if (evt.teamID > 0) {\n retval = type == 'COLOR' ? colors.teamEventBgColor : colors.teamEventTextColor\n } else {\n retval = type == 'COLOR' ? colors.divisionEventBgColor : colors.divisionEventTextColor\n }\n } else {\n retval = type == 'COLOR' ? colors.programEventBgColor : colors.programEventTextColor\n }\n }\n return retval\n }\n\n private get gridSchedule(): SpecialEventGridData[] {\n return this.specialEvents.map((x: LeagueSpecialEventInfo) => ({\n ...x,\n prettyDate: dayjs(x.eventStart ?? '').format('MMM DD'),\n prettyTime: this.getPrettyTime(x.eventStart!, x.eventEnd),\n prettyProgramName:\n x.typeProgramID == 'NONE'\n ? null\n : programTypes.state.items.find((p) => p.upwardTypeID == x.typeProgramID)?.description ??\n x.typeProgramID,\n }))\n }\n\n private getPrettyTime(evtStart: Date, evtEnd: Date | null): string {\n const startJS = dayjs(evtStart)\n const endJS = dayjs(evtEnd ?? '')\n if (startJS.startOf('day').isSame(startJS) && evtEnd == null) {\n return ''\n } else {\n if (evtEnd != null) {\n return startJS.format('h:mmA') + ' - ' + endJS.format('h:mmA')\n } else {\n return startJS.format('h:mmA')\n }\n }\n }\n\n idTODelete = 0\n showDeleteConfirmed = false\n showDeleteConfirmation = false\n\n /***\n * This is called when delete is selected off the grid\n */\n\n async deleteConfirmed(b: boolean) {\n if (b) {\n await this.removeSpecialEvent({ id: this.leagueID, eventID: this.idTODelete })\n this.showDeleteConfirmed = true\n }\n this.showDeleteConfirmation = false\n }\n\n deleteItem(r: SpecialEventGridData) {\n this.idTODelete = r.eventID\n this.showMoreModalShowing = false\n this.showDeleteConfirmation = true\n }\n\n async deleteSpecialEvent(evt: LeagueSpecialEvent) {\n await this.removeSpecialEvent({ id: this.leagueID, eventID: evt.eventID })\n this.schedulingModalShowing = false\n this.showDeleteConfirmed = true\n }\n\n async confirmSpecialEvent(evt: LeagueSpecialEvent) {\n await this.upsertSpecialEvent({ id: this.leagueID, specialEvent: evt })\n this.schedulingModalShowing = false\n }\n\n refreshSpecialEvents() {\n this.loadSpecialEvents({ id: this.leagueID })\n }\n\n refreshLeagues() {\n this.fetchAllDivisions({ upwardLeagueId: this.leagueID, force: true })\n }\n\n /**\n * Get teams\n */\n private async refreshTeams() {\n await this.fetchTeams({ upwId: this.leagueID })\n }\n\n /**\n * Get facilities\n */\n private async refreshFacilities() {\n await this.retrieveFacilities({ id: this.leagueID })\n }\n\n /***\n * Returns the structure to define the tabs based on loaded league\n */\n\n get programID() {\n if (\n this.league &&\n this.league.myLeagueInfo &&\n this.league.myLeagueInfo.programs &&\n this.league.myLeagueInfo.programs?.length > 1\n ) {\n return this.league.myLeagueInfo.programs[1].typeProgramID || ''\n }\n return ''\n }\n\n get leagueID() {\n return this.$route.params.id\n }\n\n public async mounted() {\n store.dispatch.programTypes.fetchAll(false) //go ahead and cache these up\n this.league =\n (await programsClient.retrieve(this.leagueID)) ?? getEmptyLeagueListItem(new LeagueListItemSeed())\n await Promise.all([\n this.refreshLeagues(),\n this.refreshFacilities(),\n this.refreshSpecialEvents(),\n this.refreshTeams(),\n ])\n this.loading = false\n }\n}\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!./SpecialEventSchedule.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!./SpecialEventSchedule.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SpecialEventSchedule.vue?vue&type=template&id=0ac496bb&scoped=true&\"\nimport script from \"./SpecialEventSchedule.vue?vue&type=script&lang=ts&\"\nexport * from \"./SpecialEventSchedule.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SpecialEventSchedule.vue?vue&type=style&index=0&id=0ac496bb&scoped=true&lang=scss&\"\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 \"0ac496bb\",\n null\n \n)\n\nexport default component.exports","import { RouteConfig } from 'vue-router'\nimport Scheduling from '@/views/Programs/Scheduling/Index.vue'\nimport Facilities from '@/views/Programs/Scheduling/Facilities/Facilities.vue'\n\nimport Practices from '@/views/Programs/Scheduling/Practices.vue'\nimport GameSchedule from '@/views/Programs/Scheduling/Games/GameSchedule.vue'\nimport Games from '@/views/Programs/Scheduling/Games/Games.vue'\nimport AutomaticScheduling from '@/views/Programs/Scheduling/Games/AutomaticScheduling.vue'\nimport Squads from '@/views/Programs/Scheduling/Squads/Squads.vue'\nimport SquadsAutomaticScheduling from '@/views/Programs/Scheduling/Squads/SquadsAutomaticScheduling.vue'\nimport SquadsSchedule from '@/views/Programs/Scheduling/Squads/SquadsSchedule.vue'\nimport SpecialEventSchedule from '@/views/Programs/Scheduling/SpecialEvents/SpecialEventSchedule.vue'\n\nimport { idExpression } from '@/lib/support/router/idHelper'\n\n// const baseName = 'Scheduling'\n\nexport default [\n {\n path: 'scheduling',\n component: Scheduling,\n children: [\n {\n path: '/',\n redirect: `/programs/league/${idExpression}/scheduling/facilities`,\n },\n {\n path: 'facilities',\n component: Facilities,\n },\n {\n path: 'games/',\n component: Games,\n },\n {\n path: 'auto/',\n component: AutomaticScheduling,\n },\n {\n path: 'auto/:divisionID',\n component: AutomaticScheduling,\n },\n {\n path: 'finalize/',\n component: AutomaticScheduling,\n },\n {\n path: 'cheer',\n component: Squads,\n },\n {\n path: 'cheer/finalize',\n component: SquadsAutomaticScheduling,\n },\n {\n path: 'cheer/auto',\n component: SquadsAutomaticScheduling,\n },\n {\n path: 'cheer/auto:divisionID',\n component: SquadsAutomaticScheduling,\n },\n {\n path: 'manual/',\n component: GameSchedule,\n },\n {\n path: 'manual/:divisionID',\n component: GameSchedule,\n },\n {\n path: 'cheer/manual',\n component: SquadsSchedule,\n },\n {\n path: 'cheer/manual/:divisionID',\n component: SquadsSchedule,\n },\n // works for both cheer and non-cheer\n {\n path: 'practices/:program?',\n component: Practices,\n },\n {\n path: 'specialEvents',\n component: SpecialEventSchedule,\n },\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex flex-row flex-grow-1 bg-light-2\"},[_c('div',{staticClass:\"vertical-nav-tabs tree-container\"},[_c('v-treeview',{attrs:{\"active\":_vm.selectedReport,\"hoverable\":\"\",\"activatable\":\"\",\"items\":_vm.reports,\"item-key\":\"url\",\"open-on-click\":\"\",\"open\":_vm.openNode},on:{\"update:active\":function($event){_vm.selectedReport=$event}}})],1),_c('div',{staticClass:\"bg-white flex-grow-1 p-4\"},[_c('router-view')],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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport store from '@/store'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\n\nexport default defineComponent({\n name: 'Reports',\n components: {\n VerticalTabs,\n },\n setup(props, ctx) {\n const id = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n const isLeague = computed(\n () => store.getters.leagueAbstraction.programType == UpwardOpportunityTypes.LEAGUE\n )\n const isUpwardSelect = computed(() => store.getters.leagueAbstraction.isUpwardSelect)\n\n const selectedReport = ref([])\n const openNode = ref([])\n\n const baseRoute = computed(() => {\n if (isCamp.value) {\n return `/programs/camp/${id.value}/reports`\n }\n return `/programs/league/${id.value}/reports`\n })\n\n const evaluationText = 'Evaluations'\n const scheduleText = 'Schedules'\n const participantText = 'Participants / Teams'\n //const churchAffiliationText = 'Church Affiliation'\n //const volunteerText = 'Volunteers'\n const financialText = 'Financial'\n const communicationText = 'Communication'\n const excelText = 'Excel Reports'\n\n const excelReports = computed(() => `${baseRoute.value}/excel`)\n const evaluationReports = computed(() => `${baseRoute.value}/evaluations`)\n const scheduleReports = computed(() => `${baseRoute.value}/schedule`)\n const participantReports = computed(() => `${baseRoute.value}/participant`)\n const churchAffiliationReports = computed(() => `${baseRoute.value}/churchAffiliation`)\n const volunteerReports = computed(() => `${baseRoute.value}/volunteer`)\n const financialReports = computed(() => `${baseRoute.value}/financial`)\n const communicationReports = computed(() => `${baseRoute.value}/communication`)\n const webReports = computed(() => `${baseRoute.value}/web`)\n const dynamicReports = computed(() => `${baseRoute.value}/dynamic`)\n\n watch(\n () => selectedReport.value,\n (selectedReport: any[]) => {\n if (\n selectedReport &&\n selectedReport.length == 1 &&\n selectedReport[0] !== evaluationReports.value &&\n selectedReport[0] !== scheduleReports.value &&\n selectedReport[0] !== participantReports.value &&\n selectedReport[0] !== churchAffiliationReports.value &&\n selectedReport[0] !== volunteerReports.value &&\n selectedReport[0] !== financialReports.value &&\n selectedReport[0] !== communicationReports.value &&\n selectedReport[0] !== excelReports.value &&\n selectedReport[0] !== ctx.root.$route.path\n ) {\n ctx.root.$router.push(selectedReport[0])\n }\n },\n { deep: true }\n )\n\n const reports = computed(() => {\n return [\n ...(isLeague.value && !isUpwardSelect.value\n ? [\n {\n id: 1,\n name: evaluationText,\n url: evaluationReports.value,\n children: [\n {\n id: 2,\n name: 'Blank Participant Evaluation',\n url: `${dynamicReports.value}/blankevalform`,\n },\n {\n id: 3,\n name: 'Participant Evaluation',\n url: `${dynamicReports.value}/evalform`,\n },\n {\n id: 4,\n name: 'Evaluation Activity Scores',\n url: `${dynamicReports.value}/evalactivity`,\n },\n {\n id: 5,\n name: 'Missing Evaluation',\n url: `${dynamicReports.value}/missingevals`,\n },\n ],\n },\n ]\n : []),\n ...(isLeague.value\n ? [\n {\n id: 8,\n name: scheduleText,\n url: scheduleReports.value,\n children: [\n {\n id: 9,\n name: 'Practice Schedules',\n url: `${dynamicReports.value}/practice`,\n },\n {\n id: 10,\n name: 'Game Schedules',\n url: `${dynamicReports.value}/game`,\n },\n {\n id: 11,\n name: 'Game Schedules By Team',\n url: `${dynamicReports.value}/gamebyteam`,\n },\n ...(!isUpwardSelect.value\n ? [\n {\n id: 12,\n name: `${store.getters.leagueAbstraction.refLabel} Schedule`,\n url: `${dynamicReports.value}/referee`,\n },\n ]\n : []),\n {\n id: 47,\n name: 'Coach Conflicts',\n url: `${dynamicReports.value}/coachconflict`,\n },\n ],\n },\n ]\n : []),\n {\n id: 14,\n name: participantText,\n url: participantReports.value,\n children: [\n {\n id: 15,\n name: 'Online Registration Waitlist',\n url: `${webReports.value}/waitlist`,\n },\n {\n id: 17,\n name: 'Team Rosters',\n url: `${dynamicReports.value}/coaches`,\n },\n {\n id: 18,\n name: 'Participant Intros',\n url: `${dynamicReports.value}/intros`,\n },\n {\n id: 19,\n name: 'Siblings list (participants at same address)',\n url: `${dynamicReports.value}/siblings`,\n },\n ...(isLeague.value\n ? [\n {\n id: 20,\n name: 'Player Requests Not Honored',\n url: `${dynamicReports.value}/playerconflict`,\n },\n ]\n : []),\n ],\n },\n {\n id: 25,\n name: financialText,\n url: financialReports.value,\n children: [\n {\n id: 26,\n name: 'Online Registration Financial Details',\n url: `${webReports.value}/financial-details`,\n },\n {\n id: 27,\n name: 'Payments',\n url: `${dynamicReports.value}/payments`,\n },\n {\n id: 28,\n name: 'Payments By Type',\n url: `${dynamicReports.value}/paymentsbytype`,\n },\n {\n id: 29,\n name: 'Outstanding Balances',\n url: `${dynamicReports.value}/outstandingbalance`,\n },\n ],\n },\n {\n id: 32,\n name: communicationText,\n url: communicationReports.value,\n children: [\n {\n id: 33,\n name: 'Mailing labels (avery 5160)',\n url: `${dynamicReports.value}/mailinglabels`,\n },\n {\n id: 34,\n name: 'Email / SMS Opt Out Report',\n url: `${webReports.value}/communicationsoptout`,\n },\n ],\n },\n {\n id: 35,\n name: excelText,\n url: excelReports.value,\n children: [\n { id: 36, name: 'Church Affiliation', url: `${excelReports.value}/churchAffiliation` },\n { id: 37, name: 'Participants', url: `${excelReports.value}/participants` },\n { id: 38, name: 'Coaches', url: `${excelReports.value}/coaches` },\n ...(!isUpwardSelect.value\n ? [\n {\n id: 39,\n name: `${store.getters.leagueAbstraction.refLabel}s`,\n url: `${excelReports.value}/referees`,\n },\n ]\n : []),\n ...(!isUpwardSelect.value\n ? [{ id: 40, name: 'Commissioners', url: `${excelReports.value}/commissioners` }]\n : []),\n ...(!isUpwardSelect.value\n ? [{ id: 41, name: 'Volunteers', url: `${excelReports.value}/volunteers` }]\n : []),\n ...(isLeague.value\n ? [{ id: 42, name: 'Game Schedule', url: `${excelReports.value}/game-schedule` }]\n : []),\n ...(isLeague.value\n ? [{ id: 43, name: 'Practice Schedule', url: `${excelReports.value}/practice-schedule` }]\n : []),\n { id: 45, name: 'Division / Teams', url: `${excelReports.value}/division-teams` },\n ...(isCamp.value\n ? [{ id: 46, name: 'Camp Director', url: `${excelReports.value}/camp-director` }]\n : []),\n ],\n },\n ]\n })\n\n onMounted(() => {\n selectedReport.value = [ctx.root.$route.path]\n\n setOpenNode(ctx.root.$route.path)\n })\n\n function setOpenNode(reportPath: string) {\n var reportParent = reports.value.find((r) => r.children.find((c) => c.url === reportPath))\n\n if (reportParent) {\n openNode.value = [reportParent.url]\n }\n }\n\n return {\n selectedReport,\n reports,\n openNode,\n }\n },\n})\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!./Index.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!./Index.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Index.vue?vue&type=template&id=2e341d72&\"\nimport script from \"./Index.vue?vue&type=script&lang=ts&\"\nexport * from \"./Index.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Index.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 { VTreeview } from 'vuetify/lib/components/VTreeview';\ninstallComponents(component, {VTreeview})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-white flex-grow-1\"},[_c('div',{staticClass:\"row m-0\"},[_c('div',{staticClass:\"col-md-6 p-0\"},[_c('h4',[_vm._v(_vm._s(_vm.currentReportName || ''))]),_c('span',{staticClass:\"label label-info\"},[_c('InfoIcon'),_vm._v(\" Click on a column header to sort.\")],1)])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6\"},[(_vm.LeagueInfoMoreThanOneProgram(_vm.tabs) && _vm.displayProgramPath)?_c('type-program-tab',{staticClass:\"mb-2\",attrs:{\"programs\":_vm.tabs},model:{value:(_vm.currentProgram),callback:function ($$v) {_vm.currentProgram=$$v},expression:\"currentProgram\"}}):_vm._e(),(_vm.showParticipantVolunteerTabs)?_c('div',{staticClass:\"btn-group wide-buttons\"},[_c('button',{staticClass:\"btn btn-sm btn-default text-uppercase p-0\",class:{\n 'btn-primary': _vm.isParticipant,\n 'btn-outline-dark': !_vm.isParticipant,\n },attrs:{\"type\":\"button\"},on:{\"click\":function($event){_vm.currentReportType = 'PARTICIPANT'}}},[_vm._v(\" PARTICIPANTS \")]),_c('button',{staticClass:\"btn btn-sm btn-default text-uppercase\",class:{\n 'btn-primary': _vm.isVolunteer,\n 'btn-outline-dark': !_vm.isVolunteer,\n },attrs:{\"type\":\"button\"},on:{\"click\":function($event){_vm.currentReportType = 'VOLUNTEER'}}},[_vm._v(\" VOLUNTEERS \")])]):_vm._e()],1),_c('div',{staticClass:\"col-md-6 text-right\"},[(!_vm.isLoading)?_c('button',{staticClass:\"btn btn-success m-1\",on:{\"click\":_vm.exportGrid}},[_c('i',{staticClass:\"fa fa-export\"}),_vm._v(\"Export \")]):_vm._e()])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isLoading),expression:\"isLoading\"}],staticClass:\"row text-center\"},[_c('div',{staticClass:\"col-md-12 text-center\"},[_c('loading')],1)]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}],staticClass:\"row\"},[_c('ag-grid-vue',{staticClass:\"ag-theme-alpine\",style:(\"width: 100%; height: 500px\"),attrs:{\"gridOptions\":_vm.gridOptions,\"rowData\":_vm.rowData,\"modules\":_vm.modules,\"suppressFieldDotNotation\":true,\"defaultColDef\":{\n sortable: true,\n resizable: true,\n filter: true,\n }},on:{\"grid-ready\":_vm.onReady}})],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('svg',{staticClass:\"bi bi-info-circle\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"16\",\"height\":\"16\",\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"}},[_c('path',{attrs:{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z\"}}),_c('path',{attrs:{\"d\":\"m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'InfoIcon',\n})\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!./InfoIcon.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!./InfoIcon.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./InfoIcon.vue?vue&type=template&id=d02d3b50&\"\nimport script from \"./InfoIcon.vue?vue&type=script&lang=ts&\"\nexport * from \"./InfoIcon.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onBeforeMount } from '@vue/composition-api'\n\nimport { AgGridVue } from '@ag-grid-community/vue'\nimport { AllCommunityModules } from '@ag-grid-community/all-modules'\n\nimport {\n LeagueInfoMoreThanOneProgram,\n LeagueListItemSeed,\n getEmptyLeagueListItem,\n} from '@/lib/support/models/LeagueListItem/data'\nimport { LeagueProgams2LeagueListItem } from '@/lib/support/models/LeagueListItem/LeaguePrograms2LeagueListItem'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\n\nimport reportsClient from '@/clients/reportsClient'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport loading from '@/elements/Loading.vue'\nimport store from '@/store'\nimport InfoIcon from '@/components/InfoIcon.vue'\n\nexport default defineComponent({\n name: 'ExcelReports',\n components: {\n AgGridVue,\n TypeProgramTab,\n loading,\n InfoIcon,\n },\n setup(props, ctx) {\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n\n const rowData = ref(null)\n const gridOptions = ref(null)\n const api = ref(null)\n const modules = ref(AllCommunityModules)\n\n const currentProgram = ref('')\n const currentReport = ref('')\n const currentSelectedReportType = ref('') //options: Participant or Volunteer\n const isLoading = ref(true)\n const isParticipant = ref(true)\n const isVolunteer = ref(false)\n\n function stringSorter(a: string, b: string) {\n return a.toLowerCase().localeCompare(b.toLowerCase())\n }\n\n const reports = ref<{\n [reportName: string]: {\n name: string\n path: string\n showPrograms: boolean\n defaultColDefs?: {}\n columnDefs?: {}\n sortModel?: any[]\n }\n }>({\n participants: {\n name: 'Participants',\n path: 'participant',\n showPrograms: true,\n defaultColDefs: {\n unSortIcon: true,\n },\n columnDefs: {\n FirstName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n LastName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n IndividualId: {\n hide: true,\n },\n },\n sortModel: [{ colId: 'LastName', sort: 'asc' }],\n },\n churchAffiliation: {\n name: 'Church Affiliations',\n path: 'churchAffiliation',\n showPrograms: false,\n columnDefs: {\n FirstName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n LastName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n Guardian1FirstName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n Guardian1LastName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n Grade: {\n headerName: store.getters.leagueAbstraction.isByAge ? 'Age' : 'Grade',\n },\n },\n },\n coaches: {\n name: 'Coaches',\n path: 'coach',\n showPrograms: true,\n columnDefs: {\n FirstName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n LastName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n FemaleGradesToCoach: {\n headerName: store.getters.leagueAbstraction.isByAge ? 'FemaleAgesToCoach' : 'FemaleGradesToCoach',\n },\n MaleGradesToCoach: {\n headerName: store.getters.leagueAbstraction.isByAge ? 'MaleAgesToCoach' : 'MaleGradesToCoach',\n },\n },\n },\n referees: {\n name: `${store.getters.leagueAbstraction.refLabel}s`,\n path: 'referee',\n showPrograms: false,\n columnDefs: {\n FirstName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n LastName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n },\n },\n commissioners: {\n name: 'Commissioners',\n path: 'commissioner',\n showPrograms: false,\n columnDefs: {\n FirstName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n LastName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n },\n },\n volunteers: {\n name: 'Volunteers',\n path: 'volunteer',\n showPrograms: false,\n columnDefs: {\n FirstName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n LastName: {\n sortingOrder: ['asc', 'desc'],\n comparator: stringSorter,\n },\n },\n },\n 'game-schedule': {\n name: 'Game Schedule',\n path: 'gameschedule',\n showPrograms: true,\n columnDefs: {\n StartTimeSortOrder: {\n hide: true,\n },\n },\n },\n 'practice-schedule': {\n name: 'Practice Schedule',\n path: 'practiceschedule',\n showPrograms: true,\n columnDefs: {\n StartTimeSortOrder: {\n hide: true,\n },\n },\n },\n 'division-teams': {\n name: 'Division / Teams',\n path: 'divisionteam',\n showPrograms: true,\n },\n 'camp-director': {\n name: 'Camp Director',\n path: 'campdirector',\n showPrograms: false,\n columnDefs: {\n IndividualId: {\n hide: true,\n },\n },\n },\n })\n\n const currentReportType = computed({\n get() {\n return currentSelectedReportType.value\n },\n set(reportType: string) {\n currentSelectedReportType.value = reportType\n\n if (reportType == 'PARTICIPANT') {\n isParticipant.value = true\n isVolunteer.value = false\n } else {\n isParticipant.value = false\n isVolunteer.value = true\n }\n },\n })\n\n const reportName = computed((): string => ctx.root.$route.params.reportName)\n\n const currentReportName = computed((): string => {\n if (!reportName.value || !reports.value[reportName.value]) {\n return ''\n }\n return reports.value[reportName.value].name\n })\n\n const currentReportPath = computed((): string => {\n if (!reportName.value || !reports.value[reportName.value]) {\n return ''\n }\n return reports.value[reportName.value].path\n })\n\n const displayProgramPath = computed((): boolean => {\n if (!reportName.value || !reports.value[reportName.value]) {\n return false\n }\n return reports.value[reportName.value].showPrograms\n })\n\n const showParticipantVolunteerTabs = computed((): boolean => {\n if (reportName.value && reportName.value == 'churchAffiliation') {\n return true\n }\n\n return false\n })\n\n const reportTypeParams = computed(() => {\n if (reportName.value && reportName.value == 'churchAffiliation') {\n return { ReportType: currentSelectedReportType.value } as Record\n }\n\n return false\n })\n\n const columnDefs = computed((): any => {\n const report = reports.value[reportName.value]\n return report?.columnDefs ?? {}\n })\n\n function getColumnDefs(name: string) {\n return columnDefs.value[name] ?? {}\n }\n\n const defaultColDefs = computed((): any => {\n const report = reports.value[reportName.value]\n return report?.defaultColDefs ?? {}\n })\n\n function getDefaultColDefs() {\n return defaultColDefs.value ?? {}\n }\n\n const sortModel = computed(() => {\n const report = reports.value[reportName.value]\n return report.sortModel ?? []\n })\n\n const tabs = computed(\n (): LeagueListItem => {\n if (programs.value) {\n return LeagueProgams2LeagueListItem(programs.value)\n }\n return getEmptyLeagueListItem(new LeagueListItemSeed())\n }\n )\n\n const programs = computed(() => {\n if (isCamp.value) {\n return camp.value.programs\n }\n return league.value.programs\n })\n\n onBeforeMount(() => {\n gridOptions.value = {}\n })\n\n const isCamp = computed((): boolean => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n async function onReady(params: any) {\n api.value = params.api\n\n if (programs.value) {\n currentProgram.value = programs.value[0].typeProgramID\n }\n\n if (currentReportPath.value) {\n await loadReport(currentReportPath.value)\n }\n\n currentSelectedReportType.value = 'PARTICIPANT'\n }\n\n function exportGrid() {\n api.value.exportDataAsCsv()\n }\n\n watch(\n () => currentProgram.value,\n async () => {\n await loadReport(currentReport.value)\n }\n )\n\n watch(\n () => currentReportPath.value,\n async () => {\n if (currentReportPath.value) {\n await loadReport(currentReportPath.value)\n }\n }\n )\n\n watch(\n () => currentSelectedReportType.value,\n async () => {\n await loadReport(currentReport.value)\n }\n )\n\n async function loadReport(report: string) {\n isLoading.value = true\n if (report) {\n currentReport.value = report\n\n let columns = []\n\n try {\n let dataSource = await reportsClient.getReport(\n report,\n ctx.root.$route.params.id,\n currentProgram.value,\n reportTypeParams.value\n )\n if (!dataSource) {\n dataSource = []\n }\n\n if (dataSource.length > 0) {\n var fieldNames = Object.keys(dataSource[0])\n var defColDefs = getDefaultColDefs()\n for (var name of fieldNames) {\n columns.push({\n field: name,\n headerName: name,\n ...defColDefs,\n ...getColumnDefs(name),\n })\n }\n }\n\n rowData.value = dataSource\n // need to clear columns before setting columns\n api.value.setColumnDefs([])\n api.value.setColumnDefs(columns)\n api.value.setSortModel(sortModel.value)\n } catch (err) {\n rowData.value = []\n }\n }\n isLoading.value = false\n }\n\n return {\n LeagueInfoMoreThanOneProgram,\n currentReportName,\n tabs,\n displayProgramPath,\n currentProgram,\n showParticipantVolunteerTabs,\n isParticipant,\n currentReportType,\n isVolunteer,\n isLoading,\n exportGrid,\n gridOptions,\n rowData,\n modules,\n onReady,\n }\n },\n})\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!./ExcelReports.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!./ExcelReports.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ExcelReports.vue?vue&type=template&id=63828423&\"\nimport script from \"./ExcelReports.vue?vue&type=script&lang=ts&\"\nexport * from \"./ExcelReports.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ExcelReports.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h4',{ref:\"report\"},[_vm._v(_vm._s(_vm.currentReportName))]),(\n _vm.currentReport !== 'registrationeftpayment' && _vm.currentReport !== 'registrationcommunicationsoptout'\n )?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6\"},[(_vm.LeagueInfoMoreThanOneProgram(_vm.tabs))?_c('type-program-tab',{staticClass:\"mb-2\",attrs:{\"programs\":_vm.tabs},model:{value:(_vm.currentProgram),callback:function ($$v) {_vm.currentProgram=$$v},expression:\"currentProgram\"}}):_vm._e()],1),_c('div',{staticClass:\"col-md-6 text-right\"})]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-12\"},[(_vm.currentReport == 'registrationwaitlist')?[(!_vm.loading)?_c('waitlist-report',{attrs:{\"report-data\":_vm.dataSource,\"league\":_vm.leagueAbstraction.upwardLeagueID,\"league-number\":_vm.leagueAbstraction.id,\"program\":_vm.currentProgram,\"allowWaitlist\":_vm.leagueAbstraction.allowWaitlist},on:{\"refresh\":_vm.loadReport}}):_vm._e()]:_vm._e(),(_vm.currentReport == 'registrationeftpayment')?[_c('EFTReportControls',{attrs:{\"league-i-d\":_vm.leagueAbstraction.upwardLeagueID},on:{\"update-parameters\":_vm.updateParams}}),(!_vm.loading)?_c('EFTReport',{attrs:{\"report-data\":_vm.dataSource}}):_vm._e()]:_vm._e(),(_vm.currentReport == 'registrationcommunicationsoptout')?[(!_vm.loading)?_c('communications-opt-out-report',{attrs:{\"report-data\":_vm.dataSource,\"league\":_vm.leagueAbstraction.upwardLeagueID}}):_vm._e()]:_vm._e(),(_vm.loading)?_c('loading'):_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('div',{staticClass:\"table-responsive\"},[_c('div',{staticClass:\"export-button-container\"},[_c('button',{staticClass:\"btn btn-outline-dark btn-sm mr-2\",on:{\"click\":_vm.downloadCsv}},[_vm._v(\"Export\")]),_c('button',{staticClass:\"btn btn-primary btn-sm mr-2\",on:{\"click\":_vm.removeDeclined}},[_c('i',{staticClass:\"fas fa-user-slash\"}),_vm._v(\" Remove All Declined \")]),_c('button',{staticClass:\"btn btn-primary btn-sm mr-2\",on:{\"click\":_vm.removeAccepted}},[_c('i',{staticClass:\"fas fa-user-slash\"}),_vm._v(\" Remove All Accepted \")]),_c('button',{staticClass:\"btn btn-success btn-sm mr-2\",on:{\"click\":_vm.emailAllSelected}},[_c('i',{staticClass:\"fas fa-paper-plane\"}),_vm._v(\" Email All Selected \")]),_c('button',{staticClass:\"btn btn-success btn-sm mr-2\",on:{\"click\":_vm.inviteAllSelected}},[_c('i',{staticClass:\"fas fa-check-square\"}),_vm._v(\" Invite All Selected \")])]),(_vm.showCapacityWarning)?_c('div',{staticClass:\"d-flex justify-content-center m-1\"},[_vm._m(0)]):_vm._e(),_c('ActionProgress',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.progress),expression:\"progress\"}],attrs:{\"message\":_vm.progress,\"spinner\":_vm.spinner},on:{\"close\":_vm.close}}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4 col-md-4 col-lg-2 p-0 ml-5\"},[_c('select-input',{attrs:{\"label\":\"Invitation Status\",\"items-list\":_vm.inviteStatusDisplay,\"text-property-name\":\"text\",\"value-property-name\":\"value\"},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}})],1),_c('div',{staticClass:\"col-2\"},[(_vm.allowWaitlist)?_c('button',{staticClass:\"btn btn-success mt-3\",on:{\"click\":_vm.doShowAddWaitlistModal}},[_c('i',{staticClass:\"fa fa-plus mr-2\"}),_vm._v(\" Add New \")]):_vm._e()])]),_c('table',{staticClass:\"waitlist-table table table-row-striped\"},[_c('thead',[_c('tr',[_c('th',[(_vm.showSelectAll)?_c('checkbox-input',{model:{value:(_vm.selectAll),callback:function ($$v) {_vm.selectAll=$$v},expression:\"selectAll\"}}):_vm._e()],1),_c('th',{staticClass:\"text-muted small font-weight-bold\",attrs:{\"scope\":\"col\"}},[_vm._v(\"Player Name\")]),_c('th',{staticClass:\"text-muted small font-weight-bold\",attrs:{\"scope\":\"col\"}},[_vm._v(_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('th',{staticClass:\"text-muted small font-weight-bold\",attrs:{\"scope\":\"col\"}},[_vm._v(\"Gender\")]),_c('th',{staticClass:\"text-muted small font-weight-bold\",attrs:{\"scope\":\"col\"}},[_vm._v(\"Parent/Guardian\")]),_c('th',{staticClass:\"text-muted small font-weight-bold\",attrs:{\"scope\":\"col\"}},[_vm._v(\"Status\")]),_c('th',{staticClass:\"text-muted small font-weight-bold\",attrs:{\"scope\":\"col\"}},[_vm._v(\"Submitted\")]),_c('th')])]),_vm._l((_vm.internalReportData.data),function(rec,i){return _c('tbody',{key:rec.ID},[(rec.show)?_c('tr',[_c('td',[(_vm.sendable(rec.UpwardWaitListStatusID))?_c('checkbox-input',{model:{value:(rec.selected),callback:function ($$v) {_vm.$set(rec, \"selected\", $$v)},expression:\"rec.selected\"}}):_vm._e()],1),_c('td',[_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(rec.ChildFirstName)+\" \"+_vm._s(rec.ChildLastName))])]),_c('td',{},[_c('div',[_vm._v(_vm._s(rec.Grade))])]),_c('td',{},[_c('div',[_vm._v(_vm._s(rec.Gender))])]),_c('td',{},[_c('div',[_c('div',{staticClass:\"mb-3\"},[_vm._v(_vm._s(rec.ParentFullName))]),_c('a',{staticClass:\"d-block pb-1\",attrs:{\"href\":(\"tel:\" + (rec.Phone))}},[_vm._v(_vm._s(_vm.fmtPhone(rec.Phone)))]),_c('a',{staticClass:\"d-block\",attrs:{\"href\":(\"mailTo:\" + (rec.Email))}},[_vm._v(_vm._s(_vm.maxLen(rec.Email, 30)))])])]),_c('td',{staticStyle:{\"min-width\":\"200px\"}},[(_vm.idUpdating == rec.ID)?_c('loading',{attrs:{\"is-small\":\"\"}}):_c('div',{domProps:{\"innerHTML\":_vm._s(\n _vm.fullStatus(\n rec.UpwardWaitListStatusID,\n rec.UpwardWaitListStatusDescription,\n rec.InvitationExpire,\n rec.InvitationDeclined,\n rec.InvitationSent\n )\n )}})],1),_c('td',[_c('div',{staticStyle:{\"min-width\":\"120px\"}},[_vm._v(_vm._s(_vm.waitlistDate(rec.WaitListDate)))])]),_c('td',{attrs:{\"rowspan\":\"2\"}},[_c('WaitlistActions',{attrs:{\"status\":rec.UpwardWaitListStatusID},on:{\"click\":function (type) { return _vm.actionClicked(rec.ID, type); }}})],1)]):_vm._e(),(rec.Note && rec.show)?_c('tr',[_c('td',{staticClass:\"border-top: 1px solid white\",staticStyle:{\"background-color\":\"transparent !important\"},attrs:{\"colspan\":\"7\"}},[_c('div',{staticClass:\"p-2 alert alert-info\"},[_c('div',{staticClass:\"small font-weight-bold\"},[_vm._v(\"Note:\")]),_vm._v(\" \"+_vm._s(rec.Note)+\" \")])])]):_vm._e()])})],2),_c('WaitlistExpirationModal',{attrs:{\"player-name\":_vm.removeTargetDesc},on:{\"selected\":_vm.expirationSelected},model:{value:(_vm.showExpirationModal),callback:function ($$v) {_vm.showExpirationModal=$$v},expression:\"showExpirationModal\"}}),_c('WaitlistExpirationModal',{on:{\"selected\":_vm.bulkExpirationSelected},model:{value:(_vm.showBulkExpirationModal),callback:function ($$v) {_vm.showBulkExpirationModal=$$v},expression:\"showBulkExpirationModal\"}}),_c('WaitlistFormModal',{attrs:{\"upwardLeagueID\":_vm.upwardLeagueID,\"typeProgramID\":_vm.program},on:{\"wasSubmittedSuccessfully\":_vm.onWaitlistSubmitted},model:{value:(_vm.showAddWaitlistModal),callback:function ($$v) {_vm.showAddWaitlistModal=$$v},expression:\"showAddWaitlistModal\"}}),_c('confirmation-modal',{attrs:{\"is-small\":\"\",\"show\":_vm.isConfirming,\"title\":\"Confirm Remove from Waitlist\"},on:{\"onResponse\":_vm.confirmRemove}},[_c('p',[_vm._v(\" Remove \"),_c('i',[_vm._v(_vm._s(_vm.removeTargetDesc))]),_vm._v(\"? \")]),_c('p',[_c('b',[_vm._v(\" Removal does not automatically trigger registration. Participants must still complete registration or be added manually. \")])])]),_c('SendEmailModal',{attrs:{\"recipients\":_vm.selectedEmails},on:{\"sendCompleted\":_vm.emailSendCompleted},model:{value:(_vm.showEmailComposerModal),callback:function ($$v) {_vm.showEmailComposerModal=$$v},expression:\"showEmailComposerModal\"}}),_c('InfoModal',{attrs:{\"show\":_vm.showEmailSentConfirmation,\"title\":\"Email Sent Confirmation\",\"buttonText\":\"Ok\",\"showClose\":true},on:{\"close\":_vm.closeEmailSentConfirmation}},[_c('i',{staticClass:\"col-12 text-center m-auto fas fa-check-circle text-success fa-4x pb-4\"}),_c('h3',{staticClass:\"col-12 text-center pb-4\"},[_vm._v(\"Your message has been sent!\")]),_c('div',{staticClass:\"col-12 text-center\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.viewMessageHistory}},[_c('i',{staticClass:\"fas fa-history\"}),_vm._v(\" View History \")])])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex bg-light-3\",staticStyle:{\"max-width\":\"650px\"}},[_c('div',[_c('i',{staticClass:\"fas fa-bell fa-2x p-3 text-danger\"})]),_c('div',{staticClass:\"p-2\"},[_c('strong',[_vm._v(\"NOTE:\")]),_vm._v(\" Adding participants from the Waitlist \"),_c('b',[_vm._v(\"will bypass your capacity numbers\")]),_vm._v(\". League Directors should confirm they are able to serve more participants before adding players to exceed the capacity limits you set for your league. \")])])}]\n\nexport { render, staticRenderFns }","/**\n * Rest Operations for user services\n */\n\nimport restService from '@/services/restService'\n\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { RegistrationTransactionParticipantExtended } from '@/models/Registration/RegistrationTransactionParticipantExt'\nimport { RegistrationTransactionParticipantInfoDetails } from '@/models/Registration/RegistrationTransactionParticipantInfoDetails'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { CreditCardTypeEnum } from '@/models/Registration/CreditCardTypeEnum'\nimport { RegistrationInvite } from '@/models/Registration/RegistrationInvite'\nimport { RegistrationCapacityWaitListInfo } from '@/GeneratedTypes/ListInfo/RegistrationCapacityWaitListInfo'\nimport { RegistrationCapacityWaitList } from '@/GeneratedTypes/RegistrationCapacityWaitList'\n\nconst baseUrl = 'Registrations'\n\nclass UserClientException extends GeneralError {\n name = 'User API Error'\n}\n\nexport interface RegistrationSearchParams {\n accountNumber: string\n upwardLeagueID: string\n confirmationNumber: string\n creditCardLastFour: string\n lastName: string\n invoiceNumber: string | null\n}\n\nexport class registrationClient {\n /**\n * Searches the list of registrations by the terms\n * @param term\n */\n static async search(terms: RegistrationSearchParams) {\n const x = await restService.post(`${baseUrl}/search`, terms)\n if (x.isSuccess) {\n return x.data\n }\n\n throw new UserClientException('A problem occurred searching users.')\n }\n\n /**\n * This will remove or refund an OPR transaction.\n * @param league - string version\n * @param leagueID - league id (number version)\n * @param id - individual id\n * @param reason - user entered reason\n * @param refund - true will refund, false - will not refund\n */\n static async refund(\n league: UpwardLeagueIDType,\n leagueID: number,\n id: number,\n reason: string,\n refund: boolean\n ) {\n const x = await restService.post(\n `${baseUrl}/${league}/${id}/refund`,\n { id, leagueID, refund, reason }\n )\n if (x.isSuccess) {\n return x.data\n }\n\n throw new UserClientException(`A problem occurred refunding user ${id}.`)\n }\n\n /**\n * This will mark the registration complete.\n * @param league - string version\n * @param leagueID - league id (number version)\n * @param id - individual id\n * @param typePaymentMethodID\n * @param authorizationCode\n * @param creditCardLastFour\n */\n static async complete(\n league: UpwardLeagueIDType,\n leagueID: number,\n id: number,\n typePaymentMethodID: CreditCardTypeEnum,\n authorizationCode: string,\n creditCardLastFour: string\n ) {\n const x = await restService.post(\n `${baseUrl}/${league}/${id}/complete`,\n { id, leagueID, typePaymentMethodID, authorizationCode, creditCardLastFour }\n )\n if (x.isSuccess) {\n return x.data\n }\n\n throw new UserClientException(`A problem occurred refunding user ${id}.`)\n }\n\n /**\n * This will mark the registration complete.\n * @param league - string version\n * @param id - individual id\n */\n static async getChargebackDetails(league: UpwardLeagueIDType, id: number) {\n const x = await restService.get(\n `${baseUrl}/${league}/${id}`\n )\n if (x.isSuccess) {\n return x.data\n }\n throw new UserClientException(`A problem occurred getting chargeback details ${id}.`)\n }\n\n /**\n * This will send an invitation to multiple particiants on the waitlist.\n * @param upwid\n * @param program\n * @param invitationList\n */\n static async sendInvite(upwid: UpwardLeagueIDType, program: string, invitationList: RegistrationInvite) {\n const x = await restService.post(\n `${baseUrl}/waitlist/invites/${upwid}/${program}`,\n invitationList\n )\n if (x.isSuccess) {\n return x.data\n }\n\n throw new UserClientException(`A problem occurred sending registration invitations`)\n }\n\n /**\n * This will send an invitation to a particiant on the waitlist.\n * @param upwid\n * @param inviteId\n * @param invite\n */\n static async update(upwid: UpwardLeagueIDType, inviteId: number, invite: RegistrationCapacityWaitListInfo) {\n const x = await restService.put(\n `${baseUrl}/waitlist/${upwid}/${inviteId}`,\n invite\n )\n if (x.isSuccess) {\n return x.data\n }\n\n throw new UserClientException(`A problem occurred updating an invitation`)\n }\n\n static async addToWaitlist(data: RegistrationCapacityWaitList) {\n return await restService.post(`${baseUrl}/waitlist`, data)\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{attrs:{\"title\":\"Waitlist Form\"},model:{value:(_vm.isVisible),callback:function ($$v) {_vm.isVisible=$$v},expression:\"isVisible\"}},[(_vm.isLoading)?_c('div',[_c('Loading')],1):(!_vm.showSuccess)?_c('UpwardValidationObserver',{ref:\"observer\",on:{\"valid\":_vm.onValidEvent}},[_c('h5',[_vm._v(\"Participant\")]),_c('div',{staticClass:\"row px-md-5\"},[_c('TextInput',{staticClass:\"col-sm-6 p-1\",attrs:{\"label\":\"First Name\",\"vee-validate-rules\":\"required\",\"required\":\"\"},model:{value:(_vm.formData.childFirstName),callback:function ($$v) {_vm.$set(_vm.formData, \"childFirstName\", $$v)},expression:\"formData.childFirstName\"}}),_c('TextInput',{staticClass:\"col-sm-6 p-1\",attrs:{\"label\":\"Last Name\",\"vee-validate-rules\":\"required\",\"required\":\"\"},model:{value:(_vm.formData.childLastName),callback:function ($$v) {_vm.$set(_vm.formData, \"childLastName\", $$v)},expression:\"formData.childLastName\"}}),_c('div',{staticClass:\"col-sm-6 p-1\"},[_c('select-input',{attrs:{\"label\":\"Gender\",\"vee-validate-rules\":\"required\",\"required\":\"\",\"items-list\":_vm.genderList},model:{value:(_vm.formData.gender),callback:function ($$v) {_vm.$set(_vm.formData, \"gender\", $$v)},expression:\"formData.gender\"}})],1),_c('div',{staticClass:\"col-sm-6 p-1\"},[_c('select-input',{attrs:{\"vee-validate-rules\":\"required\",\"label\":(\"\" + (_vm.isByAge ? 'Age' : 'Grade')),\"required\":\"\",\"valuePropertyName\":\"upwardTypeID\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"items-list\":_vm.gradesList},model:{value:(_vm.formData.typeGradeID),callback:function ($$v) {_vm.$set(_vm.formData, \"typeGradeID\", $$v)},expression:\"formData.typeGradeID\"}})],1),_c('MemoInput',{staticClass:\"col-10 p-1\",attrs:{\"label\":\"Notes\"},model:{value:(_vm.formData.note),callback:function ($$v) {_vm.$set(_vm.formData, \"note\", $$v)},expression:\"formData.note\"}})],1),_c('h5',{staticClass:\"my-3\"},[_vm._v(\"Parent or Guardian\")]),_c('div',{staticClass:\"row px-md-5\"},[_c('TextInput',{staticClass:\"col-sm-6 p-1\",attrs:{\"label\":\"Parent Full Name\",\"vee-validate-rules\":\"required\",\"required\":\"\"},model:{value:(_vm.formData.parentFullName),callback:function ($$v) {_vm.$set(_vm.formData, \"parentFullName\", $$v)},expression:\"formData.parentFullName\"}}),_c('TextInput',{staticClass:\"col-sm-6 p-1\",attrs:{\"label\":\"Email\",\"required\":true,\"vee-validate-rules\":\"email|required\"},model:{value:(_vm.formData.email),callback:function ($$v) {_vm.$set(_vm.formData, \"email\", $$v)},expression:\"formData.email\"}}),_c('div',{staticClass:\"col-sm-6 p-1\"},[_c('phone-input-mask',{staticClass:\"col-sm-6 p-1\",attrs:{\"required\":\"\",\"vee-validate-rules\":\"required|phone\",\"label\":\"Phone\"},model:{value:(_vm.contactPhone),callback:function ($$v) {_vm.contactPhone=$$v},expression:\"contactPhone\"}})],1)],1)]):_vm._e(),(_vm.showDuplicateError)?_c('div',{staticClass:\"text-danger my-md-3\"},[_c('strong',[_c('i',{staticClass:\"fas fa-exclamation-circle\"}),_vm._v(\" This participant has already been added to the waitlist. \")])]):(_vm.showError)?_c('div',{staticClass:\"text-danger my-md-3\"},[_c('strong',[_c('i',{staticClass:\"fas fa-exclamation-circle\"}),_vm._v(\" There was a problem submitting your waitlist request. Please try again or contact our support team. \")])]):(_vm.showSuccess)?_c('div',{staticClass:\"my-md-3 text-center\"},[_c('p',{staticClass:\"text-success font-weight-bold\"},[_c('i',{staticClass:\"fas fa-check-circle text-success\"}),_vm._v(\" Submission complete \")]),_c('p',[_c('strong',[_vm._v(_vm._s(_vm.formData.childFirstName)+\" \"+_vm._s(_vm.formData.childLastName))]),_vm._v(\" has been placed on the waitlist. \")]),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.close}},[_vm._v(\"Close\")])]):_vm._e(),_c('div',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[(!_vm.showSuccess)?_c('button',{staticClass:\"btn btn-primary\",attrs:{\"disabled\":!_vm.isFormValid},on:{\"click\":_vm.onSubmit}},[_vm._v(\" Submit \")]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { RegistrationCapacityWaitList } from '@/GeneratedTypes/RegistrationCapacityWaitList'\n\nexport function getEmptyRegistrationCapacityWaitList(): RegistrationCapacityWaitList {\n return {\n id: 0,\n leagueID: 0,\n typeProgramID: '',\n parentFullName: '',\n childFirstName: '',\n childLastName: '',\n childMiddleInitial: null,\n typeGradeID: '',\n gender: '',\n phone: null,\n email: null,\n note: '',\n invitationCode: null,\n registrationTransactionID: 0,\n invitationSent: null,\n invitationExpire: null,\n invitationDeclined: null,\n }\n}\n","export enum InviteStatus {\n WAITING = 'WAITING',\n INVITATIONSENT = 'INVITATIONSENT',\n INVITATIONACCEPTED = 'INVITATIONACCEPTED',\n INVITATIONEXPIRED = 'INVITATIONEXPIRED',\n INVITATIONDECLINED = 'INVITATIONDECLINED',\n}\n\nexport enum WaitlistActionsEnum {\n SEND = 'SEND',\n CANCEL = 'CANCEL',\n REMOVE = 'REMOVE',\n EMAIL = 'EMAIL',\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport UpwardValidationObserver from '@/components/UpwardValidationObserver.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport { RegistrationCapacityWaitList } from '@/GeneratedTypes/RegistrationCapacityWaitList'\nimport { getEmptyRegistrationCapacityWaitList } from '@/lib/support/models/RegistrationCapacityWaitList/data'\nimport { IndividualPhone } from '@/GeneratedTypes/IndividualPhone'\n//import { LeagueAccountInfo } from '@/GeneratedTypes/ListInfo/LeagueAccountInfo'\nimport { LeagueAccount } from '@/GeneratedTypes/LeagueAccount'\nimport PhoneInputMask from '@/elements/PhoneInputMask.vue'\nimport { registrationClient } from '@/clients/registrationClient'\nimport Loading from '@/elements/Loading.vue'\nimport Modal from '@/components/Modal.vue'\nimport { isUpwardExceptionResult, RestServiceResult } from '@/services/restService'\n//import programsClient from '@/clients/programsClient'\n//import { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { Genders } from '@/lib/support/models/MiscMappings/Gender'\nimport { getGradesListFromAccount } from '@/services/gradeService'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'WaitlistFormModal',\n components: {\n SelectInput,\n TextInput,\n UpwardValidationObserver,\n MemoInput,\n PhoneInputMask,\n Loading,\n Modal,\n },\n props: {\n value: { type: Boolean, required: true },\n upwardLeagueID: { type: String, required: true },\n typeProgramID: { type: String, required: true },\n },\n setup(props, ctx) {\n const isFormValid = ref(false)\n const isLoading = ref(false)\n const isVisible = ref(props.value)\n const showError = ref(false)\n const showDuplicateError = ref(false)\n const showSuccess = ref(false)\n //const leagueInfo = ref(null)\n\n const contactPhone = ref({\n phoneID: 0,\n typePhoneID: '',\n phoneNumber: '',\n extension: '',\n priority: 0,\n allowSMS: false,\n })\n\n const formData = ref(getEmptyRegistrationCapacityWaitList())\n\n const observerRef = computed((): any => ctx.refs.observer)\n const myLeague = computed(() => store.getters.leagueAbstraction.currentItem)\n const isByAge = computed(() => store.getters.leagueAbstraction.isByAge)\n\n function reset() {\n isLoading.value = false\n showError.value = false\n showDuplicateError.value = false\n showSuccess.value = false\n\n if (observerRef.value) {\n observerRef.value.reset()\n }\n }\n\n /**\n * Program can exclude a gender\n */\n const genderList = computed(() => {\n const program = props.typeProgramID\n const genders: any = {}\n if (program && accounts.value?.length) {\n const grades = accounts.value[0].grades\n if (!grades) return\n if (grades.some((g) => g.typeProgramID === program && g.gender === Genders.male)) {\n genders['M'] = 'Male'\n }\n if (grades.some((g) => g.typeProgramID === program && g.gender === Genders.female)) {\n genders['F'] = 'Female'\n }\n }\n return genders\n })\n\n const accounts = computed((): LeagueAccount[] | null => {\n if (myLeague.value) {\n return myLeague.value.accounts\n } else {\n return null\n }\n })\n\n /**\n * Grades vary on gender and program\n */\n const gradesList = computed(() => {\n let retval: UpwardGradeTypeID[] = []\n const gender = formData.value.gender\n const program = props.typeProgramID\n if (gender && program && accounts.value?.length) {\n retval = getGradesListFromAccount(accounts.value[0], program, gender)\n }\n return retval\n /*\n const gender = formData.value.gender\n const program = props.typeProgramID\n\n function sortgrades(a: string, b: string) {\n // K for kindergarten grades.\n if (a[0] == 'K' && b[0] == 'K') {\n return a.localeCompare(b)\n }\n if (a[0] == 'K') {\n return -1\n }\n if (b[0] == 'K') {\n return 1\n }\n return parseInt(a) == parseInt(b) ? 0 : parseInt(a) < parseInt(b) ? -1 : 1\n }\n\n if (gender && program && accounts.value?.length) {\n return accounts.value[0]\n .grades!.filter((x) => x.gender == gender && x.typeProgramID == program)\n .map((x) => x.typeGradeID!)\n .sort(sortgrades)\n }\n return []\n */\n })\n\n function onValidEvent(isValid: boolean) {\n isFormValid.value = isValid\n }\n\n const registrationCapacityWaitList = computed(() => {\n if (!myLeague.value) {\n return null\n }\n\n formData.value.id = 0\n formData.value.leagueID = myLeague.value.id\n formData.value.typeProgramID = props.typeProgramID\n formData.value.phone = contactPhone.value.phoneNumber\n\n return formData.value\n })\n\n async function validate() {\n return await observerRef.value.validate()\n }\n\n function close() {\n ctx.emit('wasSubmittedSuccessfully')\n isVisible.value = false\n }\n\n async function onSubmit() {\n if (!registrationCapacityWaitList.value) {\n return\n }\n\n showSuccess.value = false\n showError.value = false\n isLoading.value = true\n showDuplicateError.value = false\n\n const isValid = await validate()\n\n if (!isValid) {\n isLoading.value = false\n return\n }\n\n try {\n await registrationClient.addToWaitlist(registrationCapacityWaitList.value)\n showSuccess.value = true\n } catch (e) {\n if (isDuplicateError(e)) {\n showDuplicateError.value = true\n } else {\n showError.value = true\n }\n } finally {\n isLoading.value = false\n }\n }\n\n function isDuplicateError(e: RestServiceResult) {\n if (!isUpwardExceptionResult(e?.errorObject)) {\n return false\n }\n\n const message = `${e?.errorObject?.message}`\n\n return (\n message.indexOf(\n `DataPortal.Update failed (Cannot insert duplicate key row in object 'dbo.RegistrationCapacityWaitList' with unique index 'IX5_RegistrationCapacityWaitList'.`\n ) === 0\n )\n }\n\n watch(\n () => props.value,\n () => {\n isVisible.value = props.value\n }\n )\n\n watch(\n () => isVisible.value,\n () => {\n ctx.emit('input', isVisible.value)\n ctx.emit('change', isVisible.value)\n\n if (!isVisible.value) {\n reset()\n }\n }\n )\n\n /*\n watch(\n () => props.upwardLeagueID,\n async () => {\n leagueInfo.value = await programsClient.retrieve(props.upwardLeagueID)\n },\n { immediate: true }\n )\n */\n\n return {\n isVisible,\n isLoading,\n showSuccess,\n onValidEvent,\n formData,\n isByAge,\n genderList,\n gradesList,\n contactPhone,\n showDuplicateError,\n showError,\n close,\n isFormValid,\n onSubmit,\n }\n },\n})\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!./WaitlistFormModal.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!./WaitlistFormModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WaitlistFormModal.vue?vue&type=template&id=982d463e&\"\nimport script from \"./WaitlistFormModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./WaitlistFormModal.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('modal',{attrs:{\"title\":\"Invitation Expiration Date\",\"is-small\":\"\"},model:{value:(_vm.internal),callback:function ($$v) {_vm.internal=$$v},expression:\"internal\"}},[_c('div',{staticClass:\"mb-3\"},[_vm._v(\"Invitation\"+_vm._s(_vm.playerName ? (\" for \" + _vm.playerName) : 's')+\" will expire in:\")]),_c('select-input',{attrs:{\"items-list\":_vm.list,\"value-property-name\":\"value\",\"text-property-name\":\"text\"},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}}),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.send}},[_c('i',{staticClass:\"far fa-paper-plane\"}),_vm._v(\" Send Invitation \")])])],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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, ref, watch, reactive, computed } from '@vue/composition-api'\nimport dayjs from 'dayjs'\nimport { cloneDeep } from 'lodash'\nimport store from '@/store'\n\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\n\nimport inviteClient from '@/clients/inviteClient'\nimport { registrationClient } from '@/clients/registrationClient'\n\nimport Loading from '@/elements/Loading.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport Alert from '@/components/Alert.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport WaitlistFormModal from '@/views/Programs/Reports/WebviewReports/WaitlistFormModal.vue'\n\nimport { WaitlistActionsEnum, InviteStatus } from '@/views/Programs/Reports/WebviewReports/lib/Waitlist'\nimport WaitlistExpirationModal from '@/views/Programs/Reports/WebviewReports/WaitlistExpirationModal.vue'\nimport ActionProgress from '@/views/Programs/Reports/WebviewReports/ActionProgress.vue'\nimport WaitlistActions from '@/views/Programs/Reports/WebviewReports/WaitlistActions.vue'\n\nimport { RegistrationInvite } from '@/models/Registration/RegistrationInvite'\nimport { RegistrationWaitlist } from '@/models/RegistrationWaitlist'\n\nimport { formatPhoneNumber } from '@/services/phoneNumberService'\nimport { maxStringLength } from '@/filters/maxStringLength'\nimport InfoModal from '@/components/InfoModal.vue'\nimport SendEmailModal from '@/components/Communication/SendEmailModal.vue'\nimport router from '@/router/index'\nenum RemoveEnum {\n BULK_DECLINED,\n BULK_ACCECPTED,\n SINGLE,\n}\n\nexport default defineComponent({\n name: 'WaitlistReport',\n components: {\n ConfirmationModal,\n Alert,\n WaitlistActions,\n WaitlistExpirationModal,\n Loading,\n CheckboxInput,\n ActionProgress,\n SelectInput,\n SendEmailModal,\n InfoModal,\n WaitlistFormModal,\n },\n props: {\n reportData: {\n type: Array as PropType,\n required: true,\n default: () => [],\n },\n league: {\n type: String as PropType,\n required: true,\n default: '',\n },\n leagueNumber: {\n type: Number,\n required: true,\n default: 0,\n },\n program: {\n type: String,\n required: true,\n default: '',\n },\n allowWaitlist: { type: Boolean, require: true },\n },\n setup(props, ctx) {\n const internalReportData = reactive<{ data: RegistrationWaitlist[] }>({ data: [] })\n const fmtPhone = formatPhoneNumber\n const maxLen = maxStringLength\n const idUpdating = ref(0)\n const isConfirming = ref(false)\n const progress = ref(null)\n const removeTargetDesc = ref('')\n const isByAge = computed(() => store.getters.leagueAbstraction.isByAge)\n\n /*\n * Filtering\n */\n const inviteStatusDisplay = [\n { value: 'ALL', text: 'All' },\n { value: 'WAITING', text: 'Waiting for Invitation' },\n { value: 'INVITATIONSENT', text: 'Invitation Sent' },\n { value: 'INVITATIONACCEPTED', text: 'Invitation Accepted' },\n { value: 'INVITATIONEXPIRED', text: 'Invitation Expired' },\n { value: 'INVITATIONDECLINED', text: 'Invitation Declined' },\n ]\n const filter = ref(inviteStatusDisplay[0].value)\n\n /*\n * Manage Single Row Actions\n */\n\n const pendingID = ref(0)\n function actionClicked(id: number, action: string) {\n setPendingParticipant(id)\n switch (action) {\n case WaitlistActionsEnum.SEND:\n return sendInvite()\n case WaitlistActionsEnum.CANCEL:\n return cancelInvite()\n case WaitlistActionsEnum.REMOVE:\n return removeFromWaitlist()\n }\n }\n\n function participantById(id: number) {\n return internalReportData.data.find((x) => x.ID == id)\n }\n\n function setPendingParticipant(id: number) {\n const participant = participantById(id)\n removeTargetDesc.value = participant ? `${participant.ChildFirstName} ${participant.ChildLastName}` : ''\n pendingID.value = id\n }\n\n /**\n * Export\n **/\n function downloadCsv() {\n const headerTitles = [\n 'Player Name',\n isByAge.value ? 'Age' : 'Grade',\n 'Gender',\n 'Contact Name',\n 'Phone',\n 'Email',\n 'Submitted',\n 'Invite Sent',\n 'Invite Expired',\n 'Invite Declined',\n 'Status',\n 'Notes',\n ]\n\n const csvLines = ['data:text/csv;charset=utf-8,', headerTitles.map((t) => `\"${t}\"`).join(',')]\n\n internalReportData.data.map((r) => {\n const rowValues = [\n r.ChildFirstName + ' ' + r.ChildLastName,\n r.Grade,\n r.Gender,\n r.ParentFullName,\n r.Phone,\n r.Email,\n waitlistDate(r.WaitListDate),\n waitlistDate(r.InvitationSent),\n waitlistDate(r.InvitationExpire),\n waitlistDate(r.InvitationDeclined),\n r.UpwardWaitListStatusID,\n r.Note,\n ]\n\n const csvLine = rowValues.map((v) => `\"${(v || '').replace(/[\"]+/g, '')}\"`).join(',')\n csvLines.push(csvLine)\n })\n\n const csvData = csvLines.join('\\n')\n var encodedUri = encodeURI(csvData)\n var link = document.createElement('a')\n link.setAttribute('href', encodedUri)\n link.setAttribute('download', 'waitlist_report.csv')\n document.body.appendChild(link) // Required for FF\n\n link.click()\n }\n\n /*\n * Remove from waitlist\n */\n const removeTarget = ref(null)\n async function confirmRemove(b: boolean) {\n if (b) {\n switch (removeTarget.value) {\n case RemoveEnum.BULK_DECLINED:\n return removeAllDeclined()\n case RemoveEnum.BULK_ACCECPTED:\n return removeAllAccepted()\n case RemoveEnum.SINGLE:\n await remove(pendingID.value)\n }\n }\n isConfirming.value = false\n removeTargetDesc.value = ''\n removeTarget.value = null\n }\n\n function removeFromWaitlist() {\n isConfirming.value = true\n removeTarget.value = RemoveEnum.SINGLE\n }\n\n function removeAccepted() {\n removeTargetDesc.value = 'all accepted invitations'\n isConfirming.value = true\n removeTarget.value = RemoveEnum.BULK_ACCECPTED\n }\n\n function removeDeclined() {\n removeTargetDesc.value = 'all declined invitations'\n isConfirming.value = true\n removeTarget.value = RemoveEnum.BULK_DECLINED\n }\n\n async function remove(id: number) {\n idUpdating.value = id\n await inviteClient.unwaitlist(props.league, id)\n internalReportData.data = internalReportData.data.filter((x) => x.ID != id)\n idUpdating.value = 0\n }\n\n async function removeAllAccepted() {\n isConfirming.value = false\n const accepted = internalReportData.data\n .filter((x) => x.UpwardWaitListStatusID == InviteStatus.INVITATIONACCEPTED)\n .map((x) => x.ID)\n await removeBulk(accepted, 'accepted', remove)\n }\n\n async function removeAllDeclined() {\n isConfirming.value = false\n const declined = internalReportData.data\n .filter((x) => x.UpwardWaitListStatusID == InviteStatus.INVITATIONDECLINED)\n .map((x) => x.ID)\n await removeBulk(declined, 'declined', remove)\n }\n\n async function removeBulk(ids: number[], type: string, fnc: (id: number) => void) {\n let i = 0\n if (!ids.length) {\n progress.value = `No ${type} invitations to remove`\n return\n }\n\n if (ids.length) {\n progress.value = `Removing all ${type} ...`\n for (const id of ids) {\n i++\n\n progress.value = `Removing all ${type}... ${Math.floor((i * 100) / ids.length)}%`\n await fnc(id)\n }\n\n progress.value = `Removed ${ids.length} ${type} invitations`\n internalReportData.data = internalReportData.data.filter((x) => !ids.includes(x.ID))\n }\n }\n\n /**\n * Cancel Invite\n */\n async function cancelInvite() {\n idUpdating.value = pendingID.value\n const i = internalReportData.data.find((x) => x.ID == pendingID.value)\n if (!i) return\n const results = await registrationClient.update(props.league, pendingID.value, {\n id: i.ID,\n leagueID: props.leagueNumber,\n typeProgramID: props.program,\n invitationCode: '',\n registrationTransactionID: 0,\n childFirstName: i.ChildFirstName,\n childLastName: i.ChildLastName,\n childMiddleInitial: i.ChildMiddleInitial,\n typeGradeID: i.Grade,\n gender: i.Gender,\n email: i.Email,\n note: i.Note,\n parentFullName: i.ParentFullName,\n phone: i.Phone,\n typeWaitListStatusID: InviteStatus.WAITING,\n invitationSent: null,\n invitationDeclined: null,\n invitationExpire: null,\n })\n\n //update client side waitlist\n if (results) {\n internalReportData.data.forEach((i) => {\n if (i.ID == pendingID.value) {\n i.UpwardWaitListStatusID = InviteStatus.WAITING\n i.UpwardWaitListStatusDescription = ''\n i.InvitationDeclined = results.invitationDeclined\n i.InvitationExpire = results.invitationExpire\n i.InvitationSent = results.invitationSent\n }\n })\n }\n idUpdating.value = 0\n }\n\n const showAddWaitlistModal = ref(false)\n function doShowAddWaitlistModal() {\n showAddWaitlistModal.value = true\n }\n function onWaitlistSubmitted() {\n showAddWaitlistModal.value = false\n ctx.emit('refresh')\n }\n\n /**\n * Send Invite\n */\n const selectedIds = ref([] as number[])\n const selectAll = ref(false)\n function selecting(selected: boolean, waitlistId: number) {\n if (selected) {\n selectedIds.value.push(waitlistId)\n } else {\n selectedIds.value = selectedIds.value.filter((v) => v != waitlistId)\n }\n }\n\n const showExpirationModal = ref(false)\n function sendInvite() {\n showExpirationModal.value = true\n }\n\n async function expirationSelected(expire: Date) {\n await sendSingleInvite({\n SentDate: new Date(),\n InviteExpireDate: expire,\n WaitListIDs: [pendingID.value],\n })\n }\n\n async function bulkExpirationSelected(expire: Date) {\n showBulkExpirationModal.value = false\n const selected = internalReportData.data.filter((x) => x.selected).map((y) => y.ID)\n await inviteBulk({ SentDate: new Date(), InviteExpireDate: expire, WaitListIDs: selected })\n }\n\n const showBulkExpirationModal = ref(false)\n function inviteAllSelected() {\n showBulkExpirationModal.value = true\n }\n const showEmailComposerModal = ref(false)\n function emailAllSelected() {\n showEmailComposerModal.value = true\n }\n const spinner = ref(false)\n async function sendSingleInvite(inviteList: RegistrationInvite) {\n const id = inviteList.WaitListIDs[0]\n idUpdating.value = id\n showExpirationModal.value = false\n const results = await registrationClient.sendInvite(props.league, props.program, inviteList)\n const updated = results?.find((p) => p.id == id)\n\n //update client-side waitlist\n if (updated) {\n internalReportData.data.forEach((x) => {\n if (x.ID == id) {\n x.InvitationExpire = updated.invitationExpire\n x.InvitationDeclined = updated.invitationDeclined\n x.InvitationSent = updated.invitationSent\n x.UpwardWaitListStatusID = updated.typeWaitListStatusID ?? ''\n x.UpwardWaitListStatusDescription = 'Invitation send'\n }\n })\n }\n idUpdating.value = 0\n }\n\n async function inviteBulk(invite: RegistrationInvite) {\n try {\n progress.value = 'Sending invitations'\n spinner.value = true\n await registrationClient.sendInvite(props.league, props.program, invite)\n } finally {\n progress.value = ''\n spinner.value = false\n }\n ctx.emit('refresh')\n }\n\n /*\n * Display Formatting\n */\n function fullStatus(\n status: string,\n description: string,\n expire: Date | null,\n decline: Date | null,\n sent: Date | null\n ) {\n switch (status) {\n case InviteStatus.WAITING:\n return ''\n case InviteStatus.INVITATIONSENT:\n return `\n
${description}
${dayjs(sent ?? '').format('MM/DD h:mm a')}
\n
Expires
${dayjs(expire ?? '').format('MM/DD h:mm a')}\n `\n case InviteStatus.INVITATIONACCEPTED:\n return `
${description}
`\n case InviteStatus.INVITATIONEXPIRED:\n return `\n
\n ${description}\n
\n
${dayjs(expire ?? '').format('MM/DD h:mm a')}
\n `\n case InviteStatus.INVITATIONDECLINED:\n return `\n
${description}
\n
${dayjs(decline ?? '').format('MM/DD/YY')}
\n `\n }\n }\n\n /**\n * General use\n */\n function waitlistDate(d: Date | null) {\n if (d) {\n return dayjs(d).format('MM/DD h:mm a')\n }\n return ''\n }\n\n const showSelectAll = () => {\n // don't show selectAll for invitation accepted and invitation declined\n return filter.value != inviteStatusDisplay[3].value && filter.value != inviteStatusDisplay[5].value\n }\n\n function sendable(status: string) {\n return (\n status == InviteStatus.WAITING ||\n status == InviteStatus.INVITATIONSENT ||\n status == InviteStatus.INVITATIONEXPIRED\n )\n }\n\n const showCapacityWarning = computed(() => progress.value == '' || progress.value == null)\n\n /**\n * Watchers\n */\n\n watch(\n () => [props.reportData, props.program],\n () => {\n progress.value = ''\n filter.value = inviteStatusDisplay[0].value\n selectAll.value = false\n const data = cloneDeep(props.reportData) as RegistrationWaitlist[]\n internalReportData.data = data\n .map((x) => ({ ...x, selected: false, show: true }))\n .filter((x) => x.UpwardProgramID == props.program)\n .sort((a, b) => (a.WaitListDate == b.WaitListDate ? 0 : a.WaitListDate < b.WaitListDate ? -1 : 1))\n },\n { immediate: true }\n )\n\n watch(\n () => selectAll.value,\n () => {\n internalReportData.data.forEach((x) => {\n if (sendable(x.UpwardWaitListStatusID) && x.show) {\n x.selected = selectAll.value\n }\n })\n }\n )\n watch(\n () => filter.value,\n () => {\n selectAll.value = false\n internalReportData.data.forEach((x) => {\n x.show = filter.value == inviteStatusDisplay[0].value || filter.value == x.UpwardWaitListStatusID\n x.selected = false\n })\n }\n )\n\n function close() {\n progress.value = null\n }\n function emailSendCompleted() {\n showEmailComposerModal.value = false\n showEmailSentConfirmation.value = true\n }\n const selectedEmails = computed(() => {\n return internalReportData.data.filter((x) => x.selected).map((y) => y.Email.toLowerCase())\n })\n const showEmailSentConfirmation = ref(false)\n function closeEmailSentConfirmation() {\n showEmailSentConfirmation.value = false\n ctx.emit('refresh')\n }\n function viewMessageHistory() {\n const currentRoutePart = 'reports/web/waitlist'\n const historyRoutePart = 'communications/history'\n const historyRoute = router.currentRoute.fullPath.replace(currentRoutePart, historyRoutePart)\n router.push(historyRoute)\n }\n\n return {\n isConfirming,\n isByAge,\n confirmRemove,\n waitlistDate,\n removeTargetDesc,\n downloadCsv,\n actionClicked,\n expirationSelected,\n showExpirationModal,\n fullStatus,\n internalReportData,\n idUpdating,\n fmtPhone,\n selecting,\n selectedIds,\n sendable,\n selectAll,\n removeAccepted,\n removeDeclined,\n bulkExpirationSelected,\n showBulkExpirationModal,\n inviteAllSelected,\n progress: computed(() => progress.value),\n spinner,\n filter,\n inviteStatusDisplay,\n maxLen,\n showSelectAll: computed(showSelectAll),\n close,\n showCapacityWarning,\n emailAllSelected,\n showEmailComposerModal,\n emailSendCompleted,\n selectedEmails,\n showEmailSentConfirmation,\n closeEmailSentConfirmation,\n viewMessageHistory,\n upwardLeagueID: props.league,\n typeProgramID: props.program,\n showAddWaitlistModal,\n doShowAddWaitlistModal,\n onWaitlistSubmitted,\n }\n },\n})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport dayjs from 'dayjs'\n\nexport default defineComponent({\n name: 'WaitlistExpirationModal',\n components: { Modal, SelectInput },\n props: {\n value: { type: Boolean, required: true, default: false },\n playerName: { type: String, required: false, default: '' },\n },\n setup(props, ctx) {\n const selected = ref('168') // 7 days in hours\n const internal = ref(false)\n const list = [\n { text: '3 hours', value: '3' },\n { text: '12 hours', value: '12' },\n { text: '24 hours', value: '24' },\n { text: '36 hours', value: '36' },\n { text: '2 days', value: '48' },\n { text: '3 days', value: '72' },\n { text: '4 days', value: '96' },\n { text: '5 days', value: '120' },\n { text: '6 days', value: '144' },\n { text: '7 days', value: '168' },\n ]\n\n function send() {\n const expires = dayjs().add(Number(selected.value), 'h')\n ctx.emit('selected', expires.format('YYYY-MM-DDTHH:mm:ss'))\n }\n\n watch(\n () => props.value,\n () => (internal.value = props.value)\n )\n\n watch(\n () => internal.value,\n () => ctx.emit('input', internal.value)\n )\n return { list, selected, send, internal }\n },\n})\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!./WaitlistExpirationModal.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!./WaitlistExpirationModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WaitlistExpirationModal.vue?vue&type=template&id=0f70ece1&\"\nimport script from \"./WaitlistExpirationModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./WaitlistExpirationModal.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('div',{staticClass:\"alert alert-info m-auto p-0\",staticStyle:{\"width\":\"300px\"}},[_c('button',{staticClass:\"btn btn-small float-right p-0 pr-2 text-muted\",on:{\"click\":_vm.close}},[_vm._v(\"x\")]),_c('div',{staticClass:\"py-3 text-center\"},[_vm._v(_vm._s(_vm.progress)+\" \"),(_vm.spinner)?_c('Loading',{attrs:{\"is-small\":\"\"}}):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n name: 'ActionsProgress',\n components: { Loading },\n props: {\n message: { type: String, required: true },\n spinner: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const progress = ref('')\n watch(\n () => props.message,\n () => (progress.value = props.message)\n )\n function close() {\n ctx.emit('close')\n }\n return { progress, close }\n },\n})\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!./ActionProgress.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!./ActionProgress.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ActionProgress.vue?vue&type=template&id=22663382&\"\nimport script from \"./ActionProgress.vue?vue&type=script&lang=ts&\"\nexport * from \"./ActionProgress.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('div',{staticClass:\"d-flex flex-column align-items-start\",staticStyle:{\"min-width\":\"150px\"}},[(_vm.canSend)?_c('button',{staticClass:\"btn btn-link\",on:{\"click\":function($event){return _vm.clicked(_vm.WaitlistActionsEnum.SEND)}}},[_c('i',{staticClass:\"far fa-paper-plane\"}),_vm._v(\" send invite \")]):_vm._e(),(_vm.canCancel)?_c('button',{staticClass:\"btn btn-link\",on:{\"click\":function($event){return _vm.clicked(_vm.WaitlistActionsEnum.CANCEL)}}},[_c('i',{staticClass:\"fas fa-times\"}),_vm._v(\" cancel invite \")]):_vm._e(),(_vm.canResend)?_c('button',{staticClass:\"btn btn-link\",on:{\"click\":function($event){return _vm.clicked(_vm.WaitlistActionsEnum.SEND)}}},[_c('i',{staticClass:\"fas fa-redo\"}),_vm._v(\" re-send invite \")]):_vm._e(),(_vm.canRemove)?_c('button',{staticClass:\"btn btn-link\",on:{\"click\":function($event){return _vm.clicked(_vm.WaitlistActionsEnum.REMOVE)}}},[_c('i',{staticClass:\"fas fa-user-slash\"}),_vm._v(\" remove \")]):_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\nimport { defineComponent, computed } from '@vue/composition-api'\nimport { InviteStatus, WaitlistActionsEnum } from '@/views/Programs/Reports/WebviewReports/lib/Waitlist'\n\nexport default defineComponent({\n name: 'WaitlistActions',\n props: {\n status: { type: String, required: false, default: InviteStatus.WAITING },\n },\n setup(props, ctx) {\n function clicked(action: string) {\n ctx.emit('click', action)\n }\n\n const canRemove = computed(() => props.status != InviteStatus.INVITATIONSENT)\n const canSend = computed(() => props.status == InviteStatus.WAITING)\n const canCancel = computed(() => props.status == InviteStatus.INVITATIONSENT)\n const canResend = computed(\n () => props.status == InviteStatus.INVITATIONEXPIRED || props.status == InviteStatus.INVITATIONSENT\n )\n return { clicked, canRemove, canSend, canResend, canCancel, WaitlistActionsEnum }\n },\n})\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!./WaitlistActions.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!./WaitlistActions.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WaitlistActions.vue?vue&type=template&id=661a86ba&\"\nimport script from \"./WaitlistActions.vue?vue&type=script&lang=ts&\"\nexport * from \"./WaitlistActions.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('div',[(_vm.loading)?_c('div',[_c('loading')],1):_c('Modal',{attrs:{\"title\":\"Send Email\"},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}},[(!_vm.isAllowed)?_c('div',{staticClass:\"row mt-3\"},[_c('div',{staticClass:\"col-md-12\"},[_c('span',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_c('b',[_vm._v(\"Email\")]),_vm._v(\" is not enabled for this program. \")])])]):(!_vm.hasCredits)?_c('div',{staticClass:\"row mt-3\"},[_c('div',{staticClass:\"col-md-12\"},[_c('span',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(\" You have reached the limit of \"),_c('b',[_vm._v(\"Email\")]),_vm._v(\" messages you can send \")])])]):_c('VeeValidateForm',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar invalid = ref.invalid;\nvar errors = ref.errors;\nreturn [_c('div',{staticClass:\"bg-light-1 p-3 m-3\"},[_c('div',{staticClass:\"row\"},[_c('TextInput',{staticClass:\"col-6\",attrs:{\"label\":\"From\",\"sub-text\":\"Name displayed in recipient's inbox\",\"name\":\"Display name\",\"vee-validate-rules\":\"required\",\"required\":\"\"},model:{value:(_vm.from),callback:function ($$v) {_vm.from=$$v},expression:\"from\"}}),_c('TextInput',{staticClass:\"col-6\",attrs:{\"label\":\"Reply To\",\"sub-text\":\"Recipients will reply to this address\",\"name\":\"reply to email\",\"vee-validate-rules\":\"required|email\",\"required\":\"\"},model:{value:(_vm.replyTo),callback:function ($$v) {_vm.replyTo=$$v},expression:\"replyTo\"}})],1)]),_c('div',{staticClass:\"bg-light-1 p-3 m-3\"},[_c('TextInput',{staticClass:\"flex-form clear\",attrs:{\"vee-validate-rules\":\"required\",\"label\":\"Subject\",\"maxlength\":\"100\",\"required\":\"\"},model:{value:(_vm.subject),callback:function ($$v) {_vm.subject=$$v},expression:\"subject\"}})],1),_c('div',{staticClass:\"bg-light-1 p-3 m-3\"},[_c('HtmlEditor',{staticClass:\"flex-form\",attrs:{\"vee-validate-rules\":\"required\",\"label\":\"Body\",\"required\":\"\"},model:{value:(_vm.message),callback:function ($$v) {_vm.message=$$v},expression:\"message\"}})],1),_c('div',{staticClass:\"text-right\"},[_c('button',{staticClass:\"btn btn-success\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.send}},[(_vm.isSending)?_c('loading',{attrs:{\"is-small\":\"\"}}):_c('i',{staticClass:\"fa fa-paper-plane\"}),_vm._v(\" Send \")],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\nimport { defineComponent, ref, computed, PropType, onMounted } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport store from '@/store'\nimport { EmailSMSAccount } from '@/GeneratedTypes/Communication/EmailSMSAccount'\nimport Loading from '@/elements/Loading.vue'\nimport communicationsClient from '@/clients/communicationsClient'\nexport default defineComponent({\n name: 'SendEmailModal',\n props: {\n value: { type: Boolean, default: false, required: true },\n recipients: { type: Array as PropType>, default: [], required: true },\n },\n components: {\n Modal,\n VeeValidateForm,\n TextInput,\n HtmlEditor,\n Loading,\n },\n setup(props, { emit }) {\n const form = ref(null)\n const loading = ref(false)\n const isSending = ref(false)\n const email = computed(() => {\n return {\n displayName: from.value,\n replyTo: replyTo.value,\n emailSubject: subject.value,\n messageBody: message.value,\n to: props.recipients,\n accountNumber: accountNumber.value,\n upwardLeagueID: upwardLeagueID.value,\n attachments: null,\n sendCommunicationOn: null,\n minutesToAdd: null,\n recipientCriteria: null,\n }\n })\n const from = ref('')\n const replyTo = ref('')\n const subject = ref('')\n const message = ref('')\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const providerInfo = ref({} as any)\n const upwardLeagueID = computed(() => store.getters.leagueAbstraction.currentItem.upwardLeagueID ?? '')\n const hasCredits = computed(() => {\n if (!providerInfo.value) return false\n return (\n providerInfo.value!.emailMaxCredits < 0 ||\n providerInfo.value!.emailCredits < providerInfo.value.emailMaxCredits\n )\n })\n const isAllowed = computed(() => {\n return providerInfo.value?.isEmailAllowed ?? false\n })\n const internalValue = computed({\n get() {\n return props.value\n },\n set(v: Boolean) {\n emit('input', v)\n },\n })\n async function reportValidity() {\n return await form.value.reportValidity()\n }\n async function send() {\n const valid = await reportValidity()\n if (valid) {\n try {\n isSending.value = true\n await communicationsClient.sendMessage(email.value, 'sendemail')\n emit('sendCompleted', {\n success: true,\n error: null,\n })\n } catch (e: any) {\n emit('sendCompleted', {\n success: false,\n error: typeof e === 'string' ? e : e?.message,\n })\n } finally {\n isSending.value = false\n }\n }\n }\n onMounted(async () => {\n try {\n loading.value = true\n const info = await communicationsClient.retrieveProviderInfo(\n upwardLeagueID.value,\n accountNumber.value\n )\n providerInfo.value = info!\n } finally {\n loading.value = false\n }\n })\n return {\n form,\n internalValue,\n from,\n replyTo,\n subject,\n message,\n send,\n loading,\n isAllowed,\n hasCredits,\n isSending,\n }\n },\n})\nexport class SendCompletedResult {\n success = false\n error = ''\n}\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!./SendEmailModal.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!./SendEmailModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SendEmailModal.vue?vue&type=template&id=06096e09&\"\nimport script from \"./SendEmailModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./SendEmailModal.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 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!./WaitlistReport.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!./WaitlistReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WaitlistReport.vue?vue&type=template&id=5f199f69&scoped=true&\"\nimport script from \"./WaitlistReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./WaitlistReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./WaitlistReport.vue?vue&type=style&index=0&id=5f199f69&scoped=true&lang=scss&\"\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 \"5f199f69\",\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('div',[_vm._v(\" Choose a time period below to view Electronic Fund Transfers from Upward to your bank account on file for online registration payments collected on your behalf. \"),_c('SelectInput',{attrs:{\"label\":\"Select a Time Period\",\"items-list\":_vm.items,\"value-property-name\":\"value\",\"text-property-name\":\"label\"},model:{value:(_vm.days),callback:function ($$v) {_vm.days=$$v},expression:\"days\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\n\nimport DateInput from '@/elements/DateInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport dayjs from 'dayjs'\ninterface EFTReportParametersType {\n BeginDate: Date\n EndDate: Date\n}\nexport default defineComponent({\n components: { SelectInput, DateInput },\n props: {\n leagueID: { type: String, required: true, default: '' },\n },\n\n setup(props, ctx) {\n const beginDate = ref(new Date())\n const endDate = ref(new Date())\n const days = ref(0)\n const items = [\n { value: 0, label: '-Choose a time period-' },\n { value: 30, label: 'Last 30 Days' },\n { value: 60, label: 'Last 60 Days' },\n { value: 90, label: 'Last 90 Days' },\n { value: 365, label: 'Last 12 Months' },\n ]\n watch(\n () => days.value,\n () => {\n beginDate.value = dayjs(new Date()).subtract(days.value, 'd').toDate()\n updateParameters()\n }\n )\n\n function updateParameters() {\n ctx.emit('update-parameters', {\n BeginDate: beginDate.value,\n EndDate: endDate.value,\n } as EFTReportParametersType)\n }\n\n watch(\n () => endDate,\n () => {\n updateParameters()\n }\n )\n\n return { beginDate, endDate, days, items }\n },\n})\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!./EFTReportControls.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!./EFTReportControls.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EFTReportControls.vue?vue&type=template&id=7df292aa&\"\nimport script from \"./EFTReportControls.vue?vue&type=script&lang=ts&\"\nexport * from \"./EFTReportControls.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('div',{staticClass:\"eft-report\"},[(_vm.reportData.length)?[_c('div',{staticClass:\"row mb-1\"},[_c('div',{staticClass:\"col mt-auto\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.showAll}},[_vm._v(\"View All Details\")])]),_c('div',{staticClass:\"col text-right\"},[_c('button',{staticClass:\"btn btn-primary btn-sm\",on:{\"click\":_vm.downloadCsv}},[_vm._v(\"Export\")])])]),_c('div',{staticClass:\"header container\"},[_vm._m(0),_vm._l((_vm.reportNormalized),function(rec){return _c('div',{key:rec.EftNumber},[_c('div',{staticClass:\"row detail\"},[_c('div',{staticClass:\"col\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.showDetails(rec.EftNumber)}}},[_vm._v(\"Show Details\")])]),_c('div',{staticClass:\"col\"},[_vm._v(_vm._s(_vm.date(rec.EftDate) || 'n/a'))]),_c('div',{staticClass:\"col right\"},[_c('span',{staticClass:\"number\"},[_vm._v(_vm._s(_vm.cash(rec.EftAmount) || 'n/a'))])])]),_c('div',{class:['row', { none: _vm.showing.indexOf(rec.EftNumber) < 0 }]},[_c('div',{staticClass:\"detail container\"},[_vm._m(1,true),_vm._l((rec.detail),function(detail){return _c('div',{key:(\"\" + (detail.CashRecNbr) + (detail.lastConfirmationNumber) + (detail.FirstName)),staticClass:\"row detail\",class:{ 'bg-1': detail.bg === 0, 'bg-2': detail.bg === 1 }},[_c('div',{staticClass:\"col\"},[_vm._v(_vm._s(detail.ConfirmationNumber))]),_c('div',{staticClass:\"col\"},[_vm._v(_vm._s(_vm.formatDate(detail.TransactionCompletedDate)))]),_c('div',{staticClass:\"col\"},[_vm._v(_vm._s(detail.UpwardLeagueID))]),_c('div',{staticClass:\"col\"},[_vm._v(_vm._s(detail.FirstName)+\" \"+_vm._s(detail.LastName))]),_c('div',{staticClass:\"col right\"},[_c('span',{staticClass:\"number\"},[_vm._v(\"$ \"+_vm._s(detail.AmountExpectedToPay.toFixed(2)))])]),_c('div',{staticClass:\"col right\"},[(detail.total > 0)?_c('span',{staticClass:\"total\"},[_vm._v(\"$ \"+_vm._s(detail.total.toFixed(2)))]):_vm._e()])])})],2)])])})],2)]:_c('div',{staticClass:\"alert alert-info\"},[_vm._v(\"No EFT information was found for the selected time period.\")])],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row header\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Click for details\")]),_c('div',{staticClass:\"col\"},[_vm._v(\"EFT Date\")]),_c('div',{staticClass:\"col\"},[_vm._v(\"EFT Amount\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row header\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Confirmation #\")]),_c('div',{staticClass:\"col\"},[_vm._v(\"Transaction Date\")]),_c('div',{staticClass:\"col\"},[_vm._v(\"Upward League ID\")]),_c('div',{staticClass:\"col\"},[_vm._v(\"Description\")]),_c('div',{staticClass:\"col\"},[_vm._v(\"Subtotal\")]),_c('div',{staticClass:\"col\"},[_vm._v(\"Total\")])])}]\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\nimport dayjs from 'dayjs'\n\ninterface EFTListHeader {\n EftAmount: number\n EftDate: Date\n EftNumber: string\n detail: EFTListDetail[]\n}\n\ninterface EFTListDetail {\n AmountExpectedToPay: null | number\n CashRecAmount: number\n CashRecNbr: string\n ConfirmationNumber: null | string\n lastConfirmationNumber: null | string\n FirstName: null | string\n LastName: null | string\n Regid: null | string\n TransactionCompletedDate: null | Date\n UpwardLeagueID: string\n total: number | null\n bg: number\n}\n\ninterface EFTListDataType {\n AmountExpectedToPay: null | number\n CashRecAmount: number\n CashRecNbr: string\n ConfirmationNumber: null | string\n EftAmount: number\n EftDate: Date\n EftNumber: string\n FirstName: null | string\n LastName: null | string\n Regid: null | string\n TransactionCompletedDate: null | Date\n UpwardLeagueID: string\n}\n\nimport { computed, defineComponent, PropType, ref } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\nexport default defineComponent({\n props: {\n reportData: {\n type: Array as PropType,\n required: true,\n default: () => [],\n },\n },\n setup(props) {\n const showing = ref([])\n\n function date(d: Date) {\n return dayjs(d).format('MM/DD/YYYY')\n }\n\n const reportNormalized = computed(() => {\n const rv: EFTListHeader[] = []\n props.reportData.forEach((x) => {\n let d = rv.find((y) => y.EftNumber == x.EftNumber)\n if (!d) {\n d = {\n EftNumber: x.EftNumber,\n EftAmount: x.EftAmount,\n EftDate: x.EftDate,\n detail: [],\n }\n rv.push(d)\n }\n d?.detail.push({\n AmountExpectedToPay: x.AmountExpectedToPay,\n CashRecAmount: x.CashRecAmount,\n CashRecNbr: x.CashRecNbr,\n ConfirmationNumber: x.ConfirmationNumber,\n lastConfirmationNumber: x.ConfirmationNumber,\n FirstName: x.FirstName,\n LastName: x.LastName,\n Regid: x.Regid,\n TransactionCompletedDate: x.TransactionCompletedDate,\n UpwardLeagueID: x.UpwardLeagueID,\n total: 0,\n bg: 0,\n })\n })\n\n let bg = 0\n rv.forEach((x) => {\n x.EftAmount = x.detail.reduce((a, y) => a + (y.AmountExpectedToPay || 0), 0)\n x.detail = cloneDeep(\n x.detail.sort(\n (a, b) =>\n dayjs(a?.TransactionCompletedDate ?? undefined).valueOf() -\n dayjs(b?.TransactionCompletedDate ?? undefined).valueOf()\n )\n )\n x.detail.forEach((x, i, a) => {\n x.bg = bg\n\n // clear out some of the columns that are duplicates\n if (a[i - 1] && a[i - 1].lastConfirmationNumber == x.lastConfirmationNumber) {\n x.ConfirmationNumber = '➡'\n x.TransactionCompletedDate = null\n x.UpwardLeagueID = ''\n }\n\n // change the background color based on alternating confirmation numbers\n if (!a[i + 1] || x.lastConfirmationNumber != a[i + 1].lastConfirmationNumber) {\n bg = (bg + 1) % 2\n x.total = a\n .filter((y) => y.lastConfirmationNumber == x.lastConfirmationNumber)\n .reduce((a, b) => a + (b?.AmountExpectedToPay || 0), 0)\n }\n })\n })\n\n return rv\n })\n\n function showAll() {\n if (showing.value.length == reportNormalized.value.length) {\n showing.value = []\n } else {\n showing.value = reportNormalized.value.map((x) => x.EftNumber)\n }\n }\n\n function showDetails(s: string) {\n const i = showing.value.indexOf(s)\n if (i >= 0) {\n showing.value.splice(i, 1)\n } else {\n showing.value.push(s)\n }\n }\n\n function cash(n: number) {\n return `$ ${n.toFixed(2)}`\n }\n\n function formatDate(d: Date | null) {\n if (d) {\n return dayjs(d).format('MMM DD YYYY hh:mm A')\n } else {\n return ''\n }\n }\n\n function downloadCsv() {\n const headerTitles = [\n 'Confirmation Number',\n 'Transaction Date/Time',\n 'Upward League ID',\n 'Description',\n 'Subtotal',\n ]\n\n const csvLines = ['data:text/csv;charset=utf-8,', headerTitles.map((t) => `\"${t}\"`).join(',')]\n\n props.reportData.map((r) => {\n const rowValues = [\n r.ConfirmationNumber,\n r.TransactionCompletedDate,\n r.UpwardLeagueID,\n `${r.FirstName} ${r.LastName}`,\n r.AmountExpectedToPay,\n ]\n\n csvLines.push(rowValues.map((t) => `\"${t}\"`).join(','))\n })\n\n const csvData = csvLines.join('\\n')\n var encodedUri = encodeURI(csvData)\n var link = document.createElement('a')\n link.setAttribute('href', encodedUri)\n link.setAttribute('download', 'eft_report.csv')\n document.body.appendChild(link) // Required for FF\n\n link.click()\n }\n\n return { date, cash, reportNormalized, showDetails, showAll, showing, formatDate, downloadCsv }\n },\n})\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!./EFTReport.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!./EFTReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EFTReport.vue?vue&type=template&id=495a3681&scoped=true&\"\nimport script from \"./EFTReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./EFTReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./EFTReport.vue?vue&type=style&index=0&id=495a3681&scoped=true&lang=scss&\"\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 \"495a3681\",\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('div',{staticClass:\"table-responsive scroll\"},[_c('table',{staticClass:\"table table-row-striped\",attrs:{\"hideSortIcons\":true}},[_c('thead',{attrs:{\"slot\":\"head\"},slot:\"head\"},[_c('tr',[_c('th',{attrs:{\"scope\":\"col\"},on:{\"click\":function($event){return _vm.sortList('ContactType')}}},[_vm._v(\"Contact Type \"),_c('i',{staticClass:\"fa fa-sort\"})]),_c('th',{attrs:{\"scope\":\"col\"},on:{\"click\":function($event){return _vm.sortList('ParticipantFirstName')}}},[_vm._v(\" Participant First Name \"),_c('i',{staticClass:\"fa fa-sort\"})]),_c('th',{attrs:{\"scope\":\"col\"},on:{\"click\":function($event){return _vm.sortList('ParticipantLastName')}}},[_vm._v(\" Participant Last Name \"),_c('i',{staticClass:\"fa fa-sort\"})]),_c('th',{attrs:{\"scope\":\"col\"},on:{\"click\":function($event){return _vm.sortList('ContactFirstName')}}},[_vm._v(\" Contact First Name \"),_c('i',{staticClass:\"fa fa-sort\"})]),_c('th',{attrs:{\"scope\":\"col\"},on:{\"click\":function($event){return _vm.sortList('ContactLastName')}}},[_vm._v(\" Contact Last Name \"),_c('i',{staticClass:\"fa fa-sort\"})]),_c('th',{attrs:{\"scope\":\"col\"},on:{\"click\":function($event){return _vm.sortList('ContactCommunicationType')}}},[_vm._v(\"Type \"),_c('i',{staticClass:\"fa fa-sort\"})]),_c('th',{attrs:{\"scope\":\"col\"},on:{\"click\":function($event){return _vm.sortList('ContactCommunicationID')}}},[_vm._v(\" Email/Phone \"),_c('i',{staticClass:\"fa fa-sort\"})])])]),_vm._l((_vm.sortedData),function(rec,index){return _c('tbody',{key:index},[_c('tr',[_c('td',[_c('div',[_vm._v(_vm._s(rec.ContactType))])]),_c('td',[_c('div',[_vm._v(_vm._s(rec.ParticipantFirstName))])]),_c('td',[_c('div',[_vm._v(_vm._s(rec.ParticipantLastName))])]),_c('td',[_c('div',[_vm._v(_vm._s(rec.ContactFirstName))])]),_c('td',[_c('div',[_vm._v(_vm._s(rec.ContactLastName))])]),_c('td',[_c('div',[_vm._v(_vm._s(rec.ContactCommunicationType))])]),_c('td',[_c('div',[_vm._v(_vm._s(rec.ContactCommunicationID))])])])])})],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\n\n\n\n\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { cloneDeep } from 'lodash'\n\ninterface CommunicationsOptOutDataType {\n ContactType: string\n ParticipantFirstName: string\n ParticipantLastName: string\n ContactFirstName: string\n ContactLastName: string\n ContactCommunicationType: string\n EmailPhone: string\n}\n//References IReportService.cs and CommunicationsOptOutReport.cs in API\nexport default defineComponent({\n name: 'CommunicationsOptOutReport',\n props: {\n reportData: {\n type: Array as PropType,\n required: true,\n default: () => [],\n },\n league: {\n type: String as PropType,\n required: true,\n default: '',\n },\n },\n setup(props) {\n const sortedData = ref([])\n const cullData = () => (sortedData.value = cloneDeep(props.reportData))\n\n watch(\n () => [props.reportData],\n () => cullData(),\n { immediate: true }\n )\n\n return {\n sortedData,\n sortedbyASC: true,\n }\n },\n mounted() {\n this.sortedData\n },\n methods: {\n //Plumbing for sortList\n sortList(sortBy: any) {\n if (this.sortedbyASC) {\n this.sortedData.sort((x: any, y: any) => (x[sortBy] > y[sortBy] ? -1 : 1))\n this.sortedbyASC = false\n } else {\n this.sortedData.sort((x: any, y: any) => (x[sortBy] < y[sortBy] ? -1 : 1))\n this.sortedbyASC = true\n }\n },\n },\n})\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!./CommunicationsOptOutReport.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!./CommunicationsOptOutReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CommunicationsOptOutReport.vue?vue&type=template&id=30829917&scoped=true&\"\nimport script from \"./CommunicationsOptOutReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./CommunicationsOptOutReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CommunicationsOptOutReport.vue?vue&type=style&index=0&id=30829917&scoped=true&lang=scss&\"\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 \"30829917\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\n\nimport { LeagueProgams2LeagueListItem } from '@/lib/support/models/LeagueListItem/LeaguePrograms2LeagueListItem'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport {\n LeagueInfoMoreThanOneProgram,\n LeagueListItemSeed,\n getEmptyLeagueListItem,\n} from '@/lib/support/models/LeagueListItem/data'\n\nimport Modal from '@/components/Modal.vue'\nimport Loading from '@/elements/Loading.vue'\nimport TypeProgramTab from '@/components/TypeProgramTab.vue'\nimport WaitlistReport from '@/views/Programs/Reports/WebviewReports/WaitlistReport.vue'\nimport EFTReportControls from '@/components/EFTReportControls.vue'\nimport EFTReport from '@/views/Programs/Reports/WebviewReports/EFTReport.vue'\nimport CommunicationsOptOutReport from '@/views/Programs/Reports/WebviewReports/CommunicationsOptOutReport.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'WebviewReports',\n components: {\n Modal,\n Loading,\n TypeProgramTab,\n WaitlistReport,\n EFTReport,\n EFTReportControls,\n CommunicationsOptOutReport,\n },\n setup(props, ctx) {\n const leagueAbstraction = computed(() => store.getters.leagueAbstraction.currentItem)\n const dataSource = ref[]>([])\n const currentProgram = ref('')\n const currentReport = ref('')\n const loading = ref(false)\n const params = ref | boolean>(false)\n\n const reports = ref<{\n [reportName: string]: {\n name: string\n path: string\n parameters: any\n }\n }>({\n waitlist: {\n name: 'Online Registration Waitlist',\n path: 'registrationwaitlist',\n parameters: {},\n },\n 'financial-details': {\n name: 'Online Registration Financial Details',\n path: 'registrationeftpayment',\n parameters: false,\n },\n communicationsoptout: {\n name: 'Email / SMS Opt Outs',\n path: 'registrationcommunicationsoptout',\n parameters: {},\n },\n })\n\n const reportName = computed((): string => ctx.root.$route.params.reportName)\n\n const currentReportDefaultParams = computed((): Record | boolean => {\n if (!reportName.value || !reports.value[reportName.value]) {\n return false\n }\n return reports.value[reportName.value].parameters\n })\n\n const currentReportPath = computed((): string => {\n if (!reportName.value || !reports.value[reportName.value]) {\n return ''\n }\n return reports.value[reportName.value].path\n })\n\n const currentReportName = computed((): string => {\n if (!reportName.value || !reports.value[reportName.value]) {\n return ''\n }\n return reports.value[reportName.value].name\n })\n\n const tabs = computed(\n (): LeagueListItem => {\n if (leagueAbstraction.value && leagueAbstraction.value.programs) {\n return LeagueProgams2LeagueListItem(leagueAbstraction.value.programs)\n }\n return getEmptyLeagueListItem(new LeagueListItemSeed())\n }\n )\n\n const typeProgramID = computed(() =>\n leagueAbstraction.value.programs ? leagueAbstraction.value.programs[0].typeProgramID : ''\n )\n\n onMounted(async () => {\n if (typeProgramID.value) {\n currentProgram.value = typeProgramID.value\n }\n\n if (currentReportPath.value) {\n await reportSelected(currentReportPath.value)\n }\n })\n\n function updateParams(p: Record) {\n params.value = p\n }\n\n /**\n * Report selected from the menu, will reset the data, set the parameters and try to load the report.\n * @param report\n * @private\n */\n async function reportSelected(report: string) {\n currentReport.value = report\n params.value = currentReportDefaultParams.value\n dataSource.value = []\n await loadReport()\n }\n\n watch(\n () => params.value,\n async () => {\n await loadReport()\n }\n )\n\n watch(\n () => currentReportPath.value,\n async () => {\n await reportSelected(currentReportPath.value)\n }\n )\n\n /**\n * Attempt to load the report, may not go if parameters are not set.\n * @private\n */\n async function loadReport() {\n if (params.value && currentReport.value) {\n try {\n loading.value = true\n let ds = await reportsClient.getReport(\n currentReport.value,\n ctx.root.$route.params.id,\n currentProgram.value,\n params.value\n )\n if (!ds) {\n ds = []\n }\n dataSource.value = ds\n } finally {\n loading.value = false\n }\n }\n }\n\n return {\n LeagueInfoMoreThanOneProgram,\n currentReportName,\n currentReport,\n tabs,\n currentProgram,\n loading,\n dataSource,\n leagueAbstraction,\n loadReport,\n updateParams,\n }\n },\n})\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!./WebviewReports.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!./WebviewReports.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WebviewReports.vue?vue&type=template&id=60dc34f1&\"\nimport script from \"./WebviewReports.vue?vue&type=script&lang=ts&\"\nexport * from \"./WebviewReports.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./WebviewReports.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c(_vm.reportComponent,{tag:\"component\"})],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',[(_vm.loading)?_c('div',{staticClass:\"col-md-12 text-center\"},[_c('loading'),_c('div',[_vm._v(_vm._s(_vm.status))])],1):_vm._e(),_c('viewer',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.loading),expression:\"!loading\"}],ref:\"reportViewer\",attrs:{\"availableExports\":['pdf'],\"sidebar-visible\":false},on:{\"document-loaded\":_vm.documentLoaded,\"report-loaded\":_vm.reportLoaded}}),_c('modal',{attrs:{\"title\":\"Exporting Report\",\"show-close\":true,\"is-small\":true},model:{value:(_vm.showExporting),callback:function ($$v) {_vm.showExporting=$$v},expression:\"showExporting\"}},[_vm._v(\" Exporting page \"+_vm._s(_vm.currentPage)+\" \")])],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\nimport { defineComponent, ref, onMounted } from '@vue/composition-api'\n\nimport { Viewer } from '@grapecity/activereports-vue'\nimport { Core, PdfExport } from '@grapecity/activereports'\n\nimport Loading from '@/elements/Loading.vue'\nimport Modal from '@/components/Modal.vue'\n\nCore.PageReport.LicenseKey = process.env.VUE_APP_ACTIVE_REPORT_JS_KEY ?? ''\n\nCore.FontStore.registerFonts('/Fonts/fontsConfig.json')\n\nexport default defineComponent({\n name: 'ActiveReport',\n components: {\n Viewer,\n Loading,\n Modal,\n },\n props: {\n status: { type: String, default: '' },\n reportName: { type: String, default: 'DynamicReport' },\n loading: { type: Boolean, default: true },\n },\n setup(props, ctx) {\n const showExporting = ref(false)\n\n const currentPage = ref(0)\n\n const report = ref(null)\n\n function documentLoaded() {\n ctx.emit('report-loaded')\n }\n\n function reportLoaded(args: any) {\n report.value = args.report\n }\n\n function exportReportProgress(pageNumber: number) {\n currentPage.value = pageNumber\n }\n\n function exportCancel() {\n return !showExporting.value // continue export. Return true to cancel export process\n }\n\n function exportPdf() {\n showExporting.value = true\n currentPage.value = 0\n\n report.value.run().then((document: any) =>\n PdfExport.exportDocument(document, undefined, exportReportProgress, exportCancel).then(\n (result: any) => {\n result.download(props.reportName)\n showExporting.value = false\n }\n )\n )\n }\n\n onMounted(() => {\n const viewer: any = ctx.refs.reportViewer\n const pdfExportButton = {\n key: '$pdfExportButtonKey',\n iconCssClass: 'far fa-file-pdf',\n enabled: true,\n action: exportPdf,\n }\n viewer.Viewer().toolbar.addItem(pdfExportButton) //now you want to remove everything except pdfExportButton and the navigation block.\n viewer.Viewer().toolbar.updateLayout({\n default: ['$navigation', '$print', '$pdfExportButtonKey', '$refresh', '$zoom'],\n })\n })\n\n function loadReportData(report: any, reportOptions: any) {\n const viewer: any = ctx.refs.reportViewer\n viewer.open(report, reportOptions)\n }\n\n return {\n showExporting,\n currentPage,\n reportLoaded,\n documentLoaded,\n loadReportData,\n }\n },\n})\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!./ActiveReport.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!./ActiveReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ActiveReport.vue?vue&type=template&id=66d581ea&\"\nimport script from \"./ActiveReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./ActiveReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ActiveReport.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mt-5\"},[(_vm.hasCheer)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Hide Carpool Links\"},model:{value:(_vm.hideCarpoolLinks),callback:function ($$v) {_vm.hideCarpoolLinks=$$v},expression:\"hideCarpoolLinks\"}}),_c('checkbox-input',{staticClass:\"col-sm-5\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Hide Practice Night Exclusion\"},model:{value:(_vm.hidePracticeNightExclusion),callback:function ($$v) {_vm.hidePracticeNightExclusion=$$v},expression:\"hidePracticeNightExclusion\"}}),_c('div',{staticClass:\"col-sm-3\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.loadReport}},[_vm._v(\"Build Form\")])])],1),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-4\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"BlankEvalForm\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nexport default defineComponent({\n name: 'BlankParticipantEvalForm',\n components: {\n SelectInput,\n CheckboxInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n\n const selectedProgram = ref('')\n\n const hideCarpoolLinks = ref(false)\n const hidePracticeNightExclusion = ref(false)\n const schoolYear = ref('21-22') //hardcoded for now - TW\n const loadStatus = ref('')\n const loading = ref(false)\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n onMounted(() => {\n selectedProgram.value = typeProgramID.value\n })\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loading.value = true\n let leagueId = 0\n let typeProgramId = ''\n let createBlankReport = true\n\n if (isCamp.value) {\n leagueId = camp.value.id\n typeProgramId = selectedProgram.value\n } else {\n leagueId = league.value.id\n typeProgramId = selectedProgram.value\n }\n\n loadStatus.value = 'Downloading Form Data . . .'\n const data = await Promise.all([\n reportsClient.getEvaluationData(\n upwardLeagueId.value,\n accountNumber.value,\n createBlankReport,\n typeProgramId\n ),\n reportsClient.getEvaluationSizeData(\n upwardLeagueId.value,\n accountNumber.value,\n leagueId,\n typeProgramId,\n createBlankReport\n ),\n reportsClient.getEvaluationQuestionsData(upwardLeagueId.value, accountNumber.value, typeProgramId),\n ])\n\n loadStatus.value = 'Downloading Form Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('blankevalform'),\n reportsClient.getReportTemplate('evalsizessubreport'),\n reportsClient.getReportTemplate('evalquestionssubreport'),\n ])\n\n loadStatus.value = 'Processing Form Templates . . .'\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n const sizeSubReport = JSON.parse(reportTemplates[1]?.jsonContent ?? '')\n const questionSubReport = JSON.parse(reportTemplates[2]?.jsonContent ?? '')\n\n const mainData = data[0]?.slice(0, 1)\n\n const parameters = [\n {\n Value: [hidePracticeNightExclusion.value],\n Name: 'HidePracticeNights',\n },\n {\n Value: [hideCarpoolLinks.value],\n Name: 'HideCarpoolLinks',\n },\n {\n Value: [`${leagueId}`],\n Name: 'LeagueID',\n },\n {\n Value: [`${accountNumber.value}`],\n Name: 'AccountNumber',\n },\n {\n Value: [`${schoolYear.value}`],\n Name: 'SchoolYear',\n },\n {\n Value: [store.getters.leagueAbstraction.refLabel],\n Name: 'RefLabel',\n },\n ]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n sizeSubReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(data[1])\n questionSubReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(data[2])\n\n const resourceLocator = {\n getResource: function (name: string) {\n if (name === 'eval-sizes-sub-report.rdlx-json') return sizeSubReport\n if (name === 'eval-questions-sub-report.rdlx-json') return questionSubReport\n },\n }\n\n loadStatus.value = 'Loading Form . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, { ReportParams: parameters, ResourceLocator: resourceLocator })\n }\n\n return {\n hasCheer,\n programs,\n selectedProgram,\n loading,\n hideCarpoolLinks,\n hidePracticeNightExclusion,\n loadStatus,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./BlankParticipantEvalForm.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!./BlankParticipantEvalForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BlankParticipantEvalForm.vue?vue&type=template&id=2d11e1cc&\"\nimport script from \"./BlankParticipantEvalForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./BlankParticipantEvalForm.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('div',{staticClass:\"mt-5\"},[(_vm.hasCheer)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-2\"},[_c('select-input',{attrs:{\"itemsList\":_vm.importOptions,\"textPropertyName\":\"importName\",\"valuePropertyName\":\"importValue\",\"label\":\"All Or Imported\",\"showBlankItem\":false,\"enabled\":!_vm.loading},model:{value:(_vm.selectedAllOrImported),callback:function ($$v) {_vm.selectedAllOrImported=$$v},expression:\"selectedAllOrImported\"}})],1),_c('div',{staticClass:\"col-sm-2\"},[_c('select-input',{attrs:{\"itemsList\":_vm.genderOptions,\"textPropertyName\":\"genderName\",\"valuePropertyName\":\"genderValue\",\"label\":\"Filter by Gender\",\"showBlankItem\":false,\"enabled\":!_vm.loading},model:{value:(_vm.selectedGender),callback:function ($$v) {_vm.selectedGender=$$v},expression:\"selectedGender\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Filter by Registration Date\"},model:{value:(_vm.filterByRegDate),callback:function ($$v) {_vm.filterByRegDate=$$v},expression:\"filterByRegDate\"}}),(_vm.filterByRegDate)?_c('div',{staticClass:\"col-sm-3\"},[_c('date-input',{attrs:{\"label\":\"Start Date\",\"min-date\":new Date(_vm.dateLimits.min),\"max-date\":new Date(_vm.dateLimits.max)},model:{value:(_vm.selectedRegStartDate),callback:function ($$v) {_vm.selectedRegStartDate=$$v},expression:\"selectedRegStartDate\"}})],1):_vm._e(),(_vm.filterByRegDate)?_c('div',{staticClass:\"col-sm-3\"},[_c('date-input',{attrs:{\"label\":\"End Date\",\"min-date\":new Date(_vm.dateLimits.min),\"max-date\":new Date(_vm.dateLimits.max)},model:{value:(_vm.selectedRegEndDate),callback:function ($$v) {_vm.selectedRegEndDate=$$v},expression:\"selectedRegEndDate\"}})],1):_vm._e()],1),_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":(\"Filter by \" + (_vm.isByAge ? 'Age' : 'Grade'))},on:{\"change\":_vm.setGrades},model:{value:(_vm.filterByGrade),callback:function ($$v) {_vm.filterByGrade=$$v},expression:\"filterByGrade\"}}),_c('div',{staticClass:\"col-sm-2\"},[_c('select-input',{attrs:{\"itemsList\":_vm.gradesList,\"valuePropertyName\":\"id\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"label\":\"From\",\"showBlankItem\":true,\"enabled\":_vm.filterByGrade},model:{value:(_vm.selectedStartGrade),callback:function ($$v) {_vm.selectedStartGrade=$$v},expression:\"selectedStartGrade\"}})],1),_c('div',{staticClass:\"col-sm-2\"},[_c('select-input',{attrs:{\"itemsList\":_vm.gradesList,\"valuePropertyName\":\"id\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"label\":\"To\",\"showBlankItem\":true,\"enabled\":_vm.filterByGrade},model:{value:(_vm.selectedEndGrade),callback:function ($$v) {_vm.selectedEndGrade=$$v},expression:\"selectedEndGrade\"}})],1)],1),_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-4\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Only Show Participants with No Eval Score\"},model:{value:(_vm.noEvalsOnly),callback:function ($$v) {_vm.noEvalsOnly=$$v},expression:\"noEvalsOnly\"}}),_c('checkbox-input',{staticClass:\"col-sm-4\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Hide Carpool Links\"},model:{value:(_vm.hideCarpoolLinks),callback:function ($$v) {_vm.hideCarpoolLinks=$$v},expression:\"hideCarpoolLinks\"}}),_c('checkbox-input',{staticClass:\"col-sm-4\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Hide Practice Night Exclusion\"},model:{value:(_vm.hidePracticeNightExclusion),callback:function ($$v) {_vm.hidePracticeNightExclusion=$$v},expression:\"hidePracticeNightExclusion\"}})],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.loadReport}},[_vm._v(\"Build Form\")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"EvalForm\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\n\nimport DateInput from '@/elements/DateInput.vue'\n\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nimport dayjs from 'dayjs'\n\nimport store from '@/store'\nimport { getGradesListFromAccount } from '@/services/gradeService'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\n\nexport default defineComponent({\n name: 'ParticipantEvalForm',\n components: {\n SelectInput,\n CheckboxInput,\n ActiveReport,\n DateInput,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const currentDateMinusOne = computed(() => dayjs().subtract(1, 'day').format('YYYY-MM-DD hh:mm'))\n const currentDate = computed(() => dayjs().format('YYYY-MM-DD hh:mm'))\n\n const selectedProgram = ref('')\n const selectedAllOrImported = ref('1')\n const selectedGender = ref('E')\n const filterByRegDate = ref(false)\n const selectedRegStartDate = ref(currentDateMinusOne.value)\n const selectedRegEndDate = ref(dayjs().format('YYYY-MM-DD hh:mm'))\n const filterByGrade = ref(false)\n const selectedStartGrade = ref('0')\n const selectedEndGrade = ref('0')\n\n const noEvalsOnly = ref(false)\n\n const isByAge = computed(() => {\n if (isCamp.value) {\n return camp.value.ageCutoffDate !== null\n } else {\n return league.value.ageCutoffDate !== null\n }\n })\n\n const importOptions = ref([\n { importName: 'All Players', importValue: '1' },\n { importName: 'Imported Players Only', importValue: '0' },\n ])\n\n const genderOptions = ref([\n { genderName: 'All Genders', genderValue: 'E' },\n { genderName: 'Male Only', genderValue: 'M' },\n { genderName: 'Female Only', genderValue: 'F' },\n ])\n\n const hideCarpoolLinks = ref(false)\n const hidePracticeNightExclusion = ref(false)\n const schoolYear = ref('21-22') //hardcoded for now - TW\n const loadStatus = ref('')\n const loading = ref(false)\n\n function setGrades() {\n if (!filterByGrade.value) {\n selectedStartGrade.value = '0'\n selectedEndGrade.value = '0'\n }\n }\n\n const dateLimits = ref({\n min: '2019-01-01 00:00',\n max: currentDate.value,\n })\n\n //const gradesList = computed(() => getGrades(false))\n const gradesList = computed(() => {\n let retval: UpwardGradeTypeID[] = []\n const accts = isCamp.value ? camp.value.accounts : league.value.accounts\n const acct = accts?.find((x) => x.accountNumber == accountNumber.value)\n if (acct) {\n retval = getGradesListFromAccount(acct, selectedProgram.value, selectedGender.value)\n }\n return retval\n })\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n onMounted(() => {\n selectedProgram.value = typeProgramID.value\n })\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loading.value = true\n let leagueId = 0\n let typeProgramId = ''\n let createBlankReport = false\n let showAll = selectedAllOrImported.value\n let gender = selectedGender.value\n let filterByDate = filterByRegDate.value\n let startDate = dayjs(selectedRegStartDate.value).format('YYYY-MM-DD')\n let endDate = dayjs(selectedRegEndDate.value).format('YYYY-MM-DD')\n let startGrade = selectedStartGrade.value\n let endGrade = selectedEndGrade.value\n let noEvalScoresOnly = noEvalsOnly.value\n\n if (isCamp.value) {\n leagueId = camp.value.id\n typeProgramId = selectedProgram.value\n } else {\n leagueId = league.value.id\n typeProgramId = selectedProgram.value\n }\n\n loadStatus.value = 'Downloading Form Data . . .'\n const data = await Promise.all([\n reportsClient.getEvaluationData(\n upwardLeagueId.value,\n accountNumber.value,\n createBlankReport,\n typeProgramId,\n showAll,\n gender,\n filterByDate,\n filterByGrade.value,\n startDate,\n endDate,\n startGrade,\n endGrade,\n noEvalScoresOnly\n ),\n reportsClient.getEvaluationSizeData(\n upwardLeagueId.value,\n accountNumber.value,\n leagueId,\n typeProgramId,\n createBlankReport\n ),\n reportsClient.getEvaluationQuestionsData(upwardLeagueId.value, accountNumber.value, typeProgramId),\n ])\n\n loadStatus.value = 'Downloading Form Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('evalform'),\n reportsClient.getReportTemplate('evalsizessubreport'),\n reportsClient.getReportTemplate('evalquestionssubreport'),\n ])\n\n loadStatus.value = 'Processing Form Templates . . .'\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n const sizeSubReport = JSON.parse(reportTemplates[1]?.jsonContent ?? '')\n const questionSubReport = JSON.parse(reportTemplates[2]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n const parameters = [\n {\n Value: [hidePracticeNightExclusion.value],\n Name: 'HidePracticeNights',\n },\n {\n Value: [hideCarpoolLinks.value],\n Name: 'HideCarpoolLinks',\n },\n {\n Value: [`${typeProgramId}`],\n Name: 'TypeProgramID',\n },\n {\n Value: [`${leagueId}`],\n Name: 'LeagueID',\n },\n {\n Value: [`${accountNumber.value}`],\n Name: 'AccountNumber',\n },\n {\n Value: [`${schoolYear.value}`],\n Name: 'SchoolYear',\n },\n {\n Value: [store.getters.leagueAbstraction.refLabel],\n Name: 'RefLabel',\n },\n ]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n sizeSubReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(data[1])\n questionSubReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(data[2])\n\n const resourceLocator = {\n getResource: function (name: string) {\n if (name === 'eval-sizes-sub-report.rdlx-json') return sizeSubReport\n if (name === 'eval-questions-sub-report.rdlx-json') return questionSubReport\n },\n }\n\n loadStatus.value = 'Loading Form . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, { ReportParams: parameters, ResourceLocator: resourceLocator })\n }\n\n return {\n hasCheer,\n loading,\n programs,\n selectedProgram,\n importOptions,\n selectedAllOrImported,\n genderOptions,\n selectedGender,\n filterByRegDate,\n selectedRegStartDate,\n selectedRegEndDate,\n dateLimits,\n filterByGrade,\n gradesList,\n selectedStartGrade,\n selectedEndGrade,\n noEvalsOnly,\n hideCarpoolLinks,\n hidePracticeNightExclusion,\n loadStatus,\n isByAge,\n loadReport,\n reportLoaded,\n setGrades,\n }\n },\n})\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!./ParticipantEvalForm.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!./ParticipantEvalForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantEvalForm.vue?vue&type=template&id=5231e120&\"\nimport script from \"./ParticipantEvalForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantEvalForm.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('div',{staticClass:\"mt-5\"},[_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":(\"Filter by \" + (_vm.isByAge ? 'Age' : 'Grade'))},on:{\"change\":_vm.setGrades},model:{value:(_vm.filterByGrade),callback:function ($$v) {_vm.filterByGrade=$$v},expression:\"filterByGrade\"}})],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.gradesList,\"valuePropertyName\":\"id\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"label\":\"From\",\"showBlankItem\":true,\"enabled\":_vm.filterByGrade},model:{value:(_vm.selectedStartGrade),callback:function ($$v) {_vm.selectedStartGrade=$$v},expression:\"selectedStartGrade\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.gradesList,\"valuePropertyName\":\"id\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"label\":\"To\",\"showBlankItem\":true,\"enabled\":_vm.filterByGrade},model:{value:(_vm.selectedEndGrade),callback:function ($$v) {_vm.selectedEndGrade=$$v},expression:\"selectedEndGrade\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('br'),_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.loadReport}},[_vm._v(\"Generate Report\")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"EvalActivity\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\n\nimport { getGradesListFromAccount } from '@/services/gradeService'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ParticipantEvalActivity',\n components: {\n SelectInput,\n CheckboxInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const selectedProgram = ref('')\n const filterByGrade = ref(false)\n const selectedStartGrade = ref('0')\n const selectedEndGrade = ref('0')\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const isByAge = computed(() => {\n if (isCamp.value) {\n return camp.value.ageCutoffDate !== null\n } else {\n return league.value.ageCutoffDate !== null\n }\n })\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n function setGrades() {\n if (!filterByGrade.value) {\n selectedStartGrade.value = '0'\n selectedEndGrade.value = '0'\n }\n }\n\n //const gradesList = computed(() => getGrades(false))\n const gradesList = computed(() => {\n let retval: UpwardGradeTypeID[] = []\n const accts = isCamp.value ? camp.value.accounts : league.value.accounts\n const acct = accts?.find((x) => x.accountNumber == accountNumber.value)\n if (acct) {\n retval = getGradesListFromAccount(acct, selectedProgram.value, 'E')\n }\n return retval\n })\n\n onMounted(() => {\n selectedProgram.value = typeProgramID.value\n })\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loading.value = true\n let typeProgramId = selectedProgram.value\n let startGrade = selectedStartGrade.value\n let endGrade = selectedEndGrade.value\n\n loadStatus.value = 'Downloading Form Data . . .'\n const data = await Promise.all([\n reportsClient.getEvaluationActivityData(\n upwardLeagueId.value,\n accountNumber.value,\n typeProgramId,\n startGrade,\n endGrade\n ),\n ])\n\n loadStatus.value = 'Downloading Form Templates . . .'\n const reportTemplates = await Promise.all([reportsClient.getReportTemplate('evaluationactivities')])\n\n loadStatus.value = 'Processing Form Templates . . .'\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n loadStatus.value = 'Loading Form . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report)\n }\n\n return {\n loading,\n filterByGrade,\n gradesList,\n selectedStartGrade,\n selectedEndGrade,\n loadStatus,\n isByAge,\n loadReport,\n reportLoaded,\n setGrades,\n }\n },\n})\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!./ParticipantEvalActivity.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!./ParticipantEvalActivity.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantEvalActivity.vue?vue&type=template&id=7ab2d1f8&\"\nimport script from \"./ParticipantEvalActivity.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantEvalActivity.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('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('select-input',{attrs:{\"itemsList\":_vm.reports,\"valueAndTextTheSame\":true,\"label\":\"Report Type\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedReport),callback:function ($$v) {_vm.selectedReport=$$v},expression:\"selectedReport\"}})],1),(_vm.hasCheer)?_c('div',{staticClass:\"col-sm-4\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-4\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Division\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Team\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.teams,\"textPropertyName\":\"teamName\",\"valuePropertyName\":\"teamID\",\"label\":\"Teams\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedTeam),callback:function ($$v) {_vm.selectedTeam=$$v},expression:\"selectedTeam\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Hide Evaluation Scores\"},model:{value:(_vm.hideEvalScores),callback:function ($$v) {_vm.hideEvalScores=$$v},expression:\"hideEvalScores\"}})],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4 d-flex align-items-center\"},[_c('button',{staticClass:\"btn btn-primary mt-2\",attrs:{\"type\":\"button\",\"disabled\":_vm.incomplete},on:{\"click\":_vm.loadReport}},[_vm._v(\" Get Roster \")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"CoachRoster\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\nimport divisionsClient from '@/clients/divisionsClient'\nimport teamsClient from '@/clients/teamsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport { isCheer } from '@/lib/common/ProgramTypes'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'CoachRoster',\n components: {\n SelectInput,\n CheckboxInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const selectedReport = ref('Select a Report')\n const selectedProgram = ref('')\n\n const selectedDivision = ref(-1)\n const divisions = ref([{}])\n\n const selectedTeam = ref(-1)\n const teams = ref([{}])\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const hideEvalScores = ref(false)\n\n const reportTypes = 'Select a Report,Coach Roster,Parent Roster'\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n const reports = computed((): string[] => reportTypes.split(','))\n\n onMounted(async () => {\n selectedProgram.value = typeProgramID.value\n await loadTeams()\n })\n\n watch(\n () => [selectedReport.value, selectedProgram.value],\n async () => {\n selectedDivision.value = -1\n divisions.value = []\n const myDivisions =\n (await divisionsClient.retrieveByProgram(upwardLeagueId.value, selectedProgram.value)) ?? []\n\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n\n myDivisions.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n }\n )\n\n watch(\n () => selectedDivision.value,\n async () => {\n await loadTeams()\n }\n )\n\n async function loadTeams() {\n selectedTeam.value = -1\n teams.value = []\n const myTeams =\n (await teamsClient.retrieveTeamList({\n leagueId: upwardLeagueId.value,\n divisionId: selectedDivision.value,\n typeProgramId: selectedProgram.value,\n })) ?? []\n\n //default is all\n teams.value.push({\n teamID: 0,\n teamName: 'All' ?? '',\n })\n\n myTeams.forEach((r) =>\n teams.value.push({\n teamID: r.teamID,\n teamName: r.teamName ?? '',\n })\n )\n }\n\n function reportLoaded() {\n loading.value = false\n }\n\n const incomplete = computed(() => {\n const isIncomplete =\n selectedReport.value.trim() == 'Select a Report' ||\n selectedDivision.value == -1 ||\n selectedTeam.value == -1\n return isIncomplete\n })\n\n async function loadReport() {\n loading.value = true\n\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getCoachRoster(\n upwardLeagueId.value,\n accountNumber.value,\n selectedTeam.value.toString(),\n selectedDivision.value.toString(),\n selectedProgram.value\n ),\n reportsClient.getCoachSubReport(\n upwardLeagueId.value,\n accountNumber.value,\n selectedTeam.value.toString(),\n selectedDivision.value.toString(),\n selectedProgram.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('coachroster'),\n reportsClient.getReportTemplate('coachsubreport'),\n reportsClient.getReportTemplate('parentroster'),\n ])\n\n const mainData = data[0]\n const subData = data[1]\n\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n const subReport = JSON.parse(reportTemplates[1]?.jsonContent ?? '')\n const parentReport = JSON.parse(reportTemplates[2]?.jsonContent ?? '')\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n\n const parameters = [\n {\n Value: [hideEvalScores.value],\n Name: 'HideEvalScores',\n },\n ]\n\n const resourceLocator = {\n getResource: function (name: string) {\n if (name === 'coach-sub-report.rdlx-json') return subReport\n },\n }\n\n subReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(subData)\n\n if (selectedReport.value.trim() == 'Coach Roster') {\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n activeReport.loadReportData(report, { ReportParams: parameters, ResourceLocator: resourceLocator })\n } else if (selectedReport.value.trim() == 'Parent Roster') {\n parentReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(mainData)\n activeReport.loadReportData(parentReport, { ResourceLocator: resourceLocator })\n }\n }\n\n return {\n hasCheer,\n reports,\n selectedReport,\n loading,\n programs,\n selectedProgram,\n divisions,\n selectedDivision,\n teams,\n selectedTeam,\n hideEvalScores,\n incomplete,\n loadStatus,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./CoachRoster.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!./CoachRoster.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachRoster.vue?vue&type=template&id=38a977dc&\"\nimport script from \"./CoachRoster.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachRoster.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('div',[_c('div',{staticClass:\"row\"},[(_vm.hasCheer)?_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Division\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Team\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.teams,\"textPropertyName\":\"teamName\",\"valuePropertyName\":\"teamID\",\"label\":\"Teams\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedTeam),callback:function ($$v) {_vm.selectedTeam=$$v},expression:\"selectedTeam\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('text-input',{attrs:{\"enabled\":!_vm.loading,\"label\":\"Prefix\"},model:{value:(_vm.prefixText),callback:function ($$v) {_vm.prefixText=$$v},expression:\"prefixText\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Include Participants\"},model:{value:(_vm.includeParticipants),callback:function ($$v) {_vm.includeParticipants=$$v},expression:\"includeParticipants\"}}),_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Include Volunteers\"},model:{value:(_vm.includeVolunteers),callback:function ($$v) {_vm.includeVolunteers=$$v},expression:\"includeVolunteers\"}})],1),_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":(\"Filter by \" + (_vm.isByAge ? 'Age' : 'Grade'))},on:{\"change\":_vm.setGrades},model:{value:(_vm.filterByGrade),callback:function ($$v) {_vm.filterByGrade=$$v},expression:\"filterByGrade\"}}),_c('div',{staticClass:\"col-sm-2\"},[_c('select-input',{attrs:{\"itemsList\":_vm.gradesList,\"valuePropertyName\":\"id\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"label\":\"From\",\"showBlankItem\":true,\"enabled\":_vm.filterByGrade},model:{value:(_vm.selectedStartGrade),callback:function ($$v) {_vm.selectedStartGrade=$$v},expression:\"selectedStartGrade\"}})],1),_c('div',{staticClass:\"col-sm-2\"},[_c('select-input',{attrs:{\"itemsList\":_vm.gradesList,\"valuePropertyName\":\"id\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"label\":\"To\",\"showBlankItem\":true,\"enabled\":_vm.filterByGrade},model:{value:(_vm.selectedEndGrade),callback:function ($$v) {_vm.selectedEndGrade=$$v},expression:\"selectedEndGrade\"}})],1)],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\",\"disabled\":_vm.incomplete},on:{\"click\":_vm.loadReport}},[_vm._v(\" Get Labels \")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"MailingLabels\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\nimport divisionsClient from '@/clients/divisionsClient'\nimport teamsClient from '@/clients/teamsClient'\n\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\n\nimport { getGradesListFromAccount } from '@/services/gradeService'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport { isCheer } from '@/lib/common/ProgramTypes'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'MailingLabels',\n components: {\n SelectInput,\n CheckboxInput,\n TextInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const includeParticipants = ref(true)\n const includeVolunteers = ref(false)\n const prefixText = ref('To the Parents Of')\n const filterByGrade = ref(false)\n const selectedStartGrade = ref('0')\n const selectedEndGrade = ref('0')\n\n const selectedProgram = ref('')\n\n const selectedDivision = ref(-1)\n const divisions = ref([{}])\n\n const selectedTeam = ref(-1)\n const teams = ref([{}])\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const isByAge = computed(() => {\n if (isCamp.value) {\n return camp.value.ageCutoffDate !== null\n } else {\n return league.value.ageCutoffDate !== null\n }\n })\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n function setGrades() {\n if (!filterByGrade.value) {\n selectedStartGrade.value = '0'\n selectedEndGrade.value = '0'\n }\n }\n\n //const gradesList = computed(() => getGrades(false))\n const gradesList = computed(() => {\n let retval: UpwardGradeTypeID[] = []\n const accts = isCamp.value ? camp.value.accounts : league.value.accounts\n const acct = accts?.find((x) => x.accountNumber == accountNumber.value)\n if (acct) {\n retval = getGradesListFromAccount(acct, selectedProgram.value, 'E')\n }\n return retval\n })\n\n onMounted(async () => {\n selectedProgram.value = typeProgramID.value\n\n await loadTeams()\n })\n\n watch(\n () => selectedProgram.value,\n async () => {\n selectedDivision.value = -1\n divisions.value = []\n const myDivisions =\n (await divisionsClient.retrieveByProgram(upwardLeagueId.value, selectedProgram.value)) ?? []\n\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n\n myDivisions.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n }\n )\n\n watch(\n () => selectedDivision.value,\n async () => {\n await loadTeams()\n }\n )\n\n async function loadTeams() {\n selectedTeam.value = -1\n teams.value = []\n const myTeams =\n (await teamsClient.retrieveTeamList({\n leagueId: upwardLeagueId.value,\n divisionId: selectedDivision.value,\n typeProgramId: selectedProgram.value,\n })) ?? []\n\n //default is all\n teams.value.push({\n teamID: 0,\n teamName: 'All' ?? '',\n })\n\n myTeams.forEach((r) =>\n teams.value.push({\n teamID: r.teamID,\n teamName: r.teamName ?? '',\n })\n )\n }\n\n function reportLoaded() {\n loading.value = false\n }\n\n const incomplete = computed(() => selectedDivision.value == -1 || selectedTeam.value == -1)\n\n async function loadReport() {\n loading.value = true\n let startGrade = selectedStartGrade.value\n let endGrade = selectedEndGrade.value\n\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getMailingLabels(\n upwardLeagueId.value,\n accountNumber.value,\n selectedTeam.value.toString(),\n selectedDivision.value.toString(),\n includeParticipants.value,\n includeVolunteers.value,\n filterByGrade.value,\n startGrade,\n endGrade,\n selectedProgram.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([reportsClient.getReportTemplate('mailingLabels')])\n\n loadStatus.value = 'Processing Report Templates . . .'\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n const parameters = [\n {\n Value: [prefixText.value],\n Name: 'PrefixText',\n },\n ]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, { ReportParams: parameters })\n }\n\n return {\n hasCheer,\n loading,\n isByAge,\n programs,\n selectedProgram,\n divisions,\n selectedDivision,\n teams,\n selectedTeam,\n prefixText,\n includeParticipants,\n includeVolunteers,\n filterByGrade,\n gradesList,\n selectedStartGrade,\n selectedEndGrade,\n incomplete,\n loadStatus,\n loadReport,\n reportLoaded,\n setGrades,\n }\n },\n})\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!./MailingLabels.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!./MailingLabels.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MailingLabels.vue?vue&type=template&id=5cee0bdc&\"\nimport script from \"./MailingLabels.vue?vue&type=script&lang=ts&\"\nexport * from \"./MailingLabels.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('div',[_c('active-report',{ref:\"activereport\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"Siblings\"},on:{\"report-loaded\":_vm.reportLoaded}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Siblings',\n components: {\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const loading = ref(false)\n const loadStatus = ref('')\n\n onMounted(async () => {\n await loadReport()\n })\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getSiblingsReport(upwardLeagueId.value, accountNumber.value),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([reportsClient.getReportTemplate('sibling')])\n\n loadStatus.value = 'Processing Report Templates . . .'\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, null)\n }\n\n return {\n loading,\n loadStatus,\n reportLoaded,\n }\n },\n})\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!./Siblings.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!./Siblings.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Siblings.vue?vue&type=template&id=8358c4d6&\"\nimport script from \"./Siblings.vue?vue&type=script&lang=ts&\"\nexport * from \"./Siblings.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('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.reports,\"valueAndTextTheSame\":true,\"label\":\"Report Type\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedReport),callback:function ($$v) {_vm.selectedReport=$$v},expression:\"selectedReport\"}})],1),(_vm.hasCheer)?_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Division\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1)]),(_vm.filterByWeek)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"All\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.weekNumbers,\"textPropertyName\":\"weekName\",\"valuePropertyName\":\"weekValue\",\"label\":\"Round/Week Number\",\"showBlankItem\":false,\"enabled\":!_vm.loading},model:{value:(_vm.selectedWeek),callback:function ($$v) {_vm.selectedWeek=$$v},expression:\"selectedWeek\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Display Head Coach Name\"},model:{value:(_vm.displayHeadCoach),callback:function ($$v) {_vm.displayHeadCoach=$$v},expression:\"displayHeadCoach\"}}),(!_vm.isUpwardSelect)?_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":'Display ' + _vm.refLabel + ' Name(s)'},model:{value:(_vm.displayRefereeName),callback:function ($$v) {_vm.displayRefereeName=$$v},expression:\"displayRefereeName\"}}):_vm._e()],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3 d-flex align-items-center\"},[_c('button',{staticClass:\"btn btn-primary mt-2\",attrs:{\"type\":\"button\",\"disabled\":_vm.incomplete},on:{\"click\":_vm.loadReport}},[_vm._v(\" Get Schedule \")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"GameSchedule\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\nimport divisionsClient from '@/clients/divisionsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nexport default defineComponent({\n name: 'GameSchedule',\n components: {\n SelectInput,\n CheckboxInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const selectedReport = ref('Select a Report')\n const selectedProgram = ref('')\n\n const selectedDivision = ref(-1)\n const divisions = ref([{}])\n\n const selectedWeek = ref(-1)\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const displayHeadCoach = ref(false)\n const displayRefereeName = ref(false)\n\n const filterByWeek = ref(false)\n\n const weekNumbers = ref([\n { weekName: 'All', weekValue: '-1' },\n { weekName: '1', weekValue: '1' },\n { weekName: '2', weekValue: '2' },\n { weekName: '3', weekValue: '3' },\n { weekName: '4', weekValue: '4' },\n { weekName: '5', weekValue: '5' },\n { weekName: '6', weekValue: '6' },\n { weekName: '7', weekValue: '7' },\n { weekName: '8', weekValue: '8' },\n { weekName: '9', weekValue: '9' },\n { weekName: '10', weekValue: '10' },\n { weekName: '11', weekValue: '11' },\n { weekName: '12', weekValue: '12' },\n ])\n\n const reportTypes = 'Select a Report,By Round/Week,By Location,By Division'\n\n const refLabel = computed(() => store.getters.leagueAbstraction.refLabel)\n const isUpwardSelect = computed(() => store.getters.leagueAbstraction.isUpwardSelect)\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n const reports = computed((): string[] => reportTypes.split(','))\n\n onMounted(() => {\n selectedProgram.value = typeProgramID.value\n })\n\n watch(\n () => [selectedReport.value, selectedProgram.value],\n async () => {\n selectedDivision.value = -1\n selectedWeek.value = -1\n divisions.value = []\n\n const myDivisions =\n (await divisionsClient.retrieveByProgram(upwardLeagueId.value, selectedProgram.value)) ?? []\n\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n\n myDivisions.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n\n filterByWeek.value = selectedReport.value.trim() == 'By Round/Week'\n }\n )\n\n function reportLoaded() {\n loading.value = false\n }\n\n const incomplete = computed(\n () => selectedReport.value.trim() == 'Select a Report' || selectedDivision.value == -1\n )\n\n async function loadReport() {\n loading.value = true\n\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getGameSchedule(\n upwardLeagueId.value,\n selectedDivision.value.toString(),\n selectedProgram.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('gamesScheduleByRound'),\n reportsClient.getReportTemplate('gamesScheduleByLocation'),\n reportsClient.getReportTemplate('gamesScheduleByDivision'),\n ])\n\n const roundReport = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n const locationReport = JSON.parse(reportTemplates[1]?.jsonContent ?? '')\n const divisionReport = JSON.parse(reportTemplates[2]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n\n const parameters = [\n {\n Value: [displayHeadCoach.value],\n Name: 'DisplayHeadCoach',\n },\n {\n Value: [selectedWeek.value],\n Name: 'SelectedWeekNumber',\n },\n {\n Value: [displayRefereeName.value],\n Name: 'DisplayReferees',\n },\n ]\n\n if (selectedReport.value.trim() == 'By Round/Week') {\n roundReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(roundReport, { ReportParams: parameters })\n } else if (selectedReport.value.trim() == 'By Location') {\n locationReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(locationReport, { ReportParams: parameters })\n } else {\n divisionReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(divisionReport, { ReportParams: parameters })\n }\n }\n\n return {\n reports,\n selectedReport,\n loading,\n hasCheer,\n programs,\n selectedProgram,\n divisions,\n selectedDivision,\n filterByWeek,\n weekNumbers,\n selectedWeek,\n displayHeadCoach,\n displayRefereeName,\n isUpwardSelect,\n refLabel,\n incomplete,\n loadStatus,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./GameSchedule.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!./GameSchedule.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameSchedule.vue?vue&type=template&id=59d970cc&\"\nimport script from \"./GameSchedule.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameSchedule.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('div',[_c('div',{staticClass:\"row\"},[(_vm.hasCheer)?_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select Division\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Display Head Coach Name\"},model:{value:(_vm.displayHeadCoach),callback:function ($$v) {_vm.displayHeadCoach=$$v},expression:\"displayHeadCoach\"}}),(!_vm.isUpwardSelect)?_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":'Display ' + _vm.refLabel + ' Name(s)'},model:{value:(_vm.displayRefereeName),callback:function ($$v) {_vm.displayRefereeName=$$v},expression:\"displayRefereeName\"}}):_vm._e()],1),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3 d-flex align-items-center\"},[_c('button',{staticClass:\"btn btn-primary mt-2\",attrs:{\"type\":\"button\",\"disabled\":_vm.incomplete},on:{\"click\":_vm.loadReport}},[_vm._v(\" Get Schedule \")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"GameScheduleByTeam\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\nimport divisionsClient from '@/clients/divisionsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nexport default defineComponent({\n name: 'GameScheduleByTeam',\n components: {\n SelectInput,\n CheckboxInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const selectedProgram = ref('')\n\n const selectedDivision = ref(-1)\n const divisions = ref([{}])\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const displayHeadCoach = ref(false)\n const displayRefereeName = ref(false)\n\n const refLabel = computed(() => store.getters.leagueAbstraction.refLabel)\n const isUpwardSelect = computed(() => store.getters.leagueAbstraction.isUpwardSelect)\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n onMounted(() => {\n selectedProgram.value = typeProgramID.value\n })\n\n watch(\n () => selectedProgram.value,\n async () => {\n selectedDivision.value = -1\n divisions.value = []\n\n const myDivisions =\n (await divisionsClient.retrieveByProgram(upwardLeagueId.value, selectedProgram.value)) ?? []\n\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n\n myDivisions.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n }\n )\n\n function reportLoaded() {\n loading.value = false\n }\n\n const incomplete = computed(() => selectedDivision.value == -1)\n\n async function loadReport() {\n loading.value = true\n\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getGameScheduleByTeam(\n upwardLeagueId.value,\n selectedDivision.value.toString(),\n selectedProgram.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([reportsClient.getReportTemplate('gamesScheduleByTeam')])\n\n const teamReport = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n\n const parameters = [\n {\n Value: [displayHeadCoach.value],\n Name: 'DisplayHeadCoach',\n },\n {\n Value: [displayRefereeName.value],\n Name: 'DisplayReferees',\n },\n {\n Value: [store.getters.leagueAbstraction.refLabel],\n Name: 'RefLabel',\n },\n ]\n\n teamReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(teamReport, { ReportParams: parameters })\n }\n\n return {\n loading,\n hasCheer,\n programs,\n selectedProgram,\n divisions,\n selectedDivision,\n displayHeadCoach,\n displayRefereeName,\n isUpwardSelect,\n refLabel,\n incomplete,\n loadStatus,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./GameScheduleByTeam.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!./GameScheduleByTeam.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GameScheduleByTeam.vue?vue&type=template&id=7b93fb1c&\"\nimport script from \"./GameScheduleByTeam.vue?vue&type=script&lang=ts&\"\nexport * from \"./GameScheduleByTeam.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('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.reports,\"valueAndTextTheSame\":true,\"label\":\"Report Type\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedReport),callback:function ($$v) {_vm.selectedReport=$$v},expression:\"selectedReport\"}})],1),(_vm.hasCheer)?_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Division\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1),_c('div',{staticClass:\"col-sm-3 d-flex align-items-center\"},[_c('button',{staticClass:\"btn btn-primary mt-2\",attrs:{\"type\":\"button\",\"disabled\":_vm.incomplete},on:{\"click\":_vm.loadReport}},[_vm._v(\" Get Schedule \")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"PracticeSchedule\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\nimport divisionsClient from '@/clients/divisionsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport { isCheer } from '@/lib/common/ProgramTypes'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PracticeSchedule',\n components: {\n SelectInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const selectedReport = ref('Select a Report')\n const selectedProgram = ref('')\n\n const selectedDivision = ref(-1)\n const divisions = ref([{}])\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const reportTypes = 'Select a Report,By Week,By Location'\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n const reports = computed((): string[] => reportTypes.split(','))\n\n onMounted(() => {\n selectedProgram.value = typeProgramID.value\n })\n\n watch(\n () => [selectedReport.value, selectedProgram.value],\n async () => {\n selectedDivision.value = -1\n divisions.value = []\n const myDivisions =\n (await divisionsClient.retrieveByProgram(upwardLeagueId.value, selectedProgram.value)) ?? []\n\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n\n myDivisions.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n }\n )\n\n function reportLoaded() {\n loading.value = false\n }\n\n const incomplete = computed(\n () => selectedReport.value.trim() == 'Select a Report' || selectedDivision.value == -1\n )\n\n async function loadReport() {\n loading.value = true\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getPracticeSchedule(\n upwardLeagueId.value,\n selectedDivision.value.toString(),\n selectedProgram.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('practiceScheduleByWeek'),\n reportsClient.getReportTemplate('practiceScheduleByLocation'),\n ])\n\n const weekReport = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n const locationReport = JSON.parse(reportTemplates[1]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n\n if (selectedReport.value.trim() == 'By Week') {\n weekReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(weekReport, null)\n } else if (selectedReport.value.trim() == 'By Location') {\n locationReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(locationReport, null)\n }\n }\n\n return {\n hasCheer,\n reports,\n selectedReport,\n loading,\n programs,\n selectedProgram,\n divisions,\n selectedDivision,\n incomplete,\n loadStatus,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./PracticeSchedule.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!./PracticeSchedule.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PracticeSchedule.vue?vue&type=template&id=0f7ec447&\"\nimport script from \"./PracticeSchedule.vue?vue&type=script&lang=ts&\"\nexport * from \"./PracticeSchedule.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('div',[_c('div',{staticClass:\"row\"},[(_vm.hasCheer)?_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Division\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Team\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.teams,\"textPropertyName\":\"teamName\",\"valuePropertyName\":\"teamID\",\"label\":\"Teams\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedTeam),callback:function ($$v) {_vm.selectedTeam=$$v},expression:\"selectedTeam\"}})],1),_c('div',{staticClass:\"col-sm-3 d-flex align-items-center\"},[_c('button',{staticClass:\"btn btn-primary mt-2\",attrs:{\"type\":\"button\",\"disabled\":_vm.incomplete},on:{\"click\":_vm.loadReport}},[_vm._v(\" Get Intros \")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"ParticipantIntros\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\nimport divisionsClient from '@/clients/divisionsClient'\nimport teamsClient from '@/clients/teamsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport { isCheer } from '@/lib/common/ProgramTypes'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ParticipantIntros',\n components: {\n SelectInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const selectedProgram = ref('')\n\n const selectedDivision = ref(-1)\n const divisions = ref([{}])\n\n const selectedTeam = ref(-1)\n const teams = ref([{}])\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n onMounted(async () => {\n selectedProgram.value = typeProgramID.value\n\n await loadTeams()\n })\n\n watch(\n () => selectedProgram.value,\n async () => {\n selectedDivision.value = -1\n divisions.value = []\n const myDivisions =\n (await divisionsClient.retrieveByProgram(upwardLeagueId.value, selectedProgram.value)) ?? []\n\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n\n myDivisions.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n }\n )\n\n watch(\n () => selectedDivision.value,\n async () => {\n await loadTeams()\n }\n )\n\n async function loadTeams() {\n selectedTeam.value = -1\n teams.value = []\n const myTeams =\n (await teamsClient.retrieveTeamList({\n leagueId: upwardLeagueId.value,\n divisionId: selectedDivision.value,\n typeProgramId: selectedProgram.value,\n })) ?? []\n\n //default is all\n teams.value.push({\n teamID: 0,\n teamName: 'All' ?? '',\n })\n\n myTeams.forEach((r) =>\n teams.value.push({\n teamID: r.teamID,\n teamName: r.teamName ?? '',\n })\n )\n }\n\n function reportLoaded() {\n loading.value = false\n }\n\n const incomplete = computed(() => selectedDivision.value == -1 || selectedTeam.value == -1)\n\n async function loadReport() {\n loading.value = true\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getParticipantIntroReport(\n upwardLeagueId.value,\n accountNumber.value,\n selectedTeam.value.toString(),\n selectedDivision.value.toString(),\n selectedProgram.value\n ),\n reportsClient.getCoachSubReport(\n upwardLeagueId.value,\n accountNumber.value,\n selectedTeam.value.toString(),\n selectedDivision.value.toString(),\n selectedProgram.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('participantintros'),\n reportsClient.getReportTemplate('coachsubreport'),\n ])\n\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n const subReport = JSON.parse(reportTemplates[1]?.jsonContent ?? '')\n\n const mainData = data[0]\n const subData = data[1]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n subReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(subData)\n\n const resourceLocator = {\n getResource: function (name: string) {\n if (name === 'coach-sub-report.rdlx-json') return subReport\n },\n }\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, { ResourceLocator: resourceLocator })\n }\n\n return {\n hasCheer,\n loading,\n programs,\n selectedProgram,\n divisions,\n selectedDivision,\n teams,\n selectedTeam,\n loadStatus,\n incomplete,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./ParticipantIntros.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!./ParticipantIntros.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantIntros.vue?vue&type=template&id=6bd7018f&\"\nimport script from \"./ParticipantIntros.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantIntros.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('div',[_c('div',{staticClass:\"mt-5\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('select-input',{attrs:{\"itemsList\":_vm.paymentOptions,\"textPropertyName\":\"status\",\"valuePropertyName\":\"value\",\"label\":\"Payment Status\",\"showBlankItem\":false,\"enabled\":!_vm.loading},model:{value:(_vm.selectedPaymentStatus),callback:function ($$v) {_vm.selectedPaymentStatus=$$v},expression:\"selectedPaymentStatus\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.loadReport}},[_vm._v(\"Build Form\")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"Payments\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Payments',\n components: {\n SelectInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const loading = ref(false)\n const loadStatus = ref('')\n\n const selectedPaymentStatus = ref(-1)\n\n const paymentOptions = ref([\n { status: 'All Players', value: -1 },\n { status: 'Players who have made 1 or more payments', value: 0 },\n { status: 'Players who have NOT made a payment', value: 1 },\n ])\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getPaymentReportData(\n upwardLeagueId.value,\n accountNumber.value,\n selectedPaymentStatus.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([reportsClient.getReportTemplate('participantPayments')])\n\n loadStatus.value = 'Processing Report Templates . . .'\n\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, null)\n }\n\n return {\n paymentOptions,\n selectedPaymentStatus,\n loading,\n loadStatus,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./Payments.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!./Payments.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Payments.vue?vue&type=template&id=5e603163&\"\nimport script from \"./Payments.vue?vue&type=script&lang=ts&\"\nexport * from \"./Payments.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('div',[(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"PaymentsByType\"},on:{\"report-loaded\":_vm.reportLoaded}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'PaymentsByType',\n components: {\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const loading = ref(false)\n const loadStatus = ref('')\n const selectedPaymentStatus = ref(0) //'Players who have made 1 or more payments'\n\n onMounted(async () => {\n await loadReport()\n })\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getPaymentReportData(\n upwardLeagueId.value,\n accountNumber.value,\n selectedPaymentStatus.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('participantPaymentsByType'),\n ])\n\n loadStatus.value = 'Processing Report Templates . . .'\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, null)\n }\n\n return {\n loading,\n loadStatus,\n reportLoaded,\n }\n },\n})\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!./PaymentsByType.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!./PaymentsByType.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PaymentsByType.vue?vue&type=template&id=60f8f126&\"\nimport script from \"./PaymentsByType.vue?vue&type=script&lang=ts&\"\nexport * from \"./PaymentsByType.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('div',[_c('div',{staticClass:\"row\"},[(_vm.hasCheer)?_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":false,\"enabled\":!_vm.loading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1),_c('div',{staticClass:\"col-sm-3 d-flex align-items-center\"},[_c('button',{staticClass:\"btn btn-primary mt-2\",attrs:{\"type\":\"button\",\"disabled\":_vm.incomplete},on:{\"click\":_vm.loadReport}},[_vm._v(\" Load Report \")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"MissingEvals\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\nimport divisionsClient from '@/clients/divisionsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport { isCheer } from '@/lib/common/ProgramTypes'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'MissingEvals',\n components: {\n SelectInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const selectedProgram = ref('')\n\n const selectedDivision = ref(-1)\n const divisions = ref([{}])\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n onMounted(() => {\n selectedProgram.value = typeProgramID.value\n })\n\n const incomplete = computed(() => selectedDivision.value == -1)\n\n watch(\n () => selectedProgram.value,\n async () => {\n selectedDivision.value = -1\n divisions.value = []\n const myDivisions =\n (await divisionsClient.retrieveByProgram(upwardLeagueId.value, selectedProgram.value)) ?? []\n\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n\n myDivisions.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n }\n )\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loading.value = true\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getEvaluationsMissing(\n upwardLeagueId.value,\n selectedProgram.value,\n selectedDivision.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([reportsClient.getReportTemplate('missingevals')])\n\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report)\n }\n\n return {\n hasCheer,\n loading,\n programs,\n selectedProgram,\n divisions,\n selectedDivision,\n incomplete,\n loadStatus,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./MissingEvals.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!./MissingEvals.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MissingEvals.vue?vue&type=template&id=7c94e42c&\"\nimport script from \"./MissingEvals.vue?vue&type=script&lang=ts&\"\nexport * from \"./MissingEvals.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('div',[(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"Payments\"},on:{\"report-loaded\":_vm.reportLoaded}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, onMounted } from '@vue/composition-api'\nimport reportsClient from '@/clients/reportsClient'\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'OutstaandingBalance',\n components: {\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const loading = ref(false)\n const loadStatus = ref('')\n\n onMounted(async () => {\n await loadReport()\n })\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getOutstandingBalanceReportData(upwardLeagueId.value, accountNumber.value),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([reportsClient.getReportTemplate('outstandingBalance')])\n\n loadStatus.value = 'Processing Report Templates . . .'\n\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, null)\n }\n\n return {\n loading,\n loadStatus,\n reportLoaded,\n }\n },\n})\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!./OutstandingBalance.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!./OutstandingBalance.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OutstandingBalance.vue?vue&type=template&id=325f19c0&\"\nimport script from \"./OutstandingBalance.vue?vue&type=script&lang=ts&\"\nexport * from \"./OutstandingBalance.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('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.reports,\"valueAndTextTheSame\":true,\"label\":\"Report Type\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedReport),callback:function ($$v) {_vm.selectedReport=$$v},expression:\"selectedReport\"}})],1),(_vm.hasCheer)?_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"valueAndTextTheSame\":true,\"label\":\"Program\",\"enabled\":!_vm.loading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"Select a Division\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":true,\"enabled\":!_vm.loading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1)]),(_vm.filterByWeek)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"blankItemText\":\"All\",\"blankItemValue\":\"-1\",\"itemsList\":_vm.weekNumbers,\"textPropertyName\":\"weekName\",\"valuePropertyName\":\"weekValue\",\"label\":\"Round/Week Number\",\"showBlankItem\":false,\"enabled\":!_vm.loading},model:{value:(_vm.selectedWeek),callback:function ($$v) {_vm.selectedWeek=$$v},expression:\"selectedWeek\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"row\"},[_c('checkbox-input',{staticClass:\"col-sm-3\",attrs:{\"enabled\":!_vm.loading,\"label\":\"Display Head Coach Name\"},model:{value:(_vm.displayHeadCoach),callback:function ($$v) {_vm.displayHeadCoach=$$v},expression:\"displayHeadCoach\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-3 d-flex align-items-center\"},[_c('button',{staticClass:\"btn btn-primary mt-2\",attrs:{\"type\":\"button\",\"disabled\":_vm.incomplete},on:{\"click\":_vm.loadReport}},[_vm._v(\" Get Schedule \")])])]),(_vm.loadStatus)?_c('active-report',{ref:\"activereport\",staticClass:\"mt-5\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"GameSchedule\"},on:{\"report-loaded\":_vm.reportLoaded}}):_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\nimport { defineComponent, ref, computed, watch, onMounted } from '@vue/composition-api'\n\nimport reportsClient from '@/clients/reportsClient'\nimport divisionsClient from '@/clients/divisionsClient'\n\nimport SelectInput from '@/elements/SelectInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nexport default defineComponent({\n name: 'RefereeSchedule',\n components: {\n SelectInput,\n CheckboxInput,\n ActiveReport,\n },\n setup(props, ctx) {\n const league = computed(() => store.getters.leagues.currentItem)\n const camp = computed(() => store.getters.camps.currentItem)\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n const isCamp = computed(() => ctx.root.$route.fullPath.indexOf('/camp/') >= 0)\n\n const selectedReport = ref('Select a Report')\n const selectedProgram = ref('')\n\n const selectedDivision = ref(-1)\n const divisions = ref([{}])\n\n const selectedWeek = ref(-1)\n\n const loading = ref(false)\n const loadStatus = ref('')\n\n const displayHeadCoach = ref(false)\n\n const filterByWeek = ref(false)\n\n const weekNumbers = ref([\n { weekName: 'All', weekValue: '-1' },\n { weekName: '1', weekValue: '1' },\n { weekName: '2', weekValue: '2' },\n { weekName: '3', weekValue: '3' },\n { weekName: '4', weekValue: '4' },\n { weekName: '5', weekValue: '5' },\n { weekName: '6', weekValue: '6' },\n { weekName: '7', weekValue: '7' },\n { weekName: '8', weekValue: '8' },\n { weekName: '9', weekValue: '9' },\n { weekName: '10', weekValue: '10' },\n { weekName: '11', weekValue: '11' },\n { weekName: '12', weekValue: '12' },\n ])\n\n const reportTypes = `Select a Report,By ${store.getters.leagueAbstraction.refLabel},By Round/Week,By Location,By Division`\n\n const typeProgramID = computed(() => {\n if (isCamp.value) {\n return camp.value?.programs ? camp.value?.programs[0].typeProgramID : ''\n } else {\n return league.value?.programs ? league.value?.programs[0].typeProgramID : ''\n }\n })\n\n const programs = computed((): string[] => {\n if (isCamp.value) {\n return camp.value.programs?.map((p) => p.typeProgramID) ?? []\n }\n return league.value.programs?.map((p) => p.typeProgramID) ?? []\n })\n\n const hasCheer = computed((): boolean => {\n if (isCamp.value) {\n return false\n }\n\n return (league.value && league.value.programs?.some((p) => isCheer(p.typeProgramID))) ?? false\n })\n\n const reports = computed((): string[] => reportTypes.split(','))\n\n onMounted(() => {\n selectedProgram.value = typeProgramID.value\n })\n\n watch(\n () => [selectedReport.value, selectedProgram.value],\n async () => {\n selectedDivision.value = -1\n selectedWeek.value = -1\n divisions.value = []\n\n const myDivisions =\n (await divisionsClient.retrieveByProgram(upwardLeagueId.value, selectedProgram.value)) ?? []\n\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n\n myDivisions.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n\n filterByWeek.value = selectedReport.value.trim() == 'By Round/Week'\n }\n )\n\n function reportLoaded() {\n loading.value = false\n }\n\n const incomplete = computed(\n () => selectedReport.value.trim() == 'Select a Report' || selectedDivision.value == -1\n )\n\n async function loadReport() {\n loading.value = true\n\n loadStatus.value = 'Downloading Report Data . . .'\n const data = await Promise.all([\n reportsClient.getRefereeSchedule(\n upwardLeagueId.value,\n selectedDivision.value.toString(),\n selectedProgram.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('refereeschedulebyreferee'),\n reportsClient.getReportTemplate('refereeschedulebyweek'),\n reportsClient.getReportTemplate('refereeschedulebydivision'),\n reportsClient.getReportTemplate('refereeschedulebylocation'),\n ])\n\n const refereeReport = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n const roundReport = JSON.parse(reportTemplates[1]?.jsonContent ?? '')\n const locationReport = JSON.parse(reportTemplates[3]?.jsonContent ?? '')\n const divisionReport = JSON.parse(reportTemplates[2]?.jsonContent ?? '')\n\n const mainData = data[0]\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n\n const parameters = [\n {\n Value: [displayHeadCoach.value],\n Name: 'DisplayHeadCoach',\n },\n {\n Value: [selectedWeek.value],\n Name: 'SelectedWeekNumber',\n },\n {\n Value: [store.getters.leagueAbstraction.refLabel],\n Name: 'RefLabel',\n },\n ]\n\n if (selectedReport.value.trim() == 'By Round/Week') {\n roundReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(roundReport, { ReportParams: parameters })\n } else if (selectedReport.value.trim() == 'By Location') {\n locationReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(locationReport, { ReportParams: parameters })\n } else if (selectedReport.value.trim() == `By ${store.getters.leagueAbstraction.refLabel}`) {\n refereeReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(refereeReport, { ReportParams: parameters })\n } else {\n divisionReport.DataSources[0].ConnectionProperties.ConnectString =\n 'jsondata=' + JSON.stringify(mainData)\n\n activeReport.loadReportData(divisionReport, { ReportParams: parameters })\n }\n }\n\n return {\n reports,\n selectedReport,\n loading,\n hasCheer,\n programs,\n selectedProgram,\n divisions,\n selectedDivision,\n filterByWeek,\n weekNumbers,\n selectedWeek,\n displayHeadCoach,\n incomplete,\n loadStatus,\n loadReport,\n reportLoaded,\n }\n },\n})\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!./RefereeSchedule.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!./RefereeSchedule.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RefereeSchedule.vue?vue&type=template&id=011072d9&\"\nimport script from \"./RefereeSchedule.vue?vue&type=script&lang=ts&\"\nexport * from \"./RefereeSchedule.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('div',{staticClass:\"bg-white flex-grow-1\"},[_c('div',{staticClass:\"row\"},[(_vm.programs.length > 0)?_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.programs,\"textPropertyName\":\"programName\",\"valuePropertyName\":\"programID\",\"label\":\"Program\",\"enabled\":!_vm.isLoading},model:{value:(_vm.selectedProgram),callback:function ($$v) {_vm.selectedProgram=$$v},expression:\"selectedProgram\"}})],1):_vm._e(),_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"itemsList\":_vm.divisions,\"textPropertyName\":\"divisionName\",\"valuePropertyName\":\"divisionID\",\"label\":\"Divisions\",\"showBlankItem\":false,\"enabled\":!_vm.isLoading},model:{value:(_vm.selectedDivision),callback:function ($$v) {_vm.selectedDivision=$$v},expression:\"selectedDivision\"}})],1),_c('div',{staticClass:\"col-md-6 text-right\"},[(!_vm.isLoading)?_c('button',{staticClass:\"btn btn-success m-1\",on:{\"click\":_vm.downloadCsv}},[_c('i',{staticClass:\"fa fa-export\"}),_vm._v(\"Export \")]):_vm._e()])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isLoading),expression:\"isLoading\"}],staticClass:\"row text-center\"},[_c('div',{staticClass:\"col-md-12 text-center\"},[_c('loading')],1)]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}],staticClass:\"row\"},[_c('ag-grid-vue',{staticClass:\"ag-theme-alpine\",style:(\"width: 100%; height: 500px\"),attrs:{\"gridOptions\":_vm.gridOptions,\"rowData\":_vm.rowData,\"modules\":_vm.modules,\"defaultColDef\":{\n sortable: true,\n resizable: true,\n filter: true,\n }},on:{\"grid-ready\":_vm.onReady,\"first-data-rendered\":_vm.onFirstDataRendered}})],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\nimport { defineComponent, ref, watch, onMounted, computed } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport store from '@/store'\nimport loading from '@/elements/Loading.vue'\nimport { AgGridVue } from '@ag-grid-community/vue'\nimport { AllCommunityModules } from '@ag-grid-community/all-modules'\nimport { UpwardDayTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardDayTypeID'\nimport { PlayerPracticeNightExclusionInfo } from '@/GeneratedTypes/ListInfo/PlayerPracticeNightExclusionInfo'\nimport { TeamCoachInfo } from '@/GeneratedTypes/ListInfo/TeamCoachInfo'\nimport { PlayerUDFValueInfo } from '@/GeneratedTypes/ListInfo/PlayerUDFValueInfo'\n\nimport divisionsClient from '@/clients/divisionsClient'\nimport participantsClient from '@/clients/participantsClient'\n\nimport { capitalize } from 'lodash'\nimport { getProperGradeLabel } from '@/services/gradeService'\n\nexport default defineComponent({\n name: 'PlayerConflict',\n components: {\n SelectInput,\n loading,\n AgGridVue,\n },\n setup() {\n const selectedProgram = ref('@@start@@')\n const selectedDivision = ref(-1)\n const programs = ref([{}]) //league.value.programs?.map((x) => x.typeProgramID) ?? []\n const divisions = ref([{}])\n const isLoading = ref(false)\n const modules = ref(AllCommunityModules)\n const gridOptions: any = { suppressColumnVirtualisation: true }\n\n const league = computed(() => store.getters.leagueAbstraction.currentItem)\n let api: any = null\n let columnApi: any = null\n let rowData: any = ref(null)\n\n onMounted(() => {\n programs.value = []\n if (league.value.programs) {\n if (league.value.programs.length > 1) {\n programs.value.push({\n programID: '',\n programName: 'All' ?? '',\n })\n league.value.programs.forEach((r) =>\n programs.value.push({\n programID: r.typeProgramID,\n programName: r.typeProgramID ?? '',\n })\n )\n selectedProgram.value = ''\n } else {\n selectedProgram.value = league.value.programs[0].typeProgramID\n }\n } else {\n selectedProgram.value = '' //default this and trigger the watcher anyway\n }\n })\n\n watch(\n () => selectedProgram.value,\n async () => {\n divisions.value = []\n //default is all\n divisions.value.push({\n divisionID: 0,\n divisionName: 'All' ?? '',\n })\n if (selectedProgram.value !== '') {\n const divisionList =\n (await divisionsClient.retrieveByProgram(league.value.upwardLeagueID!, selectedProgram.value)) ??\n []\n\n divisionList.forEach((r) =>\n divisions.value.push({\n divisionID: r.divisionID,\n divisionName: r.divisionName ?? '',\n })\n )\n }\n if (selectedDivision.value == 0) {\n //if we were already on the ALL division the WATCH won't fire so do it manually\n await loadReportData() //ugly. would rather trigger the watcher directly but couldn't find a way to do so\n } else {\n selectedDivision.value = 0\n }\n }\n )\n\n watch(\n () => selectedDivision.value,\n async () => {\n await loadReportData()\n }\n )\n\n function capitalizeFormatter(str: any) {\n return capitalize(str.value)\n }\n\n function booleanFormatter(bool: any) {\n return bool.value ? 'Yes' : ''\n }\n\n function teamPracticeNightFormatter(nights: any) {\n //surely there is a wiz-bang way of doing this on one line\n let names: string[] = []\n nights.value.forEach((n: UpwardDayTypeID) => names.push(n.description!))\n return names.join(', ')\n }\n\n function practiceNightExclusionFormatter(nights: any) {\n //surely there is a wiz-bang way of doing this on one line\n let names: string[] = []\n nights.value.forEach((n: PlayerPracticeNightExclusionInfo) => names.push(n.typeDayID!))\n return names.join(', ')\n }\n\n function teamCoachesFormatter(coaches: any) {\n //surely there is a wiz-bang way of doing this on one line\n let names: string[] = []\n coaches.value.forEach((c: TeamCoachInfo) => names.push(c.formattedNameFirstLast!))\n return names.join(', ')\n }\n\n function udfFormatter(udfs: any) {\n //surely there is a wiz-bang way of doing this on one line\n let values: string[] = []\n udfs.value.forEach((u: PlayerUDFValueInfo) =>\n u.udfValue && u.udfValue != '' ? values.push(u.label! + ': ' + u.udfValue!) : null\n )\n return values.join(', ')\n }\n\n function gradeToAgeFormatter(grade: any) {\n return getProperGradeLabel(grade.value, true, '')\n }\n\n function gradeDescriptionFormatter(grade: any) {\n return getProperGradeLabel(grade.value, false, '')\n }\n\n function onReady(params: any) {\n api = params.api\n columnApi = params.columnApi\n let columns = []\n columns.push({\n field: 'firstName',\n headerName: 'First Name',\n })\n columns.push({\n field: 'lastName',\n headerName: 'Last Name',\n })\n columns.push({\n field: 'middleInitial',\n headerName: 'Middle',\n })\n columns.push({\n field: 'gender',\n headerName: 'Gender',\n })\n if (store.getters.leagueAbstraction.isByAge) {\n columns.push({\n field: 'typeGradeID',\n headerName: 'Age',\n valueFormatter: gradeToAgeFormatter,\n })\n } else {\n columns.push({\n field: 'typeGradeID',\n headerName: 'Grade',\n valueFormatter: gradeDescriptionFormatter,\n })\n }\n columns.push({\n field: 'draftExceptionDescription',\n headerName: 'Conflict Description',\n })\n columns.push({\n field: 'teamName',\n headerName: 'Team',\n })\n columns.push({\n field: 'divisionName',\n headerName: 'Division',\n })\n columns.push({\n field: 'typeProgramID',\n headerName: 'Program',\n valueFormatter: capitalizeFormatter,\n })\n columns.push({\n field: 'manualAssignment',\n headerName: 'Manual Assignment?',\n valueFormatter: booleanFormatter,\n })\n columns.push({\n field: 'playerIsLockedToTeam',\n headerName: 'Locked To Team?',\n valueFormatter: booleanFormatter,\n })\n columns.push({\n field: 'coachLinkFirstName',\n headerName: 'Coach Link First',\n })\n columns.push({\n field: 'coachLinkLastName',\n headerName: 'Coach Link Last',\n })\n columns.push({\n field: 'teamCoaches',\n headerName: 'Team Coaches',\n valueFormatter: teamCoachesFormatter,\n })\n columns.push({\n field: 'carpoolLinkFirstName',\n headerName: 'Carpool Link First',\n })\n columns.push({\n field: 'carpoolLinkLastName',\n headerName: 'Carpool Link Last',\n })\n columns.push({\n field: 'teamPracticeNights',\n headerName: 'Team Practice Nights',\n valueFormatter: teamPracticeNightFormatter,\n })\n columns.push({\n field: 'practiceNightExclusions',\n headerName: 'Practice Nights Exclusions',\n valueFormatter: practiceNightExclusionFormatter,\n })\n columns.push({\n field: 'udFs',\n headerName: 'UDFs',\n valueFormatter: udfFormatter,\n })\n columns.push({\n field: 'generalNotes',\n headerName: 'General Notes',\n })\n columns.push({\n field: 'adminNotes',\n headerName: 'Admin Notes',\n })\n\n api.setColumnDefs(columns)\n }\n\n async function loadReportData() {\n isLoading.value = true\n\n try {\n const conflictList =\n (await participantsClient.retrievePlayerConflicts(\n league.value.upwardLeagueID!,\n selectedProgram.value,\n selectedDivision.value\n )) ?? []\n\n rowData.value = conflictList\n } catch (err) {\n rowData.value = []\n }\n\n isLoading.value = false\n }\n\n function onFirstDataRendered() {\n const cols = [\n 'firstName',\n 'lastName',\n 'middleInitial',\n 'gender',\n 'typeGradeID',\n 'draftExceptionDescription',\n 'teamName',\n 'divisionName',\n 'typeProgramID',\n 'manualAssignment',\n 'playerIsLockedToTeam',\n 'coachLinkFirstName',\n 'coachLinkLastName',\n 'teamCoaches',\n 'carpoolLinkFirstName',\n 'carpoolLinkLastName',\n 'teamPracticeNights,',\n 'practiceNightExclusions',\n ] //basically all columns except the UDF and note columns at the end\n columnApi.applyColumnState({\n state: [\n { colId: 'lastName', sort: 'asc', sortIndex: 0 },\n { colId: 'firstName', sort: 'asc', sortIndex: 1 },\n ],\n defaultState: { sort: null },\n })\n columnApi.autoSizeColumns(cols, false)\n }\n\n function downloadCsv() {\n const parms = { processCellCallback: csvProcessCellCallback }\n api.exportDataAsCsv(parms)\n }\n\n function csvProcessCellCallback(params: any) {\n switch (params.column.getColId()) {\n case 'typeProgramID':\n return capitalizeFormatter(params)\n case 'manualAssignment':\n return booleanFormatter(params)\n case 'playerIsLockedToTeam':\n return booleanFormatter(params)\n case 'teamPracticeNights':\n return teamPracticeNightFormatter(params)\n case 'practiceNightExclusions':\n return practiceNightExclusionFormatter(params)\n case 'teamCoaches':\n return teamCoachesFormatter(params)\n case 'udFs':\n return udfFormatter(params)\n default:\n return params.value\n }\n }\n\n return {\n downloadCsv,\n selectedProgram,\n selectedDivision,\n programs,\n divisions,\n isLoading,\n modules,\n onReady,\n onFirstDataRendered,\n rowData,\n gridOptions,\n }\n },\n})\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!./PlayerConflict.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!./PlayerConflict.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PlayerConflict.vue?vue&type=template&id=ba87c01a&\"\nimport script from \"./PlayerConflict.vue?vue&type=script&lang=ts&\"\nexport * from \"./PlayerConflict.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PlayerConflict.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-white flex-grow-1\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-12 text-right\"},[(!_vm.isLoading)?_c('button',{staticClass:\"btn btn-success m-1\",on:{\"click\":_vm.downloadCsv}},[_c('i',{staticClass:\"fa fa-export\"}),_vm._v(\"Export \")]):_vm._e()])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isLoading),expression:\"isLoading\"}],staticClass:\"row text-center\"},[_c('div',{staticClass:\"col-md-12 text-center\"},[_c('loading')],1)]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}],staticClass:\"row\"},[_c('ag-grid-vue',{staticClass:\"ag-theme-alpine\",style:(\"width: 100%; height: 540px\"),attrs:{\"gridOptions\":_vm.gridOptions,\"rowData\":_vm.rowData,\"modules\":_vm.modules,\"defaultColDef\":{\n sortable: true,\n resizable: true,\n filter: true,\n }},on:{\"grid-ready\":_vm.onReady,\"first-data-rendered\":_vm.onFirstDataRendered}})],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\nimport { defineComponent, ref, onMounted, computed } from '@vue/composition-api'\nimport store from '@/store'\nimport loading from '@/elements/Loading.vue'\nimport { AgGridVue } from '@ag-grid-community/vue'\nimport { AllCommunityModules } from '@ag-grid-community/all-modules'\n\nimport volunteersClient from '@/clients/volunteersClient'\n\nimport { capitalize } from 'lodash'\nimport moment from 'moment'\n\nexport default defineComponent({\n name: 'CoachConflict',\n components: {\n loading,\n AgGridVue,\n },\n setup() {\n const isLoading = ref(false)\n const modules = ref(AllCommunityModules)\n const gridOptions: any = { suppressColumnVirtualisation: true }\n\n const league = computed(() => store.getters.leagueAbstraction.currentItem)\n let api: any = null\n let columnApi: any = null\n let rowData: any = ref(null)\n\n onMounted(async () => {\n await loadReportData()\n })\n\n function capitalizeFormatter(str: any) {\n return capitalize(str.value)\n }\n\n function dateFormatter(params: any) {\n return params.value ? moment(params.value).format('MM/DD/YYYY hh:mm A') : ''\n }\n\n function onReady(params: any) {\n api = params.api\n columnApi = params.columnApi\n let columns = []\n columns.push({\n field: 'firstName',\n headerName: 'First Name',\n })\n columns.push({\n field: 'lastName',\n headerName: 'Last Name',\n })\n columns.push({\n field: 'middleInitial',\n headerName: 'Middle',\n })\n columns.push({\n field: 'gender',\n headerName: 'Gender',\n })\n columns.push({\n field: 'conflictDescription',\n headerName: 'Conflict Description',\n })\n columns.push({\n field: 'teamName',\n headerName: 'Team',\n })\n columns.push({\n field: 'divisionName',\n headerName: 'Division',\n })\n columns.push({\n field: 'typeProgramID',\n headerName: 'Program',\n valueFormatter: capitalizeFormatter,\n })\n columns.push({\n field: 'appointmentStart',\n headerName: 'Conflict Start',\n valueFormatter: dateFormatter,\n })\n columns.push({\n field: 'appointmentEnd',\n headerName: 'Conflict End',\n valueFormatter: dateFormatter,\n })\n columns.push({\n field: 'coachLinkFirstName',\n headerName: 'Coach Link First',\n })\n columns.push({\n field: 'coachLinkLastName',\n headerName: 'Coach Link Last',\n })\n columns.push({\n field: 'registrationNote',\n headerName: 'Registration Note',\n })\n columns.push({\n field: 'teamsCoached',\n headerName: 'Teams Coached',\n })\n columns.push({\n field: 'linkTeamsCoached',\n headerName: 'Teams Coached By Linked Coach',\n })\n\n api.setColumnDefs(columns)\n }\n\n async function loadReportData() {\n isLoading.value = true\n\n try {\n const conflictList =\n (await volunteersClient.retrieveCoachConflicts(league.value.upwardLeagueID!)) ?? []\n\n rowData.value = conflictList\n } catch (err) {\n rowData.value = []\n }\n\n isLoading.value = false\n }\n\n function onFirstDataRendered() {\n const cols = [\n 'firstName',\n 'lastName',\n 'middleInitial',\n 'gender',\n 'conflictDescription',\n 'teamName',\n 'divisionName',\n 'typeProgramID',\n 'appointmentStart',\n 'appointmentEnd',\n 'coachLinkFirstName',\n 'coachLinkLastName',\n 'registrationNote',\n 'teamsCoached,',\n 'linkTeamsCoached',\n ]\n columnApi.applyColumnState({\n state: [\n { colId: 'lastName', sort: 'asc', sortIndex: 0 },\n { colId: 'firstName', sort: 'asc', sortIndex: 1 },\n ],\n defaultState: { sort: null },\n })\n columnApi.autoSizeColumns(cols, false)\n }\n\n function downloadCsv() {\n const parms = { processCellCallback: csvProcessCellCallback }\n api.exportDataAsCsv(parms)\n }\n\n function csvProcessCellCallback(params: any) {\n switch (params.column.getColId()) {\n case 'typeProgramID':\n return capitalizeFormatter(params)\n case 'appointmentStart':\n return dateFormatter(params)\n case 'appointmentEnd':\n return dateFormatter(params)\n default:\n return params.value\n }\n }\n\n return {\n downloadCsv,\n isLoading,\n modules,\n onReady,\n onFirstDataRendered,\n rowData,\n gridOptions,\n }\n },\n})\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!./CoachConflict.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!./CoachConflict.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachConflict.vue?vue&type=template&id=29ad79f4&\"\nimport script from \"./CoachConflict.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachConflict.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CoachConflict.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\n\n\n\n\nimport { defineComponent, ref, computed } from '@vue/composition-api'\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport BlankParticipantEvalForm from '@/views/Programs/Reports/DynamicReports/BlankParticipantEvalForm.vue'\nimport ParticipantEvalForm from '@/views/Programs/Reports/DynamicReports/ParticipantEvalForm.vue'\nimport ParticipantEvalActivity from '@/views/Programs/Reports/DynamicReports/ParticipantEvalActivity.vue'\nimport CoachRoster from '@/views/Programs/Reports/DynamicReports/CoachRoster.vue'\nimport MailingLabels from '@/views/Programs/Reports/DynamicReports/MailingLabels.vue'\nimport Siblings from '@/views/Programs/Reports/DynamicReports/Siblings.vue'\nimport GameSchedule from '@/views/Programs/Reports/DynamicReports/GameSchedule.vue'\nimport GameScheduleByTeam from '@/views/Programs/Reports/DynamicReports/GameScheduleByTeam.vue'\nimport PracticeSchedule from '@/views/Programs/Reports/DynamicReports/PracticeSchedule.vue'\nimport ParticipantIntros from '@/views/Programs/Reports/DynamicReports/ParticipantIntros.vue'\nimport Payments from '@/views/Programs/Reports/DynamicReports/Payments.vue'\nimport PaymentsByType from '@/views/Programs/Reports/DynamicReports/PaymentsByType.vue'\nimport MissingEvals from '@/views/Programs/Reports/DynamicReports/MissingEvals.vue'\nimport OutstandingBalance from '@/views/Programs/Reports/DynamicReports/OutstandingBalance.vue'\nimport RefereeSchedule from '@/views/Programs/Reports/DynamicReports/RefereeSchedule.vue'\nimport PlayerConflict from '@/views/Programs/Reports/DynamicReports/PlayerConflict.vue'\nimport CoachConflict from '@/views/Programs/Reports/DynamicReports/CoachConflict.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'DynamicReports',\n components: {\n ActiveReport,\n ParticipantEvalForm,\n ParticipantEvalActivity,\n BlankParticipantEvalForm,\n CoachRoster,\n MailingLabels,\n Siblings,\n GameSchedule,\n GameScheduleByTeam,\n PracticeSchedule,\n ParticipantIntros,\n Payments,\n PaymentsByType,\n MissingEvals,\n OutstandingBalance,\n RefereeSchedule,\n PlayerConflict,\n CoachConflict,\n },\n setup(props, ctx) {\n const reports = ref<{\n [reportName: string]: {\n name: string\n component: string\n }\n }>({\n blankevalform: {\n name: 'Blank Participant Evaluation Form',\n component: 'BlankParticipantEvalForm',\n },\n evalform: {\n name: 'Participant Evaluation Form',\n component: 'ParticipantEvalForm',\n },\n evalactivity: {\n name: 'Participant Eval Activity Scores',\n component: 'ParticipantEvalActivity',\n },\n missingevals: {\n name: 'Missing Evaluations',\n component: 'MissingEvals',\n },\n coaches: {\n name: 'Coaches Report',\n component: 'CoachRoster',\n },\n mailinglabels: {\n name: 'Mailing Labels (Avery 5160)',\n component: 'MailingLabels',\n },\n siblings: {\n name: 'Siblings Report',\n component: 'Siblings',\n },\n practice: {\n name: 'Practice Schedule',\n component: 'PracticeSchedule',\n },\n game: {\n name: 'Game Schedules',\n component: 'GameSchedule',\n },\n gamebyteam: {\n name: 'Game Schedules by Team',\n component: 'GameScheduleByTeam',\n },\n referee: {\n name: `${store.getters.leagueAbstraction.refLabel} Schedules`,\n component: 'RefereeSchedule',\n },\n intros: {\n name: 'Participant Introductions',\n component: 'ParticipantIntros',\n },\n payments: {\n name: 'Payments Report',\n component: 'Payments',\n },\n paymentsbytype: {\n name: 'Payments By Type Report',\n component: 'PaymentsByType',\n },\n outstandingbalance: {\n name: 'Outstanding Balance Report',\n component: 'OutstandingBalance',\n },\n playerconflict: {\n name: 'Player Requests Not Honored',\n component: 'PlayerConflict',\n },\n coachconflict: {\n name: 'Coach Conflicts',\n component: 'CoachConflict',\n },\n })\n\n const reportName = computed(() => ctx.root.$route.params.reportName)\n\n const reportComponent = computed(() => {\n if (!reportName.value || !reports.value[reportName.value]) {\n return ''\n }\n return reports.value[reportName.value].component\n })\n\n return {\n reportComponent,\n }\n },\n})\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!./DynamicReports.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!./DynamicReports.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DynamicReports.vue?vue&type=template&id=6553034e&\"\nimport script from \"./DynamicReports.vue?vue&type=script&lang=ts&\"\nexport * from \"./DynamicReports.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'\nimport Reports from '@/views/Programs/Reports/Index.vue'\nimport ExcelReports from '@/views/Programs/Reports/ExcelReports.vue'\nimport WebviewReports from '@/views/Programs/Reports/WebviewReports.vue'\nimport DynamicReports from '@/views/Programs/Reports/DynamicReports.vue'\n\nexport default [\n {\n path: 'reports',\n component: Reports,\n children: [\n {\n path: 'excel/:reportName',\n component: ExcelReports,\n },\n {\n path: 'web/:reportName',\n component: WebviewReports,\n },\n {\n path: 'dynamic/:reportName',\n component: DynamicReports,\n },\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex flex-row flex-grow-1 bg-light-2\"},[_c('vertical-tabs',{attrs:{\"tabs\":_vm.tabs}}),_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('router-view')],1),_c('ministry-agreement-modal',{attrs:{\"reload\":_vm.reloadMinistryAgreement,\"compareDate\":_vm.storeCamp.campStartDate}})],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('vee-validate-form',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar valid = ref.valid;\nvar validated = ref.validated;\nreturn [_c('modal',{attrs:{\"title\":\"Ministry Agreement\",\"show-close\":_vm.ministryAgreementShowClosed},on:{\"scroll\":_vm.handleScroll},model:{value:(_vm.ministryAgreementRequired),callback:function ($$v) {_vm.ministryAgreementRequired=$$v},expression:\"ministryAgreementRequired\"}},[(!_vm.showWaitPage)?[(_vm.step === 1)?[_c('div',{ref:\"container\",domProps:{\"innerHTML\":_vm._s(_vm.agreementText)}})]:(_vm.step == 2)?_c('div',{class:[{ 'sign-not-showing': _vm.step != 2 }, { 'sign-showing': _vm.step == 2 }]},[_c('p',[_vm._v(\"Please enter the following to agree to the ministry agreement:\")]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6\"},[_c('text-input',{attrs:{\"vee-validate-rules\":\"namelike|required\",\"label\":\"Full Name\"},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}})],1),_c('div',{staticClass:\"col-lg-6\"},[_c('text-input',{attrs:{\"vee-validate-rules\":\"email|required\",\"label\":\"email\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1),_c('div',{staticClass:\"col form-group\"},[_c('label',{staticClass:\"text-uppercase\"},[_vm._v(\"Date\")]),_c('div',[_vm._v(\" \"+_vm._s(new Date().toLocaleString())+\" \")])])])]):_vm._e()]:_c('wait-page'),_c('template',{slot:\"footer\"},[_c('div',{staticClass:\"row\"},[(_vm.step === 1)?[_c('div',{staticClass:\"col-auto py-0\"},[(!_vm.scrolled)?_c('div',{staticClass:\"alert alert-info m-0\"},[_vm._v(\" Scroll to the bottom of this agreement to continue \")]):_vm._e()]),_c('div',{staticClass:\"col py-0 text-right\"},[_c('button',{staticClass:\"btn btn-primary mt-1\",attrs:{\"disabled\":!_vm.scrolled},on:{\"click\":_vm.nextClicked}},[_vm._v(\"Next\")])])]:(_vm.step === 2)?[_c('div',{staticClass:\"col py-0\"},[_c('button',{staticClass:\"btn btn-light\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.backClicked}},[_vm._v(\"Back\")])]),_c('div',{staticClass:\"col-auto py-0\"},[_c('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":!_vm.hasCollectedData || !valid,\"type\":\"button\"},on:{\"click\":_vm.agreeClicked}},[_vm._v(\" Agree \")])])]:_vm._e()],2)])],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',{staticClass:\"background-secondary text-center\"},[_c('img',{staticClass:\"mb-3\",attrs:{\"src\":\"/img/logo-big.png\"}}),(_vm.showWaitMessage)?_c('div',{staticClass:\"row\"},[_vm._m(0),_vm._m(1),_c('div',{staticClass:\"col-md-1\"}),_c('div',{staticClass:\"col-md-10\"},[_c('div',{staticClass:\"progress\"},[_c('div',{staticClass:\"progress-bar bg-success\",style:('width: ' + (_vm.timePassed / _vm.timeLimit) * 100 + '%'),attrs:{\"role\":\"progressbar\",\"aria-valuenow\":_vm.timePassed,\"aria-valuemin\":\"0\",\"aria-valuemax\":\"12\"}})])])]):_vm._e(),_c('div',{staticClass:\"col-md-1\"}),(!_vm.showWaitMessage)?_c('div',{staticClass:\"row\"},[_vm._m(2),_vm._m(3)]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-12\"},[_c('h2',[_vm._v(\"Thank you for signing.\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-12\"},[_c('h2',[_vm._v(\"Please wait as we update our records . . .\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-12\"},[_c('h2',[_vm._v(\"Thank you for your patience.\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-md-12\"},[_c('h2',[_vm._v(\"Please close this window and continue creating your program.\")])])}]\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\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'WaitPage',\n setup() {\n const showWaitMessage = ref(true)\n const timerInterval = ref()\n const timePassed = ref(0)\n const timeLimit = ref(12)\n\n const timeLeft = computed((): number => timeLimit.value - timePassed.value)\n\n function startTimer() {\n timerInterval.value = setInterval(() => (timePassed.value += 1), 1000)\n }\n\n onMounted(() => {\n startTimer()\n })\n\n watch(\n () => timeLeft.value,\n (val: number) => {\n if (val === 0) {\n clearInterval(timerInterval.value)\n showWaitMessage.value = false\n\n window.top.postMessage('timerFinished', '*')\n }\n }\n )\n\n return {\n showWaitMessage,\n timePassed,\n timeLimit,\n }\n },\n})\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!./WaitPage.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!./WaitPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WaitPage.vue?vue&type=template&id=181da893&\"\nimport script from \"./WaitPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./WaitPage.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 restService from '@/services/restService'\nimport { MinistryAgreement } from '@/GeneratedTypes/Partner/MinistryAgreement.ts'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\n\nconst checkMinistryAgreementStatus = async (\n accountNumber: UpwardLeagueIDType\n): Promise => {\n const results = await restService.get(`partners/${accountNumber}/ministryAgreement`)\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in ministryAgreementClient.checkMinistryAgreementStatus')\n }\n}\n\ninterface ESignatureType {\n fullname: string\n email: string\n}\n\nconst signAgreement = async (accountNumber: UpwardLeagueIDType, name: string, email: string) => {\n const results = await restService.post(`partners/${accountNumber}/ministryAgreement`, {\n fullname: name,\n email,\n } as ESignatureType)\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in ministryAgreementClient.signAgreement')\n }\n}\n\nexport default {\n checkMinistryAgreementStatus,\n signAgreement,\n}\n","export const agreementText = `\n\n
\n

UPWARD UNLIMITED MINISTRY AGREEMENT

\n

Upward Unlimited DBA Upward Sports (“Upward Unlimited” or “Upward”) develops sports ministry program materials (the “Upward program materials”) for sports ministry programs (the “Upward programs”) and licenses such materials to local churches, schools and other organizations for use in their sports ministry programs. By accepting this Agreement, the organization named below (the “Organization”) agrees to use the Upward program materials consistent with the principles expressed in this Agreement and in accordance with the standards set forth in the Policy Regarding the Christian Community, Mission and Standards of Upward Unlimited (the “Christian Community Policy”). This Agreement covers all Upward programs and Upward program materials obtained by the Organization, unless it is superseded and replaced by a new Upward Unlimited Ministry Agreement.

\n
    \n
  1. By accepting this Agreement, the Organization, through the authorized representative’s signature below, acknowledges that it has read and agrees with the Upward Unlimited Statement of Faith located at the end of this document. The Organization further acknowledges that it has read Upward’s Christian Community Policy and agrees to respect Upward’s other Christian beliefs, support Upward’s mission, and comply with applicable community standards.
  2. \n
  3. The term of this Agreement is one year from the date of signature on the contract, unless earlier terminated as provided herein. This Agreement will not automatically renew at the end of each year.
  4. \n
  5. The Organization agrees that it is solely responsible for its Upward Unlimited program(s) and any other program that uses Upward program materials. The Organization is therefore solely responsible for selecting and directing all trainings, games, events, and other activities, for selecting, maintenance and safe use of all equipment, vehicles, facilities, venues, playing fields, running courses, and materials used in the Upward program(s), for selecting, training, and supervising all participants in any Upward program, and for screening, selecting, training and supervising all volunteers, employees, vendors, and other personnel involved in and who plan, direct, and carry out its Upward program(s). The Organization is solely responsible for the safety of all participants who are involved or participate in any way in its Upward program(s). Volunteers, employees, vendors, and other personnel involved in the Organization’s Upward program(s) are not in any way volunteers, employees, vendors, or personnel of Upward, but are solely volunteers, employees, vendors, and personnel of the Organization. The Organization and Upward acknowledge and agree that: (a) their relative status is that of an independent purchaser and licensee (Organization) and a provider and licensor (Upward) of materials, programs and services; (b) each of the Organization’s local Upward programs is not a division, subsidiary, or partner (in the legal sense of that term) of Upward and personnel involved in the Organization’s Upward program(s) are not volunteers, employees or staff of Upward; (c) the Organization understands that the leadership training available through Upward is not all-inclusive and does not include training in hiring or other personnel practices and procedures; (d) the Organization is solely responsible for maintaining a safe environment for participants, including selecting, training, and supervising leaders, coaches, vendors, volunteers, and employees in child protection issues. The Organization seeks to provide a program that is in accordance with Upward’s Christian beliefs and community standards, and that welcomes all participants, within league or club age and gender parameters, regardless of religion, race, or economic status.
  6. \n
  7. The Organization agrees that in using the Upward program materials and carrying out and promoting its Upward program(s) it shall comply with all applicable local, state, and federal laws. Upward Unlimited strongly suggests policies of insurance adequate to cover physical and other injuries to children and adults participating in or leading its Upward program(s) and other programs using Upward program materials.
  8. \n
  9. The Organization shall indemnify, defend, and hold harmless Upward Unlimited and its successors and assigns, directors, officers, employees, volunteers, and other personnel and agents for all claims, damages, and liability arising out of the Organization’s Upward program(s) or otherwise out of its use of Upward program materials, including but not limited to claims against Upward and its employees and other personnel, and claims brought by or against the Organization, its members, employees, volunteers, and participants in its Upward program and other youth programs, whether or not members of the Organization. This provision survives the termination of this Agreement.
  10. \n
  11. Either party may terminate this Agreement at any time in its sole discretion without cause by giving written notice to the other party of such termination. Notice shall be given via email addressed to the party as provided herein ( partnersupport@upward.org) or by delivery to the other party by mail carrier.
  12. \n
  13. Upon acceptance of this Agreement by Upward Unlimited, Upward Unlimited agrees to provide the Organization with Upward program materials and offer training and support according to Upward program specifications, and the Organization shall thereafter be licensed to use Upward program materials, the Upward ministry approach, and the Upward Property (as defined below) in accordance with and during the term of this Agreement. The Organization may prepare derivative works of the Upward program materials provided that such derivative works are used solely in the Organization’s Upward programs. The Organization may not, without the prior written consent of Upward Unlimited, sublicense the Upward program materials.
  14. \n
  15. The Upward program materials, all copyrights, trademarks, trade names, service marks, and similar proprietary rights in and to the Upward program(s) and Upward program materials, including without limitation the terms “Upward”, “Upward Running”, and “Run for God” and all Upward, Upward Running, and Run for God logos (together referred to as the “Upward Unlimited Property”), are owned solely and exclusively by Upward Unlimited. The Organization may use the Upward Unlimited Property only in accordance with this Agreement and only in connection with the Organization’s Upward programs. The Organization agrees that its every use of Upward Unlimited Property, including derivative works, shall inure to the benefit of Upward Unlimited and that the Organization shall not at any time acquire any rights in such Upward Unlimited Property by virtue of any use it may make of such Upward Unlimited Property. The Organization further agrees that it will not at any time (i) apply for a registration of any trademark, service mark, business name, domain name, or other designation which would be confusingly similar to, or would otherwise affect Upward Unlimited’s ownership of, the Upward Unlimited Property or (ii) file any document with any governmental authority to take any action which would adversely affect Upward Unlimited’s ownership of the Upward Unlimited Property.
  16. \n
  17. The Organization acknowledges and consents that Upward may provide the Organization’s name and contact address to certain value-added providers, who may contact the Organization regarding possible product sales. Upward receives no compensation from any such value-added providers. Further, UPWARD DOES NOT ENDORSE ANY SUCH VALUE-ADDED PROVIDER GENERALLY OR ANY OF ITS PRODUCTS SPECIFICALLY, AND UPWARD DISCLAIMS ALL WARRANTIES EXPRESS, IMPLIED, OR STATUTORY, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY FOR A PARTICULAR PURPOSE. The Organization acknowledges and consents that Upward may obtain access to personal information regarding program participants and their parents or guardians. The Organization agrees that Upward may use such personal information in a manner consistent with Upward’s Privacy and Security Statements as amended from time to time. The current version of Upward’s Privacy and Security Statements may be found at www.upward.org.
  18. \n
  19. This Agreement shall be governed by the laws of the State of South Carolina. The parties agree that, if they are unable to resolve a dispute or claim between themselves with respect to this Agreement, the parties shall seek to resolve their dispute by biblically-based mediation, before a mediator or conciliator selected and mutually agreed upon by the parties, prior to commencing any litigation.
  20. \n
  21. The individual signing this Agreement on behalf of the Organization certifies that he/she is authorized to sign this Agreement and that the governing body of the Organization has approved this Agreement.
  22. \n
\n

STATEMENT OF FAITH

\n
    \n
  1. We believe the Bible to be the inspired, authoritative Word of God.
  2. \n
  3. We believe that there is one God, eternally existent in three persons – the Father, Son, and Holy Spirit.
  4. \n
  5. We believe in the deity of our Lord Jesus Christ, in His virgin birth, in His sinless life, in His miracles, in His vicarious and atoning death through His shed blood, in His bodily resurrection, in His ascension to the right hand of the Father, and in His personal return in power and glory.
  6. \n
  7. We believe that for the salvation of lost and sinful people, regeneration by the Holy Spirit is absolutely essential.
  8. \n
  9. We believe in the present ministry of the Holy Spirit, by whose indwelling the Christian is enabled to live a godly life.
  10. \n
  11. We believe in the resurrection of both the saved and the lost; they that are saved unto the resurrection of life, and they that are lost unto the resurrection of eternal punishment.
  12. \n
  13. We believe in the spiritual unity of believers in our Lord Jesus Christ.
  14. \n
\n
\n\n`\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, nextTick } from '@vue/composition-api'\n\nimport Modal from '@/components/Modal.vue'\nimport WaitPage from '@/views/WaitPage.vue'\n\nimport ministryAgreementClient from '@/clients/ministryAgreementClient'\nimport { agreementText } from '@/lib/components/MinistryAgreementModal/agreement'\nimport TextInput from '@/elements/TextInput.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'MinistryAgreementModal',\n components: {\n TextInput,\n Modal,\n WaitPage,\n VeeValidateForm,\n },\n props: {\n reload: { type: Boolean, required: true },\n compareDate: { type: [String, Date], required: false, default: null },\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const isMinistryAgreementSigned = computed(() => store.getters.authorization.isMinistryAgreementSigned)\n const isSystemsAndSupport = computed(() => store.getters.authorization.isSystemsAndSupport)\n const isUpwardStaff = computed(() => store.getters.authorization.isUpwardStaff)\n\n const ministryAgreementRequired = ref(false)\n const ministryAgreementShowClosed = ref(false)\n const showWaitPage = ref(false)\n const name = ref('')\n const email = ref('')\n\n const hasCollectedData = computed(() => name.value && email.value)\n\n //step =1 show agreement, step=2 accept agreement, also showWaitPage = false, agreement, otherwise waiting for accept.\n const step = ref(1)\n\n function nextClicked() {\n step.value = 2\n }\n\n function backClicked() {\n step.value = 1\n }\n\n async function agreeClicked() {\n showWaitPage.value = true\n await ministryAgreementClient.signAgreement(accountNumber.value, name.value, email.value)\n store.commit.authorization.setMinistryAgreementIsSigned()\n ministryAgreementRequired.value = false\n ministryAgreementShowClosed.value = true\n }\n\n const scrolled = ref(false)\n\n function handleScroll() {\n scrolled.value = scrolled.value || isScrolledToBottom()\n }\n\n function isScrolledToBottom() {\n const container = ctx.refs.container as HTMLElement\n const parent = container.parentElement as HTMLElement\n const distanceToScroll = parent.scrollHeight - parent.clientHeight\n const percentScrolled =\n distanceToScroll > 0 ? (container.scrollTop || parent.scrollTop) / distanceToScroll : 1\n return percentScrolled >= 0.9\n }\n\n watch(\n () => props.reload,\n async () => {\n await updateMinistryAgreementRequired()\n }\n )\n\n watch(\n () => props.compareDate,\n async () => {\n await checkMinistryAgreementRequired()\n }\n )\n\n async function checkMinistryAgreementRequired() {\n const status = await ministryAgreementClient.checkMinistryAgreementStatus(accountNumber.value)\n if (status) {\n store.commit.authorization.setMinistryAgreementIsSigned()\n ministryAgreementRequired.value = true\n }\n let isExpired = false\n if (props.compareDate && status && status.expireDate) {\n const endDate = new Date(props.compareDate)\n const expirationDate = new Date(status.expireDate)\n isExpired = expirationDate < endDate\n }\n const shouldRequireSigniture = !status || status.expired || isExpired\n if (isSystemsAndSupport.value || isUpwardStaff.value) {\n ministryAgreementRequired.value = false\n } else {\n ministryAgreementRequired.value = shouldRequireSigniture\n }\n ministryAgreementShowClosed.value = !ministryAgreementRequired.value\n showWaitPage.value = ministryAgreementShowClosed.value\n }\n\n async function updateMinistryAgreementRequired() {\n if (!isMinistryAgreementSigned.value) {\n await checkMinistryAgreementRequired()\n }\n }\n\n watch(\n () => ministryAgreementRequired.value,\n () => {\n if (ministryAgreementRequired.value) {\n nextTick(() => (scrolled.value = scrolled.value || isScrolledToBottom()))\n }\n },\n { immediate: true }\n )\n\n return {\n agreementText,\n ministryAgreementRequired,\n ministryAgreementShowClosed,\n handleScroll,\n showWaitPage,\n step,\n name,\n email,\n scrolled,\n nextClicked,\n backClicked,\n agreeClicked,\n hasCollectedData,\n }\n },\n})\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!./MinistryAgreementModal.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!./MinistryAgreementModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MinistryAgreementModal.vue?vue&type=template&id=24403618&scoped=true&\"\nimport script from \"./MinistryAgreementModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./MinistryAgreementModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MinistryAgreementModal.vue?vue&type=style&index=0&id=24403618&lang=scss&scoped=true&\"\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 \"24403618\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\n\nimport Loading from '@/elements/Loading.vue'\nimport MinistryAgreementModal from '@/components/MinistryAgreementModal.vue'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Modal from '@/components/Modal.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Setup',\n components: {\n VerticalTabs,\n Loading,\n Modal,\n MinistryAgreementModal,\n },\n setup(props, ctx) {\n const storeCamp = computed(() => store.getters.camps.currentItem)\n\n const reloadMinistryAgreement = ref(false)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const baseRoute = computed(() => `/programs/camp/${routeId.value}setup`)\n\n const tabs = computed(() => {\n if (storeCamp.value && !storeCamp.value.canEdit) {\n return []\n }\n\n const retval = [\n { text: 'Program Information', to: `${baseRoute.value}/information` },\n { text: 'Key Dates', to: `${baseRoute.value}/dates` },\n { text: 'Director', to: `${baseRoute.value}/leadership` },\n { text: 'Partnership', to: `${baseRoute.value}/partnership` },\n { text: 'Camp Items', to: `${baseRoute.value}/products` },\n ]\n\n if (storeCamp.value.isOPRLeague) {\n retval.push({ text: 'Online Registration', to: `${baseRoute.value}/registration` })\n }\n return retval\n })\n\n onMounted(async () => {\n const archivedRoute = `${baseRoute.value}/archive`\n if (storeCamp.value && !storeCamp.value.canEdit && ctx.root.$route.path !== archivedRoute) {\n await ctx.root.$router.push(archivedRoute)\n } else {\n reloadMinistryAgreement.value = !reloadMinistryAgreement.value\n }\n })\n\n watch(\n () => storeCamp.value.campStartDate,\n () => {\n reloadMinistryAgreement.value = !reloadMinistryAgreement.value\n },\n { deep: true }\n )\n\n return {\n tabs,\n reloadMinistryAgreement,\n storeCamp,\n }\n },\n})\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!./Setup.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!./Setup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Setup.vue?vue&type=template&id=61b803c2&\"\nimport script from \"./Setup.vue?vue&type=script&lang=ts&\"\nexport * from \"./Setup.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Camp Name\",\"required\":\"\"},model:{value:(_vm.camp.leagueName),callback:function ($$v) {_vm.$set(_vm.camp, \"leagueName\", $$v)},expression:\"camp.leagueName\"}}),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col\"},[_c('select-input',{attrs:{\"label\":\"Run Camp By\",\"required\":\"required\",\"text-property-name\":\"description\",\"value-property-name\":\"value\",\"items-list\":_vm.runCampByTypeList},model:{value:(_vm.campRunByType),callback:function ($$v) {_vm.campRunByType=$$v},expression:\"campRunByType\"}})],1),_c('div',{staticClass:\"col\"},[(_vm.campRunByType == 'AGE')?_c('date-input',{attrs:{\"label\":\"Cutoff Date\",\"required\":\"\",\"time\":\"00:00:00\",\"min-date\":new Date(_vm.minDate),\"max-date\":new Date(_vm.maxDate)},model:{value:(_vm.camp.ageCutoffDate),callback:function ($$v) {_vm.$set(_vm.camp, \"ageCutoffDate\", $$v)},expression:\"camp.ageCutoffDate\"}}):_vm._e()],1)]),_c('grade-gender-selector',{attrs:{\"program\":_vm.camp,\"showAges\":_vm.campRunByType == 'AGE'},on:{\"changed\":_vm.gradeGenderChange}}),_c('timezone-select',{model:{value:(_vm.camp.typeTimezoneID),callback:function ($$v) {_vm.$set(_vm.camp, \"typeTimezoneID\", $$v)},expression:\"camp.typeTimezoneID\"}}),_c('memo-input',{attrs:{\"label\":\"What are your ministry goals and objectives for this camp? This will help us serve you better as you pursue your ministry goals.\",\"required\":\"\"},model:{value:(_vm.camp.programMissionObjective),callback:function ($$v) {_vm.$set(_vm.camp, \"programMissionObjective\", $$v)},expression:\"camp.programMissionObjective\"}}),_c('html-editor',{attrs:{\"label\":\"Enter a custom message for parents to see on Upward.org league finder.\",\"max-length\":1024,\"show-help\":true},on:{\"helpClicked\":function($event){_vm.helpIsVisible = true}},model:{value:(_vm.camp.leagueFinderMessage),callback:function ($$v) {_vm.$set(_vm.camp, \"leagueFinderMessage\", $$v)},expression:\"camp.leagueFinderMessage\"}}),_c('modal',{attrs:{\"title\":\"HELP: Upward.org League Finder\",\"is-small\":true},model:{value:(_vm.helpIsVisible),callback:function ($$v) {_vm.helpIsVisible=$$v},expression:\"helpIsVisible\"}},[_c('div',{staticClass:\"p-5\"},[_c('b',[_vm._v(\"Custom Message for League Finder\")]),_vm._v(\" is an area where you can add info like the days practices and games are, where those are being held, and anything else specific about your camp. \")])]),_c('text-input',{staticClass:\"italics-placeholder\",attrs:{\"label\":\"Specify an alternative registration URL on Upward.org league finder.\",\"placeholder\":\"(e.g. https://www.my-church-site.org)\"},model:{value:(_vm.camp.leagueFinderURLOverride),callback:function ($$v) {_vm.$set(_vm.camp, \"leagueFinderURLOverride\", $$v)},expression:\"camp.leagueFinderURLOverride\"}}),_c('div',{staticClass:\"pt-3\"},[_c('yes-no-input',{staticClass:\"col-sm-12 pl-0\",attrs:{\"label\":\"Hide this program from public view on Upward League Finder (play.upward.org)?\"},model:{value:(_vm.camp.isPrivate),callback:function ($$v) {_vm.$set(_vm.camp, \"isPrivate\", $$v)},expression:\"camp.isPrivate\"}})],1),_c('div',{staticClass:\"pt-3\"},[_c('yes-no-input',{staticClass:\"col-sm-12 pl-0\",attrs:{\"label\":\"Would you like to receive equipping resources on background checks and other safety training?\",\"subTextWithLink\":\"We will send you more information on MinistrySafe and InjureFree, two companies that provide background checks and other risk-mitigating training.\"},model:{value:(_vm.camp.requestRiskMitigationInfo),callback:function ($$v) {_vm.$set(_vm.camp, \"requestRiskMitigationInfo\", $$v)},expression:\"camp.requestRiskMitigationInfo\"}})],1)],1),_c('div',{staticClass:\"col-xl-6 pt-3 border-xl-left\"},[_c('h6',[_vm._v(\"Registration Information\")]),_c('switch-slot',{attrs:{\"mode\":\"radio\",\"label\":\"How will you receive registrations?\",\"options\":[\n { text: 'Online - Recommended', value: ['online'] },\n { text: 'In Person', value: ['paper'] },\n { text: 'Both of these', value: ['paper', 'online'] } ]},model:{value:(_vm.registrationOption.registrationTypes),callback:function ($$v) {_vm.$set(_vm.registrationOption, \"registrationTypes\", $$v)},expression:\"registrationOption.registrationTypes\"}},[_c('div',{attrs:{\"slot\":\"paper\"},slot:\"paper\"}),_c('div',{attrs:{\"slot\":\"online\"},slot:\"online\"},[_c('switch-slot',{attrs:{\"mode\":\"radio\",\"label\":\"Online registration vendor\",\"options\":[\n { text: 'Upward', value: 'upward' },\n { text: 'Other', value: 'other' } ]},model:{value:(_vm.registrationOption.onlineRegistrationType),callback:function ($$v) {_vm.$set(_vm.registrationOption, \"onlineRegistrationType\", $$v)},expression:\"registrationOption.onlineRegistrationType\"}},[_c('div',{attrs:{\"slot\":\"upward\"},slot:\"upward\"}),_c('div',{attrs:{\"slot\":\"other\"},slot:\"other\"},[_c('text-input',{attrs:{\"label\":\"Vendor\"},model:{value:(_vm.camp.otherRegistrationVendorName),callback:function ($$v) {_vm.$set(_vm.camp, \"otherRegistrationVendorName\", $$v)},expression:\"camp.otherRegistrationVendorName\"}}),_c('text-input',{staticClass:\"italics-placeholder\",attrs:{\"label\":\"Vendor Registration URL\",\"placeholder\":\"(e.g. https://www.upward.org)\"},model:{value:(_vm.camp.leagueRegistrationURL),callback:function ($$v) {_vm.$set(_vm.camp, \"leagueRegistrationURL\", $$v)},expression:\"camp.leagueRegistrationURL\"}})],1)])],1)]),_c('hr'),_c('h6',[_vm._v(\"Ask for additional participant or coach info?\")]),_c('additional-participant-information',{attrs:{\"coach-udfs\":_vm.coachUdfs(),\"player-udfs\":_vm.camp.playerUDFs},on:{\"onSave\":_vm.saveUdfs}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Program Information\")])])}]\n\nexport { render, staticRenderFns }","import { Vue, Component } from 'vue-property-decorator'\nimport { cloneDeep } from 'lodash'\nimport * as campsStore from '@/store/camps'\nimport { Getter, Action, Mutation } from 'vuex-class'\nimport { Camp } from '@/GeneratedTypes/Camp'\nimport { PromptToSavePayload } from '@/models/PromptToSavePayload'\nimport * as promptToSaveStore from '@/store/promptToSave'\n\n@Component({\n beforeRouteLeave(route, redirect, next) {\n const self = this as CampSetupMixin\n\n self.onNavigation({\n save: async () => {\n await self.save()\n },\n continue: () => {\n next()\n },\n } as PromptToSavePayload)\n },\n})\nexport default class CampSetupMixin extends Vue {\n public camp = {} as Camp\n public loading = false\n protected initialLoadDone = false\n public nextRoute = ''\n protected beforeSave: null | (() => Promise) = null\n protected afterUpdateExisting: null | (() => void | Promise) = null\n protected afterSaveNew: null | (() => Promise) = null\n\n @Getter(campsStore.getterNames.currentItem, { namespace: campsStore.namespace })\n protected readonly storeCamp!: Camp\n\n @Action(campsStore.actionNames.cache, { namespace: campsStore.namespace })\n private readonly cache!: ({ item }: { item: Camp }) => boolean\n\n @Action(campsStore.actionNames.validate, { namespace: campsStore.namespace })\n private readonly validate!: ({ item, ruleSet }: { item: Camp; ruleSet: string }) => boolean\n\n @Action(campsStore.actionNames.loadFromCache, { namespace: campsStore.namespace })\n private readonly loadFromCache!: () => boolean\n\n @Action(campsStore.actionNames.update, { namespace: campsStore.namespace })\n private readonly update!: ({ item }: { item: Camp }) => boolean\n\n @Mutation(promptToSaveStore.mutationNames.setIsDirty, { namespace: promptToSaveStore.namespace })\n protected readonly setIsDirty!: ({ isDirty }: { isDirty: boolean }) => void\n\n @Action(promptToSaveStore.actionNames.onNavigation, { namespace: promptToSaveStore.namespace })\n private readonly onNavigation!: ({}: PromptToSavePayload) => void\n\n protected get isByAge() {\n return this.camp.ageCutoffDate != null\n }\n\n private get ruleSet() {\n const pathParts = this.$route.path.split('/')\n\n if (!pathParts.length) {\n return ''\n }\n\n const thisPath = pathParts[pathParts.length - 1]\n\n switch (thisPath) {\n case 'information':\n return 'PROGRAMINFO'\n case 'dates':\n return 'KEYDATES'\n case 'leadership':\n return 'LEADERSHIP'\n case 'partnership':\n return 'PARTNERSHIP'\n case 'products':\n return 'PRICING'\n default:\n return ''\n }\n }\n\n protected async saveAndContinue() {\n const result = await this.save()\n if (result != false) this.continue()\n }\n\n mounted() {\n this.$nextTick(() => this.$watch('camp', this.onCampChange, { deep: true }))\n }\n\n private async created() {\n this.camp = cloneDeep(this.storeCamp)\n\n if (!this.camp.typeLeagueID) {\n this.loading = true\n\n try {\n await this.loadFromCache()\n this.camp = cloneDeep(this.storeCamp)\n } catch (err) {\n this.$router.push('/programs/new/')\n } finally {\n this.loading = false\n }\n }\n this.initialLoadDone = true\n }\n\n protected async save() {\n this.loading = true\n\n try {\n if (this.beforeSave) {\n const r = await this.beforeSave()\n if (r === false) return false\n }\n\n if (this.camp.upwardLeagueID) {\n await this.updateExistingCamp()\n\n if (this.afterUpdateExisting) {\n await this.afterUpdateExisting()\n }\n } else {\n await this.saveNewCamp()\n\n if (this.afterSaveNew) {\n await this.afterSaveNew()\n }\n }\n\n this.setIsDirty({ isDirty: false })\n } finally {\n this.loading = false\n }\n }\n\n private continue() {\n if (this.nextRoute) {\n this.$router.push(this.nextRoute)\n }\n }\n\n private async saveNewCamp() {\n if (this.camp.upwardLeagueID) {\n return\n }\n\n try {\n await this.validate({ item: this.camp, ruleSet: this.ruleSet })\n await this.cache({ item: this.camp })\n } catch (err) {\n throw err\n }\n }\n\n private async updateExistingCamp() {\n if (!this.camp.upwardLeagueID) {\n return\n }\n\n try {\n await this.update({ item: this.camp })\n } catch (err) {\n throw err\n }\n }\n\n private onCampChange() {\n this.setIsDirty({ isDirty: true })\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"border rounded p-2 my-3\"},[_c('input-label',{staticClass:\"d-block mb-5\",attrs:{\"label\":\"Sport participant genders allowed to register\",\"required\":\"\"}}),_c('checkbox-input',{staticClass:\"p-0\",attrs:{\"label\":(\"Girls \" + (_vm.showAges ? 'Ages' : ''))},model:{value:(_vm.includeGirls),callback:function ($$v) {_vm.includeGirls=$$v},expression:\"includeGirls\"}}),(_vm.includeGirls)?_c('grade-range-slider',{attrs:{\"showAges\":_vm.showAges},model:{value:(_vm.girlGrades),callback:function ($$v) {_vm.girlGrades=$$v},expression:\"girlGrades\"}}):_vm._e(),_c('checkbox-input',{staticClass:\"p-0 mt-5\",attrs:{\"label\":(\"Boys \" + (_vm.showAges ? 'Ages' : ''))},model:{value:(_vm.includeBoys),callback:function ($$v) {_vm.includeBoys=$$v},expression:\"includeBoys\"}}),(_vm.includeBoys)?_c('grade-range-slider',{attrs:{\"showAges\":_vm.showAges},model:{value:(_vm.boyGrades),callback:function ($$v) {_vm.boyGrades=$$v},expression:\"boyGrades\"}}):_vm._e(),(_vm.hasCheer)?[_c('input-label',{staticClass:\"d-block mt-5 pt-5 border-top\",attrs:{\"label\":\"Cheer participant genders allowed to register\",\"required\":\"\"}}),_c('checkbox-input',{staticClass:\"p-0 mt-5\",attrs:{\"label\":(\"Girls \" + (_vm.showAges ? 'Ages' : ''))},model:{value:(_vm.includeGirlsCheer),callback:function ($$v) {_vm.includeGirlsCheer=$$v},expression:\"includeGirlsCheer\"}}),(_vm.includeGirlsCheer)?_c('grade-range-slider',{attrs:{\"showAges\":_vm.showAges},model:{value:(_vm.cheerGirlGrades),callback:function ($$v) {_vm.cheerGirlGrades=$$v},expression:\"cheerGirlGrades\"}}):_vm._e(),_c('checkbox-input',{staticClass:\"p-0 mt-5\",attrs:{\"label\":(\"Boys \" + (_vm.showAges ? 'Ages' : ''))},model:{value:(_vm.includeBoysCheer),callback:function ($$v) {_vm.includeBoysCheer=$$v},expression:\"includeBoysCheer\"}}),(_vm.includeBoysCheer)?_c('grade-range-slider',{attrs:{\"showAges\":_vm.showAges},model:{value:(_vm.cheerBoyGrades),callback:function ($$v) {_vm.cheerBoyGrades=$$v},expression:\"cheerBoyGrades\"}}):_vm._e()]:_vm._e()],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\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\n\nimport { loadGradeDataIntoProgram, getGradesList, ProgramWithGrades } from '@/services/gradeService'\n\nimport { getDefaultGrades } from '@/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades'\nimport { LeagueAccountProgramGenderGrade } from 'src/GeneratedTypes/LeagueAccountProgramGenderGrade'\nimport { LeagueProgramGenderGrade } from 'src/GeneratedTypes/LeagueProgramGenderGrade'\n\nimport InputLabel from '@/elements/InputLabel.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport GradeRangeSlider from '@/elements/GradeRangeSlider.vue'\n\nexport interface SelectedGradeGender {\n accountGrades: LeagueAccountProgramGenderGrade[] | null\n cheerProgramGrades: LeagueProgramGenderGrade[] | null\n sportProgramGrades: LeagueProgramGenderGrade[] | null\n}\n\nexport function emptySelectedGrades(): SelectedGradeGender {\n return {\n accountGrades: [] as LeagueAccountProgramGenderGrade[],\n cheerProgramGrades: [] as LeagueProgramGenderGrade[],\n sportProgramGrades: [] as LeagueProgramGenderGrade[],\n }\n}\n\nexport default defineComponent({\n name: 'GradeGenderSelector',\n components: {\n InputLabel,\n CheckboxInput,\n GradeRangeSlider,\n },\n props: {\n program: { type: Object as PropType, required: false },\n showAges: { type: Boolean, default: false },\n },\n setup(props, ctx) {\n const league = ref({ id: 0, accounts: null, programs: null })\n const girlGrades = ref([])\n const boyGrades = ref([])\n const cheerBoyGrades = ref([])\n const cheerGirlGrades = ref([])\n const includeGirls = ref(true)\n const includeBoys = ref(true)\n const includeGirlsCheer = ref(true)\n const includeBoysCheer = ref(false)\n\n onMounted(() => {\n if (props.program) {\n league.value = cloneDeep(props.program)\n }\n initValues()\n })\n\n function initValues() {\n initSport()\n initCheer()\n }\n\n function initSport() {\n if (!league.value || !league.value.programs) return\n if (league.value.programs && sportProgramTypeId.value) {\n if (newLeague.value) {\n boyGrades.value = getDefaultGrades(false)\n girlGrades.value = getDefaultGrades(false)\n } else {\n girlGrades.value = cloneDeep(getGradesList(league.value, sportProgramTypeId.value, 'F')).map(\n (x) => x.upwardTypeID!\n )\n boyGrades.value = cloneDeep(getGradesList(league.value, sportProgramTypeId.value, 'M')).map(\n (x) => x.upwardTypeID!\n )\n }\n includeBoys.value = sportProgramTypeId.value === 'SOFTBALL' ? false : boyGrades.value.length > 0\n includeGirls.value = girlGrades.value.length > 0\n }\n }\n\n function initCheer() {\n if (!league.value || !league.value.programs) return\n if (hasCheer.value && cheerProgramTypeId.value) {\n if (newLeague.value) {\n cheerGirlGrades.value = getDefaultGrades(false)\n cheerBoyGrades.value = getDefaultGrades(false)\n } else {\n cheerGirlGrades.value = cloneDeep(getGradesList(league.value, cheerProgramTypeId.value, 'F')).map(\n (x) => x.upwardTypeID!\n )\n cheerBoyGrades.value = cloneDeep(getGradesList(league.value, cheerProgramTypeId.value, 'M')).map(\n (x) => x.upwardTypeID!\n )\n }\n\n includeBoysCheer.value = newLeague.value ? false : cheerBoyGrades.value.length > 0\n includeGirlsCheer.value = cheerGirlGrades.value.length > 0\n }\n }\n\n const newLeague = computed(() => {\n let grades = [] as LeagueAccountProgramGenderGrade[]\n if (league.value.accounts && league.value.accounts[0].grades) {\n grades = league.value.accounts[0].grades\n }\n return league.value.id === 0 && grades?.length === 0\n })\n\n const sportProgramTypeId = computed((): string | null => {\n if (league.value.programs != null && league.value.programs.length > 0) {\n return league.value.programs[0].typeProgramID\n }\n return null\n })\n\n const cheerProgramTypeId = computed((): string | null => {\n if (league.value.programs != null && league.value.programs.length > 1) {\n return league.value.programs[1].typeProgramID\n }\n return null\n })\n\n const hasCheer = computed((): boolean => {\n if (!league.value || !league.value.programs) return false\n return league.value.programs && league.value.programs.length > 1\n })\n\n watch(\n () => props.program,\n () => {\n if (props.program) {\n league.value = cloneDeep(props.program)\n initValues()\n }\n }\n )\n\n watch(\n () => girlGrades.value,\n () => {\n if (!sportProgramTypeId.value) return\n loadGradeDataIntoProgram(league.value, girlGrades.value, sportProgramTypeId.value, 'F')\n }\n )\n\n watch(\n () => cheerGirlGrades.value,\n () => {\n if (!cheerProgramTypeId.value) return\n loadGradeDataIntoProgram(league.value, cheerGirlGrades.value, cheerProgramTypeId.value, 'F')\n }\n )\n\n watch(\n () => boyGrades.value,\n () => {\n if (!sportProgramTypeId.value) return\n loadGradeDataIntoProgram(league.value, boyGrades.value, sportProgramTypeId.value, 'M')\n }\n )\n\n watch(\n () => cheerBoyGrades.value,\n () => {\n if (!cheerProgramTypeId.value) return\n loadGradeDataIntoProgram(league.value, cheerBoyGrades.value, cheerProgramTypeId.value, 'M')\n }\n )\n\n watch(\n () => [\n league.value.accounts,\n league.value.programs,\n includeGirls.value,\n includeBoys.value,\n includeGirlsCheer.value,\n includeBoysCheer.value,\n ],\n () => {\n emitChange()\n },\n { deep: true }\n )\n\n function emitChange() {\n const data = emptySelectedGrades()\n beforeEmit()\n if (league.value.accounts && league.value.accounts.length > 0) {\n data.accountGrades = cloneDeep(league.value.accounts[0].grades)\n }\n if (league.value.programs) {\n if (league.value.programs.length > 0) {\n data.sportProgramGrades = cloneDeep(league.value.programs[0].gradesByGender)\n }\n if (league.value.programs.length > 1) {\n data.cheerProgramGrades = cloneDeep(league.value.programs[1].gradesByGender)\n }\n ctx.emit('changed', data)\n }\n }\n\n function beforeEmit() {\n // if a gender is excluded, clear grades\n if (!includeGirls.value && sportProgramTypeId.value) {\n girlGrades.value = []\n loadGradeDataIntoProgram(league.value, girlGrades.value, sportProgramTypeId.value, 'F')\n }\n if (!includeBoys.value && sportProgramTypeId.value) {\n boyGrades.value = []\n loadGradeDataIntoProgram(league.value, boyGrades.value, sportProgramTypeId.value, 'M')\n }\n if (!includeBoysCheer.value) cheerBoyGrades.value = []\n if (!includeGirlsCheer.value) cheerGirlGrades.value = []\n\n //If a gender was excluded, then added back, it's necessary\n //to add the grades back\n\n if (includeGirls.value && !girlGrades.value?.length && sportProgramTypeId.value) {\n loadGradeDataIntoProgram(league.value, getDefaultGrades(false), sportProgramTypeId.value, 'F')\n }\n\n if (includeBoys.value && !boyGrades.value?.length && sportProgramTypeId.value) {\n loadGradeDataIntoProgram(league.value, getDefaultGrades(false), sportProgramTypeId.value, 'M')\n }\n\n if (includeGirlsCheer.value && !cheerGirlGrades.value?.length && cheerProgramTypeId.value) {\n loadGradeDataIntoProgram(league.value, getDefaultGrades(false), cheerProgramTypeId.value, 'F')\n }\n\n if (includeBoysCheer.value && !cheerBoyGrades.value?.length && cheerProgramTypeId.value) {\n loadGradeDataIntoProgram(league.value, getDefaultGrades(false), cheerProgramTypeId.value, 'M')\n }\n }\n\n return {\n includeGirls,\n girlGrades,\n includeBoys,\n boyGrades,\n hasCheer,\n includeGirlsCheer,\n cheerGirlGrades,\n includeBoysCheer,\n cheerBoyGrades,\n }\n },\n})\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!./GradeGenderSelector.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!./GradeGenderSelector.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GradeGenderSelector.vue?vue&type=template&id=59f54900&\"\nimport script from \"./GradeGenderSelector.vue?vue&type=script&lang=ts&\"\nexport * from \"./GradeGenderSelector.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('div',[_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row px-2\"},[_c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"py-2\"},[_vm._v(\" The fields below allow you to ask questions seen during online participant registration by parents to gather more information from participants and coaches. Examples of questions are “What school does your participant attend” or for a coach, “What is your favorite snack.” \")])]),_c('div',{staticClass:\"col-md-6 py-2\"},[_c('h5',[_vm._v(\"Participants\")]),_vm._l((_vm.internalPlayerUdfs),function(udf,index){return _c('div',{key:(\"div-\" + index + \"-\" + (udf.udfid)),staticClass:\"pb-5\"},[_c('text-input',{key:(index + \"-\" + (udf.udfid)),attrs:{\"label\":'Field ' + (index + 1),\"maxlength\":64},model:{value:(udf.label),callback:function ($$v) {_vm.$set(udf, \"label\", $$v)},expression:\"udf.label\"}}),_c('yes-no-input',{key:(index + \"-\" + (udf.udfid) + \"-\" + (udf.isRequired)),staticClass:\"input-group-text\",attrs:{\"label\":' Required?'},model:{value:(udf.isRequired),callback:function ($$v) {_vm.$set(udf, \"isRequired\", $$v)},expression:\"udf.isRequired\"}})],1)})],2),_c('div',{staticClass:\"col-md-6 py-2 border-md-left\"},[_c('h5',[_vm._v(\"Coaches\")]),_vm._l((_vm.internalCoachUdfs),function(udf,index){return _c('div',{key:(\"div-\" + index + \"-\" + (udf.udfid)),staticClass:\"pb-5\"},[_c('text-input',{key:(index + \"-\" + (udf.udfid)),attrs:{\"label\":'Field ' + (index + 1),\"maxlength\":64},model:{value:(udf.label),callback:function ($$v) {_vm.$set(udf, \"label\", $$v)},expression:\"udf.label\"}}),_c('yes-no-input',{key:(index + \"-\" + (udf.udfid) + \"-\" + (udf.isRequired)),staticClass:\"input-group-text\",attrs:{\"label\":' Required?'},model:{value:(udf.isRequired),callback:function ($$v) {_vm.$set(udf, \"isRequired\", $$v)},expression:\"udf.isRequired\"}})],1)})],2)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.done}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Save\")])])],2),_c('button',{staticClass:\"btn btn-link\",on:{\"click\":_vm.toggleModal}},[_vm._v(\"Add / Edit Additional Information\")])],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\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport { LeaguePlayerUDFDefinition } from '@/GeneratedTypes/LeaguePlayerUDFDefinition'\nimport { LeagueVolunteerRoleUDFDefinition } from '@/GeneratedTypes/LeagueVolunteerRoleUDFDefinition'\nimport YesNoInput from '@/elements/YesNoInput.vue'\n\ninterface GenericUdf {\n udfid: number\n label: string\n sortOrder: number\n isPrivate: boolean\n isRequired: boolean\n}\n\nexport default defineComponent({\n name: 'AdditionalParticipantInformation',\n components: {\n Modal,\n TextInput,\n YesNoInput,\n },\n props: {\n coachUdfs: { type: Array as PropType, required: true },\n playerUdfs: { type: Array as PropType, required: true },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(false)\n const modalTitle = ref('Additional Participant Information')\n const wasCancelled = ref(false)\n\n const internalPlayerUdfs = ref([])\n const internalCoachUdfs = ref([])\n\n watch(\n () => modalIsVisible.value,\n () => {\n if (!modalIsVisible.value && !wasCancelled.value) {\n setInternalUdfArrays()\n }\n wasCancelled.value = false\n }\n )\n\n function done() {\n ctx.emit(\n 'onSave',\n getRetunArray(props.playerUdfs, internalPlayerUdfs.value, createPlayerUdf),\n getRetunArray(props.coachUdfs, internalCoachUdfs.value, createRoleUdf)\n )\n toggleModal()\n }\n\n function cancel() {\n wasCancelled.value = true\n setInternalUdfArrays()\n toggleModal()\n }\n\n function toggleModal() {\n modalIsVisible.value = !modalIsVisible.value\n }\n\n watch(\n () => props.playerUdfs,\n () => {\n internalPlayerUdfs.value = ensureArrayHasElementsCount(props.playerUdfs, createPlayerUdf, 3)\n },\n { immediate: true }\n )\n\n watch(\n () => props.coachUdfs,\n () => {\n internalCoachUdfs.value = ensureArrayHasElementsCount(props.coachUdfs, createRoleUdf, 3)\n },\n { immediate: true }\n )\n\n function getRetunArray(\n originalArray: T[] | null,\n internalArray: T[],\n createElement: (\n udfId: number,\n label: string,\n sortOrder: number,\n isPrivate: boolean,\n isRequired: boolean\n ) => T\n ): T[] {\n const resultArray: T[] = []\n\n for (const updateUdf of internalArray) {\n const originalUdfResult =\n originalArray && updateUdf.udfid > 0 //#4936 if this is a new UDF then don't find match in old array\n ? originalArray.filter((item) => item.udfid === updateUdf.udfid)\n : null\n let originalUdf: T\n\n if (!originalUdfResult || originalUdfResult.length === 0) {\n originalUdf = createElement(\n updateUdf.udfid,\n updateUdf.label,\n updateUdf.sortOrder,\n updateUdf.isPrivate,\n updateUdf.isRequired\n )\n } else {\n originalUdf = originalUdfResult[0]\n originalUdf.isPrivate = updateUdf.isPrivate\n originalUdf.label = updateUdf.label\n originalUdf.sortOrder = updateUdf.sortOrder\n originalUdf.isRequired = updateUdf.isRequired\n }\n\n if (originalUdf.label) {\n resultArray.push(originalUdf)\n }\n }\n\n return resultArray\n }\n\n function ensureArrayHasElementsCount(\n srcArray: T[] | null,\n createElement: (\n udfId: number,\n label: string,\n sortOrder: number,\n isPrivate: boolean,\n isRequired: boolean\n ) => T,\n elementCount: number\n ): T[] {\n const destArray: T[] = []\n\n if (srcArray && srcArray.length > 0) {\n for (const item of srcArray) {\n destArray.push(\n createElement(item.udfid, item.label, item.sortOrder, item.isPrivate, item.isRequired)\n )\n }\n }\n\n if (destArray.length < elementCount) {\n const numberOfItemsToAdd = elementCount - destArray.length\n\n for (let i = 0; i < numberOfItemsToAdd; i++) {\n destArray.push(createElement((destArray.length + 1) * -1, '', destArray.length + 1, false, false))\n }\n }\n return destArray\n }\n\n function createRoleUdf(\n udfId: number,\n label: string,\n sortOrder: number,\n isPrivate: boolean,\n isRequired: boolean\n ): LeaguePlayerUDFDefinition {\n return {\n udfid: udfId,\n label,\n sortOrder,\n isPrivate,\n isRequired,\n } as LeagueVolunteerRoleUDFDefinition\n }\n\n function createPlayerUdf(\n udfId: number,\n label: string,\n sortOrder: number,\n isPrivate: boolean,\n isRequired: boolean\n ): LeaguePlayerUDFDefinition {\n return {\n udfid: udfId,\n label,\n sortOrder,\n isPrivate,\n isRequired,\n } as LeagueVolunteerRoleUDFDefinition\n }\n\n function setInternalUdfArrays() {\n internalCoachUdfs.value = ensureArrayHasElementsCount(props.coachUdfs, createRoleUdf, 3)\n internalPlayerUdfs.value = ensureArrayHasElementsCount(props.playerUdfs, createPlayerUdf, 3)\n }\n\n return {\n modalIsVisible,\n modalTitle,\n internalPlayerUdfs,\n internalCoachUdfs,\n cancel,\n done,\n toggleModal,\n }\n },\n})\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!./AdditionalParticipantInformation.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!./AdditionalParticipantInformation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdditionalParticipantInformation.vue?vue&type=template&id=66a7baaa&\"\nimport script from \"./AdditionalParticipantInformation.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdditionalParticipantInformation.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('select-input',{attrs:{\"label\":\"Select your Timezone\",\"required\":\"\",\"blank-item-text\":\"Select a Timezone\",\"show-blank-item\":true,\"enabled\":!_vm.isLoading,\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"items-list\":_vm.items},model:{value:(_vm.selectedItem),callback:function ($$v) {_vm.selectedItem=$$v},expression:\"selectedItem\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'TimezoneSelect',\n components: {\n SelectInput,\n },\n props: {\n value: { type: (null as unknown) as PropType, required: true },\n },\n setup(props, ctx) {\n const isLoading = ref(false)\n const selectedItem = ref(props.value)\n const items = computed(() => store.getters.timezoneTypes.allItems)\n\n async function loadItems() {\n if (isLoading.value) {\n return\n }\n\n isLoading.value = true\n await store.dispatch.timezoneTypes.fetchAll(false)\n isLoading.value = false\n }\n\n onMounted(async () => {\n await loadItems()\n })\n\n watch(\n () => selectedItem.value,\n () => {\n if (props.value !== selectedItem.value) {\n ctx.emit('input', selectedItem.value)\n ctx.emit('change', selectedItem.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedItem.value = props.value\n }\n )\n\n return {\n isLoading,\n selectedItem,\n items,\n }\n },\n})\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!./TimezoneSelect.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!./TimezoneSelect.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TimezoneSelect.vue?vue&type=template&id=39f49cea&\"\nimport script from \"./TimezoneSelect.vue?vue&type=script&lang=ts&\"\nexport * from \"./TimezoneSelect.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 { LeagueVolunteerRoleUDFDefinition } from '@/GeneratedTypes/LeagueVolunteerRoleUDFDefinition'\nimport { LeaguePlayerUDFDefinition } from '@/GeneratedTypes/LeaguePlayerUDFDefinition'\nimport { TypeLeagueVolunteerRole } from '@/GeneratedTypes/TypeLeagueVolunteerRole'\n\ninterface ProgramWithUdfs {\n roles: TypeLeagueVolunteerRole[] | null\n playerUDFs: LeaguePlayerUDFDefinition[] | null\n}\n\nexport function getCoachUdfs(program: ProgramWithUdfs | null): LeagueVolunteerRoleUDFDefinition[] {\n if (!program || !program.roles) {\n return []\n }\n\n const coachRoleResults = program.roles.filter((role) => role.id === 3)\n if (coachRoleResults && coachRoleResults.length > 0) {\n return coachRoleResults[0].udfDefinitions ?? []\n }\n return []\n}\n\nexport function updateUdfs(\n program: ProgramWithUdfs | null,\n playerUdfs: LeaguePlayerUDFDefinition[],\n coachUdfs: LeagueVolunteerRoleUDFDefinition[]\n) {\n if (!program) {\n return\n }\n\n program.playerUDFs = playerUdfs\n\n if (!program.roles) {\n return\n }\n\n const coachRoleResults = program.roles.filter((role) => role.id === 3)\n if (coachRoleResults && coachRoleResults.length > 0) {\n coachRoleResults[0].udfDefinitions = coachUdfs\n }\n}\n","export interface RegistrationType {\n registrationTypes: string[]\n onlineRegistrationType: string\n}\n\ninterface ProgramWithRegistrationInfo {\n isMailIn: boolean\n isOPRLeague: boolean\n otherRegistrationVendorName: string | null\n leagueRegistrationURL: string | null\n}\n\nexport function getProgramRegistrationOption(program: ProgramWithRegistrationInfo): RegistrationType | null {\n const registrationOption = { registrationTypes: [], onlineRegistrationType: '' } as RegistrationType\n\n if (program.isMailIn === undefined) {\n return null\n }\n\n if (program.isMailIn) {\n registrationOption.registrationTypes.push('paper')\n }\n if (program.isOPRLeague) {\n registrationOption.registrationTypes.push('online')\n registrationOption.onlineRegistrationType = 'upward'\n }\n if (program.otherRegistrationVendorName) {\n registrationOption.registrationTypes.push('online')\n registrationOption.onlineRegistrationType = 'other'\n }\n if (registrationOption.registrationTypes.length === 0) {\n registrationOption.registrationTypes.push('online')\n registrationOption.onlineRegistrationType = 'upward'\n }\n return registrationOption\n}\n\nexport function setProgramRegistrationOption(\n program: ProgramWithRegistrationInfo,\n registrationOption: RegistrationType\n) {\n if (program.isMailIn === undefined) {\n return\n }\n\n program.isMailIn = registrationOption.registrationTypes.indexOf('paper') >= 0\n program.isOPRLeague =\n registrationOption.registrationTypes.indexOf('online') >= 0 &&\n registrationOption.onlineRegistrationType !== 'other'\n const isMailInOnly: boolean = program.isMailIn && registrationOption.registrationTypes.length === 1\n\n if (isMailInOnly || program.isOPRLeague) {\n program.otherRegistrationVendorName = ''\n program.leagueRegistrationURL = ''\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport CampSetupMixin from '@/views/Camps/CampSetupMixin'\n\nimport Alert from '@/components/Alert.vue'\nimport FullBody from '@/components/FullBody.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\nimport Loading from '@/elements/Loading.vue'\nimport Modal from '@/components/Modal.vue'\nimport GradeGenderSelector, { SelectedGradeGender } from '@/components/GradeGenderSelector.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\n\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { Getter } from 'vuex-class'\nimport AdditionalParticipantInformation from '@/components/AdditionalParticipantInformation.vue'\nimport TimezoneSelect from '@/components/TimezoneSelect.vue'\nimport { UpwardTimezoneTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardTimezoneTypeID'\nimport * as timezoneStore from '@/store/timezoneTypes'\nimport { LeagueVolunteerRoleUDFDefinition } from '@/GeneratedTypes/LeagueVolunteerRoleUDFDefinition'\nimport { LeaguePlayerUDFDefinition } from '@/GeneratedTypes/LeaguePlayerUDFDefinition'\nimport { getCoachUdfs, updateUdfs } from '@/services/udfService'\nimport {\n getProgramRegistrationOption,\n setProgramRegistrationOption,\n RegistrationType,\n} from '@/services/registrationInfoService'\nimport { getDateWithTime } from '@/lib/support/utilities/time/time.ts'\nimport dayjs from 'dayjs'\n\nlet useTestData: any = null\nif (process.env.VUE_APP_USE_TEST_DATA == 'YES') {\n import('@/views/Camps/testData/information').then((x) => (useTestData = x))\n}\n\ninterface RunCampByTypeOption {\n description: string\n value: string\n}\n\n@Component({\n components: {\n FullBody,\n TextInput,\n DateInput,\n SelectInput,\n Alert,\n TimezoneSelect,\n Loading,\n MemoInput,\n GradeGenderSelector,\n YesNoInput,\n SwitchSlot,\n AdditionalParticipantInformation,\n Modal,\n SaveContinueButton,\n HtmlEditor,\n },\n})\nexport default class Information extends Mixins(CampSetupMixin) {\n @Getter(timezoneStore.getterNames.allItems, { namespace: timezoneStore.namespace })\n private timezones!: UpwardTimezoneTypeID[]\n\n private gradeGenders = {} as SelectedGradeGender\n private helpIsVisible = false\n\n private registrationOption: RegistrationType = { registrationTypes: [], onlineRegistrationType: '' }\n\n private campRunByType = 'GRADE'\n private runCampByTypeList = [\n { description: 'By Grades', value: 'GRADE' },\n { description: 'By Age', value: 'AGE' },\n ] as RunCampByTypeOption[]\n\n private maxDate = ''\n private minDate = ''\n private lastCutoffDate = null as Date | null\n\n mounted() {\n this.loading = true\n this.beforeSave = this.handleBeforeSave\n if (this.camp.upwardLeagueID) {\n this.nextRoute = `/programs/camp/${this.camp.upwardLeagueID}/setup/dates`\n } else {\n this.nextRoute = '/programs/camp/setup/dates'\n }\n if (useTestData) {\n useTestData.setInformationForNewCamp(this.camp)\n }\n\n this.setRegistrationOption()\n\n this.campRunByType = this.camp.ageCutoffDate ? 'AGE' : 'GRADE'\n this.maxDate = dayjs(this.camp.campStartDate ?? '')\n .add(1, 'year')\n .format('MM/DD/YYYY')\n this.minDate = dayjs(this.camp.campStartDate ?? '')\n .subtract(1, 'year')\n .format('MM/DD/YYYY')\n this.lastCutoffDate = this.camp.ageCutoffDate\n\n this.loading = false\n }\n\n // eslint-disable-next-line require-await\n private async handleBeforeSave() {\n if (this.camp.upwardLeagueID && this.camp.isOPRLeague && !this.storeCamp.isOPRLeague) {\n this.camp.registrationInfo = {\n allowCreditCard: true,\n allowPayLater: true,\n // Always set the league.registrationInfo.allowSizingEntry to true per 2635\n allowSizingEntry: true,\n allowGeneralNotes: false,\n allowDonations: false,\n allowWaitlist: true,\n onlineRegistrationBeginDate: getDateWithTime(this.camp.registrationBeginDate, 0, 0, 0),\n onlineRegistrationEndDate: getDateWithTime(\n this.camp.registrationEndDate ?? this.camp.campStartDate,\n 23,\n 59,\n 59\n ),\n donationExplanation: '',\n registrationStartMessage: '',\n confirmationMessage: '',\n twoChildDiscountAmount: 0,\n threeChildDiscountAmount: 0,\n fourOrMoreChildDiscountAmount: 0,\n allowDiscountCodes: false,\n emailLDOnDiscountCodeUse: false,\n discountCodes: [],\n bypassLinks: [],\n contactLine1: '',\n contactLine2: '',\n contactLine3: '',\n contactLine4: '',\n contactLine5: '',\n }\n }\n }\n\n private setRegistrationOption() {\n const registrationOption = getProgramRegistrationOption(this.camp)\n if (registrationOption !== null) {\n this.registrationOption = registrationOption\n }\n }\n\n @Watch('caampRunByType')\n private onRunByTypeChange() {\n if (this.campRunByType == 'GRADE') {\n this.lastCutoffDate = this.camp.ageCutoffDate\n this.camp.ageCutoffDate = null\n } else {\n this.camp.ageCutoffDate = this.lastCutoffDate //put it back to what it was in case they accidentally changed it\n }\n }\n\n @Watch('registrationOption', { immediate: true, deep: true })\n private updateRegistrationOptions() {\n if (this.loading) {\n return\n }\n setProgramRegistrationOption(this.camp, this.registrationOption)\n }\n\n gradeGenderChange(gradeGenders: SelectedGradeGender) {\n this.gradeGenders = gradeGenders\n if (this.camp.accounts) {\n this.camp.accounts[0].grades = gradeGenders.accountGrades\n }\n if (this.camp.programs) {\n if (this.camp.programs.length > 0) {\n this.camp.programs[0].gradesByGender = gradeGenders.sportProgramGrades\n }\n if (this.camp.programs.length > 1) {\n this.camp.programs[1].gradesByGender = gradeGenders.cheerProgramGrades\n }\n }\n }\n\n private coachUdfs(): LeagueVolunteerRoleUDFDefinition[] {\n return getCoachUdfs(this.camp)\n }\n\n private saveUdfs(playerUdfs: LeaguePlayerUDFDefinition[], coachUdfs: LeagueVolunteerRoleUDFDefinition[]) {\n updateUdfs(this.camp, playerUdfs, coachUdfs)\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { EvaluationFormOptions } from '@/components/EvaluationForm/data'\n\nexport enum EFTypes {\n 'LEAGUE' = 'league',\n 'CAMP' = 'camp',\n}\n\nexport default defineComponent({\n name: 'Setup',\n components: {\n HtmlEditor,\n InputLabel,\n },\n props: {\n type: { type: String as PropType, required: false, default: EFTypes.LEAGUE },\n value: { type: String, required: true },\n },\n setup(props, ctx) {\n const evaluationDescription = ref(props.value ?? '')\n const options = ref(EvaluationFormOptions.get(props.type))\n\n watch(\n () => evaluationDescription.value,\n () => {\n ctx.emit('input', evaluationDescription.value)\n ctx.emit('change', evaluationDescription.value)\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (props.value) {\n if (evaluationDescription.value !== props.value) {\n evaluationDescription.value = props.value\n }\n } else {\n evaluationDescription.value = ''\n }\n }\n )\n\n return {\n options,\n evaluationDescription,\n }\n },\n})\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!./Information.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!./Information.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Information.vue?vue&type=template&id=15a4a16e&\"\nimport script from \"./Information.vue?vue&type=script&lang=ts&\"\nexport * from \"./Information.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 (!_vm.loading)?_c('alert-cloak',{staticClass:\"px-0 py-3\",attrs:{\"type\":_vm.alertTypes,\"uncloak\":_vm.uncloak},scopedSlots:_vm._u([{key:\"head\",fn:function(){return [_c('h4',{staticClass:\"px-4 py-1\"},[(_vm.id)?[_vm._v(\" \"+_vm._s(_vm.currentCamp.leagueName)+\" \")]:[_vm._v(\" New Camp \")]],2)]},proxy:true}],null,false,1601571021)},[_c('horizontal-tabs',{staticClass:\"underline-split bg-light-1\",attrs:{\"tabs\":_vm.tabs}}),_c('full-body',[_c('router-view')],1)],1):_c('loading',{staticClass:\"m-4\"})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, onUnmounted } from '@vue/composition-api'\nimport FullBody from '@/components/FullBody.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\nimport AlertCloak, { AlertCloakTypes } from '@/components/AlertCloak.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport store from '@/store'\n\nimport { Partner } from '@/models/Partner'\nimport { useFeatureFlags } from '@/services/useFeatureFlags'\n\nexport default defineComponent({\n name: 'CampIndex',\n components: {\n FullBody,\n HorizontalTabs,\n Loading,\n AlertCloak,\n },\n setup(props, ctx) {\n const currentCamp = computed(() => store.getters.camps.currentItem)\n const alertTypes = ref([AlertCloakTypes.PARTNER])\n const uncloak = ref(false)\n\n const loading = ref(false)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n //async created hack from https://stackoverflow.com/questions/64117116/how-can-i-use-async-await-in-the-vue-3-0-setup-function-using-typescript\n const run = (asyncFn: () => Promise) => asyncFn()\n\n //private async created() {\n // Reset ministryAgreementSigned so that every time a camp\n // is loaded, it's campStartDate is checked.\n run(async () => {\n store.commit.authorization.resetMinistryAgreementIsSigned()\n\n if (ctx.root.$route.params.id) {\n loading.value = true\n await store.dispatch.camps.retrieveAndSetAsCurrent({ id: ctx.root.$route.params.id })\n await store.dispatch.partners.retrieveAndSetPartners({ id: ctx.root.$route.params.id })\n loading.value = false\n } else {\n // new camp, skip alerts\n uncloak.value = true\n }\n })\n //end created\n\n onUnmounted(() => {\n store.commit.partners.setPartners({ item: [] as Partner[] })\n store.commit.productFlow.clear()\n store.commit.leagueAbstraction.clear()\n })\n\n const tabs = computed(() => {\n const features = useFeatureFlags().features.value\n return [\n { text: 'Setup', to: `/programs/camp/${routeId.value}setup`, disabled: !id.value },\n { text: 'Participants', to: `/programs/camp/${routeId.value}participants`, disabled: !id.value },\n { text: 'Volunteers', to: `/programs/camp/${routeId.value}volunteers`, disabled: !id.value },\n {\n text: 'Divisions/Teams',\n to: `/programs/camp/${routeId.value}divisions_and_teams`,\n disabled: !id.value,\n },\n { text: 'Scheduling', disabled: !id.value },\n { text: 'Communications', to: `/programs/camp/${routeId.value}communications`, disabled: !id.value },\n features.LEAGUE_ORDERS\n ? { text: 'Ordering', to: `/programs/camp/${routeId.value}ordering`, disabled: !id.value }\n : {},\n { text: 'Reports', to: `/programs/camp/${routeId.value}reports`, disabled: !id.value },\n { text: 'Resources', to: `/programs/camp/${routeId.value}resources`, disabled: !id.value },\n ]\n })\n\n return {\n loading,\n alertTypes,\n id,\n uncloak,\n currentCamp,\n tabs,\n }\n },\n})\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!./CampIndex.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!./CampIndex.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CampIndex.vue?vue&type=template&id=596c262a&\"\nimport script from \"./CampIndex.vue?vue&type=script&lang=ts&\"\nexport * from \"./CampIndex.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-4 pt-3\"},[_c('date-input',{attrs:{\"label\":\"Registration Begins\",\"required\":\"\"},model:{value:(_vm.camp.registrationBeginDate),callback:function ($$v) {_vm.$set(_vm.camp, \"registrationBeginDate\", $$v)},expression:\"camp.registrationBeginDate\"}}),_c('date-input',{attrs:{\"label\":\"Last Day For Early Registration\"},model:{value:(_vm.camp.lateDate),callback:function ($$v) {_vm.$set(_vm.camp, \"lateDate\", $$v)},expression:\"camp.lateDate\"}}),_c('date-input',{attrs:{\"label\":\"Registration Deadline\"},model:{value:(_vm.camp.registrationEndDate),callback:function ($$v) {_vm.$set(_vm.camp, \"registrationEndDate\", $$v)},expression:\"camp.registrationEndDate\"}}),_c('date-input',{attrs:{\"label\":\"Camp Starts\",\"required\":\"\"},model:{value:(_vm.camp.campStartDate),callback:function ($$v) {_vm.$set(_vm.camp, \"campStartDate\", $$v)},expression:\"camp.campStartDate\"}}),_c('date-input',{attrs:{\"label\":\"Camp Ends\",\"required\":\"\"},model:{value:(_vm.camp.campEndDate),callback:function ($$v) {_vm.$set(_vm.camp, \"campEndDate\", $$v)},expression:\"camp.campEndDate\"}}),_c('hr',{staticClass:\"d-xl-none\"})],1),_c('div',{staticClass:\"col-xl-8 pt-3 border-xl-left\"},[_c('h6',[_vm._v(\"Camp Schedule\")]),_c('div',[_c('hr'),_c('evaluation-form',{attrs:{\"type\":_vm.efTypes.CAMP},model:{value:(_vm.camp.evalDescription),callback:function ($$v) {_vm.$set(_vm.camp, \"evalDescription\", $$v)},expression:\"camp.evalDescription\"}})],1)])]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Key Dates\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('input-label',{attrs:{\"label\":_vm.options.title}}),_c('div',{staticClass:\"small text-muted text-uppercase\",domProps:{\"innerHTML\":_vm._s(_vm.options.description)}})],1),_c('div',{staticClass:\"col-sm-12\"},[_c('HtmlEditor',{attrs:{\"label\":_vm.options.title,\"max-length\":2048},model:{value:(_vm.evaluationDescription),callback:function ($$v) {_vm.evaluationDescription=$$v},expression:\"evaluationDescription\"}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export interface EvaluationFormOption {\n id: string\n title: string\n description: string // accepts html\n}\n\nconst league: EvaluationFormOption = {\n id: 'league',\n title: 'Evaluation Information For Parents',\n description: `

\n The information you enter below will serve as the default text for your promo cards to advertise\n your league. If you enable online registration, this text will also appear in the registration\n confirmation emails.\n

\n

\n Information you enter should include the next steps for your league, such as evaluation dates,\n times, locations, and grade levels evaluated.\n

`,\n}\n\nconst camp: EvaluationFormOption = {\n id: 'camp',\n title: 'Camp Schedule Information For Parents',\n description: `

\n The information you enter below will serve as the default text for your promo cards to advertise\n your camp. If you enable online registration, this text will also appear at the top of the registration \n form and on the confirmation email after registration.\n

`,\n}\n\nexport const EvaluationFormOptions = new Map([\n ['league', league],\n ['camp', camp],\n])\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!./EvaluationForm.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!./EvaluationForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EvaluationForm.vue?vue&type=template&id=9f44910e&\"\nimport script from \"./EvaluationForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./EvaluationForm.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport CampSetupMixin from '@/views/Camps/CampSetupMixin'\n\nimport Loading from '@/elements/Loading.vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport { getDateWithTime } from '@/lib/support/utilities/time/time'\nimport EvaluationForm, { EFTypes } from '@/components/EvaluationForm/EvaluationForm.vue'\n\nimport { Component, Mixins } from 'vue-property-decorator'\n\nlet useTestData: any = null\nif (process.env.VUE_APP_USE_TEST_DATA == 'YES') {\n import('@/views/Camps/testData/keydates').then((x) => (useTestData = x))\n}\n\n@Component({\n components: {\n DateInput,\n Loading,\n EvaluationForm,\n SaveContinueButton,\n },\n})\nexport default class KeyDates extends Mixins(CampSetupMixin) {\n efTypes = EFTypes\n\n mounted() {\n if (this.camp.upwardLeagueID) {\n this.nextRoute = `/programs/camp/${this.camp.upwardLeagueID}/setup/leadership`\n } else {\n this.nextRoute = '/programs/camp/setup/leadership'\n }\n\n if (useTestData) {\n useTestData.setKeyDatesForNewCamp(this.camp)\n }\n\n this.beforeSave = this.setDefaults\n }\n\n // eslint-disable-next-line require-await\n private async setDefaults() {\n if (\n this.camp.registrationBeginDate &&\n this.camp.registrationInfo &&\n !this.camp.registrationInfo.onlineRegistrationBeginDate\n ) {\n this.camp.registrationInfo.onlineRegistrationBeginDate = getDateWithTime(\n this.camp.registrationBeginDate,\n 0,\n 0,\n 0\n )\n }\n\n // Changes to early registration end date needs to update registration fee to pass validation.\n if (this.camp.upwardLeagueID && this.camp.lateDate && this.camp.programs) {\n if (this.camp.programs.length > 0 && !this.camp.programs[0].earlyRegistrationFee) {\n this.camp.programs[0].earlyRegistrationFee = this.camp.programs[0].registrationFee\n }\n\n if (this.camp.programs.length > 1 && !this.camp.programs[1].earlyRegistrationFee) {\n this.camp.programs[1].earlyRegistrationFee = this.camp.programs[1].registrationFee\n }\n }\n\n if (this.camp.upwardLeagueID && !this.camp.lateDate && this.camp.programs) {\n if (this.camp.programs.length > 0) {\n this.camp.programs[0].earlyRegistrationFee = null\n }\n\n if (this.camp.programs.length > 1) {\n this.camp.programs[1].earlyRegistrationFee = null\n }\n }\n }\n}\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!./KeyDates.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!./KeyDates.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./KeyDates.vue?vue&type=template&id=62499c84&\"\nimport script from \"./KeyDates.vue?vue&type=script&lang=ts&\"\nexport * from \"./KeyDates.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12 pt-3\"},[_c('ContactPickerAndEditor',{attrs:{\"accountNumber\":_vm.accountNumbers[0],\"isLoading\":_vm.loading,\"canChangeName\":_vm.canChangeName,\"isClean\":_vm.isClean},on:{\"submit\":_vm.onSubmit},model:{value:(_vm.sportContact),callback:function ($$v) {_vm.sportContact=$$v},expression:\"sportContact\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm\"},[_c('h5',[_vm._v(\"Director\")]),_c('p',{staticClass:\"m-0\"},[_vm._v(\"Select the Director for this program from the list or create a new contact.\")])])}]\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\nimport CampSetupMixin from '@/views/Camps/CampSetupMixin'\n\nimport { Getter } from 'vuex-class'\nimport { getterNames, namespace } from '@/store/authorization'\n\nimport { ContactToContactInfo, ContactInfoToContact, GetEmptyContactInfo } from '@/services/contactService'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\n\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport ContactPickerAndEditor from '@/components/ContactPickerAndEditor.vue'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\nimport { cloneDeep } from 'lodash'\n\n@Component({\n components: {\n ContactPickerAndEditor,\n SaveContinueButton,\n },\n})\nexport default class Leadership extends Mixins(CampSetupMixin) {\n private sportContact: ContactInfo = GetEmptyContactInfo()\n\n @Getter(getterNames.accountNumbers, { namespace })\n private accountNumbers!: string[] | null\n\n mounted() {\n this.afterUpdateExisting = this.afterUpdateExistingMethod\n\n if (this.camp.upwardLeagueID) {\n this.nextRoute = `/programs/camp/${this.camp.upwardLeagueID}/setup/partnership`\n } else {\n this.nextRoute = '/programs/camp/setup/partnership'\n }\n }\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n if (this.camp) {\n this.sportContact = ContactToContactInfo(this.camp!.partnerContact!, this.camp!.leagueDirectorPartnerID)\n }\n }\n\n private get canChangeName() {\n return !(this.camp && this.camp!.leagueDirectorPartnerID)\n }\n\n private async onSubmit() {\n this.camp.partnerContact = this.sportContact ? ContactInfoToContact(this.sportContact) : getEmptyContact()\n this.camp.leagueDirectorPartnerID = this.sportContact ? this.sportContact.id : 0\n await this.save()\n }\n\n private get isExisting() {\n return !!this.camp.upwardLeagueID\n }\n\n private get isClean() {\n return this.storeCamp.leagueDirectorPartnerID === this.camp.leagueDirectorPartnerID\n }\n\n private afterUpdateExistingMethod() {\n this.camp = { ...cloneDeep(this.storeCamp) }\n }\n}\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!./Leadership.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!./Leadership.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Leadership.vue?vue&type=template&id=c48b8f4e&\"\nimport script from \"./Leadership.vue?vue&type=script&lang=ts&\"\nexport * from \"./Leadership.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12 pt-3\"},[_c('select-input',{attrs:{\"label\":\"Is your church in a partnership of churches working together this season, or is it one church by itself?\",\"items-list\":[\n { text: 'One church (this is the default option)', value: 'solo' },\n { text: 'Two or more churches partnering together for one camp', value: 'one' } ],\"required\":true,\"value-property-name\":\"value\",\"text-property-name\":\"text\"},model:{value:(_vm.partnership),callback:function ($$v) {_vm.partnership=$$v},expression:\"partnership\"}}),(_vm.partnership === 'solo')?_c('p',{staticClass:\"col-sm-12\"},[_vm._v(\" There are no other churches we are partnering with currently. Advertising resources will only reference one church. \")]):_vm._e(),(_vm.partnership === 'one')?_c('p',{staticClass:\"col-sm-12\"},[_vm._v(\" Only the \\\"host church,\\\" which is the point of contact for the partnership, can order advertising resources or starter items for the partnership and will receive the invoice for these items. Camp orders may be placed by any church within the partnership and shipped to an address you specify. \"),_c('br'),_c('br'),_vm._v(\"Continue with creating this program ONLY if you represent the host church. \")]):_vm._e()],1),_c('hr'),(_vm.partnership === 'one')?[_c('div',{staticClass:\"col-xl-12 pt-3\"},[_c('integer-picker',{staticClass:\"col-sm-6 col-xl-3\",attrs:{\"required\":\"\",\"label\":\"Number of churches in camp\",\"min\":1,\"max\":30},model:{value:(_vm.churchCount),callback:function ($$v) {_vm.churchCount=$$v},expression:\"churchCount\"}})],1),_vm._l((_vm.camp.accounts),function(account,index){return _c('div',{key:account.accountNumber,staticClass:\"col-xl-6 pt-3\"},[_c('partner-form',{attrs:{\"type-program-id\":_vm.typeProgramId,\"label\":'Church Partner ' + (index + 1),\"isByAge\":_vm.isByAge},model:{value:(_vm.camp.accounts[index]),callback:function ($$v) {_vm.$set(_vm.camp.accounts, index, $$v)},expression:\"camp.accounts[index]\"}})],1)})]:_vm._e()],2),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Partnership\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('select-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"prepend-icon\":_vm.prependIcon,\"append-icon\":_vm.appendIcon,\"items-list\":_vm.integerList,\"show-blank-item\":false,\"value-and-text-the-same\":true},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\n\nexport default defineComponent({\n name: 'IntegerPicker',\n components: {\n SelectInput,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n min: { type: Number, required: true },\n max: { type: Number, required: true },\n value: { type: (null as unknown) as PropType, required: true },\n },\n setup(props, ctx) {\n const internalValue = ref('')\n const integerList = ref([])\n\n //created()\n for (let i = props.min; i <= props.max; i++) {\n integerList.value.push(i)\n }\n internalValue.value = convertToString(props.value)\n //end created\n\n function convertToString(value: number | null) {\n return value === null || isNaN(value) ? '' : `${value}`\n }\n\n function convertToNumber(value: string): number | null {\n const valueAsNumber = Math.round(Number(value))\n\n if (isNaN(valueAsNumber)) {\n return null\n }\n\n return valueAsNumber\n }\n\n function handleChange() {\n const valueAsNumber = convertToNumber(internalValue.value)\n ctx.emit('input', valueAsNumber)\n ctx.emit('change', valueAsNumber)\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = convertToString(props.value)\n }\n )\n\n return {\n internalValue,\n integerList,\n handleChange,\n }\n },\n})\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!./IntegerPicker.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!./IntegerPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./IntegerPicker.vue?vue&type=template&id=6aa29842&\"\nimport script from \"./IntegerPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./IntegerPicker.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('div',{staticClass:\"mb-3\"},[_c('div',{staticClass:\"card shadow\"},[(_vm.internalAccount && _vm.partnersInRadius)?_c('div',{staticClass:\"card-body\"},[_c('p',[_c('strong',[_vm._v(_vm._s(_vm.label))])]),_c('combo-box-input',{attrs:{\"placeholder\":\"Select a Partner\",\"label\":\"Partner Name\",\"items-list\":_vm.partnersInRadius(_vm.masterAccountNumber),\"enabled\":!_vm.internalAccount.leagueOwner,\"text-property-name\":\"name\",\"value-property-name\":\"accountNumber\"},model:{value:(_vm.accountNumber),callback:function ($$v) {_vm.accountNumber=$$v},expression:\"accountNumber\"}}),(_vm.leagueId === 0)?_c('checkbox-input',{staticClass:\"mb-3\",attrs:{\"label\":\"Is Host Church\",\"enabled\":false},model:{value:(_vm.internalAccount.leagueOwner),callback:function ($$v) {_vm.$set(_vm.internalAccount, \"leagueOwner\", $$v)},expression:\"internalAccount.leagueOwner\"}}):_vm._e(),(_vm.leagueId !== 0 && _vm.internalAccount.leagueOwner)?_c('div',[_c('label',[_vm._v(\"* HOST CHURCH FOR THIS PARTNERSHIP\")])]):_vm._e(),_c('grade-range-slider',{attrs:{\"label\":((_vm.isByAge ? 'Ages' : 'Grades') + \" Participating - Boys\"),\"showAges\":_vm.isByAge},model:{value:(_vm.boyGrades),callback:function ($$v) {_vm.boyGrades=$$v},expression:\"boyGrades\"}}),_c('grade-range-slider',{attrs:{\"label\":((_vm.isByAge ? 'Ages' : 'Grades') + \" Participating - Girls\"),\"showAges\":_vm.isByAge},model:{value:(_vm.girlGrades),callback:function ($$v) {_vm.girlGrades=$$v},expression:\"girlGrades\"}}),(_vm.cheerTypeProgramId)?_c('grade-range-slider',{attrs:{\"label\":((_vm.isByAge ? 'Ages' : 'Grades') + \" Participating - Cheerleading\"),\"showAges\":_vm.isByAge},model:{value:(_vm.cheerGrades),callback:function ($$v) {_vm.cheerGrades=$$v},expression:\"cheerGrades\"}}):_vm._e()],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\nimport ComboBoxInput from '@/elements/ComboBoxInput.vue'\nimport GradeRangeSlider from '@/elements/GradeRangeSlider.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\n\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\nimport { Getter, Action } from 'vuex-class'\n\nimport * as authorizationStore from '@/store/authorization'\nimport { LeagueAccount } from '@/GeneratedTypes/LeagueAccount.ts'\nimport { isEqual, cloneDeep } from 'lodash'\nimport { loadGradeDataIntoAccount, getGradesListFromAccount } from '@/services/gradeService'\nimport { AccountInfo } from '@/GeneratedTypes/ListInfo/AccountInfo'\n\nimport * as accountsStore from '@/store/partnerNearByAccounts'\n\n@Component({\n components: {\n TextInput,\n ComboBoxInput,\n GradeRangeSlider,\n CheckboxInput,\n },\n})\nexport default class PartnerForm extends Vue {\n @Prop({ type: String, required: true })\n private readonly label!: string\n\n @Prop({ type: String, required: true })\n private readonly typeProgramId!: string\n\n @Prop({ type: String, required: false, default: '' })\n private readonly cheerTypeProgramId!: string\n\n @Prop({ type: Number, required: false, default: '' })\n private readonly leagueId!: number\n\n @Prop({ type: Object, required: true })\n private readonly value!: LeagueAccount\n\n @Prop({ type: Boolean, required: false, default: false })\n private readonly isByAge!: boolean\n\n @Getter(authorizationStore.getterNames.firstAccountNumber, { namespace: authorizationStore.namespace })\n private masterAccountNumber!: string\n\n @Getter(accountsStore.getterNames.getAccountsInRadius, {\n namespace: accountsStore.namespace,\n })\n private partnersInRadius!: (accountNumber: string) => AccountInfo[]\n\n @Action(accountsStore.actionNames.fetchAccountsInRadius, {\n namespace: accountsStore.namespace,\n })\n private fetchAccountsInRadius!: ({}: { accountNumber: string }) => Promise\n\n private internalAccount: LeagueAccount | null = null\n\n private girlGrades: string[] = []\n private boyGrades: string[] = []\n private cheerGrades: string[] = []\n\n private isHostChurch = false\n private partner = ''\n\n private async mounted() {\n this.setInternalAccount(this.value)\n await this.fetchAccountsInRadius({ accountNumber: this.masterAccountNumber })\n }\n\n @Watch('value')\n private onAccountUpdate() {\n this.setInternalAccount(this.value)\n }\n\n @Watch('internalAccount', { deep: true })\n private onInternalAccountUpdate() {\n if (!isEqual(this.value, this.internalAccount)) {\n this.$emit('input', this.internalAccount)\n }\n }\n\n private setInternalAccount(value: LeagueAccount | null) {\n if (value) {\n if (!isEqual(value, this.internalAccount)) {\n this.internalAccount = cloneDeep(value)\n\n this.setGradesValue()\n }\n }\n }\n\n private setGradesValue() {\n if (this.typeProgramId && this.internalAccount) {\n this.boyGrades = cloneDeep(getGradesListFromAccount(this.internalAccount, this.typeProgramId, 'M')).map(\n (x) => x.upwardTypeID!\n )\n this.girlGrades = cloneDeep(\n getGradesListFromAccount(this.internalAccount, this.typeProgramId, 'F')\n ).map((x) => x.upwardTypeID!)\n\n if (this.cheerTypeProgramId) {\n this.cheerGrades = cloneDeep(\n getGradesListFromAccount(this.internalAccount, this.cheerTypeProgramId, 'F').map(\n (x) => x.upwardTypeID!\n )\n )\n }\n this.$emit('input', this.internalAccount)\n }\n }\n\n @Watch('boyGrades')\n private onBoyGradeChange() {\n if (this.typeProgramId && this.internalAccount) {\n loadGradeDataIntoAccount(this.internalAccount, this.boyGrades, this.typeProgramId, 'M')\n }\n }\n\n @Watch('girlGrades')\n private onGirlGradeChange() {\n if (this.typeProgramId && this.internalAccount) {\n loadGradeDataIntoAccount(this.internalAccount, this.girlGrades, this.typeProgramId, 'F')\n }\n }\n\n @Watch('cheerGrades')\n private onCheerGradeChange() {\n if (this.cheerTypeProgramId && this.internalAccount) {\n loadGradeDataIntoAccount(this.internalAccount, this.cheerGrades, this.cheerTypeProgramId, 'F')\n }\n }\n\n private get accountNumber(): string {\n if (this.internalAccount && this.internalAccount.accountNumber.charAt(0) === '-') {\n return ''\n }\n\n if (this.internalAccount && this.internalAccount.accountNumber) {\n return this.internalAccount.accountNumber\n }\n\n return ''\n }\n\n private set accountNumber(value: string) {\n if (this.internalAccount) {\n this.internalAccount.accountNumber = value\n this.$emit('input', this.internalAccount)\n }\n }\n}\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!./PartnerForm.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!./PartnerForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PartnerForm.vue?vue&type=template&id=1e358aac&\"\nimport script from \"./PartnerForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./PartnerForm.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Action } from 'vuex-class'\nimport CampSetupMixin from '@/views/Camps/CampSetupMixin'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport IntegerPicker from '@/elements/IntegerPicker.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\n\nimport Loading from '@/elements/Loading.vue'\nimport PartnerForm from '@/components/PartnerForm.vue'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { LeagueAccount } from '@/GeneratedTypes/LeagueAccount'\n\nimport * as partnesrStore from '@/store/partners'\nimport { Partner } from '@/models/Partner'\n\n@Component({\n components: {\n PartnerForm,\n Loading,\n SelectInput,\n IntegerPicker,\n SaveContinueButton,\n },\n})\nexport default class Partnership extends Mixins(CampSetupMixin) {\n @Action(partnesrStore.actionNames.retrieveAndSetPartners, { namespace: partnesrStore.namespace })\n private readonly retrieveAndSetPartners!: ({ id }: { id: string }) => Partner[]\n\n private partnership = ''\n private churchCount = 1\n private partnerDirty = false\n\n mounted() {\n if (this.camp.upwardLeagueID) {\n this.nextRoute = `/programs/camp/${this.camp.upwardLeagueID}/setup/products`\n } else {\n this.nextRoute = '/programs/camp/setup/products'\n }\n\n this.churchCount = this.camp.accounts?.length ?? 1\n this.partnership = this.churchCount > 1 ? 'one' : 'solo'\n this.$nextTick(() => this.$watch('camp.accounts', this.partnerChanged, { deep: true }))\n this.afterUpdateExisting = this.updatePartner\n this.afterSaveNew = this.updatePartner\n }\n private async updatePartner() {\n if (this.partnerDirty) {\n await this.retrieveAndSetPartners({ id: this.camp.upwardLeagueID ?? '' })\n }\n }\n\n private partnerChanged() {\n this.partnerDirty = true\n }\n\n @Watch('churchCount')\n private onChurchCountChanged() {\n const accountDelta = this.churchCount - (this.camp.accounts?.length ?? 1)\n\n if (this.camp.accounts) {\n for (let i = 0; i < accountDelta; i++) {\n this.camp.accounts.push({\n accountNumber: (-this.camp.accounts.length).toString(),\n leagueOwner: false,\n expectLeagueOrder: false,\n coachShirtRequired: false,\n grades: this.camp.accounts[0].grades,\n } as LeagueAccount)\n }\n }\n\n if (this.camp.accounts && accountDelta < 0) {\n this.camp.accounts = this.camp.accounts?.splice(0, this.churchCount)\n }\n }\n\n private get typeProgramId(): string {\n if (this.camp.programs && this.camp.programs.length > 0) {\n return this.camp.programs[0].typeProgramID\n }\n return ''\n }\n}\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!./Partnership.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!./Partnership.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Partnership.vue?vue&type=template&id=ae247026&\"\nimport script from \"./Partnership.vue?vue&type=script&lang=ts&\"\nexport * from \"./Partnership.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('div',[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Product & Pricing \"),(_vm.isLoading)?_c('Loading',{attrs:{\"is-small\":\"\"}}):_vm._e()],1)]),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[(!_vm.isLoading && !_vm.showCurrencyWarning)?_c('SaveContinueButton',{attrs:{\"program\":_vm.camp,\"showSave\":!_vm.camp.isOPRLeague,\"loading\":_vm.loading,\"disable\":_vm.showCurrencyWarning},on:{\"click\":_vm.saveAndContinue}}):_vm._e()],1)]),(_vm.showCurrencyWarning)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('CurrencyWarning',{staticClass:\"mt-5\"})],1)]):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}],staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('SetupStepperCamp',{scopedSlots:_vm._u([{key:\"belowRunningTotal\",fn:function(){return [_c('h5',{staticClass:\"text-center py-3\"},[_vm._v(\"Registration Fees\")]),(_vm.hasEarlyRegistration)?_c('CurrencyInput',{staticClass:\"mb-1\",attrs:{\"label\":\"Early Registration\",\"required\":\"\"},model:{value:(_vm.earlyRegistrationCost),callback:function ($$v) {_vm.earlyRegistrationCost=$$v},expression:\"earlyRegistrationCost\"}}):_vm._e(),(_vm.hasEarlyRegistration && _vm.earlyRegistrationCost == 0)?_c('checkbox-input',{staticClass:\"pl-2\",attrs:{\"label\":\"Confirm this should be free\"},model:{value:(_vm.freeEarlyRegistrationFeeConfirmed),callback:function ($$v) {_vm.freeEarlyRegistrationFeeConfirmed=$$v},expression:\"freeEarlyRegistrationFeeConfirmed\"}}):_vm._e(),_c('CurrencyInput',{staticClass:\"mt-3 mb-1\",attrs:{\"label\":\"Registration\",\"required\":\"\"},model:{value:(_vm.registrationCost),callback:function ($$v) {_vm.registrationCost=$$v},expression:\"registrationCost\"}}),(_vm.registrationCost == 0)?_c('checkbox-input',{staticClass:\"pl-2\",attrs:{\"label\":\"Confirm this should be free\"},model:{value:(_vm.freeRegistrationFeeConfirmed),callback:function ($$v) {_vm.freeRegistrationFeeConfirmed=$$v},expression:\"freeRegistrationFeeConfirmed\"}}):_vm._e()]},proxy:true}])})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[(!_vm.isLoading && !_vm.showCurrencyWarning)?_c('SaveContinueButton',{attrs:{\"program\":_vm.camp,\"showSave\":!_vm.camp.isOPRLeague,\"loading\":_vm.loading,\"disable\":_vm.showCurrencyWarning},on:{\"click\":_vm.saveAndContinue}}):_vm._e()],1)]),_c('ProductWarningModal',{attrs:{\"warnings\":_vm.warnings},on:{\"save\":_vm.ignoreWarnings},model:{value:(_vm.showWarnings),callback:function ($$v) {_vm.showWarnings=$$v},expression:\"showWarnings\"}}),_c('SetupCompleteConfirmation',{attrs:{\"upwardLeagueId\":_vm.newId,\"hasOnlineRegistration\":false,\"is-camp\":\"\"},on:{\"change\":_vm.onModalStateChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}})],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:\"container-fluid\"},[(_vm.loading)?_c('Loading',{attrs:{\"is-small\":\"\"}}):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showCurrencyWarning),expression:\"!showCurrencyWarning\"}],staticClass:\"row pl-3\"},[_c('div',{staticClass:\"col-12 col-md-8 col-xl-9 bg-white\"},[_c('Stepper',{attrs:{\"vertical\":\"\"},model:{value:(_vm.currentStep),callback:function ($$v) {_vm.currentStep=$$v},expression:\"currentStep\"}},_vm._l((_vm.stepComponents),function(c){return _c(c.name,{key:c.index,tag:\"component\",attrs:{\"step\":c.index,\"stepTitle\":c.stepTitle,\"nextOfferingIndex\":c.nextOfferingIndex,\"is-cheer\":c.isCheer}})}),1)],1),_c('div',{staticClass:\"col-12 col-md-4 col-xl-3 bg-light-1\"},[_c('div',{staticClass:\"sticky-below-app-bar\"},[_c('RunningTotal',{attrs:{\"league-programs\":_vm.listOfPrograms,\"current-product-config-program\":_vm.currentUpwardProgrmType,\"is-estimate\":false,\"viewed-steps\":_vm.viewedSteps}}),_vm._t(\"belowRunningTotal\")],2)])])],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('Step',{attrs:{\"step\":_vm.step,\"title\":\"Upward Access\",\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[_c('div',[_c('h5',{staticClass:\"text-center\"},[_vm._v(\"Upward Access Includes\")]),_c('div',{staticClass:\"fee-grid\"},_vm._l((_vm.items),function(i,idx){return _c('div',{key:idx,staticClass:\"text-center\"},[_c('div',[_c('i',{class:i.iconClass})]),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(i.title))]),_c('div',{staticClass:\"text-muted small\"},[_vm._v(_vm._s(i.text))])])}),0)])])}\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\nimport { defineComponent } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\nexport default defineComponent({\n name: 'AccessFeeStep',\n props: { step: { type: Number, required: true } },\n components: { Step },\n setup() {\n const logic = productFlowLogic()\n const items = [\n {\n title: 'Free Shipping',\n iconClass: 'fas fa-truck fa-lg',\n text: ' Shipping included for all orders',\n },\n {\n title: 'Ministry Resouces',\n iconClass: 'fas fa-bible fa-lg',\n text: `Access to Camp Devotions, A Camp Parent Take Home Devotion, and a 30 Days of Prayer List`,\n },\n {\n title: 'Advertising Resources',\n iconClass: 'fas fa-bullhorn fa-lg',\n text: 'Advertising Posters, E-Flyers, and Social Media Memes',\n },\n {\n title: 'Camp Management Resources',\n iconClass: 'fas fa-headset fa-lg',\n text: 'Director Manual, Coach Playbook, Forms, Applications, and more!',\n },\n {\n title: 'Volunteer Role Resources',\n iconClass: 'fas fa-book fa-lg',\n text: 'Coach playbooks and Camp Devotions',\n },\n {\n title: 'Support Center Assistance',\n iconClass: 'fas fa-headset fa-lg',\n text: 'A support center that you can call to receive assistance as the need arises',\n },\n {\n title: 'Consultation Services',\n iconClass: 'fas fa-hands-helping fa-lg',\n text:\n 'One-on-one consultation services to help you with any challenges you may have and strategically plan for your upcoming programs',\n },\n ]\n return { items, ...logic }\n },\n})\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!./AccessFeeStep.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!./AccessFeeStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AccessFeeStep.vue?vue&type=template&id=86a026a0&scoped=true&\"\nimport script from \"./AccessFeeStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./AccessFeeStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AccessFeeStep.vue?vue&type=style&index=0&id=86a026a0&lang=scss&scoped=true&\"\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 \"86a026a0\",\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('Step',{attrs:{\"step\":_vm.step,\"title\":\"Upward Systems\",\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[_c('div',[_c('h5',{staticClass:\"text-center mb-0\"},[_vm._v(\"Upward Systems\")]),_c('div',{staticClass:\"muted font-italic text-center text-muted mb-3\"},[_vm._v(\"is easy to use and includes:\")]),_c('div',{staticClass:\"fee-grid\"},_vm._l((_vm.items),function(i,idx){return _c('div',{key:idx,staticClass:\"text-center\"},[_c('div',[_c('i',{class:i.iconClass})]),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(i.title))]),_c('div',{staticClass:\"text-muted small\"},[_vm._v(_vm._s(i.text))])])}),0)])])}\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\nimport { defineComponent } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'UpwardSystemStep',\n props: {\n step: { type: Number, required: true },\n },\n components: { Step },\n setup() {\n const logic = productFlowLogic()\n const items = [\n {\n iconClass: 'fas fa-bullhorn fa-lg',\n text: 'Advertise your local camp on the Upward League Finder page.',\n },\n {\n iconClass: 'fas fa-money-bill-wave fa-lg',\n text: 'A quick and easy player registration tool where Upward covers all credit card fees.',\n },\n {\n iconClass: 'fas fa-mobile-alt fa-lg',\n text:\n 'A mobile-friendly web app that includes coach training resources, energy games, skill stations, devotions, scrimmages format, and other Upward specific functionality.',\n },\n {\n iconClass: 'fas fa-mobile-alt fa-lg',\n text: `A mobile-friendly web app that includes training and resources for other key roles including the camp director, ${store.getters.leagueAbstraction.refLabel.toLowerCase()}s and the prayer commissioner.`,\n },\n {\n iconClass: 'fas fa-sms fa-lg',\n text:\n 'A communication system that will allow for text or email exchanges with parents on their teams.',\n },\n {\n iconClass: 'far fa-list-alt fa-lg',\n text: 'Tools to setup your camp and order/exchange products from Upward.',\n },\n {\n iconClass: 'fas fa-chalkboard-teacher fa-lg',\n text: 'A wealth of camp management resources to guide, train, and equip leaders of any level.',\n },\n ]\n return { items, ...logic }\n },\n})\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!./UpwardSystemStep.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!./UpwardSystemStep.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpwardSystemStep.vue?vue&type=template&id=0efebe8a&scoped=true&\"\nimport script from \"./UpwardSystemStep.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpwardSystemStep.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UpwardSystemStep.vue?vue&type=style&index=0&id=0efebe8a&lang=scss&scoped=true&\"\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 \"0efebe8a\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, onMounted, nextTick } from '@vue/composition-api'\n\nimport Stepper from '@/elements/Stepper.vue'\nimport InfoStep from '@/components/ProductFlow/ProductSetupStepper/InfoStep.vue'\nimport AccessFeeStep from '@/components/ProductFlow/ProductSetupStepper/CampOnlySteps/AccessFeeStep.vue'\nimport UpwardSystemStep from '@/components/ProductFlow/ProductSetupStepper/CampOnlySteps/UpwardSystemStep.vue'\nimport StarterItemsStep from '@/components/ProductFlow/ProductSetupStepper/StarterItemsStep.vue'\nimport ParticipantKitStep from '@/components/ProductFlow/ProductSetupStepper/ParticipantKitStep.vue'\nimport RunningTotal from '@/components/ProductFlow/ProductSetupStepper/RunningTotal.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport { setupStepperLogic } from '@/components/ProductFlow/ProductSetupStepper/SetupStepperLogic'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'CampSetupStepper',\n props: {},\n components: {\n Stepper,\n InfoStep,\n AccessFeeStep,\n UpwardSystemStep,\n StarterItemsStep,\n ParticipantKitStep,\n RunningTotal,\n Loading,\n },\n setup() {\n const stepperLogic = setupStepperLogic()\n onMounted(async () => {\n stepperLogic.currentStep.value = 0\n await stepperLogic.initialize()\n store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //get these cached up\n nextTick(() => (stepperLogic.currentStep.value = 1)) //trigger expansion of first step\n })\n const listOfPrograms = computed(() => store.getters.leagueAbstraction.leagueUpwardProgramTypeID)\n\n const loading = computed(() => {\n if (store.getters.productFlow.isNewProdConfig) {\n return stepperLogic.stepComponents.value.length == 0\n } else {\n return (\n !store.getters.productOfferings.initialProductFlowLoadingComplete &&\n stepperLogic.stepComponents.value.length == 0\n )\n }\n })\n\n return {\n listOfPrograms,\n loading,\n ...stepperLogic,\n }\n },\n})\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!./SetupStepperCamp.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!./SetupStepperCamp.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SetupStepperCamp.vue?vue&type=template&id=5614689e&\"\nimport script from \"./SetupStepperCamp.vue?vue&type=script&lang=ts&\"\nexport * from \"./SetupStepperCamp.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('modal',{staticClass:\"product-warning-modal\",attrs:{\"is-small\":\"\",\"title\":\"Warning\"},on:{\"close\":_vm.close},scopedSlots:_vm._u([{key:\"footer\",fn:function(){return [_c('button',{staticClass:\"btn btn-outline-dark\",on:{\"click\":_vm.close}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.save}},[_vm._v(\"It's ok. Save my changes\")])]},proxy:true}]),model:{value:(_vm.internalVisible),callback:function ($$v) {_vm.internalVisible=$$v},expression:\"internalVisible\"}},[_c('p',{staticClass:\"small font-weight-bold\"},[_vm._v(\"Changes in your player kit have generated warning(s):\")]),_vm._l((_vm.warnings),function(w,i){return _c('div',{key:i,staticClass:\"pb-5\"},[_c('h6',[_vm._v(_vm._s(i + 1)+\") \"+_vm._s(w.message))]),_c('div',{staticClass:\"small text-muted\"},[_vm._v(_vm._s(w.messageID))])])})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport { ValidationError } from 'src/models/UpwardVerificationDetails'\n\nexport default defineComponent({\n components: { Modal },\n props: {\n warnings: { type: Array as PropType, required: false },\n value: { type: Boolean, required: false, default: false },\n },\n setup(props, { emit }) {\n const internalVisible = ref(false)\n\n function save() {\n emit('save')\n close()\n }\n\n function close() {\n internalVisible.value = false\n }\n\n watch(\n () => props.value,\n () => (internalVisible.value = props.value),\n { immediate: true }\n )\n\n watch(\n () => internalVisible.value,\n () => emit('input', internalVisible.value)\n )\n\n return {\n internalVisible,\n close,\n save,\n }\n },\n})\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!./ProductWarningModal.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!./ProductWarningModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductWarningModal.vue?vue&type=template&id=cee560b4&scoped=true&\"\nimport script from \"./ProductWarningModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductWarningModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProductWarningModal.vue?vue&type=style&index=0&id=cee560b4&lang=scss&scoped=true&\"\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 \"cee560b4\",\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('modal',{attrs:{\"title\":\"You’re not done yet!\"},on:{\"change\":_vm.onModalChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('p',[_vm._v(\" Even though you have created your \"+_vm._s((\"\" + (_vm.isCamp ? 'camp' : 'league')))+\", you may still have a few items left to do. \")]),_c('p',[_vm._v(\" We have emailed the information below to the primary contact for your \"+_vm._s((\"\" + (_vm.isCamp ? 'camp' : 'league')))+\". \")]),(_vm.isCamp)?_c('p',[_c('strong',[_vm._v(\"Note: An order for player camp kits will be required when the camp is run.\")])]):_vm._e(),_c('div',{staticClass:\"card card-body bg-light-1 shadow-sm\"},[(!_vm.isUpwardSelect)?_c('p',[_vm._v(\" Your \"+_vm._s((\"\" + (_vm.isCamp ? 'camp' : 'league')))+\" is now active. Families will find your \"+_vm._s((\"\" + (_vm.isCamp ? 'camp' : 'league')))+\" when searching by zip code in \"),_c('a',{attrs:{\"target\":\"_blank\",\"href\":\"https://play.upward.org\"}},[_vm._v(\"Find a Place to Play\")]),_vm._v(\" on Upward.org. \")]):_vm._e(),(_vm.hasOnlineRegistration)?_c('p',[_vm._v(\" Here are critical links to use as you get started. Copy the exact links below to embed as a hyperlink or share so that participants and volunteers can register. \")]):_vm._e(),(_vm.hasOnlineRegistration)?_c('ul',[_c('li',[_vm._v(\" VOLUNTEER REGISTRATION: \"),_c('a',{attrs:{\"href\":'https://registration.upward.org/' + _vm.upwardLeagueId + '/volunteer'}},[_vm._v(\" https://registration.upward.org/\"+_vm._s(_vm.upwardLeagueId)+\"/volunteer \")])]),_c('li',[_vm._v(\" PARTICIPANTS REGISTRATION: \"),_c('a',{attrs:{\"href\":'https://registration.upward.org/' + _vm.upwardLeagueId}},[_vm._v(\" https://registration.upward.org/\"+_vm._s(_vm.upwardLeagueId)+\" \")])])]):_vm._e()]),_c('CampLeagueStarterBox',{attrs:{\"is-camp\":_vm.isCamp,\"upward-league-id\":_vm.upwardLeagueId}}),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.hideModal}},[_vm._v(\"OK\")])])],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',{staticClass:\"top-spacer\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-12 pt-3\"},[_c('div',{staticClass:\"card shadow min-h-100\"},[_c('div',{staticClass:\"card-body pb-2\"},[_vm._m(0),(_vm.isUpwardSelect)?[_c('p',[_vm._v(\" Begin advertising your sport in the community using the E-Flyer and social media memes found in the \"),_c('a',{attrs:{\"href\":'../' + _vm.upwardLeagueId + '/resources/director'}},[_vm._v(\"Resources\")]),_vm._v(\" area. \")]),_c('p',[_vm._v(\" Order practice and game-day merchandise by visiting the \"),_c('a',{attrs:{\"href\":'../' + _vm.upwardLeagueId + '/ordering/products/merchandiseorder/select'}},[_vm._v(\"Merchandise\")]),_vm._v(\" ordering page. \")])]:[(_vm.isCamp)?[_c('p',[_vm._v(\" Visit the \"),_c('a',{attrs:{\"href\":'../' + _vm.upwardLeagueId + '/resources/director'}},[_vm._v(\"Resources\")]),_vm._v(\" area to find: \")]),_vm._m(1),_c('p',[_vm._v(\" You can also place an order for other practice and game-day merchandise ahead of your season visiting the \"),_c('a',{attrs:{\"href\":'../' + _vm.upwardLeagueId + '/ordering/products/merchandiseorder/select'}},[_vm._v(\"\\\"Merchandise\\\" tab\")]),_vm._v(\" in the \\\"Ordering\\\" section of MyUpward. \")])]:_vm._e(),(!_vm.isCamp)?[_c('p',[_vm._v(\"In the previous steps, we helped you estimate your per player cost.\")]),_c('p',[_vm._v(\"Next, you will place a startup order which includes:\")]),_c('ul',[_c('li',[_vm._v(\"Promo Cards and posters to promote your league\")]),_c('li',[_vm._v(\"Coach Playbooks - which now contain material you will need for training coaches\")]),_c('li',[_vm._v(\" Director’s Manuals, prayer reminder items, and \"+_vm._s(_vm.refLabel.toLowerCase())+\" handbooks \")])]),_c('p',[_vm._v(\" You can also place an order for other practice and game-day merchandise ahead of your season visiting the \"),_c('a',{attrs:{\"href\":'../' + _vm.upwardLeagueId + '/ordering/products/merchandiseorder/select'}},[_vm._v(\"\\\"Merchandise\\\" tab\")]),_vm._v(\" in the \\\"Ordering\\\" section of MyUpward. \")]),_c('a',{staticClass:\"btn btn-primary col-12 rounded-0\",attrs:{\"href\":(\"../\" + _vm.upwardLeagueId + \"/ordering/products/startuporder/select\")}},[_vm._v(\"Go To Orders\")])]:_vm._e()]],2)])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h4',{staticClass:\"mb-4\"},[_c('span',{staticClass:\"text-uppercase\"},[_vm._v(\"Next Steps\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',[_c('li',[_vm._v(\"Advertising resources\")]),_c('li',[_vm._v(\"Camp Director Manual\")]),_c('li',[_vm._v(\"Camp Coach Playbook\")]),_c('li',[_vm._v(\"Other valuable items\")])])}]\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\nimport { defineComponent } from '@vue/composition-api'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'CampLeagueStarterBox',\n props: {\n upwardLeagueId: { type: String, required: true, default: '' },\n isCamp: { type: Boolean, required: true, default: false },\n },\n setup() {\n const refLabel = store.getters.leagueAbstraction.refLabel\n\n return { refLabel, isUpwardSelect: store.getters.leagueAbstraction.isUpwardSelect }\n },\n})\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!./CampLeagueStarterBox.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!./CampLeagueStarterBox.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CampLeagueStarterBox.vue?vue&type=template&id=4ae43986&scoped=true&\"\nimport script from \"./CampLeagueStarterBox.vue?vue&type=script&lang=ts&\"\nexport * from \"./CampLeagueStarterBox.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CampLeagueStarterBox.vue?vue&type=style&index=0&id=4ae43986&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 \"4ae43986\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport CampLeagueStarterBox from '@/components/CampLeagueStarterBox.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'SetupCompleteConfirmation',\n components: {\n CampLeagueStarterBox,\n Modal,\n },\n props: {\n value: { type: Boolean, required: true },\n upwardLeagueId: { type: String, required: false, default: '' },\n isCamp: { type: Boolean, required: false, default: false },\n hasOnlineRegistration: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const isUpwardSelect = computed(() => store.getters.leagues.isUpwardSelect)\n const modalIsVisible = ref(props.value)\n\n function hideModal() {\n modalIsVisible.value = false\n onModalChange()\n }\n\n watch(\n () => props.value,\n () => {\n modalIsVisible.value = props.value\n }\n )\n\n function onModalChange() {\n ctx.emit('input', modalIsVisible.value)\n ctx.emit('change', modalIsVisible.value)\n }\n\n return {\n modalIsVisible,\n onModalChange,\n isUpwardSelect,\n hideModal,\n }\n },\n})\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!./SetupCompleteConfirmation.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!./SetupCompleteConfirmation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SetupCompleteConfirmation.vue?vue&type=template&id=7cc01374&\"\nimport script from \"./SetupCompleteConfirmation.vue?vue&type=script&lang=ts&\"\nexport * from \"./SetupCompleteConfirmation.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport CampSetupMixin from '@/views/Camps/CampSetupMixin'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { Action, Getter } from 'vuex-class'\nimport { cloneDeep } from 'lodash'\n\nimport Loading from '@/elements/Loading.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport CurrencyWarning from '@/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue'\nimport SetupStepperCamp from '@/components/ProductFlow/ProductSetupStepper/SetupStepperCamp.vue'\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport ProductWarningModal from '@/views/Leagues/ProductWarningModal.vue'\nimport SetupCompleteConfirmation from '@/components/SetupCompleteConfirmation.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\n\nimport { ValidationError } from 'src/models/UpwardVerificationDetails'\n\nimport * as campsStore from '@/store/camps'\nimport * as leagueAbstraction from '@/store/leagueAbstraction'\nimport * as promptToSave from '@/store/promptToSave'\n\nimport { Camp } from '@/GeneratedTypes/Camp'\n\nimport store from '@/store'\n\nimport campsClient from '@/clients/campsClient'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\n@Component({\n components: {\n SetupCompleteConfirmation,\n Loading,\n SaveContinueButton,\n CurrencyWarning,\n SetupStepperCamp,\n CurrencyInput,\n ProductWarningModal,\n CheckboxInput,\n },\n})\nexport default class Products extends Mixins(CampSetupMixin) {\n @Action(campsStore.actionNames.create, { namespace: campsStore.namespace })\n private readonly create!: ({ item }: { item: Camp }) => Promise\n\n @Getter(leagueAbstraction.getterNames.currentItem, {\n namespace: leagueAbstraction.leagueAbstractionNamespace,\n })\n private readonly currentAbstractionItem!: boolean\n\n @Getter(promptToSave.getterNames.isDirty, { namespace: promptToSave.namespace })\n private readonly isDirty!: boolean\n\n private modalIsVisible = false\n private userWantsToIgnoreWarnings = false\n private warnings: ValidationError[] | null = null\n private showWarnings = false\n\n private earlyRegistrationCost: number | null = null\n private registrationCost: number | null = null\n private freeEarlyRegistrationFeeConfirmed = false\n private freeRegistrationFeeConfirmed = false\n\n logic = productFlowLogic()\n\n async mounted() {\n if (this.camp.isOPRLeague) {\n if (this.camp.upwardLeagueID) {\n this.nextRoute = `/programs/camp/${this.camp.upwardLeagueID}/setup/registration`\n } else {\n this.nextRoute = '/programs/camp/setup/registration'\n }\n } else {\n if (this.camp.upwardLeagueID) {\n this.nextRoute = '/'\n }\n this.afterSaveNew = this.afterSaveNewMethod\n }\n this.beforeSave = this.productBeforeSave\n this.getRegistrationCost()\n await store.dispatch.programTypes.fetchAll({ force: true })\n }\n\n get initialProductFlowLoadingComplete() {\n return store.getters.productOfferings.initialProductFlowLoadingComplete\n }\n\n get showCurrencyWarning() {\n if (store.getters.partners.currencyWarningNeeded && this.logic.isNewProdConfig.value) {\n return !store.getters.partners.hasAcceptedCurrencyWarning\n }\n return false\n }\n get isLoading() {\n if (this.logic.isNewProdConfig.value) {\n return this.loading\n } else {\n return !this.initialProductFlowLoadingComplete\n }\n }\n\n private get hasEarlyRegistration() {\n const isDate = this.camp.lateDate instanceof Date && !isNaN(this.camp.lateDate.valueOf())\n\n if (isDate) {\n const date = this.camp.lateDate as Date\n return date !== null\n }\n\n return this.camp.lateDate !== null\n }\n\n private newId = ''\n\n get selectedProductOffering() {\n return store.getters.productOfferings.selectedProductOfferingConfig\n }\n private async productBeforeSave() {\n this.camp.productOfferingConfig = this.selectedProductOffering\n this.camp.productOfferingConfig.accountNumber = null\n\n /*****************************************************************\n ** If this is a new camp, or the user wants to ignore warnings\n ** skip validation and return true\n *****************************************************************/\n\n if (this.userWantsToIgnoreWarnings || this.logic.isNewProdConfig.value) {\n this.userWantsToIgnoreWarnings = false\n return true\n }\n\n //Validation only used for warnings. Broken rules handled in the update call\n const result = await campsClient.validateExisting(this.camp.upwardLeagueID ?? '', cloneDeep(this.camp))\n this.warnings = result.data?.warnings ?? null\n return result && result.data ? result.data?.warnings.length < 1 : true\n }\n\n private async afterSaveNewMethod() {\n const savedCamp = await this.create({ item: this.camp })\n if (savedCamp) {\n this.newId = savedCamp.upwardLeagueID ?? ''\n }\n this.modalIsVisible = true\n }\n\n private onModalStateChange() {\n this.$router.push(`/programs/camp/${this.storeCamp.upwardLeagueID}/setup/information`)\n }\n\n ignoreWarnings() {\n this.userWantsToIgnoreWarnings = true\n this.saveAndContinue()\n }\n\n @Watch('isDirty')\n dirtyChanged() {\n if (!this.isDirty) this.userWantsToIgnoreWarnings = false\n }\n\n @Watch('warnings')\n warningsChanged() {\n this.showWarnings = this.warnings ? this.warnings.length > 0 : false\n }\n\n @Watch('registrationCost')\n private updateregistrationCost() {\n if (this.camp.programs === null || this.camp.programs.length === 0) {\n return\n }\n const program = this.camp.programs[0]\n program.registrationFee = this.registrationCost ?? 0\n }\n\n @Watch('earlyRegistrationCost')\n private updateEarlyRegistrationCost() {\n if (this.camp.programs === null || this.camp.programs.length === 0) {\n return\n }\n const program = this.camp.programs[0]\n program.earlyRegistrationFee = this.earlyRegistrationCost ?? 0\n }\n\n @Watch('freeEarlyRegistrationFeeConfirmed')\n private updateFreeEarlyRegistrationFeeConfirmed() {\n if (this.camp.programs === null || this.camp.programs.length === 0) {\n return\n }\n const program = this.camp.programs[0]\n program.freeEarlyRegistrationFeeConfirmed = this.freeEarlyRegistrationFeeConfirmed\n }\n\n @Watch('freeRegistrationFeeConfirmed')\n private updateFreeRegistrationFeeConfirmed() {\n if (this.camp.programs === null || this.camp.programs.length === 0) {\n return\n }\n const program = this.camp.programs[0]\n program.freeRegistrationFeeConfirmed = this.freeRegistrationFeeConfirmed\n }\n\n private getRegistrationCost() {\n if (this.camp.programs === null || this.camp.programs.length === 0) {\n return\n }\n const program = this.camp.programs[0]\n this.registrationCost = program.registrationFee\n this.earlyRegistrationCost = program.earlyRegistrationFee\n this.freeEarlyRegistrationFeeConfirmed = program.freeEarlyRegistrationFeeConfirmed\n this.freeRegistrationFeeConfirmed = program.freeRegistrationFeeConfirmed\n }\n}\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!./Products.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!./Products.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Products.vue?vue&type=template&id=4a51d510&\"\nimport script from \"./Products.vue?vue&type=script&lang=ts&\"\nexport * from \"./Products.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3 no-padding-top\"},[_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Display Name\",\"required\":\"\"},model:{value:(_vm.camp.publicDisplayName),callback:function ($$v) {_vm.$set(_vm.camp, \"publicDisplayName\", $$v)},expression:\"camp.publicDisplayName\"}}),_c('date-time-input',{attrs:{\"label\":\"Online registration Start\",\"required\":\"\"},model:{value:(_vm.onlineRegistrationBeginDate),callback:function ($$v) {_vm.onlineRegistrationBeginDate=$$v},expression:\"onlineRegistrationBeginDate\"}}),_c('date-time-input',{attrs:{\"label\":\"Online registration End\",\"required\":\"\"},model:{value:(_vm.onlineRegistrationEndDate),callback:function ($$v) {_vm.onlineRegistrationEndDate=$$v},expression:\"onlineRegistrationEndDate\"}}),_c('div',{staticClass:\"row pt-6\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('input-label',{attrs:{\"label\":\"Payment Options\",\"required\":\"\"}}),(!_vm.isGlobalPartner)?_c('checkbox-input',{attrs:{\"label\":\"Credit Card\",\"enabled\":_vm.ccEnabled,\"showHelp\":true},on:{\"helpClicked\":function($event){_vm.showCreditCardHelp = true}},model:{value:(_vm.camp.registrationInfo.allowCreditCard),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"allowCreditCard\", $$v)},expression:\"camp.registrationInfo.allowCreditCard\"}}):_vm._e(),_c('modal',{attrs:{\"title\":\"HELP: Credit Card Payment Options\",\"is-small\":true},model:{value:(_vm.showCreditCardHelp),callback:function ($$v) {_vm.showCreditCardHelp=$$v},expression:\"showCreditCardHelp\"}},[_c('div',{staticClass:\"p-5\"},[_vm._v(\" Once account information has been provided, electronic funds transfers will occur on the first and third Wednesday of each month. They will be deposited into your designated account the following day. \")])]),(_vm.ccEnabled)?_c('span',{staticClass:\"small pl-11\"},[_vm._v(\"Current EFT Account last 4 digits: \"),_c('b',[_vm._v(_vm._s(_vm.eftBankAcctLast4))]),_vm._v(\". \"),_c('br'),_c('span',{staticClass:\"pl-11\"},[_vm._v(\"If this has changed, please \")]),_c('a',{staticClass:\"p-0 m-0 align-baseline btn btn-link small\",attrs:{\"href\":\"#\",\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();_vm.eftModalIsVisible = true}}},[_vm._v(\" submit a new form. \")])]):_c('span',{staticClass:\"small pl-11\"},[_vm._v(\" You cannot accept credit card payments yet. \"),_c('br'),_c('a',{staticClass:\"p-0 m-0 align-baseline btn btn-link small pl-11\",attrs:{\"href\":\"#\",\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();_vm.eftModalIsVisible = true}}},[_vm._v(\" Get set up to receive credit card payments\")]),(_vm.showAccessCode)?_c('br'):_vm._e(),(_vm.showAccessCode)?_c('span',{staticClass:\"pl-11\"},[_vm._v(\" Current Docusign Access Code: \"),_c('b',[_vm._v(_vm._s(_vm.accessCode))])]):_vm._e(),(_vm.showAccessCode)?_c('br'):_vm._e(),(_vm.showAccessCode)?_c('span',{staticClass:\"pl-11 env-status\"},[_vm._v(\" Current Docusign Envelope Status: \"),_c('b',[_vm._v(_vm._s(_vm.envStatus))])]):_vm._e()]),_c('checkbox-input',{attrs:{\"label\":\"Pay in person by cash or check\"},model:{value:(_vm.camp.registrationInfo.allowPayLater),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"allowPayLater\", $$v)},expression:\"camp.registrationInfo.allowPayLater\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.camp.registrationInfo.allowCreditCard),expression:\"camp.registrationInfo.allowCreditCard\"}],attrs:{\"label\":\"Ask for donations\"},model:{value:(_vm.camp.registrationInfo.allowDonations),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"allowDonations\", $$v)},expression:\"camp.registrationInfo.allowDonations\"}})],1),(_vm.camp.registrationInfo.allowDonations)?_c('div',{staticClass:\"col-xl-12\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_c('memo-input',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.camp.registrationInfo.allowDonations),expression:\"camp.registrationInfo.allowDonations\"}],attrs:{\"label\":\"Message to parents on how funds will be used\"},model:{value:(_vm.camp.registrationInfo.donationExplanation),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"donationExplanation\", $$v)},expression:\"camp.registrationInfo.donationExplanation\"}})],1)]):_vm._e()]),_c('html-editor',{attrs:{\"label\":\"Pre-registration Information for Parents\",\"max-length\":1024},model:{value:(_vm.camp.registrationInfo.registrationStartMessage),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"registrationStartMessage\", $$v)},expression:\"camp.registrationInfo.registrationStartMessage\"}}),_c('html-editor',{attrs:{\"label\":\"Registration Confirmation Message for Parents\",\"max-length\":1024},model:{value:(_vm.camp.registrationInfo.confirmationMessage),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"confirmationMessage\", $$v)},expression:\"camp.registrationInfo.confirmationMessage\"}}),_c('hr'),_c('h5',[_vm._v(\"Contact Details\")]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('text-input',{attrs:{\"label\":\"Name\"},model:{value:(_vm.camp.registrationInfo.contactLine1),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"contactLine1\", $$v)},expression:\"camp.registrationInfo.contactLine1\"}}),_c('text-input',{attrs:{\"label\":\"Address Line 1\"},model:{value:(_vm.camp.registrationInfo.contactLine2),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"contactLine2\", $$v)},expression:\"camp.registrationInfo.contactLine2\"}}),_c('text-input',{attrs:{\"label\":\"Email\"},model:{value:(_vm.camp.registrationInfo.contactLine5),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"contactLine5\", $$v)},expression:\"camp.registrationInfo.contactLine5\"}})],1),_c('div',{staticClass:\"col-xl-6\"},[_c('text-input',{attrs:{\"label\":\"Phone\"},model:{value:(_vm.camp.registrationInfo.contactLine4),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"contactLine4\", $$v)},expression:\"camp.registrationInfo.contactLine4\"}}),_c('text-input',{attrs:{\"label\":\"Address Line 2\"},model:{value:(_vm.camp.registrationInfo.contactLine3),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"contactLine3\", $$v)},expression:\"camp.registrationInfo.contactLine3\"}})],1)])],1),_c('div',{staticClass:\"col-xl-6 pt-3 border-xl-left\"},[_c('h5',[_vm._v(\"Discounts\")]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{attrs:{\"label\":\"Offer discounts for families registering multiple children?\"},model:{value:(_vm.hasMultiChildDiscount),callback:function ($$v) {_vm.hasMultiChildDiscount=$$v},expression:\"hasMultiChildDiscount\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hasMultiChildDiscount),expression:\"hasMultiChildDiscount\"}],staticClass:\"col-xl-12\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_vm._v(\" For each additonal child registered, reduce the total amount by \"),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('currency-input',{attrs:{\"tab-index\":1,\"label\":\"Discount Second Child\"},model:{value:(_vm.camp.registrationInfo.twoChildDiscountAmount),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"twoChildDiscountAmount\", $$v)},expression:\"camp.registrationInfo.twoChildDiscountAmount\"}}),_c('currency-input',{attrs:{\"tab-index\":3,\"label\":\"Discount Fourth Child\"},model:{value:(_vm.camp.registrationInfo.fourOrMoreChildDiscountAmount),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"fourOrMoreChildDiscountAmount\", $$v)},expression:\"camp.registrationInfo.fourOrMoreChildDiscountAmount\"}})],1),_c('div',{staticClass:\"col-xl-6\"},[_c('currency-input',{attrs:{\"tab-index\":2,\"label\":\"Discount Third Child\"},model:{value:(_vm.camp.registrationInfo.threeChildDiscountAmount),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"threeChildDiscountAmount\", $$v)},expression:\"camp.registrationInfo.threeChildDiscountAmount\"}})],1)])])]),_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{attrs:{\"label\":\"Offer discount codes for registrants?\"},model:{value:(_vm.camp.registrationInfo.allowDiscountCodes),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"allowDiscountCodes\", $$v)},expression:\"camp.registrationInfo.allowDiscountCodes\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.camp.registrationInfo.allowDiscountCodes),expression:\"camp.registrationInfo.allowDiscountCodes\"}],staticClass:\"col-xl-12\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_c('yes-no-input',{attrs:{\"label\":\"Email Program Director each time discount code is used\"},model:{value:(_vm.camp.registrationInfo.emailLDOnDiscountCodeUse),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"emailLDOnDiscountCodeUse\", $$v)},expression:\"camp.registrationInfo.emailLDOnDiscountCodeUse\"}}),_c('manage-discount-codes',{attrs:{\"discount-codes\":_vm.camp.registrationInfo.discountCodes}})],1)])]),_c('hr'),_c('h5',[_vm._v(\"Capacity\")]),_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{attrs:{\"label\":\"Enable capacity limits for the program, any grade, or gender?\"},model:{value:(_vm.showManageCapactiy),callback:function ($$v) {_vm.showManageCapactiy=$$v},expression:\"showManageCapactiy\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showManageCapactiy),expression:\"showManageCapactiy\"}],staticClass:\"col-xl-12\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('integer-input',{attrs:{\"label\":\"What is the maximum number of registrants for the program?\"},model:{value:(_vm.camp.programs[0].capacity),callback:function ($$v) {_vm.$set(_vm.camp.programs[0], \"capacity\", $$v)},expression:\"camp.programs[0].capacity\"}})],1),_c('div',{staticClass:\"col-xl-6\"},[_c('yes-no-input',{attrs:{\"label\":\"Offer a waitlist for those who exceed a set capacity?\"},model:{value:(_vm.camp.registrationInfo.allowWaitlist),callback:function ($$v) {_vm.$set(_vm.camp.registrationInfo, \"allowWaitlist\", $$v)},expression:\"camp.registrationInfo.allowWaitlist\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('text-input',{attrs:{\"label\":\"If your program is at capacity, what message would you like parents to see online?\"},model:{value:(_vm.capacityMessage),callback:function ($$v) {_vm.capacityMessage=$$v},expression:\"capacityMessage\"}})],1)]),_c('manage-capacity-rules',{attrs:{\"grades\":_vm.getCampGradesList(),\"typeProgramID\":_vm.camp.programs[0].typeProgramID,\"upwardLeagueID\":_vm.camp.upwardLeagueID,\"isByAge\":_vm.isByAge},model:{value:(_vm.camp.programs[0].registrationCapacitiesByGradeGender),callback:function ($$v) {_vm.$set(_vm.camp.programs[0], \"registrationCapacitiesByGradeGender\", $$v)},expression:\"camp.programs[0].registrationCapacitiesByGradeGender\"}})],1)]),_c('hr'),_c('h5',[_vm._v(\"Private Registration Links\")]),_vm._m(1),_c('manage-bypass-links',{attrs:{\"bypass-links\":_vm.camp.registrationInfo.bypassLinks,\"max-date\":_vm.camp.campEndDate,\"upw\":_vm.camp.upwardLeagueID}})],1),_vm._m(2)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.camp,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('setup-complete-confirmation',{attrs:{\"upwardLeagueId\":_vm.newId,\"hasOnlineRegistration\":true,\"is-camp\":\"\"},on:{\"change\":_vm.onModalStateChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}}),_c('EFTAuthorizationRequestModal',{attrs:{\"isVisible\":_vm.eftModalIsVisible,\"eftStatus\":_vm.eftStatus},on:{\"sent\":_vm.eftAuthSent}})],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Online Participant Registration\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pl-8 pb-3\"},[_c('span',{staticClass:\"small\"},[_vm._v(\"Create registration links to support unique situations outside of your standard registration settings. For example, if you want to allow coaches to register before you open registration to the public.\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-12\"},[_c('hr',{staticClass:\"pt-0 mt-0\"})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"input-group\"},[(_vm.prependIcon)?_c('div',{staticClass:\"input-group-prepend\"},[_c('span',{staticClass:\"input-group-text\"},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.prependIcon})])]):_vm._e(),_c('div',{staticClass:\"col-sm-6 no-padding-left pb-0\"},[_c('input-label',{attrs:{\"label\":_vm.label + ' Date',\"required\":_vm.required,\"input-name\":_vm.inputId + '-date'}}),_c('date-input',{ref:\"datepicker\",attrs:{\"format\":\"MM/dd/yyyy\",\"id\":_vm.inputId,\"placeholder\":_vm.placeholder,\"typeable\":true,\"required\":_vm.required,\"noBottomPadding\":true,\"inputClass\":\"pl-2\"},on:{\"input\":_vm.handleChange},model:{value:(_vm.internalDateValue),callback:function ($$v) {_vm.internalDateValue=$$v},expression:\"internalDateValue\"}})],1),_c('div',{staticClass:\"col-sm-6 no-padding-right pb-0\"},[_c('input-label',{attrs:{\"label\":_vm.label + ' Time',\"required\":_vm.required,\"input-name\":_vm.inputId + '-time'}}),_c('TimePicker',{attrs:{\"id\":_vm.inputId + '-time',\"placeholder\":_vm.placeholder,\"min\":\"00:00:00\",\"max\":\"23:59:00\",\"noBottomPadding\":true},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalTimeValue),callback:function ($$v) {_vm.internalTimeValue=$$v},expression:\"internalTimeValue\"}})],1),(_vm.appendIcon)?_c('div',{staticClass:\"input-group-append\"},[_c('span',{staticClass:\"input-group-text\"},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.appendIcon})])]):_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\nimport { defineComponent, ref, computed, watch, PropType } from '@vue/composition-api'\nimport uuid from 'uuid'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport TimePicker from '@/elements/TimePicker2.vue'\nimport dayjs from 'dayjs'\n\nexport default defineComponent({\n name: 'DateTimeInput',\n components: {\n InputLabel,\n DateInput,\n TimePicker,\n },\n props: {\n required: { type: Boolean, default: false, required: false },\n strictMode: { type: Boolean, default: false, required: false },\n label: { type: String, default: '', required: false },\n placeholder: { type: String, default: '', required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n minDate: {\n type: (null as unknown) as PropType,\n default: () => {\n const d = new Date()\n d.setDate(d.getDate() - 90)\n return d\n },\n required: false,\n },\n maxDate: {\n type: (null as unknown) as PropType,\n default: () => {\n const d = new Date()\n d.setDate(d.getDate() + 730)\n return d\n },\n required: false,\n },\n value: { required: true, type: (null as unknown) as PropType },\n },\n setup(props, ctx) {\n const internalDateValue = ref(null)\n const internalTimeValue = ref(null)\n const inputId = ref('')\n\n const internalValue = computed(() => {\n const isValidTime = internalTimeValue.value != null && internalTimeValue.value != ''\n const isValidDate = internalDateValue.value != null\n\n if (isValidTime && isValidDate) {\n const timeParts = internalTimeValue.value?.split(':')\n return dayjs(internalDateValue.value ?? '')\n .hour(timeParts ? Number(timeParts[0]) : 0)\n .minute(timeParts ? Number(timeParts[1]) : 0)\n .toDate()\n } else if (!isValidTime && isValidDate) {\n return internalDateValue.value\n } else {\n return ''\n }\n })\n\n function setInternalValue() {\n if (!props.value || props.value === '0001-01-01T00:00:00') {\n internalDateValue.value = null\n internalTimeValue.value = ''\n } else if (typeof props.value === 'string') {\n internalDateValue.value = dayjs(props.value).toDate()\n internalTimeValue.value = dayjs(props.value).format('HH:mm:ss')\n } else {\n internalDateValue.value = dayjs(props.value).toDate()\n internalTimeValue.value = dayjs(props.value).format('HH:mm:ss')\n }\n }\n\n //private created()\n setInternalValue()\n inputId.value = 'datepicker-' + uuid.v4()\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n if (props.value != internalValue.value) {\n setInternalValue()\n }\n }\n )\n\n watch(\n () => internalDateValue.value,\n (newVal, oldVal) => {\n if (oldVal == null && internalTimeValue.value == '') {\n internalTimeValue.value = dayjs().hour(0).minute(0).second(0).format('HH:ss:mm')\n }\n }\n )\n\n return {\n inputId,\n internalDateValue,\n handleChange,\n internalTimeValue,\n }\n },\n})\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!./DateTimeInput.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!./DateTimeInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DateTimeInput.vue?vue&type=template&id=226a4bbb&\"\nimport script from \"./DateTimeInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./DateTimeInput.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('vee-validate-form',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar valid = ref.valid;\nvar validated = ref.validated;\nreturn [_c('modal',{attrs:{\"title\":\"EFT Authorization Request\"},model:{value:(_vm.showModal),callback:function ($$v) {_vm.showModal=$$v},expression:\"showModal\"}},[[_c('div',[_c('p',[_vm._v(\" Please enter the name and email address of the person at your church who has the authority to provide Upward with the EFT (Electronic Funds Transfer) information. This is necessary to make deposits into your bank account for the full amount of monies collected via credit cards through our online registration service. Clicking \\\"Send EFT Authorization\\\" below will generate a DocuSign form that will be automatically emailed to the listed individual with further instructions. You will need to provide the individual with the access code you enter below as an additional layer of security. \")]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6\"},[_c('text-input',{attrs:{\"vee-validate-rules\":\"namelike|required\",\"label\":\"Full Name\"},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}})],1),_c('div',{staticClass:\"col-lg-6\"},[_c('text-input',{attrs:{\"vee-validate-rules\":\"email|required\",\"label\":\"email\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1),_c('div',{staticClass:\"col-lg-6\"},[_c('text-input',{attrs:{\"vee-validate-rules\":\"min:6|required\",\"label\":\"Access Code (needed to open and sign EFT request)\",\"enabled\":_vm.accessCodeEnabled,\"subLabel\":_vm.accessCodeEnabled ? '' : 'Disabled because current request is pending'},model:{value:(_vm.accessCode),callback:function ($$v) {_vm.accessCode=$$v},expression:\"accessCode\"}})],1)])])],_c('template',{slot:\"footer\"},[_c('div',{staticClass:\"col-auto py-0\"},[_c('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":!_vm.hasCollectedData || !valid || _vm.isSaving,\"type\":\"button\"},on:{\"click\":_vm.sendClicked}},[_vm._v(\" Send EFT Authorization \")])])])],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\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\nimport { Getter } from 'vuex-class'\n\nimport Modal from '@/components/Modal.vue'\n\nimport * as authorizationStore from '@/store/authorization'\nimport partnersClient from '@/clients/partnersClient'\nimport TextInput from '@/elements/TextInput.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nimport { EFTAuthorizationRequest } from '@/models/Partner/EFTAuthorizationRequest'\nimport { EFTRequestStatus } from '@/models/Partner/EFTRequestStatus'\n\n@Component({\n components: {\n TextInput,\n Modal,\n VeeValidateForm,\n },\n})\nexport default class EFTAuthorizationRequestModal extends Vue {\n @Prop({ type: Boolean, required: true })\n private isVisible!: boolean\n\n @Prop({ type: Object, required: false })\n eftStatus!: EFTRequestStatus | null\n\n @Getter(authorizationStore.getterNames.firstAccountNumber, { namespace: authorizationStore.namespace })\n private accountNumber!: string\n\n @Getter(authorizationStore.getterNames.fullName, { namespace: authorizationStore.namespace })\n private currentUserFullName!: string\n\n @Getter(authorizationStore.getterNames.email, { namespace: authorizationStore.namespace })\n private currentUserEmail!: string\n\n private name = ''\n private email = ''\n private isSaving = false\n private showModal = false\n private accessCode = ''\n\n mounted() {\n this.name = this.currentUserFullName\n this.email = this.currentUserEmail\n }\n\n get hasCollectedData() {\n return this.name && this.email\n }\n\n get accessCodeEnabled(): boolean {\n return this.eftStatus?.status != 'sent'\n }\n\n async sendClicked() {\n this.isSaving = true\n const eftAuth = {\n name: this.name,\n email: this.email,\n accessCode: this.accessCode,\n } as EFTAuthorizationRequest\n await partnersClient.sendEFTAuthorizationRequest(this.accountNumber, eftAuth)\n this.$emit('sent')\n this.isSaving = false\n }\n\n @Watch('eftStatus', { immediate: true, deep: true })\n private onEFTStatusChange() {\n this.accessCode =\n this.eftStatus?.status == 'sent' ? this.eftStatus?.accessCode : Math.random().toString(36).slice(2)\n }\n\n @Watch('isVisible')\n private onOpenOrClose() {\n this.showModal = this.isVisible\n }\n\n @Watch('showModal')\n private onShowModalChange() {\n if (!this.showModal) {\n this.$emit('sent')\n }\n }\n}\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!./EFTAuthorizationRequestModal.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!./EFTAuthorizationRequestModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EFTAuthorizationRequestModal.vue?vue&type=template&id=4982dd6a&scoped=true&\"\nimport script from \"./EFTAuthorizationRequestModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./EFTAuthorizationRequestModal.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 \"4982dd6a\",\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('div',[_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row px-2\"},[_c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"py-2\"},[_vm._v(\" Add or edit discount codes below that can be used to reduce the registration fee you charge participants. \")])]),_c('div',{staticClass:\"col-md-12 py-2\"},[_c('simple-grid',{attrs:{\"grid-data\":_vm.internalDiscountCodes,\"columns\":_vm.gridColumns,\"show-edit-button\":true,\"show-delete-button\":true},on:{\"editButtonClicked\":_vm.handleEditBottonClicked,\"deleteButtonClicked\":_vm.handleDeleteBottonClicked}})],1),_c('div',{staticClass:\"col-12\"},[_c('edit-discount-code',{attrs:{\"discount-code\":_vm.activeDiscountCode},on:{\"onSave\":_vm.saveDiscountCode},model:{value:(_vm.showEditScreen),callback:function ($$v) {_vm.showEditScreen=$$v},expression:\"showEditScreen\"}})],1)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.done}},[_c('save-icon'),_vm._v(\" Save \")],1)])],2),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.toggleModal}},[_vm._v(_vm._s(_vm.manageButtonTitle))])],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('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.internalModalIsVisible),callback:function ($$v) {_vm.internalModalIsVisible=$$v},expression:\"internalModalIsVisible\"}},[_c('div',{staticClass:\"row px-2\",staticStyle:{\"height\":\"200px\"}},[_c('div',{staticClass:\"col-md-6 py-2\"},[_c('text-input',{attrs:{\"label\":\"Description\"},model:{value:(_vm.internalDiscountCode.description),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"description\", $$v)},expression:\"internalDiscountCode.description\"}}),_c('currency-input',{attrs:{\"label\":\"Discount Amount\"},model:{value:(_vm.internalDiscountCode.discountAmount),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"discountAmount\", $$v)},expression:\"internalDiscountCode.discountAmount\"}})],1),_c('div',{staticClass:\"col-md-6 py-2\"},[_c('text-input',{attrs:{\"maxlength\":10,\"label\":\"Discount Code\"},model:{value:(_vm.internalDiscountCode.discountCode),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"discountCode\", $$v)},expression:\"internalDiscountCode.discountCode\"}}),_c('integer-input',{attrs:{\"label\":\"Max Number of Usages\"},model:{value:(_vm.internalDiscountCode.maxUsages),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"maxUsages\", $$v)},expression:\"internalDiscountCode.maxUsages\"}}),_c('checkbox-input',{attrs:{\"label\":\"Active\"},model:{value:(_vm.internalDiscountCode.active),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"active\", $$v)},expression:\"internalDiscountCode.active\"}})],1)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.done}},[_c('save-icon'),_vm._v(\" Save \")],1)])],2),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.showModal}},[_vm._v(\"Add New Discount Code\")])],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\nimport { defineComponent, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport { LeagueRegistrationDiscountCode } from '../GeneratedTypes/LeagueRegistrationDiscountCode'\nimport { SaveIcon } from '@/elements/Icons'\n\nexport default defineComponent({\n name: 'EditDiscountCode',\n components: {\n Modal,\n TextInput,\n IntegerInput,\n CurrencyInput,\n CheckboxInput,\n SaveIcon,\n },\n props: {\n discountCode: {\n type: (null as unknown) as PropType,\n required: false,\n },\n value: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const internalDiscountCode = ref({\n id: 0,\n description: '',\n discountCode: '',\n discountAmount: 0,\n maxUsages: 0,\n numberOfUsages: 0,\n active: true,\n })\n\n const internalModalIsVisible = ref(false)\n const modalTitle = ref('Edit Discount Code')\n\n watch(\n () => internalModalIsVisible.value,\n () => {\n ctx.emit('input', internalModalIsVisible.value)\n ctx.emit('change', internalModalIsVisible.value)\n }\n )\n\n watch(\n () => internalDiscountCode.value.discountCode,\n () => {\n if (internalDiscountCode.value && internalDiscountCode.value.discountCode) {\n internalDiscountCode.value.discountCode = internalDiscountCode.value.discountCode.toUpperCase()\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (internalModalIsVisible.value !== props.value) {\n internalModalIsVisible.value = props.value\n }\n }\n )\n\n onMounted(() => {\n internalModalIsVisible.value = props.value\n if (props.discountCode) {\n internalDiscountCode.value = props.discountCode\n }\n })\n\n function done() {\n if (internalDiscountCode.value && internalDiscountCode.value.discountCode) {\n internalDiscountCode.value.discountCode = internalDiscountCode.value.discountCode.toUpperCase()\n }\n\n ctx.emit('onSave', internalDiscountCode.value)\n toggleModal()\n }\n\n function cancel() {\n toggleModal()\n }\n\n function toggleModal() {\n internalModalIsVisible.value = !internalModalIsVisible.value\n }\n\n function showModal() {\n internalDiscountCode.value = defaultDiscountCode()\n internalModalIsVisible.value = true\n }\n\n watch(\n () => props.discountCode,\n () => {\n internalDiscountCode.value = props.discountCode || defaultDiscountCode()\n }\n )\n\n function defaultDiscountCode(): LeagueRegistrationDiscountCode {\n return {\n id: 0,\n description: '',\n discountCode: '',\n discountAmount: 0,\n maxUsages: 0,\n numberOfUsages: 0,\n active: true,\n } as LeagueRegistrationDiscountCode\n }\n\n return {\n internalModalIsVisible,\n modalTitle,\n internalDiscountCode,\n cancel,\n done,\n showModal,\n }\n },\n})\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!./EditDiscountCode.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!./EditDiscountCode.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditDiscountCode.vue?vue&type=template&id=90e581b2&\"\nimport script from \"./EditDiscountCode.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditDiscountCode.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport uuid from 'uuid'\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport EditDiscountCode from '@/components/EditDiscountCode.vue'\nimport { LeagueRegistrationDiscountCode } from '@/GeneratedTypes/LeagueRegistrationDiscountCode'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '../models/Grid/GridColumn'\nimport { SaveIcon } from '@/elements/Icons'\n\n@Component({\n components: {\n Modal,\n TextInput,\n EditDiscountCode,\n SimpleGrid,\n SaveIcon,\n },\n})\nexport default class ManageDiscountCodes extends Vue {\n private readonly guid = uuid.v4()\n private modalIsVisible = false\n private modalTitle = 'Manage Discount Codes'\n private defaultManageButtonTitle = 'Manage Discount Codes'\n private manageButtonTitle = this.defaultManageButtonTitle\n private wasCancelled = false\n private showEditScreen = false\n private activeDiscountCode: LeagueRegistrationDiscountCode | null = null\n\n public get gridId() {\n return `grid-${this.guid}`\n }\n\n @Prop({ required: true })\n private readonly discountCodes!: LeagueRegistrationDiscountCode[] | null\n\n private gridColumns: GridColumn[] = [\n {\n field: 'description',\n headerText: 'Description',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'discountCode',\n headerText: 'Code',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'discountAmount',\n headerText: 'Amount',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'maxUsages',\n headerText: 'Max Usages',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'numberOfUsages',\n headerText: '# of Usages',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'active',\n headerText: 'Active',\n textAlign: '',\n width: 0,\n format: '',\n customRender: this.renderActive,\n } as GridColumn,\n ]\n\n private internalDiscountCodes: LeagueRegistrationDiscountCode[] = []\n\n @Watch('modalIsVisible')\n private onModalVisibilityChanged() {\n this.wasCancelled = false\n }\n\n @Watch('internalDiscountCodes.length')\n private oninternalDiscountCodesChanged() {\n this.manageButtonTitle = `${this.defaultManageButtonTitle} ${\n this.internalDiscountCodes.length > 0 ? '(' + this.internalDiscountCodes.length + ')' : ''\n }`\n }\n\n private done() {\n this.$emit('onSave', this.discountCodes)\n this.toggleModal()\n }\n\n private cancel() {\n this.wasCancelled = true\n this.toggleModal()\n }\n\n private toggleModal() {\n this.modalIsVisible = !this.modalIsVisible\n }\n\n private mounted() {\n if (this.discountCodes) {\n this.internalDiscountCodes = this.discountCodes\n } else {\n this.internalDiscountCodes = []\n }\n }\n\n private saveDiscountCode(discountCode: LeagueRegistrationDiscountCode) {\n if (discountCode.id === 0) {\n discountCode.id = -1 * (this.discountCodes!.length + 1)\n this.discountCodes?.push(discountCode)\n this.internalDiscountCodes = this.discountCodes!\n }\n\n this.activeDiscountCode = null\n }\n\n private handleEditBottonClicked(entity: any) {\n this.activeDiscountCode = entity\n this.showEditScreen = true\n }\n\n private handleDeleteBottonClicked(entity: any) {\n const index = this.internalDiscountCodes.indexOf(entity)\n if (index < 0) {\n return\n }\n\n this.internalDiscountCodes.splice(index, 1)\n }\n\n private renderActive(value: any) {\n if (value) {\n return '
'\n }\n return '
'\n }\n}\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!./ManageDiscountCodes.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!./ManageDiscountCodes.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ManageDiscountCodes.vue?vue&type=template&id=3f12b99a&\"\nimport script from \"./ManageDiscountCodes.vue?vue&type=script&lang=ts&\"\nexport * from \"./ManageDiscountCodes.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ManageDiscountCodes.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-4\"},[_c('div',{staticClass:\"col-md-6\"},[_c('h5',[_vm._v(\"Gender/\"+_vm._s(_vm.isByAge ? 'Age' : 'Grade')+\" Capacity Rules\")])]),_c('div',{staticClass:\"col-md-6 pull-right\"},[_c('button',{staticClass:\"btn btn-success float-right\",attrs:{\"disabled\":_vm.isEditing},on:{\"click\":_vm.addNewRule}},[_c('i',{staticClass:\"fa fa-plus\"}),_vm._v(\" Add New \")])])]),_c('div',{staticClass:\"row pt-3\"},[_c('table',{staticClass:\"table table-striped\"},[_c('thead',[_c('tr',[_c('th',{attrs:{\"scope\":\"col\"}},[_vm._v(\"Start \"+_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('th',{attrs:{\"scope\":\"col\"}},[_vm._v(\"End \"+_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('th',{attrs:{\"scope\":\"col\"}},[_vm._v(\"Gender\")]),_c('th',{attrs:{\"scope\":\"col\"}},[_vm._v(\"Capacity\")]),_c('th',{attrs:{\"scope\":\"col\"}},[_vm._v(\"Current Count\")]),_c('th',{attrs:{\"scope\":\"col\"}},[_vm._v(\"On Waitlist\")]),_c('th',{attrs:{\"scope\":\"col\"}}),_c('th',{attrs:{\"scope\":\"col\"}})])]),_c('tbody',[_c('manage-capacity-rule',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isEditing),expression:\"isEditing\"}],attrs:{\"upwardLeagueID\":_vm.upwardLeagueID,\"typeProgramID\":_vm.typeProgramID,\"capacity\":_vm.editingRule,\"isNewRow\":true,\"isEditting\":_vm.isEditing,\"availableStartGrades\":_vm.availableStartGrades(_vm.editingRule),\"availableStopGrades\":_vm.availableStopGrades(_vm.editingRule),\"availableGenders\":_vm.availableGenders(_vm.editingRule),\"isByAge\":_vm.isByAge},on:{\"save-row\":_vm.saveRow,\"delete-row\":_vm.deleteRow}}),_vm._l((_vm.internalRegistrationCapacities),function(cap,index){return [_c('manage-capacity-rule',{key:index,attrs:{\"upwardLeagueID\":_vm.upwardLeagueID,\"typeProgramID\":_vm.typeProgramID,\"capacity\":cap,\"isNewRow\":false,\"isEditting\":_vm.editId === cap.id,\"availableStartGrades\":_vm.availableStartGrades(cap),\"availableStopGrades\":_vm.availableStopGrades(cap),\"availableGenders\":_vm.availableGenders(cap),\"isByAge\":_vm.isByAge},on:{\"save-row\":_vm.saveRowEdit,\"edit-row\":_vm.editRow,\"delete-row\":_vm.deleteRow}})]})],2)])])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.done}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Confirm\")])])],2),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.toggleModal}},[_vm._v(_vm._s(_vm.manageButtonTitle))])],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('tr',[_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isEditting),expression:\"!isEditting\"}]},[_vm._v(_vm._s(_vm.startDisplayValue))]),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isEditting),expression:\"!isEditting\"}]},[_vm._v(_vm._s(_vm.endDisplayValue))]),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isEditting),expression:\"!isEditting\"}]},[_vm._v(_vm._s(_vm.capacity.gender))]),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isEditting),expression:\"!isEditting\"}]},[_vm._v(_vm._s(_vm.capacity.capacity))]),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isEditting),expression:\"isEditting\"}]},[_c('select-input',{attrs:{\"valuePropertyName\":\"upwardTypeID\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"items-list\":_vm.availableStartGrades},model:{value:(_vm.capacity.startTypeGradeID),callback:function ($$v) {_vm.$set(_vm.capacity, \"startTypeGradeID\", $$v)},expression:\"capacity.startTypeGradeID\"}})],1),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isEditting),expression:\"isEditting\"}]},[_c('select-input',{attrs:{\"valuePropertyName\":\"upwardTypeID\",\"textPropertyName\":_vm.isByAge ? 'ageByCutoff' : 'description',\"items-list\":_vm.availableStopGrades},model:{value:(_vm.capacity.stopTypeGradeID),callback:function ($$v) {_vm.$set(_vm.capacity, \"stopTypeGradeID\", $$v)},expression:\"capacity.stopTypeGradeID\"}})],1),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isEditting),expression:\"isEditting\"}]},[_c('select-input',{attrs:{\"items-list\":_vm.availableGenders,\"textPropertyName\":\"gender\",\"valuePropertyName\":\"id\"},model:{value:(_vm.capacity.gender),callback:function ($$v) {_vm.$set(_vm.capacity, \"gender\", $$v)},expression:\"capacity.gender\"}})],1),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isEditting),expression:\"isEditting\"}]},[_c('integer-input',{model:{value:(_vm.capacity.capacity),callback:function ($$v) {_vm.$set(_vm.capacity, \"capacity\", $$v)},expression:\"capacity.capacity\"}})],1),_c('td',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.regCapCounts.currentCount))]),_c('td',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.regCapCounts.waitlistCount))]),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isEditting),expression:\"isEditting\"}]},[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.saveRow}},[_vm._v(\"Save\")])]),_c('td',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isEditting),expression:\"!isEditting\"}]},[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.editRow}},[_c('i',{staticClass:\"fa fa-edit\"})])]),_c('td',[_c('button',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isNewRow || !_vm.isEditting),expression:\"isNewRow || !isEditting\"}],staticClass:\"btn btn-light\",on:{\"click\":_vm.deleteRow}},[_c('i',{staticClass:\"fa fa-minus-circle\"})])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export interface RegistrationCapacityCount {\n currentCount: number\n waitlistCount: number\n}\n\nexport function getEmptyRegistrationCapacityCount(): RegistrationCapacityCount {\n return {\n currentCount: 0,\n waitlistCount: 0,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, onMounted, PropType, computed } from '@vue/composition-api'\nimport { getProperGradeLabel } from '@/services/gradeService'\n\nimport programsClient from '@/clients/programsClient'\nimport { RegistrationCapacityByGradeGender } from '@/GeneratedTypes/RegistrationCapacityByGradeGender'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport {\n RegistrationCapacityCount,\n getEmptyRegistrationCapacityCount,\n} from '@/models/Program/RegistrationCapacityCount'\n\nimport SelectInput from '@/elements/SelectInput.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\n\nexport default defineComponent({\n name: 'ManageCapacityRule',\n components: { SelectInput, IntegerInput },\n props: {\n capacity: { type: Object as PropType, require: true },\n upwardLeagueID: { type: String, require: true },\n typeProgramID: { type: String, require: true },\n isNewRow: { type: Boolean, require: true },\n isEditting: { type: Boolean, require: true },\n isByAge: { type: Boolean, require: false, default: false },\n availableStartGrades: { type: Array as PropType, require: true },\n availableStopGrades: { type: Array as PropType, require: true },\n availableGenders: { type: Array as PropType, require: true },\n },\n setup(props, ctx) {\n const regCapCounts = ref(getEmptyRegistrationCapacityCount())\n\n async function setRegistrationCount() {\n if (\n props.capacity?.startTypeGradeID &&\n props.capacity?.stopTypeGradeID &&\n props.capacity?.gender &&\n props.upwardLeagueID != ''\n ) {\n regCapCounts.value =\n (await programsClient.getRegistrationCount(props.upwardLeagueID!, {\n typeProgramID: props.typeProgramID!,\n gender: props.capacity?.gender,\n startGradeID: props.capacity?.startTypeGradeID,\n endGradeID: props.capacity?.stopTypeGradeID,\n })) ?? getEmptyRegistrationCapacityCount()\n } else {\n regCapCounts.value = getEmptyRegistrationCapacityCount()\n }\n }\n\n const startDisplayValue = computed(() => {\n return getProperGradeLabel(props.capacity?.startTypeGradeID ?? '', props.isByAge, '')\n })\n\n const endDisplayValue = computed(() => {\n return getProperGradeLabel(props.capacity?.stopTypeGradeID ?? '', props.isByAge, '')\n })\n\n function saveRow() {\n ctx.emit('save-row')\n }\n\n function editRow() {\n ctx.emit('edit-row', props.capacity?.id)\n }\n\n function deleteRow() {\n if (props.isNewRow) {\n ctx.emit('delete-row', null)\n } else {\n ctx.emit('delete-row', props.capacity?.id)\n }\n }\n\n watch(\n () => props.capacity?.startTypeGradeID,\n async () => {\n await setRegistrationCount()\n }\n )\n\n watch(\n () => props.capacity?.stopTypeGradeID,\n async () => {\n await setRegistrationCount()\n }\n )\n\n watch(\n () => props.capacity?.gender,\n async () => {\n await setRegistrationCount()\n }\n )\n\n onMounted(async () => {\n await setRegistrationCount()\n })\n\n return {\n regCapCounts,\n saveRow,\n editRow,\n deleteRow,\n startDisplayValue,\n endDisplayValue,\n }\n },\n})\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!./ManageCapacityRule.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!./ManageCapacityRule.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ManageCapacityRule.vue?vue&type=template&id=6c131ae4&\"\nimport script from \"./ManageCapacityRule.vue?vue&type=script&lang=ts&\"\nexport * from \"./ManageCapacityRule.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\nimport { Getter } from 'vuex-class'\n\nimport { RegistrationCapacityByGradeGender } from '@/GeneratedTypes/RegistrationCapacityByGradeGender'\nimport { GradeUsage } from '@/services/gradeService'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport * as gradeStore from '@/store/gradeTypes'\n\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport ManageCapacityRule from './ManageCapacityRule.vue'\n\n@Component({\n components: {\n Modal,\n TextInput,\n SelectInput,\n IntegerInput,\n ManageCapacityRule,\n },\n})\nexport default class ManageCapacityRules extends Vue {\n private modalIsVisible = false\n private modalTitle = 'Manage Capacity Rules'\n private defaultManageButtonTitle = 'Manage Capacity Rules'\n private manageButtonTitle = this.defaultManageButtonTitle\n private isEditing = false\n private gradeIndex: Map = new Map()\n private gradeUsages: Map = new Map()\n\n private editingRule: RegistrationCapacityByGradeGender = {\n id: 0,\n startTypeGradeID: '',\n stopTypeGradeID: '',\n gender: '',\n capacity: 0,\n capacityMessage: '',\n } as RegistrationCapacityByGradeGender\n\n private internalRegistrationCapacities: RegistrationCapacityByGradeGender[] = []\n private editId: number | null = null\n\n @Prop({ required: true })\n private readonly value!: RegistrationCapacityByGradeGender[] | null\n\n @Prop({ required: true })\n private readonly grades!: GradeUsage[] | null\n\n @Prop({ required: true })\n private readonly typeProgramID!: string\n\n @Prop({ required: true })\n private readonly upwardLeagueID!: string\n\n @Prop({ type: Boolean, required: false, default: false })\n private readonly isByAge!: boolean\n\n @Getter(gradeStore.getterNames.byUpwardTypeId, { namespace: gradeStore.namespace })\n private getUpwardGradeTypeID!: (typeID: string) => UpwardGradeTypeID | null\n\n private mounted() {\n if (this.value) {\n this.internalRegistrationCapacities = this.value\n this.updateGradeUsageMap()\n }\n }\n\n private done() {\n this.$emit('onSave', this.internalRegistrationCapacities)\n this.handleChange()\n this.toggleModal()\n }\n\n private cancel() {\n this.toggleModal()\n }\n\n private toggleModal() {\n this.modalIsVisible = !this.modalIsVisible\n }\n\n private addNewRule() {\n this.editingRule = {\n id: (this.internalRegistrationCapacities?.length + 1 ?? 1) * -1,\n startTypeGradeID: '',\n stopTypeGradeID: '',\n gender: '',\n capacity: 0,\n capacityMessage: '',\n } as RegistrationCapacityByGradeGender\n\n this.editId = null\n this.isEditing = true\n }\n\n private isValid(items: RegistrationCapacityByGradeGender) {\n const errMsg: string[] = []\n if (!items.startTypeGradeID) {\n errMsg.push(' Start Grade is required.')\n }\n\n if (!items.stopTypeGradeID) {\n errMsg.push(' End Grade is required.')\n }\n\n if (!items.gender) {\n errMsg.push(' Gender is required.')\n }\n\n if (errMsg.length > 0) {\n throw errMsg\n }\n return true\n }\n\n private saveRow() {\n if (this.editingRule) {\n if (this.isValid(this.editingRule)) {\n if (this.internalRegistrationCapacities) {\n this.internalRegistrationCapacities.push(this.editingRule)\n } else {\n this.internalRegistrationCapacities = [this.editingRule]\n }\n this.updateGradeUsageMap()\n this.isEditing = false\n }\n }\n }\n\n private deleteRow(id: number | null) {\n this.isEditing = false\n this.editId = null\n if (id) {\n const itemToDeleteIndex = this.internalRegistrationCapacities.findIndex((item) => item.id === id)\n this.internalRegistrationCapacities.splice(itemToDeleteIndex, 1)\n this.updateGradeUsageMap()\n }\n }\n\n private editRow(id: number) {\n this.editId = id\n this.isEditing = false\n }\n\n private saveRowEdit() {\n const rule = this.internalRegistrationCapacities.find((item) => item.id === this.editId)\n if (rule && this.isValid(rule)) {\n this.editId = null\n this.updateGradeUsageMap()\n }\n }\n\n private handleChange() {\n this.$emit('input', this.internalRegistrationCapacities)\n this.$emit('change', this.internalRegistrationCapacities)\n }\n\n @Watch('value')\n private onValueChanged() {\n if (this.value) {\n if (this.internalRegistrationCapacities !== this.value) {\n this.internalRegistrationCapacities = this.value\n this.updateGradeUsageMap()\n }\n }\n }\n\n @Watch('grades', { immediate: true })\n private updateGradeRelatedVariables() {\n this.gradeIndex = new Map()\n if (this.grades) {\n for (let i = 0; i < this.grades.length; i++) {\n this.gradeIndex.set(this.grades[i].grade, i)\n }\n }\n }\n\n @Watch('internalRegistrationCapacities.length')\n private oninternalRegistrationCapacitiesChanged() {\n this.manageButtonTitle = `${this.defaultManageButtonTitle} ${\n this.internalRegistrationCapacities.length > 0\n ? '(' + this.internalRegistrationCapacities.length + ')'\n : ''\n }`\n }\n\n private updateGradeUsageMap() {\n if (this.grades) {\n this.gradeUsages = new Map()\n for (const gradeUsage of this.grades) {\n this.gradeUsages.set(gradeUsage.grade, gradeUsage)\n }\n\n for (const cap of this.internalRegistrationCapacities) {\n const startIndex: number | undefined = this.gradeIndex.get(cap.startTypeGradeID)\n const stopIndex: number | undefined = this.gradeIndex.get(cap.stopTypeGradeID)\n\n if (startIndex !== undefined && stopIndex !== undefined) {\n for (let j = startIndex; j <= stopIndex; j++) {\n const gradeId = this.grades[j]\n const gradeUsage = this.gradeUsages.get(gradeId.grade)\n if (gradeUsage) {\n gradeUsage.femaleUsed = gradeUsage.femaleUsed || cap.gender === 'F' || cap.gender === 'E'\n gradeUsage.maleUsed = gradeUsage.maleUsed || cap.gender === 'M' || cap.gender === 'E'\n }\n }\n }\n }\n }\n }\n\n private availableStartGrades(capacity: RegistrationCapacityByGradeGender): UpwardGradeTypeID[] {\n if (this.grades) {\n const gradeList = this.grades.map((g) => g.grade)\n const startGrades = gradeList.filter((item) => {\n const gradeUsage = this.gradeUsages.get(item)\n const gradeIsGreaterThenStopGrade =\n capacity.stopTypeGradeID &&\n this.gradeIndex.get(item)! > this.gradeIndex.get(capacity.stopTypeGradeID)!\n\n if (gradeIsGreaterThenStopGrade) {\n return false\n }\n\n const capacityGradeMatchesStartGrade =\n capacity &&\n capacity.startTypeGradeID &&\n gradeUsage &&\n gradeUsage.grade === capacity.startTypeGradeID\n\n if (capacityGradeMatchesStartGrade) {\n return true\n }\n\n const capacityGradeMatchesStopGrade =\n capacity && capacity.stopTypeGradeID && gradeUsage && gradeUsage.grade === capacity.stopTypeGradeID\n\n if (capacityGradeMatchesStopGrade) {\n return true\n }\n\n return gradeUsage && (!gradeUsage.femaleUsed || !gradeUsage.maleUsed)\n })\n return startGrades.map((x) => this.getUpwardGradeTypeID(x)!)\n }\n return []\n }\n\n private availableStopGrades(capacity: RegistrationCapacityByGradeGender): UpwardGradeTypeID[] {\n if (this.grades) {\n const gradeList = this.grades.map((g) => g.grade)\n const endGrades = gradeList.filter((item) => {\n const gradeUsage = this.gradeUsages.get(item)\n const gradeIsLessThenStartGrade =\n capacity.startTypeGradeID &&\n this.gradeIndex.get(item)! < this.gradeIndex.get(capacity.startTypeGradeID)!\n\n if (gradeIsLessThenStartGrade) {\n return false\n }\n\n const capacityGradeMatchesStartGrade =\n capacity &&\n capacity.startTypeGradeID &&\n gradeUsage &&\n gradeUsage.grade === capacity.startTypeGradeID\n\n if (capacityGradeMatchesStartGrade) {\n return true\n }\n\n const capacityGradeMatchesStopGrade =\n capacity && capacity.stopTypeGradeID && gradeUsage && gradeUsage.grade === capacity.stopTypeGradeID\n\n if (capacityGradeMatchesStopGrade) {\n return true\n }\n\n return gradeUsage && (!gradeUsage.femaleUsed || !gradeUsage.maleUsed)\n })\n\n return endGrades.map((x) => this.getUpwardGradeTypeID(x)!)\n }\n return []\n }\n\n private availableGenders(\n capacity: RegistrationCapacityByGradeGender\n ): Array<{ gender: string; id: string }> {\n if (capacity.gender === 'E' || !this.grades) {\n return [\n { gender: 'Male', id: 'M' },\n { gender: 'Female', id: 'F' },\n { gender: 'Both', id: 'E' },\n ]\n }\n\n const startIndex: number | undefined = this.gradeIndex.get(capacity.startTypeGradeID)\n const stopIndex: number | undefined = this.gradeIndex.get(capacity.stopTypeGradeID)\n\n let maleAvailable = true\n let femaleAvailable = true\n\n if (startIndex !== undefined && stopIndex !== undefined) {\n for (let j = startIndex; j <= stopIndex; j++) {\n const gradeId = this.grades[j]\n const gradeUsage = this.gradeUsages.get(gradeId.grade)\n if (gradeUsage) {\n if (gradeUsage.femaleUsed) {\n femaleAvailable = false\n }\n if (gradeUsage.maleUsed) {\n maleAvailable = false\n }\n }\n }\n }\n\n if (capacity.gender === 'F') {\n femaleAvailable = true\n }\n\n if (capacity.gender === 'M') {\n maleAvailable = true\n }\n\n const genders: Array<{ gender: string; id: string }> = []\n\n if (maleAvailable) {\n genders.push({ gender: 'Male', id: 'M' })\n }\n\n if (femaleAvailable) {\n genders.push({ gender: 'Female', id: 'F' })\n }\n\n if (femaleAvailable && maleAvailable) {\n genders.push({ gender: 'Both', id: 'E' })\n }\n return genders\n }\n}\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!./ManageCapacityRules.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!./ManageCapacityRules.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ManageCapacityRules.vue?vue&type=template&id=a080468c&\"\nimport script from \"./ManageCapacityRules.vue?vue&type=script&lang=ts&\"\nexport * from \"./ManageCapacityRules.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('div',[_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row px-2\"},[_c('div',{staticClass:\"col-md-12\"},[_c('h5',[_vm._v(\"Private Registration Links\")])]),_c('div',{staticClass:\"col-md-12 py-2\"},[_c('simple-grid',{attrs:{\"grid-data\":_vm.internalBypassLinks,\"columns\":_vm.gridColumns,\"show-edit-button\":true,\"show-delete-button\":true},on:{\"editButtonClicked\":_vm.handleEditBottonClicked,\"deleteButtonClicked\":_vm.handleDeleteBottonClicked}})],1),_c('div',{staticClass:\"col-12\"},[_c('edit-bypass-link',{attrs:{\"bypassLink\":_vm.activeBypassLink,\"max-date\":_vm.maxDate,\"upw\":_vm.upw},on:{\"onSave\":_vm.saveBypassLink},model:{value:(_vm.showEditScreen),callback:function ($$v) {_vm.showEditScreen=$$v},expression:\"showEditScreen\"}})],1)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.done}},[_c('save-icon'),_vm._v(\" Close \")],1)])],2),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.toggleModal}},[_vm._v(_vm._s(_vm.manageButtonTitle))])],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('vee-validate-form',{ref:\"form\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar valid = ref.valid;\nvar validated = ref.validated;\nreturn [_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.internalModalIsVisible),callback:function ($$v) {_vm.internalModalIsVisible=$$v},expression:\"internalModalIsVisible\"}},[_c('div',{staticClass:\"row px-2\",staticStyle:{\"height\":\"485px\"}},[_c('div',{staticClass:\"col-md-6 py-2 pb-0\"},[_c('text-input',{attrs:{\"label\":\"URL Suffix\",\"subLabel\":\"(case insensitive)\",\"subLabelInline\":true,\"required\":\"\",\"maxlength\":32,\"subText\":_vm.bypassLinkURL,\"vee-validate-rules\":\"required|alpha_num\"},model:{value:(_vm.internalBypassLink.urlSuffix),callback:function ($$v) {_vm.$set(_vm.internalBypassLink, \"urlSuffix\", $$v)},expression:\"internalBypassLink.urlSuffix\"}}),_c('validation-provider',{attrs:{\"rules\":_vm.startDateRule,\"mode\":\"aggressive\",\"name\":\"Start Date\",\"vid\":\"startDate\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nvar classes = ref.classes;\nvar failedRules = ref.failedRules;\nreturn [_c('date-time-input',{attrs:{\"label\":\"Start\",\"required\":\"\",\"maxDate\":_vm.maxDate},model:{value:(_vm.internalBypassLink.startDate),callback:function ($$v) {_vm.$set(_vm.internalBypassLink, \"startDate\", $$v)},expression:\"internalBypassLink.startDate\"}}),(errors[0])?_c('p',{staticClass:\"inline-error m-0\"},[_vm._v(_vm._s(errors[0]))]):_vm._e()]}}],null,true)})],1),_c('div',{staticClass:\"col-md-6 py-2 pb-0\"},[_c('number-input',{attrs:{\"label\":\"Max Number of Usages\",\"showSpinButton\":true,\"subText\":\"Set to 0 for unlimited usage\",\"vee-validate-rules\":\"between:0,250|required\"},model:{value:(_vm.internalBypassLink.maxUsages),callback:function ($$v) {_vm.$set(_vm.internalBypassLink, \"maxUsages\", $$v)},expression:\"internalBypassLink.maxUsages\"}}),_c('validation-provider',{attrs:{\"rules\":_vm.endDateRule,\"mode\":\"aggressive\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nvar classes = ref.classes;\nvar failedRules = ref.failedRules;\nreturn [_c('date-time-input',{attrs:{\"label\":\"End\",\"required\":\"\",\"maxDate\":_vm.maxDate},model:{value:(_vm.internalBypassLink.endDate),callback:function ($$v) {_vm.$set(_vm.internalBypassLink, \"endDate\", $$v)},expression:\"internalBypassLink.endDate\"}}),(errors[0])?_c('p',{staticClass:\"inline-error m-0\"},[_vm._v(_vm._s(errors[0]))]):_vm._e()]}}],null,true)}),_c('div',{staticClass:\"pt-6\"},[_c('checkbox-input',{attrs:{\"label\":\"Ignore Capacity Rules\",\"showHelp\":true},on:{\"helpClicked\":function($event){_vm.showignoreCapacityRulesHelp = true}},model:{value:(_vm.internalBypassLink.ignoreCapacityRules),callback:function ($$v) {_vm.$set(_vm.internalBypassLink, \"ignoreCapacityRules\", $$v)},expression:\"internalBypassLink.ignoreCapacityRules\"}}),_c('checkbox-input',{attrs:{\"label\":\"Active\"},model:{value:(_vm.internalBypassLink.active),callback:function ($$v) {_vm.$set(_vm.internalBypassLink, \"active\", $$v)},expression:\"internalBypassLink.active\"}})],1)],1)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":!valid},on:{\"click\":_vm.done}},[_c('save-icon'),_vm._v(\" Save \")],1)])],2),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.showModal}},[_vm._v(\"Add New Link\")])]}}])}),_c('modal',{attrs:{\"title\":\"HELP: Ignore Capacity Rules\",\"is-small\":true},model:{value:(_vm.showignoreCapacityRulesHelp),callback:function ($$v) {_vm.showignoreCapacityRulesHelp=$$v},expression:\"showignoreCapacityRulesHelp\"}},[_c('div',{staticClass:\"p-5\"},[_vm._v(\" If this option is set to YES, participants will be allowed to register using this link REGARDLESS of the capacity rules defined. \")])])],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\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport NumberInput from '@/elements/NumberInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport DateTimeInput from '@/elements/DateTimeInput.vue'\nimport { LeagueRegistrationBypassLink } from '@/GeneratedTypes/LeagueRegistrationBypassLink'\nimport { SaveIcon } from '@/elements/Icons'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nimport { ValidationProvider } from 'vee-validate'\nimport dayjs from 'dayjs'\n\n@Component({\n components: {\n Modal,\n TextInput,\n NumberInput,\n CheckboxInput,\n DateTimeInput,\n SaveIcon,\n VeeValidateForm,\n ValidationProvider,\n },\n})\nexport default class EditBypassLink extends Vue {\n private internalBypassLink: LeagueRegistrationBypassLink = this.defaultBypassLink()\n\n private internalModalIsVisible = false\n private modalTitle = 'Edit Private Registration Link'\n private bypassLinkURL = ''\n\n @Prop({ required: false })\n private readonly bypassLink!: LeagueRegistrationBypassLink | null\n\n @Prop({ required: false, default: false })\n private value = false\n\n @Prop({ required: true })\n private readonly maxDate!: Date\n\n @Prop({ required: true })\n private readonly upw!: string | null\n\n private showignoreCapacityRulesHelp = false\n\n @Watch('internalModalIsVisible')\n private onInternalModalIsVisibleChanged() {\n this.$emit('input', this.internalModalIsVisible)\n this.$emit('change', this.internalModalIsVisible)\n }\n\n @Watch('value')\n private onModalVisibilityChanged() {\n if (this.internalModalIsVisible !== this.value) {\n this.internalModalIsVisible = this.value\n }\n }\n\n private mounted() {\n this.internalModalIsVisible = this.value\n if (this.bypassLink) {\n this.internalBypassLink = this.bypassLink\n }\n this.setBypassLinkURL()\n }\n\n private get upwURL() {\n return this.upw == null || this.upw == '' ? '{Your LeagueID}' : this.upw\n }\n\n private get startDateRule() {\n return 'required|date_before:' + dayjs(this.maxDate).format('MM/DD/YYYY')\n }\n\n private get endDateRule() {\n return 'required|date_after_target:@startDate|date_before:' + dayjs(this.maxDate).format('MM/DD/YYYY')\n }\n\n @Watch('internalBypassLink.urlSuffix')\n private setBypassLinkURL() {\n this.bypassLinkURL =\n this.internalBypassLink.urlSuffix && this.internalBypassLink.urlSuffix != ''\n ? `${process.env.VUE_APP_PARTICIPANT_REGISTRATION_DOMAIN}${this.upwURL}/c/${this.internalBypassLink.urlSuffix}`\n : ''\n }\n\n private done() {\n this.$emit('onSave', this.internalBypassLink)\n this.toggleModal()\n }\n\n private cancel() {\n this.toggleModal()\n }\n\n private toggleModal() {\n this.internalModalIsVisible = !this.internalModalIsVisible\n }\n\n private showModal() {\n this.internalBypassLink = this.defaultBypassLink()\n this.internalModalIsVisible = true\n }\n\n @Watch('bypassLink')\n private updateBypassLink() {\n this.internalBypassLink = this.bypassLink || this.defaultBypassLink()\n this.setBypassLinkURL()\n }\n\n private defaultBypassLink(): LeagueRegistrationBypassLink {\n return {\n bypassLinkID: 0,\n urlSuffix: '',\n startDate: null,\n endDate: null,\n maxUsages: 0,\n numberOfUsages: 0,\n ignoreCapacityRules: false,\n active: true,\n } as LeagueRegistrationBypassLink\n }\n}\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!./EditBypassLink.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!./EditBypassLink.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditBypassLink.vue?vue&type=template&id=607af257&\"\nimport script from \"./EditBypassLink.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditBypassLink.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport uuid from 'uuid'\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport EditBypassLink from '@/components/EditBypassLink.vue'\nimport { LeagueRegistrationBypassLink } from '@/GeneratedTypes/LeagueRegistrationBypassLink'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '../models/Grid/GridColumn'\nimport { SaveIcon } from '@/elements/Icons'\nimport dayjs from 'dayjs'\n\n@Component({\n components: {\n Modal,\n TextInput,\n EditBypassLink,\n SimpleGrid,\n SaveIcon,\n },\n})\nexport default class ManageBypassLinks extends Vue {\n private readonly guid = uuid.v4()\n private modalIsVisible = false\n private defaultManageButtonTitle = 'Manage Private Registration Links'\n private manageButtonTitle = this.defaultManageButtonTitle\n private modalTitle = 'Manage Private Registration Links'\n private wasCancelled = false\n private showEditScreen = false\n private activeBypassLink: LeagueRegistrationBypassLink | null = null\n\n public get gridId() {\n return `grid-${this.guid}`\n }\n\n @Prop({ required: true })\n private readonly bypassLinks!: LeagueRegistrationBypassLink[] | null\n\n @Prop({ required: true })\n private readonly maxDate!: Date | null\n\n @Prop({ required: true })\n private readonly upw!: string | null\n\n private gridColumns: GridColumn[] = [\n {\n field: 'urlSuffix',\n headerText: 'URL Suffix',\n textAlign: '',\n width: 0,\n format: '',\n customRender: this.renderURLSuffix,\n } as GridColumn,\n {\n field: 'startDate',\n headerText: 'Start Date',\n textAlign: '',\n width: 0,\n format: '',\n customRender: this.renderDate,\n } as GridColumn,\n {\n field: 'endDate',\n headerText: 'End Date',\n textAlign: '',\n width: 0,\n format: '',\n customRender: this.renderDate,\n } as GridColumn,\n {\n field: 'maxUsages',\n headerText: 'Max Usages',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'numberOfUsages',\n headerText: '# of Usages',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'ignoreCapacityRules',\n headerText: 'Ignore Capacity Rules',\n textAlign: 'center',\n width: 0,\n format: '',\n customRender: this.renderIgnore,\n } as GridColumn,\n {\n field: 'active',\n headerText: 'Active',\n textAlign: 'center',\n width: 0,\n format: '',\n customRender: this.renderActive,\n } as GridColumn,\n ]\n\n private internalBypassLinks: LeagueRegistrationBypassLink[] = []\n\n @Watch('modalIsVisible')\n private onModalVisibilityChanged() {\n this.wasCancelled = false\n }\n\n @Watch('internalBypassLinks.length')\n private onInternalBypassLinksChanged() {\n this.manageButtonTitle = `${this.defaultManageButtonTitle} ${\n this.internalBypassLinks.length > 0 ? '(' + this.internalBypassLinks.length + ')' : ''\n }`\n }\n\n private done() {\n this.$emit('onSave', this.bypassLinks)\n this.toggleModal()\n }\n\n private toggleModal() {\n this.modalIsVisible = !this.modalIsVisible\n }\n\n private mounted() {\n if (this.bypassLinks) {\n this.internalBypassLinks = this.bypassLinks\n } else {\n this.internalBypassLinks = []\n }\n }\n\n private saveBypassLink(bypassLink: LeagueRegistrationBypassLink) {\n if (bypassLink.bypassLinkID === 0) {\n bypassLink.bypassLinkID = -1 * (this.bypassLinks!.length + 1)\n this.bypassLinks?.push(bypassLink)\n this.internalBypassLinks = this.bypassLinks!\n }\n\n this.activeBypassLink = null\n }\n\n private handleEditBottonClicked(entity: any) {\n this.activeBypassLink = entity\n this.showEditScreen = true\n }\n\n private handleDeleteBottonClicked(entity: any) {\n const index = this.internalBypassLinks.indexOf(entity)\n if (index < 0) {\n return\n }\n\n this.internalBypassLinks.splice(index, 1)\n }\n\n private renderActive(value: any) {\n if (value) {\n return '
Yes
'\n }\n return '
No
'\n }\n\n private renderIgnore(value: any) {\n if (value) {\n return '
Yes
'\n }\n return '
No
'\n }\n\n private renderDate(value: Date) {\n return dayjs(value).format('M/D/YY h:mm a')\n }\n\n private renderURLSuffix(value: string) {\n let retval = value\n if (this.upw) {\n const bypassLink = this.internalBypassLinks.find((x) => x.urlSuffix == value)\n if (bypassLink && bypassLink.bypassLinkID > 0) {\n const url = `${process.env.VUE_APP_PARTICIPANT_REGISTRATION_DOMAIN}${this.upw}/c/${value}`\n retval = `${value}`\n }\n }\n\n return retval\n }\n}\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!./ManageBypassLinks.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!./ManageBypassLinks.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ManageBypassLinks.vue?vue&type=template&id=125095fc&\"\nimport script from \"./ManageBypassLinks.vue?vue&type=script&lang=ts&\"\nexport * from \"./ManageBypassLinks.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ManageBypassLinks.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport CampSetupMixin from '@/views/Camps/CampSetupMixin'\nimport SetupCompleteConfirmation from '@/components/SetupCompleteConfirmation.vue'\nimport * as authorizationStore from '@/store/authorization'\n\nimport Loading from '@/elements/Loading.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport DateTimeInput from '@/elements/DateTimeInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport EFTAuthorizationRequestModal from '@/components/EFTAuthorizationRequestModal.vue'\nimport { EFTRequestStatus } from '@/models/Partner/EFTRequestStatus'\nimport partnersClient from '@/clients/partnersClient'\nimport * as campsStore from '@/store/camps'\nimport { Action, Getter } from 'vuex-class'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { Camp } from '@/GeneratedTypes/Camp'\nimport ManageDiscountCodes from '@/components/ManageDiscountCodes.vue'\nimport ManageCapacityRules from '@/components/ManageCapacityRules.vue'\nimport ManageBypassLinks from '@/components/ManageBypassLinks.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport { getGradeUsage, GradeUsage } from '@/services/gradeService'\nimport { getDateWithTime } from '@/lib/support/utilities/time/time.ts'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport store from '@/store'\nimport Modal from '@/components/Modal.vue'\n\n@Component({\n components: {\n Loading,\n TextInput,\n DateTimeInput,\n CheckboxInput,\n MemoInput,\n YesNoInput,\n InputLabel,\n CurrencyInput,\n SetupCompleteConfirmation,\n ManageDiscountCodes,\n ManageCapacityRules,\n ManageBypassLinks,\n IntegerInput,\n SaveContinueButton,\n HtmlEditor,\n EFTAuthorizationRequestModal,\n Modal,\n },\n})\nexport default class Registration extends Mixins(CampSetupMixin) {\n @Action(campsStore.actionNames.create, { namespace: campsStore.namespace })\n private readonly create!: ({ item }: { item: Camp }) => Promise\n\n @Getter(authorizationStore.getterNames.firstAccountNumber, { namespace: authorizationStore.namespace })\n private accountNumber!: string\n\n // TODO Where do these hook into the league object\n private hasMultiChildDiscount = false\n private modalIsVisible = false\n private maxNumberOfRegistrations = 0\n private showManageCapactiy = false\n private capacityMessage = ''\n private newId = ''\n private eftBankAcctLast4 = ''\n private onlineRegistrationBeginDate: Date | null = null\n private onlineRegistrationEndDate: Date | null = null\n private registrationLoaded = false\n private eftModalIsVisible = false\n private eftStatus: EFTRequestStatus | null = null\n private showCreditCardHelp = false\n\n get isGlobalPartner(): boolean {\n return (this.camp.accounts && this.camp.accounts[0].accountNumber.startsWith('G')) ?? false\n }\n\n get partner() {\n return store.getters.partners.partnerInfo\n }\n\n get ccEnabled() {\n //for some reason this doesn't work\n //return this.eftBankAcctLast4 && this.eftBankAcctLast4 != ''\n if (this.eftBankAcctLast4 && this.eftBankAcctLast4 != '') {\n return true\n } else {\n return false\n }\n }\n\n async mounted() {\n this.afterSaveNew = this.afterSaveNewMethod\n this.beforeSave = this.beforeSaveProcessing\n\n this.eftStatus = await partnersClient.getEFTRequestStatus(this.accountNumber)\n\n if (this.camp.registrationInfo) {\n this.camp.registrationInfo.allowSizingEntry = true\n }\n\n this.hasMultiChildDiscount =\n this.camp.registrationInfo != null &&\n (this.camp.registrationInfo.twoChildDiscountAmount > 0 ||\n this.camp.registrationInfo.threeChildDiscountAmount > 0 ||\n this.camp.registrationInfo.fourOrMoreChildDiscountAmount > 0)\n\n this.showManageCapactiy =\n ((this.camp.programs &&\n this.camp.programs[0].registrationCapacitiesByGradeGender &&\n this.camp.programs[0].registrationCapacitiesByGradeGender.length > 0) ||\n (this.camp.programs && this.camp.programs[0].capacity > 0)) ??\n false\n\n if (this.camp.registrationInfo?.onlineRegistrationBeginDate) {\n this.onlineRegistrationBeginDate = this.camp.registrationInfo?.onlineRegistrationBeginDate\n }\n\n if (this.camp.registrationInfo?.onlineRegistrationEndDate) {\n this.onlineRegistrationEndDate = this.camp.registrationInfo?.onlineRegistrationEndDate\n } else if (this.camp.registrationEndDate) {\n this.onlineRegistrationEndDate = getDateWithTime(this.camp.registrationEndDate, 23, 59, 59)\n }\n\n if (\n this.camp.registrationInfo &&\n !this.camp.registrationInfo.onlineRegistrationBeginDate &&\n this.camp.registrationBeginDate\n ) {\n this.camp.registrationInfo.onlineRegistrationBeginDate = getDateWithTime(\n this.camp.registrationBeginDate,\n 0,\n 0,\n 0\n )\n }\n\n this.capacityMessage = this.camp.programs ? this.camp.programs[0].capacityMessage ?? '' : ''\n\n if (\n this.camp.registrationInfo &&\n !this.camp.registrationInfo.contactLine1 &&\n this.camp.partnerContact?.firstName\n ) {\n this.camp.registrationInfo.contactLine1 = `${this.camp.partnerContact.firstName} ${this.camp.partnerContact.lastName}`\n }\n\n if (\n this.camp.registrationInfo &&\n !this.camp.registrationInfo.contactLine4 &&\n this.camp.partnerContact?.primaryPhoneNumber\n ) {\n this.camp.registrationInfo.contactLine4 = this.camp.partnerContact.primaryPhoneNumber\n }\n\n if (\n this.camp.registrationInfo &&\n !this.camp.registrationInfo.contactLine5 &&\n this.camp.partnerContact?.emailAddress\n ) {\n this.camp.registrationInfo.contactLine5 = this.camp.partnerContact.emailAddress\n }\n\n if (this.camp && this.camp.accounts && this.camp.accounts.length > 0) {\n if (this.accountNumber) {\n this.eftBankAcctLast4 = this.partner?.eftBankAcctLast4 ?? ''\n\n if (this.camp.registrationInfo && !this.camp?.registrationInfo.contactLine2) {\n this.camp.registrationInfo.contactLine2 = `${this.partner?.address1_Line1} ${this.partner?.address1_Line2}`\n }\n\n if (this.camp.registrationInfo && !this.camp?.registrationInfo.contactLine3) {\n this.camp.registrationInfo.contactLine3 = `${this.partner?.address1_City}, ${this.partner?.address1_StateOrProvince} ${this.partner?.address1_PostalCode}`\n }\n }\n }\n\n if (this.camp && this.camp.registrationInfo && (this.isGlobalPartner || !this.ccEnabled)) {\n this.camp.registrationInfo.allowCreditCard = false\n }\n\n if (this.camp.upwardLeagueID) {\n this.nextRoute = '/'\n }\n\n this.registrationLoaded = true\n }\n\n // eslint-disable-next-line require-await\n private async beforeSaveProcessing() {\n if (this.camp.registrationInfo && this.onlineRegistrationBeginDate) {\n this.camp.registrationInfo.onlineRegistrationBeginDate = this.onlineRegistrationBeginDate\n }\n if (this.camp.registrationInfo && this.onlineRegistrationEndDate) {\n this.camp.registrationInfo.onlineRegistrationEndDate = this.onlineRegistrationEndDate\n }\n if (!this.showManageCapactiy && this.camp && this.camp.programs) {\n this.capacityMessage = ''\n for (let i = 0; i < this.camp.programs.length; i++) {\n this.camp.programs[i].capacity = 0\n this.camp.programs[i].capacityMessage = ''\n this.camp.programs[i].registrationCapacitiesByGradeGender = []\n }\n }\n }\n\n private async afterSaveNewMethod() {\n const savedCamp = await this.create({ item: this.camp })\n if (savedCamp) {\n this.newId = savedCamp.upwardLeagueID ?? ''\n }\n this.modalIsVisible = true\n }\n\n private onModalStateChange() {\n this.$router.push(`/programs/camp/${this.storeCamp.upwardLeagueID}/setup/information`)\n }\n\n get showAccessCode(): boolean {\n return this.eftStatus?.status != 'declined' && this.eftStatus?.status != 'voided' && this.accessCode != ''\n }\n\n get accessCode(): string {\n return this.eftStatus?.accessCode ?? ''\n }\n\n get envStatus(): string {\n return this.eftStatus?.status ?? ''\n }\n\n private async eftAuthSent() {\n this.eftModalIsVisible = false\n this.eftStatus = await partnersClient.getEFTRequestStatus(this.accountNumber)\n }\n\n private getCampGradesList(): GradeUsage[] {\n if (this.camp.programs && this.camp.programs.length > 0) {\n const typeProgramId = this.camp.programs[0].typeProgramID\n\n return getGradeUsage(this.camp, typeProgramId)\n }\n return []\n }\n\n @Watch('camp.programs', { immediate: true, deep: true })\n private addCapacityMessage() {\n const message = this.camp.programs ? this.camp.programs[0].capacityMessage ?? this.capacityMessage : ''\n this.updateCapacityMessage(message)\n }\n\n @Watch('capacityMessage')\n private addCapacityMessageWhenCapacityMessageUpdated() {\n this.updateCapacityMessage()\n }\n\n @Watch('showManageCapactiy')\n private setDirty() {\n if (this.registrationLoaded) {\n this.setIsDirty({ isDirty: true })\n }\n }\n\n private updateCapacityMessage(m?: string) {\n const message = m ?? this.capacityMessage\n if (this.camp.programs && this.camp.programs[0].registrationCapacitiesByGradeGender) {\n this.camp.programs[0].capacityMessage = message\n for (const rcbgg of this.camp.programs[0].registrationCapacitiesByGradeGender) {\n rcbgg.capacityMessage = message\n }\n }\n }\n}\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!./Registration.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!./Registration.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Registration.vue?vue&type=template&id=df26071a&scoped=true&\"\nimport script from \"./Registration.vue?vue&type=script&lang=ts&\"\nexport * from \"./Registration.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Registration.vue?vue&type=style&index=0&id=df26071a&lang=scss&scoped=true&\"\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 \"df26071a\",\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('div',{staticClass:\"mb-5 pb-5\"},[(!_vm.initialLoadDone)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('loading')],1)]):_vm._e(),(_vm.initialLoadDone)?_c('div',[_c('h5',[_vm._v(\"Program Information\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Camp Name\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.leagueName))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" Participating - Boys\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.boyGrades[0])+\" - \"+_vm._s(_vm.boyGrades[_vm.boyGrades.length - 1]))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" Participating - Girls\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.girlGrades[0])+\" - \"+_vm._s(_vm.girlGrades[_vm.girlGrades.length - 1]))])]),_c('div',[_c('div',{staticClass:\"tag pt-2\"},[_vm._v(\"Ministry Objectives\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.camp.programMissionObjective)}})]),_c('div',[_c('div',{staticClass:\"tag pt-2\"},[_vm._v(\"League Finder Message\")]),(_vm.camp.leagueFinderMessage)?_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.camp.leagueFinderMessage)}}):_vm._e()]),_c('h5',[_vm._v(\"Registration Information\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Receiving Registration from\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.registrationOption.registrationTypes.includes('online') ? 'Online' : '')+_vm._s(_vm.registrationOption.registrationTypes.length > 1 ? ', ' : '')+_vm._s(_vm.registrationOption.registrationTypes.includes('paper') ? 'Mail / In Person / Brochure' : '')+\" \")])]),(_vm.camp.playerUDFs.length || _vm.getCoachUdfList().length)?_c('div',{staticClass:\"tag\"},[_vm._v(\" Additional Participant Information \")]):_vm._e(),(_vm.camp.playerUDFs.length)?_c('div',{staticClass:\"px-4 pb-3 mt-2 border callout shadow-sm\"},[_c('h6',[_vm._v(\"Participant UDFs\")]),_vm._l((_vm.camp.playerUDFs),function(item,key){return _c('div',{key:item.udfid,staticClass:\"px-4\"},[_c('div',{staticClass:\"tag\"},[_vm._v(\"Field \"+_vm._s(item.sortOrder))]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(item.label)+\" \")])])})],2):_vm._e(),(_vm.getCoachUdfList().length)?_c('div',{staticClass:\"px-4 pb-3 mt-2 border callout shadow-sm\"},[_c('h6',[_vm._v(\"Coach UDFs\")]),_vm._l((_vm.getCoachUdfList()),function(item,key){return _c('div',{key:item.udfid,staticClass:\"px-4\"},[_c('div',{staticClass:\"tag\"},[_vm._v(\"Field \"+_vm._s(item.sortOrder))]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(item.label)+\" \")])])})],2):_vm._e(),_c('h5',[_vm._v(\"Key Dates & Places\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Registration Begins\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.camp.registrationBeginDate,'MMM dd, yyyy')))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Early Registration Ends\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.camp.lateDate,'MMM dd, yyyy')))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Registration Deadline\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.camp.registrationEndDate,'MMM dd, yyyy')))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Camp Starts\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.camp.campStartDate,'MMM dd, yyyy')))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Camp Ends\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.camp.campEndDate,'MMM dd, yyyy')))])]),_c('h5',[_vm._v(\"Leadership\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Camp Director\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.partnerContact.firstName)+\" \"+_vm._s(_vm.camp.partnerContact.lastName))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Primary Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.partnerContact.primaryPhoneNumber))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Secondary Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.partnerContact.secondaryPhoneNumber))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Alternate Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.partnerContact.alternatePhoneNumber))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Email\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.partnerContact.email))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Years Experience\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.partnerContact.yearsExperience))])]),_c('h5',[_vm._v(\"Partnership\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Church Partnership Arrangement\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.accounts.length)+\" church, one camp\")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Number of Churches\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.accounts.length))])]),_vm._l((_vm.camp.accounts),function(item,index){return _c('div',{key:item.accountNumber,staticClass:\"px-4 pb-3 mt-2 border callout shadow-sm\"},[_c('h6',[_vm._v(\"Church Partner \"+_vm._s(index + 1))]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Name\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(item.accountNumber))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Is a host church\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(item.campOwner ? 'Yes' : 'No'))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Boy \"+_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" participating\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.getGradeString(item, true)))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Girl \"+_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" participating\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.getGradeString(item, false)))])])])}),_c('h5',[_vm._v(\"Pricing\")]),_vm._l((_vm.camp.programs),function(item,index){return _c('div',{key:item.typeProgramID},[(_vm.hasEarlyRegistration)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Early Registration Fee\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(item.earlyRegistrationFee)))])]):_vm._e(),_c('div',{staticClass:\"tag\"},[_vm._v(\"Registration Fee\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(item.registrationFee)))])])}),_c('h5',[_vm._v(\"Online Registration\")]),(!_vm.camp.registrationInfo)?[_c('div',{staticClass:\"tag\"},[_vm._v(\"No online registration\")])]:[_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Start Date / Time\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.camp.registrationInfo.onlineRegistrationBeginDate,'MMM dd, yyyy h:mm a'))+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"End Date / Time\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.camp.registrationInfo.onlineRegistrationEndDate,'MMM dd, yyyy h:mm a'))+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Payment Options\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.camp.registrationInfo.allowCreditCard ? 'Credit Card' : '')+\" \"+_vm._s(_vm.camp.registrationInfo.allowCreditCard && _vm.camp.registrationInfo.allowPayLater ? '|' : '')+\" \"+_vm._s(_vm.camp.registrationInfo.allowPayLater ? 'Pay in person by cash or check' : '')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Asking for product size\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.registrationInfo.allowSizingEntry ? 'Yes' : 'No'))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Offering multi-child discount\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.camp.registrationInfo != null && (_vm.camp.registrationInfo.twoChildDiscountAmount > 0 || _vm.camp.registrationInfo.threeChildDiscountAmount > 0 || _vm.camp.registrationInfo.fourOrMoreChildDiscountAmount > 0) ? 'Yes' : 'No')+\" \")]),(\n _vm.camp.registrationInfo != null &&\n (_vm.camp.registrationInfo.twoChildDiscountAmount > 0 ||\n _vm.camp.registrationInfo.threeChildDiscountAmount > 0 ||\n _vm.camp.registrationInfo.fourOrMoreChildDiscountAmount > 0)\n )?_c('div',{staticClass:\"pb-4\"},[_c('div',{staticClass:\"px-4 pb-0 mt-0 border callout shadow-sm\"},[(_vm.camp.registrationInfo.twoChildDiscountAmount > 0)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Second child discount amount:\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.camp.registrationInfo.twoChildDiscountAmount)))])]):_vm._e(),(_vm.camp.registrationInfo.threeChildDiscountAmount > 0)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Third child discount amount:\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.camp.registrationInfo.threeChildDiscountAmount)))])]):_vm._e(),(_vm.camp.registrationInfo.fourChildDiscountAmount > 0)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Fourth child discount amount:\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.camp.registrationInfo.fourChildDiscountAmount)))])]):_vm._e()])]):_vm._e()]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Allowing Discount Codes?\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.camp.registrationInfo.allowDiscountCodes ? 'Yes' : 'No')+\" \")])]),(_vm.camp.registrationInfo.allowDiscountCodes)?_c('div',{staticClass:\"pb-4\"},[_c('div',{staticClass:\"px-4 pb-0 mt-0 border callout shadow-sm\"},[_c('div',{staticClass:\"pt-1 tag\"},[_vm._v(\"Discount Details\")]),_c('div',[_c('div',{staticClass:\"mt-5\"},[_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',_vm._l((_vm.camp.registrationInfo.discountCodes),function(item,index){return _c('tr',{key:item.id},[_c('td',[_vm._v(_vm._s(item.discountCode))]),_c('td',[_vm._v(_vm._s(item.description))]),_c('td',[_vm._v(_vm._s(item.discountAmount))]),_c('td',[_vm._v(_vm._s(item.maxUsages))]),_c('td',[_vm._v(_vm._s(item.numberOfUsages))])])}),0)])])])])]):_vm._e(),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Accepting Donations\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.camp.registrationInfo.allowDonations ? 'Yes' : 'No'))])]),_vm._l((_vm.camp.programs),function(item,index){return _c('div',{key:item.typeProgramID + '_capacity'},[(item.capacity && item.capacity > 0)?_c('div',[_c('div',[_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Capacity Limit\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(item.capacity))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Capacity Message\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(item.capacityMessage)}})]),_c('div',[_c('div',{staticClass:\"tag pt-2\"},[_vm._v(\"Gender/\"+_vm._s(_vm.isByAge ? 'Age' : 'Grade')+\" Capacity Rules\")]),(\n !item.registrationCapacitiesByGradeGender ||\n item.registrationCapacitiesByGradeGender.length == 0\n )?_c('div',{staticClass:\"data\"},[_vm._v(\" None \")]):_c('div',{staticClass:\"col-xl-12\"},[_c('div',[_c('table',{staticClass:\"table\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Start \"+_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('th',[_vm._v(\"End \"+_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('th',[_vm._v(\"Gender\")]),_c('th',[_vm._v(\"Capacity\")])])]),_c('tbody',_vm._l((item.registrationCapacitiesByGradeGender),function(rule,index){return _c('tr',{key:rule.id + '_capacityRule'},[_c('td',[_vm._v(_vm._s(_vm.getProperGradeLabel(rule.startTypeGradeID, _vm.isByAge, '')))]),_c('td',[_vm._v(_vm._s(_vm.getProperGradeLabel(rule.stopTypeGradeID, _vm.isByAge, '')))]),(rule.gender == 'F')?_c('td',[_vm._v(\"Female\")]):(rule.gender == 'M')?_c('td',[_vm._v(\"Male\")]):_c('td',[_vm._v(\"Both\")]),_c('td',[_vm._v(_vm._s(rule.capacity))])])}),0)])])])]),_vm._m(1,true)])]):_vm._e()])}),(_vm.camp.registrationInfo.registrationStartMessage)?_c('div',[_c('div',{staticClass:\"tag pt-2\"},[_vm._v(\"Pre-Registration Information\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.camp.registrationInfo.registrationStartMessage)}})]):_vm._e(),(_vm.camp.registrationInfo.confirmationMessage)?_c('div',[_c('div',{staticClass:\"tag pt-2\"},[_vm._v(\"Registration Confirmation Message\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.camp.registrationInfo.confirmationMessage)}})]):_vm._e()]],2):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Code\")]),_c('th',[_vm._v(\"Description\")]),_c('th',[_vm._v(\"Amount\")]),_c('th',[_vm._v(\"Max Usages\")]),_c('th',[_vm._v(\"# of Usages\")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('br'),_c('br'),_c('br')])])}]\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\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { cloneDeep } from 'lodash'\n\nimport CampSetupMixin from '@/views/Camps/CampSetupMixin'\nimport Loading from '@/elements/Loading.vue'\n\nimport { getCoachUdfs } from '@/services/udfService'\nimport { getGradesList, getProperGradeLabel } from '@/services/gradeService'\nimport {\n getProgramRegistrationOption,\n setProgramRegistrationOption,\n RegistrationType,\n} from '@/services/registrationInfoService'\nimport { getGradesListFromAccount } from '@/services/gradeService'\nimport { LeagueAccount } from '@/GeneratedTypes/LeagueAccount.ts'\n\nimport date from '@/filters/date'\nimport properCase from '@/filters/properCase'\nimport currency from '@/filters/currency'\n\n@Component({\n components: {\n Loading,\n },\n filters: {\n date,\n properCase,\n currency,\n },\n methods: {\n getProperGradeLabel,\n },\n})\nexport default class Archive extends Mixins(CampSetupMixin) {\n private girlGrades: string[] = []\n private boyGrades: string[] = []\n private internalPracticeNights: string[] = []\n\n private registrationOption: RegistrationType = { registrationTypes: [], onlineRegistrationType: '' }\n\n private get hasCheer(): boolean {\n return (this.camp.programs && this.camp.programs.length > 1) ?? false\n }\n\n private get typeProgramId(): string {\n if (this.camp.programs && this.camp.programs.length > 0) {\n return this.camp.programs[0].typeProgramID\n }\n return ''\n }\n\n private get hasEarlyRegistration(): boolean {\n const isDate = this.camp.lateDate instanceof Date && !isNaN(this.camp.lateDate.valueOf())\n\n if (isDate) {\n const date = this.camp.lateDate as Date\n return date !== null\n }\n\n return this.camp.lateDate !== null\n }\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n this.setGradesValue()\n this.setRegistrationOption()\n }\n\n private setRegistrationOption() {\n const registrationOption = getProgramRegistrationOption(this.camp)\n\n if (registrationOption !== null) {\n this.registrationOption = registrationOption\n }\n }\n\n @Watch('registrationOption', { deep: true })\n private updateRegistrationOptions() {\n if (this.loading) {\n return\n }\n\n setProgramRegistrationOption(this.camp, this.registrationOption)\n }\n\n private setGradesValue() {\n if (this.camp.programs && this.camp.programs.length > 0) {\n let typeProgramId = this.camp.programs[0].typeProgramID\n this.boyGrades = cloneDeep(getGradesList(this.camp, typeProgramId, 'M')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n this.girlGrades = cloneDeep(getGradesList(this.camp, typeProgramId, 'F')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n }\n }\n\n private getCoachUdfList() {\n return getCoachUdfs(this.camp)\n }\n\n private getGradeString(account: LeagueAccount, isBoys: boolean): string {\n if (account) {\n if (isBoys) {\n const boyGrades = cloneDeep(getGradesListFromAccount(account, this.typeProgramId, 'M')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n return `${boyGrades[0]} - ${boyGrades[boyGrades.length - 1]}`\n }\n const girlGrades = cloneDeep(getGradesListFromAccount(account, this.typeProgramId, 'F')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n return `${girlGrades[0]} - ${girlGrades[girlGrades.length - 1]}`\n }\n return ''\n }\n}\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!./Archive.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!./Archive.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Archive.vue?vue&type=template&id=5d6d5cc3&scoped=true&\"\nimport script from \"./Archive.vue?vue&type=script&lang=ts&\"\nexport * from \"./Archive.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Archive.vue?vue&type=style&index=0&id=5d6d5cc3&lang=scss&scoped=true&\"\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 \"5d6d5cc3\",\n null\n \n)\n\nexport default component.exports","import { RouteConfig } from 'vue-router'\n\nimport { idExpression } from '@/lib/support/router/idHelper'\n\nconst ParticipantsView = () => import('@/views/Programs/Participants/ParticipantsView.vue')\nconst ParticipantsIndex = () => import('@/views/Programs/Participants/ParticipantsIndex.vue')\nconst ParticipantEdit = () => import('@/views/Programs/Participants/ParticipantEdit.vue')\nconst ParticipantsBatchEdit = () => import('@/views/Programs/Participants/ParticipantsBatchEdit.vue')\n\nexport default function (programType: string) {\n programType = programType ?? 'league'\n return [\n {\n path: 'participants',\n component: ParticipantsIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/${programType}/${idExpression}/participants/list`,\n },\n {\n path: 'list',\n component: ParticipantsView,\n name: `list-participant-${programType}`,\n },\n {\n path: 'import',\n component: ParticipantsView,\n name: `import-participant-${programType}`,\n },\n {\n path: 'transfer',\n component: ParticipantsView,\n name: `transfer-participant-${programType}`,\n },\n {\n path: 'edit/:pid',\n component: ParticipantEdit,\n name: `edit-participant-${programType}`,\n },\n {\n path: 'new',\n component: ParticipantEdit,\n name: `new-participant-${programType}`,\n },\n {\n path: 'former',\n component: ParticipantsView,\n name: `former-participant-${programType}`,\n },\n {\n path: 'search',\n component: ParticipantsView,\n name: `search-participant-${programType}`,\n },\n {\n path: 'copy/:pid/:old_league',\n component: ParticipantEdit,\n name: `copy-participant-${programType}`,\n },\n {\n path: 'delete/:pid',\n component: ParticipantsView,\n name: `delete-participant-${programType}`,\n },\n {\n path: 'undelete/:pid',\n component: ParticipantsView,\n name: `un-delete-participant-${programType}`,\n },\n {\n path: 'batch',\n component: ParticipantsBatchEdit,\n },\n ],\n },\n ] as RouteConfig[]\n}\n","import { RouteConfig } from 'vue-router'\n\nconst VolunteerView = () => import('@/views/Programs/Volunteers/VolunteerView.vue')\nconst VolunteersIndex = () => import('@/views/Programs/Volunteers/VolunteersIndex.vue')\nconst VolunteerEdit = () => import('@/views/Programs/Volunteers/VolunteerEdit.vue')\n\nimport { idExpression } from '@/lib/support/router/idHelper'\n\nexport default function (programType: string) {\n programType = programType ?? 'league'\n const routes = [\n {\n path: 'volunteers',\n component: VolunteersIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/${programType}/${idExpression}/volunteers/list/coaches`,\n },\n {\n path: 'list/:type',\n component: VolunteerView,\n name: 'list-volunteer',\n },\n {\n path: 'delete/:type/:vid',\n component: VolunteerView,\n name: 'delete-volunteer',\n },\n {\n path: 'edit/:type/:vid',\n component: VolunteerEdit,\n name: 'edit-volunteer',\n },\n {\n path: 'new/:type',\n component: VolunteerEdit,\n name: 'new-volunteer',\n },\n {\n path: 'search/:type',\n component: VolunteerView,\n name: 'search-volunteer',\n },\n {\n path: 'add-former/:type',\n component: VolunteerView,\n name: 'former-volunteer',\n },\n {\n path: 'copy/:type/:vid',\n component: VolunteerEdit,\n name: 'copy-volunteer',\n },\n {\n path: 'transfer/:type',\n component: VolunteerView,\n name: 'transfer-volunteer',\n },\n ],\n },\n ] as RouteConfig[]\n\n routes[0]?.children?.forEach((r) => (r.name = `${r.name}-${programType}`))\n return routes\n}\n","import { RouteConfig } from 'vue-router'\nimport { idExpression } from '@/lib/support/router/idHelper'\n\nconst History = () => import('@/views/Programs/Communications/History.vue')\nconst Settings = () => import('@/views/Programs/Communications/Settings.vue')\nconst Email = () => import('@/views/Programs/Communications/Email.vue')\nconst Sms = () => import('@/views/Programs/Communications/Sms.vue')\nconst Communications = () => import('@/views/Programs/Communications/Communications.vue')\nconst GroupMessages = () => import('@/views/Programs/Communications/GroupMessages.vue')\nconst Scheduled = () => import('@/views/Programs/Communications/Scheduled.vue')\nconst Failures = () => import('@/views/Programs/Communications/Failures.vue')\nconst TeamPageAlerts = () => import('@/views/Programs/Communications/TeamPageAlerts.vue')\n\nexport default function (programType: string) {\n programType = programType ?? 'league'\n const routes = [\n {\n path: 'communications',\n component: Communications,\n children: [\n {\n path: '/',\n redirect: `/programs/${programType}/${idExpression}/communications/email`,\n },\n {\n path: 'email',\n component: Email,\n },\n {\n path: 'sms',\n component: Sms,\n },\n {\n path: 'failures',\n component: Failures,\n },\n { path: 'groupMessages', component: GroupMessages },\n { path: 'scheduled', component: Scheduled },\n {\n path: 'history',\n component: History,\n },\n { path: 'settings', component: Settings },\n { path: 'teamPageAlerts', component: TeamPageAlerts },\n ],\n },\n ] as RouteConfig[]\n return routes\n}\n","import { RouteConfig } from 'vue-router'\nimport divisions from '@/router/divisions'\nimport scheduling from '@/router/scheduling'\nimport reports from '@/router/reports'\nimport Setup from '@/views/Camps/Setup.vue'\nimport Information from '@/views/Camps/Information.vue'\nimport CampIndex from '@/views/Camps/CampIndex.vue'\nimport KeyDates from '@/views/Camps/KeyDates.vue'\nimport Leadership from '@/views/Camps/Leadership.vue'\nimport Partnership from '@/views/Camps/Partnership.vue'\nimport Products from '@/views/Camps/Products.vue'\nimport Registration from '@/views/Camps/Registration.vue'\nimport resources from './resources'\nimport { idExpression } from '@/lib/support/router/idHelper'\nimport Archive from '@/views/Camps/Archive.vue'\nimport orders from '@/router/orders'\nimport participants from './participants'\nimport volunteers from './volunteers'\nimport communications from './communications'\n\nexport default [\n {\n path: `camp/${idExpression}`,\n component: CampIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/camp/${idExpression}/setup`,\n },\n ...divisions('camp'),\n ...resources('Camp'),\n ...participants('camp'),\n ...orders('camp'),\n ...communications('camp'),\n ...volunteers('camp'),\n {\n path: 'setup',\n component: Setup,\n children: [\n {\n path: '/',\n redirect: `/programs/camp/${idExpression}/setup/information`,\n },\n {\n path: 'information',\n component: Information,\n },\n {\n path: 'dates',\n component: KeyDates,\n },\n {\n path: 'leadership',\n component: Leadership,\n },\n {\n path: 'partnership',\n component: Partnership,\n },\n {\n path: 'products',\n component: Products,\n },\n {\n path: 'registration',\n component: Registration,\n },\n {\n path: 'archive',\n component: Archive,\n },\n ],\n },\n ...scheduling,\n ...reports,\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex flex-row flex-grow-1 bg-light-2\"},[_c('vertical-tabs',{attrs:{\"tabs\":_vm.tabs}}),_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('router-view')],1),_c('ministry-agreement-modal',{attrs:{\"reload\":_vm.reloadMinistryAgreement,\"compareDate\":_vm.storeLeague.seasonEndDate}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\n\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport Modal from '@/components/Modal.vue'\nimport MinistryAgreementModal from '@/components/MinistryAgreementModal.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Setup',\n components: {\n VerticalTabs,\n Loading,\n Modal,\n MinistryAgreementModal,\n },\n setup(props, ctx) {\n const storeLeague = computed(() => store.getters.leagues.currentItem)\n const reloadMinistryAgreement = ref(false)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const baseRoute = computed(() => `/programs/league/${routeId.value}setup`)\n\n const isDigital = computed(() => ctx.root.$route.path.indexOf('digitalleague') > 0)\n\n const tabs = computed(() => {\n if (storeLeague.value && !storeLeague.value.canEdit) {\n return []\n }\n\n if (isDigital.value) {\n return [\n { text: 'Program Information', to: `/programs/digitalleague/${routeId.value}setup/information` },\n ]\n }\n\n const retval = [\n { text: 'Program Information', to: `${baseRoute.value}/information` },\n { text: 'Key Dates', to: `${baseRoute.value}/dates` },\n { text: 'Director', to: `${baseRoute.value}/leadership` },\n { text: 'Partnership', to: `${baseRoute.value}/partnership` },\n { text: 'Build Player Kit', to: `${baseRoute.value}/products` },\n ]\n\n if (storeLeague.value.isOPRLeague) {\n retval.push({ text: 'Online Registration', to: `${baseRoute.value}/registration` })\n }\n\n return retval\n })\n\n onMounted(async () => {\n const archivedRoute = `${baseRoute.value}/archive`\n if (storeLeague.value && !storeLeague.value.canEdit && ctx.root.$route.path !== archivedRoute) {\n await ctx.root.$router.push(archivedRoute)\n } else {\n reloadMinistryAgreement.value = !reloadMinistryAgreement.value\n }\n })\n\n watch(\n () => storeLeague.value.seasonEndDate,\n () => {\n reloadMinistryAgreement.value = !reloadMinistryAgreement.value\n },\n { deep: true }\n )\n\n return {\n tabs,\n reloadMinistryAgreement,\n storeLeague,\n }\n },\n})\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!./Setup.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!./Setup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Setup.vue?vue&type=template&id=055218fe&\"\nimport script from \"./Setup.vue?vue&type=script&lang=ts&\"\nexport * from \"./Setup.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 (!_vm.loading)?_c('alert-cloak',{attrs:{\"type\":_vm.alertTypes,\"uncloak\":_vm.uncloak},scopedSlots:_vm._u([{key:\"head\",fn:function(){return [_c('h4',{staticClass:\"px-4 py-1 mt-5\"},[(_vm.currentLeague && _vm.currentLeague.leagueName)?[_vm._v(\" \"+_vm._s(_vm.currentLeague.leagueName)+\" \"),(!_vm.id)?_c('span',{staticClass:\"badge badge-secondary no-dismiss\"},[_vm._v(\"New\")]):_vm._e()]:[_vm._v(\" New League \")]],2)]},proxy:true}],null,false,3564909376)},[_c('horizontal-tabs',{staticClass:\"underline-split bg-light-1\",attrs:{\"tabs\":_vm.tabs}}),_c('full-body',[_c('router-view')],1)],1):_c('loading',{staticClass:\"m-4\"})}\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\nimport { defineComponent, computed, ref, onUnmounted } from '@vue/composition-api'\n\nimport FullBody from '@/components/FullBody.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport AlertCloak, { AlertCloakTypes } from '@/components/AlertCloak.vue'\n\nimport store from '@/store'\n\nimport { Partner } from '@/models/Partner'\n\nexport default defineComponent({\n name: 'LeagueIndex',\n components: {\n FullBody,\n HorizontalTabs,\n Loading,\n AlertCloak,\n },\n setup(props, ctx) {\n const currentLeague = computed(() => store.getters.leagues.currentItem)\n\n const alertTypes = ref([AlertCloakTypes.PARTNER, AlertCloakTypes.LEAGUE])\n const uncloak = ref(false)\n\n const loading = ref(false)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const isDigital = computed(() => ctx.root.$route.path.indexOf('digitalleague') > 0)\n\n const tabs = computed(() => {\n if (isDigital.value) {\n return [\n { text: 'Setup', to: `/programs/digitalleague/${routeId.value}setup/information` },\n { text: 'Ordering', to: `/programs/digitalleague/${routeId.value}ordering`, disabled: !id.value },\n { text: 'Resources', to: `/programs/digitalleague/${routeId.value}resources`, disabled: !id.value },\n ]\n }\n\n return [\n { text: 'Setup', to: `/programs/league/${routeId.value}setup` },\n { text: 'Participants', to: `/programs/league/${routeId.value}participants`, disabled: !id.value },\n { text: 'Volunteers', to: `/programs/league/${routeId.value}volunteers`, disabled: !id.value },\n {\n text: 'Divisions/Teams',\n to: `/programs/league/${routeId.value}divisions_and_teams`,\n disabled: !id.value,\n },\n { text: 'Scheduling', to: `/programs/league/${routeId.value}scheduling`, disabled: !id.value },\n {\n text: 'Communications',\n to: `/programs/league/${routeId.value}communications`,\n disabled: !id.value,\n },\n isLicenseProgram.value\n ? {}\n : { text: 'Ordering', to: `/programs/league/${routeId.value}ordering`, disabled: !id.value },\n { text: 'Reports', to: `/programs/league/${routeId.value}reports`, disabled: !id.value },\n { text: 'Resources', to: `/programs/league/${routeId.value}resources`, disabled: !id.value },\n ]\n })\n\n onUnmounted(() => {\n store.commit.partners.setPartners({ item: [] as Partner[] })\n store.commit.productFlow.clear()\n store.commit.leagueAbstraction.clear()\n })\n\n //async created hack from https://stackoverflow.com/questions/64117116/how-can-i-use-async-await-in-the-vue-3-0-setup-function-using-typescript\n const run = (asyncFn: () => Promise) => asyncFn()\n\n //private async created() {\n // Reset ministryAgreementSigned so that every time a league\n // is loaded, it's seasonEndDate is checked.\n run(async () => {\n store.commit.authorization.resetMinistryAgreementIsSigned()\n if (ctx.root.$route.params.id) {\n loading.value = true\n await store.dispatch.leagues.retrieveAndSetAsCurrent({ id: ctx.root.$route.params.id })\n await store.dispatch.partners.retrieveAndSetPartners({ id: ctx.root.$route.params.id })\n loading.value = false\n } else {\n // new league, skip alerts\n uncloak.value = true\n }\n })\n //end created\n\n const isLicenseProgram = computed(() => false) //at this time we have no licensing leagues. If this changes, make this data driven from upwardLeagueType (where TypeOpportunityID == 5)\n\n return {\n loading,\n alertTypes,\n id,\n uncloak,\n currentLeague,\n tabs,\n }\n },\n})\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!./LeagueIndex.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!./LeagueIndex.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LeagueIndex.vue?vue&type=template&id=47fcb8b2&\"\nimport script from \"./LeagueIndex.vue?vue&type=script&lang=ts&\"\nexport * from \"./LeagueIndex.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('div',{staticClass:\"pb-4 mb-4\"},[(!_vm.initialLoadDone)?_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col\"},[_c('loading')],1)]):_vm._e(),(_vm.initialLoadDone)?_c('div',[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Name your league\",\"required\":\"\"},model:{value:(_vm.league.leagueName),callback:function ($$v) {_vm.$set(_vm.league, \"leagueName\", $$v)},expression:\"league.leagueName\"}}),(_vm.isUpwardSelect)?_c('text-input',{attrs:{\"label\":\"Enter Sport Name\",\"required\":\"\"},model:{value:(_vm.league.selectSportName),callback:function ($$v) {_vm.$set(_vm.league, \"selectSportName\", $$v)},expression:\"league.selectSportName\"}}):_vm._e(),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col\"},[_c('select-input',{attrs:{\"label\":\"Run League By\",\"required\":\"required\",\"text-property-name\":\"description\",\"value-property-name\":\"value\",\"items-list\":_vm.runLeagueByTypeList},model:{value:(_vm.leagueRunByType),callback:function ($$v) {_vm.leagueRunByType=$$v},expression:\"leagueRunByType\"}})],1),_c('div',{staticClass:\"col\"},[(_vm.leagueRunByType == 'AGE')?_c('date-input',{attrs:{\"label\":\"Cutoff Date\",\"required\":\"\",\"time\":\"00:00:00\",\"min-date\":new Date(_vm.minDate),\"max-date\":new Date(_vm.maxDate),\"show-help\":true},on:{\"helpClicked\":function($event){_vm.cutOffHelpIsVisible = true}},model:{value:(_vm.league.ageCutoffDate),callback:function ($$v) {_vm.$set(_vm.league, \"ageCutoffDate\", $$v)},expression:\"league.ageCutoffDate\"}}):_vm._e(),_c('modal',{attrs:{\"title\":\"HELP: Cutoff Date\",\"is-small\":true},model:{value:(_vm.cutOffHelpIsVisible),callback:function ($$v) {_vm.cutOffHelpIsVisible=$$v},expression:\"cutOffHelpIsVisible\"}},[_c('div',{staticClass:\"p-5\"},[_c('b',[_vm._v(\"Cutoff Date:\")]),_vm._v(\" The cutoff date serves as the system's reference point for calculating a participant's age for the season. For example: if the cutoff date was set to August 1, whatever age the participant is on August 1 determines their league age for the season. \")])])],1)]),_c('grade-gender-selector',{attrs:{\"program\":_vm.league,\"showAges\":_vm.leagueRunByType == 'AGE'},on:{\"changed\":_vm.gradeGenderChange}}),_c('timezone-select',{model:{value:(_vm.league.typeTimezoneID),callback:function ($$v) {_vm.$set(_vm.league, \"typeTimezoneID\", $$v)},expression:\"league.typeTimezoneID\"}}),_c('hr'),_c('div',{staticClass:\"row p-0 m-0\"},[_vm._m(0),(false)?_c('yes-no-input',{staticClass:\"col-sm-12 pl-3 border-left\",attrs:{\"label\":\"Parents to request a coach?\"},model:{value:(_vm.league.allowCoachLinks),callback:function ($$v) {_vm.$set(_vm.league, \"allowCoachLinks\", $$v)},expression:\"league.allowCoachLinks\"}}):_vm._e(),_c('yes-no-input',{staticClass:\"col-sm-12 pl-3 border-left\",attrs:{\"label\":\"Parents to request to link with another player in the same division?\"},model:{value:(_vm.league.allowCarpoolLinks),callback:function ($$v) {_vm.$set(_vm.league, \"allowCarpoolLinks\", $$v)},expression:\"league.allowCarpoolLinks\"}}),(_vm.league.allowCarpoolLinks)?_c('select-input',{staticClass:\"col-sm-12 pl-3 border-left\",attrs:{\"blank-item-value\":\"\",\"blank-item-text\":\"Do not override label\",\"valuePropertyName\":\"carPoolLinkLabelOverride\",\"textPropertyName\":\"carPoolLinkLabelOverride\",\"label\":\"Car Pool Link Label Override\",\"items-list\":_vm.allCarPoolLinkLabelOverrides},model:{value:(_vm.league.carPoolLinkLabelOverride),callback:function ($$v) {_vm.$set(_vm.league, \"carPoolLinkLabelOverride\", $$v)},expression:\"league.carPoolLinkLabelOverride\"}}):_vm._e(),_c('yes-no-input',{staticClass:\"col-sm-12 pl-3 border-left\",attrs:{\"label\":\"Parents to exclude a night their player cannot practice?\"},model:{value:(_vm.league.allowPracticeNightExclusions),callback:function ($$v) {_vm.$set(_vm.league, \"allowPracticeNightExclusions\", $$v)},expression:\"league.allowPracticeNightExclusions\"}}),_c('yes-no-input',{staticClass:\"col-sm-12 pl-3 border-left\",attrs:{\"label\":\"Coaches to request each other?\"},model:{value:(_vm.league.allowAssistantCoachLinks),callback:function ($$v) {_vm.$set(_vm.league, \"allowAssistantCoachLinks\", $$v)},expression:\"league.allowAssistantCoachLinks\"}})],1),_c('hr'),_c('div',{staticClass:\"row p-0 m-0\"},[_c('day-of-week-multi-picker',{staticClass:\"col-sm-12 pl-0\",attrs:{\"label\":\"What Days Will Your League Practice\",\"horizontal\":true,\"required\":true},on:{\"change\":_vm.onInternalPracticeNightsChange},model:{value:(_vm.internalPracticeNights),callback:function ($$v) {_vm.internalPracticeNights=$$v},expression:\"internalPracticeNights\"}}),(!_vm.isUpwardSelect)?_c('yes-no-input',{staticClass:\"col-sm-12 pl-0\",attrs:{\"label\":\"Hide this program from public view on Upward League Finder (play.upward.org)?\"},model:{value:(_vm.league.isPrivate),callback:function ($$v) {_vm.$set(_vm.league, \"isPrivate\", $$v)},expression:\"league.isPrivate\"}}):_vm._e(),_c('yes-no-input',{staticClass:\"col-sm-12 pl-0\",attrs:{\"label\":\"Would you like to opt out of the Fan Gear Store for this program?\",\"subTextWithLink\":\"You will have the standard Upward Fan Gear Store. To create a unique fan gear store, submit your information here.\"},model:{value:(_vm.league.optOutFanGear),callback:function ($$v) {_vm.$set(_vm.league, \"optOutFanGear\", $$v)},expression:\"league.optOutFanGear\"}}),_c('yes-no-input',{staticClass:\"col-sm-12 pl-0\",attrs:{\"label\":\"Would you like to receive equipping resources on background checks and other safety training?\",\"subTextWithLink\":\"We will send you more information on MinistrySafe and InjureFree, two companies that provide background checks and other risk-mitigating training.\"},model:{value:(_vm.league.requestRiskMitigationInfo),callback:function ($$v) {_vm.$set(_vm.league, \"requestRiskMitigationInfo\", $$v)},expression:\"league.requestRiskMitigationInfo\"}})],1)],1),_c('div',{staticClass:\"col-xl-6 pt-3 border-xl-left\"},[_c('h6',[_vm._v(\"Registration Information\")]),_c('switch-slot',{attrs:{\"mode\":\"radio\",\"label\":\"How will you receive registrations?\",\"options\":[\n { text: 'Online - Recommended', value: ['online'] },\n { text: 'In Person', value: ['paper'] },\n { text: 'Both of these', value: ['paper', 'online'] } ]},model:{value:(_vm.registrationOption.registrationTypes),callback:function ($$v) {_vm.$set(_vm.registrationOption, \"registrationTypes\", $$v)},expression:\"registrationOption.registrationTypes\"}},[_c('div',{attrs:{\"slot\":\"paper\"},slot:\"paper\"}),_c('div',{attrs:{\"slot\":\"online\"},slot:\"online\"},[_c('switch-slot',{attrs:{\"mode\":\"radio\",\"label\":\"Online registration vendor\",\"options\":[\n { text: 'Upward', value: 'upward' },\n { text: 'Other', value: 'other' } ]},model:{value:(_vm.registrationOption.onlineRegistrationType),callback:function ($$v) {_vm.$set(_vm.registrationOption, \"onlineRegistrationType\", $$v)},expression:\"registrationOption.onlineRegistrationType\"}},[_c('div',{attrs:{\"slot\":\"upward\"},slot:\"upward\"}),_c('div',{attrs:{\"slot\":\"other\"},slot:\"other\"},[_c('text-input',{attrs:{\"label\":\"Vendor\"},model:{value:(_vm.league.otherRegistrationVendorName),callback:function ($$v) {_vm.$set(_vm.league, \"otherRegistrationVendorName\", $$v)},expression:\"league.otherRegistrationVendorName\"}}),_c('text-input',{staticClass:\"italics-placeholder\",attrs:{\"label\":\"Vendor Registration URL\",\"placeholder\":\"(e.g. https://www.upward.org)\"},model:{value:(_vm.league.leagueRegistrationURL),callback:function ($$v) {_vm.$set(_vm.league, \"leagueRegistrationURL\", $$v)},expression:\"league.leagueRegistrationURL\"}})],1)])],1)]),_c('hr'),_c('h6',[_vm._v(\"Additional Program Information\")]),_c('memo-input',{attrs:{\"label\":\"What are your ministry goals and objectives for this league? This will help us serve you better as you pursue your ministry goals.\",\"required\":\"\"},model:{value:(_vm.league.programMissionObjective),callback:function ($$v) {_vm.$set(_vm.league, \"programMissionObjective\", $$v)},expression:\"league.programMissionObjective\"}}),(!_vm.isUpwardSelect)?_c('html-editor',{attrs:{\"label\":\"Enter a custom message for parents to see on Upward.org league finder.\",\"max-length\":1024,\"show-help\":true},on:{\"helpClicked\":function($event){_vm.helpIsVisible = true}},model:{value:(_vm.league.leagueFinderMessage),callback:function ($$v) {_vm.$set(_vm.league, \"leagueFinderMessage\", $$v)},expression:\"league.leagueFinderMessage\"}}):_vm._e(),_c('modal',{attrs:{\"title\":\"HELP: Upward.org League Finder\",\"is-small\":true},model:{value:(_vm.helpIsVisible),callback:function ($$v) {_vm.helpIsVisible=$$v},expression:\"helpIsVisible\"}},[_c('div',{staticClass:\"p-5\"},[_c('b',[_vm._v(\"Custom Message for League Finder\")]),_vm._v(\" is an area where you can add info like the days practices and games are, where those are being held, and anything else specific about your league. \")])]),(!_vm.isUpwardSelect)?_c('text-input',{staticClass:\"italics-placeholder\",attrs:{\"label\":\"Specify an alternative registration URL on Upward.org league finder.\",\"placeholder\":\"(e.g. https://www.my-church-site.org)\"},model:{value:(_vm.league.leagueFinderURLOverride),callback:function ($$v) {_vm.$set(_vm.league, \"leagueFinderURLOverride\", $$v)},expression:\"league.leagueFinderURLOverride\"}}):_vm._e(),_c('hr'),_c('h6',[_vm._v(\"Ask for additional participant or coach info?\")]),_c('additional-participant-information',{attrs:{\"coach-udfs\":_vm.getCoachUdfList(),\"player-udfs\":_vm.league.playerUDFs},on:{\"onSave\":_vm.saveUdfs}}),_c('hr'),_c('div',{staticClass:\"row\"},[_c('h6',{staticClass:\"col-12 pb-0 mb-0\"},[_vm._v(\"Team Page Management\")]),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide team roster?\"},model:{value:(_vm.league.hideTeamPageRoster),callback:function ($$v) {_vm.$set(_vm.league, \"hideTeamPageRoster\", $$v)},expression:\"league.hideTeamPageRoster\"}}),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide head coach email address?\"},model:{value:(_vm.league.hideCoachEmailOnTeamPage),callback:function ($$v) {_vm.$set(_vm.league, \"hideCoachEmailOnTeamPage\", $$v)},expression:\"league.hideCoachEmailOnTeamPage\"}}),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide head coach phone number?\"},model:{value:(_vm.league.hideCoachPhoneOnTeamPage),callback:function ($$v) {_vm.$set(_vm.league, \"hideCoachPhoneOnTeamPage\", $$v)},expression:\"league.hideCoachPhoneOnTeamPage\"}}),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide assistant coach email address?\"},model:{value:(_vm.league.hideAssistantCoachEmailOnTeamPage),callback:function ($$v) {_vm.$set(_vm.league, \"hideAssistantCoachEmailOnTeamPage\", $$v)},expression:\"league.hideAssistantCoachEmailOnTeamPage\"}}),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide assistant coach phone number?\"},model:{value:(_vm.league.hideAssistantCoachPhoneOnTeamPage),callback:function ($$v) {_vm.$set(_vm.league, \"hideAssistantCoachPhoneOnTeamPage\", $$v)},expression:\"league.hideAssistantCoachPhoneOnTeamPage\"}}),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide Game schedules?\"},model:{value:(_vm.league.hideScheduleOnTeamPage),callback:function ($$v) {_vm.$set(_vm.league, \"hideScheduleOnTeamPage\", $$v)},expression:\"league.hideScheduleOnTeamPage\"}}),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide Practice schedules?\"},model:{value:(_vm.league.hidePracticeScheduleOnTeamPage),callback:function ($$v) {_vm.$set(_vm.league, \"hidePracticeScheduleOnTeamPage\", $$v)},expression:\"league.hidePracticeScheduleOnTeamPage\"}})],1),_c('hr'),_c('div',{staticClass:\"row\"},[_c('h6',{staticClass:\"col-12 pb-0 mb-0\"},[_vm._v(\"Coach App Management\")]),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide team roster?\"},model:{value:(_vm.league.hideRosterOnSportsApp),callback:function ($$v) {_vm.$set(_vm.league, \"hideRosterOnSportsApp\", $$v)},expression:\"league.hideRosterOnSportsApp\"}}),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide Game schedules?\"},model:{value:(_vm.league.hideScheduleOnSportsApp),callback:function ($$v) {_vm.$set(_vm.league, \"hideScheduleOnSportsApp\", $$v)},expression:\"league.hideScheduleOnSportsApp\"}}),_c('yes-no-input',{staticClass:\"col-12\",attrs:{\"label\":\"Hide Practice schedules?\"},model:{value:(_vm.league.hidePracticeScheduleOnSportsApp),callback:function ($$v) {_vm.$set(_vm.league, \"hidePracticeScheduleOnSportsApp\", $$v)},expression:\"league.hidePracticeScheduleOnSportsApp\"}})],1)],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-12 pl-0 pb-0\"},[_c('h6',[_vm._v(\"Registration Requests\")]),_c('p',{staticClass:\"text-muted font-italic small m-0\"},[_vm._v(\" Allowing these requests will impact drafting and balancing teams. \")]),_c('label',{staticClass:\"input-label text-uppercase mt-3 mb-1\"},[_vm._v(\"Would you like to allow:\")])])}]\n\nexport { render, staticRenderFns }","import { Vue, Component } from 'vue-property-decorator'\nimport { cloneDeep } from 'lodash'\nimport * as leaguesStore from '@/store/leagues'\n\nimport { Getter, Action, Mutation } from 'vuex-class'\nimport { League } from '@/GeneratedTypes/League'\nimport { PromptToSavePayload } from '@/models/PromptToSavePayload'\nimport * as promptToSaveStore from '@/store/promptToSave'\n\n@Component({\n beforeRouteLeave(route, redirect, next) {\n const self = this as LeagueSetupMixin\n\n self.onNavigation({\n save: async () => {\n return await self.save()\n },\n continue: () => {\n next()\n },\n } as PromptToSavePayload)\n },\n})\nexport default class LeagueSetupMixin extends Vue {\n protected league = {} as League\n protected initialLoadDone = false\n protected loading = true\n protected nextRoute = ''\n protected beforeSave: null | (() => Promise) = null\n protected afterUpdateExisting: null | (() => Promise | void) = null\n protected afterSaveNew: null | (() => Promise) = null\n\n @Getter(leaguesStore.getterNames.currentItem, { namespace: leaguesStore.namespace })\n protected readonly storeLeague!: League\n\n @Getter(leaguesStore.getterNames.isUpwardSelect, { namespace: leaguesStore.namespace })\n protected readonly isUpwardSelect!: boolean\n\n @Action(leaguesStore.actionNames.cache, { namespace: leaguesStore.namespace })\n private readonly cache!: ({ item }: { item: League }) => boolean\n\n @Action(leaguesStore.actionNames.validate, { namespace: leaguesStore.namespace })\n private readonly validate!: ({ item, ruleSet }: { item: League; ruleSet: string }) => boolean\n\n @Action(leaguesStore.actionNames.loadFromCache, { namespace: leaguesStore.namespace })\n private readonly loadFromCache!: () => boolean\n\n @Action(leaguesStore.actionNames.update, { namespace: leaguesStore.namespace })\n private readonly update!: ({ item }: { item: League }) => boolean\n\n @Mutation(promptToSaveStore.mutationNames.setIsDirty, { namespace: promptToSaveStore.namespace })\n protected readonly setIsDirty!: ({ isDirty }: { isDirty: boolean }) => void\n\n @Action(promptToSaveStore.actionNames.onNavigation, { namespace: promptToSaveStore.namespace })\n private readonly onNavigation!: ({}: PromptToSavePayload) => void\n\n private get isDigital(): boolean {\n return this.$route.path.indexOf('digitalleague') > 0\n }\n\n protected get isByAge() {\n return this.league.ageCutoffDate != null\n }\n\n private get ruleSet() {\n const pathParts = this.$route.path.split('/')\n\n if (!pathParts.length) {\n return ''\n }\n\n const thisPath = pathParts[pathParts.length - 1]\n\n switch (thisPath) {\n case 'information':\n return this.isDigital ? '' : 'PROGRAMINFO'\n case 'dates':\n return 'KEYDATES'\n case 'leadership':\n return 'LEADERSHIP'\n case 'partnership':\n return 'PARTNERSHIP'\n case 'products':\n return 'PRICING'\n default:\n return ''\n }\n }\n\n protected async saveAndContinue() {\n const result = await this.save()\n if (result != false) this.continue()\n }\n\n private async created() {\n this.league = { ...cloneDeep(this.storeLeague) }\n\n if (!this.league.typeLeagueID) {\n try {\n await this.loadFromCache()\n } catch (err) {\n this.$router.push('/programs/new/')\n }\n }\n\n this.loading = false\n this.initialLoadDone = true\n }\n\n protected async save() {\n if (this.beforeSave) {\n const r = await this.beforeSave()\n if (r === false) return false\n }\n\n if (this.league.upwardLeagueID) {\n await this.updateExistingLeague()\n\n if (this.afterUpdateExisting) {\n await this.afterUpdateExisting()\n }\n } else {\n await this.saveNewLeague()\n\n if (this.afterSaveNew) {\n await this.afterSaveNew()\n }\n }\n\n this.setIsDirty({ isDirty: false })\n }\n\n private continue() {\n if (this.nextRoute) {\n this.$router.push(this.nextRoute)\n }\n }\n\n private async saveNewLeague() {\n if (this.league.upwardLeagueID) {\n return\n }\n\n this.loading = true\n try {\n await this.validate({ item: this.league, ruleSet: this.ruleSet })\n await this.cache({ item: this.storeLeague })\n } catch (err) {\n throw err\n } finally {\n this.loading = false\n }\n }\n\n private async updateExistingLeague() {\n if (!this.league.upwardLeagueID) {\n return\n }\n\n this.loading = true\n try {\n await this.update({ item: this.league })\n } catch (err) {\n throw err\n } finally {\n this.loading = false\n }\n }\n\n mounted() {\n this.$nextTick(() => this.$watch('league', this.onLeagueChange, { deep: true }))\n }\n\n private onLeagueChange() {\n this.setIsDirty({ isDirty: true })\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('checkbox-group-input',{attrs:{\"label\":_vm.label,\"required\":_vm.required,\"items-list\":_vm.options,\"value-property-name\":\"value\",\"text-property-name\":\"text\",\"item-class\":\"form-check\",\"horizontal\":_vm.horizontal},on:{\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport CheckboxGroupInput from '@/elements/CheckboxGroupInput.vue'\nimport { isEqual } from 'lodash'\n\nexport default defineComponent({\n name: 'DayOfWeekMultiPicker',\n components: {\n CheckboxGroupInput,\n },\n props: {\n label: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n value: { type: Array as PropType, required: true },\n horizontal: { type: Boolean, default: false, required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n\n const options = ref([\n { value: 'Sunday', text: 'Su' },\n { value: 'Monday', text: 'M' },\n { value: 'Tuesday', text: 'Tu' },\n { value: 'Wednesday', text: 'W' },\n { value: 'Thursday', text: 'Th' },\n { value: 'Friday', text: 'F' },\n { value: 'Saturday', text: 'Sa' },\n ])\n\n function handleChange() {\n if (!isEqual(internalValue.value, props.value)) {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n return {\n internalValue,\n options,\n handleChange,\n }\n },\n})\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!./DayOfWeekMultiPicker.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!./DayOfWeekMultiPicker.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DayOfWeekMultiPicker.vue?vue&type=template&id=6544d37f&\"\nimport script from \"./DayOfWeekMultiPicker.vue?vue&type=script&lang=ts&\"\nexport * from \"./DayOfWeekMultiPicker.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport LeagueSetupMixin from '@/views/Leagues/LeagueSetupMixin'\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport DayOfWeekMultiPicker from '@/elements/DayOfWeekMultiPicker.vue'\nimport GradeGenderSelector, { SelectedGradeGender } from '@/components/GradeGenderSelector.vue'\nimport AdditionalParticipantInformation from '@/components/AdditionalParticipantInformation.vue'\nimport TimezoneSelect from '@/components/TimezoneSelect.vue'\nimport Modal from '@/components/Modal.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\n\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { LeagueVolunteerRoleUDFDefinition } from '@/GeneratedTypes/LeagueVolunteerRoleUDFDefinition'\nimport { LeaguePlayerUDFDefinition } from '@/GeneratedTypes/LeaguePlayerUDFDefinition'\nimport { CarPoolLinkLabelOverrideInfo } from '@/GeneratedTypes/ListInfo/CarPoolLinkLabelOverrideInfo'\nimport leaguesClient from '@/clients/leaguesClient'\nimport { getCoachUdfs, updateUdfs } from '@/services/udfService'\nimport {\n getProgramRegistrationOption,\n setProgramRegistrationOption,\n RegistrationType,\n} from '@/services/registrationInfoService'\nimport { getDateWithTime } from '@/lib/support/utilities/time/time.ts'\nimport dayjs from 'dayjs'\n\nlet useTestData: any = null\nif (process.env.VUE_APP_USE_TEST_DATA == 'YES') {\n import('@/views/Leagues/testData/information').then((x) => (useTestData = x))\n}\n\ninterface RunLeagueByTypeOption {\n description: string\n value: string\n}\n\n@Component({\n components: {\n TextInput,\n SelectInput,\n MemoInput,\n YesNoInput,\n DateInput,\n DayOfWeekMultiPicker,\n SwitchSlot,\n Loading,\n AdditionalParticipantInformation,\n TimezoneSelect,\n Modal,\n GradeGenderSelector,\n SaveContinueButton,\n HtmlEditor,\n },\n})\nexport default class Information extends Mixins(LeagueSetupMixin) {\n private internalPracticeNights: string[] = []\n private helpIsVisible = false\n private gradeGenders = {} as SelectedGradeGender\n private registrationOption: RegistrationType = { registrationTypes: [], onlineRegistrationType: '' }\n private leagueRunByType = 'GRADE'\n private runLeagueByTypeList = [\n { description: 'By Grades', value: 'GRADE' },\n { description: 'By Age', value: 'AGE' },\n ] as RunLeagueByTypeOption[]\n\n protected allCarPoolLinkLabelOverrides:\n | CarPoolLinkLabelOverrideInfo[]\n | null = [] as CarPoolLinkLabelOverrideInfo[]\n private maxDate = ''\n private minDate = ''\n private lastCutoffDate = null as Date | null\n private cutOffHelpIsVisible = false\n\n async mounted() {\n if (useTestData) {\n useTestData.setInformationForNewLeague(this.league)\n }\n this.leagueRunByType = this.league.ageCutoffDate ? 'AGE' : 'GRADE'\n this.maxDate = dayjs(this.league.firstPracticeDate ?? '')\n .add(1, 'year')\n .format('MM/DD/YYYY')\n this.minDate = dayjs(this.league.firstPracticeDate ?? '')\n .subtract(1, 'year')\n .format('MM/DD/YYYY')\n this.lastCutoffDate = this.league.ageCutoffDate\n\n this.allCarPoolLinkLabelOverrides = await leaguesClient.retrieveCarPoolLinkLabelOverride()\n }\n\n gradeGenderChange(gradeGenders: SelectedGradeGender) {\n this.gradeGenders = gradeGenders\n if (this.league.accounts) {\n this.league.accounts[0].grades = gradeGenders.accountGrades\n }\n if (this.league.programs) {\n if (this.league.programs.length > 0) {\n this.league.programs[0].gradesByGender = gradeGenders.sportProgramGrades\n }\n if (this.league.programs.length > 1) {\n this.league.programs[1].gradesByGender = gradeGenders.cheerProgramGrades\n }\n }\n }\n\n @Watch('leagueRunByType')\n private onRunByTypeChange() {\n if (this.leagueRunByType == 'GRADE') {\n this.lastCutoffDate = this.league.ageCutoffDate\n this.league.ageCutoffDate = null\n } else {\n this.league.ageCutoffDate = this.lastCutoffDate //put it back to what it was in case they accidentally changed it\n }\n }\n\n @Watch('league.practiceNights', { immediate: true })\n private onLeaguePracticeNightsChange() {\n this.internalPracticeNights = []\n\n if (!this.league.practiceNights) {\n return\n }\n\n for (const pn of this.league.practiceNights) {\n this.internalPracticeNights.push(pn.typeDayID)\n }\n }\n\n private onInternalPracticeNightsChange() {\n this.league.practiceNights = []\n\n for (const typeDayID of this.internalPracticeNights) {\n this.league.practiceNights.push({\n typeDayID,\n startTime: '00:00:01',\n endTime: '23:59:59',\n })\n }\n }\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n if (this.league.upwardLeagueID) {\n this.nextRoute = `/programs/league/${this.league.upwardLeagueID}/setup/dates`\n } else {\n this.nextRoute = '/programs/league/setup/dates'\n }\n this.setRegistrationOption()\n\n this.beforeSave = this.handleBeforeSave\n }\n\n // eslint-disable-next-line require-await\n private async handleBeforeSave() {\n if (this.league.upwardLeagueID && this.league.isOPRLeague && !this.storeLeague.isOPRLeague) {\n this.league.registrationInfo = {\n allowCreditCard: true,\n allowPayLater: true,\n // Always set the league.registrationInfo.allowSizingEntry to true per 2635\n allowSizingEntry: true,\n allowGeneralNotes: false,\n allowDonations: false,\n allowWaitlist: true,\n onlineRegistrationBeginDate: getDateWithTime(this.league.registrationBeginDate, 0, 0, 0),\n onlineRegistrationEndDate: getDateWithTime(\n this.league.registrationEndDate ?? this.league.firstEvalDate,\n 23,\n 59,\n 59\n ),\n donationExplanation: '',\n registrationStartMessage: '',\n confirmationMessage: '',\n twoChildDiscountAmount: 0,\n threeChildDiscountAmount: 0,\n fourOrMoreChildDiscountAmount: 0,\n allowDiscountCodes: false,\n emailLDOnDiscountCodeUse: false,\n discountCodes: [],\n bypassLinks: [],\n contactLine1: '',\n contactLine2: '',\n contactLine3: '',\n contactLine4: '',\n contactLine5: '',\n }\n this.nextRoute = '/programs/league/setup/registration'\n }\n if (this.league.productOfferingConfig && this.league.programs) {\n const prog0 = this.league.programs[0] //because typescript\n this.league.productOfferingConfig.gradesByGender =\n prog0.gradesByGender?.map((x) => ({\n typeProgramID: prog0.typeProgramID,\n gender: x.gender,\n typeGradeID: x.typeGradeID,\n })) ?? []\n\n if (this.league.programs.length > 1) {\n const prog1 = this.league.programs[1] //because typescript\n this.league.productOfferingConfig.gradesByGender.push(\n ...(prog1.gradesByGender?.map((x) => ({\n typeProgramID: prog1.typeProgramID,\n gender: x.gender,\n typeGradeID: x.typeGradeID,\n })) ?? [])\n )\n }\n }\n }\n\n private setRegistrationOption() {\n const registrationOption = getProgramRegistrationOption(this.league)\n\n if (registrationOption !== null) {\n this.registrationOption = registrationOption\n }\n }\n\n @Watch('registrationOption', { deep: true })\n private updateRegistrationOptions() {\n if (this.loading) {\n return\n }\n\n setProgramRegistrationOption(this.league, this.registrationOption)\n }\n\n private saveUdfs(playerUdfs: LeaguePlayerUDFDefinition[], coachUdfs: LeagueVolunteerRoleUDFDefinition[]) {\n updateUdfs(this.league, playerUdfs, coachUdfs)\n }\n\n private getCoachUdfList() {\n return getCoachUdfs(this.league)\n }\n}\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!./Information.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!./Information.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Information.vue?vue&type=template&id=c8a6ea52&\"\nimport script from \"./Information.vue?vue&type=script&lang=ts&\"\nexport * from \"./Information.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('div',[(!_vm.initialLoadDone)?_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col\"},[_c('loading')],1)]):_vm._e(),(_vm.initialLoadDone)?_c('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Name your league\",\"required\":\"\"},model:{value:(_vm.league.leagueName),callback:function ($$v) {_vm.$set(_vm.league, \"leagueName\", $$v)},expression:\"league.leagueName\"}}),_c('memo-input',{attrs:{\"label\":\"What are your ministry goals and objectives for this league?\",\"required\":\"\"},model:{value:(_vm.league.programMissionObjective),callback:function ($$v) {_vm.$set(_vm.league, \"programMissionObjective\", $$v)},expression:\"league.programMissionObjective\"}}),_c('html-editor',{attrs:{\"label\":\"Enter a custom message for parents to see on Upward.org league finder.\",\"max-length\":1024,\"show-help\":true},on:{\"helpClicked\":function($event){_vm.helpIsVisible = true}},model:{value:(_vm.league.leagueFinderMessage),callback:function ($$v) {_vm.$set(_vm.league, \"leagueFinderMessage\", $$v)},expression:\"league.leagueFinderMessage\"}}),_c('modal',{attrs:{\"title\":\"HELP: Upward.org League Finder\",\"is-small\":true},model:{value:(_vm.helpIsVisible),callback:function ($$v) {_vm.helpIsVisible=$$v},expression:\"helpIsVisible\"}},[_c('div',{staticClass:\"p-5\"},[_c('b',[_vm._v(\"Custom Message for League Finder\")]),_vm._v(\" is an area where you can add info like the days practices and games are, where those are being held, and anything else specific about league. \")])]),_c('text-input',{staticClass:\"italics-placeholder\",attrs:{\"label\":\"Enter a website address for your league or church, so parents can find more information about the experience you provide.\",\"placeholder\":\"(e.g. https://www.upward.org)\"},model:{value:(_vm.league.leagueRegistrationURL),callback:function ($$v) {_vm.$set(_vm.league, \"leagueRegistrationURL\", $$v)},expression:\"league.leagueRegistrationURL\"}}),_c('hr'),_c('h6',[_vm._v(\"Key Dates\")]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6\"},[_c('date-input',{attrs:{\"label\":\"First Evaluation\",\"required\":\"\"},model:{value:(_vm.league.firstEvalDate),callback:function ($$v) {_vm.$set(_vm.league, \"firstEvalDate\", $$v)},expression:\"league.firstEvalDate\"}})],1),_c('div',{staticClass:\"col-md-6\"},[_c('date-input',{attrs:{\"label\":\"First Practice\",\"required\":\"\"},model:{value:(_vm.league.firstPracticeDate),callback:function ($$v) {_vm.$set(_vm.league, \"firstPracticeDate\", $$v)},expression:\"league.firstPracticeDate\"}})],1),_c('div',{staticClass:\"col-md-6\"},[_c('date-input',{attrs:{\"label\":\"First Game\",\"required\":\"\"},model:{value:(_vm.league.firstGameDate),callback:function ($$v) {_vm.$set(_vm.league, \"firstGameDate\", $$v)},expression:\"league.firstGameDate\"}})],1),_c('div',{staticClass:\"col-md-6\"},[_c('date-input',{attrs:{\"label\":\"Season End Date\",\"required\":\"\"},model:{value:(_vm.league.seasonEndDate),callback:function ($$v) {_vm.$set(_vm.league, \"seasonEndDate\", $$v)},expression:\"league.seasonEndDate\"}})],1)]),_c('hr'),_c('league-devotion-track-selection',{model:{value:(_vm.league.typeDevotionTrackID),callback:function ($$v) {_vm.$set(_vm.league, \"typeDevotionTrackID\", $$v)},expression:\"league.typeDevotionTrackID\"}})],1),_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('h6',[_vm._v(\"Leadership\")]),_c('h6',[_vm._v(\"Director\")]),_c('switch-slot',{attrs:{\"mode\":\"buttons\",\"options\":[\n { text: 'Add / Edit New', value: 'form' },\n { text: 'Add from existing contact', value: 'picker' } ]},model:{value:(_vm.sportSwitch),callback:function ($$v) {_vm.sportSwitch=$$v},expression:\"sportSwitch\"}},[_c('contact-form',{attrs:{\"slot\":\"form\",\"can-change-name\":_vm.canChangeName},slot:\"form\",model:{value:(_vm.league.partnerContact),callback:function ($$v) {_vm.$set(_vm.league, \"partnerContact\", $$v)},expression:\"league.partnerContact\"}}),(_vm.league.leagueDirectorPartnerID)?_c('button',{staticClass:\"btn btn-primary float-right mb-2\",attrs:{\"slot\":\"form\"},on:{\"click\":_vm.clearContact},slot:\"form\"},[_vm._v(\" Clear Contact \")]):_vm._e(),_c('contact-picker',{attrs:{\"slot\":\"picker\",\"account-number\":_vm.accountNumbers[0]},on:{\"change\":_vm.onSportContactUpdated},slot:\"picker\",model:{value:(_vm.sportContact),callback:function ($$v) {_vm.sportContact=$$v},expression:\"sportContact\"}})],1)],1)]),_c('digital-setup-complete-confirmation',{attrs:{\"upwardLeagueId\":_vm.newId},on:{\"change\":_vm.onModalStateChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}}),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)])],1):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Program Information\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"title\":\"Limited Digital Access\"},on:{\"change\":_vm.onModalChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('full-body',[_c('div',{staticClass:\"p-3\"},[_c('h4',[_vm._v(\"You’re not done yet!\")]),_c('p',[_vm._v(\" Even though you have created your league, you may still have a few items left to do. Visit the “View Resources” tab at the bottom for your next steps. \")]),_c('p',[_vm._v(\"For your records, we have emailed the information below to the primary contact for your league.\")]),_c('div',{staticClass:\"card card-body bg-light-1 shadow-sm\"},[_c('ul',[_c('li',[_c('a',{staticClass:\"text-primary\",attrs:{\"href\":\"https://www.facebook.com/UpwardSports/\"}},[_vm._v(\"League Directors Facebook Group\")]),_vm._v(\" - You are invited to join other program directors on this special Facebook page to share ideas, ask questions, or post highlights. \")]),_c('li',[_c('a',{staticClass:\"text-primary\",attrs:{\"href\":\"/training/annual\"}},[_vm._v(\"Video Tutorials\")]),_vm._v(\" - Need a helping hand on how to conduct your league? These valuable video tutorials walk you through every step of your program. \")])])]),_c('h4',{staticClass:\"mt-4\"},[_vm._v(\"Next Steps\")]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6 pt-3\"},[_c('div',{staticClass:\"card shadow min-h-100\"},[_c('div',{staticClass:\"card-body pb-2\"},[_c('h4',{staticClass:\"mb-4\"},[_c('span',{staticClass:\"text-uppercase\"},[_vm._v(\"View Resources\")])]),_c('p',[_vm._v(\"Access your program resources to begin your sports ministry.\")])]),_c('button',{staticClass:\"btn btn-primary col-12 rounded-0\",on:{\"click\":_vm.goToResources}},[_vm._v(\"Select\")])])])])])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.hideModal}},[_vm._v(\"OK\")])])],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\nimport Modal from '@/components/Modal.vue'\nimport FullBody from '@/components/FullBody.vue'\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\n\n@Component({\n components: {\n Modal,\n FullBody,\n },\n})\nexport default class DigitalSetupCompleteConfirmation extends Vue {\n @Prop({ type: Boolean, required: true })\n private readonly value!: boolean\n\n @Prop({ type: String, required: false, default: '' })\n private readonly upwardLeagueId!: string\n\n private modalIsVisible = this.value\n\n private hideModal() {\n this.modalIsVisible = false\n this.onModalChange()\n }\n\n @Watch('value')\n private onValueChange() {\n this.modalIsVisible = this.value\n }\n\n private onModalChange() {\n this.$emit('input', this.modalIsVisible)\n this.$emit('change', this.modalIsVisible)\n }\n\n private goToResources() {\n this.$router.push(`/programs/digitalleague/${this.upwardLeagueId}/resources/`)\n }\n}\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!./DigitalSetupCompleteConfirmation.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!./DigitalSetupCompleteConfirmation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DigitalSetupCompleteConfirmation.vue?vue&type=template&id=d6a14338&\"\nimport script from \"./DigitalSetupCompleteConfirmation.vue?vue&type=script&lang=ts&\"\nexport * from \"./DigitalSetupCompleteConfirmation.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 (_vm.devoTrackInfo && _vm.devoTrackInfo.devotionTracks && _vm.devoTrackInfo.devotionTracks.length > 0)?_c('div',[_c('h6',[_vm._v(\"DEVOTION TRACK SELECTION\")]),_c('p',[_vm._v(\" Select a devotion track for the weekly practice devotion used by coaches. \"),(_vm.devoTrackInfo.summaryPDFURL)?_c('span',[_c('br'),_c('a',{attrs:{\"href\":_vm.devoTrackInfo.summaryPDFURL,\"target\":\"_blank\"}},[_vm._v(\"Click here\")]),_vm._v(\" for more information on the devotion track choices.\")]):_vm._e()]),_c('div',{staticClass:\"select-cards small\"},_vm._l((_vm.devoTrackInfo.devotionTracks),function(item){return _c('SelectorCard',{key:item.title,staticClass:\"select-card\",attrs:{\"selectable\":\"\",\"isHighlighted\":_vm.selectedDevotion === item.devotionType,\"isSecondary\":_vm.selectedDevotion !== item.devotionType},on:{\"select\":function($event){_vm.selectedDevotion = item.devotionType}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(item.title))]},proxy:true},{key:\"body\",fn:function(){return [_c('div',{domProps:{\"innerHTML\":_vm._s(item.descriptionContent)}})]},proxy:true},{key:\"innerButton\",fn:function(){return [_vm._v(_vm._s(_vm.selectedDevotion === item.devotionType ? 'Selected' : 'Select'))]},proxy:true}],null,true)})}),1)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export interface DevotionTrackInfo {\n summaryPDFURL: string\n devotionTracks: DevotionTrack[]\n}\nexport interface DevotionTrack {\n title: string\n devotionType: string\n programType: string[]\n description: string | null\n descriptionContent: string | null\n}\n\nexport function getEmptyDevotionTrackInfo(): DevotionTrackInfo {\n return {\n summaryPDFURL: '',\n devotionTracks: [],\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\n\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport SelectorCard from './SelectorCard.vue'\n\nimport { DevotionTrackInfo, getEmptyDevotionTrackInfo } from '@/models/ContentManagement/DevotionTrack'\n\nimport contentManagementClient from '@/clients/contentManagementClient'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'LeagueDevotionTrackSelection',\n components: {\n RadioGroupInput,\n Loading,\n SelectorCard,\n },\n props: {\n value: { type: String, required: true },\n },\n setup(props, ctx) {\n const league = computed(() => store.getters.leagues.currentItem)\n const selectedDevotion = ref('')\n const isLoading = ref(false)\n const devoTrackInfo = ref(getEmptyDevotionTrackInfo())\n\n onMounted(async () => {\n await loadDevoInfo()\n })\n\n watch(\n () => selectedDevotion.value,\n () => {\n if (props.value !== selectedDevotion.value) {\n ctx.emit('input', selectedDevotion.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (props.value !== selectedDevotion.value) {\n selectedDevotion.value = props.value\n }\n },\n { immediate: true }\n )\n\n async function loadDevoInfo() {\n await store.dispatch.leagueTypes.fetchAll(false)\n const leagueAbbreviation = store.getters.leagueTypes.byUpwardTypeId(league.value.typeLeagueID)\n if (isLoading.value || !leagueAbbreviation.abbreviation) return\n isLoading.value = true\n\n try {\n const result = await contentManagementClient.getDevotionTracks(\n leagueAbbreviation.abbreviation,\n league.value.typeProductGroupID\n )\n devoTrackInfo.value = result.data || getEmptyDevotionTrackInfo()\n } finally {\n isLoading.value = false\n }\n }\n\n return {\n devoTrackInfo,\n selectedDevotion,\n }\n },\n})\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!./LeagueDevotionTrackSelection.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!./LeagueDevotionTrackSelection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LeagueDevotionTrackSelection.vue?vue&type=template&id=5a554bb1&scoped=true&\"\nimport script from \"./LeagueDevotionTrackSelection.vue?vue&type=script&lang=ts&\"\nexport * from \"./LeagueDevotionTrackSelection.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./LeagueDevotionTrackSelection.vue?vue&type=style&index=0&id=5a554bb1&lang=scss&scoped=true&\"\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 \"5a554bb1\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport DigitalSetupCompleteConfirmation from '@/views/Leagues/vues/DigitalSetupCompleteConfirmation.vue'\n\nimport LeagueSetupMixin from '@/views/Leagues/LeagueSetupMixin'\nimport * as leaguesStore from '@/store/leagues'\n\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\n\nimport DayOfWeekMultiPicker from '@/elements/DayOfWeekMultiPicker.vue'\nimport AdditionalParticipantInformation from '@/components/AdditionalParticipantInformation.vue'\nimport TimezoneSelect from '@/components/TimezoneSelect.vue'\nimport LeagueDevotionTrackSelection from '@/components/LeagueDevotionTrackSelection.vue'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport ContactForm from '@/components/ContactForm.vue'\nimport ContactPicker from '@/components/ContactPicker.vue'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { ContactToContactInfo, ContactInfoToContact, GetEmptyContactInfo } from '@/services/contactService'\nimport { getterNames, namespace } from '@/store/authorization'\nimport { Getter, Action } from 'vuex-class'\nimport DateInput from '@/elements/DateInput.vue'\nimport { League } from '@/GeneratedTypes/League'\nimport { loadGradeDataIntoProgram } from '@/services/gradeService'\nimport { getGrades } from '@/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades'\n\n@Component({\n components: {\n TextInput,\n SelectInput,\n MemoInput,\n YesNoInput,\n DayOfWeekMultiPicker,\n SwitchSlot,\n Loading,\n AdditionalParticipantInformation,\n TimezoneSelect,\n ContactForm,\n ContactPicker,\n LeagueDevotionTrackSelection,\n DateInput,\n DigitalSetupCompleteConfirmation,\n SaveContinueButton,\n HtmlEditor,\n },\n})\nexport default class DigitalInformation extends Mixins(LeagueSetupMixin) {\n @Action(leaguesStore.actionNames.create, { namespace: leaguesStore.namespace })\n private readonly create!: ({ item }: { item: League }) => Promise\n\n @Getter(getterNames.accountNumbers, { namespace })\n private accountNumbers!: string[] | null\n\n private modalIsVisible = false\n private newId = ''\n private sportContact: ContactInfo = GetEmptyContactInfo()\n private sportSwitch = 'picker'\n private grades: string[] = []\n\n private get canChangeName(): boolean {\n return !(\n this.league &&\n this.league.programs &&\n this.league.programs.length > 0 &&\n this.league!.leagueDirectorPartnerID\n )\n }\n\n private onSportContactUpdated(contact: ContactInfo) {\n if (this.league) {\n this.league.partnerContact = ContactInfoToContact(contact)\n this.league.leagueDirectorPartnerID = contact.id\n this.sportContact = contact\n }\n }\n\n private clearContact() {\n this.onSportContactUpdated(GetEmptyContactInfo())\n }\n // eslint-disable-next-line require-await\n private async beforeSaveMethod() {\n // Clear the productOfferingConfig & registrationInfo per 2668\n this.league.productOfferingConfig = null\n this.league.registrationInfo = null\n this.league.otherRegistrationVendorName = 'N/A'\n\n // isMailIn per 2668\n this.league.isMailIn = true\n }\n\n private async afterSaveNewMethod() {\n const savedLeague = await this.create({ item: this.league })\n if (savedLeague) {\n this.newId = savedLeague.upwardLeagueID!\n }\n\n this.modalIsVisible = true\n }\n\n mounted() {\n this.afterSaveNew = this.afterSaveNewMethod\n this.beforeSave = this.beforeSaveMethod\n this.grades = getGrades(false)\n }\n\n private onModalStateChange() {\n this.$router.push(`/programs/digitalleague/${this.newId}/setup/information`)\n }\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n if (this.league) {\n this.league.typeSystemsAccessID = 'NONE'\n this.league.isOPRLeague = false\n this.league.programs?.forEach((p) => {\n loadGradeDataIntoProgram(this.league, this.grades, p.typeProgramID, 'F')\n loadGradeDataIntoProgram(this.league, this.grades, p.typeProgramID, 'M')\n })\n this.sportContact = ContactToContactInfo(\n this.league.partnerContact!,\n this.league.leagueDirectorPartnerID\n )\n }\n }\n}\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!./DigitalInformation.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!./DigitalInformation.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DigitalInformation.vue?vue&type=template&id=759c7bdf&\"\nimport script from \"./DigitalInformation.vue?vue&type=script&lang=ts&\"\nexport * from \"./DigitalInformation.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-4 pt-3\"},[_c('date-input',{attrs:{\"label\":\"Registration Begins\",\"required\":\"\",\"time\":\"00:00:00\"},model:{value:(_vm.league.registrationBeginDate),callback:function ($$v) {_vm.$set(_vm.league, \"registrationBeginDate\", $$v)},expression:\"league.registrationBeginDate\"}}),_c('date-input',{attrs:{\"label\":\"Last Day For Early Registration\",\"time\":\"23:59:59\"},model:{value:(_vm.league.lateDate),callback:function ($$v) {_vm.$set(_vm.league, \"lateDate\", $$v)},expression:\"league.lateDate\"}}),_c('date-input',{attrs:{\"label\":\"Registration Deadline\",\"time\":\"00:00:00\"},model:{value:(_vm.league.registrationEndDate),callback:function ($$v) {_vm.$set(_vm.league, \"registrationEndDate\", $$v)},expression:\"league.registrationEndDate\"}}),(!_vm.isUpwardSelect)?_c('date-input',{attrs:{\"label\":\"First Evaluation\",\"time\":\"00:00:00\",\"required\":\"\"},model:{value:(_vm.league.firstEvalDate),callback:function ($$v) {_vm.$set(_vm.league, \"firstEvalDate\", $$v)},expression:\"league.firstEvalDate\"}}):_vm._e(),_c('date-input',{attrs:{\"label\":\"First Practice\",\"time\":\"00:00:00\",\"required\":\"\"},model:{value:(_vm.league.firstPracticeDate),callback:function ($$v) {_vm.$set(_vm.league, \"firstPracticeDate\", $$v)},expression:\"league.firstPracticeDate\"}}),_c('date-input',{attrs:{\"label\":\"First Game\",\"time\":\"00:00:00\",\"required\":\"\"},model:{value:(_vm.league.firstGameDate),callback:function ($$v) {_vm.$set(_vm.league, \"firstGameDate\", $$v)},expression:\"league.firstGameDate\"}}),_c('date-input',{attrs:{\"label\":\"Awards Processing Date\",\"show-help\":true,\"required\":\"\",\"time\":\"00:00:00\"},on:{\"helpClicked\":function($event){_vm.awardHelpIsVisible = true}},model:{value:(_vm.league.awardsOrderDate),callback:function ($$v) {_vm.$set(_vm.league, \"awardsOrderDate\", $$v)},expression:\"league.awardsOrderDate\"}}),_c('modal',{attrs:{\"title\":\"HELP: Player Awards processing date\",\"is-small\":true},model:{value:(_vm.awardHelpIsVisible),callback:function ($$v) {_vm.awardHelpIsVisible=$$v},expression:\"awardHelpIsVisible\"}},[_c('div',{staticClass:\"p-5\"},[_c('b',[_vm._v(\"Player Awards processing date\")]),_vm._v(\" is the date you would like Upward Sports to begin processing your order to ship. By default, if you do not enter a date this processing date is three weeks before your Season End Date. The player awards order may take up to three days to pack and process plus standard ground shipping from our partner facility in Georgia to your location. \")])]),_c('date-input',{attrs:{\"label\":\"Season End Date\",\"required\":\"\",\"show-help\":true,\"time\":\"23:59:59\"},on:{\"helpClicked\":function($event){_vm.seasonendHelpIsVisible = true}},model:{value:(_vm.league.seasonEndDate),callback:function ($$v) {_vm.$set(_vm.league, \"seasonEndDate\", $$v)},expression:\"league.seasonEndDate\"}}),_c('modal',{attrs:{\"title\":\"HELP: Season End Date\",\"is-small\":true},model:{value:(_vm.seasonendHelpIsVisible),callback:function ($$v) {_vm.seasonendHelpIsVisible=$$v},expression:\"seasonendHelpIsVisible\"}},[_c('div',{staticClass:\"p-5\"},[_c('b',[_vm._v(\"Season End Date\")]),_vm._v(\" is the date to enter to allow for adequate follow-up after the season and usually is ten days after your last game day. \")])]),_c('hr',{staticClass:\"d-xl-none\"})],1),(!_vm.isUpwardSelect)?_c('div',{staticClass:\"col-xl-8 pt-3 border-xl-left\"},[_c('h6',[_vm._v(\"Evaluations / Orientation Information\")]),_c('div',[_c('hr'),_c('evaluation-form',{model:{value:(_vm.league.evalDescription),callback:function ($$v) {_vm.$set(_vm.league, \"evalDescription\", $$v)},expression:\"league.evalDescription\"}})],1)]):_vm._e()]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Key Dates\")])])}]\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\nimport LeagueSetupMixin from '@/views/Leagues/LeagueSetupMixin'\nimport Loading from '@/elements/Loading.vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport EvaluationForm from '@/components/EvaluationForm/EvaluationForm.vue'\nimport { Component, Mixins } from 'vue-property-decorator'\nimport Modal from '@/components/Modal.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport dayjs from 'dayjs'\n\nlet useTestData: any = null\nif (process.env.VUE_APP_USE_TEST_DATA == 'YES') {\n import('@/views/Leagues/testData/keydates').then((x) => (useTestData = x))\n}\n\n@Component({\n components: {\n DateInput,\n EvaluationForm,\n Loading,\n Modal,\n SaveContinueButton,\n },\n})\nexport default class KeyDates extends Mixins(LeagueSetupMixin) {\n private numberOfEvaluations = 1\n private awardHelpIsVisible = false\n private seasonendHelpIsVisible = false\n\n mounted() {\n if (this.league.upwardLeagueID) {\n this.nextRoute = `/programs/league/${this.league.upwardLeagueID}/setup/leadership`\n } else {\n this.nextRoute = '/programs/league/setup/leadership'\n }\n\n if (useTestData) {\n useTestData.setKeyDatesForNewLeague(this.league)\n }\n\n this.beforeSave = this.setDefaults\n }\n\n // eslint-disable-next-line require-await\n private async setDefaults() {\n if (\n this.league.registrationBeginDate &&\n this.league.registrationInfo &&\n !this.league.registrationInfo.onlineRegistrationBeginDate\n ) {\n this.league.registrationInfo.onlineRegistrationBeginDate = dayjs(this.league.registrationBeginDate)\n .hour(0)\n .minute(0)\n .second(0)\n .toDate()\n }\n\n if (\n this.league.registrationEndDate &&\n this.league.registrationInfo &&\n !this.league.registrationInfo.onlineRegistrationEndDate\n ) {\n this.league.registrationInfo.onlineRegistrationEndDate = dayjs(this.league.registrationEndDate)\n .hour(23)\n .minute(59)\n .second(59)\n .toDate()\n }\n\n // Changes to early registration end date needs to update registration fee to pass validation.\n if (this.league.upwardLeagueID && this.league.lateDate && this.league.programs) {\n if (this.league.programs.length > 0 && !this.league.programs[0].earlyRegistrationFee) {\n this.league.programs[0].earlyRegistrationFee = this.league.programs[0].registrationFee\n }\n\n if (this.league.programs.length > 1 && !this.league.programs[1].earlyRegistrationFee) {\n this.league.programs[1].earlyRegistrationFee = this.league.programs[1].registrationFee\n }\n }\n\n if (this.league.upwardLeagueID && !this.league.lateDate && this.league.programs) {\n if (this.league.programs.length > 0) {\n this.league.programs[0].earlyRegistrationFee = null\n }\n\n if (this.league.programs.length > 1) {\n this.league.programs[1].earlyRegistrationFee = null\n }\n }\n\n if (this.league.firstPracticeDate && this.league.firstPracticeDate < new Date('4/1/2021')) {\n throw new Error('First practice date cannot be less then 4/1/2021')\n }\n }\n}\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!./KeyDates.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!./KeyDates.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./KeyDates.vue?vue&type=template&id=06280875&\"\nimport script from \"./KeyDates.vue?vue&type=script&lang=ts&\"\nexport * from \"./KeyDates.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[(_vm.sportContact)?_c('div',{staticClass:\"col-xl-12 pt-3\"},[_c('ContactPickerAndEditor',{attrs:{\"accountNumber\":_vm.accountNumbers[0],\"isLoading\":_vm.loading,\"canChangeName\":_vm.canChangeName,\"isClean\":_vm.isClean},on:{\"submit\":_vm.onSubmit},model:{value:(_vm.sportContact),callback:function ($$v) {_vm.sportContact=$$v},expression:\"sportContact\"}})],1):_vm._e()]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm\"},[_c('h5',[_vm._v(\"Director\")]),_c('p',{staticClass:\"m-0\"},[_vm._v(\"Select the Director for this program from the list or create a new contact.\")])])}]\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\nimport LeagueSetupMixin from '@/views/Leagues/LeagueSetupMixin'\nimport Loading from '@/elements/Loading.vue'\nimport ContactPickerAndEditor from '@/components/ContactPickerAndEditor.vue'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { Getter } from 'vuex-class'\nimport { getterNames, namespace } from '@/store/authorization'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { ContactToContactInfo, ContactInfoToContact } from '@/services/contactService'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\nimport { cloneDeep } from 'lodash'\n\n@Component({\n components: {\n ContactPickerAndEditor,\n Loading,\n SaveContinueButton,\n },\n})\nexport default class Leadership extends Mixins(LeagueSetupMixin) {\n @Getter(getterNames.accountNumbers, { namespace })\n private accountNumbers!: string[] | null\n\n private sportContact: ContactInfo | null = null\n\n mounted() {\n this.afterUpdateExisting = this.afterUpdateExistingMethod\n\n if (this.league.upwardLeagueID) {\n this.nextRoute = `/programs/league/${this.league.upwardLeagueID}/setup/partnership`\n } else {\n this.nextRoute = '/programs/league/setup/partnership'\n }\n }\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n if (this.initialLoadDone) {\n if (this.league) {\n this.sportContact = ContactToContactInfo(\n this.league.partnerContact!,\n this.league.leagueDirectorPartnerID\n )\n }\n }\n }\n\n private async onSubmit() {\n this.league.partnerContact = this.sportContact\n ? ContactInfoToContact(this.sportContact)\n : getEmptyContact()\n this.league.leagueDirectorPartnerID = this.sportContact ? this.sportContact.id : 0\n await this.save()\n }\n\n private get canChangeName(): boolean {\n return !(\n this.league &&\n this.league.programs &&\n this.league.programs.length > 0 &&\n this.league.leagueDirectorPartnerID\n )\n }\n\n private get isExisting() {\n return !!this.league.upwardLeagueID\n }\n\n private get isClean() {\n return this.storeLeague.leagueDirectorPartnerID === this.league.leagueDirectorPartnerID\n }\n\n private afterUpdateExistingMethod() {\n this.league = { ...cloneDeep(this.storeLeague) }\n }\n}\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!./Leadership.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!./Leadership.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Leadership.vue?vue&type=template&id=ea9e277c&\"\nimport script from \"./Leadership.vue?vue&type=script&lang=ts&\"\nexport * from \"./Leadership.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('div',[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col pb-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-md-9 col-lg-6 col-xl-5 pt-3\"},[_c('p',[_vm._v(\" Is your church in a partnership of churches working together this season, or is it one church by itself? \")]),_c('select-input',{attrs:{\"label\":\"Partnership\",\"items-list\":[\n { text: 'One church (this is the default option)', value: 'solo' },\n { text: 'Two or more churches - one league', value: 'one' } ],\"required\":true,\"value-property-name\":\"value\",\"text-property-name\":\"text\"},model:{value:(_vm.partnership),callback:function ($$v) {_vm.partnership=$$v},expression:\"partnership\"}}),(_vm.partnership === 'solo')?_c('p',[_vm._v(\" There are no other churches we are partnering with currently. Advertising resources will only reference one church. \")]):_vm._e(),(_vm.partnership === 'one')?_c('p',[_vm._v(\" Only the \\\"host church,\\\" which is the point of contact for the partnership, can order advertising resources or starter items for the partnership and will receive the invoice for these items. League orders may be placed by any church within the partnership and shipped to an address you specify. \"),_c('br'),_c('br'),_vm._v(\"Continue with creating this program ONLY if you represent the host church. \")]):_vm._e()],1)]),_c('hr'),(_vm.partnership === 'one')?[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-auto pt-3\"},[_c('integer-picker',{staticClass:\"col-sm-6 col-xl-3\",attrs:{\"required\":\"\",\"label\":\"Number of churches in league\",\"min\":1,\"max\":15},model:{value:(_vm.churchCount),callback:function ($$v) {_vm.churchCount=$$v},expression:\"churchCount\"}})],1)]),_c('div',{staticClass:\"row\"},_vm._l((_vm.league.accounts),function(account,index){return _c('div',{key:account.accountNumber,staticClass:\"col-xl-6 pt-3\"},[_c('partner-form',{attrs:{\"type-program-id\":_vm.typeProgramId,\"cheer-type-program-id\":_vm.cheerTypeProgramId,\"label\":'Church Partner ' + (index + 1),\"league-id\":_vm.league.id,\"isByAge\":_vm.isByAge},model:{value:(_vm.league.accounts[index]),callback:function ($$v) {_vm.$set(_vm.league.accounts, index, $$v)},expression:\"league.accounts[index]\"}})],1)}),0)]:_vm._e(),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Action } from 'vuex-class'\nimport LeagueSetupMixin from '@/views/Leagues/LeagueSetupMixin'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport IntegerPicker from '@/elements/IntegerPicker.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\n\nimport Loading from '@/elements/Loading.vue'\nimport PartnerForm from '@/components/PartnerForm.vue'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { LeagueAccount } from '@/GeneratedTypes/LeagueAccount'\n\nimport * as partnesrStore from '@/store/partners'\nimport { Partner } from '@/models/Partner'\n\n@Component({\n components: {\n PartnerForm,\n Loading,\n SelectInput,\n IntegerPicker,\n SaveContinueButton,\n },\n})\nexport default class Partnership extends Mixins(LeagueSetupMixin) {\n @Action(partnesrStore.actionNames.retrieveAndSetPartners, { namespace: partnesrStore.namespace })\n private readonly retrieveAndSetPartners!: ({ id }: { id: string }) => Partner[]\n\n private partnership = 'solo'\n private churchCount = 1\n private partnerDirty = false\n\n mounted() {\n if (this.league.upwardLeagueID) {\n this.nextRoute = `/programs/league/${this.league.upwardLeagueID}/setup/products`\n } else {\n this.nextRoute = '/programs/league/setup/products'\n }\n this.churchCount = this.league.accounts?.length ?? 1\n this.partnership = this.churchCount > 1 ? 'one' : 'solo'\n this.$nextTick(() => this.$watch('league.accounts', this.partnerChanged, { deep: true }))\n this.afterUpdateExisting = this.updatePartner\n this.afterSaveNew = this.updatePartner\n }\n\n private async updatePartner() {\n if (this.partnerDirty) {\n await this.retrieveAndSetPartners({ id: this.league.upwardLeagueID ?? '' })\n }\n }\n\n @Watch('churchCount')\n private onChurchCountChanged() {\n const accountDelta = this.churchCount - (this.league.accounts?.length ?? 1)\n\n if (this.league.accounts) {\n for (let i = 0; i < accountDelta; i++) {\n this.league.accounts.push({\n accountNumber: (-this.league.accounts.length).toString(),\n leagueOwner: false,\n expectLeagueOrder: false,\n coachShirtRequired: false,\n grades: this.league.accounts[0].grades,\n } as LeagueAccount)\n }\n }\n\n if (this.league.accounts && accountDelta < 0) {\n this.league.accounts = this.league.accounts?.splice(0, this.churchCount)\n }\n }\n\n private partnerChanged() {\n this.partnerDirty = true\n }\n\n private get typeProgramId(): string {\n if (this.league.programs && this.league.programs.length > 0) {\n return this.league.programs[0].typeProgramID\n }\n return ''\n }\n\n private get cheerTypeProgramId(): string {\n if (this.league.programs && this.league.programs.length > 1) {\n return this.league.programs[1].typeProgramID\n }\n return ''\n }\n}\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!./Partnership.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!./Partnership.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Partnership.vue?vue&type=template&id=1386f9e2&\"\nimport script from \"./Partnership.vue?vue&type=script&lang=ts&\"\nexport * from \"./Partnership.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('div',[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\" Product & Pricing \"),(_vm.isLoading)?_c('Loading',{attrs:{\"is-small\":\"\"}}):_vm._e()],1)]),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[(!_vm.isLoading && !_vm.showCurrencyWarning)?_c('SaveContinueButton',{attrs:{\"program\":_vm.league,\"showSave\":!_vm.league.isOPRLeague,\"loading\":_vm.loading,\"disable\":_vm.saveDisabled},on:{\"click\":_vm.saveAndContinue}}):_vm._e()],1)]),(_vm.showCurrencyWarning)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('CurrencyWarning',{staticClass:\"mt-5\"})],1)]):_vm._e(),(!_vm.isUpwardSelect)?_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading && !_vm.showCurrencyWarning && !_vm.isUpwardSelect),expression:\"!isLoading && !showCurrencyWarning && !isUpwardSelect\"}],staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('LeagueDevotionTrackSelection',{model:{value:(_vm.league.typeDevotionTrackID),callback:function ($$v) {_vm.$set(_vm.league, \"typeDevotionTrackID\", $$v)},expression:\"league.typeDevotionTrackID\"}})],1)]):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}],staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('SetupStepperLeague',{scopedSlots:_vm._u([{key:\"belowRunningTotal\",fn:function(){return [(_vm.league.programs)?[_c('h5',{staticClass:\"text-center py-3\"},[_vm._v(\"Registration Fees\")]),_vm._l((_vm.league.programs),function(program,index){return _c('ProgramRegistrationFee',{key:program.typeProgramID,attrs:{\"hasEarlyRegistration\":_vm.hasEarlyRegistration},model:{value:(_vm.league.programs[index]),callback:function ($$v) {_vm.$set(_vm.league.programs, index, $$v)},expression:\"league.programs[index]\"}})}),_c('div',{staticClass:\"mb-3\"},[_c('h6',[_c('a',{attrs:{\"target\":\"_blank\",\"href\":\"https://youtu.be/mOE9hwcvzqY\"}},[_vm._v(\"Need help setting your registration fee?\")])])])]:_vm._e()]},proxy:true}])})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[(!_vm.isLoading && !_vm.showCurrencyWarning)?_c('SaveContinue-Button',{attrs:{\"program\":_vm.league,\"showSave\":!_vm.league.isOPRLeague,\"loading\":_vm.loading,\"disable\":_vm.saveDisabled},on:{\"click\":_vm.saveAndContinue}}):_vm._e()],1)]),_c('ProductWarningModal',{attrs:{\"warnings\":_vm.warnings},on:{\"save\":_vm.ignoreWarnings},model:{value:(_vm.showWarnings),callback:function ($$v) {_vm.showWarnings=$$v},expression:\"showWarnings\"}}),_c('SetupCompleteConfirmation',{attrs:{\"upwardLeagueId\":_vm.newId,\"hasOnlineRegistration\":false},on:{\"change\":_vm.onModalStateChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}})],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('div',{staticClass:\"mb-3\"},[_c('h6',[_vm._v(_vm._s(_vm.sportName))])]),_c('div',{staticClass:\"row mb-2\"},[_c('div',{staticClass:\"col-xl-12 pt-3\"},[(_vm.hasEarlyRegistration)?_c('currency-input',{staticClass:\"mb-1\",attrs:{\"label\":_vm.sportName + ' Early Registration',\"required\":\"\"},model:{value:(_vm.program.earlyRegistrationFee),callback:function ($$v) {_vm.$set(_vm.program, \"earlyRegistrationFee\", $$v)},expression:\"program.earlyRegistrationFee\"}}):_vm._e(),(_vm.hasEarlyRegistration && _vm.program.earlyRegistrationFee == 0)?_c('checkbox-input',{staticClass:\"pl-2\",attrs:{\"label\":\"Confirm this should be free\"},model:{value:(_vm.program.freeEarlyRegistrationFeeConfirmed),callback:function ($$v) {_vm.$set(_vm.program, \"freeEarlyRegistrationFeeConfirmed\", $$v)},expression:\"program.freeEarlyRegistrationFeeConfirmed\"}}):_vm._e(),_c('currency-input',{class:_vm.hasEarlyRegistration ? 'mt-3 mb-1' : 'mb-1',attrs:{\"label\":\"Registration Fee\",\"required\":\"\"},model:{value:(_vm.program.registrationFee),callback:function ($$v) {_vm.$set(_vm.program, \"registrationFee\", $$v)},expression:\"program.registrationFee\"}}),(_vm.program.registrationFee == 0)?_c('checkbox-input',{staticClass:\"pl-2\",attrs:{\"label\":\"Confirm this should be free\"},model:{value:(_vm.program.freeRegistrationFeeConfirmed),callback:function ($$v) {_vm.$set(_vm.program, \"freeRegistrationFeeConfirmed\", $$v)},expression:\"program.freeRegistrationFeeConfirmed\"}}):_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\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\n\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport properCase from '@/filters/properCase'\nimport { isEqual } from 'lodash'\n\nimport { LeagueProgramGenderGrade } from 'src/GeneratedTypes/LeagueProgramGenderGrade'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport store from '@/store'\n\ninterface ProgramFees {\n typeProgramID: string\n earlyRegistrationFee: number | null\n registrationFee: number\n gradesByGender: LeagueProgramGenderGrade[] | null\n isEarlyFeeRegistration: boolean\n freeEarlyRegistrationFeeConfirmed: boolean\n freeRegistrationFeeConfirmed: boolean\n}\n\nexport default defineComponent({\n name: 'ProgramRegistrationFee',\n components: {\n CurrencyInput,\n CheckboxInput,\n },\n props: {\n value: { type: Object as PropType, required: true },\n hasEarlyRegistration: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const programTypes = computed((): UpwardProgramTypeID[] => store.getters.programTypes.allItems)\n\n const program = ref({ ...props.value })\n\n const sportName = computed(() => {\n if (programTypes.value && programTypes.value.length > 0) {\n const programType = programTypes.value.find((x) => x.upwardTypeID === program.value.typeProgramID)\n if (programType) {\n return programType.isCheer ? 'Cheerleading' : programType.description\n }\n }\n\n return properCase(program.value.typeProgramID)\n })\n\n //private created()\n if (!program.value.isEarlyFeeRegistration) {\n program.value.earlyRegistrationFee = null\n }\n\n watch(\n () => props.value,\n () => {\n if (!isEqual(program.value, props.value)) {\n program.value = { ...props.value }\n }\n },\n { deep: true }\n )\n\n watch(\n () => program.value,\n () => {\n if (!isEqual(program.value, props.value)) {\n ctx.emit('input', program.value)\n }\n },\n { deep: true }\n )\n\n return {\n sportName,\n program,\n }\n },\n})\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!./ProgramRegistrationFee.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!./ProgramRegistrationFee.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProgramRegistrationFee.vue?vue&type=template&id=66a9a318&\"\nimport script from \"./ProgramRegistrationFee.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProgramRegistrationFee.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { cloneDeep } from 'lodash'\nimport LeagueSetupMixin from '@/views/Leagues/LeagueSetupMixin'\nimport SetupCompleteConfirmation from '@/components/SetupCompleteConfirmation.vue'\nimport LeagueDevotionTrackSelection from '@/components/LeagueDevotionTrackSelection.vue'\nimport SetupStepperLeague from '@/components/ProductFlow/ProductSetupStepper/SetupStepperLeague.vue'\nimport ProgramRegistrationFee from '@/components/ProgramRegistrationFee.vue'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport ProductWarningModal from '@/views/Leagues/ProductWarningModal.vue'\nimport CurrencyWarning from '@/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { ValidationError } from 'src/models/UpwardVerificationDetails'\n\nimport * as leaguesStore from '@/store/leagues'\nimport * as leagueAbstraction from '@/store/leagueAbstraction'\nimport * as promptToSave from '@/store/promptToSave'\nimport store from '@/store'\n\nimport leaguesClient from '@/clients/leaguesClient'\n\nimport { Action, Getter } from 'vuex-class'\nimport { League } from '@/GeneratedTypes/League'\n\nimport { productFlowLogic } from '@/components/ProductFlow/ProductFlowLogic'\n\n@Component({\n components: {\n SetupCompleteConfirmation,\n LeagueDevotionTrackSelection,\n SetupStepperLeague,\n ProgramRegistrationFee,\n SaveContinueButton,\n ProductWarningModal,\n CurrencyWarning,\n Loading,\n },\n})\nexport default class Products extends Mixins(LeagueSetupMixin) {\n @Action(leaguesStore.actionNames.create, { namespace: leaguesStore.namespace })\n private readonly create!: ({ item }: { item: League }) => Promise\n\n @Getter(promptToSave.getterNames.isDirty, { namespace: promptToSave.namespace })\n private readonly isDirty!: boolean\n\n @Getter(leagueAbstraction.getterNames.currentItem, {\n namespace: leagueAbstraction.leagueAbstractionNamespace,\n })\n private readonly currentAbstractionItem!: boolean\n\n private modalIsVisible = false\n private userWantsToIgnoreWarnings = false\n private warnings: ValidationError[] | null = null\n private showWarnings = false\n\n logic = productFlowLogic()\n\n async mounted() {\n if (this.league.isOPRLeague) {\n if (this.league.upwardLeagueID) {\n this.nextRoute = `/programs/league/${this.league.upwardLeagueID}/setup/registration`\n } else {\n this.nextRoute = '/programs/league/setup/registration'\n }\n } else {\n if (this.league.upwardLeagueID) {\n this.nextRoute = '/'\n }\n this.afterSaveNew = this.afterSaveNewMethod\n }\n this.beforeSave = this.productBeforeSave\n await store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //go ahead and get these cached up\n }\n\n get initialProductFlowLoadingComplete() {\n return store.getters.productOfferings.initialProductFlowLoadingComplete\n }\n\n get showCurrencyWarning() {\n if (store.getters.partners.currencyWarningNeeded && this.logic.isNewProdConfig.value) {\n return !store.getters.partners.hasAcceptedCurrencyWarning\n }\n return false\n }\n\n get isLoading() {\n if (this.logic.isNewProdConfig.value) {\n return this.loading\n } else {\n return !this.initialProductFlowLoadingComplete\n }\n }\n\n private get hasEarlyRegistration() {\n const isDate = this.league.lateDate instanceof Date && !isNaN(this.league.lateDate.valueOf())\n\n if (isDate) {\n const date = this.league.lateDate as Date\n return date !== null\n }\n\n return this.league.lateDate !== null\n }\n\n private newId = ''\n\n get selectedProductOffering() {\n return store.getters.productOfferings.selectedProductOfferingConfig\n }\n\n private async productBeforeSave() {\n this.league.productOfferingConfig = this.selectedProductOffering\n this.league.productOfferingConfig.accountNumber = null\n\n /*****************************************************************\n ** If this is a new league, or the user wants to ignore warnings\n ** skip validation and return true\n *****************************************************************/\n\n if (this.userWantsToIgnoreWarnings || this.logic.isNewProdConfig.value || !this.league.upwardLeagueID) {\n this.userWantsToIgnoreWarnings = false\n return true\n }\n\n //Validation only used for warnings. Broken rules handled in the update call\n const result = await leaguesClient.validateExisting(\n this.league.upwardLeagueID ?? '',\n cloneDeep(this.league)\n )\n this.warnings = result.data?.warnings ?? null\n return result && result.data ? result.data?.warnings.length < 1 : true\n }\n\n private async afterSaveNewMethod() {\n const savedLeague = await this.create({ item: this.league })\n if (savedLeague) {\n this.newId = savedLeague.upwardLeagueID!\n }\n this.modalIsVisible = true\n }\n\n /*\n * Calculate saveDisabled\n */\n\n get maxTouchedParticipantKit1Step() {\n return store.getters.productFlow.maxTouchedParticipantKit1Step\n }\n get maxTouchedParticipantKit2Step() {\n return store.getters.productFlow.maxTouchedParticipantKit2Step\n }\n get saveDisabled() {\n // SPORT\n let sportCanSave = true\n const sportCatalog = store.getters.productOfferings.displayableProductCatalogs.filter(\n (c) => !c.isCheer\n )[0]\n if (sportCatalog && sportCatalog.categories) {\n sportCanSave = this.maxTouchedParticipantKit1Step >= sportCatalog.categories.length + 1\n }\n\n // CHEER\n let cheerCanSave = true\n if (store.getters.leagueAbstraction.hasCheer) {\n const cheerCatalog = store.getters.productOfferings.displayableProductCatalogs.filter(\n (c) => c.isCheer\n )[0]\n if (cheerCatalog && cheerCatalog.categories) {\n cheerCanSave = this.maxTouchedParticipantKit2Step >= cheerCatalog.categories?.length + 1\n }\n }\n\n return !sportCanSave || !cheerCanSave\n }\n\n private onModalStateChange() {\n this.$router.push(`/programs/league/${this.storeLeague.upwardLeagueID}/setup/information`)\n }\n\n ignoreWarnings() {\n this.userWantsToIgnoreWarnings = true\n this.saveAndContinue()\n }\n\n @Watch('isDirty')\n dirtyChanged() {\n if (!this.isDirty) this.userWantsToIgnoreWarnings = false\n }\n @Watch('warnings')\n warningsChanged() {\n this.showWarnings = this.warnings ? this.warnings.length > 0 : false\n }\n}\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!./Products.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!./Products.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Products.vue?vue&type=template&id=f9b49f36&\"\nimport script from \"./Products.vue?vue&type=script&lang=ts&\"\nexport * from \"./Products.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),(_vm.initialLoadDone)?_c('div',{staticClass:\"row pt-3 no-padding-top\"},[_vm._m(1),_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Display Name\",\"required\":\"\"},model:{value:(_vm.league.publicDisplayName),callback:function ($$v) {_vm.$set(_vm.league, \"publicDisplayName\", $$v)},expression:\"league.publicDisplayName\"}}),_c('date-time-input',{attrs:{\"label\":\"Online registration Start\",\"required\":\"\",\"maxDate\":_vm.onlineRegistrationEndDate ? _vm.onlineRegistrationEndDate : undefined},model:{value:(_vm.onlineRegistrationBeginDate),callback:function ($$v) {_vm.onlineRegistrationBeginDate=$$v},expression:\"onlineRegistrationBeginDate\"}}),_c('date-time-input',{attrs:{\"label\":\"Online registration End\",\"required\":\"\",\"minDate\":_vm.onlineRegistrationBeginDate ? _vm.onlineRegistrationBeginDate : undefined},model:{value:(_vm.onlineRegistrationEndDate),callback:function ($$v) {_vm.onlineRegistrationEndDate=$$v},expression:\"onlineRegistrationEndDate\"}}),_c('div',{staticClass:\"row pt-6\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('input-label',{attrs:{\"label\":\"Payment Options\",\"required\":\"\"}}),(!_vm.isGlobalPartner)?_c('checkbox-input',{attrs:{\"label\":\"Credit Card\",\"enabled\":_vm.ccEnabled,\"showHelp\":true},on:{\"helpClicked\":function($event){_vm.showCreditCardHelp = true}},model:{value:(_vm.league.registrationInfo.allowCreditCard),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"allowCreditCard\", $$v)},expression:\"league.registrationInfo.allowCreditCard\"}}):_vm._e(),_c('modal',{attrs:{\"title\":\"HELP: Credit Card Payment Options\",\"is-small\":true},model:{value:(_vm.showCreditCardHelp),callback:function ($$v) {_vm.showCreditCardHelp=$$v},expression:\"showCreditCardHelp\"}},[_c('div',{staticClass:\"p-5\"},[_vm._v(\" Once account information has been provided, electronic funds transfers will occur on the first and third Wednesday of each month. They will be deposited into your designated account the following day. \")])]),(_vm.ccEnabled)?_c('span',{staticClass:\"small pl-11\"},[_vm._v(\"Current EFT Account last 4 digits: \"),_c('b',[_vm._v(_vm._s(_vm.eftBankAcctLast4))]),_vm._v(\". \"),_c('br'),_c('span',{staticClass:\"pl-11\"},[_vm._v(\"If this has changed, please \")]),_c('a',{staticClass:\"p-0 m-0 align-baseline btn btn-link small\",attrs:{\"href\":\"#\",\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();_vm.eftModalIsVisible = true}}},[_vm._v(\" submit a new form. \")])]):_c('span',{staticClass:\"small pl-11\"},[_vm._v(\" You cannot accept credit card payments yet. \"),_c('br'),_c('a',{staticClass:\"p-0 m-0 align-baseline btn btn-link small pl-11\",attrs:{\"href\":\"#\",\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();_vm.eftModalIsVisible = true}}},[_vm._v(\" Get set up to receive credit card payments\")]),(_vm.showAccessCode)?_c('br'):_vm._e(),(_vm.showAccessCode)?_c('span',{staticClass:\"pl-11\"},[_vm._v(\" Current Docusign Access Code: \"),_c('b',[_vm._v(_vm._s(_vm.accessCode))])]):_vm._e(),(_vm.showAccessCode)?_c('br'):_vm._e(),(_vm.showAccessCode)?_c('span',{staticClass:\"pl-11 env-status\"},[_vm._v(\" Current Docusign Envelope Status: \"),_c('b',[_vm._v(_vm._s(_vm.envStatus))])]):_vm._e()]),_c('checkbox-input',{attrs:{\"label\":\"Pay in person by cash or check\"},model:{value:(_vm.league.registrationInfo.allowPayLater),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"allowPayLater\", $$v)},expression:\"league.registrationInfo.allowPayLater\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.league.registrationInfo.allowCreditCard),expression:\"league.registrationInfo.allowCreditCard\"}],attrs:{\"label\":\"Ask for donations\"},model:{value:(_vm.league.registrationInfo.allowDonations),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"allowDonations\", $$v)},expression:\"league.registrationInfo.allowDonations\"}})],1),(_vm.league.registrationInfo.allowDonations)?_c('div',{staticClass:\"col-xl-12\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_c('memo-input',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.league.registrationInfo.allowDonations),expression:\"league.registrationInfo.allowDonations\"}],attrs:{\"label\":\"Message to parents on how funds will be used\"},model:{value:(_vm.league.registrationInfo.donationExplanation),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"donationExplanation\", $$v)},expression:\"league.registrationInfo.donationExplanation\"}})],1)]):_vm._e()]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('html-editor',{attrs:{\"label\":\"Pre-registration Information for Parents\",\"max-length\":1024},model:{value:(_vm.league.registrationInfo.registrationStartMessage),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"registrationStartMessage\", $$v)},expression:\"league.registrationInfo.registrationStartMessage\"}})],1),_c('div',{staticClass:\"col-12\"},[_c('html-editor',{attrs:{\"label\":\"Registration Confirmation Message for Parents\",\"max-length\":1024},model:{value:(_vm.league.registrationInfo.confirmationMessage),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"confirmationMessage\", $$v)},expression:\"league.registrationInfo.confirmationMessage\"}})],1)]),_c('hr'),_c('h5',[_vm._v(\"Contact Details\")]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('text-input',{attrs:{\"label\":\"Name\"},model:{value:(_vm.league.registrationInfo.contactLine1),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"contactLine1\", $$v)},expression:\"league.registrationInfo.contactLine1\"}}),_c('text-input',{attrs:{\"label\":\"Address Line 1\"},model:{value:(_vm.league.registrationInfo.contactLine2),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"contactLine2\", $$v)},expression:\"league.registrationInfo.contactLine2\"}}),_c('text-input',{attrs:{\"label\":\"Email\"},model:{value:(_vm.league.registrationInfo.contactLine5),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"contactLine5\", $$v)},expression:\"league.registrationInfo.contactLine5\"}})],1),_c('div',{staticClass:\"col-xl-6\"},[_c('text-input',{attrs:{\"label\":\"Phone\"},model:{value:(_vm.league.registrationInfo.contactLine4),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"contactLine4\", $$v)},expression:\"league.registrationInfo.contactLine4\"}}),_c('text-input',{attrs:{\"label\":\"Address Line 2\"},model:{value:(_vm.league.registrationInfo.contactLine3),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"contactLine3\", $$v)},expression:\"league.registrationInfo.contactLine3\"}})],1)])],1),_c('div',{staticClass:\"col-xl-6 pt-3 border-xl-left\"},[_c('h5',[_vm._v(\"Discounts\")]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{attrs:{\"label\":\"Offer discounts for families registering multiple children?\"},model:{value:(_vm.hasMultiChildDiscount),callback:function ($$v) {_vm.hasMultiChildDiscount=$$v},expression:\"hasMultiChildDiscount\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hasMultiChildDiscount),expression:\"hasMultiChildDiscount\"}],staticClass:\"col-xl-12 pt-0\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_vm._v(\" For each additonal child registered, reduce the total amount by \"),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6\"},[_c('currency-input',{attrs:{\"tab-index\":1,\"label\":\"Discount Second Child\",\"append\":\"off second child\"},model:{value:(_vm.league.registrationInfo.twoChildDiscountAmount),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"twoChildDiscountAmount\", $$v)},expression:\"league.registrationInfo.twoChildDiscountAmount\"}})],1),_c('div',{staticClass:\"col-sm-6\"},[_c('currency-input',{attrs:{\"tab-index\":2,\"label\":\"Discount Third Child\",\"append\":\"off third child\"},model:{value:(_vm.league.registrationInfo.threeChildDiscountAmount),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"threeChildDiscountAmount\", $$v)},expression:\"league.registrationInfo.threeChildDiscountAmount\"}})],1),_c('div',{staticClass:\"col-sm-6\"},[_c('currency-input',{attrs:{\"tab-index\":3,\"label\":\"Discount Fourth Child\",\"append\":\"off fourth children\"},model:{value:(_vm.league.registrationInfo.fourOrMoreChildDiscountAmount),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"fourOrMoreChildDiscountAmount\", $$v)},expression:\"league.registrationInfo.fourOrMoreChildDiscountAmount\"}})],1)])])]),_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{attrs:{\"label\":\"Offer discount codes for registrants?\"},model:{value:(_vm.league.registrationInfo.allowDiscountCodes),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"allowDiscountCodes\", $$v)},expression:\"league.registrationInfo.allowDiscountCodes\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.league.registrationInfo.allowDiscountCodes),expression:\"league.registrationInfo.allowDiscountCodes\"}],staticClass:\"col-xl-12 pt-0\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_c('yes-no-input',{attrs:{\"label\":\"Email League Director each time discount code is used\"},model:{value:(_vm.league.registrationInfo.emailLDOnDiscountCodeUse),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"emailLDOnDiscountCodeUse\", $$v)},expression:\"league.registrationInfo.emailLDOnDiscountCodeUse\"}}),_c('manage-discount-codes',{attrs:{\"discount-codes\":_vm.league.registrationInfo.discountCodes}})],1)])]),_c('hr'),_c('h5',[_vm._v(\"Capacity\")]),_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{attrs:{\"label\":\"Enable capacity limits for the league, any grade, or gender?\"},model:{value:(_vm.showManageCapactiy),callback:function ($$v) {_vm.showManageCapactiy=$$v},expression:\"showManageCapactiy\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showManageCapactiy),expression:\"showManageCapactiy\"}],staticClass:\"col-xl-12\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('yes-no-input',{attrs:{\"label\":\"Offer a waitlist for those who exceed a set capacity?\"},model:{value:(_vm.league.registrationInfo.allowWaitlist),callback:function ($$v) {_vm.$set(_vm.league.registrationInfo, \"allowWaitlist\", $$v)},expression:\"league.registrationInfo.allowWaitlist\"}})],1)]),_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[(_vm.showCheerCapacities())?_c('h6',[_vm._v(_vm._s(_vm.getSportName())+\" Capacity\")]):_vm._e(),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('integer-input',{attrs:{\"label\":\"What is the maximum number of registrants for the program?\",\"required\":true},model:{value:(_vm.league.programs[0].capacity),callback:function ($$v) {_vm.$set(_vm.league.programs[0], \"capacity\", $$v)},expression:\"league.programs[0].capacity\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('text-input',{attrs:{\"label\":\"If your program is at capacity, what message would you like parents to see online?\",\"required\":true},model:{value:(_vm.sportCapacityMessage),callback:function ($$v) {_vm.sportCapacityMessage=$$v},expression:\"sportCapacityMessage\"}})],1)]),_c('manage-capacity-rules',{attrs:{\"grades\":_vm.getLeagueGradesList(0),\"upwardLeagueID\":_vm.league.upwardLeagueID,\"typeProgramID\":_vm.league.programs[0].typeProgramID,\"isByAge\":_vm.isByAge},model:{value:(_vm.league.programs[0].registrationCapacitiesByGradeGender),callback:function ($$v) {_vm.$set(_vm.league.programs[0], \"registrationCapacitiesByGradeGender\", $$v)},expression:\"league.programs[0].registrationCapacitiesByGradeGender\"}})],1),(_vm.showCheerCapacities())?_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_c('h6',[_vm._v(\"Cheer Capacity\")]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('integer-input',{attrs:{\"label\":\"Limit Number of Registrants\",\"required\":true},model:{value:(_vm.league.programs[1].capacity),callback:function ($$v) {_vm.$set(_vm.league.programs[1], \"capacity\", $$v)},expression:\"league.programs[1].capacity\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('text-input',{attrs:{\"label\":\"Capacity Reached Message\",\"required\":true},model:{value:(_vm.cheerCapacityMessage),callback:function ($$v) {_vm.cheerCapacityMessage=$$v},expression:\"cheerCapacityMessage\"}})],1)]),_c('manage-capacity-rules',{attrs:{\"grades\":_vm.getLeagueGradesList(1),\"upwardLeagueID\":_vm.league.upwardLeagueID,\"typeProgramID\":_vm.league.programs[1].typeProgramID,\"isByAge\":_vm.isByAge},model:{value:(_vm.league.programs[1].registrationCapacitiesByGradeGender),callback:function ($$v) {_vm.$set(_vm.league.programs[1], \"registrationCapacitiesByGradeGender\", $$v)},expression:\"league.programs[1].registrationCapacitiesByGradeGender\"}})],1):_vm._e()]),_c('hr'),_c('h5',[_vm._v(\"Private Registration Links\")]),_vm._m(2),_c('manage-bypass-links',{attrs:{\"bypass-links\":_vm.league.registrationInfo.bypassLinks,\"max-date\":_vm.league.seasonEndDate,\"upw\":_vm.league.upwardLeagueID}})],1),_vm._m(3)]):_vm._e(),_c('setup-complete-confirmation',{attrs:{\"upwardLeagueId\":_vm.newId,\"hasOnlineRegistration\":true},on:{\"change\":_vm.onModalStateChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}}),_c('EFTAuthorizationRequestModal',{attrs:{\"isVisible\":_vm.eftModalIsVisible,\"eftStatus\":_vm.eftStatus},on:{\"sent\":_vm.eftAuthSent}}),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('save-continue-button',{attrs:{\"program\":_vm.league,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Online Participant Registration\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"alert alert-info\"},[_vm._v(\" Any changes made to this setup can take up to 15 minutes to be reflected on your registration site. \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pl-8 pb-3\"},[_c('span',{staticClass:\"small\"},[_vm._v(\"Create registration links to support unique situations outside of your standard registration settings. For example, if you want to allow coaches to register before you open registration to the public.\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-12\"},[_c('hr',{staticClass:\"pt-0 mt-0\"})])}]\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\nimport LeagueSetupMixin from '@/views/Leagues/LeagueSetupMixin'\nimport * as authorizationStore from '@/store/authorization'\nimport Loading from '@/elements/Loading.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport DateTimeInput from '@/elements/DateTimeInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport EFTAuthorizationRequestModal from '@/components/EFTAuthorizationRequestModal.vue'\nimport { EFTRequestStatus } from '@/models/Partner/EFTRequestStatus'\nimport partnersClient from '@/clients/partnersClient'\nimport * as leaguesStore from '@/store/leagues'\nimport { Action, Getter } from 'vuex-class'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { League } from '@/GeneratedTypes/League'\nimport SetupCompleteConfirmation from '@/components/SetupCompleteConfirmation.vue'\nimport ManageDiscountCodes from '@/components/ManageDiscountCodes.vue'\nimport ManageCapacityRules from '@/components/ManageCapacityRules.vue'\nimport ManageBypassLinks from '@/components/ManageBypassLinks.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\nimport { getGradeUsage, GradeUsage } from '@/services/gradeService'\nimport properCase from '@/filters/properCase'\nimport SaveContinueButton from '@/elements/SaveContinueButton.vue'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport dayjs from 'dayjs'\nimport store from '@/store'\nimport Modal from '@/components/Modal.vue'\n\n@Component({\n components: {\n Loading,\n TextInput,\n DateTimeInput,\n CheckboxInput,\n MemoInput,\n YesNoInput,\n InputLabel,\n CurrencyInput,\n SetupCompleteConfirmation,\n ManageDiscountCodes,\n ManageCapacityRules,\n ManageBypassLinks,\n IntegerInput,\n HorizontalTabs,\n SaveContinueButton,\n HtmlEditor,\n EFTAuthorizationRequestModal,\n Modal,\n },\n})\nexport default class Registration extends Mixins(LeagueSetupMixin) {\n @Action(leaguesStore.actionNames.create, { namespace: leaguesStore.namespace })\n private readonly create!: ({ item }: { item: League }) => Promise\n\n @Getter(authorizationStore.getterNames.firstAccountNumber, { namespace: authorizationStore.namespace })\n private accountNumber!: string\n\n // TODO Where do these hook into the league object\n private hasMultiChildDiscount = false\n private modalIsVisible = false\n private maxNumberOfRegistrations = 0\n private showManageCapactiy = false\n private sportCapacityMessage = ''\n private cheerCapacityMessage = ''\n private newId = ''\n private selectedCapacityTab = 'sport'\n private eftBankAcctLast4 = ''\n private onlineRegistrationBeginDate: Date | null = null\n private onlineRegistrationEndDate: Date | null = null\n private registrationLoaded = false\n private eftModalIsVisible = false\n private eftStatus: EFTRequestStatus | null = null\n private showCreditCardHelp = false\n async mounted() {\n this.afterSaveNew = this.afterSaveNewMethod\n this.beforeSave = this.beforeSaveProcessing\n\n if (this.league.upwardLeagueID) {\n this.nextRoute = '/'\n }\n\n this.eftStatus = await partnersClient.getEFTRequestStatus(this.accountNumber)\n }\n\n get showAccessCode(): boolean {\n return this.eftStatus?.status != 'declined' && this.eftStatus?.status != 'voided' && this.accessCode != ''\n }\n\n get accessCode(): string {\n return this.eftStatus?.accessCode ?? ''\n }\n\n get envStatus(): string {\n return this.eftStatus?.status ?? ''\n }\n\n get isGlobalPartner(): boolean {\n return (this.league.accounts && this.league.accounts[0].accountNumber.startsWith('G')) ?? false\n }\n\n get partner() {\n return store.getters.partners.partnerInfo\n }\n\n get ccEnabled() {\n //for some reason this doesn't work\n //return this.eftBankAcctLast4 && this.eftBankAcctLast4 != ''\n if (this.eftBankAcctLast4 && this.eftBankAcctLast4 != '') {\n return true\n } else {\n return false\n }\n }\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n this.hasMultiChildDiscount =\n this.league.registrationInfo != null &&\n (this.league.registrationInfo.twoChildDiscountAmount > 0 ||\n this.league.registrationInfo.threeChildDiscountAmount > 0 ||\n this.league.registrationInfo.fourOrMoreChildDiscountAmount > 0)\n\n this.showManageCapactiy =\n ((this.league.programs &&\n this.league.programs[0].registrationCapacitiesByGradeGender &&\n this.league.programs[0].registrationCapacitiesByGradeGender.length > 0) ||\n (this.league.programs && this.league.programs[0].capacity > 0)) ??\n false\n\n this.sportCapacityMessage = this.league.programs ? this.league.programs[0].capacityMessage ?? '' : ''\n\n if (this.league.registrationInfo?.onlineRegistrationBeginDate) {\n this.onlineRegistrationBeginDate = this.league.registrationInfo?.onlineRegistrationBeginDate\n } else if (this.league.registrationBeginDate) {\n this.onlineRegistrationBeginDate = this.league.registrationBeginDate\n this.onlineRegistrationBeginDate.setHours(0, 0, 0, 0)\n }\n\n if (this.league.registrationInfo?.onlineRegistrationEndDate) {\n this.onlineRegistrationEndDate = this.league.registrationInfo?.onlineRegistrationEndDate\n } else if (this.league.registrationEndDate) {\n this.onlineRegistrationEndDate = this.league.registrationEndDate\n this.onlineRegistrationEndDate.setHours(23, 59, 59, 0)\n }\n\n if (this.league.programs && this.league.programs.length > 1) {\n this.cheerCapacityMessage = this.league.programs ? this.league.programs[1].capacityMessage ?? '' : ''\n }\n\n if (\n this.league.registrationInfo &&\n !this.league.registrationInfo.contactLine1 &&\n this.league.partnerContact?.firstName\n ) {\n this.league.registrationInfo.contactLine1 = `${this.league.partnerContact.firstName} ${this.league.partnerContact.lastName}`\n }\n\n if (\n this.league.registrationInfo &&\n !this.league.registrationInfo.contactLine4 &&\n this.league.partnerContact?.primaryPhoneNumber\n ) {\n this.league.registrationInfo.contactLine4 = this.league.partnerContact.primaryPhoneNumber\n }\n\n if (\n this.league.registrationInfo &&\n !this.league.registrationInfo.contactLine5 &&\n this.league.partnerContact?.emailAddress\n ) {\n this.league.registrationInfo.contactLine5 = this.league.partnerContact.emailAddress\n }\n\n // Always set the league.registrationInfo.allowSizingEntry to true per 2635\n if (this.league && this.league.registrationInfo) {\n this.league.registrationInfo.allowSizingEntry = true\n }\n\n if (this.league && this.league.accounts && this.league.accounts.length > 0) {\n if (this.accountNumber) {\n this.eftBankAcctLast4 = this.partner?.eftBankAcctLast4 ?? ''\n\n if (this.league.registrationInfo && !this.league?.registrationInfo.contactLine2) {\n this.league.registrationInfo.contactLine2 = `${this.partner?.address1_Line1} ${this.partner?.address1_Line2}`\n }\n\n if (this.league.registrationInfo && !this.league?.registrationInfo.contactLine3) {\n this.league.registrationInfo.contactLine3 = `${this.partner?.address1_City}, ${this.partner?.address1_StateOrProvince} ${this.partner?.address1_PostalCode}`\n }\n }\n }\n\n if (this.league && this.league.registrationInfo && (this.isGlobalPartner || !this.ccEnabled)) {\n this.league.registrationInfo.allowCreditCard = false\n }\n\n this.registrationLoaded = true\n }\n\n // eslint-disable-next-line require-await\n private async beforeSaveProcessing() {\n if (\n this.onlineRegistrationBeginDate &&\n this.onlineRegistrationEndDate &&\n this.onlineRegistrationBeginDate >= this.onlineRegistrationEndDate\n ) {\n throw new Error('Registration begin date cannot be before the end date')\n }\n\n if (this.league.registrationInfo && this.onlineRegistrationBeginDate) {\n this.league.registrationInfo.onlineRegistrationBeginDate = this.onlineRegistrationBeginDate\n }\n if (this.league.registrationInfo && this.onlineRegistrationEndDate) {\n this.league.registrationInfo.onlineRegistrationEndDate = this.onlineRegistrationEndDate\n }\n if (!this.showManageCapactiy && this.league && this.league.programs) {\n this.sportCapacityMessage = ''\n this.cheerCapacityMessage = ''\n for (let i = 0; i < this.league.programs.length; i++) {\n this.league.programs[i].capacity = 0\n this.league.programs[i].capacityMessage = ''\n this.league.programs[i].registrationCapacitiesByGradeGender = []\n }\n }\n\n if (this.league.registrationInfo && !this.showManageCapactiy) {\n this.league.registrationInfo.allowWaitlist = false\n }\n }\n\n private async afterSaveNewMethod() {\n const savedLeague = await this.create({ item: this.league })\n if (savedLeague) {\n this.newId = savedLeague.upwardLeagueID!\n }\n\n this.modalIsVisible = true\n }\n\n private onModalStateChange() {\n this.$router.push(`/programs/league/${this.newId}/setup/information`)\n }\n\n private async eftAuthSent() {\n this.eftModalIsVisible = false\n this.eftStatus = await partnersClient.getEFTRequestStatus(this.accountNumber)\n }\n\n private getLeagueGradesList(index: number): GradeUsage[] {\n if (this.league.programs && this.league.programs.length > index) {\n const typeProgramId = this.league.programs[index].typeProgramID\n\n return getGradeUsage(this.league, typeProgramId)\n }\n return []\n }\n\n @Watch('league.programs', { immediate: true, deep: true })\n private addCapacityMessage() {\n this.updateCapacityMessage()\n }\n\n @Watch('cheerCapacityMessage')\n @Watch('sportCapacityMessage')\n private addCapacityMessageWhenCapacityMessageUpdated() {\n this.updateCapacityMessage()\n }\n\n @Watch('showManageCapactiy')\n private setDirty() {\n if (this.registrationLoaded) {\n this.setIsDirty({ isDirty: true })\n }\n\n if (this.league.registrationInfo && !this.showManageCapactiy) {\n this.league.registrationInfo.allowWaitlist = false\n }\n }\n\n @Watch('onlineRegistrationEndDate')\n endDateChange(newVal: string, oldVal: string) {\n if (newVal == 'Invalid Date') return\n if (oldVal == '') {\n this.onlineRegistrationEndDate = dayjs(this.onlineRegistrationEndDate ?? '')\n .hour(23)\n .minute(59)\n .second(59)\n .toDate()\n }\n }\n\n private updateCapacityMessage() {\n if (this.league.programs && this.league.programs[0].registrationCapacitiesByGradeGender) {\n this.league.programs[0].capacityMessage = this.sportCapacityMessage\n for (const rcbgg of this.league.programs[0].registrationCapacitiesByGradeGender) {\n rcbgg.capacityMessage = this.sportCapacityMessage\n }\n }\n\n if (\n this.league.programs &&\n this.league.programs.length > 1 &&\n this.league.programs[1].registrationCapacitiesByGradeGender\n ) {\n this.league.programs[1].capacityMessage = this.cheerCapacityMessage\n for (const rcbgg of this.league.programs[1].registrationCapacitiesByGradeGender) {\n rcbgg.capacityMessage = this.cheerCapacityMessage\n }\n }\n }\n\n private showCheerCapacities(): boolean {\n return (this.league.programs && this.league.programs.length > 1) ?? false\n }\n\n private getSportName(): string {\n if (this.league.programs && this.league.programs.length > 0) {\n return properCase(this.league.programs[0].typeProgramID)\n }\n return ''\n }\n}\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!./Registration.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!./Registration.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Registration.vue?vue&type=template&id=7eeffe9a&scoped=true&\"\nimport script from \"./Registration.vue?vue&type=script&lang=ts&\"\nexport * from \"./Registration.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Registration.vue?vue&type=style&index=0&id=7eeffe9a&lang=scss&scoped=true&\"\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 \"7eeffe9a\",\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('div',{staticClass:\"mb-5 pb-5\"},[(!_vm.initialLoadDone)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('loading')],1)]):_vm._e(),(_vm.initialLoadDone)?_c('div',[_c('h5',[_vm._v(\"Program Information\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"League Name\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.league.leagueName))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" Participating - Boys\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.boyGrades[0])+\" - \"+_vm._s(_vm.boyGrades[_vm.boyGrades.length - 1]))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" Participating - Girls\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.girlGrades[0])+\" - \"+_vm._s(_vm.girlGrades[_vm.girlGrades.length - 1]))])]),(_vm.hasCheer)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" Participating - Cheerleading\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.cheerGrades[0])+\" - \"+_vm._s(_vm.cheerGrades[_vm.cheerGrades.length - 1]))])]):_vm._e(),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Allow Coach Links\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.league.allowCoachLinks ? 'Yes' : 'No'))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Allow Carpool Links\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.league.allowCarpoolLinks ? 'Yes' : 'No'))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Allow Practice Night Exclusions\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.allowPracticeNightExclusions ? 'Yes' : 'No')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Available Practice Nights\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.internalPracticeNights.join(', ')))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Ministry Objectives\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.league.programMissionObjective)}})]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"League Finder Message\")]),(_vm.league.leagueFinderMessage)?_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.league.leagueFinderMessage)}}):_vm._e()]),_c('h5',[_vm._v(\"Registration Information\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Receiving Registration from\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.registrationOption.registrationTypes.includes('online') ? 'Online' : '')+_vm._s(_vm.registrationOption.registrationTypes.length > 1 ? ', ' : '')+_vm._s(_vm.registrationOption.registrationTypes.includes('paper') ? 'Mail / In Person / Brochure' : '')+\" \")])]),(_vm.league.playerUDFs.length || _vm.getCoachUdfList().length)?_c('h6',[_vm._v(\" Additional Participant or Coach Information \")]):_vm._e(),_vm._l((_vm.league.playerUDFs),function(item,key){return _c('div',{key:item.udfid},[_c('div',{staticClass:\"tag\"},[_vm._v(\"Participants \"+_vm._s(key + 1))]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(item.label)+\" \")])])}),_vm._l((_vm.getCoachUdfList()),function(item,key){return _c('div',{key:item.udfid},[_c('div',{staticClass:\"tag\"},[_vm._v(\"Coach \"+_vm._s(key + 1))]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(item.label)+\" \")])])}),_c('h5',[_vm._v(\"Key Dates & Places\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Registration Begins\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.league.registrationBeginDate,'MMM dd, yyyy'))+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Early Registration Ends\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.lateDate ? _vm.date(_vm.league.lateDate, 'MMM dd, yyyy') : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Registration Deadline\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.registrationEndDate ? _vm.date(_vm.league.registrationEndDate, 'MMM dd, yyyy') : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"First Evaluation\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.league.firstEvalDate,'MMM dd, yyyy')))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"First Practice\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.league.firstPracticeDate,'MMM dd, yyyy')))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"First Game\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.league.firstGameDate,'MMM dd, yyyy')))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Awards Processing Date\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.awardsOrderDate ? _vm.date(_vm.league.awardsOrderDate, 'MMM dd, yyyy') : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Season End Date\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.seasonEndDate ? _vm.date(_vm.league.seasonEndDate, 'MMM dd, yyyy') : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag.aligntop\"},[_vm._v(\"Evaluation Information for Parents\")]),(_vm.league.evalDescription)?_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.league.evalDescription)}}):_vm._e()]),_c('h5',[_vm._v(\"Leadership\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"League Director\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.league.partnerContact.firstName)+\" \"+_vm._s(_vm.league.partnerContact.lastName))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Primary Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.formatPhoneNumber(_vm.league.partnerContact.primaryPhoneNumber))+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Secondary Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.partnerContact.secondaryPhoneNumber ? _vm.formatPhoneNumber(_vm.league.partnerContact.secondaryPhoneNumber) : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Alternate Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.partnerContact.alternatePhoneNumber ? _vm.formatPhoneNumber(_vm.league.partnerContact.alternatePhoneNumber) : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Email\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.partnerContact.email ? _vm.league.partnerContact.email : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Years Experience\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.league.partnerContact.yearsExperience))])]),_c('h5',[_vm._v(\"Partnership\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Church Partnership Arrangement\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.league.accounts.length)+\" church, one league\")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Number of Churches\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.league.accounts.length))])]),_vm._l((_vm.league.accounts),function(item,index){return _c('div',{key:item.accountNumber,staticClass:\"px-4 pb-3 mt-2 border callout shadow-sm\"},[_c('h6',[_vm._v(\"Church Partner \"+_vm._s(index + 1))]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Name\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(item.accountNumber))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Is a host church\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(item.leagueOwner ? 'Yes' : 'No'))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Boy \"+_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" participating\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.getGradeString(item, true, false)))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Girl \"+_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" participating\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.getGradeString(item, false, false)))])]),_c('div',[(_vm.hasCheer)?_c('div',{staticClass:\"tag\"},[_vm._v(\"Cheer \"+_vm._s(_vm.isByAge ? 'Ages' : 'Grades')+\" participating\")]):_vm._e(),(_vm.hasCheer)?_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.getGradeString(item, false, true))+\" \")]):_vm._e()])])}),_c('h5',[_vm._v(\"Pricing\")]),_vm._l((_vm.league.programs),function(item,index){return _c('div',{key:item.typeProgramID},[(_vm.hasEarlyRegistration)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.formattedProgram(item.typeProgramID))+\" Early Registration Fee\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(item.earlyRegistrationFee)))])]):_vm._e(),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.formattedProgram(item.typeProgramID))+\" Registration Fee\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(item.registrationFee)))])])])}),_c('h5',[_vm._v(\"Online Registration\")]),(!_vm.league.registrationInfo)?[_c('div',{staticClass:\"tag\"},[_vm._v(\"No online registration\")])]:[_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Start Date / Time\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.league.registrationInfo.onlineRegistrationBeginDate,'MMM dd, yyyy h:mm a'))+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"End Date / Time\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.league.registrationInfo.onlineRegistrationEndDate,'MMM dd, yyyy h:mm a'))+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Payment Options\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.registrationInfo.allowCreditCard ? 'Credit Card' : '')+\" \"+_vm._s(_vm.league.registrationInfo.allowCreditCard && _vm.league.registrationInfo.allowPayLater ? '|' : '')+\" \"+_vm._s(_vm.league.registrationInfo.allowPayLater ? 'Pay in person by cash or check' : '')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Asking for product size\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.registrationInfo.allowSizingEntry ? 'Yes' : 'No')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Offering multi-child discount?\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.registrationInfo != null && (_vm.league.registrationInfo.twoChildDiscountAmount > 0 || _vm.league.registrationInfo.threeChildDiscountAmount > 0 || _vm.league.registrationInfo.fourOrMoreChildDiscountAmount > 0) ? 'Yes' : 'No')+\" \")]),(\n _vm.league.registrationInfo != null &&\n (_vm.league.registrationInfo.twoChildDiscountAmount > 0 ||\n _vm.league.registrationInfo.threeChildDiscountAmount > 0 ||\n _vm.league.registrationInfo.fourOrMoreChildDiscountAmount > 0)\n )?_c('div',{staticClass:\"pb-4\"},[_c('div',{staticClass:\"px-4 pb-0 mt-0 border callout shadow-sm\"},[(_vm.league.registrationInfo.twoChildDiscountAmount > 0)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Second child discount amount:\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.league.registrationInfo.twoChildDiscountAmount)))])]):_vm._e(),(_vm.league.registrationInfo.threeChildDiscountAmount > 0)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Third child discount amount:\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.league.registrationInfo.threeChildDiscountAmount)))])]):_vm._e(),(_vm.league.registrationInfo.fourChildDiscountAmount > 0)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Fourth child discount amount:\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.league.registrationInfo.fourChildDiscountAmount)))])]):_vm._e()])]):_vm._e()]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Allowing Discount Codes?\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.registrationInfo.allowDiscountCodes ? 'Yes' : 'No')+\" \")])]),(_vm.league.registrationInfo.allowDiscountCodes)?_c('div',{staticClass:\"pb-4\"},[_c('div',{staticClass:\"px-4 pb-0 mt-0 border callout shadow-sm\"},[_c('div',{staticClass:\"pt-1 tag\"},[_vm._v(\"Discount Details\")]),_c('div',[_c('div',{staticClass:\"mt-5\"},[_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',_vm._l((_vm.league.registrationInfo.discountCodes),function(item,index){return _c('tr',{key:item.id},[_c('td',[_vm._v(_vm._s(item.discountCode))]),_c('td',[_vm._v(_vm._s(item.description))]),_c('td',[_vm._v(_vm._s(item.discountAmount))]),_c('td',[_vm._v(_vm._s(item.maxUsages))]),_c('td',[_vm._v(_vm._s(item.numberOfUsages))])])}),0)])])])])]):_vm._e(),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Accepting Donations\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.league.registrationInfo.allowDonations ? 'Yes' : 'No')+\" \")])]),(_vm.league.registrationInfo.donationExplanation)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Donation Fund Usage Explanation\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.league.registrationInfo.donationExplanation))])]):_vm._e(),_vm._l((_vm.league.programs),function(item,index){return _c('div',{key:item.typeProgramID + '_capacity'},[(item.capacity && item.capacity > 0)?_c('div',[_c('div',[_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.formattedProgram(item.typeProgramID))+\" Capacity Limit\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(item.capacity))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(_vm._s(_vm.formattedProgram(item.typeProgramID))+\" Capacity Message\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(item.capacityMessage)}})]),_c('div',[_c('div',{staticClass:\"tag pt-2\"},[_vm._v(\" \"+_vm._s(_vm.formattedProgram(item.typeProgramID))+\" Gender/\"+_vm._s(_vm.isByAge ? 'Age' : 'Grade')+\" Capacity Rules \")]),_c('div',[(\n !item.registrationCapacitiesByGradeGender ||\n item.registrationCapacitiesByGradeGender.length == 0\n )?_c('div',{staticClass:\"data\"},[_vm._v(\" None \")]):_c('div',{staticClass:\"mt-5\"},[_c('table',{staticClass:\"table\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Start \"+_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('th',[_vm._v(\"End \"+_vm._s(_vm.isByAge ? 'Age' : 'Grade'))]),_c('th',[_vm._v(\"Gender\")]),_c('th',[_vm._v(\"Capacity\")])])]),_c('tbody',_vm._l((item.registrationCapacitiesByGradeGender),function(rule,index){return _c('tr',{key:rule.id + '_capacityRule'},[_c('td',[_vm._v(_vm._s(_vm.getProperGradeLabel(rule.startTypeGradeID, _vm.isByAge, '')))]),_c('td',[_vm._v(_vm._s(_vm.getProperGradeLabel(rule.stopTypeGradeID, _vm.isByAge, '')))]),(rule.gender == 'F')?_c('td',[_vm._v(\"Female\")]):(rule.gender == 'M')?_c('td',[_vm._v(\"Male\")]):_c('td',[_vm._v(\"Both\")]),_c('td',[_vm._v(_vm._s(rule.capacity))])])}),0)])])])])])]):_vm._e()])}),(_vm.league.registrationInfo.registrationStartMessage)?_c('div',[_c('div',{staticClass:\"tag.aligntop\"},[_vm._v(\"Pre-Registration Information\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.league.registrationInfo.registrationStartMessage)}})]):_vm._e(),(_vm.league.registrationInfo.confirmationMessage)?_c('div',[_c('div',{staticClass:\"tag.aligntop\"},[_vm._v(\"Registration Confirmation Message\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.league.registrationInfo.confirmationMessage)}})]):_vm._e()],_c('h5',[_vm._v(\"Products\")]),(_vm.productsLoading)?_c('loading',{attrs:{\"id-small\":\"\"}}):(!_vm.productList.length)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Legacy Products\")]),_c('div',{staticClass:\"data\"},[_vm._v(\"Not available for display\")])]):_vm._l((_vm.productList),function(l,i){return _c('div',{key:i},[_c('div',{staticClass:\"tag product\"},[_vm._v(\" \"+_vm._s(_vm.formattedProgram(l.typeProgramID))+\" \")]),_vm._l((l.categories),function(c,i){return _c('div',{key:i},_vm._l((c.products),function(p,i){return _c('div',{key:(\"\" + i + (p.productID) + \"}\"),staticClass:\"ml-5 data mb-0\"},[_vm._v(\" \"+_vm._s(p.cmsProductName)+\" \")])}),0)})],2)})],2):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Code\")]),_c('th',[_vm._v(\"Description\")]),_c('th',[_vm._v(\"Amount\")]),_c('th',[_vm._v(\"Max Usages\")]),_c('th',[_vm._v(\"# of Usages\")])])])}]\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\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { Getter } from 'vuex-class'\nimport { cloneDeep } from 'lodash'\n\nimport { ProgramTypes } from '@/lib/common/ProgramTypes'\n\nimport LeagueSetupMixin from '@/views/Leagues/LeagueSetupMixin'\nimport Loading from '@/elements/Loading.vue'\n\nimport { getCoachUdfs } from '@/services/udfService'\nimport { getGradesList, getProperGradeLabel } from '@/services/gradeService'\nimport {\n getProgramRegistrationOption,\n setProgramRegistrationOption,\n RegistrationType,\n} from '@/services/registrationInfoService'\nimport { getGradesListFromAccount } from '@/services/gradeService'\n\nimport { LeagueAccount } from '@/GeneratedTypes/LeagueAccount.ts'\nimport { League } from '@/GeneratedTypes/League'\n\nimport date from '@/filters/date'\nimport properCase from '@/filters/properCase'\nimport currency from '@/filters/currency'\nimport { formatPhoneNumber } from '@/services/phoneNumberService'\n\nimport offeringClient from '@/clients/productOfferingClient'\n\nimport * as leaguesStore from '@/store/leagues'\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\n\n@Component({\n components: {\n Loading,\n },\n filters: {\n date,\n properCase,\n currency,\n },\n methods: {\n formatPhoneNumber,\n date,\n getProperGradeLabel,\n },\n})\nexport default class Archive extends Mixins(LeagueSetupMixin) {\n @Getter(leaguesStore.getterNames.currentItem, { namespace: leaguesStore.namespace })\n private currentLeague!: League\n\n private girlGrades: string[] = []\n private boyGrades: string[] = []\n private cheerGrades: string[] = []\n private internalPracticeNights: string[] = []\n\n private registrationOption: RegistrationType = { registrationTypes: [], onlineRegistrationType: '' }\n\n private get hasCheer(): boolean {\n return (this.league.programs && this.league.programs.length > 1) ?? false\n }\n\n private get typeProgramId(): string {\n if (this.league.programs && this.league.programs.length > 0) {\n return this.league.programs[0].typeProgramID\n }\n return ''\n }\n\n private get hasEarlyRegistration(): boolean {\n const isDate = this.league.lateDate instanceof Date && !isNaN(this.league.lateDate.valueOf())\n\n if (isDate) {\n const date = this.league.lateDate as Date\n return date !== null\n }\n\n return this.league.lateDate !== null\n }\n\n @Watch('league.practiceNights', { immediate: true })\n private onLeaguePracticeNightsChange() {\n this.internalPracticeNights = []\n\n if (!this.league.practiceNights) {\n return\n }\n\n for (const pn of this.league.practiceNights) {\n this.internalPracticeNights.push(pn.typeDayID)\n }\n }\n\n private onInternalPracticeNightsChange() {\n this.league.practiceNights = []\n\n for (const typeDayID of this.internalPracticeNights) {\n this.league.practiceNights.push({\n typeDayID,\n startTime: '00:00:01',\n endTime: '23:59:59',\n })\n }\n }\n\n @Watch('initialLoadDone')\n private async onInitialLoadDone() {\n this.setGradesValue()\n this.setRegistrationOption()\n await this.getProducts()\n }\n\n formattedProgram(programTypeID: string) {\n return ProgramTypes[programTypeID]\n }\n productsLoading = false\n productList: (ProductOfferingInfo | null)[] = []\n async getProducts() {\n //get all product offering ids across all league types\n const offeringIds = [\n ...new Set(this.currentLeague.productOfferingConfig?.details?.map((p) => p.productOfferingID)),\n ]\n\n //build and execute api calls; one call for each offeringId\n const calls: Promise[] = []\n offeringIds.forEach((id: number) => calls.push(offeringClient.retrieveChildOfferings(id)))\n\n this.productsLoading = true\n const results = await Promise.all(calls)\n this.productsLoading = false\n\n //get all product ids across all league types\n const selProducts = this.currentLeague.productOfferingConfig?.details?.map((p) => {\n return { productOfferingID: p.productOfferingID, productID: p.productID }\n })\n\n //get list of selected products\n this.productList = this.filterToSelected(results, selProducts)\n }\n\n filterToSelected(\n results: (ProductOfferingInfo | null)[],\n selProducts: { productOfferingID: number; productID: number }[] | undefined\n ) {\n if (!selProducts) return []\n\n //remove fees\n results.forEach((r) => {\n if (r && r.categories?.length) {\n r.categories = r.categories.filter(\n (c) =>\n c.typeProductOfferingOptionID != 'UPWARDFEES' && c.typeProductOfferingOptionID != 'UPWARDDISCOUNT'\n )\n }\n })\n\n //filter catalog to only those products selected by the league\n results.forEach((r) => {\n r?.categories?.forEach((c) => {\n const p = c.products?.filter((p) =>\n selProducts.some((s) => s.productOfferingID == r.id && s.productID == p.productID)\n )\n c.products = p ?? null\n })\n })\n\n return results\n }\n\n private setRegistrationOption() {\n const registrationOption = getProgramRegistrationOption(this.league)\n\n if (registrationOption !== null) {\n this.registrationOption = registrationOption\n }\n }\n\n @Watch('registrationOption', { deep: true })\n private updateRegistrationOptions() {\n if (this.loading) {\n return\n }\n\n setProgramRegistrationOption(this.league, this.registrationOption)\n }\n\n private setGradesValue() {\n if (this.league.programs && this.league.programs.length > 0) {\n let typeProgramId = this.league.programs[0].typeProgramID\n this.boyGrades = cloneDeep(getGradesList(this.league, typeProgramId, 'M')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n this.girlGrades = cloneDeep(getGradesList(this.league, typeProgramId, 'F')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n\n if (this.league.programs.length > 1) {\n typeProgramId = this.league.programs[1].typeProgramID\n this.cheerGrades = cloneDeep(getGradesList(this.league, typeProgramId, 'F')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n }\n }\n }\n\n private getCoachUdfList() {\n return getCoachUdfs(this.league)\n }\n\n private getGradeString(account: LeagueAccount, isBoys: boolean, isCheer: boolean): string {\n if (account) {\n if (isCheer) {\n if (this.league.programs != null && this.league.programs.length > 0) {\n const programTypeId = this.league.programs[1].typeProgramID\n const cheerGrades = cloneDeep(getGradesListFromAccount(account, programTypeId, '')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n if (!cheerGrades || cheerGrades.length === 0) {\n return '-'\n }\n return `${cheerGrades[0]} - ${cheerGrades[cheerGrades.length - 1]}`\n }\n }\n if (isBoys) {\n const boyGrades = cloneDeep(getGradesListFromAccount(account, this.typeProgramId, 'M')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n if (!boyGrades || boyGrades.length === 0) {\n return '-'\n }\n return `${boyGrades[0]} - ${boyGrades[boyGrades.length - 1]}`\n }\n const girlGrades = cloneDeep(getGradesListFromAccount(account, this.typeProgramId, 'F')).map((x) =>\n this.isByAge ? x.ageByCutoff.toString() : x.description!\n )\n if (!girlGrades || girlGrades.length === 0) {\n return '-'\n }\n return `${girlGrades[0]} - ${girlGrades[girlGrades.length - 1]}`\n }\n return '-'\n }\n}\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!./Archive.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!./Archive.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Archive.vue?vue&type=template&id=7be9bb46&scoped=true&\"\nimport script from \"./Archive.vue?vue&type=script&lang=ts&\"\nexport * from \"./Archive.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Archive.vue?vue&type=style&index=0&id=7be9bb46&lang=scss&scoped=true&\"\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 \"7be9bb46\",\n null\n \n)\n\nexport default component.exports","import { RouteConfig } from 'vue-router'\nimport reports from '@/router/reports'\nimport divisions from '@/router/divisions'\nimport orders from '@/router/orders'\nimport scheduling from '@/router/scheduling'\nimport Setup from '@/views/Leagues/Setup.vue'\nimport LeagueIndex from '@/views/Leagues/LeagueIndex.vue'\nimport Information from '@/views/Leagues/Information.vue'\nimport DigitalInformation from '@/views/Leagues/DigitalInformation.vue'\nimport KeyDates from '@/views/Leagues/KeyDates.vue'\nimport Leadership from '@/views/Leagues/Leadership.vue'\nimport Partnership from '@/views/Leagues/Partnership.vue'\nimport Products from '@/views/Leagues/Products.vue'\nimport Registration from '@/views/Leagues/Registration.vue'\nimport Archive from '@/views/Leagues/Archive.vue'\nimport participants from './participants'\nimport volunteers from './volunteers'\nimport communications from './communications'\nimport resources from './resources'\nimport { idExpression } from '@/lib/support/router/idHelper'\n\nexport default [\n {\n path: `league/${idExpression}`,\n component: LeagueIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/league/${idExpression}/setup`,\n },\n ...orders('league'),\n ...divisions('league'),\n ...communications('league'),\n ...participants('league'),\n ...resources('League'),\n ...volunteers('league'),\n {\n path: 'setup',\n component: Setup,\n children: [\n {\n path: '/',\n redirect: `/programs/league/${idExpression}/setup/information`,\n },\n {\n path: 'information',\n component: Information,\n },\n {\n path: 'dates',\n component: KeyDates,\n },\n {\n path: 'leadership',\n component: Leadership,\n },\n {\n path: 'partnership',\n component: Partnership,\n },\n {\n path: 'products',\n component: Products,\n },\n {\n path: 'registration',\n component: Registration,\n },\n {\n path: 'archive',\n component: Archive,\n },\n ],\n },\n {\n path: 'digitalsetup',\n component: Setup,\n children: [\n {\n path: '/',\n redirect: `/programs/league/${idExpression}/digitalsetup/information`,\n },\n {\n path: 'information',\n component: DigitalInformation,\n },\n ],\n },\n ...scheduling,\n ...reports,\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex flex-row flex-grow-1 bg-light-2\"},[_c('vertical-tabs',{attrs:{\"tabs\":_vm.tabs}}),_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('router-view')],1),_c('ministry-agreement-modal',{attrs:{\"reload\":_vm.reloadMinistryAgreement,\"compareDate\":_vm.storeChallenge.startDate}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\n\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport Modal from '@/components/Modal.vue'\nimport MinistryAgreementModal from '@/components/MinistryAgreementModal.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Setup',\n components: {\n VerticalTabs,\n Loading,\n Modal,\n MinistryAgreementModal,\n },\n setup(props, ctx) {\n const storeChallenge = computed(() => store.getters.upwardRunning.currentChallenge)\n const reloadMinistryAgreement = ref(false)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const baseRoute = computed(() => `/programs/running/${routeId.value}setup`)\n\n const tabs = computed(() => {\n if (\n storeChallenge.value &&\n false // && !storeLeague.value.canEdit) {\n ) {\n return []\n }\n\n const retval = [\n { text: 'Program Information', to: `${baseRoute.value}/information` },\n { text: 'Key Dates', to: `${baseRoute.value}/dates` },\n { text: 'Director', to: `${baseRoute.value}/leadership` },\n { text: 'Build Participant Kit', to: `${baseRoute.value}/products` },\n { text: 'Online Registration', to: `${baseRoute.value}/registration` },\n ]\n\n return retval\n })\n\n onMounted(async () => {\n const archivedRoute = `${baseRoute.value}/archive`\n if (\n storeChallenge.value &&\n false && //&& !storeChallenge.value.canEdit\n ctx.root.$route.path !== archivedRoute\n ) {\n await ctx.root.$router.push(archivedRoute)\n } else {\n reloadMinistryAgreement.value = !reloadMinistryAgreement.value\n }\n })\n\n watch(\n () => storeChallenge.value.startDate,\n () => {\n reloadMinistryAgreement.value = !reloadMinistryAgreement.value\n },\n { deep: true }\n )\n\n return {\n tabs,\n reloadMinistryAgreement,\n storeChallenge,\n }\n },\n})\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!./Setup.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!./Setup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Setup.vue?vue&type=template&id=59434752&\"\nimport script from \"./Setup.vue?vue&type=script&lang=ts&\"\nexport * from \"./Setup.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 (!_vm.loading)?_c('alert-cloak',{attrs:{\"type\":_vm.alertTypes,\"uncloak\":_vm.uncloak},scopedSlots:_vm._u([{key:\"head\",fn:function(){return [_c('h4',{staticClass:\"px-4 py-1 mt-5\"},[(_vm.currentChallenge && _vm.currentChallenge.challengeName)?[_vm._v(\" \"+_vm._s(_vm.currentChallenge.challengeName)+\" \"),(!_vm.id)?_c('span',{staticClass:\"badge badge-secondary no-dismiss\"},[_vm._v(\"New\")]):_vm._e()]:[_vm._v(\" New Running \")]],2)]},proxy:true}],null,false,1744853316)},[_c('horizontal-tabs',{staticClass:\"underline-split bg-light-1\",attrs:{\"tabs\":_vm.tabs}}),_c('full-body',[_c('router-view')],1)],1):_c('loading',{staticClass:\"m-4\"})}\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\nimport { defineComponent, computed, ref, onUnmounted } from '@vue/composition-api'\n\nimport FullBody from '@/components/FullBody.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport AlertCloak, { AlertCloakTypes } from '@/components/AlertCloak.vue'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'UpwardRunningIndex',\n components: {\n FullBody,\n HorizontalTabs,\n Loading,\n AlertCloak,\n },\n setup(props, ctx) {\n const currentChallenge = computed(() => store.getters.upwardRunning.currentChallenge)\n\n const alertTypes = ref([AlertCloakTypes.PARTNER, AlertCloakTypes.LEAGUE])\n const uncloak = ref(false)\n\n const loading = ref(false)\n\n const id = computed(() => ctx.root.$route.params.id)\n\n const routeId = computed(() => (id.value ? `${id.value}/` : ''))\n\n const tabs = computed(() => {\n return [\n { text: 'Setup', to: `/programs/running/${routeId.value}setup` },\n { text: 'Participants', to: `/programs/running/${routeId.value}participants`, disabled: !id.value },\n {\n text: 'Communications',\n to: `/programs/running/${routeId.value}communications`,\n disabled: !id.value,\n },\n { text: 'Ordering', to: `/programs/running/${routeId.value}ordering`, disabled: !id.value },\n // { text: 'Reports', to: `/programs/running/${routeId.value}reports`, disabled: !id.value },\n { text: 'Resources', to: `/programs/running/${routeId.value}resources`, disabled: !id.value },\n ]\n })\n\n onUnmounted(() => {\n //store.commit.upwardRunning.clearCurrent()\n })\n\n //async created hack from https://stackoverflow.com/questions/64117116/how-can-i-use-async-await-in-the-vue-3-0-setup-function-using-typescript\n const run = (asyncFn: () => Promise) => asyncFn()\n\n //private async created() {\n // Reset ministryAgreementSigned so that every time a league\n // is loaded, it's seasonEndDate is checked.\n run(async () => {\n store.commit.authorization.resetMinistryAgreementIsSigned()\n if (ctx.root.$route.params.id) {\n loading.value = true\n await store.dispatch.upwardRunning.retrieveAndSetAsCurrent({ id: ctx.root.$route.params.id })\n loading.value = false\n } else {\n // new league, skip alerts\n uncloak.value = true\n }\n })\n //end created\n\n return {\n loading,\n alertTypes,\n id,\n uncloak,\n currentChallenge,\n tabs,\n }\n },\n})\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!./UpwardRunningIndex.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!./UpwardRunningIndex.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UpwardRunningIndex.vue?vue&type=template&id=589b8e96&\"\nimport script from \"./UpwardRunningIndex.vue?vue&type=script&lang=ts&\"\nexport * from \"./UpwardRunningIndex.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('div',{staticClass:\"pb-4 mb-4\"},[(!_vm.initialLoadDone)?_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col\"},[_c('loading')],1)]):_vm._e(),(_vm.initialLoadDone)?_c('div',[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Name your running group\",\"required\":\"\"},model:{value:(_vm.challenge.challengeName),callback:function ($$v) {_vm.$set(_vm.challenge, \"challengeName\", $$v)},expression:\"challenge.challengeName\"}}),_c('timezone-select',{model:{value:(_vm.challenge.typeTimezoneID),callback:function ($$v) {_vm.$set(_vm.challenge, \"typeTimezoneID\", $$v)},expression:\"challenge.typeTimezoneID\"}}),_c('div',{staticClass:\"row p-0 m-0\"},[_c('day-of-week-picker',{staticClass:\"col-sm-6 pl-0\",attrs:{\"label\":\"Which Day Will Your Group Meet\",\"valueProperty\":\"name\",\"horizontal\":true,\"required\":true},model:{value:(_vm.challenge.classDay),callback:function ($$v) {_vm.$set(_vm.challenge, \"classDay\", $$v)},expression:\"challenge.classDay\"}}),_c('TimePicker',{staticClass:\"col-sm-6 pl-3\",attrs:{\"label\":\"Meeting Time\",\"required\":\"\",\"min\":\"00:00:00\",\"max\":\"23:59:00\",\"noBottomPadding\":true},model:{value:(_vm.challenge.classTime),callback:function ($$v) {_vm.$set(_vm.challenge, \"classTime\", $$v)},expression:\"challenge.classTime\"}})],1),_c('div',{staticClass:\"row p-0 m-0\"},[_c('yes-no-input',{staticClass:\"col-sm-12 pl-0\",attrs:{\"label\":\"Hide this group from public view on Upward League Finder (play.upward.org)?\"},model:{value:(_vm.challenge.isPrivate),callback:function ($$v) {_vm.$set(_vm.challenge, \"isPrivate\", $$v)},expression:\"challenge.isPrivate\"}})],1)],1),_c('div',{staticClass:\"col-xl-6 pt-3 border-xl-left\"},[_c('h6',[_vm._v(\"Additional Program Information\")]),_c('memo-input',{attrs:{\"label\":\"What are your ministry goals and objectives for this running group? This will help us serve you better as you pursue your ministry goals.\",\"required\":\"\"},model:{value:(_vm.challenge.missionObjective),callback:function ($$v) {_vm.$set(_vm.challenge, \"missionObjective\", $$v)},expression:\"challenge.missionObjective\"}}),_c('html-editor',{attrs:{\"label\":\"Enter a custom message for participants to see on Upward.org league finder.\",\"max-length\":1024,\"show-help\":true},on:{\"helpClicked\":function($event){_vm.helpIsVisible = true}},model:{value:(_vm.challenge.leagueFinderMessage),callback:function ($$v) {_vm.$set(_vm.challenge, \"leagueFinderMessage\", $$v)},expression:\"challenge.leagueFinderMessage\"}}),_c('modal',{attrs:{\"title\":\"HELP: Upward.org League Finder\",\"is-small\":true},model:{value:(_vm.helpIsVisible),callback:function ($$v) {_vm.helpIsVisible=$$v},expression:\"helpIsVisible\"}},[_c('div',{staticClass:\"p-5\"},[_c('b',[_vm._v(\"Custom Message for League Finder\")]),_vm._v(\" is an area where you can add info like the day your group meets, where you meet, and anything else specific about your group. \")])]),_c('hr'),_c('h6',[_vm._v(\"Ask for additional participant info?\")]),_c('AdditionalParticipantInformationUR',{attrs:{\"udfs\":_vm.challenge.udfs,\"challengeID\":_vm.challenge.id},on:{\"onSave\":_vm.saveUdfs}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Vue, Component } from 'vue-property-decorator'\nimport { cloneDeep } from 'lodash'\nimport * as runningStore from '@/store/upwardRunning'\n\nimport { Getter, Action, Mutation } from 'vuex-class'\nimport { PartnerChallenge } from '@/models/UpwardRunning/PartnerChallenge'\nimport { RootContact } from '@/models/Partner/RootContact'\nimport { PromptToSavePayload } from '@/models/PromptToSavePayload'\nimport * as promptToSaveStore from '@/store/promptToSave'\n\n@Component({\n beforeRouteLeave(route, redirect, next) {\n const self = this as UpwardRunningSetupMixin\n\n self.onNavigation({\n save: async () => {\n return await self.save()\n },\n continue: () => {\n next()\n },\n } as PromptToSavePayload)\n },\n})\nexport default class UpwardRunningSetupMixin extends Vue {\n protected challenge = {} as PartnerChallenge\n protected coachContact = {} as RootContact\n\n protected initialLoadDone = false\n protected loading = true\n protected nextRoute = ''\n protected beforeSave: null | (() => Promise) = null\n protected afterUpdateExisting: null | (() => Promise | void) = null\n protected afterSaveNew: null | (() => Promise) = null\n\n @Getter(runningStore.getterNames.currentChallenge, { namespace: runningStore.namespace })\n protected readonly storeChallenge!: PartnerChallenge\n\n @Getter(runningStore.getterNames.currentPartnerContact, { namespace: runningStore.namespace })\n protected readonly storeContact!: RootContact\n\n @Action(runningStore.actionNames.cache, { namespace: runningStore.namespace })\n private readonly cache!: ({\n challenge,\n contact,\n }: {\n challenge: PartnerChallenge\n contact: RootContact\n }) => boolean\n\n @Action(runningStore.actionNames.validate, { namespace: runningStore.namespace })\n private readonly validate!: ({ item, ruleSet }: { item: PartnerChallenge; ruleSet: string }) => boolean\n\n @Action(runningStore.actionNames.loadFromCache, { namespace: runningStore.namespace })\n private readonly loadFromCache!: () => boolean\n\n @Action(runningStore.actionNames.update, { namespace: runningStore.namespace })\n private readonly update!: ({ challenge }: { challenge: PartnerChallenge }) => boolean\n\n @Mutation(promptToSaveStore.mutationNames.setIsDirty, { namespace: promptToSaveStore.namespace })\n protected readonly setIsDirty!: ({ isDirty }: { isDirty: boolean }) => void\n\n @Action(promptToSaveStore.actionNames.onNavigation, { namespace: promptToSaveStore.namespace })\n private readonly onNavigation!: ({}: PromptToSavePayload) => void\n\n private get ruleSet() {\n const pathParts = this.$route.path.split('/')\n\n if (!pathParts.length) {\n return ''\n }\n\n const thisPath = pathParts[pathParts.length - 1]\n\n switch (thisPath) {\n case 'information':\n return 'PROGRAMINFO'\n case 'dates':\n return 'KEYDATES'\n case 'leadership':\n return 'LEADERSHIP'\n case 'products':\n return 'PRICING'\n default:\n return ''\n }\n }\n\n protected async saveAndContinue() {\n const result = await this.save()\n if (result != false) this.continue()\n }\n\n protected async created() {\n this.challenge = { ...cloneDeep(this.storeChallenge) }\n this.coachContact = { ...cloneDeep(this.storeContact) }\n\n if (!this.challenge.typeLeagueID) {\n try {\n await this.loadFromCache()\n } catch (err) {\n this.$router.push('/programs/new/')\n }\n }\n\n this.loading = false\n this.initialLoadDone = true\n }\n\n protected async save() {\n if (this.beforeSave) {\n const r = await this.beforeSave()\n if (r === false) return false\n }\n\n if (this.challenge.upwardChallengeID) {\n await this.updateExistingChallenge()\n\n if (this.afterUpdateExisting) {\n await this.afterUpdateExisting()\n }\n } else {\n await this.saveNewChallenge()\n\n if (this.afterSaveNew) {\n await this.afterSaveNew()\n }\n }\n\n this.setIsDirty({ isDirty: false })\n }\n\n private continue() {\n if (this.nextRoute) {\n this.$router.push(this.nextRoute)\n }\n }\n\n private async saveNewChallenge() {\n if (this.challenge.upwardChallengeID) {\n return\n }\n\n this.loading = true\n try {\n await this.validate({ item: this.challenge, ruleSet: this.ruleSet })\n await this.cache({ challenge: this.challenge, contact: this.coachContact })\n } catch (err) {\n throw err\n } finally {\n this.loading = false\n }\n }\n\n private async updateExistingChallenge() {\n if (!this.challenge.upwardChallengeID) {\n return\n }\n\n this.loading = true\n try {\n await this.update({ challenge: this.challenge })\n } catch (err) {\n throw err\n } finally {\n this.loading = false\n }\n }\n\n mounted() {\n this.$nextTick(() => this.$watch('challenge', this.onChallengeChange, { deep: true }))\n }\n\n private onChallengeChange() {\n this.setIsDirty({ isDirty: true })\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row px-2\"},[_c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"py-2\"},[_vm._v(\" The fields below allow you to ask questions during online registration to gather more information from participants. \")])]),_c('div',{staticClass:\"col-md-6 py-2\"},_vm._l((_vm.internalUdfs),function(udf,index){return _c('div',{key:(\"div-\" + index + \"-\" + (udf.udfid)),staticClass:\"pb-5\"},[_c('text-input',{key:(index + \"-\" + (udf.udfid)),attrs:{\"label\":'Field ' + (index + 1),\"maxlength\":64},model:{value:(udf.label),callback:function ($$v) {_vm.$set(udf, \"label\", $$v)},expression:\"udf.label\"}}),_c('yes-no-input',{key:(index + \"-\" + (udf.udfid) + \"-\" + (udf.isRequired)),staticClass:\"input-group-text\",attrs:{\"label\":' Required?'},model:{value:(udf.isRequired),callback:function ($$v) {_vm.$set(udf, \"isRequired\", $$v)},expression:\"udf.isRequired\"}})],1)}),0)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.done}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Save\")])])],2),_c('button',{staticClass:\"btn btn-link\",on:{\"click\":_vm.toggleModal}},[_vm._v(\"Add / Edit Additional Information\")])],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\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport { PartnerChallengeUDFDefinition } from '@/models/UpwardRunning/PartnerChallengeUDFDefinition'\nimport YesNoInput from '@/elements/YesNoInput.vue'\n\ninterface GenericUdf {\n udfid: number\n label: string\n sortOrder: number\n isPrivate: boolean\n isRequired: boolean\n}\n\nexport default defineComponent({\n name: 'AdditionalParticipantInformationUR',\n components: {\n Modal,\n TextInput,\n YesNoInput,\n },\n props: {\n udfs: { type: Array as PropType, required: true },\n challengeID: { type: Number, required: true },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(false)\n const modalTitle = ref('Additional Participant Information')\n const wasCancelled = ref(false)\n\n const internalUdfs = ref([])\n\n watch(\n () => modalIsVisible.value,\n () => {\n if (!modalIsVisible.value && !wasCancelled.value) {\n setInternalUdfArrays()\n }\n wasCancelled.value = false\n }\n )\n\n function done() {\n ctx.emit('onSave', getRetunArray(props.udfs, internalUdfs.value, createUdf))\n toggleModal()\n }\n\n function cancel() {\n wasCancelled.value = true\n setInternalUdfArrays()\n toggleModal()\n }\n\n function toggleModal() {\n modalIsVisible.value = !modalIsVisible.value\n }\n\n watch(\n () => props.udfs,\n () => {\n internalUdfs.value = ensureArrayHasElementsCount(props.udfs, createUdf, 3)\n },\n { immediate: true }\n )\n\n function getRetunArray(\n originalArray: T[] | null,\n internalArray: T[],\n createElement: (\n udfId: number,\n label: string,\n sortOrder: number,\n isPrivate: boolean,\n isRequired: boolean\n ) => T\n ): T[] {\n const resultArray: T[] = []\n\n for (const updateUdf of internalArray) {\n const originalUdfResult =\n originalArray && updateUdf.udfid > 0 //#4936 if this is a new UDF then don't find match in old array\n ? originalArray.filter((item) => item.udfid === updateUdf.udfid)\n : null\n let originalUdf: T\n\n if (!originalUdfResult || originalUdfResult.length === 0) {\n originalUdf = createElement(\n updateUdf.udfid,\n updateUdf.label,\n updateUdf.sortOrder,\n updateUdf.isPrivate,\n updateUdf.isRequired\n )\n } else {\n originalUdf = originalUdfResult[0]\n originalUdf.isPrivate = updateUdf.isPrivate\n originalUdf.label = updateUdf.label\n originalUdf.sortOrder = updateUdf.sortOrder\n originalUdf.isRequired = updateUdf.isRequired\n }\n\n if (originalUdf.label) {\n resultArray.push(originalUdf)\n }\n }\n\n return resultArray\n }\n\n function ensureArrayHasElementsCount(\n srcArray: T[] | null,\n createElement: (\n udfId: number,\n label: string,\n sortOrder: number,\n isPrivate: boolean,\n isRequired: boolean\n ) => T,\n elementCount: number\n ): T[] {\n const destArray: T[] = []\n\n if (srcArray && srcArray.length > 0) {\n for (const item of srcArray) {\n destArray.push(\n createElement(item.udfid, item.label, item.sortOrder, item.isPrivate, item.isRequired)\n )\n }\n }\n\n if (destArray.length < elementCount) {\n const numberOfItemsToAdd = elementCount - destArray.length\n\n for (let i = 0; i < numberOfItemsToAdd; i++) {\n destArray.push(createElement((destArray.length + 1) * -1, '', destArray.length + 1, false, false))\n }\n }\n return destArray\n }\n\n function createUdf(\n udfId: number,\n label: string,\n sortOrder: number,\n isPrivate: boolean,\n isRequired: boolean\n ): PartnerChallengeUDFDefinition {\n return {\n challengeID: props.challengeID,\n udfid: udfId,\n label,\n sortOrder,\n isPrivate,\n isRequired,\n } as PartnerChallengeUDFDefinition\n }\n\n function setInternalUdfArrays() {\n internalUdfs.value = ensureArrayHasElementsCount(props.udfs, createUdf, 3)\n }\n\n return {\n modalIsVisible,\n modalTitle,\n internalUdfs,\n cancel,\n done,\n toggleModal,\n }\n },\n})\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!./AdditionalParticipantInformationUR.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!./AdditionalParticipantInformationUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdditionalParticipantInformationUR.vue?vue&type=template&id=6eaa6cf4&\"\nimport script from \"./AdditionalParticipantInformationUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdditionalParticipantInformationUR.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('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":_vm.buttonDisabled},on:{\"click\":_vm.saveAndContinue}},[_c('i',{staticClass:\"fa fa-check mr-2\"}),(_vm.loading)?_c('loading',{attrs:{\"is-small\":\"\"}}):((_vm.program && _vm.program.upwardChallengeID) || _vm.showSave)?[_vm._v(\" Save \")]:[_vm._v(\" Save & Continue \")]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport { PartnerChallenge } from '@/models/UpwardRunning/PartnerChallenge'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n name: 'SaveContinueButtonUR',\n components: {\n Loading,\n },\n props: {\n program: { type: Object as PropType, required: true },\n loading: { type: Boolean, required: true },\n showSave: { type: Boolean, required: false, default: false },\n disable: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n function saveAndContinue(args: any) {\n ctx.emit('click', args)\n }\n\n const buttonDisabled = computed(() => props.loading || props.disable)\n\n return {\n saveAndContinue,\n buttonDisabled,\n }\n },\n})\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!./SaveContinueButtonUR.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!./SaveContinueButtonUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SaveContinueButtonUR.vue?vue&type=template&id=5a6ba079&\"\nimport script from \"./SaveContinueButtonUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./SaveContinueButtonUR.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport UpwardRunningSetupMixin from '@/views/UpwardRunning/UpwardRunningSetupMixin'\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport DayOfWeekPicker from '@/elements/DayOfWeekPicker.vue'\nimport AdditionalParticipantInformationUR from '@/components/UpwardRunning/AdditionalParticipantInformationUR.vue'\nimport TimezoneSelect from '@/components/TimezoneSelect.vue'\nimport Modal from '@/components/Modal.vue'\nimport SaveContinueButtonUR from '@/elements/UpwardRunning/SaveContinueButtonUR.vue'\nimport TimePicker from '@/elements/TimePicker2.vue'\n\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { PartnerChallengeUDFDefinition } from '@/models/UpwardRunning/PartnerChallengeUDFDefinition'\n\n@Component({\n components: {\n TextInput,\n MemoInput,\n YesNoInput,\n DayOfWeekPicker,\n TimePicker,\n Loading,\n AdditionalParticipantInformationUR,\n TimezoneSelect,\n Modal,\n SaveContinueButtonUR,\n HtmlEditor,\n },\n})\nexport default class Information extends Mixins(UpwardRunningSetupMixin) {\n private internalPracticeNights: string[] = []\n private helpIsVisible = false\n\n private cutOffHelpIsVisible = false\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n if (this.challenge.upwardChallengeID) {\n this.nextRoute = `/programs/running/${this.challenge.upwardChallengeID}/setup/dates`\n } else {\n this.nextRoute = '/programs/running/setup/dates'\n }\n }\n\n private saveUdfs(udfs: PartnerChallengeUDFDefinition[]) {\n this.challenge.udfs = udfs\n }\n}\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!./Information.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!./Information.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Information.vue?vue&type=template&id=803d50b0&\"\nimport script from \"./Information.vue?vue&type=script&lang=ts&\"\nexport * from \"./Information.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-4 pt-3\"},[_c('date-input',{attrs:{\"label\":\"Registration Begins\",\"required\":\"\",\"time\":\"00:00:00\"},model:{value:(_vm.challenge.registrationBeginDate),callback:function ($$v) {_vm.$set(_vm.challenge, \"registrationBeginDate\", $$v)},expression:\"challenge.registrationBeginDate\"}}),_c('date-input',{attrs:{\"label\":\"Last Day For Early Registration\",\"time\":\"23:59:59\"},model:{value:(_vm.challenge.earlyRegistrationEndDate),callback:function ($$v) {_vm.$set(_vm.challenge, \"earlyRegistrationEndDate\", $$v)},expression:\"challenge.earlyRegistrationEndDate\"}}),_c('date-input',{attrs:{\"label\":\"Registration Deadline\",\"time\":\"00:00:00\",\"required\":\"\"},model:{value:(_vm.challenge.registrationEndDate),callback:function ($$v) {_vm.$set(_vm.challenge, \"registrationEndDate\", $$v)},expression:\"challenge.registrationEndDate\"}}),_c('date-input',{attrs:{\"label\":\"First Activity Date (must be a Monday)\",\"time\":\"00:00:00\",\"required\":\"\",\"disabledWeekDays\":[0, 2, 3, 4, 5, 6]},model:{value:(_vm.challenge.startDate),callback:function ($$v) {_vm.$set(_vm.challenge, \"startDate\", $$v)},expression:\"challenge.startDate\"}}),_c('hr',{staticClass:\"d-xl-none\"})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Key Dates\")])])}]\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\nimport UpwardRunningSetupMixin from '@/views/UpwardRunning/UpwardRunningSetupMixin'\nimport Loading from '@/elements/Loading.vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport { Component, Mixins } from 'vue-property-decorator'\nimport SaveContinueButtonUR from '@/elements/UpwardRunning/SaveContinueButtonUR.vue'\n\n@Component({\n components: {\n DateInput,\n Loading,\n SaveContinueButtonUR,\n },\n})\nexport default class KeyDates extends Mixins(UpwardRunningSetupMixin) {\n mounted() {\n if (this.challenge.upwardChallengeID) {\n this.nextRoute = `/programs/running/${this.challenge.upwardChallengeID}/setup/leadership`\n } else {\n this.nextRoute = '/programs/running/setup/leadership'\n }\n }\n}\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!./KeyDates.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!./KeyDates.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./KeyDates.vue?vue&type=template&id=e77f2c06&\"\nimport script from \"./KeyDates.vue?vue&type=script&lang=ts&\"\nexport * from \"./KeyDates.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12 pt-3\"},[_c('ContactForm',{attrs:{\"canChangeName\":false},model:{value:(_vm.coachContact),callback:function ($$v) {_vm.coachContact=$$v},expression:\"coachContact\"}})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm\"},[_c('h5',[_vm._v(\"Running Coach\")])])}]\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\nimport UpwardRunningSetupMixin from '@/views/UpwardRunning/UpwardRunningSetupMixin'\nimport Loading from '@/elements/Loading.vue'\nimport ContactForm from '@/components/ContactForm.vue'\nimport { Component, Mixins } from 'vue-property-decorator'\nimport { Mutation } from 'vuex-class'\nimport { RootContact } from '@/models/Partner/RootContact'\nimport SaveContinueButtonUR from '@/elements/UpwardRunning/SaveContinueButtonUR.vue'\nimport { cloneDeep } from 'lodash'\nimport * as runningStore from '@/store/upwardRunning'\nimport partnersClient from '@/clients/partnersClient'\n\n@Component({\n components: {\n ContactForm,\n Loading,\n SaveContinueButtonUR,\n },\n})\nexport default class Leadership extends Mixins(UpwardRunningSetupMixin) {\n @Mutation(runningStore.mutationNames.setCurrentPartnerContact, { namespace: runningStore.namespace })\n protected readonly setCurrentPartnerContact!: ({ contact }: { contact: RootContact }) => void\n\n mounted() {\n this.afterUpdateExisting = this.afterUpdateExistingMethod\n this.beforeSave = this.beforeSaveMethod\n\n if (this.challenge.upwardChallengeID) {\n this.nextRoute = `/programs/running/${this.challenge.upwardChallengeID}/setup/products`\n } else {\n this.nextRoute = '/programs/running/setup/products'\n }\n }\n\n private async onSubmit() {\n await this.save()\n }\n\n private async beforeSaveMethod() {\n //validate teh contact info\n if ((this.coachContact.id ?? 0) == 0) {\n await partnersClient.validateNew(this.challenge.accountNumber ?? '', this.coachContact)\n } else {\n await partnersClient.validateExisting(\n this.challenge.accountNumber ?? '',\n this.coachContact.id!,\n this.coachContact\n )\n }\n }\n\n private async afterUpdateExistingMethod() {\n await partnersClient.updateAccountContact(\n this.challenge.accountNumber ?? '',\n this.coachContact.id ?? 0,\n this.coachContact\n )\n this.setCurrentPartnerContact({ contact: this.coachContact })\n this.challenge = { ...cloneDeep(this.storeChallenge) }\n }\n}\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!./Leadership.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!./Leadership.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Leadership.vue?vue&type=template&id=07577655&\"\nimport script from \"./Leadership.vue?vue&type=script&lang=ts&\"\nexport * from \"./Leadership.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 (false)?_c('div',[_c('h5',[_vm._v(\"Coming soon\")]),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading},on:{\"click\":_vm.saveAndContinue}})],1)]):_c('div',[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\" Product & Pricing \"),(_vm.isLoading)?_c('Loading',{attrs:{\"is-small\":\"\"}}):_vm._e()],1)]),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[(!_vm.isLoading && !_vm.showCurrencyWarning)?_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading,\"disable\":_vm.saveDisabled},on:{\"click\":_vm.saveAndContinue}}):_vm._e()],1)]),(_vm.showCurrencyWarning)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('CurrencyWarning',{staticClass:\"mt-5\"})],1)]):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}],staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('SetupStepperRunning',{scopedSlots:_vm._u([{key:\"belowRunningTotal\",fn:function(){return [(_vm.challenge)?[_c('h5',{staticClass:\"text-center py-3\"},[_vm._v(\"Registration Fees\")]),_c('RunningRegistrationFee',{attrs:{\"hasEarlyRegistration\":_vm.hasEarlyRegistration},model:{value:(_vm.challenge),callback:function ($$v) {_vm.challenge=$$v},expression:\"challenge\"}})]:_vm._e()]},proxy:true}])})],1)]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[(!_vm.isLoading && !_vm.showCurrencyWarning)?_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading,\"disable\":_vm.saveDisabled},on:{\"click\":_vm.saveAndContinue}}):_vm._e()],1)]),_c('ProductWarningModal',{attrs:{\"warnings\":_vm.warnings},on:{\"save\":_vm.ignoreWarnings},model:{value:(_vm.showWarnings),callback:function ($$v) {_vm.showWarnings=$$v},expression:\"showWarnings\"}})],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:\"container-fluid\"},[(_vm.loading)?_c('Loading',{attrs:{\"is-small\":\"\"}}):_vm._e(),(!_vm.showCurrencyWarning)?_c('div',{staticClass:\"row pl-3\"},[_c('div',{staticClass:\"col-12 col-md-8 col-xl-9 bg-white\"},[_c('Stepper',{attrs:{\"vertical\":\"\"},model:{value:(_vm.currentStep),callback:function ($$v) {_vm.currentStep=$$v},expression:\"currentStep\"}},_vm._l((_vm.stepComponents),function(c){return _c(c.name,{key:c.index,tag:\"component\",attrs:{\"step\":c.index,\"stepTitle\":c.stepTitle}})}),1)],1),_c('div',{staticClass:\"col-12 col-md-4 col-xl-3 bg-light-1\"},[_c('div',{staticClass:\"sticky-below-app-bar\"},[_c('RunningTotalUR',{attrs:{\"viewed-steps\":_vm.viewedSteps}}),_vm._t(\"belowRunningTotal\")],2)])]):_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('CurrencyWarning',{staticClass:\"mt-5\"})],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('Step',{attrs:{\"step\":_vm.step,\"maxTouchedStep\":_vm.productSetupMaxTouchedStep,\"title\":\"Program Information\",\"hook-definitions\":_vm.hooks},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[[_c('ProgramInformationFormUR',{on:{\"valid\":_vm.onProgramInformationValidation}}),(_vm.showInforWarning)?_c('div',{staticClass:\"alert alert-danger\",staticStyle:{\"max-width\":\"500px\"}},[_vm._v(\" Please complete all required fields \")]):_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('UpwardValidationObserver',{ref:\"observer\",on:{\"valid\":_vm.onValidEvent}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12 col-xl-6\"},[_c('div',{staticClass:\"row\"},[_c('number-input',{staticClass:\"col-12 col-sm-6\",attrs:{\"label\":\"Estimated # of Participants\",\"required\":\"\",\"vee-validate-rules\":\"required|integer\",\"spinStep\":5},on:{\"change\":_vm.sendDataToStore},model:{value:(_vm.estimate),callback:function ($$v) {_vm.estimate=$$v},expression:\"estimate\"}})],1)])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/*\n * Logic that is shared across the overall product flow\n */\nimport { computed } from '@vue/composition-api'\nimport { PartnerChallengeStartupProductConfig } from '@/models/UpwardRunning/PartnerChallengeStartupProductConfig'\nimport { PartnerChallengeProductConfig } from '@/models/UpwardRunning/PartnerChallengeProductConfig'\nimport store from '@/store'\n\nexport function productFlowLogicUR() {\n /* productFlow Store */\n const isNewProdConfig = computed(() => store.getters.urProductFlow.isNewProdConfig)\n const productSetupMaxTouchedStep = computed(() => store.getters.urProductFlow.maxTouchedProductSetupStep)\n const setCurrentProductSetupStep = store.commit.urProductFlow.setCurrentProductSetupStep\n const setIsNewProdConfig = store.commit.urProductFlow.setIsNewProdConfig\n const challenge = computed(() => store.getters.upwardRunning.currentChallenge)\n\n /* authorization Store */\n const firstAccountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n\n /*\n * ProductSetupStepper Logic\n */\n function productSetupNextStep(currentStep: number) {\n const steps = store.getters.urProductFlow.steps\n const stepName = steps[currentStep]\n store.commit.urProductFlow.addViewedStep({ step: stepName })\n\n const next = currentStep + 1\n setCurrentProductSetupStep({ step: next })\n setMaxTouchedProductSetupStep(next)\n }\n\n function setMaxTouchedProductSetupStep(nextStep: number) {\n const max = store.getters.urProductFlow.maxTouchedProductSetupStep\n if (nextStep >= max) {\n store.commit.urProductFlow.setMaxTouchedProductSetupStep({ step: nextStep })\n }\n }\n\n function markAsDirty() {\n if (store.getters.productOfferings.initialProductFlowLoadingComplete) {\n store.commit.promptToSave.setIsDirty({ isDirty: true })\n }\n }\n\n function productSetupStepClicked(step: number) {\n setCurrentProductSetupStep({ step })\n }\n\n /*\n * ParticipantKitStepper 1 Logic\n */\n const kitMaxTouchedStep = computed(() => store.getters.urProductFlow.maxTouchedParticipantKitStep)\n\n function kitNextStep(currentStep: number) {\n const next = currentStep + 1\n store.commit.urProductFlow.setCurrentParticipantKitStep({ step: next })\n setMaxTouchedParticipantKitStep(next)\n }\n\n function setMaxTouchedParticipantKitStep(nextStep: number) {\n const max = store.getters.urProductFlow.maxTouchedParticipantKitStep\n if (nextStep >= max) {\n store.commit.urProductFlow.setMaxTouchedParticipantKitStep({ step: nextStep })\n }\n }\n\n function kitClicked(step: number) {\n store.commit.urProductFlow.setCurrentParticipantKitStep({ step })\n }\n\n /*\n * Step actions\n */\n function nextStep(step: number) {\n kitNextStep(step)\n }\n\n function kitStepClicked(step: number) {\n kitClicked(step)\n }\n\n function setStartupOrderProducts(products: PartnerChallengeStartupProductConfig[]) {\n store.commit.upwardRunning.setChallengeStartupConfig({ products: products })\n }\n\n function setProductConfig(products: PartnerChallengeProductConfig[]) {\n store.commit.upwardRunning.setChallengeProductConfig({ products: products })\n }\n\n /*\n * Fetch product catalog\n */\n async function fetchProductCatalog() {\n store.commit.urProductFlow.setProductOfferingLoading({ loading: true })\n store.commit.productOfferings.setInitialProductFlowLoadingComplete({ status: false })\n\n try {\n await store.dispatch.productOfferings.fetchTopLevelProducts({\n accountNumber: firstAccountNumber.value,\n leagueType: challenge.value.typeLeagueID ?? '',\n firstPracticeDate: challenge.value.startDate,\n })\n await store.dispatch.upwardRunning.loadRunningOrderProducts({\n typeLeagueID: challenge.value.typeLeagueID ?? '',\n startDate: challenge.value.startDate!,\n })\n } finally {\n store.commit.urProductFlow.setProductOfferingLoading({ loading: false })\n store.commit.productOfferings.setInitialProductFlowLoadingComplete({ status: true })\n }\n }\n\n /*\n * Utilites\n */\n\n function adjustIndex(i: number) {\n // Add 1 to convert 0 base index to 1 base\n // Add another 1 to account for product-group-picker (offering) in the stepper\n return i + 2\n }\n\n return {\n challenge,\n firstAccountNumber,\n productSetupNextStep,\n productSetupMaxTouchedStep,\n productSetupStepClicked,\n nextStep,\n kitStepClicked,\n kitMaxTouchedStep,\n adjustIndex,\n fetchProductCatalog,\n markAsDirty,\n isNewProdConfig,\n setStartupOrderProducts,\n setProductConfig,\n setIsNewProdConfig,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport UpwardValidationObserver from '@/components/UpwardValidationObserver.vue'\nimport NumberInput from '@/elements/NumberInput.vue'\n\nimport { productFlowLogicUR } from '@/components/UpwardRunning/ProductFlow/productFlowLogicUR'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ProgramInformationFormUR',\n components: {\n NumberInput,\n UpwardValidationObserver,\n },\n setup(props, ctx) {\n const logic = productFlowLogicUR()\n const estimate = ref(logic.challenge.value.participantEstimate)\n const isValid = ref(false)\n\n function sendDataToStore() {\n logic.markAsDirty()\n store.commit.upwardRunning.setChallengeParticipantEstimate({ est: estimate.value ?? 0 })\n }\n\n function onValidEvent(v: boolean) {\n isValid.value = v\n }\n\n watch(\n () => isValid.value,\n () => {\n ctx.emit('valid', isValid.value)\n }\n )\n\n return {\n onValidEvent,\n estimate,\n sendDataToStore,\n }\n },\n})\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!./ProgramInformationFormUR.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!./ProgramInformationFormUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProgramInformationFormUR.vue?vue&type=template&id=dd720bda&\"\nimport script from \"./ProgramInformationFormUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProgramInformationFormUR.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\nimport ProgramInformationFormUR from './ProgramInformationFormUR.vue'\n\nimport { StepperHooks } from '@/components/ProductFlow/models/StepperHooks'\nimport { productFlowLogicUR } from '@/components/UpwardRunning/ProductFlow/productFlowLogicUR'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'InfoStepUR',\n props: { step: { type: Number, required: true } },\n components: { ProgramInformationFormUR, Step },\n setup() {\n const logic = productFlowLogicUR()\n\n /*\n * Hooks\n */\n const hooks: StepperHooks = {\n beforeNextStep: () => {\n return validate()\n },\n afterNextStep: async () => {\n if (store.getters.urProductFlow.isNewProdConfig) {\n await logic.fetchProductCatalog()\n }\n },\n }\n\n /*\n * Form validation and conditional display\n */\n const showInforWarning = computed(() => {\n return programInfoClicked.value && !programInformationIsValid.value\n })\n\n const programInformationIsValid = ref(false)\n function onProgramInformationValidation(isValid: boolean) {\n programInformationIsValid.value = isValid\n }\n\n const programInfoClicked = ref(false)\n function validate() {\n if (programInformationIsValid.value) {\n programInfoClicked.value = false\n } else {\n programInfoClicked.value = true\n }\n return programInformationIsValid.value\n }\n\n return {\n onProgramInformationValidation,\n showInforWarning,\n hooks,\n ...logic,\n }\n },\n})\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!./InfoStepUR.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!./InfoStepUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./InfoStepUR.vue?vue&type=template&id=1e66217b&\"\nimport script from \"./InfoStepUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./InfoStepUR.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('Step',{attrs:{\"step\":_vm.step,\"title\":\"Starter Order Items\",\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[(_vm.loadingOfferings)?_c('Loading'):[[_c('div',[_c('p',[_vm._v(\"You are currently \"),_c('b',[_vm._v(\"working on an estimate and not an order.\")])]),_c('p',[_vm._v(\" To place an order for starter items after your program is created, go to the Startup menu item under the Ordering tab, select the desired print items and quantities, and submit the order. \")])]),_c('StartupOrderPickerUR',{staticClass:\"grid mb-3\",attrs:{\"products\":_vm.starupProducts}})]]],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._l((_vm.sortedProducts),function(p,i){return _c('StartupOrderProductCardUR',{key:i,attrs:{\"product\":p},model:{value:(_vm.chosen[i]),callback:function ($$v) {_vm.$set(_vm.chosen, i, $$v)},expression:\"chosen[i]\"}})}),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('selector-card',{attrs:{\"is-selected\":_vm.quantity > 0},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('enlargeable-product',{attrs:{\"product\":_vm.product}})]},proxy:true},{key:\"bottom\",fn:function(){return [_c('div',{staticClass:\"px-5\"},[_c('number-input',{staticClass:\"quantity-wrapper\",attrs:{\"placeholder\":\"Enter a quantity\",\"show-spin-button\":false},model:{value:(_vm.quantity),callback:function ($$v) {_vm.quantity=$$v},expression:\"quantity\"}})],1)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export interface PartnerChallengeStartupProductConfig {\n challengeID: number | null\n upwardProductID: string | null\n upwardColorTypeID: string | null\n upwardSizeTypeID: string | null\n quantity: number | null\n}\n\nexport function getEmptyPartnerChallengeStartupProductConfig() {\n return {\n challengeID: null,\n upwardProductID: null,\n upwardColorTypeID: 'N/A',\n upwardSizeTypeID: 'N/A',\n quantity: 0,\n } as PartnerChallengeStartupProductConfig\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport NumberInput from '@/elements/NumberInput.vue'\nimport EnlargeableProduct from '@/components/ProductFlow/ParticipantKitStepper/ProductPickers/EnlargeableProduct.vue'\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport { StartupOrderProductInfo } from '@/GeneratedTypes/ListInfo/StartupOrderProductInfo'\nimport { getEmptyStartupOrderProductInfo } from '@/lib/support/models/StartupOrderProductInfo'\nimport {\n PartnerChallengeStartupProductConfig,\n getEmptyPartnerChallengeStartupProductConfig,\n} from '@/models/UpwardRunning/PartnerChallengeStartupProductConfig'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'StartupOrderProductCardUR',\n components: {\n NumberInput,\n EnlargeableProduct,\n SelectorCard,\n },\n props: {\n product: {\n type: Object as PropType,\n default: getEmptyStartupOrderProductInfo,\n required: false,\n },\n value: {\n type: Object as PropType,\n default: null,\n required: false,\n },\n },\n setup(props, ctx) {\n const startupConfig = computed(() => store.getters.upwardRunning.currentChallenge.startupProductConfig)\n const quantity = ref(0)\n\n onMounted(() => {\n setSaved()\n })\n\n watch(\n () => startupConfig.value,\n () => {\n setSaved()\n }\n )\n\n function setSaved() {\n if (!startupConfig.value) return\n const savedProduct = startupConfig.value.find(\n (x: PartnerChallengeStartupProductConfig) => x.upwardProductID === props.product.upwardProductID\n )\n quantity.value = savedProduct ? savedProduct.quantity : null\n }\n\n function buildStartupOrderProduct(): PartnerChallengeStartupProductConfig | null {\n if (!quantity.value || quantity.value < 1) return null\n const prod = getEmptyPartnerChallengeStartupProductConfig()\n prod.upwardProductID = props.product.upwardProductID\n prod.quantity = quantity.value\n return prod\n }\n\n watch(\n () => quantity.value,\n () => {\n ctx.emit('input', buildStartupOrderProduct())\n }\n )\n\n return {\n quantity,\n }\n },\n})\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!./StartupOrderProductCardUR.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!./StartupOrderProductCardUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StartupOrderProductCardUR.vue?vue&type=template&id=2d2baf5f&scoped=true&\"\nimport script from \"./StartupOrderProductCardUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./StartupOrderProductCardUR.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StartupOrderProductCardUR.vue?vue&type=style&index=0&id=2d2baf5f&lang=scss&scoped=true&\"\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 \"2d2baf5f\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType, nextTick } from '@vue/composition-api'\nimport StartupOrderProductCardUR from './StartupOrderProductCardUR.vue'\nimport { getEmptyStartupOrderProductInfoList } from '@/lib/support/models/StartupOrderProductInfo'\nimport { sortOffering } from '@/services/offeringService'\nimport { StartupOrderProductInfo } from '@/GeneratedTypes/ListInfo/StartupOrderProductInfo'\nimport {\n PartnerChallengeStartupProductConfig,\n getEmptyPartnerChallengeStartupProductConfig,\n} from '@/models/UpwardRunning/PartnerChallengeStartupProductConfig'\nimport { cloneDeep } from 'lodash'\nimport { productFlowLogicUR } from '@/components/UpwardRunning/ProductFlow/productFlowLogicUR'\n\nexport default defineComponent({\n name: 'StartupOrderPicker',\n components: {\n StartupOrderProductCardUR,\n },\n props: {\n products: {\n type: Array as PropType,\n default: getEmptyStartupOrderProductInfoList,\n required: false,\n },\n values: {\n type: Array as PropType,\n default: () => [getEmptyPartnerChallengeStartupProductConfig()],\n required: false,\n },\n },\n setup(props) {\n const chosen = ref([])\n const logic = productFlowLogicUR()\n\n onMounted(() => {\n nextTick(() => watch(chosen.value, chosenChanged, { immediate: true }))\n })\n\n const sortedProducts = computed(() => sortOffering(localClone.value))\n\n const localClone = computed(() => cloneDeep(props.products))\n\n function buildProductArray(): PartnerChallengeStartupProductConfig[] {\n const products = chosen.value.filter((x: PartnerChallengeStartupProductConfig) => x !== null)\n return products ?? ([] as PartnerChallengeStartupProductConfig[])\n }\n\n function chosenChanged() {\n logic.setStartupOrderProducts(buildProductArray())\n logic.markAsDirty()\n }\n\n return {\n sortedProducts,\n chosen,\n }\n },\n})\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!./StartupOrderPickerUR.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!./StartupOrderPickerUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StartupOrderPickerUR.vue?vue&type=template&id=7b6cb465&\"\nimport script from \"./StartupOrderPickerUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./StartupOrderPickerUR.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport StartupOrderPickerUR from '@/components/UpwardRunning/ProductFlow/StartupOrderPickerUR.vue'\nimport Step from '@/components/ProductFlow/Step.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport store from '@/store'\n\nimport { productFlowLogicUR } from '@/components/UpwardRunning/ProductFlow/productFlowLogicUR'\n\nexport default defineComponent({\n name: 'StarterOrderItemStepUR',\n props: { step: { type: Number, required: true } },\n components: { Step, StartupOrderPickerUR, Loading },\n setup() {\n const logic = productFlowLogicUR()\n\n const loadingOfferings = computed(() => store.getters.urProductFlow.productOfferingLoading)\n const starupProducts = computed(() => store.getters.productOfferings.availableStartupProducts)\n\n return { starupProducts, loadingOfferings, ...logic }\n },\n})\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!./StarterOrderItemStepUR.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!./StarterOrderItemStepUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StarterOrderItemStepUR.vue?vue&type=template&id=8f7a8d06&scoped=true&\"\nimport script from \"./StarterOrderItemStepUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./StarterOrderItemStepUR.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StarterOrderItemStepUR.vue?vue&type=style&index=0&id=8f7a8d06&lang=scss&scoped=true&\"\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 \"8f7a8d06\",\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('Step',{attrs:{\"step\":_vm.step,\"title\":_vm.stepTitle,\"maxTouchedStep\":_vm.productSetupMaxTouchedStep},on:{\"nextStep\":function($event){return _vm.productSetupNextStep(_vm.step)},\"clicked\":_vm.productSetupStepClicked}},[_c('ProductPickerUR',{staticClass:\"grid mb-3\",staticStyle:{\"margin-bottom\":\"30px\"},attrs:{\"selectMultiple\":true,\"selectable\":true,\"required\":false,\"products\":_vm.availableProducts}})],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-item-group',{attrs:{\"mandatory\":_vm.required,\"multiple\":_vm.selectMultiple},model:{value:(_vm.valueLocal),callback:function ($$v) {_vm.valueLocal=$$v},expression:\"valueLocal\"}},_vm._l((_vm.sortedProducts),function(product,index){return _c('v-item',{key:index,scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar active = ref.active;\nvar toggle = ref.toggle;\nreturn [_c('selector-card',{attrs:{\"is-selected\":active,\"selectable\":_vm.selectable},on:{\"select\":function($event){return _vm.manageButtonAction(product, index, toggle)}},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('enlargeable-product',{attrs:{\"product\":product}})]},proxy:true},(product.colors.length > 0 && _vm.selectable)?{key:\"bottom\",fn:function(){return [_c('div',{staticClass:\"mx-5 pt-3\"},[(_vm.showColorMessage[index])?_c('p',{staticClass:\"m-0 p-0 text-danger text-center\"},[_vm._v(\" Select or deselect a color \")]):_vm._e(),_c('select-input',{staticClass:\"mb-0\",attrs:{\"value\":_vm.getProductSelectedColor(product.upwardProductID),\"show-blank-item\":true,\"blank-item-value\":null,\"blank-item-text\":\"- Select a Color -\",\"text-property-name\":\"description\",\"value-property-name\":\"typeColorID\",\"items-list\":_vm.getColorDropDown(product.colors)},on:{\"input\":function (val) { return _vm.controlColorCard(val, product.upwardProductID, index); }}})],1)]},proxy:true}:null,{key:\"innerButton\",fn:function(){return [_vm._t(\"buttonLabel\",[_vm._v(\"Select\")]),(active)?[_vm._v(\"ed\")]:_vm._e()]},proxy:true}],null,true)})]}}],null,true)})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export interface PartnerChallengeProductConfig {\n challengeID: number | null\n upwardProductID: string | null\n upwardColorTypeID: string | null\n upwardSizeTypeID: string | null\n isOptional: boolean\n optionalProductCost: number\n}\n\nexport function getEmptyPartnerChallengeProductConfig() {\n return {\n challengeID: null,\n upwardProductID: null,\n upwardColorTypeID: 'N/A',\n upwardSizeTypeID: 'N/A',\n isOptional: false,\n optionalProductCost: 0.0,\n } as PartnerChallengeProductConfig\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport Vue from 'vue'\nimport EnlargeableProduct from '@/components/ProductFlow/ParticipantKitStepper/ProductPickers/EnlargeableProduct.vue'\nimport SelectorCard from '@/components/SelectorCard.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { RunningOrderProductInfoEXT } from '@/models/UpwardRunning/RunningOrderProductInfoEXT'\nimport { ProductOfferingProductColorInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingProductColorInfo'\nimport {\n PartnerChallengeProductConfig,\n getEmptyPartnerChallengeProductConfig,\n} from '@/models/UpwardRunning/PartnerChallengeProductConfig'\nimport { sortOffering } from '@/services/offeringService'\nimport { cloneDeep } from 'lodash'\nimport store from '@/store'\n\nimport { productFlowLogicUR } from '@/components/UpwardRunning/ProductFlow/productFlowLogicUR'\nimport { getColorDropDownItems } from '@/lib/common/upwardColorTypes'\n\ninterface SelectedProductColor {\n upwardProductID: string\n selectedColor: string | null\n}\n\nexport default defineComponent({\n name: 'ProductPickerUR',\n components: {\n EnlargeableProduct,\n SelectorCard,\n SelectInput,\n },\n props: {\n products: {\n type: Array as PropType,\n default: [],\n required: false,\n },\n selectMultiple: { type: Boolean, default: true, required: false },\n required: { type: Boolean, default: true, required: false },\n selectable: { type: Boolean, required: true },\n },\n setup(props) {\n const productConfig = computed(() => store.getters.upwardRunning.currentChallenge.productConfig)\n const valueLocal = ref(props.selectMultiple ? [] : null)\n const selectedColors = ref([])\n const showColorMessage = ref([])\n\n const logic = productFlowLogicUR()\n\n onMounted(() => {\n valueLocal.value = getLocal()\n selectedColors.value = getSelectedColorsArray(productConfig.value, sortedProducts.value)\n })\n\n function getSelectedIndexes(\n details: PartnerChallengeProductConfig[] | null,\n allProducts: RunningOrderProductInfoEXT[]\n ) {\n if (!details) return\n\n const indexes = allProducts.reduce((a: any, p: RunningOrderProductInfoEXT, i: number) => {\n const hasId = details.some(\n (x: PartnerChallengeProductConfig) => x.upwardProductID === p.upwardProductID\n )\n\n if (hasId) a.push(i)\n return a\n }, [])\n\n return indexes\n }\n\n function getLocal() {\n const indexes = getSelectedIndexes(productConfig.value, sortedProducts.value)\n if (props.selectMultiple) {\n return indexes ?? []\n } else {\n if (Array.isArray(indexes)) {\n return indexes[0]\n } else {\n return indexes\n }\n }\n }\n\n function manageButtonAction(p: RunningOrderProductInfoEXT, index: number, toggle: () => void) {\n if (p.colors && p.colors.length === 0) {\n Vue.set(showColorMessage.value, index, false)\n toggle()\n } else {\n Vue.set(showColorMessage.value, index, true)\n }\n }\n\n function getProductSelectedColor(id: string) {\n let retval: string | null = null\n const psc = selectedColors.value.find((x) => x.upwardProductID == id)\n if (psc != null) {\n retval = psc.selectedColor\n }\n return retval\n }\n\n function controlColorCard(color: string, productId: string, productIndex: number) {\n if (!color) {\n deselectButtonOnColorCard(productIndex)\n } else {\n selectButtonOnColorCard(color, productId, productIndex)\n }\n Vue.set(showColorMessage.value, productIndex, false)\n }\n\n function selectButtonOnColorCard(color: string, productId: string, productIndex: number) {\n const psc = selectedColors.value.find((x) => x.upwardProductID == productId)\n if (psc) {\n psc.selectedColor = color\n }\n if (Array.isArray(valueLocal.value)) {\n valueLocal.value.push(productIndex)\n valueLocal.value = [...new Set(valueLocal.value)]\n } else {\n valueLocal.value = productIndex\n }\n }\n\n function deselectButtonOnColorCard(productIndex: number) {\n if (Array.isArray(valueLocal.value)) {\n const idx = valueLocal.value.findIndex((v: number) => v === productIndex)\n valueLocal.value.splice(idx, 1)\n } else {\n valueLocal.value = null\n }\n }\n\n const sortedProducts = computed(() => sortOffering(localClone.value))\n\n const localClone = computed(() => cloneDeep(props.products))\n\n function getColorDropDown(colors: ProductOfferingProductColorInfo[]) {\n return getColorDropDownItems(colors)\n }\n\n function getSelectedColorsArray(\n details: PartnerChallengeProductConfig[] | null,\n products: RunningOrderProductInfoEXT[]\n ) {\n const colors: SelectedProductColor[] = []\n\n if (details == null) details = []\n\n products.forEach((p: RunningOrderProductInfoEXT) => {\n if (!p.colors || p.colors.length < 1) return // this prod has no colors\n\n const detail = details?.find(\n (i: PartnerChallengeProductConfig) => i.upwardProductID === p.upwardProductID\n )\n\n colors.push({\n upwardProductID: p.upwardProductID!,\n selectedColor: detail ? detail.upwardColorTypeID : null,\n })\n })\n return colors\n }\n\n function convertToSaveFormat(product: RunningOrderProductInfoEXT) {\n if (!product) return\n const config = getEmptyPartnerChallengeProductConfig()\n config.challengeID = logic.challenge.value.id\n config.upwardProductID = product.upwardProductID\n if (product.colors && product.colors.length > 0) {\n const psc = selectedColors.value.find((x) => x.upwardProductID == product.upwardProductID)\n const color = psc?.selectedColor\n config.upwardColorTypeID = color ? color : ''\n }\n return config\n }\n\n function commitSavedProductDetails() {\n if (Array.isArray(valueLocal.value)) {\n // selectMultiple is true, so an array is returned from v-item-group\n arrayCommit()\n } else {\n // selectMultiple is false, so a single number is returned from v-item-group\n soloCommit()\n }\n\n logic.markAsDirty()\n }\n\n function arrayCommit() {\n const local = valueLocal.value as number[]\n\n const details = local.map((i: number) => {\n if (local !== null && sortedProducts.value) {\n return convertToSaveFormat(sortedProducts.value[i])\n }\n })\n if (details.length) {\n const productDetails = JSON.parse(JSON.stringify(details))\n setChangedProductDetails(productDetails)\n } else {\n setChangedProductDetails([])\n }\n }\n\n function soloCommit() {\n const local = valueLocal.value as number\n let sel!: PartnerChallengeProductConfig | undefined\n\n if (sortedProducts.value) {\n sel = convertToSaveFormat(sortedProducts.value[local])\n }\n\n if (sel) {\n setChangedProductDetails([sel])\n }\n }\n\n function setChangedProductDetails(details: PartnerChallengeProductConfig[]) {\n logic.setProductConfig(details)\n }\n\n watch(\n () => selectedColors.value,\n () => {\n commitSavedProductDetails()\n },\n { deep: true }\n )\n\n watch(\n () => valueLocal.value,\n () => {\n commitSavedProductDetails()\n },\n { deep: true }\n )\n\n watch(\n () => props.products,\n () => {\n selectedColors.value = getSelectedColorsArray(productConfig.value, sortedProducts.value)\n },\n { deep: true }\n )\n\n return {\n valueLocal,\n sortedProducts,\n manageButtonAction,\n showColorMessage,\n selectedColors,\n getProductSelectedColor,\n controlColorCard,\n getColorDropDown,\n }\n },\n})\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!./ProductPickerUR.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!./ProductPickerUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductPickerUR.vue?vue&type=template&id=04369eb8&\"\nimport script from \"./ProductPickerUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductPickerUR.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 { VItem } from 'vuetify/lib/components/VItemGroup';\nimport { VItemGroup } from 'vuetify/lib/components/VItemGroup';\ninstallComponents(component, {VItem,VItemGroup})\n","import { RunningOrderProductInfo } from '@/GeneratedTypes/ListInfo/RunningOrderProductInfo'\nimport { ProductOfferingProductColorInfo } from 'src/GeneratedTypes/ListInfo/ProductOfferingProductColorInfo'\n\nexport interface RunningOrderProductInfoEXT extends RunningOrderProductInfo {\n colors: ProductOfferingProductColorInfo[]\n}\n\nexport function getRunningOrderProductInfoExt(product: RunningOrderProductInfo) {\n const retval = product as RunningOrderProductInfoEXT\n retval.colors = []\n product.productColorSizes?.forEach((color) => {\n if (\n color.colorActive &&\n color.typeColorID != 'N/A' &&\n retval.colors.findIndex((retColor) => retColor.typeColorID == color.typeColorID) < 0\n ) {\n retval.colors.push({\n typeColorID: color.typeColorID,\n active: true,\n sortOrder: color.colorSortOrder,\n costOffset: color.colorCostOffset,\n })\n }\n })\n return retval\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport Step from '@/components/ProductFlow/Step.vue'\nimport ProductPickerUR from '@/components/UpwardRunning/ProductFlow/ProductPickerUR.vue'\nimport { productFlowLogicUR } from '@/components/UpwardRunning/ProductFlow/productFlowLogicUR'\nimport { getRunningOrderProductInfoExt } from '@/models/UpwardRunning/RunningOrderProductInfoEXT'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ParticipantKitStep',\n props: {\n step: { type: Number, required: true },\n stepTitle: { type: String, required: true },\n },\n components: { Step, ProductPickerUR },\n setup() {\n const logic = productFlowLogicUR()\n const availableProducts = computed(() =>\n store.getters.upwardRunning.runningOrderProducts\n .filter((fp) => fp.parentProductID == 0)\n .map((product) => getRunningOrderProductInfoExt(product))\n )\n\n return { ...logic, availableProducts }\n },\n})\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!./ParticipantKitStepUR.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!./ParticipantKitStepUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantKitStepUR.vue?vue&type=template&id=94855c6e&scoped=true&\"\nimport script from \"./ParticipantKitStepUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantKitStepUR.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ParticipantKitStepUR.vue?vue&type=style&index=0&id=94855c6e&lang=scss&scoped=true&\"\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 \"94855c6e\",\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('div',[_c('div',{staticClass:\"d-flex w-100 flex-column pt-3\"},[(!_vm.show)?_c('div',{staticClass:\"border p-5\"},[_c('p',[_vm._v(\"Complete the first 2 steps of the Product & Pricing Tool to begin selecting product.\")]),_c('p',[_vm._v(\"As you select products, you will see the per participant cost for your group.\")])]):_vm._e(),(_vm.show)?_c('div',[(_vm.allProducts.length === 0)?_c('div',{staticClass:\"border p-5\"},[_vm._v(\" No applicable products have been selected. Please continue through the remaining steps. \")]):_vm._e(),_c('h5',{staticClass:\"text-center py-3\"},[_vm._v(\"Estimated Per Participant Cost\")]),(_vm.allProducts !== 0)?_c('div',[_c('table',{staticClass:\"border-bottom w-100\"},_vm._l((_vm.allProducts),function(p,i){return _c('tr',{key:i + 999},[_c('td',[_vm._v(\" \"+_vm._s(p.cmsProductName)),(p.color)?_c('span',{staticClass:\"text-lowercase\"},[_vm._v(\"(\"+_vm._s(p.color)+\")\")]):_vm._e()]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm.cost(p.cost, p.optionalText)))])])}),0),_c('table',{staticClass:\"w-100\"},[_c('tr',[_c('td',{staticClass:\"font-weight-bold\"},[_vm._v(\"Estimated Per Participant Total\")]),_c('td',{staticClass:\"text-right font-weight-bold\"},[_vm._v(_vm._s(_vm.currency(_vm.participantTotal)))])])])]):_vm._e(),_vm._m(0),(_vm.showOptionalProductText)?_c('div',{staticClass:\"text-caption text-muted mt-2\"},[_vm._v(\" * These items are not included in the overall \"),_c('i',[_vm._v(\"Per Participant\")]),_vm._v(\" calculation because participants can optionally add these at registration. \")]):_vm._e(),(_vm.showMultiPriceWarning)?_c('div',{staticClass:\"text-caption text-muted mt-2\"},[_vm._v(\" Ɨ Some products have multiple possible prices. Only the highest price is included in the \"),_c('i',[_vm._v(\"Per Participant\")]),_vm._v(\" price. \")]):_vm._e()]):_vm._e()])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"text-caption text-muted my-3\"},[_c('i',[_vm._v(\" Sales tax varies by state, so be sure to plan for sales tax if applicable in your state. All prices are in USD. \")])])}]\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\ninterface DisplayableProduct {\n cmsProductName: string | null\n cost: number\n costOffset: number\n typeParticipantID: string | null\n category: string | null\n categorySortOrder: number\n productID: number | null\n productSortOrder: number\n color: string\n optionalText: string\n hasGradeGender: boolean\n skipSimpleTotal: boolean\n isMultiPrice: boolean\n isOptionalApparel: boolean\n}\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\nimport Loading from '@/elements/Loading.vue'\nimport { PartnerChallengeProductConfig } from '@/models/UpwardRunning/PartnerChallengeProductConfig'\nimport { RunningOrderProductInfo } from '@/GeneratedTypes/ListInfo/RunningOrderProductInfo'\nimport { PartnerChallengeStartupProductConfig } from '@/models/UpwardRunning/PartnerChallengeStartupProductConfig'\nimport { StartupOrderProductInfo } from '@/GeneratedTypes/ListInfo/StartupOrderProductInfo'\nimport currency from '@/filters/currency'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'RunningTotalUR',\n components: {\n Loading,\n },\n props: {\n viewedSteps: { type: Array as PropType, required: false, default: () => [] },\n },\n setup(props) {\n const productConfig = computed(() => store.getters.upwardRunning.currentChallenge.productConfig)\n const availableStartupProducts = computed(() => store.getters.productOfferings.availableStartupProducts)\n const startupConfig = computed(() => store.getters.upwardRunning.currentChallenge.startupProductConfig)\n const availableRunningProducts = computed(() => store.getters.upwardRunning.runningOrderProducts)\n const challenge = computed(() => store.getters.upwardRunning.currentChallenge)\n\n const showOptionalProductText = ref(false)\n const showMultiPriceWarning = ref(false)\n\n function cost(cost: number, optionalText: string) {\n if (optionalText) return `${currency(cost)}${optionalText}`\n return currency(cost)\n }\n\n const estimatedNumberOfParticipants = computed(() => challenge.value.participantEstimate ?? 0)\n\n const startupOrderItems = computed((): DisplayableProduct[] => {\n const item = emptyDisplayableProduct()\n if (hideMe('Startup Order Items')) return []\n const allCosts = totalOfAllStartupOrderItems()\n if (allCosts === 0) return []\n\n item.cmsProductName = 'Starter Order Items'\n item.cost = allCosts / estimatedNumberOfParticipants.value\n return [item]\n })\n\n const participantProducts = computed((): DisplayableProduct[] => {\n const products = createDisplayableProductArray()\n return products || []\n })\n\n const allProducts = computed(() => [...startupOrderItems.value, ...participantProducts.value])\n\n const participantTotal = computed(() => {\n if (!participantProducts.value) return\n const starupOrderTotal = startupOrderItems.value.reduce((t, p) => t + p.cost, 0)\n const simpleProductTotal = participantProducts.value.reduce(\n (t, p) => (!p.skipSimpleTotal ? t + p.cost : t),\n 0\n )\n return Number(simpleProductTotal) + Number(starupOrderTotal)\n })\n\n function hideMe(step: string) {\n return !props.viewedSteps.includes(step)\n }\n\n function createDisplayableProductArray(): DisplayableProduct[] {\n let items: DisplayableProduct[] = []\n productConfig.value.forEach((selectedProduct: PartnerChallengeProductConfig) => {\n availableRunningProducts.value.forEach((prodInfo: RunningOrderProductInfo) => {\n if (prodInfo.upwardProductID === selectedProduct.upwardProductID) {\n const item = buildDisplayableProduct(selectedProduct, prodInfo)\n if (!item) return\n items.push(cloneDeep(item))\n }\n })\n })\n return items.sort((a, b) => {\n if (a.categorySortOrder == b.categorySortOrder) {\n return a.productSortOrder > b.productSortOrder ? 1 : -1\n }\n return a.categorySortOrder > b.categorySortOrder ? 1 : -1\n })\n }\n\n function totalOfAllStartupOrderItems() {\n if (!availableStartupProducts.value) return 0\n return startupConfig.value.reduce((acc: number, y: PartnerChallengeStartupProductConfig) => {\n const product = availableStartupProducts.value.find(\n (p: StartupOrderProductInfo) => p.upwardProductID === y.upwardProductID\n )\n const cost = product && y.quantity ? product.cost * y.quantity : 0\n return acc + cost\n }, 0)\n }\n\n function modifyForOptionalApparel(item: DisplayableProduct, cost: number) {\n item.cost = cost\n item.cmsProductName = `${item.cmsProductName} (Optional)`\n item.optionalText = `${item.optionalText}*`\n item.skipSimpleTotal = true\n }\n\n function modifyForMultiPrice(item: DisplayableProduct) {\n item.optionalText = `${item.optionalText}Ɨ`\n }\n\n function buildDisplayableProduct(\n selectedProduct: PartnerChallengeProductConfig,\n prodInfo: RunningOrderProductInfo\n ) {\n const item = emptyDisplayableProduct()\n\n item.cmsProductName = prodInfo.cmsProductName\n item.productID = prodInfo.id\n item.productSortOrder = prodInfo.sortOrder\n item.hasGradeGender = false\n item.cost = prodInfo.cost\n item.color = selectedProduct.upwardColorTypeID === 'N/A' ? '' : selectedProduct.upwardColorTypeID ?? ''\n item.isOptionalApparel = false\n item.isMultiPrice = false\n\n //special treatment for optional items in optional apparel (let parents choose)\n if (item.isOptionalApparel) {\n modifyForOptionalApparel(item, selectedProduct.optionalProductCost)\n }\n\n //special treatment for products that have multiple possible prices but are not optional (let parents choose)\n if (item.isMultiPrice && !item.isOptionalApparel) {\n modifyForMultiPrice(item)\n }\n\n return item\n }\n\n const show = computed(() => {\n if (allProducts.value.length > 0) return true\n return false\n })\n\n watch(\n () => allProducts.value,\n () => {\n if (!allProducts.value) return\n const modifiedProducts = allProducts.value.filter((p) => p.optionalText != '')\n let hasMultiple = false\n let hasOptional = false\n\n modifiedProducts.forEach((p) => {\n if (p.isMultiPrice && !p.isOptionalApparel) {\n hasMultiple = true\n }\n if (p.isOptionalApparel) {\n hasOptional = true\n }\n })\n\n showOptionalProductText.value = hasOptional\n showMultiPriceWarning.value = hasMultiple\n }\n )\n\n function emptyDisplayableProduct() {\n return {\n cmsProductName: '',\n cost: 0,\n costOffset: 0,\n typeParticipantID: null,\n category: null,\n categorySortOrder: 0,\n productID: null,\n productSortOrder: 0,\n color: '',\n optionalText: '',\n hasGradeGender: false,\n skipSimpleTotal: false,\n isMultiPrice: false,\n } as DisplayableProduct\n }\n\n return {\n show,\n allProducts,\n currency,\n cost,\n participantTotal,\n showOptionalProductText,\n showMultiPriceWarning,\n }\n },\n})\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!./RunningTotalUR.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!./RunningTotalUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RunningTotalUR.vue?vue&type=template&id=55d16e70&\"\nimport script from \"./RunningTotalUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./RunningTotalUR.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 * Logic that is shared across SetupSteppers for Running\n */\n\nimport { computed, onUnmounted, ref } from '@vue/composition-api'\n\nimport store from '@/store'\n\nimport { productFlowLogicUR } from '@/components/UpwardRunning/ProductFlow/productFlowLogicUR'\n\nexport interface StepComponent {\n name: string\n index: number\n stepTitle: string\n nextOfferingIndex: number\n}\n\nexport function setupStepperLogicUR() {\n const viewedSteps = computed(() => store.getters.urProductFlow.viewedSteps)\n const logic = productFlowLogicUR()\n const stepComponents = ref([])\n\n const stepListNames = {\n programInfo: 'Program Information',\n startupOrderItems: 'Startup Order Items',\n participants: 'Participants',\n }\n\n /*\n * Manage state of steps\n */\n\n function openAllSteps() {\n const steps = store.getters.urProductFlow.steps\n steps.forEach((step) => {\n store.commit.urProductFlow.addViewedStep({ step })\n })\n }\n\n const currentStep = computed({\n get() {\n return store.getters.urProductFlow.currentProductSetupStep\n },\n set(v: number) {\n store.commit.urProductFlow.setCurrentProductSetupStep({ step: v })\n },\n })\n\n function maxoutProductStepperTouchedSteps() {\n store.commit.urProductFlow.setMaxTouchedProductSetupStep({ step: viewedSteps.value.length + 1 })\n }\n\n /*\n * Warnings\n */\n\n const showCurrencyWarning = computed(() => {\n if (store.getters.partners.currencyWarningNeeded && logic.isNewProdConfig.value) {\n return !store.getters.partners.hasAcceptedCurrencyWarning\n }\n return false\n })\n\n /*\n * Initialization\n */\n\n async function initialize() {\n primeStepperValues()\n await primeProductOfferingStore()\n }\n\n function primeStepperValues() {\n logic.setIsNewProdConfig({ isNew: isNewProgram.value })\n }\n\n async function primeProductOfferingStore() {\n if (logic.isNewProdConfig.value) {\n setStepList()\n } else {\n await logic.fetchProductCatalog()\n setStepList()\n await openAllSteps()\n maxoutProductStepperTouchedSteps()\n }\n }\n\n function setStepList() {\n if (!logic.challenge) {\n return\n }\n\n const stepList: string[] = []\n stepComponents.value = []\n\n let i = 1\n stepComponents.value.push({\n name: 'InfoStepUR',\n index: i++,\n } as StepComponent)\n stepList.push(stepListNames.programInfo)\n\n stepComponents.value.push({\n name: 'StarterOrderItemStepUR',\n index: i++,\n } as StepComponent)\n stepList.push(stepListNames.startupOrderItems)\n\n stepComponents.value.push({\n name: 'ParticipantKitStepUR',\n index: i++,\n stepTitle: 'Build Running Kit',\n } as StepComponent)\n stepList.push(stepListNames.participants)\n\n store.commit.urProductFlow.setStepList({ stepList: stepList })\n }\n\n const isNewProgram = computed(() => {\n const id = logic.challenge.value.upwardChallengeID\n const detailsCount = logic.challenge.value.productConfig.length ?? 0\n if (id || detailsCount > 0) {\n return false\n }\n return true\n })\n\n /*\n * Unmount\n */\n\n onUnmounted(() => {\n store.commit.productOfferings.clear()\n store.commit.urProductFlow.clear()\n })\n\n return {\n openAllSteps,\n currentStep,\n stepComponents,\n showCurrencyWarning,\n viewedSteps,\n initialize,\n stepListNames,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, onBeforeMount, nextTick } from '@vue/composition-api'\n\nimport Stepper from '@/elements/Stepper.vue'\nimport InfoStepUR from '@/components/UpwardRunning/ProductFlow/InfoStepUR.vue'\nimport StarterOrderItemStepUR from '@/components/UpwardRunning/ProductFlow/StarterOrderItemStepUR.vue'\nimport ParticipantKitStepUR from '@/components/UpwardRunning/ProductFlow/ParticipantKitStepUR.vue'\nimport RunningTotalUR from '@/components/UpwardRunning/ProductFlow/RunningTotalUR.vue'\nimport Loading from '@/elements/Loading.vue'\nimport CurrencyWarning from '@/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue'\nimport { setupStepperLogicUR } from '@/components/UpwardRunning/ProductFlow/setupStepperLogicUR'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'SetupStepperRunning',\n components: {\n Stepper,\n InfoStepUR,\n StarterOrderItemStepUR,\n ParticipantKitStepUR,\n RunningTotalUR,\n Loading,\n CurrencyWarning,\n },\n setup() {\n const stepperLogic = setupStepperLogicUR()\n\n onBeforeMount(async () => {\n stepperLogic.currentStep.value = 0\n await stepperLogic.initialize()\n await store.dispatch.productOfferingProductPackageTypes.fetchAll(false) //get these cached up\n\n nextTick(() => (stepperLogic.currentStep.value = 1)) //trigger expansion of first step\n })\n\n const loading = computed(() => {\n if (store.getters.urProductFlow.isNewProdConfig) {\n return stepperLogic.stepComponents.value.length == 0\n } else {\n return (\n !store.getters.productOfferings.initialProductFlowLoadingComplete &&\n stepperLogic.stepComponents.value.length == 0\n )\n }\n })\n\n return {\n loading,\n ...stepperLogic,\n }\n },\n})\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!./SetupStepperRunning.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!./SetupStepperRunning.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SetupStepperRunning.vue?vue&type=template&id=b4d0c014&\"\nimport script from \"./SetupStepperRunning.vue?vue&type=script&lang=ts&\"\nexport * from \"./SetupStepperRunning.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('div',[_vm._m(0),_c('div',{staticClass:\"row mb-2\"},[_c('div',{staticClass:\"col-xl-12 pt-3\"},[(_vm.hasEarlyRegistration)?_c('currency-input',{staticClass:\"mb-1\",attrs:{\"label\":\"Early Registration\",\"required\":\"\"},on:{\"change\":_vm.sendDataToStore,\"input\":_vm.sendDataToStore},model:{value:(_vm.challenge.earlyRegistrationFee),callback:function ($$v) {_vm.$set(_vm.challenge, \"earlyRegistrationFee\", $$v)},expression:\"challenge.earlyRegistrationFee\"}}):_vm._e(),_c('currency-input',{class:_vm.hasEarlyRegistration ? 'mt-3 mb-1' : 'mb-1',attrs:{\"label\":\"Registration Fee\",\"required\":\"\"},on:{\"change\":_vm.sendDataToStore,\"input\":_vm.sendDataToStore},model:{value:(_vm.challenge.registrationFee),callback:function ($$v) {_vm.$set(_vm.challenge, \"registrationFee\", $$v)},expression:\"challenge.registrationFee\"}})],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mb-3\"},[_c('h6',[_vm._v(\"Running\")])])}]\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\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\n\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport { isEqual } from 'lodash'\n\nimport { PartnerChallenge } from '@/models/UpwardRunning/PartnerChallenge'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'RunningRegistrationFee',\n components: {\n CurrencyInput,\n },\n props: {\n value: { type: Object as PropType, required: true },\n hasEarlyRegistration: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const challenge = ref({ ...props.value })\n\n function sendDataToStore() {\n store.commit.upwardRunning.setChallengeEarlyRegistrationFee({\n fee: challenge.value.earlyRegistrationFee ?? 0,\n })\n store.commit.upwardRunning.setChallengeRegistrationFee({\n fee: challenge.value.registrationFee ?? 0,\n })\n }\n\n watch(\n () => props.value,\n () => {\n if (!isEqual(challenge.value, props.value)) {\n challenge.value = { ...props.value }\n }\n },\n { deep: true }\n )\n\n watch(\n () => challenge.value,\n () => {\n if (!isEqual(challenge.value, props.value)) {\n ctx.emit('input', challenge.value)\n }\n },\n { deep: true }\n )\n\n return {\n challenge,\n sendDataToStore,\n }\n },\n})\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!./RunningRegistrationFee.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!./RunningRegistrationFee.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RunningRegistrationFee.vue?vue&type=template&id=4f3b21dd&\"\nimport script from \"./RunningRegistrationFee.vue?vue&type=script&lang=ts&\"\nexport * from \"./RunningRegistrationFee.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { cloneDeep } from 'lodash'\nimport UpwardRunningSetupMixin from '@/views/UpwardRunning/UpwardRunningSetupMixin'\nimport SetupStepperRunning from '@/components/UpwardRunning/ProductFlow/SetupStepperRunning.vue'\nimport RunningRegistrationFee from '@/components/UpwardRunning/ProductFlow/RunningRegistrationFee.vue'\nimport SaveContinueButtonUR from '@/elements/UpwardRunning/SaveContinueButtonUR.vue'\nimport ProductWarningModal from '@/views/Leagues/ProductWarningModal.vue'\nimport CurrencyWarning from '@/components/ProductFlow/ProductSetupStepper/CurrencyWarning.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { Getter } from 'vuex-class'\nimport { ValidationError } from 'src/models/UpwardVerificationDetails'\n\nimport * as promptToSave from '@/store/promptToSave'\nimport store from '@/store'\n\nimport upwardRunningClient from '@/clients/upwardRunningClient'\n\nimport { productFlowLogicUR } from '@/components/UpwardRunning/ProductFlow/productFlowLogicUR'\n\n@Component({\n components: {\n SetupStepperRunning,\n RunningRegistrationFee,\n SaveContinueButtonUR,\n ProductWarningModal,\n CurrencyWarning,\n Loading,\n },\n})\nexport default class Products extends Mixins(UpwardRunningSetupMixin) {\n @Getter(promptToSave.getterNames.isDirty, { namespace: promptToSave.namespace })\n private readonly isDirty!: boolean\n\n private modalIsVisible = false\n private userWantsToIgnoreWarnings = false\n private warnings: ValidationError[] | null = null\n private showWarnings = false\n\n logic = productFlowLogicUR()\n\n async mounted() {\n if (this.challenge.upwardChallengeID) {\n this.nextRoute = `/programs/running/${this.challenge.upwardChallengeID}/setup/registration`\n } else {\n this.nextRoute = '/programs/running/setup/registration'\n }\n this.beforeSave = this.productBeforeSave\n await this.logic.fetchProductCatalog() //go ahead and get these cached up\n }\n\n get initialProductFlowLoadingComplete() {\n return store.getters.productOfferings.initialProductFlowLoadingComplete\n }\n\n get showCurrencyWarning() {\n if (store.getters.partners.currencyWarningNeeded && this.logic.isNewProdConfig.value) {\n return !store.getters.partners.hasAcceptedCurrencyWarning\n }\n return false\n }\n\n get isLoading() {\n if (this.logic.isNewProdConfig.value) {\n return this.loading\n } else {\n return !this.initialProductFlowLoadingComplete\n }\n }\n\n private get hasEarlyRegistration() {\n const isDate =\n this.challenge.earlyRegistrationEndDate instanceof Date &&\n !isNaN(this.challenge.earlyRegistrationEndDate.valueOf())\n\n if (isDate) {\n const date = this.challenge.earlyRegistrationEndDate as Date\n return date !== null\n }\n\n return this.challenge.earlyRegistrationEndDate !== null\n }\n\n get selectedProductOffering() {\n return store.getters.productOfferings.selectedProductOfferingConfig\n }\n\n private async productBeforeSave() {\n //this.league.productOfferingConfig = this.selectedProductOffering\n //this.league.productOfferingConfig.accountNumber = null\n\n /*****************************************************************\n ** If this is a new league, or the user wants to ignore warnings\n ** skip validation and return true\n *****************************************************************/\n\n //everything in this step has been sent to the store so refresh from there\n this.challenge = store.getters.upwardRunning.currentChallenge\n\n if (\n this.userWantsToIgnoreWarnings ||\n this.logic.isNewProdConfig.value ||\n !this.challenge.upwardChallengeID\n ) {\n this.userWantsToIgnoreWarnings = false\n return true\n }\n\n //Validation only used for warnings. Broken rules handled in the update call\n const result = await upwardRunningClient.validateExisting(\n this.challenge.upwardChallengeID ?? '',\n cloneDeep(this.challenge)\n )\n this.warnings = result.data?.warnings ?? null\n return result && result.data ? result.data?.warnings.length < 1 : true\n }\n\n /*\n * Calculate saveDisabled\n */\n\n get maxTouchedParticipantKitStep() {\n return store.getters.urProductFlow.maxTouchedParticipantKitStep\n }\n get saveDisabled() {\n return this.maxTouchedParticipantKitStep >= 3 //TODO determine what this needs to be\n }\n\n private onModalStateChange() {\n this.$router.push(`/programs/running/${this.challenge.upwardChallengeID}/setup/information`)\n }\n\n ignoreWarnings() {\n this.userWantsToIgnoreWarnings = true\n this.saveAndContinue()\n }\n\n @Watch('isDirty')\n dirtyChanged() {\n if (!this.isDirty) this.userWantsToIgnoreWarnings = false\n }\n @Watch('warnings')\n warningsChanged() {\n this.showWarnings = this.warnings ? this.warnings.length > 0 : false\n }\n}\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!./Products.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!./Products.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Products.vue?vue&type=template&id=06fa9c6d&\"\nimport script from \"./Products.vue?vue&type=script&lang=ts&\"\nexport * from \"./Products.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('div',[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)]),(_vm.initialLoadDone)?_c('div',{staticClass:\"row pt-3 no-padding-top\"},[_vm._m(1),_c('div',{staticClass:\"col-xl-6 pt-3\"},[_c('text-input',{attrs:{\"label\":\"Display Name\",\"required\":\"\"},model:{value:(_vm.challenge.publicDisplayName),callback:function ($$v) {_vm.$set(_vm.challenge, \"publicDisplayName\", $$v)},expression:\"challenge.publicDisplayName\"}}),_c('div',{staticClass:\"row pt-6\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('input-label',{attrs:{\"label\":\"Payment Options\",\"required\":\"\"}}),_c('checkbox-input',{attrs:{\"label\":\"Credit Card\",\"enabled\":false,\"showHelp\":true},on:{\"helpClicked\":function($event){_vm.showCreditCardHelp = true}},model:{value:(_vm.ccEnabled),callback:function ($$v) {_vm.ccEnabled=$$v},expression:\"ccEnabled\"}}),_c('modal',{attrs:{\"title\":\"HELP: Credit Card Payment Options\",\"is-small\":true},model:{value:(_vm.showCreditCardHelp),callback:function ($$v) {_vm.showCreditCardHelp=$$v},expression:\"showCreditCardHelp\"}},[_c('div',{staticClass:\"p-5\"},[_vm._v(\" Once account information has been provided, electronic funds transfers will occur on the first and third Wednesday of each month. They will be deposited into your designated account the following day. \")])]),(_vm.ccEnabled)?_c('span',{staticClass:\"small pl-11\"},[_vm._v(\"Current EFT Account last 4 digits: \"),_c('b',[_vm._v(_vm._s(_vm.eftBankAcctLast4))]),_vm._v(\". \"),_c('br'),_c('span',{staticClass:\"pl-11\"},[_vm._v(\"If this has changed, please \")]),_c('a',{staticClass:\"p-0 m-0 align-baseline btn btn-link small\",attrs:{\"href\":\"#\",\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();_vm.eftModalIsVisible = true}}},[_vm._v(\" submit a new form. \")])]):_c('span',{staticClass:\"small pl-11\"},[_vm._v(\" You cannot accept credit card payments yet. \"),_c('br'),_c('a',{staticClass:\"p-0 m-0 align-baseline btn btn-link small pl-11\",attrs:{\"href\":\"#\",\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();_vm.eftModalIsVisible = true}}},[_vm._v(\" Get set up to receive credit card payments\")]),(_vm.showAccessCode)?_c('br'):_vm._e(),(_vm.showAccessCode)?_c('span',{staticClass:\"pl-11\"},[_vm._v(\" Current Docusign Access Code: \"),_c('b',[_vm._v(_vm._s(_vm.accessCode))])]):_vm._e(),(_vm.showAccessCode)?_c('br'):_vm._e(),(_vm.showAccessCode)?_c('span',{staticClass:\"pl-11 env-status\"},[_vm._v(\" Current Docusign Envelope Status: \"),_c('b',[_vm._v(_vm._s(_vm.envStatus))])]):_vm._e()])],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[_c('html-editor',{attrs:{\"label\":\"Pre-registration Information for Participants\",\"max-length\":1024},model:{value:(_vm.challenge.registrationStartMessage),callback:function ($$v) {_vm.$set(_vm.challenge, \"registrationStartMessage\", $$v)},expression:\"challenge.registrationStartMessage\"}})],1),_c('div',{staticClass:\"col-12\"},[_c('html-editor',{attrs:{\"label\":\"Registration Confirmation Message for Participants\",\"max-length\":1024},model:{value:(_vm.challenge.confirmationMessage),callback:function ($$v) {_vm.$set(_vm.challenge, \"confirmationMessage\", $$v)},expression:\"challenge.confirmationMessage\"}})],1)]),_c('hr'),_c('h5',[_vm._v(\"Contact Details\")]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-6\"},[_c('text-input',{attrs:{\"label\":\"Email\"},model:{value:(_vm.challenge.contactEmail),callback:function ($$v) {_vm.$set(_vm.challenge, \"contactEmail\", $$v)},expression:\"challenge.contactEmail\"}})],1),_c('div',{staticClass:\"col-xl-6\"},[_c('text-input',{attrs:{\"label\":\"Phone\"},model:{value:(_vm.challenge.contactPhone),callback:function ($$v) {_vm.$set(_vm.challenge, \"contactPhone\", $$v)},expression:\"challenge.contactPhone\"}})],1)])],1),_c('div',{staticClass:\"col-xl-6 pt-3 border-xl-left\"},[_c('h5',[_vm._v(\"Discounts\")]),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-xl-12\"},[_c('yes-no-input',{attrs:{\"label\":\"Offer discount codes for registrants?\"},model:{value:(_vm.allowDiscountCodes),callback:function ($$v) {_vm.allowDiscountCodes=$$v},expression:\"allowDiscountCodes\"}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.allowDiscountCodes),expression:\"allowDiscountCodes\"}],staticClass:\"col-xl-12 pt-0\"},[_c('div',{staticClass:\"col-xl-12 border-xl-left\"},[_c('ManageDiscountCodesUR',{attrs:{\"discount-codes\":_vm.challenge.discountCodes,\"challengeId\":_vm.challenge.id}})],1)])]),_c('hr')]),_vm._m(2)]):_vm._e(),_c('SetupCompleteConfirmationUR',{on:{\"change\":_vm.onModalStateChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}}),_c('EFTAuthorizationRequestModal',{attrs:{\"isVisible\":_vm.eftModalIsVisible,\"eftStatus\":_vm.eftStatus},on:{\"sent\":_vm.eftAuthSent}}),_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-6 pr-0\"}),_c('div',{staticClass:\"col-sm-6 pl-0 text-right\"},[_c('SaveContinueButtonUR',{attrs:{\"program\":_vm.challenge,\"loading\":_vm.loading,\"showSave\":true},on:{\"click\":_vm.saveAndContinue}})],1)])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-6 pr-0\"},[_c('h5',[_vm._v(\"Online Participant Registration\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"alert alert-info\"},[_vm._v(\" Any changes made to this setup can take up to 15 minutes to be reflected on your registration site. \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-12\"},[_c('hr',{staticClass:\"pt-0 mt-0\"})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"title\":\"You’re not done yet!\"},on:{\"change\":_vm.onModalChange},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('p',[_vm._v(\" Congratulations! You have created your class. You can now share the online registration link for participants to join. \")]),_c('p',[_vm._v(\"Remember to access the Resources tab for your advertising files and coach manual.\")]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.hideModal}},[_vm._v(\"OK\")])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\n\nexport default defineComponent({\n name: 'SetupCompleteConfirmationUR',\n components: {\n Modal,\n },\n props: {\n value: { type: Boolean, required: true },\n },\n setup(props, ctx) {\n const modalIsVisible = ref(props.value)\n\n function hideModal() {\n modalIsVisible.value = false\n onModalChange()\n }\n\n watch(\n () => props.value,\n () => {\n modalIsVisible.value = props.value\n }\n )\n\n function onModalChange() {\n ctx.emit('input', modalIsVisible.value)\n ctx.emit('change', modalIsVisible.value)\n }\n\n return {\n modalIsVisible,\n onModalChange,\n hideModal,\n }\n },\n})\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!./SetupCompleteConfirmationUR.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!./SetupCompleteConfirmationUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SetupCompleteConfirmationUR.vue?vue&type=template&id=272f98ef&\"\nimport script from \"./SetupCompleteConfirmationUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./SetupCompleteConfirmationUR.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('div',[_c('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row px-2\"},[_c('div',{staticClass:\"col-12\"},[_c('p',{staticClass:\"py-2\"},[_vm._v(\" Add or edit discount codes below that can be used to reduce the registration fee you charge participants. \")])]),_c('div',{staticClass:\"col-md-12 py-2\"},[_c('simple-grid',{attrs:{\"grid-data\":_vm.internalDiscountCodes,\"columns\":_vm.gridColumns,\"show-edit-button\":true,\"show-delete-button\":true},on:{\"editButtonClicked\":_vm.handleEditBottonClicked,\"deleteButtonClicked\":_vm.handleDeleteBottonClicked}})],1),_c('div',{staticClass:\"col-12\"},[_c('EditDiscountCodeUR',{attrs:{\"discount-code\":_vm.activeDiscountCode},on:{\"onSave\":_vm.saveDiscountCode},model:{value:(_vm.showEditScreen),callback:function ($$v) {_vm.showEditScreen=$$v},expression:\"showEditScreen\"}})],1)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.done}},[_c('save-icon'),_vm._v(\" Save \")],1)])],2),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.toggleModal}},[_vm._v(_vm._s(_vm.manageButtonTitle))])],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('modal',{attrs:{\"title\":_vm.modalTitle,\"is-small\":false},model:{value:(_vm.internalModalIsVisible),callback:function ($$v) {_vm.internalModalIsVisible=$$v},expression:\"internalModalIsVisible\"}},[_c('div',{staticClass:\"row px-2\",staticStyle:{\"height\":\"200px\"}},[_c('div',{staticClass:\"col-md-6 py-2\"},[_c('text-input',{attrs:{\"label\":\"Description\"},model:{value:(_vm.internalDiscountCode.description),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"description\", $$v)},expression:\"internalDiscountCode.description\"}}),_c('currency-input',{attrs:{\"label\":\"Discount Amount\"},model:{value:(_vm.internalDiscountCode.discountAmount),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"discountAmount\", $$v)},expression:\"internalDiscountCode.discountAmount\"}})],1),_c('div',{staticClass:\"col-md-6 py-2\"},[_c('text-input',{attrs:{\"maxlength\":10,\"label\":\"Discount Code\"},model:{value:(_vm.internalDiscountCode.discountCode),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"discountCode\", $$v)},expression:\"internalDiscountCode.discountCode\"}}),_c('integer-input',{attrs:{\"label\":\"Max Number of Usages\"},model:{value:(_vm.internalDiscountCode.maxUsages),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"maxUsages\", $$v)},expression:\"internalDiscountCode.maxUsages\"}}),_c('checkbox-input',{attrs:{\"label\":\"Active\"},model:{value:(_vm.internalDiscountCode.active),callback:function ($$v) {_vm.$set(_vm.internalDiscountCode, \"active\", $$v)},expression:\"internalDiscountCode.active\"}})],1)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.done}},[_c('save-icon'),_vm._v(\" Save \")],1)])],2),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.showModal}},[_vm._v(\"Add New Discount Code\")])],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\nimport { defineComponent, ref, watch, onMounted, PropType } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport { PartnerChallengeDiscountCode } from '@/models/UpwardRunning/PartnerChallengeDiscountCode'\nimport { SaveIcon } from '@/elements/Icons'\n\nexport default defineComponent({\n name: 'EditDiscountCodeUR',\n components: {\n Modal,\n TextInput,\n IntegerInput,\n CurrencyInput,\n CheckboxInput,\n SaveIcon,\n },\n props: {\n discountCode: {\n type: (null as unknown) as PropType,\n required: false,\n },\n challengeID: { type: Number, required: true, default: 0 },\n value: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const internalDiscountCode = ref({\n challengeID: props.challengeID,\n id: 0,\n description: '',\n discountCode: '',\n discountAmount: 0,\n maxUsages: 0,\n numberOfUsages: 0,\n active: true,\n })\n\n const internalModalIsVisible = ref(false)\n const modalTitle = ref('Edit Discount Code')\n\n watch(\n () => internalModalIsVisible.value,\n () => {\n ctx.emit('input', internalModalIsVisible.value)\n ctx.emit('change', internalModalIsVisible.value)\n }\n )\n\n watch(\n () => internalDiscountCode.value.discountCode,\n () => {\n if (internalDiscountCode.value && internalDiscountCode.value.discountCode) {\n internalDiscountCode.value.discountCode = internalDiscountCode.value.discountCode.toUpperCase()\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (internalModalIsVisible.value !== props.value) {\n internalModalIsVisible.value = props.value\n }\n }\n )\n\n onMounted(() => {\n internalModalIsVisible.value = props.value\n if (props.discountCode) {\n internalDiscountCode.value = props.discountCode\n }\n })\n\n function done() {\n if (internalDiscountCode.value && internalDiscountCode.value.discountCode) {\n internalDiscountCode.value.discountCode = internalDiscountCode.value.discountCode.toUpperCase()\n }\n\n ctx.emit('onSave', internalDiscountCode.value)\n toggleModal()\n }\n\n function cancel() {\n toggleModal()\n }\n\n function toggleModal() {\n internalModalIsVisible.value = !internalModalIsVisible.value\n }\n\n function showModal() {\n internalDiscountCode.value = defaultDiscountCode()\n internalModalIsVisible.value = true\n }\n\n watch(\n () => props.discountCode,\n () => {\n internalDiscountCode.value = props.discountCode || defaultDiscountCode()\n }\n )\n\n function defaultDiscountCode(): PartnerChallengeDiscountCode {\n return {\n challengeID: props.challengeID,\n id: 0,\n description: '',\n discountCode: '',\n discountAmount: 0,\n maxUsages: 0,\n numberOfUsages: 0,\n active: true,\n } as PartnerChallengeDiscountCode\n }\n\n return {\n internalModalIsVisible,\n modalTitle,\n internalDiscountCode,\n cancel,\n done,\n showModal,\n }\n },\n})\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!./EditDiscountCodeUR.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!./EditDiscountCodeUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EditDiscountCodeUR.vue?vue&type=template&id=34926930&\"\nimport script from \"./EditDiscountCodeUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./EditDiscountCodeUR.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport uuid from 'uuid'\nimport { Component, Vue, Prop, Watch } from 'vue-property-decorator'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport EditDiscountCodeUR from '@/components/UpwardRunning/EditDiscountCodeUR.vue'\nimport { PartnerChallengeDiscountCode } from '@/models/UpwardRunning/PartnerChallengeDiscountCode'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport { SaveIcon } from '@/elements/Icons'\n\n@Component({\n components: {\n Modal,\n TextInput,\n EditDiscountCodeUR,\n SimpleGrid,\n SaveIcon,\n },\n})\nexport default class ManageDiscountCodesUR extends Vue {\n private readonly guid = uuid.v4()\n private modalIsVisible = false\n private modalTitle = 'Manage Discount Codes'\n private defaultManageButtonTitle = 'Manage Discount Codes'\n private manageButtonTitle = this.defaultManageButtonTitle\n private wasCancelled = false\n private showEditScreen = false\n private activeDiscountCode: PartnerChallengeDiscountCode | null = null\n\n public get gridId() {\n return `grid-${this.guid}`\n }\n\n @Prop({ required: true })\n private readonly discountCodes!: PartnerChallengeDiscountCode[] | null\n\n @Prop({ type: Number, required: true, default: 0 })\n private readonly challengeId!: number\n\n private gridColumns: GridColumn[] = [\n {\n field: 'description',\n headerText: 'Description',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'discountCode',\n headerText: 'Code',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'discountAmount',\n headerText: 'Amount',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'maxUsages',\n headerText: 'Max Usages',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'numberOfUsages',\n headerText: '# of Usages',\n textAlign: '',\n width: 0,\n format: '',\n } as GridColumn,\n {\n field: 'active',\n headerText: 'Active',\n textAlign: '',\n width: 0,\n format: '',\n customRender: this.renderActive,\n } as GridColumn,\n ]\n\n private internalDiscountCodes: PartnerChallengeDiscountCode[] = []\n\n @Watch('modalIsVisible')\n private onModalVisibilityChanged() {\n this.wasCancelled = false\n }\n\n @Watch('internalDiscountCodes.length')\n private oninternalDiscountCodesChanged() {\n this.manageButtonTitle = `${this.defaultManageButtonTitle} ${\n this.internalDiscountCodes.length > 0 ? '(' + this.internalDiscountCodes.length + ')' : ''\n }`\n }\n\n private done() {\n this.$emit('onSave', this.discountCodes)\n this.toggleModal()\n }\n\n private cancel() {\n this.wasCancelled = true\n this.toggleModal()\n }\n\n private toggleModal() {\n this.modalIsVisible = !this.modalIsVisible\n }\n\n private mounted() {\n if (this.discountCodes) {\n this.internalDiscountCodes = this.discountCodes\n } else {\n this.internalDiscountCodes = []\n }\n }\n\n private saveDiscountCode(discountCode: PartnerChallengeDiscountCode) {\n if (discountCode.id === 0) {\n discountCode.id = -1 * (this.discountCodes!.length + 1)\n this.discountCodes?.push(discountCode)\n this.internalDiscountCodes = this.discountCodes!\n }\n\n this.activeDiscountCode = null\n }\n\n private handleEditBottonClicked(entity: any) {\n this.activeDiscountCode = entity\n this.showEditScreen = true\n }\n\n private handleDeleteBottonClicked(entity: any) {\n const index = this.internalDiscountCodes.indexOf(entity)\n if (index < 0) {\n return\n }\n\n this.internalDiscountCodes.splice(index, 1)\n }\n\n private renderActive(value: any) {\n if (value) {\n return '
'\n }\n return '
'\n }\n}\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!./ManageDiscountCodesUR.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!./ManageDiscountCodesUR.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ManageDiscountCodesUR.vue?vue&type=template&id=e0857050&\"\nimport script from \"./ManageDiscountCodesUR.vue?vue&type=script&lang=ts&\"\nexport * from \"./ManageDiscountCodesUR.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ManageDiscountCodesUR.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport UpwardRunningSetupMixin from '@/views/UpwardRunning/UpwardRunningSetupMixin'\nimport * as authorizationStore from '@/store/authorization'\nimport Loading from '@/elements/Loading.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport DateTimeInput from '@/elements/DateTimeInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport CurrencyInput from '@/elements/CurrencyInput.vue'\nimport EFTAuthorizationRequestModal from '@/components/EFTAuthorizationRequestModal.vue'\nimport { EFTRequestStatus } from '@/models/Partner/EFTRequestStatus'\nimport partnersClient from '@/clients/partnersClient'\nimport * as upwardRunningStore from '@/store/upwardRunning'\nimport { Action, Getter } from 'vuex-class'\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\nimport { PartnerChallenge } from '@/models/UpwardRunning/PartnerChallenge'\nimport SetupCompleteConfirmationUR from '@/components/UpwardRunning/SetupCompleteConfirmationUR.vue'\nimport ManageDiscountCodesUR from '@/components/UpwardRunning/ManageDiscountCodesUR.vue'\nimport IntegerInput from '@/elements/IntegerInput.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\nimport SaveContinueButtonUR from '@/elements/UpwardRunning/SaveContinueButtonUR.vue'\nimport HtmlEditor from '@/elements/HtmlEditor2.vue'\nimport store from '@/store'\nimport Modal from '@/components/Modal.vue'\n\n@Component({\n components: {\n Loading,\n TextInput,\n DateTimeInput,\n CheckboxInput,\n MemoInput,\n YesNoInput,\n InputLabel,\n CurrencyInput,\n SetupCompleteConfirmationUR,\n ManageDiscountCodesUR,\n IntegerInput,\n HorizontalTabs,\n SaveContinueButtonUR,\n HtmlEditor,\n EFTAuthorizationRequestModal,\n Modal,\n },\n})\nexport default class Registration extends Mixins(UpwardRunningSetupMixin) {\n @Action(upwardRunningStore.actionNames.create, { namespace: upwardRunningStore.namespace })\n private readonly create!: ({ item }: { item: PartnerChallenge }) => Promise\n\n @Getter(authorizationStore.getterNames.firstAccountNumber, { namespace: authorizationStore.namespace })\n private accountNumber!: string\n\n private modalIsVisible = false\n private newId = ''\n private eftBankAcctLast4 = ''\n private registrationLoaded = false\n private eftModalIsVisible = false\n private eftStatus: EFTRequestStatus | null = null\n private showCreditCardHelp = false\n private allowDiscountCodes = false\n\n async mounted() {\n this.afterSaveNew = this.afterSaveNewMethod\n\n if (this.challenge.upwardChallengeID) {\n this.nextRoute = '/'\n }\n\n this.allowDiscountCodes = this.challenge.discountCodes.length > 0\n\n this.eftStatus = await partnersClient.getEFTRequestStatus(this.accountNumber)\n }\n\n get showAccessCode(): boolean {\n return this.eftStatus?.status != 'declined' && this.eftStatus?.status != 'voided' && this.accessCode != ''\n }\n\n get accessCode(): string {\n return this.eftStatus?.accessCode ?? ''\n }\n\n get envStatus(): string {\n return this.eftStatus?.status ?? ''\n }\n\n get partner() {\n return store.getters.partners.partnerInfo\n }\n\n get ccEnabled() {\n //for some reason this doesn't work\n //return this.eftBankAcctLast4 && this.eftBankAcctLast4 != ''\n if (this.eftBankAcctLast4 && this.eftBankAcctLast4 != '') {\n return true\n } else {\n return false\n }\n }\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n if (this.accountNumber) {\n this.eftBankAcctLast4 = this.partner?.eftBankAcctLast4 ?? ''\n }\n\n this.registrationLoaded = true\n }\n\n private async afterSaveNewMethod() {\n const savedChallenge = await this.create({ item: this.challenge })\n if (savedChallenge) {\n this.newId = savedChallenge.upwardChallengeID!\n }\n\n this.modalIsVisible = true\n }\n\n private onModalStateChange() {\n this.$router.push(`/programs/running/${this.newId}/setup/information`)\n }\n\n private async eftAuthSent() {\n this.eftModalIsVisible = false\n this.eftStatus = await partnersClient.getEFTRequestStatus(this.accountNumber)\n }\n}\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!./Registration.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!./Registration.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Registration.vue?vue&type=template&id=3ddca34c&scoped=true&\"\nimport script from \"./Registration.vue?vue&type=script&lang=ts&\"\nexport * from \"./Registration.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Registration.vue?vue&type=style&index=0&id=3ddca34c&lang=scss&scoped=true&\"\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 \"3ddca34c\",\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('div',{staticClass:\"mb-5 pb-5\"},[(!_vm.initialLoadDone)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('loading')],1)]):_vm._e(),(_vm.initialLoadDone)?_c('div',[_c('h5',[_vm._v(\"Group Information\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Group Name\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.challenge.challengeName))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Group Meeting Day/Time\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.challenge.classDay)+\" / \"+_vm._s(_vm.challenge.classTime))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Ministry Objectives\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.challenge.missionObjective)}})]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"League Finder Message\")]),(_vm.challenge.leagueFinderMessage)?_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.challenge.leagueFinderMessage)}}):_vm._e()]),(_vm.challenge.udfs.length)?_c('h6',[_vm._v(\"Additional Participant Information\")]):_vm._e(),_vm._l((_vm.challenge.udfs),function(item,key){return _c('div',{key:item.udfid},[_c('div',{staticClass:\"tag\"},[_vm._v(\"UDF \"+_vm._s(key + 1))]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(item.label)+\" \")])])}),_c('h5',[_vm._v(\"Key Dates & Places\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Registration Begins\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.challenge.registrationBeginDate,'MMM dd, yyyy'))+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Early Registration Ends\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.challenge.earlyRegistrationEndDate ? _vm.date(_vm.challenge.earlyRegistrationEndDate, 'MMM dd, yyyy') : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Registration Deadline\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.challenge.registrationEndDate ? _vm.date(_vm.challenge.registrationEndDate, 'MMM dd, yyyy') : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"First Activity Date\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.challenge.startDate,'MMM dd, yyyy')))])]),_c('h5',[_vm._v(\"Leadership\")]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Coach\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.coachContact.firstName)+\" \"+_vm._s(_vm.coachContact.lastName))])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Primary Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.formatPhoneNumber(_vm.coachContact.primaryPhoneNumber))+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Secondary Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.coachContact.secondaryPhoneNumber ? _vm.formatPhoneNumber(_vm.coachContact.secondaryPhoneNumber) : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Alternate Phone\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.coachContact.alternatePhoneNumber ? _vm.formatPhoneNumber(_vm.coachContact.alternatePhoneNumber) : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Email\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.coachContact.emailAddress ? _vm.coachContact.emailAddress : 'None')+\" \")])]),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Years Experience\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm.coachContact.yearsExperience))])]),_c('h5',[_vm._v(\"Pricing\")]),(_vm.hasEarlyRegistration)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Early Registration Fee\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.challenge.earlyRegistrationFee)))])]):_vm._e(),_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Registration Fee\")]),_c('div',{staticClass:\"data\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.challenge.registrationFee)))])]),_c('h5',[_vm._v(\"Online Registration\")]),[_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Allowing Discount Codes?\")]),_c('div',{staticClass:\"data\"},[_vm._v(\" \"+_vm._s(_vm.challenge.discountCodes.length ? 'Yes' : 'No')+\" \")])]),(_vm.challenge.discountCodes.length)?_c('div',{staticClass:\"pb-4\"},[_c('div',{staticClass:\"px-4 pb-0 mt-0 border callout shadow-sm\"},[_c('div',{staticClass:\"pt-1 tag\"},[_vm._v(\"Discount Details\")]),_c('div',[_c('div',{staticClass:\"mt-5\"},[_c('table',{staticClass:\"table\"},[_vm._m(0),_c('tbody',_vm._l((_vm.challenge.discountCodes),function(item,index){return _c('tr',{key:item.id},[_c('td',[_vm._v(_vm._s(item.discountCode))]),_c('td',[_vm._v(_vm._s(item.description))]),_c('td',[_vm._v(_vm._s(item.discountAmount))]),_c('td',[_vm._v(_vm._s(item.maxUsages))]),_c('td',[_vm._v(_vm._s(item.numberOfUsages))])])}),0)])])])])]):_vm._e(),(_vm.challenge.registrationStartMessage)?_c('div',[_c('div',{staticClass:\"tag.aligntop\"},[_vm._v(\"Pre-Registration Information\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.challenge.registrationStartMessage)}})]):_vm._e(),(_vm.challenge.confirmationMessage)?_c('div',[_c('div',{staticClass:\"tag.aligntop\"},[_vm._v(\"Registration Confirmation Message\")]),_c('div',{staticClass:\"px-4 pt-2 pb-2 mt-2 border callout shadow-sm\",domProps:{\"innerHTML\":_vm._s(_vm.challenge.confirmationMessage)}})]):_vm._e()],_c('h5',[_vm._v(\"Products\")]),(_vm.productsLoading)?_c('loading',{attrs:{\"id-small\":\"\"}}):(!_vm.productList.length)?_c('div',[_c('div',{staticClass:\"tag\"},[_vm._v(\"Legacy Products\")]),_c('div',{staticClass:\"data\"},[_vm._v(\"Not available for display\")])]):_vm._l((_vm.productList),function(p,i){return _c('div',{key:i},[_vm._v(\" \"+_vm._s(_vm.getProductDescription(p.upwardProductID))+\" \")])})],2):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Code\")]),_c('th',[_vm._v(\"Description\")]),_c('th',[_vm._v(\"Amount\")]),_c('th',[_vm._v(\"Max Usages\")]),_c('th',[_vm._v(\"# of Usages\")])])])}]\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\nimport { Component, Mixins, Watch } from 'vue-property-decorator'\n\nimport UpwardRunningSetupMixin from '@/views/UpwardRunning/UpwardRunningSetupMixin'\nimport Loading from '@/elements/Loading.vue'\n\nimport date from '@/filters/date'\nimport properCase from '@/filters/properCase'\nimport currency from '@/filters/currency'\nimport { formatPhoneNumber } from '@/services/phoneNumberService'\n\nimport { ProductOfferingInfo } from '@/GeneratedTypes/ListInfo/ProductOfferingInfo'\nimport { PartnerChallengeProductConfig } from '@/models/UpwardRunning/PartnerChallengeProductConfig'\nimport dayjs from 'dayjs'\nimport store from '@/store'\n\n@Component({\n components: {\n Loading,\n },\n filters: {\n date,\n properCase,\n currency,\n },\n methods: {\n formatPhoneNumber,\n date,\n },\n})\nexport default class Archive extends Mixins(UpwardRunningSetupMixin) {\n private get hasEarlyRegistration(): boolean {\n return (\n this.challenge.earlyRegistrationEndDate !== null &&\n !dayjs('0001-01-01T00:00:00').isSame(dayjs(this.challenge.earlyRegistrationEndDate ?? ''))\n )\n }\n\n async mounted() {\n const challenge = store.getters.upwardRunning.currentChallenge\n await store.dispatch.upwardRunning.loadRunningOrderProducts({\n typeLeagueID: challenge.typeLeagueID ?? '',\n startDate: challenge.startDate ?? new Date(),\n })\n }\n\n @Watch('initialLoadDone')\n private onInitialLoadDone() {\n this.getProducts()\n }\n\n productsLoading = false\n productList: (PartnerChallengeProductConfig | null)[] = []\n getProducts() {\n /*\n //get all product offering ids across all league types\n const offeringIds = [\n ...new Set(this.currentLeague.productOfferingConfig?.details?.map((p) => p.productOfferingID)),\n ]\n\n //build and execute api calls; one call for each offeringId\n const calls: Promise[] = []\n offeringIds.forEach((id: number) => calls.push(offeringClient.retrieveChildOfferings(id)))\n\n this.productsLoading = true\n const results = await Promise.all(calls)\n this.productsLoading = false\n\n //get all product ids across all league types\n const selProducts = this.currentLeague.productOfferingConfig?.details?.map((p) => {\n return { productOfferingID: p.productOfferingID, productID: p.productID }\n })\n\n //get list of selected products\n // this.productList = this.filterToSelected(results, selProducts)\n */\n this.productList = this.challenge.productConfig\n }\n\n filterToSelected(\n results: (ProductOfferingInfo | null)[],\n selProducts: { productOfferingID: number; productID: number }[] | undefined\n ) {\n if (!selProducts) return []\n\n //remove fees\n results.forEach((r) => {\n if (r && r.categories?.length) {\n r.categories = r.categories.filter(\n (c) =>\n c.typeProductOfferingOptionID != 'UPWARDFEES' && c.typeProductOfferingOptionID != 'UPWARDDISCOUNT'\n )\n }\n })\n\n //filter catalog to only those products selected by the league\n results.forEach((r) => {\n r?.categories?.forEach((c) => {\n const p = c.products?.filter((p) =>\n selProducts.some((s) => s.productOfferingID == r.id && s.productID == p.productID)\n )\n c.products = p ?? null\n })\n })\n\n return results\n }\n\n getProductDescription(upwardProductID: string | null) {\n //get list of products from store\n const products = store.getters.upwardRunning.runningOrderProducts\n //find upwardProductID in list of products\n const product = products.find((x) => x.upwardProductID == upwardProductID)\n //return productName or registerLabel or upwardProductID\n if (product) {\n if (product.cmsProductName) {\n return product.cmsProductName\n }\n if (product.registrationLabel) {\n return product.registrationLabel\n }\n }\n return upwardProductID\n }\n}\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!./Archive.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!./Archive.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Archive.vue?vue&type=template&id=eeb2ecd0&scoped=true&\"\nimport script from \"./Archive.vue?vue&type=script&lang=ts&\"\nexport * from \"./Archive.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Archive.vue?vue&type=style&index=0&id=eeb2ecd0&lang=scss&scoped=true&\"\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 \"eeb2ecd0\",\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('div',[[_c('div',{staticClass:\"resources d-flex flex-row flex-grow-1\"},[(_vm.loading)?_c('loading',{staticClass:\"m-2\"}):_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"center\",\"margin\":\"10px\",\"font-size\":\"1.5rem\",\"border-bottom\":\"2px solid\"}},[_vm._v(\" Upward Running Resources \")]),_c('ResourceList',{attrs:{\"resources\":_vm.allResources}})],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 (_vm.resources.length > 0)?_c('div',[(_vm.loading)?_c('div',{staticClass:\"col\"},[_c('loading')],1):[_c('div',{staticClass:\"resources d-flex flex-row flex-grow-1 bg-light-2\"},[_c('div',{staticClass:\"bg-white flex-grow-1 p-4\"},[_c('div',{staticClass:\"row\"},_vm._l((_vm.displayedResources),function(resource){return _c('ResourceTile',{key:resource.resourceID,staticClass:\"col-md-6 col-xl-4\",attrs:{\"resource\":resource,\"roleDescription\":\"\"}})}),1)])])]],2):_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:\"clickable no-gutters row\",on:{\"click\":_vm.downloadResource}},[_c('div',{staticClass:\"col-auto\"},[_c('i',{staticClass:\"fa-4x pr-2\",class:_vm.iconCssClass})]),_c('div',{staticClass:\"col resource-description-wrapper\"},[_vm._v(\" \"+_vm._s(_vm.resource.title)+\" \"),_c('p',{staticClass:\"text-muted\"},[_c('small',{domProps:{\"innerHTML\":_vm._s(_vm.resource.shortDescriptionContent)}})])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { Resource } from '@/models/Program/Resource'\nimport resourceUsageClient from '@/clients/resourceUsageClient'\nimport { ResourceItem } from '@/models/Program/ResourceItem'\nimport resourceService from '@/services/resourceService'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ResourceTile',\n components: {\n VerticalTabs,\n Loading,\n TextInput,\n SelectInput,\n },\n props: {\n resource: { type: Object as PropType, required: true },\n roleDescription: { type: String, required: true },\n },\n setup(props) {\n const firstAccountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const userEmail = computed(() => store.getters.authorization.email)\n\n const iconCssClass = computed(() => {\n const fileType = resourceService.getResourceFileType(props.resource.resourceUrl)\n return resourceService.getResourceFileTypeIcon(fileType)\n })\n\n function downloadResource() {\n const resourceItem: ResourceItem = {\n accountNumber: firstAccountNumber.value,\n resourceID: props.resource.resourceID,\n resourceTitle: props.resource.title,\n programType: 'NONE',\n userID: userEmail.value,\n role: props.roleDescription,\n pageAccessedFrom: window.location.href,\n }\n\n resourceUsageClient.postResourceUsage(resourceItem)\n\n if (props.resource.mediaUrl) {\n window.open(props.resource.mediaUrl, '_blank')\n }\n\n if (props.resource.resourceUrl) {\n window.open(props.resource.resourceUrl, '_blank')\n }\n }\n\n return {\n downloadResource,\n iconCssClass,\n }\n },\n})\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!./ResourceTile.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!./ResourceTile.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResourceTile.vue?vue&type=template&id=32971616&scoped=true&\"\nimport script from \"./ResourceTile.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResourceTile.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ResourceTile.vue?vue&type=style&index=0&id=32971616&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 \"32971616\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { Resource } from '@/models/Program/Resource'\nimport ResourceTile from './ResourceTile.vue'\nimport ToggleSwitchInput from '@/elements/ToggleSwitchInput.vue'\nimport resourceService, { ResourceFileTypeCategory } from '@/services/resourceService'\nimport DropDownMultiSelect from '@/components/DropDownMultiSelect.vue'\nimport { MultiSelectValue } from '@/lib/support/components/MultiSelect/MultiSelectValue'\n\nexport default defineComponent({\n name: 'ResourceList',\n components: {\n VerticalTabs,\n Loading,\n TextInput,\n SelectInput,\n ResourceTile,\n ToggleSwitchInput,\n DropDownMultiSelect,\n },\n props: {\n resources: { type: Array as PropType, required: true },\n },\n setup(props) {\n const loading = ref(false)\n const searchKeyword = ref('')\n\n /** A human friendly sentence about the current search filters */\n const searchDesciption = computed(() => {\n if (!searchKeyword.value) return `Showing ${displayedResources.value.length} resources.`\n return `Showing ${displayedResources.value.length} resources matching the term \"${searchKeyword.value}\".`\n })\n\n const taxonomies = computed(() => {\n const retval: { [key: string]: Resource[] } = {}\n for (const resource of props.resources) {\n if (resource.leagueDirectoryTaxonomy && Array.isArray(resource.leagueDirectoryTaxonomy)) {\n for (const taxonomyTitle of resource.leagueDirectoryTaxonomy) {\n if (!retval[taxonomyTitle]) {\n retval[taxonomyTitle] = []\n }\n\n retval[taxonomyTitle].push(resource)\n }\n }\n }\n return retval\n })\n\n const taxonomyTitles = computed(() => Object.keys(taxonomies.value).sort())\n\n const taxonomyFilterOptions = computed(() => [...taxonomyTitles.value])\n\n const selectedCategories = ref([])\n\n function toggleCategory(category: string) {\n if (!selectedCategories.value.includes(category)) {\n selectedCategories.value = [...selectedCategories.value, category]\n } else {\n selectedCategories.value = selectedCategories.value.filter((c) => c !== category)\n }\n }\n\n function categorySelected(category: string) {\n return selectedCategories.value.includes(category)\n }\n\n function categoryCount(category: string) {\n return taxonomies.value[category]?.length ?? 0\n }\n\n const selectedResourceTypes = ref([])\n /** This should return the resources that are display on the page.\n * Resources are displayed if the filters are such that the resource matches.\n * If no filter controls are shown, then all resources are shown.\n */\n const displayedResources = computed(() => {\n const filter = (r: Resource): boolean => {\n const resourceCategories = Array.isArray(r.leagueDirectoryTaxonomy)\n ? r.leagueDirectoryTaxonomy\n : ([] as string[])\n return (\n selectedCategories.value.length === 0 ||\n selectedCategories.value.some((c) => resourceCategories.includes(c))\n )\n }\n let myResources = props.resources.filter(filter)\n\n if (searchKeyword.value) {\n myResources = myResources.filter(\n (r) =>\n r.title.toLowerCase().includes(searchKeyword.value.toLowerCase()) ||\n (r.shortDescriptionContent || '').toLowerCase().includes(searchKeyword.value.toLowerCase())\n )\n }\n\n if (selectedResourceTypes.value.length > 0) {\n myResources = myResources.filter((r) => {\n const resourceType = resourceService.getResourceFileType(r.resourceUrl)\n return (\n selectedResourceTypes.value.filter((t) => {\n return t.id === resourceService.getResourceFileTypeCategory(resourceType)\n }).length > 0\n )\n })\n }\n myResources.sort((a, b) =>\n a.sortOrder == b.sortOrder ? 0 : (a.sortOrder ?? 0) > (b.sortOrder ?? 0) ? 1 : -1\n )\n\n // Get the unique resource\n return myResources.filter((e, i) => myResources.findIndex((a) => a.resourceID === e.resourceID) === i)\n })\n\n const resourceTypes = computed(() =>\n [\n ...new Set(\n props.resources.map((r) => {\n const t = resourceService.getResourceFileType(r.resourceUrl)\n const word = resourceService.getResourceFileTypeCategory(t)\n return word\n })\n ),\n ]\n .sort()\n .map((w: ResourceFileTypeCategory) => {\n const cat = { id: w }\n switch (w) {\n case ResourceFileTypeCategory.archive:\n return { ...cat, description: 'Archives' }\n case ResourceFileTypeCategory.image:\n return { ...cat, description: 'Images' }\n case ResourceFileTypeCategory.pdf:\n return { ...cat, description: 'PDFs' }\n case ResourceFileTypeCategory.slides:\n return { ...cat, description: 'Slides' }\n case ResourceFileTypeCategory.video:\n return { ...cat, description: 'Videos' }\n case ResourceFileTypeCategory.unknown:\n default:\n return null\n }\n })\n .filter((w) => w !== null)\n )\n\n return {\n loading,\n searchKeyword,\n selectedResourceTypes,\n resourceTypes,\n taxonomyFilterOptions,\n displayedResources,\n searchDesciption,\n categoryCount,\n categorySelected,\n toggleCategory,\n }\n },\n})\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!./ResourceList.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!./ResourceList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResourceList.vue?vue&type=template&id=5e83c69a&scoped=true&\"\nimport script from \"./ResourceList.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResourceList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ResourceList.vue?vue&type=style&index=0&id=5e83c69a&scoped=true&lang=scss&\"\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 \"5e83c69a\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, onMounted } from '@vue/composition-api'\nimport VerticalTabs from '@/components/VerticalTabs.vue'\nimport RoleResources from '@/views/Programs/Resources/RoleResources.vue'\nimport ResourceList from '@/views/UpwardRunning/Resources/ResourceList.vue'\nimport AdCommissionerResources from '@/views/Programs/Resources/AdCommissionerResources.vue'\nimport contentManagementClient from '@/clients/contentManagementClient'\nimport { Resource } from '@/models/Program/Resource'\nimport Loading from '@/elements/Loading.vue'\nimport PageContent from '@/components/PageContent.vue'\nimport ToggleSwitchInput from '@/elements/ToggleSwitchInput.vue'\nimport ResourceTile from '@/views/UpwardRunning/Resources/ResourceTile.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Resources',\n components: {\n VerticalTabs,\n Loading,\n RoleResources,\n AdCommissionerResources,\n PageContent,\n ToggleSwitchInput,\n ResourceList,\n ResourceTile,\n },\n setup() {\n const resources = ref([])\n const marketingResources = ref([])\n const allResources = ref([])\n const loading = ref(false)\n\n function dateFilter(r: Resource) {\n const now = new Date()\n return (\n r.expirationDate === null ||\n r.expirationDate === '0001-01-01T00:00:00' ||\n new Date(r.expirationDate) > now\n )\n }\n\n onMounted(async () => {\n window.scrollTo(0, 0)\n await fetchResources()\n })\n\n async function fetchResources() {\n loading.value = true\n try {\n const challenge = store.getters.upwardRunning.currentChallenge\n resources.value = []\n\n const myMarketingResources = contentManagementClient.getVolunteerResourcesRunning(\n challenge.upwardChallengeID ?? ''\n )\n const [marketing]: Array = await Promise.allSettled([myMarketingResources])\n marketingResources.value = marketing.value.data.filter(dateFilter).map((r: Resource) => {\n r.leagueDirectoryTaxonomy = ['Planning / Advertising']\n return r\n })\n allResources.value = marketingResources.value\n loading.value = false\n } catch (err) {\n console.error(err)\n loading.value = false\n }\n }\n\n return {\n loading,\n marketingResources,\n allResources,\n }\n },\n})\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!./Resources.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!./Resources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Resources.vue?vue&type=template&id=7d7a1078&scoped=true&\"\nimport script from \"./Resources.vue?vue&type=script&lang=ts&\"\nexport * from \"./Resources.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Resources.vue?vue&type=style&index=0&id=7d7a1078&scoped=true&lang=scss&\"\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 \"7d7a1078\",\n null\n \n)\n\nexport default component.exports","import { RouteConfig } from 'vue-router'\nimport { urIDExpression } from '@/lib/support/router/idHelper'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\n\nimport Setup from '@/views/UpwardRunning/Setup.vue'\nimport UpwardRunningIndex from '@/views/UpwardRunning/UpwardRunningIndex.vue'\nimport Information from '@/views/UpwardRunning/Information.vue'\nimport KeyDates from '@/views/UpwardRunning/KeyDates.vue'\nimport Leadership from '@/views/UpwardRunning/Leadership.vue'\nimport Products from '@/views/UpwardRunning/Products.vue'\nimport Registration from '@/views/UpwardRunning/Registration.vue'\nimport Archive from '@/views/UpwardRunning/Archive.vue'\n\nconst ParticipantsIndex = () => import('@/views/UpwardRunning/Participants/ParticipantsIndex.vue')\nconst ParticipantsView = () => import('@/views/UpwardRunning/Participants/ParticipantsView.vue')\n\nconst Communications = () => import('@/views/UpwardRunning/Communications/Communications.vue')\nconst History = () => import('@/views/Programs/Communications/History.vue')\nconst Settings = () => import('@/views/Programs/Communications/Settings.vue')\nconst Email = () => import('@/views/Programs/Communications/Email.vue')\nconst Sms = () => import('@/views/Programs/Communications/Sms.vue')\nconst Scheduled = () => import('@/views/Programs/Communications/Scheduled.vue')\nconst Failures = () => import('@/views/Programs/Communications/Failures.vue')\n\nconst OrdersIndex = () => import('@/views/UpwardRunning/Orders/OrdersIndex.vue')\nconst ShippingTimelines = () => import('@/views/UpwardRunning/Orders/ShippingTimelines.vue')\nconst OrderHistory = () => import('@/views/UpwardRunning/Orders/OrderHistory.vue')\nconst OrderRunning = () => import('@/views/UpwardRunning/Orders/OrderRunning.vue')\n// const Returns = () => import('@/views/UpwardRunning/Orders/Returns.vue')\nconst OrderFrame = () => import('@/views/UpwardRunning/Orders/OrderFrame.vue')\nconst OrderDetailPage = () => import('@/views/UpwardRunning/Orders/OrderDetailPage.vue')\n\n// import Reports from '@/views/UpwardRunning/Reports/Index.vue'\n// import ExcelReports from '@/views/UpwardRunning/Reports/ExcelReports.vue'\n// import WebviewReports from '@/views/UpwardRunning/Reports/WebviewReports.vue'\n// import DynamicReports from '@/views/UpwardRunning/Reports/DynamicReports.vue'\n\nimport Resources from '@/views/UpwardRunning/Resources/Resources.vue'\n\nexport default [\n {\n path: `running/${urIDExpression}`,\n component: UpwardRunningIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/running/${urIDExpression}/setup`,\n },\n //participants\n {\n path: 'participants',\n component: ParticipantsIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/running/${urIDExpression}/participants/list`,\n },\n {\n path: 'list',\n component: ParticipantsView,\n name: `list-participant-running`,\n },\n {\n path: 'search',\n component: ParticipantsView,\n name: `search-participant-running`,\n },\n ],\n },\n //communications\n {\n path: 'communications',\n component: Communications,\n children: [\n {\n path: '/',\n redirect: `/programs/running/${urIDExpression}/communications/email`,\n },\n {\n path: 'email',\n component: Email,\n },\n {\n path: 'sms',\n component: Sms,\n },\n {\n path: 'failures',\n component: Failures,\n },\n { path: 'scheduled', component: Scheduled },\n {\n path: 'history',\n component: History,\n },\n { path: 'settings', component: Settings },\n ],\n },\n //orders\n {\n path: 'ordering',\n component: OrdersIndex,\n children: [\n {\n path: 'running/:step',\n component: OrderRunning,\n },\n {\n path: 'running',\n redirect: `/programs/running/${urIDExpression}/ordering/running/0`,\n },\n // {\n // path: 'returns',\n // component: Returns,\n // },\n {\n path: 'shippingtimelines',\n component: ShippingTimelines,\n },\n {\n path: 'history',\n component: OrderHistory,\n },\n {\n path: 'history/order-detail/:orderid',\n component: OrderDetailPage,\n },\n {\n path: `products/${OrderTypesEnum.runningStartup}/:step`,\n component: OrderFrame,\n },\n {\n path: 'products/',\n redirect: `/programs/running/${urIDExpression}/ordering/products/${OrderTypesEnum.runningStartup}/select`,\n },\n {\n path: '/',\n redirect: `/programs/running/${urIDExpression}/ordering/shippingtimelines`,\n },\n ],\n },\n //resources\n {\n name: `RUnningResources`,\n path: 'resources',\n component: Resources,\n },\n {\n path: 'setup',\n component: Setup,\n children: [\n {\n path: '/',\n redirect: `/programs/running/${urIDExpression}/setup/information`,\n },\n {\n path: 'information',\n component: Information,\n },\n {\n path: 'dates',\n component: KeyDates,\n },\n {\n path: 'leadership',\n component: Leadership,\n },\n {\n path: 'products',\n component: Products,\n },\n {\n path: 'registration',\n component: Registration,\n },\n {\n path: 'archive',\n component: Archive,\n },\n ],\n },\n //reports\n // {\n // path: 'reports',\n // component: Reports,\n // children: [\n // {\n // path: 'excel/:reportName',\n // component: ExcelReports,\n // },\n // {\n // path: 'web/:reportName',\n // component: WebviewReports,\n // },\n // {\n // path: 'dynamic/:reportName',\n // component: DynamicReports,\n // },\n // ],\n // },\n ],\n },\n] as RouteConfig[]\n","import { RouteConfig } from 'vue-router'\nimport Setup from '@/views/Leagues/Setup.vue'\nimport LeagueIndex from '@/views/Leagues/LeagueIndex.vue'\nimport DigitalInformation from '@/views/Leagues/DigitalInformation.vue'\nimport { idExpression } from '@/lib/support/router/idHelper'\nimport resources from './resources'\nimport orders from './orders'\n\nexport default [\n {\n path: `digitalleague/${idExpression}`,\n component: LeagueIndex,\n children: [\n {\n path: '/',\n redirect: `/programs/digitalleague/${idExpression}/setup`,\n },\n {\n path: 'setup',\n component: Setup,\n children: [\n {\n path: '/',\n redirect: `/programs/digitalleague/${idExpression}/setup/information`,\n },\n {\n name: 'digital-information',\n path: 'information',\n component: DigitalInformation,\n },\n ],\n },\n ...resources('DigitalLeague'),\n ...orders('digitalleague'),\n ],\n },\n] as RouteConfig[]\n","import { RouteConfig } from 'vue-router'\nimport Index from '@/views/Programs/Index.vue'\nimport CreateOrEdit from '@/views/Programs/CreateOrEdit.vue'\nimport New from '@/views/Programs/New.vue'\nimport Welcome from '@/views/Programs/Welcome.vue'\nimport ChooseEditOrNew from '@/views/Programs/ChooseEditOrNew.vue'\nimport Estimator from '@/views/Estimate/Estimator.vue'\n\nimport connect from '@/router/connect'\nimport clinics from '@/router/clinics'\nimport camps from '@/router/camps'\nimport leagues from '@/router/leagues'\nimport upwardRunning from '@/router/upwardRunning'\nimport digitalLeague from '@/router/digitalleague'\nconst baseName = 'Programs'\n\nexport default [\n {\n path: '/programs',\n component: Index,\n children: [\n {\n path: '/',\n component: CreateOrEdit,\n children: [\n {\n path: '/',\n name: `${baseName}-ChooseEditOrNew`,\n component: ChooseEditOrNew,\n },\n {\n path: 'new',\n name: `${baseName}-New`,\n component: New,\n },\n {\n path: 'welcome',\n name: `${baseName}-Welcome`,\n component: Welcome,\n },\n {\n path: 'estimator/:offeringConfigId?',\n name: `${baseName}-Estimator`,\n component: Estimator,\n },\n ],\n },\n ...clinics,\n ...connect,\n ...camps,\n ...leagues,\n ...digitalLeague,\n ...upwardRunning,\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('full-body',{staticClass:\"px-0 py-3\"},[_c('h4',{staticClass:\"px-4 py-1\"},[_vm._v(\"Partner Account\")]),_c('horizontal-tabs',{staticClass:\"underline-split bg-light-1\",attrs:{\"tabs\":_vm.tabs}}),_c('full-body',[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport FullBody from '@/components/FullBody.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\n\nexport default defineComponent({\n name: 'Index',\n components: {\n FullBody,\n HorizontalTabs,\n },\n setup() {\n const tabs = ref([\n { text: 'Billing', to: '/account/billing' },\n { text: 'Manage Admin Users', to: '/account/usermanagement' },\n { text: 'Social Media', to: '/account/socialmedia' },\n ])\n\n return {\n tabs,\n }\n },\n})\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!./Index.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!./Index.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Index.vue?vue&type=template&id=3c7c68b0&\"\nimport script from \"./Index.vue?vue&type=script&lang=ts&\"\nexport * from \"./Index.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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_vm._m(0),_c('div',{staticClass:\"col-sm-11\"},[_c('div',{staticClass:\"btn-group wide-buttons\"},[_c('button',{staticClass:\"col btn btn-default text-capitalize\",class:{\n 'btn-primary': _vm.isActive,\n 'bg-light-1': !_vm.isActive,\n },attrs:{\"type\":\"button\"},on:{\"click\":function($event){_vm.selectedTab = 'active'}}},[_vm._v(\" Active Users \")]),_c('button',{staticClass:\"col btn btn-default text-capitalize\",class:{\n 'btn-primary': _vm.isPending,\n 'bg-light-1': !_vm.isPending,\n },attrs:{\"type\":\"button\"},on:{\"click\":function($event){_vm.selectedTab = 'pending'}}},[_vm._v(\" Pending Invites \")])])]),_c('div',{staticClass:\"col-sm-11 ml-3\"},[(_vm.isActive)?_c('div',{staticClass:\"row bg-light-1\"},[_c('div',{staticClass:\"col-12\"},[_c('button',{staticClass:\"btn btn-success float-right mt-1\",on:{\"click\":function($event){_vm.isAddUserModalVisible = true}}},[_c('i',{staticClass:\"fa fa-plus\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" Invite a New User \")])]),_c('div',{staticClass:\"col-8\"},[_c('simple-grid',{attrs:{\"grid-data\":_vm.gridData,\"columns\":_vm.columns,\"show-delete-button\":true,\"deleteButtonClasses\":\"btn\",\"delete-button-inner-html\":\"\",\"show-delete-button-header\":true,\"table-striped\":true},on:{\"rowClicked\":_vm.handleRowClicked,\"deleteButtonClicked\":_vm.deleteUser}})],1),_c('div',{staticClass:\"col-4\"},[(_vm.selectedUser)?_c('div',[_c('h2',[_vm._v(_vm._s(_vm.selectedUser.friendlyName))]),_c('div',[_vm._v(_vm._s(_vm.selectedUser.username))]),_c('partner-role-select-input',{model:{value:(_vm.selectedUser.partnerRoles[0]),callback:function ($$v) {_vm.$set(_vm.selectedUser.partnerRoles, 0, $$v)},expression:\"selectedUser.partnerRoles[0]\"}}),_c('button',{staticClass:\"btn btn-success float-right\",on:{\"click\":_vm.saveSelectedUser}},[_c('i',{staticClass:\"fa fa-check\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" Save \")]),_c('button',{staticClass:\"btn btn-outline-secondary float-right mr-1\",on:{\"click\":function($event){_vm.isResetPasswordModalVisible = true}}},[_vm._v(\" Reset Password \")])],1):_vm._e()])]):_vm._e(),(_vm.isPending)?_c('div',{staticClass:\"row bg-light-1\"},[_c('div',{staticClass:\"col-12\"},[_c('simple-grid',{attrs:{\"grid-data\":_vm.pendingInvitations,\"columns\":_vm.pendingInvitationColumns,\"show-delete-button\":true,\"deleteButtonClasses\":\"btn\",\"delete-button-inner-html\":\"\",\"show-delete-button-header\":true,\"show-edit-button\":true,\"editButtonClasses\":\"btn\",\"edit-button-inner-html\":\"\",\"show-edit-button-header\":true,\"table-striped\":true},on:{\"editButtonClicked\":_vm.resendInvitation,\"deleteButtonClicked\":_vm.deleteInvitation}})],1)]):_vm._e()])]),_c('add-user-modal',{attrs:{\"account-number\":_vm.accountNumber},on:{\"inviteSent\":function($event){_vm.selectedTab = 'pending'}},model:{value:(_vm.isAddUserModalVisible),callback:function ($$v) {_vm.isAddUserModalVisible=$$v},expression:\"isAddUserModalVisible\"}}),(_vm.selectedUser)?_c('reset-password-modal',{attrs:{\"user\":_vm.selectedUser},model:{value:(_vm.isResetPasswordModalVisible),callback:function ($$v) {_vm.isResetPasswordModalVisible=$$v},expression:\"isResetPasswordModalVisible\"}}):_vm._e(),(_vm.isResendInvitationModalVisible)?_c('resend-invitation-modal',{attrs:{\"user\":_vm.selectedInvitation},model:{value:(_vm.isResendInvitationModalVisible),callback:function ($$v) {_vm.isResendInvitationModalVisible=$$v},expression:\"isResendInvitationModalVisible\"}}):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-sm-12\"},[_c('h5',[_vm._v(\"Users\")]),_c('div',[_vm._v(\" Manage user access by inviting people to help you enter and or manage data within the system. \")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('UpwardValidationObserver',{ref:\"observer\"},[_c('modal',{attrs:{\"title\":\"Add New Director / Send Invitation\",\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[(_vm.hasValidationError)?_c('div',{staticClass:\"alert alert-warning\"},[_vm._v(\" Please fix the errors below before sending the invite. \")]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"label\":\"Name\",\"required\":true},model:{value:(_vm.friendlyName),callback:function ($$v) {_vm.friendlyName=$$v},expression:\"friendlyName\"}}),_c('br'),_c('text-input',{attrs:{\"label\":\"Email\",\"vee-validate-rules\":\"email|required\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1),_c('div',{staticClass:\"col-6\"},[_c('yes-no-input',{attrs:{\"label\":\"Send invite via SMS?\"},model:{value:(_vm.sendSms),callback:function ($$v) {_vm.sendSms=$$v},expression:\"sendSms\"}}),_c('text-input',{attrs:{\"label\":\"Mobile Phone\",\"enabled\":_vm.sendSms,\"required\":_vm.sendSms},model:{value:(_vm.phone),callback:function ($$v) {_vm.phone=$$v},expression:\"phone\"}}),_c('br'),_c('memo-input',{attrs:{\"label\":\"Message\",\"subLabel\":\"optional\"},model:{value:(_vm.message),callback:function ($$v) {_vm.message=$$v},expression:\"message\"}})],1)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":function($event){_vm.modalIsVisible = false}}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",attrs:{\"type\":\"submit\"},on:{\"click\":_vm.sendInvite}},[_c('i',{staticClass:\"fa fa-envelope\"}),_vm._v(\" Invite \")])])],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\n\n\n\n\nimport { Component, Vue, Watch, Prop } from 'vue-property-decorator'\n\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\nimport inviteClient from '@/clients/inviteClient'\nimport UpwardValidationObserver from '@/components/UpwardValidationObserver.vue'\n\n@Component({\n components: {\n Modal,\n TextInput,\n MemoInput,\n YesNoInput,\n UpwardValidationObserver,\n },\n})\nexport default class AddUserModal extends Vue {\n @Prop({ type: Boolean, default: false, required: false })\n private readonly value!: boolean\n\n @Prop({ type: String, required: true })\n private readonly accountNumber!: string\n\n modalIsVisible = this.value\n friendlyName = ''\n email = ''\n phone = ''\n message = ''\n sendSms = false\n role = ''\n private hasValidationError = false\n\n @Watch('value')\n handleValueChanged() {\n if (this.value !== this.modalIsVisible) {\n this.modalIsVisible = this.value\n }\n }\n\n @Watch('modalIsVisible')\n handleModalIsVisibleChanged() {\n if (this.value !== this.modalIsVisible) {\n this.$emit('input', this.modalIsVisible)\n }\n }\n\n @Watch('sendSms')\n handleSendSmsChanged() {\n if (!this.sendSms) {\n this.phone = ''\n }\n }\n\n async sendInvite() {\n this.hasValidationError = false\n const obs = this.$refs.observer as InstanceType\n const isValid = await obs.validate()\n\n if (!isValid) {\n this.hasValidationError = true\n return\n }\n\n this.modalIsVisible = false\n\n await inviteClient.invitePartnerUser(\n this.email,\n this.accountNumber,\n this.friendlyName,\n this.role,\n this.message,\n this.phone,\n null\n )\n\n this.$emit('inviteSent')\n }\n}\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!./AddUserModal.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!./AddUserModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AddUserModal.vue?vue&type=template&id=a6a12772&\"\nimport script from \"./AddUserModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./AddUserModal.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('modal',{attrs:{\"title\":\"Reset Password\",\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"row\"},[_vm._v(\"Do you wish to proceed with sending a reset password request to the following user?\")]),(_vm.user)?_c('div',{staticClass:\"row pt-2\"},[_c('div',{staticClass:\"col-6\"},[_vm._v(\" \"+_vm._s(_vm.user.friendlyName)+\" \")]),_c('div',{staticClass:\"col-6\"},[_vm._v(\" \"+_vm._s(_vm.user.username)+\" \")])]):_vm._e(),_c('div',{staticClass:\"row pt-2\"},[_c('div',{staticClass:\"col-6\"},[_c('yes-no-input',{attrs:{\"label\":\"Send invite via SMS?\"},model:{value:(_vm.sendSms),callback:function ($$v) {_vm.sendSms=$$v},expression:\"sendSms\"}})],1),_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"label\":\"Mobile Phone\",\"enabled\":_vm.sendSms,\"required\":_vm.sendSms},model:{value:(_vm.phone),callback:function ($$v) {_vm.phone=$$v},expression:\"phone\"}})],1)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":function($event){_vm.modalIsVisible = false}}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",attrs:{\"type\":\"submit\"},on:{\"click\":_vm.resetPassword}},[_c('i',{staticClass:\"fa fa-envelope\"}),_vm._v(\" Reset \")])])],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\nimport { Component, Vue, Watch, Prop } from 'vue-property-decorator'\n\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\n\nimport { PartnerUserInfo } from '@/models/UserManagement/PartnerUserInfo'\n\nimport authorizationClient from '@/clients/authorizationClient'\n\n@Component({\n components: {\n Modal,\n TextInput,\n MemoInput,\n YesNoInput,\n },\n})\nexport default class ResetPasswordModal extends Vue {\n @Prop({ type: Boolean, default: false, required: false })\n private readonly value!: boolean\n\n @Prop({ type: Object, default: null, required: false })\n private readonly user!: PartnerUserInfo | null\n\n modalIsVisible = this.value\n phone = ''\n sendSms = false\n\n @Watch('value')\n handleValueChanged() {\n if (this.value !== this.modalIsVisible) {\n this.modalIsVisible = this.value\n }\n }\n\n @Watch('modalIsVisible')\n handleModalIsVisibleChanged() {\n if (this.value !== this.modalIsVisible) {\n this.$emit('input', this.modalIsVisible)\n }\n }\n\n @Watch('sendSms')\n handleSendSmsChanged() {\n if (!this.sendSms) {\n this.phone = ''\n }\n }\n\n async resetPassword() {\n if (this.user && this.user.username) {\n await authorizationClient.getPasswordResetLink(this.user.username)\n }\n this.modalIsVisible = false\n }\n}\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!./ResetPasswordModal.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!./ResetPasswordModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResetPasswordModal.vue?vue&type=template&id=793331c9&\"\nimport script from \"./ResetPasswordModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResetPasswordModal.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('modal',{attrs:{\"title\":\"Resend Invitation\",\"is-small\":false},model:{value:(_vm.modalIsVisible),callback:function ($$v) {_vm.modalIsVisible=$$v},expression:\"modalIsVisible\"}},[_c('div',{staticClass:\"row\"},[_vm._v(\"Do you wish to proceed with sending a invitation request to the following user?\")]),(_vm.user)?_c('div',{staticClass:\"row pt-2\"},[_c('div',{staticClass:\"col-6\"},[_vm._v(\" \"+_vm._s(_vm.user.recipient)+\" \")]),_c('div',{staticClass:\"col-6\"},[_vm._v(\" \"+_vm._s(_vm.user.email)+\" \")])]):_vm._e(),_c('div',{staticClass:\"row pt-2\"},[_c('div',{staticClass:\"col-6\"},[_c('yes-no-input',{attrs:{\"label\":\"Send invite via SMS?\"},model:{value:(_vm.sendSms),callback:function ($$v) {_vm.sendSms=$$v},expression:\"sendSms\"}})],1),_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"label\":\"Mobile Phone\",\"enabled\":_vm.sendSms,\"required\":_vm.sendSms},model:{value:(_vm.phone),callback:function ($$v) {_vm.phone=$$v},expression:\"phone\"}})],1)]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":function($event){_vm.modalIsVisible = false}}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",attrs:{\"type\":\"submit\"},on:{\"click\":_vm.resendInvitation}},[_c('i',{staticClass:\"fa fa-envelope\"}),_vm._v(\" Resend \")])])],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\nimport { Component, Vue, Watch, Prop } from 'vue-property-decorator'\n\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport YesNoInput from '@/elements/YesNoInput.vue'\n\nimport { ApplicationInvitation } from '@/GeneratedTypes/Authorize/ApplicationInvitation'\n\nimport inviteClient from '@/clients/inviteClient'\n\n@Component({\n components: {\n Modal,\n TextInput,\n MemoInput,\n YesNoInput,\n },\n})\nexport default class ResendInvitationModal extends Vue {\n @Prop({ type: Boolean, default: false, required: false })\n private readonly value!: boolean\n\n @Prop({ type: Object, default: null, required: false })\n private readonly user!: ApplicationInvitation | null\n\n modalIsVisible = this.value\n phone = ''\n sendSms = false\n\n @Watch('value')\n handleValueChanged() {\n if (this.value !== this.modalIsVisible) {\n this.modalIsVisible = this.value\n }\n }\n\n @Watch('modalIsVisible')\n handleModalIsVisibleChanged() {\n if (this.value !== this.modalIsVisible) {\n this.$emit('input', this.modalIsVisible)\n }\n }\n\n @Watch('sendSms')\n handleSendSmsChanged() {\n if (!this.sendSms) {\n this.phone = ''\n }\n }\n\n async resendInvitation() {\n if (this.user && this.user.email) {\n await inviteClient.invitePartnerUser(\n this.user.email,\n this.user.accountNumber ?? '',\n this.user.recipient ?? '',\n this.user.roles ? this.user.roles[0].roleID ?? '' : '',\n this.user.invitationMessage ?? '',\n this.phone,\n this.user.id\n )\n }\n this.modalIsVisible = false\n }\n}\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!./ResendInvitationModal.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!./ResendInvitationModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResendInvitationModal.vue?vue&type=template&id=5d383804&\"\nimport script from \"./ResendInvitationModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResendInvitationModal.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('select-input',{attrs:{\"label\":\"Role\",\"itemsList\":[{ text: 'Director', value: 'Director' }],\"textPropertyName\":\"text\",\"valuePropertyName\":\"value\",\"required\":true,\"vee-validate-rules\":\"required\"},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\n\nexport default defineComponent({\n name: 'PartnerRoleSelectInput',\n components: {\n SelectInput,\n },\n props: {\n value: { type: String, default: '', required: false },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n\n watch(\n () => props.value,\n () => {\n if (props.value !== internalValue.value) {\n internalValue.value = props.value\n }\n }\n )\n\n watch(\n () => internalValue.value,\n () => {\n if (props.value !== internalValue.value) {\n ctx.emit('input', internalValue.value)\n }\n }\n )\n\n return {\n internalValue,\n }\n },\n})\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!./PartnerRoleSelectInput.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!./PartnerRoleSelectInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PartnerRoleSelectInput.vue?vue&type=template&id=164f711e&\"\nimport script from \"./PartnerRoleSelectInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./PartnerRoleSelectInput.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport { Getter } from 'vuex-class'\n\n// elements\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport AddUserModal from '@/views/Account/vues/AddUserModal.vue'\nimport ResetPasswordModal from '@/views/Account/vues/ResetPasswordModal.vue'\nimport ResendInvitationModal from '@/views/Account/vues/ResendInvitationModal.vue'\nimport PartnerRoleSelectInput from '@/views/Account/vues/PartnerRoleSelectInput.vue'\n\n// clients\nimport partnersClient from '@/clients/partnersClient'\nimport inviteClient from '@/clients/inviteClient'\n\n//models\nimport { PartnerUserInfo } from '@/models/UserManagement/PartnerUserInfo'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport { ApplicationInvitation } from '@/GeneratedTypes/Authorize/ApplicationInvitation'\n\n// stores\nimport { namespace, getterNames } from '@/store/authorization'\n\n@Component({\n components: {\n SimpleGrid,\n AddUserModal,\n PartnerRoleSelectInput,\n ResetPasswordModal,\n ResendInvitationModal,\n },\n})\nexport default class UserManagement extends Vue {\n @Getter(getterNames.firstAccountNumber, { namespace })\n private accountNumber!: string\n\n selectedTab = 'active'\n isAddUserModalVisible = false\n isResetPasswordModalVisible = false\n isResendInvitationModalVisible = false\n\n gridData: PartnerUserInfo[] = []\n pendingInvitations: ApplicationInvitation[] = []\n\n selectedUser: PartnerUserInfo | null = null\n selectedInvitation: ApplicationInvitation | null = null\n\n columns: GridColumn[] = [\n { field: 'friendlyName', headerText: 'Name', width: 300 } as GridColumn,\n { field: 'username', headerText: 'Username' } as GridColumn,\n { field: 'partnerRoles', headerText: 'Role', customRender: this.renderPartnerRoles } as GridColumn,\n ]\n\n pendingInvitationColumns: GridColumn[] = [\n { field: 'recipient', headerText: 'Name', width: 300 } as GridColumn,\n { field: 'email', headerText: 'Username' } as GridColumn,\n { field: 'roles', headerText: 'Role', customRender: this.renderPartnerRoles } as GridColumn,\n { field: 'createDate', headerText: 'Invite Status', customRender: this.renderInviteStatus } as GridColumn,\n { field: 'createDate', headerText: 'Date Sent', customRender: this.renderDateSent } as GridColumn,\n ]\n\n get isPending(): boolean {\n return this.selectedTab == 'pending'\n }\n\n get isActive(): boolean {\n return this.selectedTab == 'active'\n }\n\n async created() {\n this.gridData = await this.getUserList()\n }\n\n async getUserList(): Promise {\n const data = await partnersClient.retrieveUsers('partner')\n if (data) {\n return data.filter(\n (p) => ((p.partnerRoles ?? []).filter((r) => r === 'Director' || r === 'DataInput') ?? []).length > 0\n )\n }\n return []\n }\n\n async getPendingInvites(): Promise {\n const data = await inviteClient.getOpenPartnerInvitations(this.accountNumber)\n if (data) {\n return data\n }\n return []\n }\n\n renderPartnerRoles(data: PartnerUserInfo) {\n if (Array.isArray(data) && data.length > 0) {\n if (typeof data[0] === 'string') {\n return data.join(', ')\n }\n return data.map((x) => x.roleID).join(', ')\n }\n return ''\n }\n\n renderInviteStatus(data: Date) {\n const expirationDate = new Date(new Date(data).getTime() + 1000 * 60 * 60 * 48)\n if (expirationDate < new Date()) {\n return 'Expired'\n }\n return 'Sent'\n }\n\n renderDateSent(data: Date) {\n const sentDate = new Date(data)\n return sentDate.toLocaleDateString()\n }\n\n handleRowClicked(entity: PartnerUserInfo) {\n this.selectedUser = entity\n }\n\n @Watch('selectedTab')\n async handleSelectedTabChanged() {\n if (this.isPending) {\n this.pendingInvitations = (await this.getPendingInvites()) ?? []\n } else {\n this.gridData = await this.getUserList()\n }\n this.selectedUser = null\n }\n\n resendInvitation(item: ApplicationInvitation) {\n this.selectedInvitation = item\n this.isResendInvitationModalVisible = true\n }\n\n async deleteUser(item: any) {\n this.selectedUser = null\n\n if (item.id) {\n await partnersClient.deletePartnerUser(item.id)\n await this.handleSelectedTabChanged()\n }\n }\n\n async deleteInvitation(item: ApplicationInvitation) {\n if (item.id) {\n await inviteClient.deleteInvitation(item.id)\n await this.handleSelectedTabChanged()\n }\n }\n\n async saveSelectedUser() {\n if (!this.selectedUser || !this.selectedUser.partnerRoles) {\n return\n }\n\n await partnersClient.updatePartnerRole(this.selectedUser.id, this.selectedUser.partnerRoles[0])\n this.handleSelectedTabChanged()\n }\n}\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!./UserManagement.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!./UserManagement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserManagement.vue?vue&type=template&id=9b91c758&scoped=true&\"\nimport script from \"./UserManagement.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserManagement.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UserManagement.vue?vue&type=style&index=0&id=9b91c758&lang=scss&scoped=true&\"\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 \"9b91c758\",\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('div',{staticClass:\"d-flex flex-row flex-grow-1 bg-light-2\"},[_c('vertical-tabs',{attrs:{\"tabs\":_vm.tabs}}),_c('div',{staticClass:\"bg-white flex-grow-1 mb-2 container-fluid\"},[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\n\nimport VerticalTabs from '@/components/VerticalTabs.vue'\n\nexport default defineComponent({\n name: 'Billing',\n components: {\n VerticalTabs,\n },\n setup() {\n const baseRoute = `/account/billing`\n\n const tabs = computed(() => [\n { text: 'EFT Reports', to: `${baseRoute}/eft` },\n { text: 'Military Discount', to: `${baseRoute}/military` },\n { text: 'Grant Application', to: `${baseRoute}/grant` },\n { text: 'Billing Questions?', to: `${baseRoute}/questions` },\n ])\n\n return {\n tabs,\n }\n },\n})\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!./Billing.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!./Billing.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Billing.vue?vue&type=template&id=7958318b&\"\nimport script from \"./Billing.vue?vue&type=script&lang=ts&\"\nexport * from \"./Billing.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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('page-content',{attrs:{\"documentId\":\"socialMediaURLs\"}})],1)]),(_vm.loaded)?_c('div',_vm._l((_vm.socialMediaAccountTypes),function(smType){return _c('div',{key:smType.id,staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('text-input',{attrs:{\"label\":smType.description,\"placeholder\":(\"https://www.\" + (smType.description.toLowerCase()) + \".com/...\")},model:{value:(_vm.scores[smType.upwardTypeID]),callback:function ($$v) {_vm.$set(_vm.scores, smType.upwardTypeID, $$v)},expression:\"scores[smType.upwardTypeID]\"}})],1)])}),0):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('button',{staticClass:\"btn btn-success float-right\",on:{\"click\":_vm.save}},[_vm._v(\"Save\")])])])])}\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\nimport { Component, Vue } from 'vue-property-decorator'\nimport { Getter } from 'vuex-class'\n\nimport * as authorizationStore from '@/store/authorization'\n\nimport PageContent from '@/components/PageContent.vue'\nimport TextInput from '@/elements/TextInput.vue'\n\nimport partnerClient from '@/clients/partnersClient'\n\nimport { UpwardPartnerSocialMediaTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerSocialMediaTypeID'\nimport { SocialMedia } from '@/GeneratedTypes/Partner/SocialMedia'\n\n@Component({\n components: { PageContent, TextInput },\n})\nexport default class PartnerSocialMedia extends Vue {\n @Getter(authorizationStore.getterNames.firstAccountNumber, { namespace: authorizationStore.namespace })\n private accountNumber!: string\n\n private socialMediaAccountTypes: UpwardPartnerSocialMediaTypeID[] = []\n private socialMediaData: SocialMedia[] = []\n private scores: Record = {}\n private loaded = false\n\n private socialMediaUrl(typeSocialMediaID: string): string {\n return this.socialMediaData.find((d) => d.typeSocialMediaID === typeSocialMediaID)?.url ?? ''\n }\n\n async mounted() {\n this.socialMediaAccountTypes = (await partnerClient.retreivePartnerSocialMediaTypes()) ?? []\n this.socialMediaData = (await partnerClient.retreivePartnerSocialMediaData(this.accountNumber)) ?? []\n this.socialMediaAccountTypes.forEach((item) => {\n this.scores[item.upwardTypeID!] = ''\n })\n this.socialMediaData.forEach((item) => {\n this.scores[item.typeSocialMediaID] = item.url ?? ''\n })\n this.loaded = true\n }\n\n async save() {\n const socialMediaDataToSave: SocialMedia[] = []\n\n this.socialMediaAccountTypes.forEach((item) => {\n const existingData = this.socialMediaData.find((d) => d.typeSocialMediaID === item.upwardTypeID!)\n const data: SocialMedia = {\n id: existingData?.id || 0,\n accountNumber: this.accountNumber,\n typeSocialMediaID: item.upwardTypeID!,\n url: this.scores[item.upwardTypeID!] || '',\n }\n\n if (data.url?.trim()) {\n socialMediaDataToSave.push(data)\n }\n })\n\n await partnerClient.updatePartnerSocialMediaData(this.accountNumber, socialMediaDataToSave)\n this.socialMediaData = (await partnerClient.retreivePartnerSocialMediaData(this.accountNumber)) ?? []\n }\n}\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!./PartnerSocialMedia.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!./PartnerSocialMedia.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PartnerSocialMedia.vue?vue&type=template&id=76798831&\"\nimport script from \"./PartnerSocialMedia.vue?vue&type=script&lang=ts&\"\nexport * from \"./PartnerSocialMedia.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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('h5',[_vm._v(\"EFT Reports\")]),_c('EFTReportControls',{attrs:{\"league-i-d\":_vm.leagueID},on:{\"update-parameters\":_vm.updateParams}}),_c('loading',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loading),expression:\"loading\"}]}),(!_vm.loading)?_c('EFTReport',{attrs:{\"report-data\":_vm.dataSource}}):_vm._e()],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport EFTReport from '@/views/Programs/Reports/WebviewReports/EFTReport.vue'\nimport reportsClient from '@/clients/reportsClient'\nimport Loading from '@/elements/Loading.vue'\nimport EFTReportControls from '@/components/EFTReportControls.vue'\n\nexport default defineComponent({\n components: {\n EFTReport,\n EFTReportControls,\n Loading,\n },\n\n setup(props, ctx) {\n const params = ref>({})\n const loading = ref(false)\n const dataSource = ref[]>([])\n const leagueID = ref(ctx.root.$route.params.id)\n\n async function updateParams(p: Record) {\n params.value = p\n await loadReport()\n }\n\n async function loadReport() {\n if (\n params.value &&\n (params.value?.BeginDate as Date).valueOf() != (params.value?.EndDate as Date).valueOf()\n ) {\n try {\n loading.value = true\n dataSource.value =\n (await reportsClient.getReport('registrationeftpayment', '0', '', params.value)) ?? []\n if (!dataSource.value) {\n dataSource.value = []\n }\n } finally {\n loading.value = false\n }\n } else {\n loading.value = true\n }\n }\n\n return { dataSource, loading, leagueID, updateParams }\n },\n})\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!./EftReports.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!./EftReports.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EftReports.vue?vue&type=template&id=7a61e459&\"\nimport script from \"./EftReports.vue?vue&type=script&lang=ts&\"\nexport * from \"./EftReports.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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('page-content',{attrs:{\"documentId\":\"billingQuestions\"}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport PageContent from '@/components/PageContent.vue'\n\nexport default defineComponent({\n name: 'Questions',\n components: {\n PageContent,\n },\n})\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!./Questions.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!./Questions.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Questions.vue?vue&type=template&id=3c665aeb&\"\nimport script from \"./Questions.vue?vue&type=script&lang=ts&\"\nexport * from \"./Questions.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('div',[_c('h1',[_vm._v(\"Military Discounts\")]),(_vm.params)?_c('iframe',{staticStyle:{\"min-width\":\"100%\",\"height\":\"1000px\",\"border\":\"none\"},attrs:{\"id\":\"JotFormIFrame-203273585333051\",\"title\":\"Deployed Military Parent Discount Form\",\"onload\":\"window.parent.scrollTo(0,0)\",\"allowtransparency\":\"true\",\"allowfullscreen\":\"true\",\"allow\":\"geolocation; microphone; camera\",\"src\":(\"\" + _vm.discountUrl),\"frameborder\":\"0\",\"scrolling\":\"yes\"}}):_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\nimport { defineComponent, onMounted, ref, computed } from '@vue/composition-api'\nimport jwtService from '@/services/jwtService'\n\nexport default defineComponent({\n setup(props, ctx) {\n onMounted(() => {\n let scripttag = document.createElement('script')\n\n // this comes from jotform's copy/paste instructions.\n scripttag.text = `\n\n var ifr = document.getElementById('JotFormIFrame-203273585333051')\n if (window.location.href && window.location.href.indexOf('?') > -1) {\n var get = window.location.href.substr(window.location.href.indexOf('?') + 1)\n if (ifr && get.length > 0) {\n var src = ifr.src\n src = src.indexOf('?') > -1 ? src + '&' + get : src + '?' + get\n ifr.src = src\n ifr.src += (ifr.src.indexOf('?') > -1 ? '&' : '?') + 'isIframeEmbed=1'\n }\n }\n window.handleIFrameMessage = function (e) {\n if (typeof e.data === 'object') {\n return\n }\n var args = e.data.split(':')\n if (args.length > 2) {\n iframe = document.getElementById('JotFormIFrame-' + args[args.length - 1])\n } else {\n iframe = document.getElementById('JotFormIFrame')\n }\n if (!iframe) {\n return\n }\n switch (args[0]) {\n case 'scrollIntoView':\n iframe.scrollIntoView()\n break\n case 'setHeight':\n iframe.style.height = args[1] + 'px'\n break\n case 'collapseErrorPage':\n if (iframe.clientHeight > window.innerHeight) {\n iframe.style.height = window.innerHeight + 'px'\n }\n break\n case 'reloadPage':\n window.location.reload()\n break\n case 'loadScript':\n var src = args[1]\n if (args.length > 3) {\n src = args[1] + ':' + args[2]\n }\n var script = document.createElement('script')\n script.src = src\n script.type = 'text/javascript'\n document.body.appendChild(script)\n break\n case 'exitFullscreen':\n if (window.document.exitFullscreen) window.document.exitFullscreen()\n else if (window.document.mozCancelFullScreen) window.document.mozCancelFullScreen()\n else if (window.document.mozCancelFullscreen) window.document.mozCancelFullScreen()\n else if (window.document.webkitExitFullscreen) window.document.webkitExitFullscreen()\n else if (window.document.msExitFullscreen) window.document.msExitFullscreen()\n break\n }\n var isJotForm = e.origin.indexOf('jotform') > -1 ? true : false\n if (isJotForm && 'contentWindow' in iframe && 'postMessage' in iframe.contentWindow) {\n var urls = {\n docurl: encodeURIComponent(document.URL),\n referrer: encodeURIComponent(document.referrer),\n }\n iframe.contentWindow.postMessage(JSON.stringify({ type: 'urls', value: urls }), '*')\n }\n }\n if (window.addEventListener) {\n window.addEventListener('message', handleIFrameMessage, false)\n } else if (window.attachEvent) {\n window.attachEvent('onmessage', handleIFrameMessage)\n }\n`\n ctx.root.$el.appendChild(scripttag)\n })\n\n const credentials = jwtService.getCredentialsFromStoredAuthToken()\n const params = ref(\n `?account=${encodeURI(\n credentials?.accountNumbers?.length ? credentials?.accountNumbers[0].toString() : '0'\n )}&mainContact=${encodeURI(credentials?.fullName ?? 'No Name')}&email=${encodeURI(\n credentials?.email ?? 'no@email.com'\n )}`\n )\n\n const discountUrl = computed(() => process.env.VUE_APP_MILITARYDISCOUNTFORM ?? '' + params.value)\n\n return { params, discountUrl }\n },\n})\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!./MilitaryDiscount.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!./MilitaryDiscount.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MilitaryDiscount.vue?vue&type=template&id=20ca6ee0&\"\nimport script from \"./MilitaryDiscount.vue?vue&type=script&lang=ts&\"\nexport * from \"./MilitaryDiscount.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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('page-content',{attrs:{\"documentId\":_vm.cmsDocumentId}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport PageContent from '@/components/PageContent.vue'\n\nexport default defineComponent({\n name: 'GrantApplication',\n components: {\n PageContent,\n },\n setup() {\n const cmsDocumentId = ref('grantApplication')\n\n return {\n cmsDocumentId,\n }\n },\n})\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!./GrantApplication.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!./GrantApplication.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GrantApplication.vue?vue&type=template&id=3195e597&\"\nimport script from \"./GrantApplication.vue?vue&type=script&lang=ts&\"\nexport * from \"./GrantApplication.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'\nimport Index from '@/views/Account/Index.vue'\nimport UserManagement from '@/views/Account/UserManagement.vue'\nimport Billing from '@/views/Account/Billing.vue'\nimport PartnerSocialMedia from '@/views/Account/PartnerSocialMedia.vue'\nimport EftReports from '@/views/Account/EftReports.vue'\nimport Questions from '@/views/Account/Questions.vue'\nimport MilitaryDiscount from '@/views/Account/MilitaryDiscount.vue'\nimport GrantApplication from '@/views/Account/GrantApplication.vue'\n\nconst baseName = 'Account'\n\nexport default [\n {\n path: '/account',\n component: Index,\n children: [\n {\n path: '',\n redirect: '/account/billing/eft',\n },\n {\n path: 'usermanagement',\n name: `${baseName}-User-Management`,\n component: UserManagement,\n },\n {\n path: 'billing',\n name: `${baseName}-Billing`,\n component: Billing,\n children: [\n {\n path: 'eft',\n name: `EFT Reports`,\n component: EftReports,\n },\n {\n path: 'military',\n name: `Military Discounts`,\n component: MilitaryDiscount,\n },\n {\n path: 'grant',\n name: `Upward Assist Grant Application`,\n component: GrantApplication,\n },\n {\n path: 'questions',\n name: `Billing Questions`,\n component: Questions,\n },\n ],\n },\n {\n path: 'socialmedia',\n name: `${baseName}-Social-Media`,\n component: PartnerSocialMedia,\n },\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('full-body',{staticClass:\"px-0 py-3\"},[_c('h4',{staticClass:\"px-4 py-1\"},[_vm._v(\"Training\")]),_c('horizontal-tabs',{staticClass:\"underline-split bg-light-1\",attrs:{\"tabs\":[\n { text: 'Annual Training', to: '/training/annual' },\n { text: 'Topical Training', to: '/training/topical' },\n { text: 'What\\'s New', to: '/training/whatsnew' },\n { text: 'Gospel Video Guide', to: '/training/gospelvideoguide' },\n { text: 'Training Documents', to: '/training/trainingdocuments' },\n { text: 'Shipping Timelines', to: '/training/shippingTimelines' } ]}}),_c('full-body',[_c('router-view')],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\nimport { defineComponent } from '@vue/composition-api'\nimport FullBody from '@/components/FullBody.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\n\nexport default defineComponent({\n name: 'Index',\n components: {\n FullBody,\n HorizontalTabs,\n },\n})\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!./Index.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!./Index.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Index.vue?vue&type=template&id=ee9ff492&\"\nimport script from \"./Index.vue?vue&type=script&lang=ts&\"\nexport * from \"./Index.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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row pt-3\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('page-content',{attrs:{\"documentId\":_vm.cmsDocumentId}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nimport PageContent from '@/components/PageContent.vue'\n\nexport default defineComponent({\n name: 'Training',\n components: { PageContent },\n setup(props, ctx) {\n const pageDocumentMap = new Map([\n ['annual', 'annualtraining'],\n ['topical', 'topicaltraining'],\n ['whatsnew', 'whatsnew'],\n ['gospelvideoguide', 'gospelVideoGuide'],\n ['trainingdocuments', 'trainingDocuments'],\n ['shippingTimelines', 'shippingTimelines'],\n ])\n\n const pageName = computed(() => ctx.root.$route.params.pageName)\n\n const cmsDocumentId = computed(() => pageDocumentMap.get(pageName.value) ?? '')\n\n return {\n cmsDocumentId,\n }\n },\n})\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!./Training.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!./Training.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Training.vue?vue&type=template&id=2908545c&\"\nimport script from \"./Training.vue?vue&type=script&lang=ts&\"\nexport * from \"./Training.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'\nimport Index from '@/views/Training/Index.vue'\nimport Training from '@/views/Training/Training.vue'\n\nconst baseName = 'Training'\n\nexport default [\n {\n path: '/training',\n component: Index,\n children: [\n {\n path: '',\n redirect: '/training/annual',\n },\n {\n path: '/training/:pageName',\n name: `${baseName}-Page`,\n component: Training,\n },\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container-fluid\"},[(_vm.verify)?_c('div',{staticClass:\"row pt-3\"},[_c('VerficationCode',{attrs:{\"credentials\":_vm.credentials},on:{\"cancel\":_vm.cancelVerification}})],1):[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[(_vm.showDaysUntilExpiration)?_c('div',{staticClass:\"alert alert-with-icon alert-warning m-0\"},[_c('i',{staticClass:\"fa fa-exclamation-circle fa-lg\"}),(_vm.daysUntilPasswordExpiration >= 2)?[_vm._v(\" Your password expires in \"+_vm._s(_vm.daysUntilPasswordExpiration)+\" days. \")]:(_vm.daysUntilPasswordExpiration === 1)?[_vm._v(\" Your password expires tomorrow. Please change it soon. \")]:[_vm._v(\" Your password is expired. Please change it now. \")]],2):_vm._e()])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-xl-6 text-right order-2\"},[_c('button',{staticClass:\"btn btn-success\",attrs:{\"disabled\":!_vm.canSave},on:{\"click\":_vm.saveUser}},[_c('i',{staticClass:\"fa fa-check mr-2\"}),(!_vm.loading)?_c('span',[_vm._v(\"Save\")]):_c('loading',{attrs:{\"is-small\":\"\"}})],1)]),_c('div',{staticClass:\"col-xl-6 pt-3 order-1\"},[_c('div',{staticClass:\"row\"},[_c('text-input',{staticClass:\"col-12\",attrs:{\"label\":\"Full Name\",\"required\":\"\"},model:{value:(_vm.fullName),callback:function ($$v) {_vm.fullName=$$v},expression:\"fullName\"}})],1),_c('div',{staticClass:\"row\"},[_c('text-input',{staticClass:\"col-12\",attrs:{\"label\":\"Email Address\",\"required\":\"\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1)])]),(_vm.redirect)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"text-center col-xl-6 pt-3 order-3\"},[_c('div',{staticClass:\"pt-3 font-weight-bold\"},[_vm._v(\"You are about to be redirected. \"),_c('loading',{attrs:{\"is-small\":\"\"}})],1),_c('div',[_vm._v(\"Please log back in with your new information.\")])])]):_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('div',{staticClass:\"border rounded p-3 m-auto my-5 shadow\"},[(!_vm.verificationComplete)?[_c('div',[_vm._m(0),_c('div',{staticClass:\"text-center my-5\"},[_c('div',{staticClass:\"small text-muted\",staticStyle:{\"max-width\":\"500px\"}},[_vm._v(\" Changing your user name requires a verfication code. \")]),_c('div',{staticClass:\"small\"},[_vm._v(\" Please check \"),_c('b',[_vm._v(\" \"+_vm._s(_vm.credentials.newEmail))]),_vm._v(\". \")])]),_c('TextInput',{attrs:{\"label\":\"code\"},model:{value:(_vm.code),callback:function ($$v) {_vm.code=$$v},expression:\"code\"}}),_c('div',{staticClass:\"text-center\"},[_c('button',{staticClass:\"btn btn-success mt-4\",attrs:{\"disabled\":!_vm.canSave},on:{\"click\":_vm.verify}},[_vm._v(\" Verify \"),(_vm.loading)?_c('loading',{attrs:{\"is-small\":\"\"}}):_vm._e()],1)]),_c('button',{staticClass:\"btn btn-link float-right text-muted\",on:{\"click\":_vm.cancel}},[_vm._v(\"cancel\")])],1)]:_c('div',{staticClass:\"text-center p-3\"},[_c('div',[_vm._m(1),(_vm.isMultiAccountUser)?_c('div',[_c('div',{staticClass:\"pt-3 font-weight-bold\"},[_vm._v(\"You are about to be redirected. \"),_c('loading',{attrs:{\"is-small\":\"\"}})],1),_c('div',[_vm._v(\"Please log back in with your new information.\")])]):_c('div',[_c('div',[_vm._v(\"Your updated account information is:\")]),_c('div',{staticClass:\"pt-3 font-weight-bold\"},[_vm._v(_vm._s(_vm.credentials.newFullName))]),_c('div',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.credentials.newEmail))]),_c('button',{staticClass:\"btn btn-link text-underline\",on:{\"click\":_vm.cancel}},[_vm._v(\"Return to Profile\")])])])])],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h5',{staticClass:\"text-danger font-weight-bold amber--text text--darken-3\"},[_c('i',{staticClass:\"fas fa-exclamation-triangle\"}),_vm._v(\" Verification Code Required \")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"font-weight-bold\"},[_c('i',{staticClass:\"fas fa-check-circle text-success\"}),_vm._v(\" Verification complete. \")])}]\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\nimport { defineComponent, ref, computed, PropType } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport store from '@/store'\n\nexport interface ProfileCredentials {\n newEmail: string\n newFullName: string\n}\n\nexport default defineComponent({\n name: 'VerificationCode',\n props: { credentials: { type: Object as PropType, required: true, default: '' } },\n components: { TextInput, Loading },\n setup(props, { emit, root }) {\n const updateProfile = store.dispatch.authorization.updateProfile\n\n const code = ref('')\n const error = ref('')\n const loading = ref(false)\n const verificationComplete = ref(false)\n const canSave = computed(() => code.value.length >= 10)\n const isMultiAccountUser = computed(() => store.getters.authorization.isMultiAccountUser)\n const show = ref(false)\n function cancel() {\n emit('cancel')\n }\n\n async function verify() {\n await saveProfile()\n }\n\n async function saveProfile() {\n loading.value = true\n try {\n const r = await updateProfile({\n payload: {\n newUsername: props.credentials.newEmail,\n usernameChangeCode: code.value,\n },\n })\n verificationComplete.value = true\n if (r.incompleteToken) {\n setTimeout(() => {\n store.commit.authorization.clearCurrentCredentials() //aka logout\n root.$router.push('/')\n }, 6000)\n }\n } finally {\n loading.value = false\n }\n }\n\n return { code, verify, canSave, error, cancel, loading, verificationComplete, isMultiAccountUser, show }\n },\n})\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!./VerificationCode.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!./VerificationCode.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VerificationCode.vue?vue&type=template&id=34d8bec0&\"\nimport script from \"./VerificationCode.vue?vue&type=script&lang=ts&\"\nexport * from \"./VerificationCode.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport VerficationCode, { ProfileCredentials } from '@/views/MyProfile/VerificationCode.vue'\n\nimport { Component, Vue } from 'vue-property-decorator'\nimport { Action, Getter, Mutation } from 'vuex-class'\nimport { namespace, actionNames, getterNames, mutationNames } from '@/store/authorization'\nimport { ProfilePayload } from '@/models/Authorization/ProfilePayload'\n\n@Component({\n components: {\n Loading,\n TextInput,\n VerficationCode,\n },\n})\nexport default class Info extends Vue {\n private loading = false\n private fullName = ''\n private email = ''\n private redirect = false\n\n @Getter(getterNames.fullName, { namespace })\n private currentFullName!: string | null\n\n @Getter(getterNames.email, { namespace })\n private currentEmail!: string | null\n\n @Getter(getterNames.daysUntilPasswordExpiration, { namespace })\n private daysUntilPasswordExpiration!: number | null\n\n @Mutation(mutationNames.clearCurrentCredentials, { namespace })\n private logout!: () => void\n\n @Action(actionNames.updateProfile, { namespace })\n private updateUserProfile!: ({\n payload,\n }: {\n payload: ProfilePayload\n }) => Promise<{ incompleteToken: boolean }>\n\n private get showDaysUntilExpiration() {\n return this.daysUntilPasswordExpiration !== null && this.daysUntilPasswordExpiration < 10\n }\n\n get canSave() {\n return this.email && this.fullName\n }\n\n verify = false\n get credentials() {\n return {\n newEmail: this.email,\n newFullName: this.fullName,\n } as ProfileCredentials\n }\n private async saveUser() {\n if (this.isNewEmail || this.isNewFullName) {\n this.verify = this.isNewEmail\n await this.updateProfile()\n }\n }\n\n get isNewEmail() {\n return this.email !== this.currentEmail\n }\n get isNewFullName() {\n return this.fullName !== this.currentFullName\n }\n\n private async updateProfile() {\n this.loading = true\n try {\n const r = await this.updateUserProfile({\n payload: {\n newUsername: this.isNewEmail ? this.email : null,\n newFullName: this.isNewFullName ? this.fullName : null,\n },\n })\n\n if (r?.incompleteToken) {\n this.redirect = true\n setTimeout(this.logout, 6000)\n }\n } finally {\n this.loading = false\n }\n }\n\n cancelVerification() {\n this.verify = false\n }\n\n private mounted() {\n this.fullName = this.currentFullName ?? ''\n this.email = this.currentEmail ?? ''\n }\n}\n","export enum TransactionSearchByEnum {\n INVOICE,\n CONFIRMATION,\n LEAGUE,\n}\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!./Info.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!./Info.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Info.vue?vue&type=template&id=6fc72812&\"\nimport script from \"./Info.vue?vue&type=script&lang=ts&\"\nexport * from \"./Info.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('div',{staticClass:\"px-4\"},[_c('div',{staticClass:\"row\"},[_c('password-input',{staticClass:\"col-md-6 col-xl-4 mt-2\",attrs:{\"label\":\"Current Password\",\"required\":\"\"},model:{value:(_vm.currentPassword),callback:function ($$v) {_vm.currentPassword=$$v},expression:\"currentPassword\"}}),_c('div',{staticClass:\"col-md-6 col-xl-8 text-right\"},[_c('button',{staticClass:\"btn btn-success mt-5\",attrs:{\"disabled\":_vm.saveIsDisabled},on:{\"click\":_vm.submitPasswordChange}},[_c('i',{staticClass:\"fa fa-check mr-2\"}),(!_vm.loading)?_c('span',[_vm._v(\"Save\")]):_c('loading',{attrs:{\"is-small\":\"\"}})],1)])],1),_c('div',{staticClass:\"row\"},[_c('password-input',{staticClass:\"col-md-6 col-xl-4\",attrs:{\"label\":\"New Password\",\"required\":\"\"},on:{\"change\":_vm.onNewPasswordsChange},model:{value:(_vm.newPassword),callback:function ($$v) {_vm.newPassword=$$v},expression:\"newPassword\"}})],1),_c('div',{staticClass:\"row\"},[_c('password-input',{staticClass:\"col-md-6 col-xl-4\",attrs:{\"label\":\"Confirm New Password\",\"required\":\"\"},on:{\"change\":_vm.onNewPasswordsChange},model:{value:(_vm.confirmNewPassword),callback:function ($$v) {_vm.confirmNewPassword=$$v},expression:\"confirmNewPassword\"}})],1),(_vm.showConfirmPasswordError)?_c('div',{staticClass:\"alert alert-with-icon alert-warning m-0 mt-2\"},[_c('i',{staticClass:\"fa fa-exclamation-circle fa-lg\"}),_vm._v(\" The new password does not match the confirmation password entry. Please double check the entries. \")]):_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\nimport { defineComponent, ref, computed } from '@vue/composition-api'\nimport PasswordInput from '@/elements/PasswordInput.vue'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'managePassword',\n props: {},\n components: { PasswordInput },\n setup(props, ctx) {\n const updatePassword = store.dispatch.authorization.passwordChange\n\n const currentPassword = ref('')\n const newPassword = ref('')\n const confirmNewPassword = ref('')\n const showConfirmPasswordError = ref(false)\n const loading = ref(false)\n\n async function submitPasswordChange() {\n showConfirmPasswordError.value = false\n loading.value = true\n try {\n const success = await updatePassword({\n password: currentPassword.value,\n newPassword: newPassword.value,\n })\n if (success) {\n newPassword.value = ''\n confirmNewPassword.value = ''\n currentPassword.value = ''\n }\n } finally {\n ctx.root.$router.push('/')\n }\n }\n\n const saveIsDisabled = computed(() => {\n return !(\n !loading.value &&\n currentPassword.value &&\n newPassword.value &&\n confirmNewPassword.value &&\n newPassword.value === confirmNewPassword.value\n )\n })\n\n function onNewPasswordsChange() {\n showConfirmPasswordError.value =\n !!newPassword.value && !!confirmNewPassword.value && newPassword.value !== confirmNewPassword.value\n }\n\n return {\n currentPassword,\n newPassword,\n confirmNewPassword,\n showConfirmPasswordError,\n loading,\n saveIsDisabled,\n submitPasswordChange,\n onNewPasswordsChange,\n }\n },\n})\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!./ManagePassword.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!./ManagePassword.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ManagePassword.vue?vue&type=template&id=12318f95&\"\nimport script from \"./ManagePassword.vue?vue&type=script&lang=ts&\"\nexport * from \"./ManagePassword.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('full-body',{staticClass:\"px-0 py-3\"},[_c('h4',{staticClass:\"px-4 py-1\"},[_vm._v(\"My Profile\")]),_c('horizontal-tabs',{staticClass:\"underline-split bg-light-1\",attrs:{\"tabs\":_vm.tabs}}),_c('full-body',[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport FullBody from '@/components/FullBody.vue'\nimport HorizontalTabs from '@/components/HorizontalNavTabs.vue'\n\nexport default defineComponent({\n name: 'Index',\n components: {\n FullBody,\n HorizontalTabs,\n },\n setup() {\n const tabs = ref([\n { text: 'Info', to: '/myprofile/info' },\n { text: 'Password', to: '/myprofile/password' },\n { text: 'Two Factor Authentication', to: '/myprofile/2FA' },\n ])\n\n return {\n tabs,\n }\n },\n})\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!./Index.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!./Index.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Index.vue?vue&type=template&id=ed607e70&\"\nimport script from \"./Index.vue?vue&type=script&lang=ts&\"\nexport * from \"./Index.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('div',{staticClass:\"px-4\"},[_c('div',{staticClass:\"col-8\"},[(_vm.is2FAEnabled)?_c('div',[_vm._m(0),_c('div',{staticClass:\"row justify-center\"},[_c('button',{staticClass:\"btn btn-danger mt-3\",on:{\"click\":function($event){_vm.showDisableConfirmation = true}}},[_c('i',{staticClass:\"fas fa-lock-open mr-2\"}),(!_vm.loading)?_c('span',[_vm._v(\"Disable Two-Factor Authentication\")]):_c('loading',{attrs:{\"is-small\":\"\"}})],1),(_vm.isAdmin)?_c('span',{staticClass:\"pt-3\"},[_vm._v(\"Admins must have 2FA enabled. However, you can use this option to reset your current 2FA settings in order to get setup on a new device. Be aware that if you do this, your current 2FA setup will no longer work.\")]):_vm._e()])]):_c('div',[_vm._m(1),_c('div',{staticClass:\"row justify-center\"},[_c('button',{staticClass:\"btn btn-success mt-3\",on:{\"click\":function($event){_vm.showEnableConfirmation = true}}},[_c('i',{staticClass:\"fas fa-lock mr-2\"}),(!_vm.loading)?_c('span',[_vm._v(\"Enable Two-Factor Authentication\")]):_c('loading',{attrs:{\"is-small\":\"\"}})],1)])])]),_c('confirmation-modal',{attrs:{\"show\":_vm.showEnableConfirmation,\"title\":\"Enable Two Factor Authentication\",\"is-small\":true},on:{\"onResponse\":_vm.onEnableConfirmation}},[_c('div',{staticClass:\"m-4\"},[_c('div',{staticClass:\"pb-3\"},[_c('span',[_vm._v(\"Are you sure you want to enable Two-Factor Authentication?\")])]),_c('span',[_vm._v(\"Once you enable this feature, you will be logged out. Enter your username/password again to be presented with a QR code to scan with your authenticator app to link your account. We suggest Microsoft Authenticator, Twilio Authy, or Google Authenticator.\")])])]),_c('confirmation-modal',{attrs:{\"show\":_vm.showDisableConfirmation,\"title\":\"Disable Two Factor Authentication\",\"is-small\":true},on:{\"onResponse\":_vm.onDisableConfirmation}},[_c('div',{staticClass:\"m-4\"},[_c('div',{staticClass:\"pb-3\"},[_c('span',[_vm._v(\"Are you sure you want to disable Two-Factor Authentication?\")])]),_c('span',[_vm._v(\"We highly recommend you keep two-factor authentication enabled to protect your account.\")])])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('span',{staticClass:\"pt-4\"},[_vm._v(\"Click the button below to disable Two-Factor Authentication for your account. We highly recommend you keep two-factor authentication enabled to protect your account.\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('span',{staticClass:\"pt-4\"},[_vm._v(\"Click the button below to turn on Two Factor Authentication for your account. Two-factor authentication provides extra security to your account. Once you have enabled two-factor authentication and completed the setup process, you will be prompted for a randomly generated code on your authenticator app as an additional layer of security on future logins.\")])])}]\n\nexport { render, staticRenderFns }","/**\n * Rest Operations for user services\n */\n\nimport restService from '@/services/restService'\n\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { AuthUserInfo } from '@/GeneratedTypes/Authorize/ListInfo/AuthUserInfo'\n\nconst baseUrl = 'users'\n\nclass UserClientException extends GeneralError {\n name = 'User API Error'\n}\n\nexport default class userClient {\n /**\n * Searches the list of users by a prefix term.\n * @param term\n */\n static async searchUsers(term: string) {\n try {\n const x = await restService.post(`${baseUrl}/search`, {\n searchFilter: term,\n useStartsWith: true,\n appID: 'streamline',\n })\n if (x.isSuccess) {\n return x.data\n }\n } catch (e) {\n throw new UserClientException('A problem occurred searching users.', e)\n }\n\n throw new UserClientException('A problem occurred searching users.')\n }\n\n /**\n * User ID to disable.\n * @param userID\n */\n static async disableUser(userID: number) {\n const x = await restService.delete(`${baseUrl}/${userID}`)\n if (x.isSuccess) {\n return x.data\n }\n\n throw new UserClientException(`A problem occurred removing user ${userID}`)\n }\n\n static async get2FAStatus(userID: string) {\n const x = await restService.get(`${baseUrl}/${userID}/2FAStatus`)\n if (x.isSuccess) {\n return x.data\n }\n\n throw new UserClientException(`A problem occurred getting 2FA status for user ${userID}`)\n }\n\n static async set2FAStatus(userID: string, enable: boolean) {\n const x = await restService.put(`${baseUrl}/${userID}/2FAStatus`, {\n value: enable ? 'enabled' : 'disabled',\n })\n if (x.isSuccess) {\n return x.data\n }\n\n throw new UserClientException(`A problem occurred setting 2FA status for user ${userID}`)\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, onMounted } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport store from '@/store'\nimport userClient from '@/clients/userClient'\n\nexport default defineComponent({\n name: 'manage2FA',\n props: {},\n components: { Loading, ConfirmationModal },\n setup(props, ctx) {\n //const update2FA = store.dispatch.authorization.passwordChange\n\n const loading = ref(false)\n const is2FAEnabled = ref(false)\n const showEnableConfirmation = ref(false)\n const showDisableConfirmation = ref(false)\n\n const isAdmin = store.getters.authorization.isCurrentUserAnAdmin\n\n onMounted(async () => {\n await check2FAStatus()\n })\n\n async function check2FAStatus() {\n const email = store.getters.authorization.email\n const status = await userClient.get2FAStatus(email)\n is2FAEnabled.value = status == 'Enabled'\n }\n\n async function onDisableConfirmation(confirmed: boolean) {\n showDisableConfirmation.value = false\n if (confirmed) {\n loading.value = true\n try {\n const email = store.getters.authorization.email\n await userClient.set2FAStatus(email, false)\n await check2FAStatus()\n } finally {\n loading.value = false\n }\n }\n }\n\n async function onEnableConfirmation(confirmed: boolean) {\n showEnableConfirmation.value = false\n if (confirmed) {\n loading.value = true\n try {\n const email = store.getters.authorization.email\n await userClient.set2FAStatus(email, true)\n store.commit.authorization.clearCurrentCredentials() //log them out so they can get to the 2FA setup page\n ctx.root.$router.push('/')\n } finally {\n loading.value = false\n }\n }\n }\n\n return {\n loading,\n is2FAEnabled,\n isAdmin,\n showEnableConfirmation,\n showDisableConfirmation,\n onDisableConfirmation,\n onEnableConfirmation,\n }\n },\n})\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!./Manage2FA.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!./Manage2FA.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Manage2FA.vue?vue&type=template&id=79dd37fe&\"\nimport script from \"./Manage2FA.vue?vue&type=script&lang=ts&\"\nexport * from \"./Manage2FA.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'\nimport Info from '@/views/MyProfile/Info.vue'\nimport Password from '@/views/MyProfile/ManagePassword.vue'\nimport Index from '@/views/MyProfile/Index.vue'\nimport Manage2FA from '@/views/MyProfile/Manage2FA.vue'\n\nconst baseName = 'MyProfile'\n\nexport default [\n {\n path: '/myprofile',\n component: Index,\n children: [\n {\n path: '',\n redirect: '/myprofile/info',\n },\n {\n path: 'info',\n name: `${baseName}-Info`,\n component: Info,\n },\n {\n path: 'password',\n name: 'profilePassword',\n component: Password,\n },\n {\n path: '2FA',\n name: 'twoFactorAuth',\n component: Manage2FA,\n },\n ],\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h4',{staticClass:\"p-3 m-0 border-bottom border-primary head\"},[_vm._v(\"Resources\")]),_c('div',{staticClass:\"p-3 flex-grow-1\"},[_c('current-programs',{attrs:{\"resource-only-view\":true,\"title\":\"Select a program below to view resouces\",\"noProgramsText\":_vm.noProgramsTest}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport CurrentPrograms from '@/components/CurrentPrograms.vue'\nexport default defineComponent({\n name: 'Resources',\n components: {\n CurrentPrograms,\n },\n setup() {\n const noProgramsTest = ref(\n 'There are no active programs. Please create a program to view resources.'\n )\n\n return {\n noProgramsTest,\n }\n },\n})\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!./Resources.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!./Resources.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Resources.vue?vue&type=template&id=2f0d8b48&\"\nimport script from \"./Resources.vue?vue&type=script&lang=ts&\"\nexport * from \"./Resources.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('div',{staticClass:\"smaller-font admin-dashboard container-fluid py-3 flex-grow-1 image-cover-bg min-h-100\"},[_vm._m(0),(!_vm.disabled)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Partner Search\")]),_c('partner-search-panel',{on:{\"impersonate\":_vm.impersonate}})],1)],1),_c('div',{staticClass:\"col-lg-6 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Program Search\")]),_c('program-search-panel',{on:{\"impersonate\":_vm.impersonate}})],1)],1)]):_vm._e(),(!_vm.disabled)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Recent Order History\")]),_c('p',[_c('recent-order-history-panel')],1)])],1),_c('div',{staticClass:\"col-lg-6 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"OPR Transactions\")]),_c('p',[_c('registration-transactions-panel')],1)])],1)]):_vm._e(),(!_vm.disabled)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"User Management\")]),_c('user-management-panel',{attrs:{\"is-current-user-is-super-admin\":_vm.isUserReallyASuperAdmin},on:{\"impersonate\":_vm.impersonate}})],1)],1),_c('div',{staticClass:\"col-lg-6 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Error Logs\")]),_c('br'),_c('h4',[_vm._v(\"Coming Soon\")])])],1)]):_vm._e(),(!_vm.disabled)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Manage Returns\")]),_c('p',[_c('returns-order-panel')],1)])],1)]):_c('div',[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Permission Denied\")]),_c('p',[_vm._v(\" Sorry you shouldn't be here, or if you should please log in with an account that has privileges to administer accounts. \")])])],1),_c('info-modal',{attrs:{\"show\":_vm.showAdminAlertsModal,\"title\":\"These items likely need to be addressed soon\",\"button-text\":\"OK\",\"show-close\":false},on:{\"close\":function($event){_vm.showAdminAlertsModal = false}}},_vm._l((_vm.adminAlerts),function(a,i){return _c('div',{key:(\"a.TargetPrimaryKey \" + i),staticClass:\"p-3 mb-3 text-primary border\"},[_c('div',{staticClass:\"small\",staticStyle:{\"white-space\":\"pre-line\"}},[_vm._v(_vm._s(a.message))])])}),0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-auto\"},[_c('h5',{staticClass:\"px-3\"},[_vm._v(\"Admin Dashboard\")])])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"card mx-3 mb-3 shadow\"},[(_vm.showHeader)?_c('div',{staticClass:\"card-header translucent\"},[_vm._t(\"header\")],2):_vm._e(),(this.$slots.default)?_c('div',{class:_vm.cardBodyClasses},[_vm._t(\"default\")],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nexport default defineComponent({\n name: 'Card',\n props: {\n cardBodyClasses: { type: String, default: 'card-body' },\n },\n setup(props, ctx) {\n const showHeader = computed(() => ctx.slots.header != null)\n\n return {\n showHeader,\n }\n },\n})\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!./Card.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!./Card.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Card.vue?vue&type=template&id=5f23d5e7&scoped=true&\"\nimport script from \"./Card.vue?vue&type=script&lang=ts&\"\nexport * from \"./Card.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Card.vue?vue&type=style&index=0&id=5f23d5e7&lang=scss&scoped=true&\"\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 \"5f23d5e7\",\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('div',{staticClass:\"container panel pb-0 pt-0\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('radio-group-input',{attrs:{\"label\":\"Search for Transactions\",\"value-property-name\":\"id\",\"text-property-name\":\"label\",\"items-list\":_vm.searchByList,\"item-class\":\"horizontal\"},model:{value:(_vm.searchBy),callback:function ($$v) {_vm.searchBy=$$v},expression:\"searchBy\"}}),_c('router-link',{staticClass:\"hanging\",attrs:{\"to\":\"/admin-dashboard/opr-search\"}},[_vm._v(\"Advanced Search\")])],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('SearchInput',{attrs:{\"search-button-text\":\"Search\"},on:{\"input\":_vm.search},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}})],1)]),(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),(_vm.errorMessage)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.errorMessage))]):_vm._l((_vm.results),function(line){return _c('div',{key:line.id,staticClass:\"row search-field\"},[_c('div',{staticClass:\"col\"},[_c('o-p-r-transaction-item',{attrs:{\"transaction\":line}})],1)])})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { RegistrationTransactionParticipantExtended } from '@/models/Registration/RegistrationTransactionParticipantExt'\nimport { registrationClient, RegistrationSearchParams } from '@/clients/registrationClient'\nimport { ref } from '@vue/composition-api'\n\nexport function useRegistrationFinder() {\n const registrationResults = ref([])\n async function findRegistration(terms: RegistrationSearchParams) {\n registrationResults.value = (await registrationClient.search(terms)) ?? []\n }\n\n return { registrationResults, findRegistration }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container transaction-container\"},[(_vm.internalTransaction)?[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4\"},[_vm._v(_vm._s(_vm.internalTransaction.id)+\" | \"+_vm._s(_vm.internalTransaction.upwardLeagueID))]),_c('div',{staticClass:\"col-4\"},[_c('span',{staticClass:\"label\"},[_vm._v(\"Account Number\")]),_vm._v(\" \"+_vm._s(_vm.internalTransaction.accountNumber)+\" \")]),_c('div',{staticClass:\"col-4 big-field\"},[_vm._v(_vm._s(_vm.date))])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-1\"}),_c('div',{staticClass:\"col-4\"},[_c('span',{staticClass:\"label\"},[_vm._v(\"Status\")]),_c('span',{staticClass:\"small-field\"},[_vm._v(_vm._s(_vm.internalTransaction.typeRegistrationTransactionStatusID))])]),_c('div',{staticClass:\"col-3\"},[_c('span',{staticClass:\"label\"},[_vm._v(\"Total Amount\")]),_c('span',{staticClass:\"small-field\"},[_vm._v(_vm._s((\"$ \" + (_vm.internalTransaction.totalTransactionAmount))))])]),_c('div',{staticClass:\"col-3\"},[(_vm.internalTransaction.players)?_c('span',{staticClass:\"label\"},[_vm._v(\"Player(s)\")]):_vm._e(),_c('span',{staticClass:\"small-field\"},[_vm._v(_vm._s(_vm.internalTransaction.players && _vm.internalTransaction.players.length && _vm.internalTransaction.players.map(function (x) { return ((x.firstName) + \" \" + (x.lastName)); }).join(', ')))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-1\"}),_c('div',{staticClass:\"col-4\"},[_c('span',{staticClass:\"label\"},[_vm._v(\"Authorization Name\")]),_c('span',{staticClass:\"small-field\"},[_vm._v(_vm._s(_vm.internalTransaction.authorizationName))])]),_c('div',{staticClass:\"col-3\"},[(_vm.internalTransaction.creditCardLastFour)?_c('span',{staticClass:\"label\"},[_vm._v(\"Credit Card Last 4\")]):_vm._e(),(_vm.internalTransaction.creditCardLastFour)?_c('span',{staticClass:\"small-field\"},[_vm._v(\"x\"+_vm._s(_vm.internalTransaction.creditCardLastFour))]):_vm._e()]),_c('div',{staticClass:\"col-3\"},[_c('ul',[(\n _vm.internalTransaction.typeRegistrationTransactionStatusID === _vm.RegistrationStatusEnum.PENDING\n )?[_c('li',[_c('a',{staticClass:\"pending\",on:{\"click\":function($event){return _vm.markComplete(_vm.internalTransaction.id)}}},[_vm._v(\"Mark Complete\")])])]:_vm._e(),(\n _vm.internalTransaction.typeRegistrationTransactionStatusID === _vm.RegistrationStatusEnum.COMPLETE\n )?[_c('li',[_c('a',{staticClass:\"complete\",on:{\"click\":function($event){return _vm.refund(_vm.internalTransaction.id)}}},[_vm._v(\"Refund/Remove\")])])]:_vm._e(),(_vm.internalTransaction.id)?[_c('li',[_c('a',{staticClass:\"complete\",on:{\"click\":function($event){return _vm.showChargebackDetails(_vm.internalTransaction.upwardLeagueID, _vm.internalTransaction.id)}}},[_vm._v(\"Chargeback Details\")])])]:_vm._e()],2)])]),(_vm.isMarkCompleteShowing)?_c('CompleteRegistrationTransaction',{attrs:{\"showing\":_vm.isMarkCompleteShowing,\"registration\":_vm.transaction},on:{\"confirm\":_vm.onMarkComplete}}):_vm._e(),(_vm.isRefundShowing)?_c('RefundRemoveTransaction',{attrs:{\"showing\":_vm.isRefundShowing,\"registration\":_vm.transaction},on:{\"refund\":_vm.onRefundComplete,\"remove\":_vm.onRemoveComplete}}):_vm._e(),(_vm.isChargebackDetailsShowing && _vm.chargebackDetails)?_c('ChargebackDetails',{attrs:{\"showing\":_vm.isChargebackDetailsShowing,\"chargeback\":_vm.chargebackDetails},on:{\"close\":_vm.onChargebackClose}}):_vm._e()]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export enum CreditCardTypeEnum {\n VISA = 'VISA',\n MASTERCARD = 'MASTERCARD',\n DISCOVER = 'DISCOVER',\n AMEX = 'AMEX',\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{attrs:{\"is-small\":\"\",\"title\":\"Complete a Registration Transaction\"},model:{value:(_vm.internalShowing),callback:function ($$v) {_vm.internalShowing=$$v},expression:\"internalShowing\"}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Supply the following information to mark a transaction complete\")])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\" Confirmation Number \"),_c('span',{staticClass:\"orange-confirmation\"},[_vm._v(_vm._s(_vm.registration.confirmationNumber))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Authorization Code\"},model:{value:(_vm.ccAuthorization),callback:function ($$v) {_vm.ccAuthorization=$$v},expression:\"ccAuthorization\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Credit Card Last 4\"},model:{value:(_vm.ccLast4),callback:function ($$v) {_vm.ccLast4=$$v},expression:\"ccLast4\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('select-input',{attrs:{\"label\":\"Credit Card Type\",\"items-list\":_vm.ccList,\"value-property-name\":\"id\",\"text-property-name\":\"desc\"},model:{value:(_vm.ccType),callback:function ($$v) {_vm.ccType=$$v},expression:\"ccType\"}})],1)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",class:{ disabled: !_vm.areWeReadyToConfirm },attrs:{\"disabled\":!_vm.areWeReadyToConfirm},on:{\"click\":_vm.confirmed}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Mark Complete \")])])],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\nimport { RegistrationTransactionParticipantExtended } from '@/models/Registration/RegistrationTransactionParticipantExt'\nimport { PropType, defineComponent, ref, watch, computed } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Modal from '@/components/Modal.vue'\nimport { CompleteRegistrationTransactionType } from '@/models/Registration/CompleteRegistrationTransactionType'\nimport { CreditCardTypeEnum } from '@/models/Registration/CreditCardTypeEnum'\n\nexport default defineComponent({\n components: {\n TextInput,\n SelectInput,\n Modal,\n },\n props: {\n registration: {\n type: Object as PropType,\n },\n showing: {\n type: Boolean,\n default: false,\n required: true,\n },\n },\n setup(props, ctx) {\n const ccList = [\n { id: CreditCardTypeEnum.VISA, desc: 'Visa' },\n { id: CreditCardTypeEnum.MASTERCARD, desc: 'Master Card' },\n { id: CreditCardTypeEnum.DISCOVER, desc: 'Discover' },\n { id: CreditCardTypeEnum.AMEX, desc: 'American Express' },\n ]\n const internalShowing = ref(false)\n watch(\n () => props.showing,\n () => (internalShowing.value = props.showing),\n { immediate: true }\n )\n\n const areWeReadyToConfirm = computed(() => !!ccType.value && !!ccAuthorization.value && !!ccLast4.value)\n function confirmed() {\n ctx.emit('confirm', {\n transaction: props.registration,\n type: ccType.value,\n authorization: ccAuthorization.value,\n last4: ccLast4.value,\n } as CompleteRegistrationTransactionType)\n }\n function cancel() {\n ctx.emit('cancel')\n internalShowing.value = false\n }\n const ccType = ref('')\n const ccAuthorization = ref('')\n const ccLast4 = ref('')\n return {\n ccList,\n ccType,\n ccLast4,\n ccAuthorization,\n confirmed,\n internalShowing,\n areWeReadyToConfirm,\n cancel,\n }\n },\n})\n","import { RegistrationTransactionParticipantExtended } from '@/models/Registration/RegistrationTransactionParticipantExt'\n\nexport enum doWhatType {\n REFUND,\n REMOVE,\n}\n\nexport interface RefundRemoveTransactionType {\n transaction: RegistrationTransactionParticipantExtended\n type: doWhatType\n reason: string\n}\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!./CompleteRegistrationTransaction.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!./CompleteRegistrationTransaction.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CompleteRegistrationTransaction.vue?vue&type=template&id=f4d804ce&scoped=true&\"\nimport script from \"./CompleteRegistrationTransaction.vue?vue&type=script&lang=ts&\"\nexport * from \"./CompleteRegistrationTransaction.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CompleteRegistrationTransaction.vue?vue&type=style&index=0&id=f4d804ce&scoped=true&lang=scss&\"\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 \"f4d804ce\",\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('Modal',{attrs:{\"is-small\":\"\",\"title\":\"Refund/Remove Registration Transaction\"},model:{value:(_vm.internalShowing),callback:function ($$v) {_vm.internalShowing=$$v},expression:\"internalShowing\"}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Supply the following information to refund a transaction\")])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\" Confirmation Number \"),_c('span',{staticClass:\"orange-confirmation\"},[_vm._v(_vm._s(_vm.registration.confirmationNumber))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('select-input',{attrs:{\"label\":\"Remove/Refund\",\"text-property-name\":\"label\",\"value-property-name\":\"id\",\"items-list\":_vm.doWhatList},model:{value:(_vm.doWhat),callback:function ($$v) {_vm.doWhat=$$v},expression:\"doWhat\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Reason\"},model:{value:(_vm.reason),callback:function ($$v) {_vm.reason=$$v},expression:\"reason\"}})],1)])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",class:{ disabled: !_vm.areWeReadyToConfirm },attrs:{\"disabled\":!_vm.areWeReadyToConfirm},on:{\"click\":_vm.confirmed}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Confirm \")])])],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\nimport { RegistrationTransactionParticipantExtended } from '@/models/Registration/RegistrationTransactionParticipantExt'\nimport { computed, defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Modal from '@/components/Modal.vue'\nimport { doWhatType, RefundRemoveTransactionType } from '@/models/Registration/RefundRemoveTransactionType'\n\nexport default defineComponent({\n components: {\n TextInput,\n SelectInput,\n Modal,\n },\n props: {\n registration: {\n type: Object as PropType,\n },\n showing: {\n type: Boolean,\n default: false,\n required: true,\n },\n },\n setup(props, ctx) {\n function markComplete() {\n alert('hi')\n }\n\n const internalShowing = ref(false)\n watch(\n () => props.showing,\n () => (internalShowing.value = props.showing),\n { immediate: true }\n )\n\n const areWeReadyToConfirm = computed(() => doWhat.value != undefined && !!reason.value)\n function confirmed() {\n const args = {\n type: doWhatType.REFUND,\n reason: reason.value,\n transaction: props.registration,\n } as RefundRemoveTransactionType\n if (doWhat.value == doWhatType.REFUND) {\n ctx.emit('refund', args)\n } else {\n ctx.emit('remove', { ...args, type: doWhatType.REMOVE })\n }\n }\n function cancel() {\n ctx.emit('cancel')\n internalShowing.value = false\n }\n\n const doWhat = ref(doWhatType.REFUND)\n\n const reason = ref('')\n return {\n markComplete,\n doWhatList: [\n { id: doWhatType.REFUND, label: 'Refund' },\n { id: doWhatType.REMOVE, label: 'Remove' },\n ],\n doWhat,\n reason,\n\n confirmed,\n internalShowing,\n areWeReadyToConfirm,\n cancel,\n }\n },\n})\n","export enum RegistrationStatusEnum {\n COMPLETE = 'COMPLETE',\n PENDING = 'PENDING',\n //** for FE use only\n REMOVED = 'REMOVED',\n //** for FE use only\n REFUNDED = 'REMOVED',\n}\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!./RefundRemoveTransaction.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!./RefundRemoveTransaction.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RefundRemoveTransaction.vue?vue&type=template&id=292e68bd&scoped=true&\"\nimport script from \"./RefundRemoveTransaction.vue?vue&type=script&lang=ts&\"\nexport * from \"./RefundRemoveTransaction.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RefundRemoveTransaction.vue?vue&type=style&index=0&id=292e68bd&scoped=true&lang=scss&\"\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 \"292e68bd\",\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('Modal',{attrs:{\"is-small\":\"\",\"title\":\"Chargeback Details\"},model:{value:(_vm.internalShowing),callback:function ($$v) {_vm.internalShowing=$$v},expression:\"internalShowing\"}},[_c('div',{staticClass:\"container\"},_vm._l((_vm.gardians),function(player){return _c('div',{key:player.individualID},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(_vm._s(player.firstName)+\" \"+_vm._s(player.lastName)+\" Guardians' Names\")])]),_vm._l((player.contacts),function(contact){return _c('div',{key:contact.individualID,staticClass:\"row\"},[_c('div',{staticClass:\"col-12 pb-0\"},[_vm._v(_vm._s(contact.firstName)+\" \"+_vm._s(contact.lastName))]),_vm._l((contact.addresses),function(address){return _c('div',{key:address.addressID,staticClass:\"col-12 pt-0 pb-0\"},[_vm._v(\" \"+_vm._s(address.street1)),_c('br'),_vm._v(\" \"+_vm._s(address.subdivision1)+\", \"+_vm._s(address.subdivision2)+\" \"+_vm._s(address.postalCode)+\" \")])}),_c('div',{staticClass:\"col-12 pb-0\"},[_vm._v(\"Email\")]),_vm._l((contact.emailAddresses),function(email){return _c('div',{key:email.emailID,staticClass:\"col-12 pt-0 pb-0\"},[_vm._v(\" \"+_vm._s(email.emailAddress)+\" \")])}),_c('div',{staticClass:\"col-12 pb-0\"},[_vm._v(\"Phone\")]),_vm._l((contact.phoneNumbers),function(phone){return _c('div',{key:phone.phoneID,staticClass:\"col-12 pt-0 pb-0\"},[_vm._v(\" \"+_vm._s(phone.phoneNumber)+\" \")])})],2)})],2)}),0),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.close}},[_vm._v(\"Close\")])])],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\nimport { RegistrationTransactionParticipantInfoDetails } from '@/models/Registration/RegistrationTransactionParticipantInfoDetails'\nimport { computed, defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Modal from '@/components/Modal.vue'\n\nexport default defineComponent({\n components: {\n TextInput,\n SelectInput,\n Modal,\n },\n props: {\n chargeback: {\n type: Object as PropType,\n required: true,\n },\n showing: {\n type: Boolean,\n default: false,\n required: true,\n },\n },\n setup(props, ctx) {\n const internalShowing = ref(false)\n\n watch(\n () => props.showing,\n () => (internalShowing.value = props.showing),\n { immediate: true }\n )\n\n watch(\n () => internalShowing.value,\n () => {\n if (!internalShowing.value) {\n ctx.emit('close')\n }\n },\n { immediate: true }\n )\n\n function close() {\n ctx.emit('close')\n internalShowing.value = false\n }\n\n const gardians = computed(() => {\n if (props.chargeback && props.chargeback.players && props.chargeback.players.length) {\n return props.chargeback.players\n }\n return []\n })\n\n return {\n internalShowing,\n gardians,\n close,\n }\n },\n})\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!./ChargebackDetails.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!./ChargebackDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ChargebackDetails.vue?vue&type=template&id=1dd655df&scoped=true&\"\nimport script from \"./ChargebackDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./ChargebackDetails.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ChargebackDetails.vue?vue&type=style&index=0&id=1dd655df&scoped=true&lang=scss&\"\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 \"1dd655df\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { RegistrationTransactionParticipantExtended } from '@/models/Registration/RegistrationTransactionParticipantExt'\nimport { RegistrationTransactionParticipantInfoDetails } from '@/models/Registration/RegistrationTransactionParticipantInfoDetails'\nimport dayjs from 'dayjs'\nimport { cloneDeep } from 'lodash'\nimport { CompleteRegistrationTransactionType } from '@/models/Registration/CompleteRegistrationTransactionType'\nimport CompleteRegistrationTransaction from '@/views/AdminDash/vues/RegistrationTransactionPanel/CompleteRegistrationTransaction.vue'\nimport RefundRemoveTransaction from '@/views/AdminDash/vues/RegistrationTransactionPanel/RefundRemoveTransaction.vue'\nimport ChargebackDetails from '@/views/AdminDash/vues/RegistrationTransactionPanel/ChargebackDetails.vue'\nimport { registrationClient } from '@/clients/registrationClient'\nimport { RegistrationStatusEnum } from '@/models/Registration/RegistrationStatusEnum'\nimport { RefundRemoveTransactionType } from '@/models/Registration/RefundRemoveTransactionType'\n\nexport default defineComponent({\n components: { RefundRemoveTransaction, CompleteRegistrationTransaction, ChargebackDetails },\n props: {\n transaction: { type: Object as PropType, required: true },\n },\n\n setup(props) {\n const internalTransaction = ref(null)\n let chargebackDetails = ref(null)\n\n watch(\n () => props.transaction,\n () => (internalTransaction.value = cloneDeep(props.transaction)),\n { immediate: true }\n )\n\n const date = computed(() => {\n if (internalTransaction.value && internalTransaction.value.transactionCompletedDate) {\n const d = dayjs(internalTransaction.value.transactionCompletedDate)\n // some of these transactions dates are the minute that Christ was born, we won't display those.\n if (d.valueOf() > 100) {\n return d.format('MMM D YYYY h:mm a')\n }\n return ''\n }\n })\n\n const isMarkCompleteShowing = ref(false)\n const isRefundShowing = ref(false)\n const isChargebackDetailsShowing = ref(false)\n\n async function onMarkComplete(info: CompleteRegistrationTransactionType) {\n try {\n await registrationClient.complete(\n info.transaction.upwardLeagueID,\n info.transaction.leagueID,\n info.transaction.id,\n info.type,\n info.authorization,\n info.last4\n )\n if (internalTransaction.value) {\n internalTransaction.value.typeRegistrationTransactionStatusID = RegistrationStatusEnum.COMPLETE\n }\n isMarkCompleteShowing.value = false\n } catch (e) {\n throw e\n }\n }\n\n const markRefundRemove = (refund: boolean) => async (info: RefundRemoveTransactionType) => {\n try {\n await registrationClient.refund(\n info.transaction.upwardLeagueID,\n info.transaction.leagueID,\n info.transaction.id,\n info.reason,\n\n refund\n )\n if (internalTransaction.value) {\n internalTransaction.value.typeRegistrationTransactionStatusID = refund\n ? RegistrationStatusEnum.REFUNDED\n : RegistrationStatusEnum.REMOVED\n }\n isRefundShowing.value = false\n } catch (e) {\n throw e\n }\n }\n\n async function showChargebackDetails(upwardLeagueId: string, transactionId: number) {\n console.log('showChargebackDetails', upwardLeagueId, transactionId)\n await getChargebackDetails(upwardLeagueId, transactionId)\n isChargebackDetailsShowing.value = true\n }\n\n async function getChargebackDetails(upwardLeagueId: string, transactionId: number) {\n try {\n console.log('getChargebackDetails', upwardLeagueId, transactionId)\n chargebackDetails.value = await registrationClient.getChargebackDetails(upwardLeagueId, transactionId)\n console.log(chargebackDetails.value)\n } catch (e) {\n throw e\n }\n }\n\n function onChargebackClose() {\n isChargebackDetailsShowing.value = false\n }\n\n const onRefundComplete = markRefundRemove(true)\n const onRemoveComplete = markRefundRemove(false)\n\n function markComplete() {\n isMarkCompleteShowing.value = true\n }\n\n function refund() {\n isRefundShowing.value = true\n }\n\n return {\n date,\n markComplete,\n refund,\n isRefundShowing,\n onMarkComplete,\n onRemoveComplete,\n onRefundComplete,\n isMarkCompleteShowing,\n internalTransaction,\n RegistrationStatusEnum,\n showChargebackDetails,\n isChargebackDetailsShowing,\n chargebackDetails,\n onChargebackClose,\n }\n },\n})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { AuthUserInfo } from '@/GeneratedTypes/Authorize/ListInfo/AuthUserInfo'\nimport RadioGroupInput from '../../../../elements/RadioGroupInput.vue'\nimport TextInput from '../../../../elements/TextInput.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nimport Modal from '@/components/Modal.vue'\nimport authorizationClient from '@/clients/authorizationClient'\nimport { ValdiatorInterface } from '@/models/Validation/ValidatorInterface'\n\nenum ResetTypeEnum {\n MANUAL,\n MAIL,\n SMS,\n}\n\nexport default defineComponent({\n components: { VeeValidateForm, TextInput, RadioGroupInput, Modal },\n props: {\n visible: { type: Boolean, required: true },\n user: { type: Object as PropType, required: true },\n canResetPassword: { type: Boolean, required: true },\n },\n setup(props, ctx) {\n const internalVisibleRef = ref(false)\n const howRef = ref(ResetTypeEnum.MANUAL)\n const inputRef = ref('')\n const validate = ref(null)\n\n const resetSelection = [\n {\n id: ResetTypeEnum.MANUAL,\n description: 'Manual Update',\n label: 'New Password',\n validation: 'required',\n enabled: true,\n },\n {\n id: ResetTypeEnum.MAIL,\n description: 'Reset Via Email',\n label: 'Email Address',\n validation: '',\n enabled: false,\n },\n {\n id: ResetTypeEnum.SMS,\n description: 'Reset Via SMS',\n label: 'Phone',\n validation: 'phone|required',\n enabled: true,\n },\n ]\n const currentSelectionRef = computed(() => resetSelection.find((x) => x.id == howRef.value))\n const resetInitialState = () =>\n (inputRef.value = howRef.value == ResetTypeEnum.MAIL ? props.user.email ?? '' : '')\n watch(\n () => howRef.value,\n () => resetInitialState(),\n { immediate: true }\n )\n watch(\n () => props.visible,\n () => {\n if (props.visible != internalVisibleRef.value) {\n internalVisibleRef.value = props.visible\n resetInitialState()\n }\n },\n { immediate: true }\n )\n\n /**\n * When the internal visible flag (set by modal's v-model) send close.\n */\n watch(\n () => internalVisibleRef.value,\n () => {\n if (!internalVisibleRef.value) {\n inputRef.value = ''\n ctx.emit('closed')\n }\n }\n )\n\n //bug in initial state of this form prevents validation\n async function triggerValidate() {\n await validate.value?.checkValidity()\n }\n\n async function reset() {\n //figure out the type of reset first\n try {\n switch (howRef.value) {\n case ResetTypeEnum.MANUAL:\n await authorizationClient.adminResetPassword(String(props.user.id), inputRef.value)\n break\n case ResetTypeEnum.MAIL:\n await authorizationClient.adminResetPasswordEmail(inputRef.value)\n break\n case ResetTypeEnum.SMS:\n await authorizationClient.adminResetPasswordSMS(String(props.user.id), inputRef.value)\n break\n }\n } catch (e) {\n throw e\n }\n close()\n ctx.emit('reset')\n }\n\n function close() {\n internalVisibleRef.value = false\n }\n\n return {\n internalVisibleRef,\n triggerValidate,\n validate,\n resetSelection,\n inputRef,\n currentSelectionRef,\n howRef,\n close,\n reset,\n }\n },\n})\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!./OPRTransactionItem.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!./OPRTransactionItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OPRTransactionItem.vue?vue&type=template&id=b4f86ee2&scoped=true&\"\nimport script from \"./OPRTransactionItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./OPRTransactionItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OPRTransactionItem.vue?vue&type=style&index=0&id=b4f86ee2&scoped=true&lang=scss&\"\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 \"b4f86ee2\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport { TransactionSearchByEnum } from '@/models/Dashboard/TransactionSearch'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport { useRegistrationFinder } from '@/views/AdminDash/vues/RegistrationTransactionPanel/useRegistrationFinder'\nimport OPRTransactionItem from '@/views/AdminDash/vues/RegistrationTransactionPanel/OPRTransactionItem.vue'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n components: { OPRTransactionItem, RadioGroupInput, SearchInput, Loading },\n setup() {\n const searchByList = [\n { id: TransactionSearchByEnum.CONFIRMATION, label: 'Confirmation #' },\n { id: TransactionSearchByEnum.INVOICE, label: 'Invoice #' },\n { id: TransactionSearchByEnum.LEAGUE, label: 'League Number' },\n ]\n const loading = ref(false)\n const searchTerm = ref('')\n const searchBy = ref(TransactionSearchByEnum.CONFIRMATION)\n\n const registrationFinder = useRegistrationFinder()\n const errorMessage = ref('')\n async function search() {\n loading.value = true\n try {\n await registrationFinder.findRegistration({\n accountNumber: '',\n confirmationNumber: searchBy.value == TransactionSearchByEnum.CONFIRMATION ? searchTerm.value : '',\n invoiceNumber: searchBy.value == TransactionSearchByEnum.INVOICE ? searchTerm.value : null,\n lastName: '',\n upwardLeagueID: searchBy.value == TransactionSearchByEnum.LEAGUE ? searchTerm.value : '',\n creditCardLastFour: '',\n })\n if (!registrationFinder.registrationResults.value?.length) {\n errorMessage.value = 'No results found.'\n }\n } catch (e) {\n errorMessage.value =\n 'Error: ' + (e?.message || e?.errorObject?.message || 'Problem with search criteria.')\n } finally {\n loading.value = false\n }\n }\n\n return {\n search,\n searchBy,\n errorMessage,\n loading,\n searchTerm,\n searchByList,\n results: registrationFinder.registrationResults,\n }\n },\n})\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!./RegistrationTransactionsPanel.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!./RegistrationTransactionsPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RegistrationTransactionsPanel.vue?vue&type=template&id=6b7f1c96&\"\nimport script from \"./RegistrationTransactionsPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./RegistrationTransactionsPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RegistrationTransactionsPanel.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"panel\"},[_c('SearchInput',{attrs:{\"searchButonText\":\"Search\",\"search-button-text\":\"Search\",\"label\":\"Search for a User\"},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}}),(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),(_vm.error)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.error))]):_c('div',{staticClass:\"table-responsive\"},[(_vm.results && _vm.results.length > 0)?_c('table',{staticClass:\"table table-striped\"},[_vm._m(0),_c('tbody',_vm._l((_vm.results),function(line){return _c('tr',{key:line.uniqueID},[_c('td',[_vm._v(_vm._s(line.friendlyName))]),_c('td',[_vm._v(_vm._s(line.email))]),_c('td',[_vm._v(_vm._s(line.failedLoginAttemptCount))]),_c('td',[_vm._v(_vm._s(_vm.formatDate(line.lastLoginDate)))]),_c('td',[_c('a',{staticClass:\"fg-blue\",attrs:{\"title\":\"Impersonate User\"},on:{\"click\":function($event){return _vm.impersonateUser(line)}}},[_c('i',{staticClass:\"fas fa-user-friends\"})])]),_c('td',[_c('a',{staticClass:\"fg-red\",attrs:{\"title\":\"Reset User\"},on:{\"click\":function($event){return _vm.resetUser(line)}}},[_c('i',{staticClass:\"fas fa-undo\"})])]),_c('td',[_c('a',{attrs:{\"title\":\"Disable\"},on:{\"click\":function($event){return _vm.disableUser(line)}}},[_c('i',{staticClass:\"fas fa-minus-circle\"})])]),_c('td',[_c('a',{attrs:{\"title\":(\"2FA is \" + (line.twoFactorAuthEnabled ? 'enabled' : 'disabled') + \" for this user\")},on:{\"click\":function($event){return _vm.change2FA(line)}}},[_c('i',{class:line.twoFactorAuthEnabled ? 'far fa-check-square' : 'far fa-square'})])])])}),0)]):_vm._e()]),(_vm.userToDisable)?_c('ConfirmationModal',{attrs:{\"is-small\":\"\",\"title\":\"Confirm Disable\",\"show\":_vm.confirmDisable},on:{\"onResponse\":_vm.disableConfirmed}},[_vm._v(\"Confirm disable of \"+_vm._s(_vm.userToDisable.friendlyName))]):_vm._e(),(_vm.userToReset)?_c('PasswordResetModal',{attrs:{\"can-reset-password\":_vm.canCurrentUserResetPassword,\"visible\":_vm.isResetDialogShowing,\"user\":_vm.userToReset},on:{\"closed\":function($event){_vm.isResetDialogShowing = false},\"reset\":function($event){return _vm.passwordWasReset()}}}):_vm._e(),_c('alert',{attrs:{\"type\":_vm.notice},model:{value:(_vm.isPasswordResetShowing),callback:function ($$v) {_vm.isPasswordResetShowing=$$v},expression:\"isPasswordResetShowing\"}},[_vm._v(\" Password Reset Successful \")]),(_vm.userTo2FA)?_c('ConfirmationModal',{attrs:{\"is-small\":\"\",\"title\":(\"Confirm 2FA \" + (_vm.userTo2FA.twoFactorAuthEnabled ? 'Disable' : 'Enable')),\"show\":_vm.is2FADialogShowing},on:{\"onResponse\":_vm.change2FAConfirmed}},[_c('div',[_vm._v(\" Are you sure you want to \"+_vm._s(_vm.userTo2FA.twoFactorAuthEnabled ? 'disable' : 'enable')+\" 2FA for \"+_vm._s(_vm.userTo2FA.friendlyName)+\"? \")]),_c('div',{staticClass:\"pt-3\"},[_c('span',{staticClass:\"text-danger\"},[_vm._v(\"If you are not certain what impact this has, please consult with IT first.\")])])]):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Name\")]),_c('th',[_vm._v(\"Email\")]),_c('th',[_vm._v(\"Login Failures\")]),_c('th',[_vm._v(\"Last Login Date/Time\")]),_c('th',[_vm._v(\"Imp.\")]),_c('th',[_vm._v(\"Reset\")]),_c('th',[_vm._v(\"Disable\")]),_c('th',[_vm._v(\"2FA\")])])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('vee-validate-form',{ref:\"validate\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar valid = ref.valid;\nvar validated = ref.validated;\nreturn [_c('modal',{staticClass:\"password-reset\",attrs:{\"is-small\":\"\",\"title\":\"Reset Password\"},on:{\"close\":_vm.close},scopedSlots:_vm._u([{key:\"footer\",fn:function(){return [_c('button',{staticClass:\"btn rounded-0 border-success btn-success\",attrs:{\"disabled\":!valid},on:{\"click\":_vm.reset}},[_vm._v(\" Reset \")]),_c('button',{staticClass:\"btn rounded-0 border-secondary btn-secondary\",on:{\"click\":_vm.close}},[_vm._v(\"Cancel\")])]},proxy:true}],null,true),model:{value:(_vm.internalVisibleRef),callback:function ($$v) {_vm.internalVisibleRef=$$v},expression:\"internalVisibleRef\"}},[_c('div',[_vm._v(\"Reset a User's Password\")]),_c('div',[_c('span',{staticClass:\"title\"},[_vm._v(\"User Account:\")]),_c('span',{staticClass:\"value\"},[_vm._v(_vm._s(_vm.user.username))])]),(_vm.canResetPassword)?_c('div',[_c('div',[_c('radio-group-input',{attrs:{\"label\":\"Reset Password\",\"items-list\":_vm.resetSelection,\"text-property-name\":\"description\",\"value-property-name\":\"id\",\"item-class\":\"form-check\"},model:{value:(_vm.howRef),callback:function ($$v) {_vm.howRef=$$v},expression:\"howRef\"}})],1),_c('br'),_c('div',[_c('text-input',{attrs:{\"label\":_vm.currentSelectionRef.label,\"vee-validate-rules\":_vm.currentSelectionRef.validation,\"enabled\":_vm.currentSelectionRef.enabled},on:{\"input\":_vm.triggerValidate},model:{value:(_vm.inputRef),callback:function ($$v) {_vm.inputRef=$$v},expression:\"inputRef\"}})],1)]):_c('div',[_c('div',{staticClass:\"alert alert-primary\",attrs:{\"role\":\"alert\"}},[_vm._v(\" You are not authorized to reset the password for this account. Please contact system administrators for assistance. \")])])])]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export enum OrderHistorySearchByEnum {\n ORDER_ID,\n ACCOUNT_NUMBER,\n HOLDS,\n PARTIALS,\n}\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!./PasswordResetModal.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!./PasswordResetModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PasswordResetModal.vue?vue&type=template&id=3b469182&\"\nimport script from \"./PasswordResetModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./PasswordResetModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PasswordResetModal.vue?vue&type=style&index=0&lang=scss&\"\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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, ref, watch } from '@vue/composition-api'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport { cloneDeep } from 'lodash'\nimport userClient from '@/clients/userClient'\nimport { AuthUserInfo } from '@/GeneratedTypes/Authorize/ListInfo/AuthUserInfo'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { ImpersonationPayload } from '@/clients/authorizationClient'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport PasswordResetModal from '@/views/AdminDash/vues/UserManagement/PasswordResetModal.vue'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport dayjs from 'dayjs'\n\nclass UserManagementException extends GeneralError {\n name = 'User Management Exception'\n}\n\nexport default defineComponent({\n components: { Alert, PasswordResetModal, ConfirmationModal, Loading, SearchInput },\n props: {\n isCurrentUserIsSuperAdmin: { type: Boolean, required: true },\n },\n setup(p, ctx) {\n const searchTerm = ref('')\n // set to an error if there is one.\n const error = ref('')\n //clear an error in 20 seconds automatically\n watch(\n () => error.value,\n (a) => {\n if (a) {\n setTimeout(() => (error.value = ''), 20000)\n }\n }\n )\n\n const results = ref([])\n const loading = ref(false)\n\n /**\n * refresh search by search term.\n */\n async function search() {\n loading.value = true\n error.value = ''\n results.value = []\n try {\n results.value = (await userClient.searchUsers(searchTerm.value)) ?? []\n if (!results.value?.length) {\n error.value = 'No results returned.'\n }\n } catch (e) {\n const message = e?.innerException?.errorObject?.message\n\n error.value = 'Search failure ' + (message || e?.message || e?.errorObject?.message || '')\n\n throw new UserManagementException('Search failed ' + message, e)\n } finally {\n loading.value = false\n }\n }\n // currently searchTerm is updated on search button click\n watch(\n () => searchTerm.value,\n async () => {\n if (searchTerm.value.length >= 3) {\n await search()\n }\n }\n )\n\n const confirmDisable = ref(false)\n const userToDisable = ref(null)\n async function disableConfirmed(t: boolean) {\n if (t && userToDisable.value) {\n loading.value = true\n try {\n await userClient.disableUser(userToDisable.value?.id)\n } catch (e) {\n error.value = e.message || ''\n throw e\n } finally {\n loading.value = false\n }\n }\n await search()\n confirmDisable.value = false\n }\n\n const isResetDialogShowing = ref(false)\n const canCurrentUserResetPassword = computed(\n () => (userToReset.value && !userToReset.value.isSuperAdmin) || p.isCurrentUserIsSuperAdmin\n )\n const userToReset = ref(null)\n function resetUser(user: AuthUserInfo) {\n userToReset.value = cloneDeep(user)\n isResetDialogShowing.value = true\n }\n\n function disableUser(user: AuthUserInfo) {\n confirmDisable.value = true\n userToDisable.value = cloneDeep(user)\n }\n function impersonateUser(user: AuthUserInfo) {\n let an = user.roles?.length && user.roles[0].accountNumber\n if (an) {\n ctx.emit('impersonate', { accountNumber: an, userName: user.username } as ImpersonationPayload)\n } else {\n error.value = 'Cannot impersonate a user without roles'\n throw new UserManagementException('Cannot impersonate a user without roles')\n }\n }\n\n const is2FADialogShowing = ref(false)\n const userTo2FA = ref(null)\n function change2FA(user: AuthUserInfo) {\n is2FADialogShowing.value = true\n userTo2FA.value = cloneDeep(user)\n }\n\n async function change2FAConfirmed(c: boolean) {\n if (c && userTo2FA.value) {\n loading.value = true\n try {\n await userClient.set2FAStatus(\n userTo2FA.value?.email ?? '',\n !userTo2FA.value?.twoFactorAuthEnabled ?? false\n )\n } catch (e) {\n error.value = e.message || ''\n throw e\n } finally {\n loading.value = false\n }\n }\n await search()\n is2FADialogShowing.value = false\n }\n\n const isPasswordResetShowing = ref(false)\n function passwordWasReset() {\n isPasswordResetShowing.value = true\n }\n\n function formatDate(d: Date | null) {\n if (d) {\n return dayjs(d).format('MMM DD YYYY' + ' / ' + 'hh:mm A')\n } else {\n return ''\n }\n }\n\n return {\n searchTerm,\n results,\n disableUser,\n impersonateUser,\n confirmDisable,\n userToDisable,\n resetUser,\n loading,\n error,\n disableConfirmed,\n isResetDialogShowing,\n userToReset,\n canCurrentUserResetPassword,\n passwordWasReset,\n isPasswordResetShowing,\n notice: AlertTypeEnum.NOTICE,\n formatDate,\n is2FADialogShowing,\n change2FA,\n change2FAConfirmed,\n userTo2FA,\n }\n },\n})\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!./UserManagementPanel.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!./UserManagementPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserManagementPanel.vue?vue&type=template&id=097cdd81&\"\nimport script from \"./UserManagementPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserManagementPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UserManagementPanel.vue?vue&type=style&index=0&lang=scss&\"\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('div',[(!_vm.loadingOrders)?_c('div',{staticClass:\"container panel pb-0 pt-0\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('radio-group-input',{attrs:{\"label\":\"Search for Orders\",\"value-property-name\":\"id\",\"text-property-name\":\"label\",\"items-list\":_vm.searchByList,\"item-class\":\"horizontal\"},model:{value:(_vm.searchBy),callback:function ($$v) {_vm.searchBy=$$v},expression:\"searchBy\"}}),_c('router-link',{staticClass:\"hanging\",attrs:{\"to\":\"/admin-dashboard/order-search\"}},[_vm._v(\"Advanced Search\")])],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('SearchInput',{attrs:{\"allow-blank-input\":\"\",\"searchButtonText\":\"Search\"},on:{\"search-click\":_vm.runSearch},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}})],1)]),_c('div',{staticClass:\"row\"},[(_vm.orderErrors)?_c('div',{staticClass:\"col alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.orderErrors))]):_vm._e()]),_vm._l((_vm.orderHistoryRef),function(order){return _c('div',{key:order.upwardOrderID,staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('order-item',{attrs:{\"order\":order,\"program\":_vm.programFor(order)},on:{\"order-release\":function($event){return _vm.popupReleaseDialog(order)},\"order-click\":function($event){return _vm.clicked(order)}}})],1)])}),_c('hold-reason-dialog',{attrs:{\"order\":_vm.holdingOrder,\"visible\":_vm.isHoldVisible},on:{\"confirm\":_vm.releaseOrder,\"close\":_vm.closeHold}})],2):_c('div',[_c('loading')],1),_c('alert',{attrs:{\"timeout\":3000,\"type\":_vm.alertType},model:{value:(_vm.showReleaseMessage),callback:function ($$v) {_vm.showReleaseMessage=$$v},expression:\"showReleaseMessage\"}},[_vm._v(_vm._s(_vm.releaseMessage))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { computed, onMounted, ref, watch } from '@vue/composition-api'\nimport ordersClient, { OrderSearchParams } from '@/clients/ordersClient'\nimport { OrderFindInfo } from '@/GeneratedTypes/Order/ListInfo/OrderFindInfo'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\nimport store from '@/store'\n\nexport function useOrderHistory() {\n const orderHistoryRef = ref([])\n const loadingOrders = ref(false)\n const orderErrors = ref('')\n watch(\n () => orderErrors.value,\n (a) => {\n if (a) {\n setTimeout(() => (orderErrors.value = ''), 20000)\n }\n }\n )\n\n onMounted(\n async () => await store.dispatch.leagueTypes.fetchAll(false) //go ahead and get these cached up\n )\n\n const orderTypes = computed(async () => await ordersClient.getOrderStati())\n\n const programFor = (order: OrderInfoExt) =>\n store.getters.leagueTypes.byUpwardTypeId(order.typeLeagueID)?.description ?? 'n/a'\n\n async function searchOrders(p: OrderSearchParams) {\n loadingOrders.value = true\n orderErrors.value = ''\n orderHistoryRef.value = []\n\n try {\n orderHistoryRef.value = (await ordersClient.searchOrderHistory(p)) ?? []\n if (!orderHistoryRef.value?.length) {\n orderErrors.value = 'No results returned'\n }\n } catch (e) {\n orderErrors.value = e?.message || e?.errorObject?.message || 'Search failed with an unexpected error'\n\n throw e\n } finally {\n loadingOrders.value = false\n }\n }\n\n return { searchOrders, orderHistoryRef, orderTypes, loadingOrders, orderErrors, programFor }\n}\n\nexport function useHoldDialog() {\n const isHoldVisible = ref(false)\n const holdingOrder = ref(null)\n function popupReleaseDialog(o: OrderFindInfo) {\n isHoldVisible.value = true\n holdingOrder.value = o\n }\n\n async function release(o: OrderFindInfo, reason: string) {\n try {\n await ordersClient.releaseFromHold(\n o.upwardLeagueID || o.upwardProgramID || '',\n o.upwardOrderID ?? '',\n reason\n )\n } catch (e) {\n throw e\n } finally {\n closeHold()\n }\n }\n\n function closeHold() {\n isHoldVisible.value = false\n }\n\n return { closeHold, release, isHoldVisible, popupReleaseDialog, holdingOrder }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"line-card container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('a',{staticClass:\"normal\",attrs:{\"title\":\"Jump to Order Detail\"},on:{\"click\":function($event){return _vm.orderClick(_vm.order)}}},[_vm._v(_vm._s(_vm.order.upwardOrderID))]),_vm._v(\" | \"+_vm._s((\"\" + (_vm.order.upwardLeagueID || _vm.order.upwardProgramID || '')))+\" | \"+_vm._s(_vm.order.typeOrderID)+\" \")]),_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"field go-right\"},[_vm._v(_vm._s(_vm.orderDate))]),_c('div',{staticClass:\"go-right header\"},[_vm._v(\"Order Date\")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('span',{staticClass:\"header\"},[_vm._v(\"Status\")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order.statusNote || _vm.order.statusDescription))]),_vm._v(\" \"),(_vm.order && _vm.order.typeOrderStatusID === 'ONHOLD')?_c('button',{staticClass:\"btn button btn-success\",on:{\"click\":_vm.releaseOnHold}},[_vm._v(\" Release On-Hold \")]):_vm._e()]),_c('div',{staticClass:\"col\"},[_vm._v(_vm._s(_vm.program))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export enum ReturnsOrderSearchByEnum {\n NEW,\n RETURNS_SCM,\n RETURNS_ACCOUNTING,\n RETURNS_PS,\n RETURNS_PENDING_ITEM_RETURN,\n ORDER_ID,\n ACCOUNT_NUMBER,\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport dayjs from 'dayjs'\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\n\nexport default defineComponent({\n name: 'OrderItem',\n props: {\n order: { type: Object as PropType, required: true },\n program: { type: String, require: false, default: '' },\n },\n components: {},\n setup(props, ctx) {\n function orderClick(order: OrderInfoExt) {\n ctx.emit('order-click', order)\n }\n\n function releaseOnHold(order: OrderInfoExt) {\n ctx.emit('order-release', order)\n }\n\n const shippingStatus = computed(() => (props.order.shipDate ? `Shipped` : `In Process`))\n const orderDate = computed(() => dayjs(props.order.userSubmitDate ?? new Date()).format('MMM D,YYYY'))\n\n return { orderDate, releaseOnHold, orderClick, shippingStatus }\n },\n})\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!./OrderItem.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!./OrderItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderItem.vue?vue&type=template&id=1b735104&scoped=true&\"\nimport script from \"./OrderItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderItem.vue?vue&type=style&index=0&id=1b735104&scoped=true&lang=scss&\"\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 \"1b735104\",\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('vee-validate-form',{ref:\"validate\",scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar valid = ref.valid;\nvar validated = ref.validated;\nreturn [(_vm.order)?_c('modal',{staticClass:\"password-reset\",attrs:{\"is-small\":\"\",\"title\":\"Release From Hold\"},on:{\"input\":_vm.close},scopedSlots:_vm._u([{key:\"footer\",fn:function(){return [_c('button',{staticClass:\"btn rounded-0 border-success btn-success\",attrs:{\"disabled\":!valid},on:{\"click\":_vm.confirm}},[_vm._v(\" Remove Hold \")]),_c('button',{staticClass:\"btn rounded-0 border-secondary btn-secondary\",on:{\"click\":function($event){return _vm.close(false)}}},[_vm._v(\"Cancel\")])]},proxy:true}],null,true),model:{value:(_vm.internalVisibleRef),callback:function ($$v) {_vm.internalVisibleRef=$$v},expression:\"internalVisibleRef\"}},[_c('div',[_c('span',{staticClass:\"title\"},[_vm._v(\"Release Order From Hold\")])]),_c('div',[_c('span',[_vm._v(\"Order Number:\")]),_c('span',{staticClass:\"value\"},[_vm._v(_vm._s(_vm.order.upwardOrderID))])]),_c('div',[_c('span',[_vm._v(\"Status:\")]),_c('span',{staticClass:\"value\"},[_vm._v(_vm._s(_vm.order.statusNote))])]),_c('div',[_c('div',[_c('text-input',{attrs:{\"label\":\"Reason to Remove Hold\",\"vee-validate-rules\":\"required\"},model:{value:(_vm.reason),callback:function ($$v) {_vm.reason=$$v},expression:\"reason\"}})],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\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { OrderFindInfo } from '@/GeneratedTypes/Order/ListInfo/OrderFindInfo'\nimport TextInput from '@/elements/TextInput.vue'\nimport Modal from '@/components/Modal.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\n\nexport default defineComponent({\n name: 'HoldReasonDialog',\n props: {\n order: { type: Object as PropType, required: false },\n visible: { type: Boolean, required: true },\n },\n components: { VeeValidateForm, TextInput, Modal },\n setup(props, ctx) {\n const reason = ref('')\n const internalVisibleRef = ref(false)\n\n watch(\n () => props.visible,\n () => {\n if (props.visible != internalVisibleRef.value) {\n internalVisibleRef.value = props.visible\n }\n },\n { immediate: true }\n )\n\n function close(b: boolean) {\n internalVisibleRef.value = b\n if (!b) {\n reason.value = ''\n ctx.emit('close')\n }\n }\n function confirm() {\n ctx.emit('confirm', props.order, reason.value)\n }\n\n return { reason, confirm, internalVisibleRef, close }\n },\n})\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!./HoldReasonDialog.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!./HoldReasonDialog.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./HoldReasonDialog.vue?vue&type=template&id=006d9fb6&scoped=true&\"\nimport script from \"./HoldReasonDialog.vue?vue&type=script&lang=ts&\"\nexport * from \"./HoldReasonDialog.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 \"006d9fb6\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport { OrderHistorySearchByEnum } from '@/models/Dashboard/OrderHistory'\nimport { useHoldDialog, useOrderHistory } from '@/views/AdminDash/vues/OrderHistory/useOrderHistory'\nimport OrderItem from '@/views/AdminDash/vues/OrderHistory/OrderItem.vue'\nimport Loading from '@/elements/Loading.vue'\nimport HoldReasonDialog from '@/views/AdminDash/vues/OrderHistory/HoldReasonDialog.vue'\nimport { OrderFindInfo } from '@/GeneratedTypes/Order/ListInfo/OrderFindInfo'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\n\nexport default defineComponent({\n components: { HoldReasonDialog, Loading, OrderItem, Alert, RadioGroupInput, SearchInput },\n setup(p, ctx) {\n const searchByList = [\n { id: OrderHistorySearchByEnum.ORDER_ID, label: 'By Order ID' },\n { id: OrderHistorySearchByEnum.ACCOUNT_NUMBER, label: 'Account Number' },\n { id: OrderHistorySearchByEnum.HOLDS, label: 'Show On Holds' },\n { id: OrderHistorySearchByEnum.PARTIALS, label: 'Show Partially Shipped' },\n ]\n const searchBy = ref(OrderHistorySearchByEnum.ORDER_ID.toString())\n const searchTerm = ref('')\n const uh = useOrderHistory()\n function runSearch() {\n const val = parseInt(searchBy.value)\n if (val == OrderHistorySearchByEnum.ORDER_ID) {\n uh.searchOrders({ upwardOrderID: searchTerm.value })\n } else if (val == OrderHistorySearchByEnum.ACCOUNT_NUMBER) {\n uh.searchOrders({ accountNumber: searchTerm.value })\n } else if (val == OrderHistorySearchByEnum.HOLDS) {\n uh.searchOrders({ typeOrderStatusID: 'ONHOLD' })\n } else {\n uh.searchOrders({ typeOrderStatusID: 'PARTIALLY_SHIPPED' })\n }\n }\n const errorMessage = ref('')\n\n async function clicked(o: OrderFindInfo) {\n if (o.typeOrderID && o.typeOrderID.startsWith('RUNNING')) {\n await ctx.root.$router.push(\n `../../admin-dashboard/running-order-detail/${o.upwardProgramID}/${o.upwardOrderID}`\n )\n } else {\n await ctx.root.$router.push(`admin-dashboard/order-detail/${o.upwardLeagueID}/${o.upwardOrderID}`)\n }\n }\n\n const uho = useHoldDialog()\n const releaseMessage = ref('')\n const showReleaseMessage = ref(false)\n async function releaseOrder(o: OrderFindInfo, reason: string) {\n try {\n await uho.release(o, reason)\n releaseMessage.value = 'Order Released'\n showReleaseMessage.value = true\n } catch (e) {\n throw e\n } finally {\n runSearch()\n }\n }\n\n return {\n ...uh,\n releaseOrder,\n showReleaseMessage,\n releaseMessage,\n alertType: AlertTypeEnum.NOTICE,\n ...uho,\n\n searchBy,\n searchTerm,\n searchByList,\n errorMessage,\n clicked,\n runSearch,\n }\n },\n})\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!./RecentOrderHistoryPanel.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!./RecentOrderHistoryPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RecentOrderHistoryPanel.vue?vue&type=template&id=243db9f4&\"\nimport script from \"./RecentOrderHistoryPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./RecentOrderHistoryPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RecentOrderHistoryPanel.vue?vue&type=style&index=0&lang=scss&\"\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('div',[(!_vm.loadingOrders)?_c('div',{staticClass:\"container panel pb-0 pt-0\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('radio-group-input',{attrs:{\"label\":\"Search for Returns\",\"value-property-name\":\"id\",\"text-property-name\":\"label\",\"items-list\":_vm.searchByList,\"item-class\":\"horizontal\"},model:{value:(_vm.searchBy),callback:function ($$v) {_vm.searchBy=$$v},expression:\"searchBy\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('SearchInput',{attrs:{\"allow-blank-input\":\"\",\"searchButtonText\":\"Search\"},on:{\"search-click\":_vm.runSearch},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}})],1)]),_c('div',{staticClass:\"row\"},[(_vm.orderErrors)?_c('div',{staticClass:\"col alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.orderErrors))]):_vm._e()]),_vm._l((_vm.orderHistoryRef),function(order){return _c('div',{key:order.upwardOrderID,staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('order-item',{attrs:{\"order\":order,\"program\":_vm.programFor(order)},on:{\"order-release\":function($event){return _vm.popupReleaseDialog(order)},\"order-click\":function($event){return _vm.clicked(order)}}})],1)])}),_c('hold-reason-dialog',{attrs:{\"order\":_vm.holdingOrder,\"visible\":_vm.isHoldVisible},on:{\"confirm\":_vm.releaseOrder,\"close\":_vm.closeHold}})],2):_c('div',[_c('loading')],1),_c('alert',{attrs:{\"timeout\":3000,\"type\":_vm.alertType},model:{value:(_vm.showReleaseMessage),callback:function ($$v) {_vm.showReleaseMessage=$$v},expression:\"showReleaseMessage\"}},[_vm._v(_vm._s(_vm.releaseMessage))])],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\nimport { defineComponent, ref } from '@vue/composition-api'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport { ReturnsOrderSearchByEnum } from '@/models/Dashboard/ReturnsOrder'\nimport { useHoldDialog, useOrderHistory } from '@/views/AdminDash/vues/OrderHistory/useOrderHistory'\nimport OrderItem from '@/views/AdminDash/vues/OrderHistory/OrderItem.vue'\nimport Loading from '@/elements/Loading.vue'\nimport HoldReasonDialog from '@/views/AdminDash/vues/OrderHistory/HoldReasonDialog.vue'\nimport { OrderFindInfo } from '@/GeneratedTypes/Order/ListInfo/OrderFindInfo'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\n\nexport default defineComponent({\n components: { HoldReasonDialog, Loading, OrderItem, Alert, RadioGroupInput, SearchInput },\n setup(p, ctx) {\n const searchByList = [\n { id: ReturnsOrderSearchByEnum.NEW, label: 'New Returns' },\n { id: ReturnsOrderSearchByEnum.RETURNS_SCM, label: 'Under Review by SCM' },\n { id: ReturnsOrderSearchByEnum.RETURNS_ACCOUNTING, label: 'Ready for Accounting Review' },\n { id: ReturnsOrderSearchByEnum.RETURNS_PS, label: 'Ready for Partner Support' },\n { id: ReturnsOrderSearchByEnum.RETURNS_PENDING_ITEM_RETURN, label: 'Pending Physical Item Return' },\n { id: ReturnsOrderSearchByEnum.ORDER_ID, label: 'Search by Return Order ID' },\n { id: ReturnsOrderSearchByEnum.ACCOUNT_NUMBER, label: 'Search by Account Number' },\n ]\n\n const retOrderTypeString = 'RETURNORDER'\n const searchBy = ref(ReturnsOrderSearchByEnum.NEW.toString())\n const searchTerm = ref('')\n const uh = useOrderHistory()\n function runSearch() {\n const val = parseInt(searchBy.value)\n if (val == ReturnsOrderSearchByEnum.NEW) {\n uh.searchOrders({ typeOrderID: retOrderTypeString, typeOrderStatusID: 'NEW' })\n } else if (val == ReturnsOrderSearchByEnum.RETURNS_SCM) {\n uh.searchOrders({ typeOrderID: retOrderTypeString, typeOrderStatusID: 'RETURNS_SCM' })\n } else if (val == ReturnsOrderSearchByEnum.RETURNS_ACCOUNTING) {\n uh.searchOrders({ typeOrderID: retOrderTypeString, typeOrderStatusID: 'RETURNS_ACCOUNTING' })\n } else if (val == ReturnsOrderSearchByEnum.RETURNS_PS) {\n uh.searchOrders({ typeOrderID: retOrderTypeString, typeOrderStatusID: 'RETURNS_PS' })\n } else if (val == ReturnsOrderSearchByEnum.RETURNS_PENDING_ITEM_RETURN) {\n uh.searchOrders({ typeOrderID: retOrderTypeString, typeOrderStatusID: 'RETURNS_PENDING_ITEM_RETURN' })\n } else if (val == ReturnsOrderSearchByEnum.ORDER_ID) {\n uh.searchOrders({ typeOrderID: retOrderTypeString, upwardOrderID: searchTerm.value })\n } else if (val == ReturnsOrderSearchByEnum.ACCOUNT_NUMBER) {\n uh.searchOrders({ typeOrderID: retOrderTypeString, accountNumber: searchTerm.value })\n }\n }\n const errorMessage = ref('')\n\n async function clicked(o: OrderInfoExt) {\n await ctx.root.$router.push(\n `admin-dashboard/returns-order-detail/${o.upwardLeagueID}/${o.upwardOrderID}`\n )\n }\n\n const uho = useHoldDialog()\n const releaseMessage = ref('')\n const showReleaseMessage = ref(false)\n async function releaseOrder(o: OrderFindInfo, reason: string) {\n try {\n await uho.release(o, reason)\n releaseMessage.value = 'Order Released'\n showReleaseMessage.value = true\n } catch (e) {\n throw e\n } finally {\n runSearch()\n }\n }\n\n return {\n ...uh,\n releaseOrder,\n showReleaseMessage,\n releaseMessage,\n alertType: AlertTypeEnum.NOTICE,\n ...uho,\n\n searchBy,\n searchTerm,\n searchByList,\n errorMessage,\n clicked,\n runSearch,\n }\n },\n})\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!./ReturnsOrderPanel.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!./ReturnsOrderPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReturnsOrderPanel.vue?vue&type=template&id=f05c597a&\"\nimport script from \"./ReturnsOrderPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReturnsOrderPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ReturnsOrderPanel.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"panel\"},[_c('SearchInput',{attrs:{\"searchButonText\":\"Search\",\"search-button-text\":\"Search\",\"label\":\"Search for a Partner\"},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}}),(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),(_vm.error)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.error))]):_c('div',{staticClass:\"table-responsive\"},[(_vm.searchResults.length > 0)?_c('table',{staticClass:\"table table-striped\"},[_vm._m(0),_c('tbody',_vm._l((_vm.searchResults),function(line){return _c('tr',{key:line.accountNumber},[_c('td',[_vm._v(_vm._s(line.name))]),_c('td',[_vm._v(_vm._s(line.accountNumber))]),_c('td',[_vm._v(_vm._s(line.city))]),_c('td',{staticStyle:{\"text-align\":\"center\"}},[_c('a',{attrs:{\"title\":\"Get Ministry Impact Report\"},on:{\"click\":function($event){return _vm.ministryImpactClick(line.accountNumber)}}},[_c('i',{staticClass:\"fas fa-binoculars\"})])]),_c('td',{staticStyle:{\"text-align\":\"center\"}},[_c('a',{attrs:{\"title\":(\"Update Profile:\\n\\tEFT Last 4: \" + (line.eftBankAcctLast4 ? line.eftBankAcctLast4 : 'Not Set') + \"\\n\\tFan Gear URL: \" + (line.fanGearCustomURL ? 'Is Set' : 'Not Set') + \"\\n\\tOrder Hold Note: \" + (line.placeOrdersOnHoldNote ? line.placeOrdersOnHoldNote.substring(0, 30) : 'Not Set') + (line.placeOrdersOnHoldNote.length > 30 ? '...' : ''))},on:{\"click\":function($event){return _vm.profileClicked(\n line.accountNumber,\n line.eftBankAcctLast4,\n line.placeOrdersOnHoldNote,\n line.fanGearCustomURL\n )}}},[_c('i',{staticClass:\"far fa-file-alt\"})])]),_c('td',[_c('a',{attrs:{\"title\":\"Impersonate User\"},on:{\"click\":function($event){return _vm.impersonate(line.accountNumber)}}},[_c('i',{staticClass:\"fas fa-user-friends\"})])])])}),0)]):_vm._e()]),(_vm.isProfileConfirmShowing)?_c('ConfirmationModal',{attrs:{\"show\":_vm.isProfileConfirmShowing,\"is-small\":\"\",\"title\":(\"Update Profile for \" + _vm.accountNumber)},on:{\"onResponse\":_vm.confirmProfileClick},scopedSlots:_vm._u([{key:\"confirm\",fn:function(){return [_vm._v(\" Save \")]},proxy:true},{key:\"cancel\",fn:function(){return [_vm._v(\" Cancel \")]},proxy:true}],null,false,1561249850)},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"EFT Last 4\"},model:{value:(_vm.eftLast4),callback:function ($$v) {_vm.eftLast4=$$v},expression:\"eftLast4\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Fan Gear Custom URL\",\"subText\":\"Leave blank to use default storefront\"},model:{value:(_vm.fanGearURL),callback:function ($$v) {_vm.fanGearURL=$$v},expression:\"fanGearURL\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('memo-input',{attrs:{\"cols\":80,\"rows\":4,\"label\":\"Order Hold Note\",\"subText\":\"Leave blank to undo hold\"},model:{value:(_vm.onHoldNote),callback:function ($$v) {_vm.onHoldNote=$$v},expression:\"onHoldNote\"}})],1)])])]):_vm._e(),_c('alert',{attrs:{\"timeout\":15000,\"type\":_vm.alertType},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(_vm._s(_vm.alertText))])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Name\")]),_c('th',[_vm._v(\"Account #\")]),_c('th',[_vm._v(\"City\")]),_c('th',[_vm._v(\"Ministry Impact\")]),_c('th',[_vm._v(\"Update Profile\")]),_c('th',[_vm._v(\"Imp.\")])])])}]\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\nimport { computed, defineComponent, ref, watch } from '@vue/composition-api'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport partnersClient, { PartnerSearchResultsType } from '@/clients/partnersClient'\nimport Loading from '@/elements/Loading.vue'\nimport { ImpersonationPayload } from '@/clients/authorizationClient'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport { AccountProfile } from '@/models/Partner/AccountProfile'\n\ninterface SearchResults {\n name: string\n city: string\n accountNumber: number\n eftBankAcctLast4: string\n placeOrdersOnHoldNote: string\n fanGearCustomURL: string\n}\n\nexport default defineComponent({\n components: { SearchInput, Loading, ConfirmationModal, TextInput, MemoInput, Alert },\n setup(p, ctx) {\n // set to an error if there is one.\n const error = ref('')\n const searchTerm = ref('')\n const loading = ref(false)\n const results = ref([])\n const searchResults = computed(() => {\n return results.value.map((x) => {\n const split_result = x.name?.match(/(.*)-(.*)?$/) ?? []\n let name = x.name\n let city = 'n/a'\n if (split_result.length == 3) {\n name = split_result[1]\n city = split_result[2]\n }\n return {\n name,\n city,\n accountNumber: x.accountNumber,\n eftBankAcctLast4: x.eftBankAcctLast4,\n placeOrdersOnHoldNote: x.placeOrdersOnHoldNote,\n fanGearCustomURL: x.fanGearCustomURL,\n } as SearchResults\n })\n })\n\n const isProfileConfirmShowing = ref(false)\n const eftLast4 = ref('')\n const showAlert = ref(false)\n const alertText = ref('')\n const accountNumber = ref('')\n\n const onHoldNote = ref('')\n const fanGearURL = ref('')\n\n watch(\n () => searchTerm.value,\n async () => {\n await doSearch()\n }\n )\n\n const doSearch = async () => {\n if (searchTerm.value.length >= 3) {\n error.value = ''\n try {\n loading.value = true\n const result = await partnersClient.searchPartners(searchTerm.value)\n results.value = result ?? []\n if (!results.value?.length) {\n error.value = 'No results returned'\n }\n } catch (e) {\n error.value =\n e?.message || e?.errorObject?.message || 'An unexpected error occurred searching for partners'\n loading.value = false\n throw e\n } finally {\n loading.value = false\n }\n }\n }\n\n function impersonate(acct: string) {\n ctx.emit('impersonate', { accountNumber: acct } as ImpersonationPayload)\n }\n\n async function ministryImpactClick(acct: string) {\n await ctx.root.$router.push(`AdminDash/Reports/MinistryImpact/${acct}`)\n }\n\n async function confirmProfileClick(b: boolean) {\n isProfileConfirmShowing.value = false\n if (b) {\n try {\n loading.value = true\n\n await setProfile(accountNumber.value, eftLast4.value, onHoldNote.value, fanGearURL.value)\n\n showAlert.value = true\n await doSearch()\n alertText.value = `Profile updated for ${accountNumber.value}.`\n } catch (e) {\n throw e\n } finally {\n loading.value = false\n }\n }\n }\n\n function profileClicked(acct: string, eft: string, note: string, url: string) {\n accountNumber.value = acct\n eftLast4.value = eft\n onHoldNote.value = note\n fanGearURL.value = url\n isProfileConfirmShowing.value = true\n }\n\n async function setProfile(acct: string, eft: string, note: string, url: string) {\n await partnersClient.updateAccountProfile(acct, {\n accountNumber: acct,\n eftLast4: eft,\n onHoldNote: note,\n fanGearCustomURL: url,\n } as AccountProfile)\n }\n\n /*\n async function confirmEFTClick(b: boolean) {\n isEFTConfirmShowing.value = false\n if (b) {\n try {\n loading.value = true\n\n await setEFTLast4(accountNumber.value, eftLast4.value)\n\n showAlert.value = true\n await doSearch()\n alertText.value = `EFT Last 4 updated for ${accountNumber.value}.`\n } catch (e) {\n throw e\n } finally {\n loading.value = false\n }\n }\n }\n\n function eftClicked(acct: string, eft: string) {\n accountNumber.value = acct\n eftLast4.value = eft\n isEFTConfirmShowing.value = true\n }\n\n async function setEFTLast4(acct: string, eft: string) {\n await partnersClient.updateAccountEFTLast4(acct, eft)\n }\n\n async function confirmOnHoldClick(b: boolean) {\n isOnHoldConfirmShowing.value = false\n if (b) {\n try {\n loading.value = true\n\n await setOnHoldNote(accountNumber.value, onHoldNote.value)\n\n showAlert.value = true\n await doSearch()\n alertText.value = `Order On Hold Note updated for ${accountNumber.value}.`\n } catch (e) {\n throw e\n } finally {\n loading.value = false\n }\n }\n }\n\n function onHoldClicked(acct: string, note: string) {\n accountNumber.value = acct\n onHoldNote.value = note\n isOnHoldConfirmShowing.value = true\n }\n\n async function setOnHoldNote(acct: string, note: string) {\n await partnersClient.updateAccountPlaceOrdersOnHoldNote(acct, note)\n }\n*/\n\n return {\n searchTerm,\n loading,\n searchResults,\n impersonate,\n error,\n profileClicked,\n accountNumber,\n eftLast4,\n isProfileConfirmShowing,\n confirmProfileClick,\n ministryImpactClick,\n onHoldNote,\n fanGearURL,\n showAlert,\n alertText,\n alertType: AlertTypeEnum.NOTICE,\n }\n },\n})\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!./PartnerSearchPanel.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!./PartnerSearchPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PartnerSearchPanel.vue?vue&type=template&id=2096e5bf&\"\nimport script from \"./PartnerSearchPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./PartnerSearchPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PartnerSearchPanel.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"panel\"},[_c('SearchInput',{attrs:{\"searchButonText\":\"Search\",\"search-button-text\":\"Search\",\"label\":\"Search for a Program\"},on:{\"search-click\":_vm.searchResults},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}}),(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),(_vm.error)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.error))]):_c('div',[(_vm.results)?_c('div',{staticClass:\"flex\"},[_c('div',{staticClass:\"row\"},[_c('strong',[_vm._v(_vm._s(_vm.results.leagueName))])]),_c('div',{staticClass:\"row\"},[_c('small',[_vm._v(\" \"+_vm._s(_vm.getLeagueOwnerName()))])]),_c('div',{staticClass:\"row align-items-end bg-white mt-2 justify-content-between\"},[_c('div',{staticClass:\"col-auto\"},[_vm._m(0),_c('div',{staticClass:\"row justify-center\"},[_c('a',{attrs:{\"title\":\"Impersonate User\"},on:{\"click\":_vm.impersonate}},[_c('i',{staticClass:\"fas fa-user-friends\"})])])]),_c('div',{staticClass:\"col-auto\"},[_vm._m(1),_c('div',{staticClass:\"row justify-center\"},[(\n _vm.results.myLeagueInfo && !_vm.results.myLeagueInfo.bailedReason && _vm.results.myLeagueInfo.isPrivate\n )?_c('a',{staticClass:\"green\",attrs:{\"title\":\"Unmark Private\"},on:{\"click\":_vm.notPrivateClicked}},[_c('i',{staticClass:\"fas fa-eye\"})]):_vm._e(),_vm._v(\" \"),(\n _vm.results.myLeagueInfo &&\n !_vm.results.myLeagueInfo.bailedReason &&\n !_vm.results.myLeagueInfo.isPrivate\n )?_c('a',{staticClass:\"black\",attrs:{\"title\":\"Mark Private\"},on:{\"click\":_vm.privateClicked}},[_c('i',{staticClass:\"fas fa-eye\"})]):_vm._e()])]),(_vm.results.myLeagueInfo && !_vm.results.myLeagueInfo.bailedReason)?_c('div',{staticClass:\"col-auto\"},[_vm._m(2),_c('div',{staticClass:\"row justify-center\"},[_c('a',{attrs:{\"title\":\"Cancel Program\"},on:{\"click\":_vm.cancelClicked}},[_c('i',{staticClass:\"fas fa-minus-circle\"})])])]):_vm._e(),(\n _vm.results.myLeagueInfo &&\n !_vm.results.myLeagueInfo.bailedReason &&\n _vm.results.myLeagueInfo.programs &&\n _vm.results.myLeagueInfo.programs.length > 1\n )?_c('div',{staticClass:\"col-auto\"},[_vm._m(3),_c('div',{staticClass:\"row justify-center\"},[_vm._v(\" \"),_c('a',{attrs:{\"title\":\"Remove Cheer\"},on:{\"click\":_vm.removeCheerClicked}},[_c('i',{staticClass:\"fas fa-unlink\"})])])]):_vm._e(),_c('div',{staticClass:\"col-auto\"},[_vm._m(4),_c('div',{staticClass:\"row justify-center\"},[(_vm.results.myLeagueInfo.programs && !_vm.results.myLeagueInfo.programs[0].noLimitsDraft)?_c('a',{staticClass:\"black\",attrs:{\"title\":\"Enable\"},on:{\"click\":_vm.enableOverrideDraftClicked}},[_c('i',{staticClass:\"fas fa-user-times\"})]):_vm._e(),_vm._v(\" \"),(_vm.results.myLeagueInfo.programs && _vm.results.myLeagueInfo.programs[0].noLimitsDraft)?_c('a',{staticClass:\"green\",attrs:{\"title\":\"Disable\"},on:{\"click\":_vm.disableOverrideDraftClicked}},[_c('i',{staticClass:\"fas fa-user-check\"})]):_vm._e()])]),(_vm.results.myLeagueInfo.canDelete)?_c('div',{staticClass:\"col-auto\"},[_vm._m(5),_c('div',{staticClass:\"row justify-center\"},[_c('a',{attrs:{\"title\":\"Delete Program\"},on:{\"click\":_vm.deleteProgramClicked}},[_c('i',{staticClass:\"fas fa-trash\"})])])]):_vm._e(),(_vm.hasCustomJersey)?_c('div',{staticClass:\"col-auto\"},[_vm._m(6),_c('div',{staticClass:\"row justify-center\"},[_c('a',{attrs:{\"title\":\"Manage Custom Jersey Apparel Info\"},on:{\"click\":_vm.manageSNumbers}},[_c('i',{staticClass:\"fas fa-tshirt\"})])])]):_vm._e(),(_vm.showManualOrder)?_c('div',{staticClass:\"col-auto\"},[_vm._m(7),_c('div',{staticClass:\"row justify-center\"},[_c('a',{attrs:{\"title\":\"Place Manual Order\"},on:{\"click\":_vm.placeManualOrderClicked}},[_c('i',{staticClass:\"fas fa-file-invoice\"})])])]):_vm._e()])]):_vm._e()]),(_vm.isConfirmShowing)?_c('ConfirmationModal',{attrs:{\"show\":_vm.isConfirmShowing,\"is-small\":\"\",\"title\":\"Confirm\"},on:{\"onResponse\":_vm.confirmClick}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Do you want to \"+_vm._s(_vm.confirmText)+\"?\")])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[(_vm.showReason)?_c('memo-input',{attrs:{\"label\":\"Reason\",\"cols\":80,\"rows\":4},model:{value:(_vm.reason),callback:function ($$v) {_vm.reason=$$v},expression:\"reason\"}}):_vm._e()],1)])])]):_vm._e(),(_vm.isSNumbersShowing)?_c('confirmation-modal',{attrs:{\"show\":_vm.isSNumbersShowing,\"title\":\"Manage Custom Jersey Apparel Info\",\"is-small\":false},on:{\"onResponse\":_vm.setSNumbers},scopedSlots:_vm._u([{key:\"confirm\",fn:function(){return [_vm._v(\" Save \")]},proxy:true},{key:\"cancel\",fn:function(){return [_vm._v(\" Cancel \")]},proxy:true}],null,false,1561249850)},_vm._l((_vm.sNumbers.products),function(prod,prodIndex){return _c('div',{key:prod.upwardProductID,staticClass:\"container\",class:{ even: _vm.isEven(prodIndex), odd: !_vm.isEven(prodIndex) }},[_c('div',{staticClass:\"row\"},[_vm._v(_vm._s(prod.productDescription))]),_vm._l((prod.sNumbers),function(item,index){return _c('div',{key:((item.typeColorID) + \"-snumber\"),staticClass:\"container\",class:{ even: _vm.isEven(index + prodIndex), odd: !_vm.isEven(index + prodIndex) }},[(item.typeColorID != 'N/A')?_c('div',{staticClass:\"row\"},[_vm._v(\" \"+_vm._s(_vm.getColorDescription(item.typeColorID))+\" \")]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-4\"},[_c('text-input',{key:(\"key-\" + (item.typeColorID) + \"-AM\"),attrs:{\"vee-validate-rules\":\"required\",\"label\":\"Adult Male Item Code\",\"required\":\"\"},model:{value:(item.adultMaleProductItemCode),callback:function ($$v) {_vm.$set(item, \"adultMaleProductItemCode\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"item.adultMaleProductItemCode\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_c('text-input',{key:(\"key-\" + (item.typeColorID) + \"-AF\"),attrs:{\"vee-validate-rules\":\"required\",\"label\":\"Adult Female Item Code\",\"required\":\"\"},model:{value:(item.adultFemaleProductItemCode),callback:function ($$v) {_vm.$set(item, \"adultFemaleProductItemCode\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"item.adultFemaleProductItemCode\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_c('text-input',{key:(\"key-\" + (item.typeColorID) + \"-YM\"),attrs:{\"vee-validate-rules\":\"required\",\"label\":\"Youth Male Item Code\",\"required\":\"\"},model:{value:(item.youthMaleProductItemCode),callback:function ($$v) {_vm.$set(item, \"youthMaleProductItemCode\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"item.youthMaleProductItemCode\"}})],1),_c('div',{staticClass:\"col-sm-4\"},[_c('text-input',{key:(\"key-\" + (item.typeColorID) + \"-YF\"),attrs:{\"vee-validate-rules\":\"required\",\"label\":\"Youth Female Item Code\",\"required\":\"\"},model:{value:(item.youthFemaleProductItemCode),callback:function ($$v) {_vm.$set(item, \"youthFemaleProductItemCode\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"item.youthFemaleProductItemCode\"}})],1)])])})],2)}),0):_vm._e(),_c('alert',{attrs:{\"timeout\":15000,\"type\":_vm.alertType},model:{value:(_vm.showAlert),callback:function ($$v) {_vm.showAlert=$$v},expression:\"showAlert\"}},[_vm._v(_vm._s(_vm.alertText))])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row text-no-wrap\"},[_c('strong',[_vm._v(\"Impersonate\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row text-no-wrap\"},[_c('strong',[_vm._v(\"Private\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row text-no-wrap\"},[_c('strong',[_vm._v(\"Cancel\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row text-no-wrap\"},[_c('strong',[_vm._v(\"Remove Cheer\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row text-no-wrap\"},[_c('strong',[_vm._v(\"Draft Override\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row text-no-wrap\"},[_c('strong',[_vm._v(\"Delete\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row text-no-wrap\"},[_c('strong',[_vm._v(\"Manage \\\"S\\\" Numbers\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row text-no-wrap\"},[_c('strong',[_vm._v(\"Place Manual/Error Order\")])])}]\n\nexport { render, staticRenderFns }","export interface LeagueProgramAugusta {\n leagueID: number\n typeProgramID: string\n products: LeagueProgramAugustaProduct[]\n}\n\nexport interface LeagueProgramAugustaProduct {\n upwardProductID: string\n productDescription: string\n sNumbers: LeagueProgramAugustaSNumber[]\n}\nexport interface LeagueProgramAugustaSNumber {\n typeColorID: string\n adultMaleProductItemCode: string\n adultFemaleProductItemCode: string\n youthMaleProductItemCode: string\n youthFemaleProductItemCode: string\n}\n\nexport function getEmptyLeagueProgramAugusta(): LeagueProgramAugusta {\n return {\n leagueID: 0,\n typeProgramID: '',\n products: [getEmptyLeagueProgramAugustaProduct()],\n }\n}\n\nexport function getEmptyLeagueProgramAugustaProduct(): LeagueProgramAugustaProduct {\n return {\n upwardProductID: '',\n productDescription: '',\n sNumbers: [getEmptyLeagueProgramAugustaSNumber()],\n }\n}\n\nexport function getEmptyLeagueProgramAugustaSNumber(): LeagueProgramAugustaSNumber {\n return {\n typeColorID: '',\n adultMaleProductItemCode: '',\n adultFemaleProductItemCode: '',\n youthMaleProductItemCode: '',\n youthFemaleProductItemCode: '',\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, computed, onMounted } from '@vue/composition-api'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport programsClient from '@/clients/programsClient'\nimport leaguesClient from '@/clients/leaguesClient'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport { ImpersonationPayload } from '@/clients/authorizationClient'\nimport { LeagueProgramAugusta, getEmptyLeagueProgramAugusta } from '@/models/League/LeagueProgramAugusta'\nimport { getColorDescription } from '@/lib/common/upwardColorTypes'\nimport store from '@/store'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport { LeagueAccountInfo } from 'src/GeneratedTypes/ListInfo/LeagueAccountInfo'\n\nexport default defineComponent({\n name: 'ProgramSearchPanel',\n components: { MemoInput, ConfirmationModal, Alert, SearchInput, Loading, TextInput },\n setup(p, ctx) {\n // set to an error if there is one.\n const error = ref('')\n //clear an error in 20 seconds automatically\n watch(\n () => error.value,\n (a) => {\n if (a) {\n setTimeout(() => (error.value = ''), 20000)\n }\n }\n )\n\n onMounted(() => {\n store.dispatch.colorTypes.fetchAll(false) //get these cached up\n store.dispatch.leagueTypes.fetchAll(false) //get these cached up\n })\n\n const searchTerm = ref('')\n const loading = ref(false)\n const showAlert = ref(false)\n const alertText = ref('')\n const isConfirmShowing = ref(false)\n const confirmText = ref('')\n const showReason = ref(false)\n const reason = ref('')\n const isSNumbersShowing = ref(false)\n const sNumbers = ref(getEmptyLeagueProgramAugusta())\n\n const results = ref(null)\n // when called from the search input, has the latest term, when called by the body of this function, will use the old value\n const searchResults = async (term?: string) => {\n try {\n loading.value = true\n error.value = ''\n\n if (term) {\n searchTerm.value = term\n }\n\n results.value = await programsClient.retrieve(searchTerm.value)\n } catch (e) {\n error.value = 'No results returned'\n\n results.value = null\n } finally {\n loading.value = false\n }\n }\n\n let confirmAction:\n | ((upwardLeagueID: string) => Promise)\n | ((upwardLeagueID: string, reason: string) => Promise)\n | null = null\n let successAlertText = ''\n let upwardLeagueID = ''\n\n async function confirmClick(b: boolean) {\n isConfirmShowing.value = false\n if (confirmAction && b) {\n try {\n loading.value = true\n\n await confirmAction(upwardLeagueID, reason.value)\n\n showAlert.value = true\n await searchResults()\n alertText.value = successAlertText\n } catch (e) {\n throw e\n } finally {\n loading.value = false\n }\n }\n }\n\n const wrapCallNotify = async (\n fn:\n | ((upwardLeagueID: string, reason: string) => Promise)\n | ((upwardLeagueID: string) => Promise),\n thingConfirming: string,\n successText: string,\n showReasonFlag?: boolean\n // eslint-disable-next-line require-await\n ) => {\n if (results.value) {\n confirmAction = fn\n upwardLeagueID = results.value.upwardLeagueID ?? ''\n confirmText.value = thingConfirming\n reason.value = ''\n successAlertText = successText\n showReason.value = !!showReasonFlag\n isConfirmShowing.value = true\n }\n }\n\n async function cancelClicked() {\n await wrapCallNotify(cancel, 'Cancel the Program', 'Program Cancelled', true)\n }\n\n async function removeCheerClicked() {\n await wrapCallNotify(removeCheer, 'Remove Cheer from the Program', 'Cheer Removed')\n }\n\n async function deleteProgramClicked() {\n await wrapCallNotify(deleteProgram, 'Delete the Program', 'Program removed', true)\n }\n\n async function privateClicked() {\n await wrapCallNotify((s: string) => setPrivacyMode(s, true), 'Mark Private', 'Program marked private')\n }\n\n async function manageSNumbers() {\n if (results.value) {\n sNumbers.value = await leaguesClient.retrieveLeagueProgramAugusta(\n results.value.upwardLeagueID!,\n results.value.programTypeID! //for now we can assume that the sport program is the only one with the custom jersey (ie: cheer does NOT offer these)\n )\n isSNumbersShowing.value = true\n }\n }\n\n async function notPrivateClicked() {\n await wrapCallNotify(\n (s: string) => setPrivacyMode(s, false),\n 'Unmark Private',\n 'Program no longer private'\n )\n }\n\n async function enableOverrideDraftClicked() {\n await wrapCallNotify(\n (s: string) => overrideDraft(s, true),\n 'Enable Draft Override',\n 'Draft Override Enabled',\n false\n )\n }\n\n async function disableOverrideDraftClicked() {\n await wrapCallNotify(\n (s: string) => overrideDraft(s, false),\n 'Disable Draft Override',\n 'Draft Override Disabled',\n false\n )\n }\n\n async function cancel(upwardLeagueID: string, reason: string) {\n await programsClient.setCancelled(upwardLeagueID, reason)\n }\n async function removeCheer(upwardLeagueID: string) {\n await programsClient.removeCheer(upwardLeagueID)\n }\n\n async function deleteProgram(upwardLeagueID: string, reason: string) {\n await programsClient.deleteLeague(upwardLeagueID, reason)\n }\n\n async function overrideDraft(upwardLeagueID: string, overrideDraft: boolean) {\n await programsClient.overrideDraft(upwardLeagueID, overrideDraft)\n }\n\n async function setPrivacyMode(upwardLeagueID: string, isPrivate: boolean) {\n await programsClient.setPrivacy(upwardLeagueID, isPrivate)\n }\n\n async function setSNumbers(b: boolean) {\n let hasError = false\n if (results.value && sNumbers.value && b) {\n try {\n await leaguesClient.updateLeagueProgramAugusta(results.value.upwardLeagueID!, sNumbers.value)\n } catch (e) {\n hasError = true\n throw e //just let the built-in handler deal with this. sick of trying to get \"error.value\" to work.\n }\n }\n\n isSNumbersShowing.value = hasError\n }\n\n function getLeagueOwner(): LeagueAccountInfo | null {\n let retval = null\n if (results.value && results.value.myLeagueInfo && results.value.myLeagueInfo.accounts) {\n const account = results.value.myLeagueInfo.accounts.find((x) => x.leagueOwner)\n if (account) {\n retval = account\n }\n }\n\n return retval\n }\n\n function getLeagueOwnerName(): string | null {\n let retval = null\n const account = getLeagueOwner()\n if (account != null) {\n retval = account.partnerInfo?.name ?? null\n }\n\n return retval\n }\n\n function impersonate() {\n const account = getLeagueOwner()\n if (account != null) {\n const accountNumber = account.accountNumber\n ctx.emit('impersonate', { accountNumber } as ImpersonationPayload)\n }\n }\n\n const hasCustomJersey = computed(() =>\n results.value?.myLeagueInfo?.productOfferingConfig?.details?.some((d) => d.hasSNumbers)\n )\n\n async function placeManualOrderClicked() {\n const account = getLeagueOwner()\n if (account != null) {\n const accountNumber = account.accountNumber\n await store.dispatch.authorization.impersonate({ accountNumber } as ImpersonationPayload)\n store.dispatch.orders.clearCachedOrder({\n orderType: OrderTypesEnum.manual,\n upwardLeagueID: results.value?.upwardLeagueID ?? '',\n })\n\n await ctx.root.$router.push(`/admin-dashboard/${results.value?.upwardLeagueID ?? ''}/manual-order/0`)\n }\n }\n\n function isEven(row: number) {\n return row % 2 == 0\n }\n\n const isCamp = computed(\n () => store.getters.leagueTypes.byUpwardTypeId(results.value?.myLeagueInfo?.typeLeagueID)?.isCamp\n )\n\n const showManualOrder = computed(\n () =>\n !isCamp.value &&\n (store.getters.authorization.isCurrentUserASuperAdmin ||\n store.getters.authorization.isSystemsAndSupport)\n )\n\n return {\n searchTerm,\n loading,\n searchResults,\n showAlert,\n alertText,\n error,\n confirmClick,\n cancelClicked,\n removeCheerClicked,\n deleteProgramClicked,\n privateClicked,\n notPrivateClicked,\n results,\n showReason,\n reason,\n enableOverrideDraftClicked,\n disableOverrideDraftClicked,\n placeManualOrderClicked,\n confirmText,\n isConfirmShowing,\n alertType: AlertTypeEnum.NOTICE,\n impersonate,\n hasCustomJersey,\n manageSNumbers,\n setSNumbers,\n isSNumbersShowing,\n sNumbers,\n getColorDescription,\n isEven,\n showManualOrder,\n getLeagueOwner,\n getLeagueOwnerName,\n }\n },\n})\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!./ProgramSearchPanel.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!./ProgramSearchPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProgramSearchPanel.vue?vue&type=template&id=8a865ffa&\"\nimport script from \"./ProgramSearchPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProgramSearchPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProgramSearchPanel.vue?vue&type=style&index=0&lang=scss&\"\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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, onMounted, ref } from '@vue/composition-api'\nimport Card from '@/components/Card.vue'\nimport RegistrationTransactionsPanel from '@/views/AdminDash/vues/RegistrationTransactionsPanel.vue'\nimport UserManagementPanel from '@/views/AdminDash/vues/UserManagementPanel.vue'\nimport RecentOrderHistoryPanel from '@/views/AdminDash/vues/RecentOrderHistoryPanel.vue'\nimport ReturnsOrderPanel from '@/views/AdminDash/vues/ReturnsOrderPanel.vue'\nimport PartnerSearchPanel from '@/views/AdminDash/vues/PartnerSearchPanel.vue'\nimport InfoModal from '@/components/InfoModal.vue'\nimport store from '@/store'\nimport ProgramSearchPanel from '@/views/AdminDash/vues/ProgramSearchPanel.vue'\nimport { AlertInfo } from '@/GeneratedTypes/ListInfo/AlertInfo'\nimport alertClient from '@/clients/alertClient'\n\nexport default defineComponent({\n components: {\n Card,\n ProgramSearchPanel,\n PartnerSearchPanel,\n RecentOrderHistoryPanel,\n ReturnsOrderPanel,\n UserManagementPanel,\n RegistrationTransactionsPanel,\n InfoModal,\n },\n\n setup(p, ctx) {\n const disabled = ref(false)\n const adminAlerts = ref(null)\n const showAdminAlertsModal = ref(false)\n\n // quick guard of this component.\n onMounted(async () => {\n if (!store.getters.authorization.isCurrentUserAnAdmin) {\n disabled.value = true\n }\n\n adminAlerts.value = await alertClient.retrieveAdminAlerts()\n showAdminAlertsModal.value = adminAlerts.value != null && adminAlerts.value.length > 0\n })\n\n const isUserReallyASuperAdmin = computed(() => store.getters.authorization.isCurrentUserASuperAdmin)\n\n async function impersonate(payload: { userName?: string; accountNumber: string }) {\n await store.dispatch.authorization.impersonate(payload)\n await ctx.root.$router.push('/')\n }\n return { disabled, impersonate, isUserReallyASuperAdmin, showAdminAlertsModal, adminAlerts }\n },\n})\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!./Dashboard.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!./Dashboard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Dashboard.vue?vue&type=template&id=62197b2c&\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=ts&\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Dashboard.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col-sm-auto\"},[_c('h5',{staticClass:\"px-3\"},[_c('router-link',{attrs:{\"to\":\"/admin-dashboard\"}},[_vm._v(\"Admin Dashboard\")]),_vm._v(\" > OPR Transaction Search \")],1)])]),_vm._m(0),_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"container panel\"},[_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"League Number\"},model:{value:(_vm.searchTermLeague),callback:function ($$v) {_vm.searchTermLeague=$$v},expression:\"searchTermLeague\"}})],1),_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Confirmation Number\"},model:{value:(_vm.searchTermConfirmation),callback:function ($$v) {_vm.searchTermConfirmation=$$v},expression:\"searchTermConfirmation\"}})],1)]),_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Account Number\"},model:{value:(_vm.searchTermAccount),callback:function ($$v) {_vm.searchTermAccount=$$v},expression:\"searchTermAccount\"}})],1),_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Credit Card Last 4\"},model:{value:(_vm.searchTermCredit),callback:function ($$v) {_vm.searchTermCredit=$$v},expression:\"searchTermCredit\"}})],1)]),_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Last Name\",\"enabled\":!_vm.isLastNameDisabled,\"sub-label\":(\"\" + (_vm.isLastNameDisabled ? 'Search by at least one other field to enable lastname' : ''))},model:{value:(_vm.searchTermLast),callback:function ($$v) {_vm.searchTermLast=$$v},expression:\"searchTermLast\"}})],1),_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Invoice Number\"},model:{value:(_vm.searchTermInvoice),callback:function ($$v) {_vm.searchTermInvoice=$$v},expression:\"searchTermInvoice\"}})],1)])])]),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn btn-success\",class:{ disabled: _vm.areWeReadyToSearch },attrs:{\"disabled\":_vm.areWeReadyToSearch},on:{\"click\":_vm.search}},[_c('i',{staticClass:\"fa fa-search\"}),_vm._v(\" Find Registrations \")])])]),(!_vm.loading)?_c('div',{staticClass:\"row search-field\"},_vm._l((_vm.results),function(line){return _c('div',{key:line.id,staticClass:\"col-6\"},[_c('o-p-r-transaction-item',{attrs:{\"transaction\":line}})],1)}),0):_c('div',[_c('loading')],1),(_vm.errorMessage)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.errorMessage))]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col\"},[_vm._v(\" Search for an OPR Transaction by supplying information for at least one field below (other than last name) \")])])}]\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\nimport { computed, defineComponent, ref } from '@vue/composition-api'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport { TransactionSearchByEnum } from '@/models/Dashboard/TransactionSearch'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport { useRegistrationFinder } from '@/views/AdminDash/vues/RegistrationTransactionPanel/useRegistrationFinder'\nimport OPRTransactionItem from '@/views/AdminDash/vues/RegistrationTransactionPanel/OPRTransactionItem.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Loading from '@/elements/Loading.vue'\n\nexport default defineComponent({\n components: { Loading, TextInput, OPRTransactionItem, RadioGroupInput, SearchInput },\n setup() {\n const searchByList = [\n { id: TransactionSearchByEnum.CONFIRMATION, label: 'Confirmation #' },\n { id: TransactionSearchByEnum.INVOICE, label: 'Invoice #' },\n { id: TransactionSearchByEnum.LEAGUE, label: 'League Number' },\n ]\n const searchTermLeague = ref('')\n const searchTermConfirmation = ref('')\n const searchTermAccount = ref('')\n const searchTermCredit = ref('')\n const searchTermLast = ref('')\n const searchTermInvoice = ref('')\n const isLastNameDisabled = computed(\n () =>\n !(\n searchTermCredit.value ||\n searchTermLeague.value ||\n searchTermInvoice.value ||\n searchTermAccount.value ||\n searchTermConfirmation.value\n )\n )\n const areWeReadyToSearch = computed(() => !isLastNameDisabled)\n const registrationFinder = useRegistrationFinder()\n const loading = ref(false)\n const errorMessage = ref('')\n async function search() {\n errorMessage.value = ''\n loading.value = true\n try {\n await registrationFinder.findRegistration({\n accountNumber: searchTermAccount.value,\n confirmationNumber: searchTermConfirmation.value,\n invoiceNumber: searchTermInvoice.value,\n lastName: searchTermLast.value,\n upwardLeagueID: searchTermLeague.value,\n creditCardLastFour: searchTermCredit.value,\n })\n if (!registrationFinder.registrationResults.value?.length) {\n errorMessage.value = 'No results found. Try a different search criteria.'\n }\n } catch (e) {\n errorMessage.value = 'Could not complete search. ' + (e?.errorObject?.message || '')\n } finally {\n loading.value = false\n }\n }\n\n return {\n search,\n errorMessage,\n loading,\n areWeReadyToSearch,\n isLastNameDisabled,\n searchTermAccount,\n searchTermConfirmation,\n searchTermCredit,\n searchTermInvoice,\n searchTermLast,\n searchTermLeague,\n searchByList,\n results: registrationFinder.registrationResults,\n }\n },\n})\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!./RegistrationTransactionsScreen.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!./RegistrationTransactionsScreen.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RegistrationTransactionsScreen.vue?vue&type=template&id=119b48fb&\"\nimport script from \"./RegistrationTransactionsScreen.vue?vue&type=script&lang=ts&\"\nexport * from \"./RegistrationTransactionsScreen.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RegistrationTransactionsScreen.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col-sm-auto\"},[_c('h5',{staticClass:\"px-3\"},[_c('router-link',{attrs:{\"to\":\"/admin-dashboard\"}},[_vm._v(\"Admin Dashboard\")]),_vm._v(\" > Order Search \")],1)])]),_vm._m(0),_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"container-fluid panel pb-0 pt-0\"},[_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('text-input',{attrs:{\"label\":\"Upward Order ID\"},model:{value:(_vm.searchUpwardOrderID),callback:function ($$v) {_vm.searchUpwardOrderID=$$v},expression:\"searchUpwardOrderID\"}})],1),_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('text-input',{attrs:{\"label\":\"Upward League ID\"},model:{value:(_vm.searchUpwardLeagueID),callback:function ($$v) {_vm.searchUpwardLeagueID=$$v},expression:\"searchUpwardLeagueID\"}})],1)]),_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[(_vm.validType && _vm.validType.length > 1)?_c('select-input',{attrs:{\"blank-item-value\":\"\",\"blank-item-text\":\"n/a\",\"valuePropertyName\":\"id\",\"textPropertyName\":\"value\",\"items-list\":_vm.validType,\"label\":\"Order Type\"},model:{value:(_vm.searchOrderType),callback:function ($$v) {_vm.searchOrderType=$$v},expression:\"searchOrderType\"}}):_c('loading')],1),_c('div',{staticClass:\"col pb-0 pt-0\"},[(_vm.validStatus && _vm.validStatus.length > 1)?_c('select-input',{attrs:{\"blank-item-value\":\"\",\"blank-item-text\":\"n/a\",\"valuePropertyName\":\"id\",\"textPropertyName\":\"value\",\"items-list\":_vm.validStatus,\"label\":\"Order Status\"},model:{value:(_vm.searchOrderStatus),callback:function ($$v) {_vm.searchOrderStatus=$$v},expression:\"searchOrderStatus\"}}):_c('loading')],1)]),_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('select-input',{attrs:{\"valuePropertyName\":\"id\",\"textPropertyName\":\"value\",\"items-list\":_vm.validSorts,\"label\":\"Sort Field\"},model:{value:(_vm.searchField),callback:function ($$v) {_vm.searchField=$$v},expression:\"searchField\"}})],1),_c('div',{staticClass:\"col pb-0 pt-0\"},[_c('select-input',{attrs:{\"valuePropertyName\":\"id\",\"textPropertyName\":\"value\",\"items-list\":_vm.validDirection,\"label\":\"Sort Direction\"},model:{value:(_vm.searchDirection),callback:function ($$v) {_vm.searchDirection=$$v},expression:\"searchDirection\"}})],1)])])]),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn btn-success\",class:{ disabled: !_vm.areWeReadyToSearch },attrs:{\"disabled\":!_vm.areWeReadyToSearch},on:{\"click\":_vm.runSearchClicked}},[_c('i',{staticClass:\"fa fa-search\"}),_vm._v(\" Search Orders \")])])]),_c('div',{staticClass:\"row p-2\"},[(_vm.orderErrors)?_c('div',{staticClass:\"col alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.orderErrors))]):_vm._e()]),_c('div',{staticClass:\"row p-2\"},[_vm._l((_vm.orderHistoryRef),function(order){return _c('div',{key:order.upwardOrderID,staticClass:\"col-6\"},[_c('order-item',{attrs:{\"order\":order,\"program\":_vm.programFor(order)},on:{\"order-release\":function($event){return _vm.popupReleaseDialog(order)},\"order-click\":function($event){return _vm.clicked(order)}}})],1)}),(_vm.hasMore)?_c('div',{staticClass:\"col-6\"},[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.loadMoreClicked}},[_vm._v(\"Load More\")])]):_vm._e()],2),_c('hold-reason-dialog',{attrs:{\"order\":_vm.holdingOrder,\"visible\":_vm.isHoldVisible},on:{\"confirm\":_vm.releaseOrder,\"close\":_vm.closeHold}}),(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),_c('alert',{attrs:{\"timeout\":3000,\"type\":_vm.alertType},model:{value:(_vm.showReleaseMessage),callback:function ($$v) {_vm.showReleaseMessage=$$v},expression:\"showReleaseMessage\"}},[_vm._v(_vm._s(_vm.releaseMessage))])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Search for an order by supplying information for at least one field below\")])])}]\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\nimport { computed, defineComponent, onMounted, ref } from '@vue/composition-api'\nimport RadioGroupInput from '@/elements/RadioGroupInput.vue'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport { useHoldDialog, useOrderHistory } from '@/views/AdminDash/vues/OrderHistory/useOrderHistory'\nimport { OrderFindInfo } from '@/GeneratedTypes/Order/ListInfo/OrderFindInfo'\nimport ordersClient from '@/clients/ordersClient'\nimport HoldReasonDialog from '@/views/AdminDash/vues/OrderHistory/HoldReasonDialog.vue'\nimport OrderItem from '@/views/AdminDash/vues/OrderHistory/OrderItem.vue'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\n\nexport default defineComponent({\n components: {\n Loading,\n TextInput,\n SelectInput,\n RadioGroupInput,\n HoldReasonDialog,\n OrderItem,\n SearchInput,\n Alert,\n },\n setup(props, ctx) {\n const validSorts = [\n { id: 'OrderTypeDescription', value: 'Order Type Description' },\n { id: 'CreateDate', value: 'Date' },\n { id: 'StatusDescription', value: 'Status Description' },\n { id: 'StatusDate', value: 'Status Date' },\n { id: 'UpwardProductGroupID', value: 'Product Group' },\n ]\n\n const validDirection = [\n { id: 'DESC', value: 'Highest First' },\n { id: 'ASC', value: 'Lowest First' },\n ]\n\n const validStatus = ref<{ id: string; value: string }[]>([{ id: '', value: '' }])\n const validType = ref<{ id: string; value: string }[]>([{ id: '', value: '' }])\n\n onMounted(async () => {\n const stats = await ordersClient.getValidOrderStati()\n const types = await ordersClient.getValidOrderTypes()\n validStatus.value.push(\n ...stats\n .sort((a, b) => a.sortOrder - b.sortOrder)\n .map((x) => ({ id: x.upwardTypeID, value: x.description }))\n )\n\n validType.value.push(\n ...types\n .sort((a, b) => a.sortOrder - b.sortOrder)\n .map((x) => ({ id: x.upwardTypeID, value: x.description }))\n )\n })\n\n const searchUpwardOrderID = ref('')\n const searchUpwardLeagueID = ref('')\n const searchOrderType = ref('')\n const searchOrderStatus = ref('')\n const searchField = ref('StatusDate')\n const searchDirection = ref('DESC')\n const currentPage = ref(0)\n const pageSize = 10\n\n const areWeReadyToSearch = computed(\n () =>\n searchUpwardOrderID.value ||\n searchUpwardLeagueID.value ||\n searchOrderType.value ||\n searchOrderStatus.value\n )\n const uh = useOrderHistory()\n //basically if we have an even multiple of page and pagesize then probably more records exist.\n const hasMore = computed(() => uh.orderHistoryRef.value.length == pageSize * (currentPage.value + 1))\n\n function runSearchClicked() {\n currentPage.value = 0\n runSearch()\n }\n\n function loadMoreClicked() {\n currentPage.value++\n runSearch()\n }\n\n function runSearch() {\n uh.searchOrders({\n sortDirection: searchDirection.value,\n sort: searchField.value,\n upwardLeagueID: searchUpwardLeagueID.value,\n typeOrderID: searchOrderType.value,\n pageIndex: 1,\n pageSize: pageSize * (currentPage.value + 1),\n upwardOrderID: searchUpwardOrderID.value,\n typeOrderStatusID: searchOrderStatus.value,\n })\n }\n const errorMessage = ref('')\n\n async function clicked(o: OrderFindInfo) {\n if (o.typeOrderID && o.typeOrderID.startsWith('RUNNING')) {\n await ctx.root.$router.push(\n `../../admin-dashboard/order-search/running-order-detail/${o.upwardProgramID}/${o.upwardOrderID}`\n )\n } else {\n await ctx.root.$router.push(\n `../../admin-dashboard/order-search/order-detail/${o.upwardLeagueID}/${o.upwardOrderID}`\n )\n }\n }\n\n const uho = useHoldDialog()\n const releaseMessage = ref('')\n const showReleaseMessage = ref(false)\n async function releaseOrder(o: OrderFindInfo, reason: string) {\n try {\n await uho.release(o, reason)\n releaseMessage.value = 'Order Released'\n showReleaseMessage.value = true\n } catch (e) {\n throw e\n } finally {\n runSearch()\n }\n }\n\n const loading = ref(false)\n\n return {\n ...uh,\n hasMore,\n releaseOrder,\n showReleaseMessage,\n releaseMessage,\n ...uho,\n areWeReadyToSearch,\n loading,\n pageSize,\n currentPage,\n runSearchClicked,\n loadMoreClicked,\n validStatus,\n validType,\n validDirection,\n validSorts,\n errorMessage,\n clicked,\n runSearch,\n searchUpwardOrderID,\n searchUpwardLeagueID,\n searchOrderType,\n searchOrderStatus,\n searchField,\n searchDirection,\n alertType: AlertTypeEnum.NOTICE,\n }\n },\n})\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!./OrderSearchScreen.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!./OrderSearchScreen.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderSearchScreen.vue?vue&type=template&id=294c0fbb&\"\nimport script from \"./OrderSearchScreen.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderSearchScreen.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderSearchScreen.vue?vue&type=style&index=0&lang=scss&\"\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('div',[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row pt-3 pb-3\"},[_c('div',{staticClass:\"col-sm-auto\"},[_c('h5',{staticClass:\"px-3\"},[(_vm.$route.path.match(/order-search/))?[_c('router-link',{staticClass:\"text-primary\",attrs:{\"to\":\"../../..\"}},[_vm._v(\"Admin Dashboard\")]),_vm._v(\" > \"),_c('router-link',{staticClass:\"text-primary\",attrs:{\"to\":\"../../\"}},[_vm._v(\" Order Search \")])]:[_c('router-link',{staticClass:\"text-primary\",attrs:{\"to\":\"../..\"}},[_vm._v(\"Admin Dashboard\")])],_vm._v(\" > Order Detail \")],2)])]),(_vm.loading)?_c('div',[_c('loading')],1):_c('div',[(_vm.showOrderSuperAdminOptions)?_c('div',{staticClass:\"row operation-panel background-secondary\"},[_c('div',{staticClass:\"col-3\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.integrationClicked}},[_vm._v(\"Integration Notes\")]),_c('div',[_vm._v(\"Review, Add or Delete notes on the order below\")])]),_c('div',{staticClass:\"col-3\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.clearErrorClicked}},[_vm._v(\"Clear Last Error/Re-Process\")]),_c('div',[_vm._v(\"Reset error notification flag and queue order to process again\")])]),_c('div',{staticClass:\"col-3\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.editOrderXMLClicked}},[_vm._v(\"Edit Order XML\")]),_c('div',[_vm._v(\"Edit the raw order XML and optionally clear the nitification flag\")])]),(_vm.showASBResendSection)?_c('div',{staticClass:\"col-3\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.resendASBClicked}},[_vm._v(\"Resend Order To ASB\")]),_c('div',[_vm._v(\" Resend this order to Augusta without affecting the current state of the steps. Should only be done in rare circumstances. \")])]):_vm._e()]):_vm._e(),(_vm.currentOrderInfo && _vm.currentOrder)?_c('order-detail',{attrs:{\"order-info\":_vm.currentOrderInfo,\"order\":_vm.currentOrder}}):_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.errorMessage))])],1)]),(_vm.currentOrderInfo)?_c('integration-notes-dialog',{attrs:{\"order\":_vm.currentOrder,\"orderID\":_vm.currentOrderInfo.id,\"notes\":_vm.notes,\"visible\":_vm.internalNotesVisible},on:{\"close\":_vm.integrationNotesClosed,\"change\":_vm.integrationNotesChanged}}):_vm._e(),(_vm.currentOrderInfo)?_c('OrderXMLEditDialog',{attrs:{\"orderID\":_vm.currentOrderInfo.upwardOrderID,\"visible\":_vm.internalXMLEditVisible},on:{\"close\":_vm.xmlEditClosed}}):_vm._e(),_c('confirmation-modal',{attrs:{\"title\":\"Resend order to Augusta\",\"is-small\":\"\",\"show\":_vm.resendASBVisible},on:{\"onResponse\":_vm.resendToASBConfirmed}},[_vm._v(\" Are you sure you want to resend this order to Augusta?\"),_c('br'),_vm._v(\" Have you confirmed that they have cancelled the order on their side?\"),_c('br'),_vm._v(\" Keep in mind that this will send both orders so if you have a situation where you just need, for example, Grovetown, that the other location will also be generated if this is a split order. \"),_c('br'),_c('br'),_vm._v(\"Are you really sure you want to do this? \")])],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('modal',{attrs:{\"title\":\"Integration Notes\"},on:{\"input\":_vm.close},model:{value:(_vm.internalVisible),callback:function ($$v) {_vm.internalVisible=$$v},expression:\"internalVisible\"}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_vm._v(\"Review, Add or Delete Notes form this order\")])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('b',[_vm._v(\"Order Number\")]),_vm._v(\" \"),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order && _vm.order.upwardOrderID)+\" \")]),_vm._v(\"| \"),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order && (_vm.order.upwardLeagueID || _vm.order.upwardChallengeID)))]),_vm._v(\" | \"),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order && _vm.order.upwardOrderType))])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('MemoInput',{attrs:{\"rows\":10,\"max-length\":4000},model:{value:(_vm.internalNotes),callback:function ($$v) {_vm.internalNotes=$$v},expression:\"internalNotes\"}}),_c('checkbox-input',{attrs:{\"label\":\"Integrate to BC\"},model:{value:(_vm.internalIntegrate),callback:function ($$v) {_vm.internalIntegrate=$$v},expression:\"internalIntegrate\"}}),_c('button',{staticClass:\"float-right btn btn-success\",attrs:{\"disabled\":!_vm.canSaveNote},on:{\"click\":_vm.saveNote}},[_vm._v(\"Save\")])],1),_c('div',{staticClass:\"col bar-left scrolly\"},[_c('div',_vm._l((_vm.notes),function(note){return _c('note-item',{key:note.id,attrs:{\"note\":note},on:{\"remove-note\":_vm.removeNote}})}),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:\"line-card container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-2\"},[_c('span',[_vm._v(\"Note ID:\")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.note.noteID))])]),_c('div',{staticClass:\"col-8\"}),_vm._m(0)]),_c('div',{staticClass:\"row pl-2\"},[_c('div',{staticClass:\"col field\"},[_vm._v(\" \"+_vm._s(_vm.note.noteText)+\" \")])]),_c('div',{staticClass:\"row pl-2\"},[_c('div',{staticClass:\"col-4\"},[(_vm.note.gpIntegrate)?_c('span',{staticClass:\"highlight-integrate\"},[_vm._v(\"Integrate to BC\")]):_vm._e()]),_c('div',{staticClass:\"col-4\"}),_c('div',{staticClass:\"col-4\"},[(!_vm.note.gpIntegrate)?_c('a',{staticClass:\"caution\",on:{\"click\":_vm.remove}},[_vm._v(\"Remove\")]):_vm._e()])]),_c('ConfirmationModal',{attrs:{\"title\":\"Confirm Remove\",\"is-small\":\"\",\"show\":_vm.isConfirming},on:{\"onResponse\":_vm.response}},[_vm._v(\"Are you sure you want to delete this note?\")])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-2\"},[_c('span',{staticClass:\"field\"})])}]\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\nimport { defineComponent, PropType, ref } from '@vue/composition-api'\nimport { OrderNoteInfo } from '@/GeneratedTypes/Order/ListInfo/OrderNoteInfo'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\n\nexport default defineComponent({\n name: 'NoteItem',\n components: { ConfirmationModal },\n props: {\n note: { type: Object as PropType, required: true },\n },\n setup(props, ctx) {\n const isConfirming = ref(false)\n function remove() {\n isConfirming.value = true\n }\n\n function response(b: boolean) {\n isConfirming.value = false\n if (b) {\n ctx.emit('remove-note', props.note)\n }\n }\n\n return { response, remove, isConfirming }\n },\n})\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!./NoteItem.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!./NoteItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./NoteItem.vue?vue&type=template&id=290b42af&scoped=true&\"\nimport script from \"./NoteItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./NoteItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./NoteItem.vue?vue&type=style&index=0&id=290b42af&scoped=true&lang=scss&\"\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 \"290b42af\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport NoteItem from '@/views/AdminDash/vues/OrderHistory/NoteItem.vue'\nimport { computed, defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport Modal from '@/components/Modal.vue'\nimport { xStartupOrder } from '@/GeneratedTypes/xOrder/xStartupOrder'\nimport ordersClient from '@/clients/ordersClient'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport { OrderNoteInfo } from '@/GeneratedTypes/Order/ListInfo/OrderNoteInfo'\n\nexport default defineComponent({\n name: 'IntegrationNotesDialog',\n components: { MemoInput, NoteItem, CheckboxInput, Modal },\n props: {\n visible: { type: Boolean, required: true, default: false },\n order: { type: Object as PropType, required: false },\n orderID: { type: Number, required: false, default: false },\n notes: { type: Array as PropType, required: true, default: () => [] },\n },\n\n setup(props, ctx) {\n const internalVisible = ref(false)\n watch(\n () => props.visible,\n () => (internalVisible.value = props.visible)\n )\n\n const internalNotes = ref('')\n const internalIntegrate = ref(false)\n\n const canSaveNote = computed(() => !!internalNotes.value.length)\n\n function refresh() {\n internalNotes.value = ''\n internalIntegrate.value = false\n }\n\n async function saveNote() {\n await ordersClient.putNote(props.orderID, {\n noteID: 0,\n noteText: internalNotes.value.substr(0, 4000),\n gpIntegrate: internalIntegrate.value,\n })\n refresh()\n ctx.emit('change')\n }\n\n async function removeNote(n: OrderNoteInfo) {\n await ordersClient.deleteNote(props.orderID, n.noteID)\n refresh()\n ctx.emit('change')\n }\n\n watch(\n () => props.order,\n () => {\n refresh()\n },\n { immediate: true }\n )\n\n const close = (b: Boolean) => !b && ctx.emit('close')\n\n return {\n internalVisible,\n internalNotes,\n internalIntegrate,\n saveNote,\n removeNote,\n close,\n canSaveNote,\n }\n },\n})\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!./IntegrationNotesDialog.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!./IntegrationNotesDialog.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./IntegrationNotesDialog.vue?vue&type=template&id=2e5f7d83&scoped=true&\"\nimport script from \"./IntegrationNotesDialog.vue?vue&type=script&lang=ts&\"\nexport * from \"./IntegrationNotesDialog.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./IntegrationNotesDialog.vue?vue&type=style&index=0&id=2e5f7d83&scoped=true&lang=scss&\"\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 \"2e5f7d83\",\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('modal',{attrs:{\"title\":(\"Edit Order XML for \" + (_vm.xmlEdit.upwardOrderID))},on:{\"input\":_vm.close},model:{value:(_vm.internalVisible),callback:function ($$v) {_vm.internalVisible=$$v},expression:\"internalVisible\"}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('memo-input',{attrs:{\"cols\":80,\"rows\":15,\"label\":\"Raw Order XML\"},model:{value:(_vm.xmlEdit.orderXML),callback:function ($$v) {_vm.$set(_vm.xmlEdit, \"orderXML\", $$v)},expression:\"xmlEdit.orderXML\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"required\":true,\"label\":\"Reason For Change\"},model:{value:(_vm.xmlEdit.reason),callback:function ($$v) {_vm.$set(_vm.xmlEdit, \"reason\", $$v)},expression:\"xmlEdit.reason\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('checkbox-input',{attrs:{\"label\":\"Clear Notification\"},model:{value:(_vm.xmlEdit.clearNotification),callback:function ($$v) {_vm.$set(_vm.xmlEdit, \"clearNotification\", $$v)},expression:\"xmlEdit.clearNotification\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"float-right btn btn-success\",attrs:{\"disabled\":!_vm.xmlEdit.orderXML || !_vm.xmlEdit.reason},on:{\"click\":_vm.saveXML}},[_vm._v(\" Save \")])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export interface OrderXMLEdit {\n upwardOrderID: string\n orderXML: string\n reason: string | null\n clearNotification: boolean\n}\n\nexport function getEmptyOrderXMLEdit() {\n return {\n upwardOrderID: '',\n orderXML: '',\n reason: null,\n clearNotification: false,\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport { getEmptyOrderXMLEdit } from '@/models/Order/OrderXMLEdit'\nimport ordersClient from '@/clients/ordersClient'\n\nexport default defineComponent({\n name: 'OrderXMLEditDialog',\n components: { Modal, MemoInput, CheckboxInput, TextInput },\n props: {\n visible: { type: Boolean, required: true, default: false },\n orderID: { type: String, required: true, default: false },\n },\n setup(props, ctx) {\n const internalVisible = ref(false)\n const xmlEdit = ref(getEmptyOrderXMLEdit())\n watch(\n () => props.visible,\n () => (internalVisible.value = props.visible)\n )\n\n watch(\n () => props.orderID,\n async () => await refresh(),\n { immediate: true }\n )\n\n async function refresh() {\n xmlEdit.value = getEmptyOrderXMLEdit() //reset to defaults\n xmlEdit.value.upwardOrderID = props.orderID\n xmlEdit.value.orderXML = (await ordersClient.getRawOrderXML(props.orderID)) ?? ''\n }\n\n async function saveXML() {\n const saved = await ordersClient.editOrderXML(xmlEdit.value)\n if (saved) {\n ctx.emit('close')\n }\n }\n\n const close = (b: Boolean) => !b && ctx.emit('close')\n\n return {\n internalVisible,\n xmlEdit,\n saveXML,\n close,\n }\n },\n})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, ref, onMounted, watch } from '@vue/composition-api'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport communicationsClient from '@/clients/communicationsClient'\nimport { TwilioApplicationRequest } from '@/GeneratedTypes/Communication/TwilioApplicationRequest'\nimport Loading from '@/elements/Loading.vue'\nimport exportFromJSON from 'export-from-json'\nimport { debounce } from 'lodash'\nimport { DataTableHeader } from 'vuetify/types'\nimport DataTable from '@/elements/DataTable/DataTable.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Modal from '@/components/Modal.vue'\nimport VeeValidateForm from '@/elements/VeeValidateForm.vue'\nenum ApplicationStatus {\n Pending = 'PENDING',\n Submitted = 'SUBMITTED',\n Approved = 'APPROVED',\n Rejected = 'REJECTED',\n Completed = 'COMPLETE',\n}\ninterface SearchResults {\n name: string\n status: string\n accountNumber: string\n id: number\n}\n\nexport default defineComponent({\n components: { SearchInput, Loading, DataTable, TextInput, Modal, VeeValidateForm },\n data() {\n const headers: DataTableHeader[] = [\n { text: '', value: 'actions' },\n { text: 'Number', value: 'accountNumber' },\n { text: 'Name', value: 'name' },\n ]\n return { headers }\n },\n setup() {\n // set to an error if there is one.\n const selectedStatus = ref(ApplicationStatus.Pending)\n const error = ref('')\n const searchTerm = ref('')\n const selectedItem = ref()\n const selectedRequest = ref()\n const loading = ref(false)\n const detailLoading = ref(false)\n const editMode = ref(false)\n const results = ref(new Array())\n const showModal = ref(false)\n const editable = computed(() => selectedRequest.value?.status === ApplicationStatus.Pending)\n const canSubmit = computed(() => selectedRequest.value?.status === ApplicationStatus.Pending)\n const canComplete = computed(() => selectedRequest.value?.status === ApplicationStatus.Approved)\n const canRevert = computed(() => selectedRequest.value?.status === ApplicationStatus.Completed)\n const estimatedVolume = ref('')\n const isSelected = (s: string) => {\n return s === selectedStatus.value\n }\n const setStatus = (s: string) => {\n selectedStatus.value = s as ApplicationStatus\n }\n const searchResults = computed(() => {\n return results.value.map((r) => {\n let name = r.partnerName\n let accountNumber = r.accountNumber\n let status = r.status\n let id = r.id\n return { id, name, status, accountNumber } as SearchResults\n })\n })\n watch(\n () => selectedItem.value,\n async (item: SearchResults | undefined) => {\n if (!item) return\n try {\n detailLoading.value = true\n const request = await communicationsClient.getTollFreeApp(item.accountNumber)\n selectedRequest.value = request ?? undefined\n estimatedVolume.value = selectedRequest.value?.estimatedVolume.toString() ?? ''\n } finally {\n detailLoading.value = false\n showModal.value = true\n }\n }\n )\n watch(\n () => showModal.value,\n (v) => {\n if (!v) {\n selectedItem.value = undefined\n selectedRequest.value = undefined\n estimatedVolume.value = ''\n editMode.value = false\n }\n }\n )\n watch(\n () => selectedStatus.value,\n async () => {\n await search()\n }\n )\n watch(\n () => searchTerm.value,\n async () => await search()\n )\n const search = debounce(async () => {\n try {\n loading.value = true\n results.value = await communicationsClient.getTwilioApplicationRequestList(\n selectedStatus.value,\n searchTerm.value\n )\n } finally {\n loading.value = false\n }\n }, 500)\n onMounted(async () => {\n await search()\n })\n async function cancelEdit(num: string) {\n try {\n detailLoading.value = true\n const request = await communicationsClient.getTollFreeApp(num)\n selectedRequest.value = request ?? undefined\n estimatedVolume.value = selectedRequest.value?.estimatedVolume.toString() ?? ''\n } finally {\n editMode.value = false\n detailLoading.value = false\n }\n }\n async function update() {\n try {\n detailLoading.value = true\n const estVol = !estimatedVolume.value ? 0 : parseInt(estimatedVolume.value)\n await communicationsClient.updateTwilioTollFreeApplication({\n ...selectedRequest.value!,\n estimatedVolume: estVol,\n })\n const request = await communicationsClient.getTollFreeApp(selectedRequest.value!.accountNumber!)\n selectedRequest.value = request ?? undefined\n await search()\n } finally {\n editMode.value = false\n detailLoading.value = false\n }\n }\n function approveApplication(accountNumber: string) {\n console.log(accountNumber)\n\n //THIS IS NOT IMPLEMENTED YET\n //await communicationsClient.approveTollFreeApplication(accountNumber)\n }\n\n async function generateCSV() {\n error.value = 'Generating CSV...'\n const results = await communicationsClient.getPendingApplicationsCSV()\n\n const fileName = 'twilioapplicationrequests_' + new Date().toJSON().slice(0, 10)\n const exportType = exportFromJSON.types.csv\n\n if (results && results.data) {\n var data = results.data\n exportFromJSON({ data, fileName, exportType })\n error.value = 'CSV file generated. Check Downloads folder.'\n }\n }\n\n async function markAsSubmitted() {\n await communicationsClient.setPendingApplicationsToSubmitted()\n error.value = 'Pending applications marked as submitted.'\n }\n async function submit(accountNumber: string) {\n try {\n detailLoading.value = true\n await communicationsClient.submitTwilioVerificationRequest(accountNumber)\n const request = await communicationsClient.getTollFreeApp(accountNumber)\n selectedRequest.value = request ?? undefined\n await search()\n } finally {\n detailLoading.value = false\n }\n }\n async function complete(accountNumber: string) {\n try {\n detailLoading.value = true\n await communicationsClient.completeTwilioApplicationRequest(accountNumber)\n const request = await communicationsClient.getTollFreeApp(accountNumber)\n selectedRequest.value = request ?? undefined\n await search()\n } finally {\n detailLoading.value = false\n }\n }\n async function revert(accountNumber: string) {\n try {\n detailLoading.value = true\n await communicationsClient.revertTwilioApplicationRequest(accountNumber)\n const request = await communicationsClient.getTollFreeApp(accountNumber)\n selectedRequest.value = request ?? undefined\n await search()\n } finally {\n detailLoading.value = false\n }\n }\n return {\n searchTerm,\n loading,\n searchResults,\n error,\n selectedStatus,\n approveApplication,\n generateCSV,\n markAsSubmitted,\n isSelected,\n setStatus,\n selectedItem,\n showModal,\n selectedRequest,\n editMode,\n editable,\n cancelEdit,\n canSubmit,\n detailLoading,\n update,\n estimatedVolume,\n submit,\n canComplete,\n complete,\n search,\n canRevert,\n revert,\n }\n },\n})\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!./OrderXMLEditDialog.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!./OrderXMLEditDialog.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderXMLEditDialog.vue?vue&type=template&id=22d2abd4&\"\nimport script from \"./OrderXMLEditDialog.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderXMLEditDialog.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport { xStartupOrder } from '@/GeneratedTypes/xOrder/xStartupOrder'\nimport { OrderNoteInfo } from '@/GeneratedTypes/Order/ListInfo/OrderNoteInfo'\nimport OrderDetail from '@/components/OrderHistory/OrderDetail.vue'\nimport Loading from '@/elements/Loading.vue'\nimport IntegrationNotesDialog from './IntegrationNotesDialog.vue'\nimport { loadOrder } from '@/lib/components/OrderDetail/loadOrder'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\nimport OrderXMLEditDialog from './OrderXMLEditDialog.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport ordersClient from '@/clients/ordersClient'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'OrderDetailPage',\n components: { IntegrationNotesDialog, Loading, OrderDetail, OrderXMLEditDialog, ConfirmationModal },\n setup(props, ctx) {\n const currentOrder = ref(null)\n const currentOrderInfo = ref(null)\n const notes = ref([])\n const loading = ref(false)\n const errorMessage = ref('')\n const showASBResendSection = ref(false)\n const showOrderSuperAdminOptions = ref(\n store.getters.authorization.isCurrentUserAnAdmin && !store.getters.authorization.isUpwardStaff\n )\n\n watch(\n () => ctx.root.$route,\n () => getOrderByRoute(),\n { immediate: true }\n )\n\n watch(\n () => notes.value,\n () => {\n showASBResendSection.value = notes.value.some((x) => x.noteText?.includes('@@RESEND TO ASB@@'))\n },\n { deep: true }\n )\n\n function clearErrorClicked() {\n alert('clear error TBD')\n }\n\n function integrationClicked() {\n internalNotesVisible.value = true\n }\n\n function editOrderXMLClicked() {\n internalXMLEditVisible.value = true\n }\n\n function resendASBClicked() {\n resendASBVisible.value = true\n }\n\n async function xmlEditClosed() {\n internalXMLEditVisible.value = false\n await getOrderByRoute()\n }\n\n async function getOrderByRoute() {\n const league = ctx.root.$route.params.id ?? ''\n const orderid = ctx.root.$route.params.orderid ?? ''\n try {\n loading.value = true\n\n await loadOrder(league, orderid, currentOrder, currentOrderInfo, errorMessage)\n await refreshNotes(orderid)\n } catch (e) {\n errorMessage.value = e.errorObject?.message || e.message\n loading.value = false\n throw e\n }\n loading.value = false\n }\n\n async function refreshNotes(orderid: string) {\n notes.value =\n (await ordersClient.getNotesByUpwardOrderID(orderid))?.sort((a, b) => b.noteID - a.noteID) ?? []\n }\n\n async function integrationNotesChanged() {\n await refreshNotes(currentOrderInfo.value?.upwardOrderID ?? '')\n }\n\n async function resendToASBConfirmed(b: boolean) {\n if (b) {\n //attempt the resend\n const league = ctx.root.$route.params.id ?? ''\n const orderid = ctx.root.$route.params.orderid ?? ''\n try {\n loading.value = true\n await ordersClient.resendToASB(league, orderid)\n } catch (e) {\n errorMessage.value = e.errorObject?.message || e.message\n loading.value = false\n throw e\n }\n loading.value = false\n\n //refresh the notes if successful\n await refreshNotes(orderid)\n resendASBVisible.value = false\n } else {\n //they said no, so just close the modal\n resendASBVisible.value = false\n }\n }\n\n const internalNotesVisible = ref(false)\n const internalXMLEditVisible = ref(false)\n const resendASBVisible = ref(false)\n\n return {\n currentOrder,\n errorMessage,\n currentOrderInfo,\n notes,\n loading,\n integrationClicked,\n editOrderXMLClicked,\n clearErrorClicked,\n internalNotesVisible,\n integrationNotesClosed: () => (internalNotesVisible.value = false),\n integrationNotesChanged,\n internalXMLEditVisible,\n xmlEditClosed,\n showASBResendSection,\n resendASBVisible,\n resendASBClicked,\n resendToASBConfirmed,\n showOrderSuperAdminOptions,\n }\n },\n})\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!./OrderDetailScreen.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!./OrderDetailScreen.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderDetailScreen.vue?vue&type=template&id=4b340422&scoped=true&\"\nimport script from \"./OrderDetailScreen.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderDetailScreen.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderDetailScreen.vue?vue&type=style&index=0&id=4b340422&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 \"4b340422\",\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('div',[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row pt-3 pb-3\"},[_c('div',{staticClass:\"col-sm-auto\"},[_c('h5',{staticClass:\"px-3\"},[(_vm.$route.path.match(/order-search/))?[_c('router-link',{staticClass:\"text-primary\",attrs:{\"to\":\"../../..\"}},[_vm._v(\"Admin Dashboard\")]),_vm._v(\" > \"),_c('router-link',{staticClass:\"text-primary\",attrs:{\"to\":\"../../\"}},[_vm._v(\" Order Search \")])]:[_c('router-link',{staticClass:\"text-primary\",attrs:{\"to\":\"../..\"}},[_vm._v(\"Admin Dashboard\")])],_vm._v(\" > Order Detail \")],2)])]),(_vm.loading)?_c('div',[_c('loading')],1):_c('div',[(_vm.showOrderSuperAdminOptions)?_c('div',{staticClass:\"row operation-panel background-secondary\"},[_c('div',{staticClass:\"col-3\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.integrationClicked}},[_vm._v(\"Integration Notes\")]),_c('div',[_vm._v(\"Review, Add or Delete notes on the order below\")])]),_c('div',{staticClass:\"col-3\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.clearErrorClicked}},[_vm._v(\"Clear Last Error/Re-Process\")]),_c('div',[_vm._v(\"Reset error notification flag and queue order to process again\")])]),_c('div',{staticClass:\"col-3\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.editOrderXMLClicked}},[_vm._v(\"Edit Order XML\")]),_c('div',[_vm._v(\"Edit the raw order XML and optionally clear the nitification flag\")])]),(_vm.showASBResendSection)?_c('div',{staticClass:\"col-3\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.resendASBClicked}},[_vm._v(\"Resend Order To ASB\")]),_c('div',[_vm._v(\" Resend this order to Augusta without affecting the current state of the steps. Should only be done in rare circumstances. \")])]):_vm._e()]):_vm._e(),(_vm.currentOrderInfo && _vm.currentOrder)?_c('order-detail',{attrs:{\"order-info\":_vm.currentOrderInfo,\"order\":_vm.currentOrder,\"itemList\":_vm.currentOrder.products}}):_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.errorMessage))])],1)]),(_vm.currentOrderInfo)?_c('integration-notes-dialog',{attrs:{\"order\":_vm.currentOrder,\"orderID\":_vm.currentOrderInfo.id,\"notes\":_vm.notes,\"visible\":_vm.internalNotesVisible},on:{\"close\":_vm.integrationNotesClosed,\"change\":_vm.integrationNotesChanged}}):_vm._e(),(_vm.currentOrderInfo)?_c('OrderXMLEditDialog',{attrs:{\"orderID\":_vm.currentOrderInfo.upwardOrderID,\"visible\":_vm.internalXMLEditVisible},on:{\"close\":_vm.xmlEditClosed}}):_vm._e(),_c('confirmation-modal',{attrs:{\"title\":\"Resend order to Augusta\",\"is-small\":\"\",\"show\":_vm.resendASBVisible},on:{\"onResponse\":_vm.resendToASBConfirmed}},[_vm._v(\" Are you sure you want to resend this order to Augusta?\"),_c('br'),_vm._v(\" Have you confirmed that they have cancelled the order on their side?\"),_c('br'),_vm._v(\" Keep in mind that this will send both orders so if you have a situation where you just need, for example, Grovetown, that the other location will also be generated if this is a split order. \"),_c('br'),_c('br'),_vm._v(\"Are you really sure you want to do this? \")])],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\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport { OrderNoteInfo } from '@/GeneratedTypes/Order/ListInfo/OrderNoteInfo'\nimport OrderDetail from '@/components/UpwardRunning/OrderHistory/OrderDetail.vue'\nimport Loading from '@/elements/Loading.vue'\nimport IntegrationNotesDialog from './IntegrationNotesDialog.vue'\nimport { loadRunningOrder } from '@/lib/components/OrderDetail/loadOrder'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\nimport OrderXMLEditDialog from './OrderXMLEditDialog.vue'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\nimport ordersClient from '@/clients/ordersClient'\nimport store from '@/store'\nimport { xRunningOrderExt } from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport { xRunningStartupOrderExt } from '@/models/UpwardRunning/Order/xRunningStartupOrderExt'\n\nexport default defineComponent({\n name: 'OrderDetailPage',\n components: { IntegrationNotesDialog, Loading, OrderDetail, OrderXMLEditDialog, ConfirmationModal },\n setup(props, ctx) {\n const currentOrder = ref(null)\n const currentOrderInfo = ref(null)\n const notes = ref([])\n const loading = ref(false)\n const errorMessage = ref('')\n const showASBResendSection = ref(false)\n const showOrderSuperAdminOptions = ref(\n store.getters.authorization.isCurrentUserAnAdmin && !store.getters.authorization.isUpwardStaff\n )\n\n watch(\n () => ctx.root.$route,\n () => getOrderByRoute(),\n { immediate: true }\n )\n\n watch(\n () => notes.value,\n () => {\n showASBResendSection.value = notes.value.some((x) => x.noteText?.includes('@@RESEND TO ASB@@'))\n },\n { deep: true }\n )\n\n function clearErrorClicked() {\n alert('clear error TBD')\n }\n\n function integrationClicked() {\n internalNotesVisible.value = true\n }\n\n function editOrderXMLClicked() {\n internalXMLEditVisible.value = true\n }\n\n function resendASBClicked() {\n resendASBVisible.value = true\n }\n\n async function xmlEditClosed() {\n internalXMLEditVisible.value = false\n await getOrderByRoute()\n }\n\n async function getOrderByRoute() {\n const challenge = ctx.root.$route.params.id ?? ''\n const orderid = ctx.root.$route.params.orderid ?? ''\n try {\n loading.value = true\n\n await loadRunningOrder(challenge, orderid, currentOrder, currentOrderInfo, errorMessage)\n await refreshNotes(orderid)\n } catch (e) {\n errorMessage.value = e.errorObject?.message || e.message\n loading.value = false\n throw e\n }\n loading.value = false\n }\n\n async function refreshNotes(orderid: string) {\n notes.value =\n (await ordersClient.getNotesByUpwardOrderID(orderid))?.sort((a, b) => b.noteID - a.noteID) ?? []\n }\n\n async function integrationNotesChanged() {\n await refreshNotes(currentOrderInfo.value?.upwardOrderID ?? '')\n }\n\n async function resendToASBConfirmed(b: boolean) {\n if (b) {\n //attempt the resend\n const challenge = ctx.root.$route.params.id ?? ''\n const orderid = ctx.root.$route.params.orderid ?? ''\n try {\n loading.value = true\n await ordersClient.resendToASB(challenge, orderid)\n } catch (e) {\n errorMessage.value = e.errorObject?.message || e.message\n loading.value = false\n throw e\n }\n loading.value = false\n\n //refresh the notes if successful\n await refreshNotes(orderid)\n resendASBVisible.value = false\n } else {\n //they said no, so just close the modal\n resendASBVisible.value = false\n }\n }\n\n const internalNotesVisible = ref(false)\n const internalXMLEditVisible = ref(false)\n const resendASBVisible = ref(false)\n\n return {\n currentOrder,\n errorMessage,\n currentOrderInfo,\n notes,\n loading,\n integrationClicked,\n editOrderXMLClicked,\n clearErrorClicked,\n internalNotesVisible,\n integrationNotesClosed: () => (internalNotesVisible.value = false),\n integrationNotesChanged,\n internalXMLEditVisible,\n xmlEditClosed,\n showASBResendSection,\n resendASBVisible,\n resendASBClicked,\n resendToASBConfirmed,\n showOrderSuperAdminOptions,\n }\n },\n})\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!./RunningOrderDetailScreen.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!./RunningOrderDetailScreen.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RunningOrderDetailScreen.vue?vue&type=template&id=b690c074&scoped=true&\"\nimport script from \"./RunningOrderDetailScreen.vue?vue&type=script&lang=ts&\"\nexport * from \"./RunningOrderDetailScreen.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RunningOrderDetailScreen.vue?vue&type=style&index=0&id=b690c074&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 \"b690c074\",\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('div',{staticClass:\"smaller-font admin-tools container-fluid py-3 flex-grow-1 image-cover-bg min-h-100\"},[_vm._m(0),(!_vm.disabled)?_c('div',{staticClass:\"row\"},[(_vm.canRunStripeReport)?_c('div',{staticClass:\"col-12 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Stripe Balance Transaction Report\")]),_c('StripeBalanceTransactionPanel')],1)],1):_vm._e(),_c('div',{staticClass:\"col-12 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Twilio Application Requests\")]),_c('br'),_c('twilio-application-panel')],1)],1),_c('div',{staticClass:\"col-12 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Product Cache\")]),_c('product-cache-panel',{on:{\"impersonate\":_vm.impersonate}})],1)],1)]):_vm._e(),(!_vm.disabled)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6 p-0\"},[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Email Suppression Check\")]),_c('email-suppression-panel')],1)],1)]):_c('div',[_c('card',{staticClass:\"card\"},[_c('h5',{staticClass:\"text-primary\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Permission Denied\")]),_c('p',[_vm._v(\" Sorry you shouldn't be here, or if you should please log in with an account that has privileges to administer accounts. \")])])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-auto\"},[_c('h5',{staticClass:\"px-3\"},[_vm._v(\"Admin Tools\")])])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"panel\"},[(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),(_vm.error)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.error))]):_c('div',{staticClass:\"table-responsive\"},[_c('table',{staticClass:\"table table-striped\"},[_vm._m(0),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"League Order Products\")]),_c('td',[_c('a',{staticClass:\"fg-red\",attrs:{\"title\":\"Clear Product Cache\"},on:{\"click\":function($event){return _vm.clearProductCache('LEAGUEORDER')}}},[_c('i',{staticClass:\"fas fa-trash\"})])])]),_c('tr',[_c('td',[_vm._v(\"GameDay Order Products\")]),_c('td',[_c('a',{staticClass:\"fg-red\",attrs:{\"title\":\"Clear Product Cache\"},on:{\"click\":function($event){return _vm.clearProductCache('STARTUPORDER')}}},[_c('i',{staticClass:\"fas fa-trash\"})])])]),_c('tr',[_c('td',[_vm._v(\"Award Order Products\")]),_c('td',[_c('a',{staticClass:\"fg-red\",attrs:{\"title\":\"Clear Product Cache\"},on:{\"click\":function($event){return _vm.clearProductCache('AWARDORDER')}}},[_c('i',{staticClass:\"fas fa-trash\"})])])]),_c('tr',[_c('td',[_vm._v(\"Merchandise Order Products\")]),_c('td',[_c('a',{staticClass:\"fg-red\",attrs:{\"title\":\"Clear Product Cache\"},on:{\"click\":function($event){return _vm.clearProductCache('MERCHANDISEORDER')}}},[_c('i',{staticClass:\"fas fa-trash\"})])])])])])]),_c('alert',{attrs:{\"type\":_vm.notice},model:{value:(_vm.isProductCachedCleared),callback:function ($$v) {_vm.isProductCachedCleared=$$v},expression:\"isProductCachedCleared\"}},[_vm._v(\" Product Cache Cleared Successfully \")])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Product Type\")]),_c('th',[_vm._v(\"Clear Cache\")])])])}]\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\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\nimport contentManagementClient from '@/clients/contentManagementClient'\nimport Alert, { AlertTypeEnum } from '@/components/Alert.vue'\n\nexport default defineComponent({\n components: { Alert, Loading },\n setup() {\n // set to an error if there is one.\n const error = ref('')\n //clear an error in 20 seconds automatically\n watch(\n () => error.value,\n (a) => {\n if (a) {\n setTimeout(() => (error.value = ''), 20000)\n }\n }\n )\n\n const loading = ref(false)\n\n async function clearProductCache(orderType: string) {\n await clearCache(orderType)\n }\n\n async function clearCache(orderType: string) {\n loading.value = true\n error.value = ''\n\n try {\n await contentManagementClient.deleteProductCache(orderType)\n productCacheWasCleared()\n } catch (e) {\n const message = e?.innerException?.errorObject?.message\n\n error.value = 'Product Cache Error ' + (message || e?.message || e?.errorObject?.message || '')\n } finally {\n loading.value = false\n }\n }\n\n const isProductCachedCleared = ref(false)\n function productCacheWasCleared() {\n isProductCachedCleared.value = true\n }\n\n return {\n loading,\n clearProductCache,\n productCacheWasCleared,\n isProductCachedCleared,\n notice: AlertTypeEnum.NOTICE,\n }\n },\n})\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!./ProductCachePanel.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!./ProductCachePanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ProductCachePanel.vue?vue&type=template&id=38cc15d4&\"\nimport script from \"./ProductCachePanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductCachePanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProductCachePanel.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"panel twilio-apps\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col pl-0 pr-0 pt-0\"},[_c('ul',{staticClass:\"nav nav-pills nav-justified m-0 p-0\"},[_c('li',{staticClass:\"nav-item m-1 ml-0\"},[_c('a',{staticClass:\"nav-link\",class:{ active: _vm.isSelected('PENDING') },on:{\"click\":function () {\n _vm.setStatus('PENDING')\n }}},[_c('i',{staticClass:\"fa fa-clock\"}),_vm._v(\" Pending\")])]),_c('li',{staticClass:\"nav-item m-1\"},[_c('a',{staticClass:\"nav-link\",class:{ active: _vm.isSelected('SUBMITTED') },on:{\"click\":function () {\n _vm.setStatus('SUBMITTED')\n }}},[_c('i',{staticClass:\"fa fa-paper-plane\"}),_vm._v(\" Submitted\")])]),_c('li',{staticClass:\"nav-item m-1\"},[_c('a',{staticClass:\"nav-link\",class:_vm.isSelected('APPROVED') && 'active',on:{\"click\":function () {\n _vm.selectedStatus = 'APPROVED'\n }}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Approved\")])]),_c('li',{staticClass:\"nav-item m-1\"},[_c('a',{staticClass:\"nav-link\",class:_vm.isSelected('REJECTED') && 'active',on:{\"click\":function () {\n _vm.selectedStatus = 'REJECTED'\n }}},[_c('i',{staticClass:\"fa fa-ban\"}),_vm._v(\" Rejected\")])]),_c('li',{staticClass:\"nav-item m-1 mr-0\"},[_c('a',{staticClass:\"nav-link\",class:_vm.isSelected('COMPLETE') && 'active',on:{\"click\":function () {\n _vm.selectedStatus = 'COMPLETE'\n }}},[_c('i',{staticClass:\"fa fa-flag-checkered\"}),_vm._v(\" Completed\")])])])])]),_c('div',{staticClass:\"row mb-3\"},[_c('div',{staticClass:\"col-sm-11 pl-0\"},[_c('text-input',{attrs:{\"placeholder\":\"Search by number or name...\",\"prepend-icon\":\"fa fa-search\"},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}})],1),_c('div',{staticClass:\"col-sm-1 pl-0 pr-0\"},[_c('button',{staticClass:\"btn btn-success\",staticStyle:{\"width\":\"100%\"},attrs:{\"type\":\"button\"},on:{\"click\":_vm.search}},[_c('i',{staticClass:\"fa fa-search\"})])])]),(_vm.loading)?_c('div',{staticClass:\"waiting\"},[_c('loading',{attrs:{\"isSmall\":false}})],1):_vm._e(),(_vm.error)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.error))]):_vm._e(),_c('data-table',{staticClass:\"elevation-1 data-table-zebra\",attrs:{\"headers\":_vm.headers,\"items\":_vm.searchResults,\"itemKey\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\n var item = ref.item;\nreturn [_c('button',{staticClass:\"btn btn-sm\",attrs:{\"type\":\"button\"},on:{\"click\":function () { return (_vm.selectedItem = item); }}},[_c('i',{staticClass:\"fa fa-edit\"})])]}}])}),_c('vee-validate-form',{on:{\"submit\":_vm.update}},[(_vm.selectedRequest)?_c('modal',{attrs:{\"isSmall\":false},model:{value:(_vm.showModal),callback:function ($$v) {_vm.showModal=$$v},expression:\"showModal\"}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col-12\"},[(_vm.selectedRequest.status === 'PENDING')?_c('span',[_c('label',{staticClass:\"input-label text-uppercase\",staticStyle:{\"display\":\"inline\"}},[_vm._v(\"STATUS: \")]),_c('span',{staticClass:\"badge badge-secondary no-dismiss\"},[_c('i',{staticClass:\"fa fa-clock\"}),_vm._v(\" Pending \")])]):_vm._e(),(_vm.selectedRequest.status === 'SUBMITTED')?_c('span',[_c('label',{staticClass:\"input-label text-uppercase\",staticStyle:{\"display\":\"inline\"}},[_vm._v(\"STATUS: \")]),_c('span',{staticClass:\"badge badge-warning no-dismiss\"},[_c('i',{staticClass:\"fa fa-paper-plane\"}),_vm._v(\" Submitted\")])]):_vm._e(),(_vm.selectedRequest.status === 'APPROVED')?_c('span',[_c('label',{staticClass:\"input-label text-uppercase\",staticStyle:{\"display\":\"inline\"}},[_vm._v(\"STATUS: \")]),_c('span',{staticClass:\"badge badge-primary no-dismiss\"},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Approved\")])]):_vm._e(),(_vm.selectedRequest.status === 'REJECTED')?_c('span',[_c('label',{staticClass:\"input-label text-uppercase\",staticStyle:{\"display\":\"inline\"}},[_vm._v(\"STATUS: \")]),_c('span',{staticClass:\"badge badge-danger no-dismiss\"},[_c('i',{staticClass:\"fa fa-ban\"}),_vm._v(\" Rejected\")])]):_vm._e(),(_vm.selectedRequest.status === 'COMPLETE')?_c('span',[_c('label',{staticClass:\"input-label text-uppercase\",staticStyle:{\"display\":\"inline\"}},[_vm._v(\"STATUS: \")]),_c('span',{staticClass:\"badge badge-success no-dismiss\"},[_c('i',{staticClass:\"fa fa-flag-checkered\"}),_vm._v(\" Completed\")])]):_vm._e()])]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"label\":\"Account Number\",\"enabled\":false},model:{value:(_vm.selectedRequest.accountNumber),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"accountNumber\", $$v)},expression:\"selectedRequest.accountNumber\"}})],1),_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"label\":\"Business Name\",\"enabled\":false},model:{value:(_vm.selectedRequest.businessName),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"businessName\", $$v)},expression:\"selectedRequest.businessName\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Partner Name\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.partnerName),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"partnerName\", $$v)},expression:\"selectedRequest.partnerName\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Contact First Name\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.contactFirstName),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"contactFirstName\", $$v)},expression:\"selectedRequest.contactFirstName\"}})],1),_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Contact Last Name\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.contactLastName),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"contactLastName\", $$v)},expression:\"selectedRequest.contactLastName\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Contact Email\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.contactEmail),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"contactEmail\", $$v)},expression:\"selectedRequest.contactEmail\"}})],1),_c('div',{staticClass:\"col-6\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Contact Phone\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.contactMobilePhone),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"contactMobilePhone\", $$v)},expression:\"selectedRequest.contactMobilePhone\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Address\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.address),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"address\", $$v)},expression:\"selectedRequest.address\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Address 2\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.address2),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"address2\", $$v)},expression:\"selectedRequest.address2\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"City\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.city),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"city\", $$v)},expression:\"selectedRequest.city\"}})],1),_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"State\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.stateProvince),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"stateProvince\", $$v)},expression:\"selectedRequest.stateProvince\"}})],1),_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Zip\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.postalCode),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"postalCode\", $$v)},expression:\"selectedRequest.postalCode\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"label\":\"Website\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.website),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"website\", $$v)},expression:\"selectedRequest.website\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Toll-Free Number\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.tollFreeNumber),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"tollFreeNumber\", $$v)},expression:\"selectedRequest.tollFreeNumber\"}})],1),_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"inputType\":\"number\",\"required\":\"\",\"label\":\"Estimated Volume\",\"enabled\":_vm.editMode},model:{value:(_vm.estimatedVolume),callback:function ($$v) {_vm.estimatedVolume=$$v},expression:\"estimatedVolume\"}})],1)]),_c('div',{staticClass:\"form-row\"},[_c('div',{staticClass:\"col\"},[_c('text-input',{attrs:{\"required\":\"\",\"label\":\"Service ID\",\"enabled\":_vm.editMode},model:{value:(_vm.selectedRequest.serviceID),callback:function ($$v) {_vm.$set(_vm.selectedRequest, \"serviceID\", $$v)},expression:\"selectedRequest.serviceID\"}})],1)])]),(_vm.detailLoading)?_c('template',{slot:\"footer\"},[_c('loading')],1):_c('template',{slot:\"footer\"},[(!_vm.editMode)?_c('button',{staticClass:\"btn btn-light\",on:{\"click\":function () {\n _vm.showModal = false\n }}},[_c('i',{staticClass:\"fa fa-window-close\"}),_vm._v(\" Close \")]):_c('button',{staticClass:\"btn btn-light\",on:{\"click\":function () { return _vm.cancelEdit(_vm.selectedRequest.accountNumber); }}},[_c('i',{staticClass:\"fa fa-ban\"}),_vm._v(\" Cancel \")]),(!_vm.editMode && _vm.editable)?_c('a',{staticClass:\"btn btn-secondary\",staticStyle:{\"color\":\"#fff\"},on:{\"click\":function () { return (_vm.editMode = true); }}},[_c('i',{staticClass:\"fa fa-edit\"}),_vm._v(\" Edit \")]):(_vm.editMode && _vm.editable)?_c('button',{staticClass:\"btn btn-success\",attrs:{\"type\":\"submit\"}},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" Save \")]):_vm._e(),(!_vm.editMode && _vm.canSubmit)?_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":function () { return _vm.submit(_vm.selectedRequest.accountNumber); }}},[_c('i',{staticClass:\"fa fa-paper-plane\"}),_vm._v(\" Submit \")]):_vm._e(),(!_vm.editMode && _vm.canComplete)?_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":function () { return _vm.complete(_vm.selectedRequest.accountNumber); }}},[_c('i',{staticClass:\"fa fa-flag-checkered\"}),_vm._v(\" Complete \")]):_vm._e(),(!_vm.editMode && _vm.canRevert)?_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":function () { return _vm.revert(_vm.selectedRequest.accountNumber); }}},[_c('i',{staticClass:\"fa fa-undo\"}),_vm._v(\" Revert \")]):_vm._e()])],2):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","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!./TwilioApplicationPanel.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!./TwilioApplicationPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TwilioApplicationPanel.vue?vue&type=template&id=293a84ba&\"\nimport script from \"./TwilioApplicationPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./TwilioApplicationPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TwilioApplicationPanel.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"panel\"},[_c('br'),_c('SearchInput',{attrs:{\"searchButonText\":\"Check\",\"search-button-text\":\"Check\",\"label\":\"Enter Email Address\"},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}}),(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),(_vm.error)?_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.error))]):_c('div',{staticClass:\"table-responsive\"},[(_vm.searchResults)?_c('div',[(!_vm.searchResults.doesExist)?_c('table',{staticClass:\"table table-striped\"},[_vm._m(0)]):_c('table',{staticClass:\"table table-striped\"},[_vm._m(1),_c('tbody',[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.searchResults.info.results[0].recipient))]),_c('td',[_vm._v(_vm._s(_vm.searchResults.info.results[0].source))]),_c('td',[_vm._v(_vm._s(_vm.searchResults.info.results[0].created))])]),_c('tr',[_c('td',{attrs:{\"colspan\":\"3\"}},[_vm._v(\" \"+_vm._s(_vm.searchResults.info.results[0].description)+\" \")])])])])]):_vm._e()])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',[_c('td',[_vm._v(\"Email does not exist on suppression list\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Recipient\")]),_c('th',[_vm._v(\"Source\")]),_c('th',[_vm._v(\"Created\")])])])}]\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\nimport { computed, defineComponent, ref, watch } from '@vue/composition-api'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport communicationsClient from '@/clients/communicationsClient'\nimport { EmailSuppressionStatus } from '@/models/Communication/EmailSuppressionStatus'\nimport Loading from '@/elements/Loading.vue'\n\ninterface SearchResults {\n doesExist: boolean\n info: EmailSuppressionStatus\n}\n\nexport default defineComponent({\n components: { SearchInput, Loading },\n setup() {\n // set to an error if there is one.\n const error = ref('')\n const searchTerm = ref('')\n const loading = ref(false)\n const result = ref(null)\n const searchResults = computed(() => {\n if (result.value) {\n let doesExist = false\n let info = null\n\n if (result.value.total_count > 0) {\n doesExist = true\n info = result.value\n }\n return { doesExist, info } as SearchResults\n }\n })\n\n watch(\n () => searchTerm.value,\n async () => {\n if (searchTerm.value.length >= 3) {\n error.value = ''\n try {\n loading.value = true\n result.value = await communicationsClient.getEmailSuppressionStatus(searchTerm.value)\n\n if (!result.value) {\n error.value = 'Invalid email address or unexpected format'\n }\n } catch (e) {\n error.value =\n e?.message ||\n e?.errorObject?.message ||\n 'An unexpected error occurred checking email suppression status'\n loading.value = false\n throw e\n } finally {\n loading.value = false\n }\n }\n }\n )\n\n return { searchTerm, loading, searchResults, error }\n },\n})\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!./EmailSuppressionPanel.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!./EmailSuppressionPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EmailSuppressionPanel.vue?vue&type=template&id=2ab3dfbd&\"\nimport script from \"./EmailSuppressionPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./EmailSuppressionPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./EmailSuppressionPanel.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"panel\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4 pt-2\"},[_c('date-time-input',{attrs:{\"label\":\"Starting From\",\"required\":\"\",\"maxDate\":_vm.endDate ? _vm.endDate : undefined},model:{value:(_vm.startDate),callback:function ($$v) {_vm.startDate=$$v},expression:\"startDate\"}})],1),_c('div',{staticClass:\"col-md-4 pt-2\"},[_c('date-time-input',{attrs:{\"label\":\"Ending With\",\"required\":\"\",\"minDate\":_vm.startDate ? _vm.startDate : undefined},model:{value:(_vm.endDate),callback:function ($$v) {_vm.endDate=$$v},expression:\"endDate\"}})],1),_c('div',{staticClass:\"col-md-2 text-left pt-8\"},[(!_vm.isLoading)?_c('button',{staticClass:\"btn btn-success m-1\",on:{\"click\":_vm.loadReport}},[_c('i',{staticClass:\"fa fa-export\"}),_vm._v(\"Run \")]):_vm._e()]),_c('div',{staticClass:\"col-md-2 text-right pt-8\"},[(!_vm.isLoading)?_c('button',{staticClass:\"btn btn-success m-1\",on:{\"click\":_vm.downloadCsv}},[_c('i',{staticClass:\"fa fa-export\"}),_vm._v(\"Export \")]):_vm._e()])]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isLoading),expression:\"isLoading\"}],staticClass:\"row text-center\"},[_c('div',{staticClass:\"col-md-12 text-center\"},[_c('loading')],1)]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}],staticClass:\"row\"},[_c('ag-grid-vue',{staticClass:\"ag-theme-alpine\",style:(\"width: 100%; height: 450px\"),attrs:{\"gridOptions\":_vm.gridOptions,\"rowData\":_vm.rowData,\"modules\":_vm.modules,\"suppressFieldDotNotation\":true,\"defaultColDef\":{\n sortable: true,\n resizable: true,\n filter: true,\n }},on:{\"grid-ready\":_vm.onReady,\"first-data-rendered\":_vm.onFirstDataRendered}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//taken from https://github.com/TexasSwede/stateAbbreviations/blob/master/stateAbbreviations.js\n\nconst TO_NAME = 1\nconst TO_ABBREVIATED = 2\n\nexport function convertRegion(input: string | null, to: 1 | 2) {\n if (input == null) {\n return null\n }\n const states = [\n ['Alabama', 'AL'],\n ['Alaska', 'AK'],\n ['American Samoa', 'AS'],\n ['Arizona', 'AZ'],\n ['Arkansas', 'AR'],\n ['Armed Forces Americas', 'AA'],\n ['Armed Forces Europe', 'AE'],\n ['Armed Forces Pacific', 'AP'],\n ['California', 'CA'],\n ['Colorado', 'CO'],\n ['Connecticut', 'CT'],\n ['Delaware', 'DE'],\n ['District Of Columbia', 'DC'],\n ['Florida', 'FL'],\n ['Georgia', 'GA'],\n ['Guam', 'GU'],\n ['Hawaii', 'HI'],\n ['Idaho', 'ID'],\n ['Illinois', 'IL'],\n ['Indiana', 'IN'],\n ['Iowa', 'IA'],\n ['Kansas', 'KS'],\n ['Kentucky', 'KY'],\n ['Louisiana', 'LA'],\n ['Maine', 'ME'],\n ['Marshall Islands', 'MH'],\n ['Maryland', 'MD'],\n ['Massachusetts', 'MA'],\n ['Michigan', 'MI'],\n ['Minnesota', 'MN'],\n ['Mississippi', 'MS'],\n ['Missouri', 'MO'],\n ['Montana', 'MT'],\n ['Nebraska', 'NE'],\n ['Nevada', 'NV'],\n ['New Hampshire', 'NH'],\n ['New Jersey', 'NJ'],\n ['New Mexico', 'NM'],\n ['New York', 'NY'],\n ['North Carolina', 'NC'],\n ['North Dakota', 'ND'],\n ['Northern Mariana Islands', 'NP'],\n ['Ohio', 'OH'],\n ['Oklahoma', 'OK'],\n ['Oregon', 'OR'],\n ['Pennsylvania', 'PA'],\n ['Puerto Rico', 'PR'],\n ['Rhode Island', 'RI'],\n ['South Carolina', 'SC'],\n ['South Dakota', 'SD'],\n ['Tennessee', 'TN'],\n ['Texas', 'TX'],\n ['US Virgin Islands', 'VI'],\n ['Utah', 'UT'],\n ['Vermont', 'VT'],\n ['Virginia', 'VA'],\n ['Washington', 'WA'],\n ['West Virginia', 'WV'],\n ['Wisconsin', 'WI'],\n ['Wyoming', 'WY'],\n ]\n\n const provinces = [\n ['Alberta', 'AB'],\n ['British Columbia', 'BC'],\n ['Manitoba', 'MB'],\n ['New Brunswick', 'NB'],\n ['Newfoundland', 'NF'],\n ['Northwest Territory', 'NT'],\n ['Nova Scotia', 'NS'],\n ['Nunavut', 'NU'],\n ['Ontario', 'ON'],\n ['Prince Edward Island', 'PE'],\n ['Quebec', 'QC'],\n ['Saskatchewan', 'SK'],\n ['Yukon', 'YT'],\n ]\n\n const regions = states.concat(provinces)\n\n let i // Reusable loop variable\n\n if (to == TO_ABBREVIATED) {\n const match = input.replace(/\\w\\S*/g, function (txt) {\n return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase()\n })\n for (i = 0; i < regions.length; i++) {\n if (regions[i][0] === match) {\n return regions[i][1]\n }\n }\n } else if (to == TO_NAME) {\n const match = input.toUpperCase()\n for (i = 0; i < regions.length; i++) {\n if (regions[i][1] === match) {\n return regions[i][0]\n }\n }\n }\n\n return input\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, onBeforeMount } from '@vue/composition-api'\nimport { AgGridVue } from '@ag-grid-community/vue'\nimport { AllCommunityModules } from '@ag-grid-community/all-modules'\nimport DateTimeInput from '@/elements/DateTimeInput.vue'\nimport loading from '@/elements/Loading.vue'\nimport { startCase } from 'lodash'\nimport dayjs from 'dayjs'\nimport utc from 'dayjs/plugin/utc'\nimport { convertRegion } from '@/lib/support/utilities/address/stateAbbreviations'\n\n//import store from '@/store'\nimport upwardRunningClient from '@/clients/upwardRunningClient'\n\nexport default defineComponent({\n name: 'StripeBalanceTransactionPanel',\n components: {\n AgGridVue,\n loading,\n DateTimeInput,\n },\n setup() {\n const isLoading = ref(false)\n const rowData = ref(null)\n const gridOptions = ref(null)\n const api = ref(null)\n const columnApi = ref(null)\n const modules = ref(AllCommunityModules)\n\n const startDate = ref(dayjs().subtract(2, 'day').startOf('day').toDate())\n const endDate = ref(dayjs().subtract(2, 'day').endOf('day').toDate())\n\n dayjs.extend(utc)\n\n function dateFormatter(params: any) {\n return params.value\n ? `${dayjs.utc(params.value).format('MM/DD/YYYY hh:mm A')} (${dayjs(params.value).format('hh:mm A')})`\n : ''\n }\n\n function dateCsvFormatter(params: any) {\n return params.value ? `${dayjs.utc(params.value).format('YYYY-MM-DD HH:mm')}` : ''\n }\n\n const intlNumberFormatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD',\n signDisplay: 'never',\n })\n\n function moneyFormatter(params: any) {\n const baseValue = params.value ? intlNumberFormatter.format(params.value) : ''\n return params.value < 0 ? `(${baseValue})` : baseValue\n }\n\n function moneyClassSelector(params: any) {\n return params.value && params.value < 0 ? 'negative-money' : ''\n }\n\n function warningFormatter(params: any) {\n return params.data.errorMessage ? ` ${params.value}` : params.value\n }\n\n function warningClassSelector(params: any) {\n return params.data.errorMessage ? 'fas fa-exclamation-triangle negative-money' : ''\n }\n\n function stateFormatter(params: any) {\n return convertRegion(params.value, 2)\n }\n\n onBeforeMount(() => {\n gridOptions.value = {}\n })\n\n function onReady(params: any) {\n api.value = params.api\n columnApi.value = params.columnApi\n rowData.value = []\n }\n\n function exportGrid() {\n api.value.exportDataAsCsv()\n }\n\n const columnDefs: any = {\n type: {\n cellClass: warningClassSelector,\n valueFormatter: warningFormatter,\n },\n created: {\n valueFormatter: dateFormatter,\n },\n amount: {\n valueFormatter: moneyFormatter,\n cellClass: moneyClassSelector,\n },\n fees: {\n valueFormatter: moneyFormatter,\n cellClass: moneyClassSelector,\n },\n net: {\n valueFormatter: moneyFormatter,\n cellClass: moneyClassSelector,\n },\n tax: {\n valueFormatter: moneyFormatter,\n cellClass: moneyClassSelector,\n },\n revenue: {\n valueFormatter: moneyFormatter,\n cellClass: moneyClassSelector,\n },\n owedToChurch: {\n valueFormatter: moneyFormatter,\n cellClass: moneyClassSelector,\n },\n state: {\n valueFormatter: stateFormatter,\n },\n }\n\n function getColumnDefs(name: string) {\n return columnDefs[name] ?? {}\n }\n\n async function loadReport() {\n isLoading.value = true\n\n let columns = []\n\n try {\n let dataSource = await upwardRunningClient.retrieveBalanceTransactionReport({\n //TODO link these to controls\n startDate: startDate.value,\n endDate: endDate.value,\n limit: 0,\n })\n if (!dataSource) {\n dataSource = []\n }\n\n if (dataSource.length > 0) {\n var fieldNames = Object.keys(dataSource[0])\n //var defColDefs = getDefaultColDefs()\n for (var name of fieldNames) {\n columns.push({\n field: name,\n headerName: startCase(name),\n ...{}, //...[defColDefs],\n ...getColumnDefs(name),\n })\n }\n }\n\n rowData.value = dataSource\n // need to clear columns before setting columns\n api.value.setColumnDefs([])\n api.value.setColumnDefs(columns)\n api.value.setSortModel([]) //(sortModel.value)\n } catch (err) {\n rowData.value = []\n }\n isLoading.value = false\n }\n\n function onFirstDataRendered() {\n if (rowData.value && rowData.value.length > 0) {\n columnApi.value.autoSizeColumns(Object.keys(rowData.value[0]), false)\n }\n }\n\n function downloadCsv() {\n const parms = { processCellCallback: csvProcessCellCallback }\n api.value.exportDataAsCsv(parms)\n }\n\n function csvProcessCellCallback(params: any) {\n switch (params.column.getColId()) {\n case 'created':\n return dateCsvFormatter(params)\n case 'state':\n return stateFormatter(params)\n default:\n return params.value\n }\n }\n\n return {\n loadReport,\n downloadCsv,\n isLoading,\n exportGrid,\n gridOptions,\n rowData,\n modules,\n onReady,\n startDate,\n endDate,\n onFirstDataRendered,\n }\n },\n})\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!./StripeBalanceTransactionPanel.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!./StripeBalanceTransactionPanel.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StripeBalanceTransactionPanel.vue?vue&type=template&id=5fde2a60&\"\nimport script from \"./StripeBalanceTransactionPanel.vue?vue&type=script&lang=ts&\"\nexport * from \"./StripeBalanceTransactionPanel.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StripeBalanceTransactionPanel.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, onMounted, ref } from '@vue/composition-api'\nimport Card from '@/components/Card.vue'\nimport ProductCachePanel from '@/views/AdminDash/vues/ProductCachePanel.vue'\nimport TwilioApplicationPanel from '@/views/AdminDash/vues/TwilioApplicationPanel.vue'\nimport EmailSuppressionPanel from '@/views/AdminDash/vues/EmailSuppressionPanel.vue'\nimport StripeBalanceTransactionPanel from '@/views/AdminDash/vues/StripeBalanceTransactionPanel.vue'\nimport { canViewStripeReport } from '@/models/UpwardRunning/Auth/UpwardRunningCredentials'\nimport store from '@/store'\n\nexport default defineComponent({\n components: {\n Card,\n ProductCachePanel,\n TwilioApplicationPanel,\n EmailSuppressionPanel,\n StripeBalanceTransactionPanel,\n },\n\n setup(p, ctx) {\n const disabled = ref(false)\n // quick guard of this component.\n onMounted(() => {\n if (!store.getters.authorization.isCurrentUserAnAdmin) {\n disabled.value = true\n }\n })\n\n const isUserReallyASuperAdmin = computed(() => store.getters.authorization.isCurrentUserASuperAdmin)\n\n const canRunStripeReport = computed(() => {\n const urCreds = store.getters.upwardRunningAuth.urCreds\n return urCreds != null && canViewStripeReport(urCreds)\n })\n\n async function impersonate(payload: { userName?: string; accountNumber: string }) {\n await store.dispatch.authorization.impersonate(payload)\n await ctx.root.$router.push('/')\n }\n return { disabled, impersonate, isUserReallyASuperAdmin, canRunStripeReport }\n },\n})\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!./Tools.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!./Tools.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Tools.vue?vue&type=template&id=677dc3b4&\"\nimport script from \"./Tools.vue?vue&type=script&lang=ts&\"\nexport * from \"./Tools.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Tools.vue?vue&type=style&index=0&lang=scss&\"\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('div',[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row pt-3 pb-3\"},[_c('div',{staticClass:\"col-sm-auto\"},[_c('h5',{staticClass:\"px-3\"},[_c('router-link',{staticClass:\"text-primary\",attrs:{\"to\":\"../..\"}},[_vm._v(\"Admin Dashboard\")]),_vm._v(\" > Return Detail \")],1)])]),(_vm.loading)?_c('div',[_c('loading')],1):_c('div',[(_vm.currentOrderInfo && _vm.currentOrder)?_c('returns-order-detail',{attrs:{\"order-info\":_vm.currentOrderInfo,\"order\":_vm.currentOrder},on:{\"status-changed\":_vm.statusChanged}}):_c('div',{staticClass:\"alert alert-warning\",attrs:{\"role\":\"alert\"}},[_vm._v(_vm._s(_vm.errorMessage))])],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:\"container-fluid mb-5\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"order-detail-layout\"},[_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Details\")]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Return Order Number: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order.upwardOrderID))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Order Date: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderDate))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Placed By: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderInfo.createdBy))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"League: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderInfo.leagueName))])])]),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Status History\")]),_c('table',_vm._l((_vm.statusList),function(sl,i){return _c('tr',{key:i,staticClass:\"py-1\"},[_c('td',{staticClass:\"small text-muted px-1\"},[_vm._v(_vm._s(_vm.formatDate(sl.createDate)))]),_c('td',{staticClass:\"field px-3\"},[_vm._v(_vm._s(sl.createdBy))]),_c('td',{staticClass:\"field px-3\"},[_vm._v(_vm._s(sl.statusDescription))]),_c('td',{staticClass:\"field px-3\"},[_vm._v(_vm._s(sl.notes))])])}),0)])])])]),(_vm.statusNoteBlockVisible)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"p-3\"},[_c('memo-input',{attrs:{\"label\":\"Current Status Notes:\",\"maxLength\":2000},model:{value:(_vm.currStatusNote),callback:function ($$v) {_vm.currStatusNote=$$v},expression:\"currStatusNote\"}})],1)]),_c('div',{staticClass:\"col align-bottom mt-10\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\",\"disabled\":_vm.statusButtonDisabled},on:{\"click\":_vm.saveNote}},[_vm._v(\" \"+_vm._s(_vm.statusButtonText)+\" \")]),_c('checkbox-input',{attrs:{\"enabled\":_vm.statusCheckboxEnabled,\"label\":_vm.statusCheckboxText},model:{value:(_vm.moveToNextStatus),callback:function ($$v) {_vm.moveToNextStatus=$$v},expression:\"moveToNextStatus\"}}),(_vm.showNextStatus)?_c('select-input',{attrs:{\"required\":_vm.showNextStatus,\"disabled\":!_vm.showNextStatus,\"text-property-name\":\"description\",\"value-property-name\":\"upwardTypeID\",\"items-list\":_vm.returnStatuses,\"label\":\"New Return Status\"},model:{value:(_vm.selectedStatus),callback:function ($$v) {_vm.selectedStatus=$$v},expression:\"selectedStatus\"}}):_vm._e()],1)]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('returns-order-list-section',{staticClass:\"border-top pt-3\",attrs:{\"order\":_vm.order}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Items\")])])])],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('button',{staticClass:\"float-right\",on:{\"click\":_vm.download}},[_c('i',{staticClass:\"fas fa-file-csv\"})]),_vm._t(\"title\",[_c('h5',{staticClass:\"mt-5\"},[_vm._v(\"Itemized Order List\")])]),_c('div',{},[_c('simple-grid',{attrs:{\"grid-data\":_vm.orderList,\"columns\":_vm.columns,\"table-striped\":true}})],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport currency from '@/filters/currency'\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\nimport { xReturnOrderExt, xReturnOrderLineExt } from '@/models/Order/xReturnOrderExt'\nimport { downloadCSV } from '@/lib/common/csv/downloadCSV'\n\nexport default defineComponent({\n components: {\n SimpleGrid,\n },\n props: {\n order: {\n type: Object as PropType,\n\n required: true,\n },\n },\n setup(props) {\n const columns = computed(() => {\n return [\n { field: 'productLabel', headerText: 'Item Name', width: 300 },\n { field: 'gpItems', headerText: 'GP Item Code(s)' },\n { field: 'program', headerText: 'Program' },\n { field: 'color', headerText: 'Color' },\n { field: 'size', headerText: 'Size' },\n { field: 'orderQuantity', headerText: 'Quantity' },\n { field: 'reason', headerText: 'Reason For Return' },\n { field: 'cargo', headerText: 'Player(s) Name(s)' },\n ] as GridColumn[]\n })\n\n interface OrderListItem {\n productLabel: string\n gpItems: string\n program: string | null\n color: string | null\n size: string | null\n orderQuantity: number\n reason: string\n cargo: string | null\n }\n const orderList = computed(() =>\n props.order?.orderLinesExt\n ?.filter((x) => x.quantity)\n .map(\n (x) =>\n ({\n productLabel: x.cmsProductName,\n gpItems: getGPItemCodes(x),\n program: x.programDescription,\n color: x.colorDescription,\n size: x.sizeDescription,\n orderQuantity: x.quantity,\n reason: x.reasonDescription,\n cargo: x.notes,\n } as OrderListItem)\n )\n )\n\n function getGPItemCodes(extLine: xReturnOrderLineExt) {\n if (extLine.gpItemCodes.length > 0) {\n return extLine.gpItemCodes.join()\n } else {\n return 'Unknown'\n }\n }\n\n function getCost(cost: number) {\n return currency(cost)\n }\n\n function download() {\n downloadCSV(columns.value, orderList.value, 'return_order_items.csv')\n }\n\n return { getCost, orderList, columns, download }\n },\n})\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!./ReturnsOrderListSection.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!./ReturnsOrderListSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReturnsOrderListSection.vue?vue&type=template&id=7bd6cd32&scoped=true&\"\nimport script from \"./ReturnsOrderListSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReturnsOrderListSection.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ReturnsOrderListSection.vue?vue&type=style&index=0&id=7bd6cd32&lang=scss&scoped=true&\"\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 \"7bd6cd32\",\n null\n \n)\n\nexport default component.exports","export interface ReturnOrderStatus {\n fromTypeOrderStatusID: string\n toTypeOrderStatusID: string\n note: string | null\n}\n\nexport function getEmptyReturnOrderStatus() {\n return {\n fromTypeOrderStatusID: '',\n toTypeOrderStatusID: '',\n note: '',\n } as ReturnOrderStatus\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, PropType, ref, watch, onMounted } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\nimport dayjs from 'dayjs'\n\nimport InputLabel from '@/elements/InputLabel.vue'\nimport ReturnsOrderListSection from './ReturnsOrderListSection.vue'\nimport ShippingAddressDisplay from '@/components/ShippingAddressDisplay.vue'\nimport OrderShipper from '@/components/OrderHistory/OrderShippers.vue'\nimport CostSummary from '@/components/OrderHistory/CostSummary.vue'\nimport MemoInput from '@/elements/MemoInput.vue'\nimport CheckboxInput from '@/elements/CheckboxInput.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\n\nimport store from '@/store'\nimport ordersClient from '@/clients/ordersClient'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\nimport { xReturnOrder } from '@/GeneratedTypes/xOrder/xReturnOrder'\nimport { SectionNameConversion } from '@/views/Programs/Orders/vues/history/ext/SectionNames'\nimport { ReturnOrderStatus, getEmptyReturnOrderStatus } from '@/models/Order/ReturnOrderStatus'\nimport { UpwardOrderStatusTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardOrderStatusTypeID'\n\nexport default defineComponent({\n name: 'ReturnsOrderDetail',\n components: {\n ReturnsOrderListSection,\n InputLabel,\n ShippingAddressDisplay,\n OrderShipper,\n CostSummary,\n MemoInput,\n CheckboxInput,\n SelectInput,\n },\n props: {\n order: { type: Object as PropType, required: true },\n orderInfo: { type: Object as PropType, required: true },\n },\n setup(props, ctx) {\n const currStatusNote = ref(props.orderInfo.statusNote)\n const moveToNextStatus = ref(false)\n const statusButtonText = ref('Save Status Note')\n const statusButtonDisabled = ref(true)\n const statusCheckboxText = ref('')\n const statusCheckboxEnabled = ref(false)\n const statusNoteBlockVisible = ref(props.orderInfo.upwardOrderStatusID != 'COMPLETE')\n const rmaStatusModel = ref(getEmptyReturnOrderStatus())\n const selectedStatus = ref('')\n const statusList = computed(() =>\n cloneDeep(props.orderInfo.statusList ?? []).sort((a, b) =>\n a.valueOf() == b.valueOf() ? 0 : a.valueOf() > b.valueOf() ? -1 : 1\n )\n )\n\n const statusText = computed(() => props.orderInfo.upwardOrderStatusID ?? 'n/a')\n const orderDate = computed(() => props.orderInfo?.createDate && formatDate(props.orderInfo.createDate))\n function formatDate(d: Date) {\n return dayjs(d).format('MMM D, YYYY h:mm a')\n }\n const orderTitle = computed(() => SectionNameConversion[props.order.upwardOrderType ?? ''])\n const returnStatuses = ref([])\n\n onMounted(() => {\n store.dispatch.returnStatusTypes.fetchAll(false) //get these cached up\n returnStatuses.value = cloneDeep(store.getters.returnStatusTypes.allItems)\n })\n\n watch(\n () => store.getters.returnStatusTypes.allItems,\n () => {\n returnStatuses.value = cloneDeep(store.getters.returnStatusTypes.allItems)\n }\n )\n\n watch(\n () => currStatusNote.value,\n () => {\n updateStatusNoteSection()\n },\n { immediate: true }\n )\n\n watch(\n () => props.orderInfo,\n () => {\n updateStatusNoteSection()\n }\n )\n\n function updateStatusNoteSection() {\n if (props.orderInfo.upwardOrderStatusID == 'NEW') {\n statusCheckboxText.value = 'Send to Accounting'\n statusButtonDisabled.value = false\n if (currStatusNote.value) {\n statusButtonText.value = 'Save Status Note'\n statusCheckboxEnabled.value = true\n } else {\n statusButtonText.value = 'Place under SCM Review'\n statusCheckboxEnabled.value = false\n moveToNextStatus.value = false\n }\n } else {\n statusCheckboxText.value = 'Change status'\n statusButtonText.value = 'Save Status Note'\n if (currStatusNote.value) {\n statusCheckboxEnabled.value = true\n statusButtonDisabled.value = false\n } else {\n statusButtonDisabled.value = true\n statusCheckboxEnabled.value = false\n moveToNextStatus.value = false\n }\n }\n }\n\n async function saveNote() {\n //call the save and refresh the order so the status section gets refreshed\n rmaStatusModel.value.fromTypeOrderStatusID = props.orderInfo.upwardOrderStatusID ?? ''\n rmaStatusModel.value.toTypeOrderStatusID = props.orderInfo.upwardOrderStatusID ?? '' //default; change if needed below\n rmaStatusModel.value.note = currStatusNote.value\n\n //check edge case first\n if (props.orderInfo.upwardOrderStatusID == 'NEW') {\n if (moveToNextStatus.value) {\n rmaStatusModel.value.toTypeOrderStatusID = 'RETURNS_ACCOUNTING'\n } else {\n rmaStatusModel.value.toTypeOrderStatusID = 'RETURNS_SCM'\n }\n } else {\n if (moveToNextStatus.value) {\n rmaStatusModel.value.toTypeOrderStatusID = selectedStatus.value\n }\n }\n\n await ordersClient.setRMAStatus(props.orderInfo.upwardOrderID ?? '', rmaStatusModel.value).then(() => {\n ctx.emit('status-changed')\n })\n\n moveToNextStatus.value = false\n }\n\n const showNextStatus = computed(\n () => moveToNextStatus.value && props.orderInfo.upwardOrderStatusID !== 'NEW'\n )\n\n return {\n statusText,\n orderDate,\n statusList,\n formatDate,\n orderTitle,\n currStatusNote,\n saveNote,\n moveToNextStatus,\n statusButtonText,\n statusButtonDisabled,\n statusCheckboxText,\n statusCheckboxEnabled,\n statusNoteBlockVisible,\n selectedStatus,\n returnStatuses,\n showNextStatus,\n }\n },\n})\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!./ReturnsOrderDetail.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!./ReturnsOrderDetail.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReturnsOrderDetail.vue?vue&type=template&id=8f7afcec&scoped=true&\"\nimport script from \"./ReturnsOrderDetail.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReturnsOrderDetail.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ReturnsOrderDetail.vue?vue&type=style&index=0&id=8f7afcec&scoped=true&lang=scss&\"\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 \"8f7afcec\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport { xReturnOrderExt } from '@/models/Order/xReturnOrderExt'\nimport ReturnsOrderDetail from '@/views/AdminDash/vues/ReturnsOrderDetail.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { loadReturnsOrder } from '@/lib/components/OrderDetail/loadOrder'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\n\nexport default defineComponent({\n name: 'ReturnsOrderDetailPage',\n components: { Loading, ReturnsOrderDetail },\n setup(props, ctx) {\n const currentOrder = ref(null)\n const currentOrderInfo = ref(null)\n const loading = ref(false)\n const errorMessage = ref('')\n\n watch(\n () => ctx.root.$route,\n () => getOrderByRoute(),\n { immediate: true }\n )\n\n function clearErrorClicked() {\n alert('clear error TBD')\n }\n\n async function getOrderByRoute() {\n const league = ctx.root.$route.params.id ?? ''\n const orderid = ctx.root.$route.params.orderid ?? ''\n try {\n loading.value = true\n\n await loadReturnsOrder(league, orderid, currentOrder, currentOrderInfo, errorMessage)\n } catch (e) {\n errorMessage.value = e.errorObject?.message || e.message\n loading.value = false\n throw e\n }\n loading.value = false\n }\n\n async function statusChanged() {\n await getOrderByRoute()\n }\n\n return {\n currentOrder,\n errorMessage,\n currentOrderInfo,\n loading,\n clearErrorClicked,\n statusChanged,\n }\n },\n})\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!./ReturnsOrderDetailScreen.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!./ReturnsOrderDetailScreen.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ReturnsOrderDetailScreen.vue?vue&type=template&id=7a3aabc6&scoped=true&\"\nimport script from \"./ReturnsOrderDetailScreen.vue?vue&type=script&lang=ts&\"\nexport * from \"./ReturnsOrderDetailScreen.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ReturnsOrderDetailScreen.vue?vue&type=style&index=0&id=7a3aabc6&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 \"7a3aabc6\",\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('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"col-sm-auto\"},[_c('h5',{staticClass:\"px-3\"},[_c('router-link',{attrs:{\"to\":\"/admin-dashboard\"}},[_vm._v(\"Admin Dashboard\")]),_vm._v(\" > > Ministry Impact Report for \"+_vm._s(_vm.accountNumber)+\" \")],1)]),_c('div',{staticClass:\"row p-2\"},[_c('div',{staticClass:\"col-sm-3\"},[_c('select-input',{attrs:{\"valuePropertyName\":\"value\",\"textPropertyName\":\"text\",\"items-list\":_vm.validType,\"label\":\"Date Compare Type\"},model:{value:(_vm.compareType),callback:function ($$v) {_vm.compareType=$$v},expression:\"compareType\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('date-input',{attrs:{\"label\":\"Start Date\",\"min-date\":new Date(_vm.dateLimits.min),\"max-date\":new Date(_vm.dateLimits.max)},model:{value:(_vm.selectedBeginDate),callback:function ($$v) {_vm.selectedBeginDate=$$v},expression:\"selectedBeginDate\"}})],1),_c('div',{staticClass:\"col-sm-3\"},[_c('date-input',{attrs:{\"label\":\"End Date\",\"min-date\":new Date(_vm.dateLimits.min),\"max-date\":new Date(_vm.dateLimits.max)},model:{value:(_vm.selectedEndDate),callback:function ($$v) {_vm.selectedEndDate=$$v},expression:\"selectedEndDate\"}})],1)]),_c('div',{staticClass:\"col\"},[_c('button',{staticClass:\"btn btn-success\",class:{ disabled: !_vm.areWeReady },attrs:{\"disabled\":!_vm.areWeReady},on:{\"click\":_vm.runReportClicked}},[_c('i',{staticClass:\"fa fa-search\"}),_vm._v(\" Get Report \")])]),_c('div',{staticClass:\"col text-right\"},[(!_vm.loading)?_c('button',{staticClass:\"btn btn-success m-1\",on:{\"click\":_vm.downloadCsv}},[_c('i',{staticClass:\"fa fa-export\"}),_vm._v(\"Export \")]):_vm._e()]),(_vm.loading)?_c('div',[_c('loading')],1):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.loading && _vm.rowData != null),expression:\"!loading && rowData != null\"}],staticClass:\"row\"},[_c('ag-grid-vue',{staticClass:\"ag-theme-alpine\",style:(\"width: 100%; height: 500px\"),attrs:{\"gridOptions\":_vm.gridOptions,\"rowData\":_vm.rowData,\"modules\":_vm.modules,\"page-settings\":_vm.pageSettings,\"defaultColDef\":{\n sortable: true,\n resizable: true,\n filter: true,\n }},on:{\"grid-ready\":_vm.onReady,\"first-data-rendered\":_vm.onFirstDataRendered}})],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\nimport { computed, defineComponent, onMounted, ref } from '@vue/composition-api'\nimport SearchInput from '@/elements/SearchInput.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport Loading from '@/elements/Loading.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport reportsClient from '@/clients/reportsClient'\nimport dayjs from 'dayjs'\nimport { AgGridVue } from '@ag-grid-community/vue'\nimport DateInput from '@/elements/DateInput.vue'\nimport { AllCommunityModules } from '@ag-grid-community/all-modules'\nimport { PageSettings } from '@/models/Grid/PageSettings'\n\nexport default defineComponent({\n name: 'MinistryImpactReport',\n components: {\n Loading,\n TextInput,\n SelectInput,\n SearchInput,\n AgGridVue,\n DateInput,\n },\n setup(props, ctx) {\n const maxDate = computed(() => dayjs().add(1, 'year').format('MM/DD/YYYY'))\n const defaultStartDate = computed(() => dayjs().subtract(90, 'day').format('MM/DD/YYYY'))\n const selectedBeginDate = ref(defaultStartDate.value)\n const selectedEndDate = ref(dayjs().subtract(1, 'day').format('MM/DD/YYYY'))\n const pageSettings: PageSettings = { pageSize: 999999 } as PageSettings\n\n const accountNumber = ctx.root.$route.params.acct ?? ''\n\n const dateLimits = ref({\n min: '04/01/2020',\n max: maxDate.value,\n })\n\n const validType = ref<{ text: string; value: string }[]>([])\n const modules = ref(AllCommunityModules)\n const gridOptions: any = {\n suppressColumnVirtualisation: true,\n }\n let api: any = null\n let columnApi: any = null\n let rowData: any = ref(null)\n\n onMounted(() => {\n validType.value.push({ text: 'First Practice Date', value: 'FPD' })\n validType.value.push({ text: 'First Game Date', value: 'FGD' })\n validType.value.push({ text: 'Season End Date', value: 'SED' })\n })\n\n const compareType = ref('FPD')\n\n const areWeReady = computed(() => selectedBeginDate.value || selectedEndDate.value || compareType.value)\n\n function onReady(params: any) {\n api = params.api\n columnApi = params.columnApi\n let columns = []\n columns.push({\n field: 'ImpactKey',\n headerName: 'Impact Key',\n })\n columns.push({\n field: 'ImpactValue',\n headerName: 'Impact Value',\n })\n\n api.setColumnDefs(columns)\n }\n function onFirstDataRendered() {\n const cols = ['ImpactKey', 'ImpactValue']\n columnApi.autoSizeColumns(cols, false)\n }\n\n async function runReportClicked() {\n loading.value = true\n\n try {\n const ministryImpactData =\n (await reportsClient.getMinistryImpactData(\n accountNumber,\n compareType.value,\n selectedBeginDate.value,\n selectedEndDate.value\n )) ?? []\n\n rowData.value = ministryImpactData\n } catch (err) {\n rowData.value = []\n }\n\n loading.value = false\n }\n const errorMessage = ref('')\n\n const loading = ref(false)\n\n function downloadCsv() {\n const parms = { processCellCallback: csvProcessCellCallback }\n api.exportDataAsCsv(parms)\n }\n function csvProcessCellCallback(params: any) {\n return params.value\n }\n\n return {\n areWeReady,\n loading,\n runReportClicked,\n validType,\n errorMessage,\n compareType,\n selectedBeginDate,\n selectedEndDate,\n dateLimits,\n gridOptions,\n modules,\n rowData,\n onReady,\n onFirstDataRendered,\n downloadCsv,\n pageSettings,\n accountNumber,\n }\n },\n})\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!./MinistryImpactReport.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!./MinistryImpactReport.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MinistryImpactReport.vue?vue&type=template&id=d0fa54b0&\"\nimport script from \"./MinistryImpactReport.vue?vue&type=script&lang=ts&\"\nexport * from \"./MinistryImpactReport.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MinistryImpactReport.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('alert-cloak',{key:_vm.orderType,attrs:{\"type\":_vm.alertTypes,\"uncloak\":true}},[_c('Order',{attrs:{\"order-step\":_vm.orderStep,\"order-type\":_vm.orderType},on:{\"order-step-changed\":_vm.orderStepChanged}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { computed, defineComponent, onMounted } from '@vue/composition-api'\nimport Order from '@/views/Programs/Orders/vues/Order.vue'\nimport AlertCloak, { AlertCloakTypes } from '@/components/AlertCloak.vue'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ManualOrderFrame',\n components: {\n Order,\n AlertCloak,\n },\n\n setup(props, ctx) {\n onMounted(() => {\n store.dispatch.gpOrderTypes.fetchAll(false) //get these cached up\n })\n\n return {\n alertTypes: [AlertCloakTypes.SALES_TAX],\n orderStep: computed(() => ctx.root.$route.params.step),\n orderType: computed(() => OrderTypesEnum.manual),\n orderStepChanged: async (step: string) => {\n const lowerStep = step.toLocaleLowerCase()\n if (ctx.root.$route.params.step != lowerStep) {\n await ctx.root.$router.push({\n params: { ...ctx.root.$router.currentRoute.params, step: lowerStep },\n })\n }\n },\n }\n },\n})\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!./ManualOrderFrame.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!./ManualOrderFrame.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ManualOrderFrame.vue?vue&type=template&id=69f16f9d&\"\nimport script from \"./ManualOrderFrame.vue?vue&type=script&lang=ts&\"\nexport * from \"./ManualOrderFrame.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'\nimport Resources from '@/views/Resources.vue'\nimport Dashboard from '@/views/AdminDash/Dashboard.vue'\nimport RegistrationTransactionsScreen from '@/views/AdminDash/vues/RegistrationTransactionsScreen.vue'\nimport OrderSearchScreen from '@/views/AdminDash/vues/OrderSearchScreen.vue'\nimport OrderDetailScreen from '@/views/AdminDash/vues/OrderHistory/OrderDetailScreen.vue'\nimport RunningOrderDetailScreen from '@/views/AdminDash/vues/OrderHistory/RunningOrderDetailScreen.vue'\nimport AdminTools from '@/views/AdminDash/vues/AdminTools/Tools.vue'\nimport ReturnsOrderDetailScreen from '@/views/AdminDash/vues/ReturnsOrderDetailScreen.vue'\nimport MinistryImpactReport from '@/views/AdminDash/vues/OrdersAdmin/Reports/MinistryImpactReport.vue'\nimport ManualOrderFrame from '@/views/AdminDash/vues/OrdersAdmin/ManualOrders/ManualOrderFrame.vue'\n\nexport default [\n {\n path: '/admin-dashboard',\n name: 'admin-dashboard',\n component: Dashboard,\n children: [],\n },\n {\n path: '/admin-dashboard/resources',\n // for now (pending #2093)\n component: Resources,\n },\n {\n path: '/admin-dashboard/opr-search',\n component: RegistrationTransactionsScreen,\n },\n {\n path: '/admin-dashboard/order-search',\n component: OrderSearchScreen,\n },\n {\n path: '/admin-dashboard/:id/manual-order/:step',\n component: ManualOrderFrame,\n },\n {\n path: '/admin-dashboard/order-detail/:id/:orderid',\n component: OrderDetailScreen,\n },\n {\n path: '/admin-dashboard/running-order-detail/:id/:orderid',\n component: RunningOrderDetailScreen,\n },\n {\n path: '/admin-dashboard/returns-order-detail/:id/:orderid',\n component: ReturnsOrderDetailScreen,\n },\n {\n path: '/admin-dashboard/order-search/order-detail/:id/:orderid',\n component: OrderDetailScreen,\n },\n {\n path: '/admin-dashboard/order-search/running-order-detail/:id/:orderid',\n component: RunningOrderDetailScreen,\n },\n {\n path: '/AdminDash/Reports/MinistryImpact/:acct',\n component: MinistryImpactReport,\n },\n {\n path: '/AdminDash/AdminTools',\n component: AdminTools,\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c(_vm.reportComponent,{tag:\"component\"})],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('active-report',{ref:\"activereport\",attrs:{\"status\":_vm.loadStatus,\"loading\":_vm.loading,\"reportName\":\"CoachRoster\"},on:{\"report-loaded\":_vm.reportLoaded}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, onMounted } from '@vue/composition-api'\nimport reportsClient from '@/clients/reportsClient'\nimport ActiveReport from '@/views/Programs/Reports/vues/ActiveReport.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'CoachRoster',\n components: {\n ActiveReport,\n },\n setup(props, ctx) {\n const accountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const loading = ref(true)\n const loadStatus = ref('')\n\n const upwardLeagueId = computed(() => ctx.root.$route.params.id)\n\n const typeProgramId = computed(() => ctx.root.$route.params.typeProgramId)\n\n const teamId = computed(() => ctx.root.$route.params.teamId)\n\n onMounted(async () => {\n await loadReport()\n })\n\n function reportLoaded() {\n loading.value = false\n }\n\n async function loadReport() {\n loadStatus.value = 'Downloading Report Data . . .'\n\n const data = await Promise.all([\n reportsClient.getCoachRosterByTeamRosterID(\n upwardLeagueId.value,\n accountNumber.value,\n typeProgramId.value,\n teamId.value\n ),\n reportsClient.getCoachSubReport(\n upwardLeagueId.value,\n accountNumber.value,\n '',\n '',\n typeProgramId.value\n ),\n ])\n\n loadStatus.value = 'Downloading Report Templates . . .'\n const reportTemplates = await Promise.all([\n reportsClient.getReportTemplate('coachroster'),\n reportsClient.getReportTemplate('coachsubreport'),\n ])\n\n const report = JSON.parse(reportTemplates[0]?.jsonContent ?? '')\n const subReport = JSON.parse(reportTemplates[1]?.jsonContent ?? '')\n const mainData = data[0]\n const subData = data[1]\n report.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(mainData)\n subReport.DataSources[0].ConnectionProperties.ConnectString = 'jsondata=' + JSON.stringify(subData)\n const resourceLocator = {\n getResource: function (name: string) {\n if (name === 'coach-sub-report.rdlx-json') return subReport\n },\n }\n\n loadStatus.value = 'Loading Report . . .'\n const activeReport: any = ctx.refs.activereport\n activeReport.loadReportData(report, { ResourceLocator: resourceLocator })\n }\n\n return {\n loadStatus,\n loading,\n reportLoaded,\n }\n },\n})\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!./CoachRoster.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!./CoachRoster.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachRoster.vue?vue&type=template&id=63ca5443&\"\nimport script from \"./CoachRoster.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachRoster.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\n\n\n\n\nimport { defineComponent, ref, computed } from '@vue/composition-api'\nimport CoachRoster from '@/views/AllAccess/Reports/CoachRoster.vue'\n\nexport default defineComponent({\n name: 'DynamicReports',\n components: {\n CoachRoster,\n },\n setup(props, ctx) {\n const reports = ref<{\n [reportName: string]: {\n name: string\n component: string\n }\n }>({\n coachroster: {\n name: 'Coaches Report',\n component: 'CoachRoster',\n },\n })\n\n const reportName = computed(() => ctx.root.$route.params.reportName)\n\n const reportComponent = computed(() => {\n if (!reportName.value || !reports.value[reportName.value]) {\n return ''\n }\n return reports.value[reportName.value].component\n })\n\n return {\n reportComponent,\n }\n },\n})\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!./Reports.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!./Reports.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Reports.vue?vue&type=template&id=71c4e92e&\"\nimport script from \"./Reports.vue?vue&type=script&lang=ts&\"\nexport * from \"./Reports.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'\nimport Reports from '@/views/AllAccess/Reports.vue'\n\nexport default [\n {\n path: '/allaccess/:reportName/:id/:typeProgramId/:teamId',\n component: Reports,\n },\n] as RouteConfig[]\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container-fluid image-cover-bg pt-3\"},[_c('v-row',[_c('v-col',[(_vm.bannerItems)?_c('v-carousel',{attrs:{\"height\":\"250\",\"show-arrows\":false,\"interval\":4000,\"cycle\":\"\",\"hide-delimiter-background\":\"\",\"hide-delimiters\":\"\"},model:{value:(_vm.currentBannerImg),callback:function ($$v) {_vm.currentBannerImg=$$v},expression:\"currentBannerImg\"}},_vm._l((_vm.visibleBannerItems),function(bannerItem,i){return _c('v-carousel-item',{key:bannerItem.bannerGraphicUrl,attrs:{\"eager\":\"\",\"href\":bannerItem.actionLink,\"target\":\"_blank\"}},[_c('v-img',{staticClass:\"mx-auto\",attrs:{\"src\":bannerItem.bannerGraphicUrl,\"max-width\":\"1000\"}})],1)}),1):_vm._e(),(_vm.visibleBannerItems.length > 1)?_c('div',{staticClass:\"d-flex flex-wrap justify-content-center\",attrs:{\"id\":\"delimiters\"}},_vm._l((_vm.visibleBannerItems),function(img,i){return _c('div',{key:i,on:{\"click\":function($event){_vm.currentBannerImg = i}}},[_c('i',{staticClass:\"clickable fa-circle p-1 text-white\",class:_vm.currentBannerImg === i ? 'fas' : 'far'})])}),0):_vm._e()],1)],1),_c('v-row',[_c('v-col',[(_vm.features.HOME__SEARCH_AND_NOTIFICATION)?_c('card',[_c('div',{staticClass:\"row\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('text-input',{staticClass:\"col m-0 pr-0 rounded-r-0 border-right-0\",attrs:{\"prepend-icon\":\"fa fa-search\",\"placeholder\":\"What are you looking for?\"},model:{value:(_vm.searchTerm),callback:function ($$v) {_vm.searchTerm=$$v},expression:\"searchTerm\"}}),_c('div',{staticClass:\"col-auto m-0 pl-0 mr-2 rounded-l-0 btn btn-white border-left-0\"},[_vm._v(\" Resources \"),_c('i',{staticClass:\"fa fa-chevron-down\"})])],1)]):_vm._e(),_c('card',{attrs:{\"cardBodyClasses\":\"card-body p-0\"}},[_c('h4',{staticClass:\"text-white\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" Current Programs \"),_c('router-link',{staticClass:\"btn btn-success float-right\",attrs:{\"to\":\"/programs/new\"}},[_c('i',{staticClass:\"fa fa-plus\"}),_vm._v(\" Create Program \")])],1),_c('current-programs',{attrs:{\"noProgramsText\":\"There are no active programs for your church.\"}})],1),(_vm.configCount > 0)?_c('card',[_c('h4',{staticClass:\"text-white\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Previous Estimates\")]),_c('previous-estimates')],1):_vm._e()],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\nimport { defineComponent, ref, computed, onMounted, watch } from '@vue/composition-api'\nimport Card from '@/components/Card.vue'\nimport CurrentPrograms from '@/components/CurrentPrograms.vue'\nimport PreviousEstimates from '@/components/PreviousEstimates.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport { useFeatureFlags } from '@/services/useFeatureFlags'\n\nimport contentManagementClient from '@/clients/contentManagementClient'\nimport { BannerContent } from '@/models/PageContent/BannerContent'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Home',\n components: {\n Card,\n TextInput,\n CurrentPrograms,\n PreviousEstimates,\n },\n setup(props, ctx) {\n const { features } = useFeatureFlags()\n const searchTerm = ref('')\n const bannerItems = ref(null)\n const currentBannerImg = ref(0)\n const configCount = ref(1)\n const configList = computed(() => store.getters.productOfferings.configList)\n\n async function getBannerItems() {\n bannerItems.value = await contentManagementClient.getGatewayBanners()\n }\n\n const visibleBannerItems = computed((): BannerContent[] => {\n if (!bannerItems.value) {\n return []\n }\n\n return bannerItems.value.filter((item) => showBannerItem(item))\n })\n\n function showBannerItem(bannerItem: BannerContent): boolean {\n if (!bannerItem || bannerItem === null) {\n return false\n }\n\n const today = new Date()\n const bothDatesAreNull = !bannerItem.displayStartDate && !bannerItem.displayEndDate\n const onlyStartDateIsUsedAndValid =\n bannerItem.displayStartDate && !bannerItem.displayEndDate && bannerItem.displayStartDate <= today\n const onlyEndDateIsUsedAndValid =\n bannerItem.displayEndDate && !bannerItem.displayStartDate && bannerItem.displayEndDate > today\n const bothStartAndEndUsedAndValid =\n bannerItem.displayStartDate &&\n bannerItem.displayEndDate &&\n bannerItem.displayStartDate <= today &&\n bannerItem.displayEndDate > today\n\n return (\n (bothDatesAreNull ?? false) ||\n (onlyStartDateIsUsedAndValid ?? false) ||\n (onlyEndDateIsUsedAndValid ?? false) ||\n (bothStartAndEndUsedAndValid ?? false)\n )\n }\n\n onMounted(async () => {\n if (store.getters.authorization.isCurrentUserAnAdmin) {\n ctx.root.$router.push('/admin-dashboard')\n }\n\n await getBannerItems()\n })\n\n watch(\n () => configList.value,\n () => {\n configCount.value = configList.value?.length ?? 0\n },\n { deep: true }\n )\n\n return {\n features,\n bannerItems,\n currentBannerImg,\n visibleBannerItems,\n searchTerm,\n configCount,\n }\n },\n})\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!./Home.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!./Home.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=f52be102&\"\nimport script from \"./Home.vue?vue&type=script&lang=ts&\"\nexport * from \"./Home.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 { VCarousel } from 'vuetify/lib/components/VCarousel';\nimport { VCarouselItem } from 'vuetify/lib/components/VCarousel';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCarousel,VCarouselItem,VCol,VImg,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h4',{staticClass:\"px-4 py-1\"},[_vm._v(\"Partner\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'Partner',\n})\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!./Partner.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!./Partner.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Partner.vue?vue&type=template&id=c24c2ae8&\"\nimport script from \"./Partner.vue?vue&type=script&lang=ts&\"\nexport * from \"./Partner.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('h4',{staticClass:\"px-4 py-1\"},[_vm._v(\"Program Planning\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'Planning',\n})\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!./Planning.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!./Planning.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Planning.vue?vue&type=template&id=7d84f55f&\"\nimport script from \"./Planning.vue?vue&type=script&lang=ts&\"\nexport * from \"./Planning.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('div',[_c('h4',{staticClass:\"p-3 m-0 border-bottom border-primary head\"},[_vm._v(\" \"+_vm._s(_vm.partnerSupportPage ? _vm.partnerSupportPage.pageHeader : 'Contact')+\" \")]),(_vm.partnerSupportPage)?_c('full-body',{staticClass:\"px-0 py-3\"},[_c('div',{staticClass:\"border m-3 p-3 bg-light-2 additionalHtml\"},[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.additionalHtmlContentString)}}),_c('a',{attrs:{\"target\":\"_blank\",\"href\":\"https://assets.ctfassets.net/5u92x5h2j2t5/2m2L7tisYcCuxEknzXoKC8/7976754fdfc60efab07f9c37498e9591/Upward_Sports_FAQ.pdf\"}},[_vm._v(\"Myupward FAQ\")])]),_c('div',{staticClass:\"px-3 py-1\"},[_vm._v(\" Regional Representatives serve as your personal consultants who help guide you in your sports ministry. \")]),_c('div',{staticClass:\"p-3 flex-grow-1\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-auto\"},[(_vm.partnerSupportPage)?[_c('img',{staticClass:\"float-left pr-2 pb-2\",attrs:{\"src\":_vm.partnerSupportPage.representativePictureUrl}}),_c('h6',[_vm._v(\"Your Regional Representative: \"+_vm._s(_vm.partnerSupportPage.representativeFullName))]),_c('i',[_vm._v(_vm._s(_vm.partnerSupportPage.tagline))]),_c('div',{staticClass:\"mt-3\"},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.mainBodyContent)}})]),_c('p',[_c('b',[_vm._v(\" \"+_vm._s(_vm.partnerSupportPage.firstName)+\" is here to serve you. Set up a time to talk: \"),_c('a',{attrs:{\"href\":'mailto:' + _vm.partnerSupportPage.representativeEmail}},[_vm._v(\" \"+_vm._s(_vm.partnerSupportPage.representativeEmail)+\" \")])]),_c('br'),_c('b',[_vm._v(\" \"+_vm._s(_vm.partnerSupportPage.cellPhoneNumber)+\" \")])]),_c('b',[_vm._v(_vm._s(_vm.partnerSupportPage.field1Label))]),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.field1ResponseContent)}}),_c('b',[_vm._v(_vm._s(_vm.partnerSupportPage.field2Label)+\":\")]),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.field2ResponseContent)}}),_c('b',[_vm._v(_vm._s(_vm.partnerSupportPage.field3Label)+\":\")]),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.field3ResponseContent)}}),_c('b',[_vm._v(_vm._s(_vm.partnerSupportPage.field4Label)+\":\")]),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.field4ResponseContent)}}),_c('b',[_vm._v(_vm._s(_vm.partnerSupportPage.field5Label)+\":\")]),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.field5ResponseContent)}}),_c('b',[_vm._v(_vm._s(_vm.partnerSupportPage.field6Label)+\":\")]),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.field6ResponseContent)}}),_c('b',[_vm._v(_vm._s(_vm.partnerSupportPage.field7Label)+\":\")]),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.partnerSupportPage.field7ResponseContent)}}),_c('h6',[_vm._v(\"Partner Support Team:\")]),_c('p',[_vm._v(\"Your Partner Support Team is available to assist you with:\")]),_c('ul',[_c('li',[_vm._v(\"Placing orders, shipping, returns, and billing.\")]),_c('li',[_vm._v(\"System Support: MyUpward.org and Mobile Web App\")])])]:_vm._e()],2)])])]):_vm._e(),(!_vm.partnerSupportPage && _vm.loading)?_c('full-body',{staticClass:\"px-0 py-3\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12 text-center\"},[_c('loading')],1)])]):_vm._e(),_c('TheChat')],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('span')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n// @ts-nocheck\n\nimport { Component, Vue } from 'vue-property-decorator'\n\n@Component\nexport default class TheChat extends Vue {\n private initChat() {\n ;(function (g, e, n, es, ys) {\n g['_genesysJs'] = e\n g[e] =\n g[e] ||\n function () {\n ;(g[e].q = g[e].q || []).push(arguments)\n }\n g[e].t = 1 * new Date()\n g[e].c = es\n ys = document.createElement('script')\n ys.async = 1\n ys.src = n\n ys.charset = 'utf-8'\n document.head.appendChild(ys)\n })(window, 'Genesys', 'https://apps.mypurecloud.com/genesys-bootstrap/genesys.min.js', {\n environment: 'use1',\n deploymentId: '8cb067fc-97b0-4d65-ba21-49f3e7d6a801',\n })\n }\n\n private mounted() {\n if (!this.exists()) {\n this.initChat()\n }\n }\n\n private exists() {\n const chat = document.getElementsByClassName('genesys-app')\n return chat.length > 0\n }\n}\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!./TheChat.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!./TheChat.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheChat.vue?vue&type=template&id=199054c9&\"\nimport script from \"./TheChat.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheChat.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed, onMounted, onUnmounted } from '@vue/composition-api'\nimport partnersClient from '@/clients/partnersClient'\nimport contentManagementClient from '@/clients/contentManagementClient'\n\nimport { PartnerSupportPage } from '@/models/PageContent/PartnerSupportPage'\n\nimport TheChat from '@/singletons/TheChat.vue'\nimport FullBody from '@/components/FullBody.vue'\nimport Loading from '@/elements/Loading.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'Contact',\n components: {\n FullBody,\n Loading,\n TheChat,\n },\n setup() {\n const firstAccountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const partnerSupportPage = ref(null)\n const loading = ref(true)\n async function updatePartnerSupportPage() {\n const currentAccountInfo = await partnersClient.getPartnerInfo(firstAccountNumber.value)\n partnerSupportPage.value = await contentManagementClient.getPartnerSupportRep(\n currentAccountInfo?.address1_StateOrProvince ?? ''\n )\n loading.value = false\n }\n\n onMounted(async () => {\n await updatePartnerSupportPage()\n setChatClasses('genesys-app')\n })\n\n onUnmounted(() => {\n setChatClasses('genesys-app d-none')\n })\n\n function setChatClasses(classes: string) {\n //workaround: Make GensysChat visible on this page only\n const chat = document.getElementsByClassName('genesys-app')\n for (var i = 0; i < chat.length; i++) {\n chat[i].className = classes\n }\n }\n\n return {\n partnerSupportPage,\n loading,\n }\n },\n})\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!./Contact.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!./Contact.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Contact.vue?vue&type=template&id=5aaadb94&scoped=true&\"\nimport script from \"./Contact.vue?vue&type=script&lang=ts&\"\nexport * from \"./Contact.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Contact.vue?vue&type=style&index=0&id=5aaadb94&lang=scss&scoped=true&\"\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 \"5aaadb94\",\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('div',{staticClass:\"bg-white\"},[_c('v-app',[_c('h1',[_vm._v(\"Component Test Page\")]),_c('router-link',{staticClass:\"btn btn-primary m-2\",attrs:{\"to\":\"/\"}},[_vm._v(\"Home\")]),_c('accordion',{staticClass:\"mt-2 alternate-bg-light-1-3\"},_vm._l((_vm.componentsToRender),function(component,name){return _c('accordion-item',{key:name},[_c('h5',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\" \"+_vm._s(name)+\" \")]),_c(component,{tag:\"component\"})],1)}),1),_c('div',{staticClass:\"bottomspace\"})],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('TextInput',{attrs:{\"label\":\"Search\",\"placeholder\":\"Enter a value\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('DataTable',{staticClass:\"elevation-1 mt-5 data-table-zebra\",attrs:{\"dense\":\"\",\"headers\":_vm.headers,\"items\":_vm.candy,\"items-per-page\":5,\"sort-by\":\"calories\",\"search\":_vm.search},on:{\"rowSelected\":_vm.rowSelected,\"dblClick\":_vm.dblClick},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('button',{staticClass:\"btn btn-link\",on:{\"click\":function($event){return _vm.actionEvent(item)}}},[_vm._v(\"action\")])]}}])}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-3\"},[_vm._v(\" Click: \"),_c('pre',[_vm._v(_vm._s(_vm.row))])]),_c('div',{staticClass:\"col-3\"},[_vm._v(\" dblClick: \"),_c('pre',[_vm._v(_vm._s(_vm.rowDblClick))])]),_c('div',{staticClass:\"col-3\"},[_vm._v(\" action: \"),_c('pre',[_vm._v(_vm._s(_vm.action))])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { DataTableHeader } from 'vuetify/types'\n\nexport const headers: DataTableHeader[] = [\n {\n text: 'Dessert (100g serving)',\n align: 'start',\n sortable: false,\n value: 'name',\n },\n { text: 'Calories', value: 'calories' },\n { text: 'Fat (g)', value: 'fat' },\n { text: 'Carbs (g)', value: 'carbs' },\n { text: 'Protein (g)', value: 'protein' },\n { text: 'Iron (%)', value: 'iron' },\n { text: '', value: 'actions', sortable: false },\n]\n\nexport interface Candy {\n name: string\n calories: number\n fat: number\n carbs: number\n protein: number\n iron: string\n}\n\nexport const candy = [\n {\n name: 'Frozen Yogurt',\n calories: 159,\n fat: 6.0,\n carbs: 24,\n protein: 4.0,\n iron: '1%',\n },\n {\n name: 'Ice cream sandwich',\n calories: 237,\n fat: 9.0,\n carbs: 37,\n protein: 4.3,\n iron: '1%',\n },\n {\n name: 'Eclair',\n calories: 262,\n fat: 16.0,\n carbs: 23,\n protein: 6.0,\n iron: '7%',\n },\n {\n name: 'Cupcake',\n calories: 305,\n fat: 3.7,\n carbs: 67,\n protein: 4.3,\n iron: '8%',\n },\n {\n name: 'Gingerbread',\n calories: 356,\n fat: 16.0,\n carbs: 49,\n protein: 3.9,\n iron: '16%',\n },\n {\n name: 'Jelly bean',\n calories: 375,\n fat: 0.0,\n carbs: 94,\n protein: 0.0,\n iron: '0%',\n },\n {\n name: 'Lollipop',\n calories: 392,\n fat: 0.2,\n carbs: 98,\n protein: 0,\n iron: '2%',\n },\n {\n name: 'Honeycomb',\n calories: 408,\n fat: 3.2,\n carbs: 87,\n protein: 6.5,\n iron: '45%',\n },\n {\n name: 'Donut',\n calories: 452,\n fat: 25.0,\n carbs: 51,\n protein: 4.9,\n iron: '22%',\n },\n {\n name: 'KitKat',\n calories: 518,\n fat: 26.0,\n carbs: 65,\n protein: 7,\n iron: '6%',\n },\n]\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport { candy, headers, Candy } from './data'\n\nimport DataTable from '@/elements/DataTable/DataTable.vue'\nimport TextInput from '@/elements/TextInput.vue'\n\nimport { DataTableSelection } from '@/models/DataTable/DataTableSelection'\n\nexport default defineComponent({\n name: 'DataTableTest',\n components: { DataTable, TextInput },\n setup() {\n let row = ref({})\n let rowDblClick = ref({})\n const action = ref('')\n const search = ''\n\n function rowSelected(x: DataTableSelection) {\n row.value = x.item\n }\n\n function dblClick(x: DataTableSelection) {\n rowDblClick.value = x.item\n }\n\n function actionEvent(a: Candy) {\n action.value = `Event Fired for ${a.name}`\n }\n\n return { headers, candy, row, rowSelected, dblClick, rowDblClick, actionEvent, action, search }\n },\n})\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!./DataTableTest.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!./DataTableTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DataTableTest.vue?vue&type=template&id=d828946a&\"\nimport script from \"./DataTableTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./DataTableTest.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('div',[_c('Tree',{attrs:{\"items\":_vm.teams,\"selectable\":\"\",\"return-object\":\"\"},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}}),_c('pre',[_vm._v(_vm._s(_vm.selected))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","interface Node {\n [key: string]: any\n children?: T[]\n}\n\ninterface Tree {\n id: number\n name: string\n address: string\n children?: Tree[]\n}\n\nexport const teams: Array> = [\n {\n id: 1,\n name: 'Neighborhood',\n children: [\n {\n id: 10,\n name: 'South End',\n address: '1 Partridge Rd',\n children: [\n {\n id: 20,\n name: 'Turtledove',\n address: '2 Turtledove Ln',\n },\n {\n id: 21,\n name: 'Chicken',\n address: '3 Chicken St',\n },\n {\n id: 22,\n name: 'Calling Bird',\n address: '4 Calling Bird Cir',\n },\n ],\n },\n {\n id: 11,\n name: 'North End',\n address: '1st St',\n children: [\n {\n id: 23,\n name: 'Ball',\n address: '8 Ball Rd',\n },\n {\n id: 24,\n name: 'Innings',\n address: '9 Innings Cir',\n },\n ],\n },\n ],\n },\n]\n","\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\nimport Tree from '@/components/Tree.vue'\nimport { teams } from './data'\nexport default defineComponent({\n name: 'TreeTest',\n props: {},\n data() {\n return { teams }\n },\n components: { Tree },\n setup() {\n const tree = ref([])\n const selected = ref([])\n\n return { tree, selected }\n },\n})\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!./TreeTest.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!./TreeTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TreeTest.vue?vue&type=template&id=a62b78c2&\"\nimport script from \"./TreeTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./TreeTest.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('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('carousel',{staticClass:\"m-3 border bg-white\",attrs:{\"deck\":_vm.deck,\"current\":_vm.current},on:{\"back\":_vm.setCurrent}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { SlideType, SlideButton } from '@/components/Carousel/types/Slide'\n\nexport function createDeck(nextHandler: (id: number) => void, navigateHandler: (path: string) => void) {\n const participantAssignmentQuestion = {\n id: 1,\n order: 1,\n title: 'Are all participants entered and assigned to teams?',\n subtitle: 'Subtitle',\n body:\n 'Body Text accepts HTML, consectetur adipiscing elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum. Praesent mauris. Fusce nec tellus sed augue semper porta.',\n buttons: [\n {\n id: 1,\n order: 1,\n label: 'Yes',\n fnc: () => nextHandler(participantKitQuestion.id),\n } as SlideButton,\n {\n id: 2,\n order: 2,\n label: 'No',\n fnc: () => nextHandler(participantAssignmentWarning.id),\n } as SlideButton,\n ],\n } as SlideType\n\n const participantKitQuestion = {\n id: 2,\n order: 2,\n title: 'Is this what you want ordered for each participant?',\n body:\n 'Body Text accepts HTML, consectetur adipiscing elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum. Praesent mauris. Fusce nec tellus sed augue semper porta.',\n buttons: [\n {\n id: 1,\n order: 1,\n label: 'Yes',\n fnc: () => nextHandler(coachAssignmentQuestion.id),\n } as SlideButton,\n {\n id: 2,\n order: 2,\n label: 'No',\n fnc: () => nextHandler(participantKitChange.id),\n } as SlideButton,\n ],\n } as SlideType\n\n const coachAssignmentQuestion = {\n id: 3,\n order: 3,\n title: 'Have all coaches been added and assigned to teams?',\n buttons: [\n {\n id: 1,\n order: 1,\n label: 'Yes',\n fnc: () => nextHandler(readyToOrder.id),\n } as SlideButton,\n {\n id: 2,\n order: 2,\n label: 'No',\n fnc: () => nextHandler(coachAssignmentWarning.id),\n } as SlideButton,\n ],\n } as SlideType\n\n const readyToOrder = {\n id: 5,\n order: 5,\n title: 'You are ready to start your order.',\n buttons: null,\n } as SlideType\n\n const participantAssignmentWarning = {\n id: 6,\n order: 6,\n title: 'Players not assigned to teams will not appear on this order.',\n buttons: [\n {\n id: 1,\n order: 1,\n label: 'Navigate to other slide',\n fnc: () => nextHandler(participantKitQuestion.id),\n } as SlideButton,\n {\n id: 2,\n order: 2,\n label: 'Link to vue router path',\n fnc: () => navigateHandler('/'),\n } as SlideButton,\n ],\n } as SlideType\n\n const participantKitChange = {\n id: 6,\n order: 6,\n title: 'You can make changes by going to Setup > Product and Pricing',\n buttons: [\n {\n id: 1,\n order: 1,\n label: 'Continue to Order',\n fnc: () => navigateHandler('/'),\n } as SlideButton,\n {\n id: 2,\n order: 2,\n label: 'Assign Participants to Teams',\n fnc: () => navigateHandler('/'),\n } as SlideButton,\n ],\n } as SlideType\n\n const coachAssignmentWarning = {\n id: 6,\n order: 6,\n title: 'Coaches not assigned to teams will not appear on this order.',\n buttons: [\n {\n id: 1,\n order: 1,\n label: 'Continue to Order',\n fnc: () => navigateHandler('/'),\n } as SlideButton,\n {\n id: 2,\n order: 2,\n label: 'Assign Participants to Teams',\n fnc: () => navigateHandler('/'),\n } as SlideButton,\n ],\n } as SlideType\n\n return [\n participantAssignmentQuestion,\n participantKitQuestion,\n coachAssignmentQuestion,\n readyToOrder,\n participantAssignmentWarning,\n ] as SlideType[]\n}\n","\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, computed } from '@vue/composition-api'\nimport Carousel from '@/components/Carousel/Carousel.vue'\nimport { createDeck } from './sampleDeck'\n\nexport default defineComponent({\n components: { Carousel },\n setup(props, ctx) {\n const current = ref(0)\n\n const next = (slideId: number) => (current.value = slideId)\n const navigate = (path: string) => ctx.root.$router.push(path)\n const setCurrent = (slideId: number) => (current.value = slideId)\n\n const deck = createDeck(next, navigate)\n current.value = deck[0].id\n\n return {\n deck,\n current: computed(() => current.value),\n setCurrent,\n }\n },\n})\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!./CarouselTest.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!./CarouselTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CarouselTest.vue?vue&type=template&id=4135471b&\"\nimport script from \"./CarouselTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./CarouselTest.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('div',[_vm._m(0),_c('div',{staticClass:\"row mb-5\"},[_c('div',{staticClass:\"col-3\"},[_c('combobox',{attrs:{\"list\":_vm.list1},model:{value:(_vm.val1),callback:function ($$v) {_vm.val1=$$v},expression:\"val1\"}}),_vm._v(\"value: \"+_vm._s(_vm.val1))],1),_c('div',{staticClass:\"col-3\"},[_c('combobox',{attrs:{\"list\":_vm.list2},model:{value:(_vm.val2),callback:function ($$v) {_vm.val2=$$v},expression:\"val2\"}}),_vm._v(\"value: \"+_vm._s(_vm.val2))],1),_c('div',{staticClass:\"col-3\"},[_c('combobox',{attrs:{\"list\":_vm.list3,\"right-list\":_vm.list3,\"textPropertyName\":\"name\",\"valuePropertyName\":\"id\"},model:{value:(_vm.val3),callback:function ($$v) {_vm.val3=$$v},expression:\"val3\"}}),_vm._v(\"value: \"+_vm._s(_vm.val3)+\" \")],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6 alert alert-warning\"},[_c('p',[_vm._v(\"Combobox.vue accepts any value the user enters.\")]),_c('p',[_vm._v(\" For an autocomplete component that will force the user to select from a predetermined list, please see ComboBoxInput.vue \")])])])}]\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\nimport { defineComponent } from '@vue/composition-api'\nimport Combobox from '@/elements/Combobox.vue'\n\nexport default defineComponent({\n name: 'ComboboxTest',\n props: {},\n components: { Combobox },\n setup() {\n const val1 = '11:00am'\n const list1 = [\n '9:00am',\n '10:00am',\n '11:00am',\n '12:00pm',\n '12:15',\n '12:30pm',\n '1:00pm',\n '1:30pm',\n '2:00pm',\n ]\n const val2 = 'Christina'\n const list2 = ['Amy', 'Brenda', 'Cristina', 'Eva', 'Faith', 'Gin', 'Heather', 'Illea']\n const val3 = 'Heather'\n const list3 = [\n { name: 'Amy', id: 11 },\n { name: 'Brenda', id: 2 },\n { name: 'Cristina', id: 35 },\n { name: 'Eva', id: 4 },\n { name: 'Faith', id: 5 },\n { name: 'Heather', id: 62 },\n { name: 'Illea', id: 7 },\n ].map((l) => l.name)\n return { list1, val1, list2, val2, list3, val3 }\n },\n})\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!./ComboboxTest.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!./ComboboxTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ComboboxTest.vue?vue&type=template&id=0b271704&\"\nimport script from \"./ComboboxTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./ComboboxTest.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('div',[_c('Calendar',{attrs:{\"start-date\":'2022-02-10',\"first-time\":_vm.firstTime,\"last-time\":_vm.lastTime,\"weekdays\":_vm.weekdays,\"events\":_vm.events,\"group-name\":\"calendarTest\",\"matchups\":_vm.lMatchups},on:{\"drop:external\":_vm.eventDropped,\"drop:internal\":_vm.eventMoved,\"click:event\":_vm.eventClick,\"currentRange\":_vm.currentRange},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h5',[_vm._v(\"Header Slot\")])]},proxy:true},{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('span',{staticClass:\"grabbable\"},[_vm._v(\"⁞⁞\")]),_c('div',{staticClass:\"mx-2 d-inline-block\"},[_vm._v(_vm._s(item.name))]),_c('button',{staticClass:\"btn btn-link float-right text-dark p-0\",attrs:{\"title\":\"Delete\"},on:{\"click\":function($event){return _vm.remove(item)}}},[_c('DeleteIcon',{staticClass:\"fa-xs\"})],1)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { CalendarData } from '@/elements/Calendar/types'\n\nexport const testEvents: CalendarData[] = [\n {\n start: '2022-03-25T16:00:00',\n end: '2022-03-25T17:30:00',\n name: 'Falcons Practice',\n class: 'practice-active',\n id: 'PRACTICES429571',\n color: '#00BFA5',\n textColor: '#004D40',\n },\n {\n start: '2022-03-26T16:00:00',\n end: '2022-03-26T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429572',\n },\n {\n start: '2022-04-02T16:00:00',\n end: '2022-04-02T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429573',\n },\n {\n start: '2022-04-09T16:00:00',\n end: '2022-04-09T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429574',\n },\n {\n start: '2022-04-16T16:00:00',\n end: '2022-04-16T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429575',\n },\n {\n start: '2022-04-23T16:00:00',\n end: '2022-04-23T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429576',\n },\n {\n start: '2022-04-30T16:00:00',\n end: '2022-04-30T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429577',\n },\n {\n start: '2022-05-07T16:00:00',\n end: '2022-05-07T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429578',\n },\n {\n start: '2022-05-14T16:00:00',\n end: '2022-05-14T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429579',\n },\n {\n start: '2022-05-21T16:00:00',\n end: '2022-05-21T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429580',\n },\n {\n start: '2022-05-28T16:00:00',\n end: '2022-05-28T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429581',\n },\n {\n start: '2022-06-04T16:00:00',\n end: '2022-06-04T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429582',\n },\n {\n start: '2022-06-10T16:00:00',\n end: '2022-06-10T17:30:00',\n name: 'Polar Bears Practice',\n class: 'practice-active',\n id: 'PRACTICES429583',\n },\n {\n start: '2022-03-26T10:00:00',\n end: '2022-03-26T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429584',\n },\n {\n start: '2022-04-02T10:00:00',\n end: '2022-04-02T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429585',\n },\n {\n start: '2022-04-09T10:00:00',\n end: '2022-04-09T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429586',\n },\n {\n start: '2022-04-16T10:00:00',\n end: '2022-04-16T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429587',\n },\n {\n start: '2022-04-23T10:00:00',\n end: '2022-04-23T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429588',\n },\n {\n start: '2022-04-30T10:00:00',\n end: '2022-04-30T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429589',\n },\n {\n start: '2022-05-07T10:00:00',\n end: '2022-05-07T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429590',\n },\n {\n start: '2022-05-14T10:00:00',\n end: '2022-05-14T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429591',\n },\n {\n start: '2022-05-21T10:00:00',\n end: '2022-05-21T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429592',\n },\n {\n start: '2022-05-28T10:00:00',\n end: '2022-05-28T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429593',\n },\n {\n start: '2022-06-04T10:00:00',\n end: '2022-06-04T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-active',\n id: 'PRACTICES429594',\n },\n {\n start: '2022-06-10T10:00:00',\n end: '2022-06-10T11:30:00',\n name: 'Cobras Practice',\n class: 'practice-inactive',\n id: 'PRACTICES429595',\n },\n {\n start: '2022-04-02T08:00:00',\n end: '2022-04-02T09:30:00',\n name: 'Wolves at Polar Bears',\n class: 'game-active draggable',\n id: 'GAMES3185518',\n },\n {\n start: '2022-04-02T10:30:00',\n end: '2022-04-02T13:00:00',\n name: 'Cobras at Leopards',\n class: 'game-active draggable',\n id: 'GAMES3185519',\n },\n {\n start: '2022-04-09T11:30:00',\n end: '2022-04-09T13:00:00',\n name: 'Polar Bears at Leopards',\n class: 'game-active',\n id: 'GAMES3185521',\n },\n {\n start: '2022-04-09T08:00:00',\n end: '2022-04-09T09:30:00',\n name: 'Cobras at Cougars',\n class: 'game-active',\n id: 'GAMES3185523',\n },\n {\n start: '2022-04-16T08:00:00',\n end: '2022-04-16T09:30:00',\n name: 'Polar Bears at Cobras',\n class: 'game-active',\n id: 'GAMES3185525',\n },\n {\n start: '2022-04-16T11:30:00',\n end: '2022-04-16T13:00:00',\n name: 'Cougars at Wolves',\n class: 'game-active',\n id: 'GAMES3185526',\n },\n {\n start: '2022-04-23T08:00:00',\n end: '2022-04-23T09:30:00',\n name: 'Falcons at Cobras',\n class: 'game-active',\n id: 'GAMES3185527',\n },\n {\n start: '2022-04-23T11:30:00',\n end: '2022-04-23T13:00:00',\n name: 'Polar Bears at Cougars',\n class: 'game-active',\n id: 'GAMES3185529',\n },\n {\n start: '2022-04-30T08:00:00',\n end: '2022-04-30T09:30:00',\n name: 'Falcons at Polar Bears',\n class: 'game-active',\n id: 'GAMES3185531',\n },\n {\n start: '2022-04-30T11:30:00',\n end: '2022-04-30T13:00:00',\n name: 'Cougars at Leopards',\n class: 'game-active',\n id: 'GAMES3185532',\n },\n {\n start: '2022-05-07T11:30:00',\n end: '2022-05-07T13:00:00',\n name: 'Leopards at Cobras',\n class: 'game-active',\n id: 'GAMES3185534',\n },\n {\n start: '2022-05-07T08:00:00',\n end: '2022-05-07T09:30:00',\n name: 'Falcons at Cougars',\n class: 'game-active',\n id: 'GAMES3185535',\n },\n {\n start: '2022-05-14T08:00:00',\n end: '2022-05-14T09:30:00',\n name: 'Leopards at Polar Bears',\n class: 'game-active',\n id: 'GAMES3185536',\n },\n {\n start: '2022-05-14T11:30:00',\n end: '2022-05-14T13:00:00',\n name: 'Falcons at Wolves',\n class: 'game-active',\n id: 'GAMES3185537',\n },\n {\n start: '2022-05-21T11:30:00',\n end: '2022-05-21T13:00:00',\n name: 'Falcons at Leopards',\n class: 'game-active',\n id: 'GAMES3185539',\n },\n {\n start: '2022-05-21T08:00:00',\n end: '2022-05-21T09:30:00',\n name: 'Cobras at Polar Bears',\n class: 'game-active',\n id: 'GAMES3185540',\n },\n {\n start: '2022-05-28T11:30:00',\n end: '2022-05-28T13:00:00',\n name: 'Cobras at Falcons',\n class: 'game-active',\n id: 'GAMES3185542',\n },\n {\n start: '2022-05-28T08:00:00',\n end: '2022-05-28T09:30:00',\n name: 'Wolves at Leopards',\n class: 'game-active',\n id: 'GAMES3185543',\n },\n {\n start: '2022-06-04T11:30:00',\n end: '2022-06-04T13:00:00',\n name: 'Wolves at Cobras',\n class: 'game-active',\n id: 'GAMES3185545',\n },\n {\n start: '2022-06-04T08:00:00',\n end: '2022-06-04T09:30:00',\n name: 'Polar Bears at Falcons',\n class: 'game-active',\n id: 'GAMES3185546',\n },\n {\n start: '2022-03-25T17:30:00',\n end: '2022-03-25T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429608',\n color: '#29B6F6',\n textColor: '#E1F5FE',\n },\n {\n start: '2022-04-01T17:30:00',\n end: '2022-04-01T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429609',\n },\n {\n start: '2022-04-08T17:30:00',\n end: '2022-04-08T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429610',\n },\n {\n start: '2022-04-15T17:30:00',\n end: '2022-04-15T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429611',\n },\n {\n start: '2022-04-22T17:30:00',\n end: '2022-04-22T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429612',\n },\n {\n start: '2022-04-29T17:30:00',\n end: '2022-04-29T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429613',\n },\n {\n start: '2022-05-06T17:30:00',\n end: '2022-05-06T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429614',\n },\n {\n start: '2022-05-13T17:30:00',\n end: '2022-05-13T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429615',\n },\n {\n start: '2022-05-20T17:30:00',\n end: '2022-05-20T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429616',\n },\n {\n start: '2022-05-27T17:30:00',\n end: '2022-05-27T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429617',\n },\n {\n start: '2022-06-03T17:30:00',\n end: '2022-06-03T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429618',\n },\n {\n start: '2022-06-10T17:30:00',\n end: '2022-06-10T19:00:00',\n name: 'Panthers Practice',\n class: 'practice-active',\n id: 'PRACTICES429619',\n },\n]\n\nexport const testMatchups = [\n {\n id: '3185578',\n name: 'Wolves at Polar Bears',\n gameID: 3185578,\n end: '1901-01-01T05:00:00.000Z',\n start: '1901-01-01T05:00:00.000Z',\n },\n {\n id: '3185579',\n name: 'Cobras at Leopards',\n gameID: 3185579,\n end: '1901-01-01T05:00:00.000Z',\n start: '1901-01-01T05:00:00.000Z',\n },\n {\n id: '3185580',\n name: 'Cougars at Falcons',\n gameID: 3185580,\n end: '1901-01-01T05:00:00.000Z',\n start: '1901-01-01T05:00:00.000Z',\n },\n]\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref } from '@vue/composition-api'\n\nimport Calendar from '@/elements/Calendar.vue'\nimport { DisplayType } from '@/models/Calendar/enums'\nimport { testEvents, testMatchups } from '@/views/TestComponents/CalendarTest/data'\nimport { CalendarData } from '@/elements/Calendar/types'\nimport { DeleteIcon } from '@/elements/Icons'\n\nexport default defineComponent({\n name: 'CalendarTest',\n components: { Calendar, DeleteIcon },\n setup(props, ctx) {\n const weekdays = ref([0, 4, 5, 6])\n const firstTime = ref('16:00')\n const lastTime = ref('19:00')\n const currentDateRage = ref({ start: '2020-02-02', end: '2020-01-02' })\n let events = ref(testEvents) // event colors are passed as properties on CalendarData\n const lMatchups = ref(testMatchups)\n\n function eventDropped(event: CalendarData) {\n //event dropped on calendar from external list\n alert(`Event Dropped ${event.name}`)\n events.value.push(event)\n }\n function eventClick(event: CalendarData) {\n alert(`Event Clicked ${event.name}`)\n }\n function eventMoved(event: CalendarData) {\n //event moved within the calendar\n alert(`Event Moved ${event.name}`)\n }\n function removeFromList(event: CalendarData) {\n lMatchups.value = lMatchups.value.filter((m) => m.id != event.id)\n }\n function remove(e: CalendarData) {\n removeFromList(e)\n ctx.emit('remove', e)\n }\n function currentRange(r: { start: string; end: string }) {\n currentDateRage.value = r\n }\n\n return {\n DisplayType,\n weekdays,\n firstTime,\n lastTime,\n events,\n lMatchups,\n remove,\n eventDropped,\n eventMoved,\n eventClick,\n currentRange,\n }\n },\n})\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!./CalendarTest.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!./CalendarTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CalendarTest.vue?vue&type=template&id=0542c91e&\"\nimport script from \"./CalendarTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./CalendarTest.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('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-2\"},[_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function () { return (_vm.show = true); }}},[_c('i',{staticClass:\"fa fa-calendar\"}),_vm._v(\" Pick date & time \")])]),_c('div',{staticClass:\"col-sm-10\"},[(_vm.pickedDateTime)?_c('input',{staticClass:\"form-control\",attrs:{\"readonly\":\"\"},domProps:{\"value\":_vm.pickedDateTime.toLocaleTimeString([], {\n year: 'numeric',\n month: 'numeric',\n day: 'numeric',\n hour: 'numeric',\n minute: '2-digit',\n })}}):_vm._e()])]),_c('modal-date-picker',{attrs:{\"cancelLabel\":\"Cancel\",\"pickLabel\":\"Pick\",\"title\":\"Pick date & time\",\"show\":_vm.show},on:{\"cancelled\":function () { return (_vm.show = !_vm.show); },\"picked\":function (picked) {\n _vm.pickedDateTime = picked\n _vm.show = false\n }}})],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\nimport ModalDatePicker from '@/components/ModalDateTimePicker.vue'\nimport { defineComponent, ref } from '@vue/composition-api'\nexport default defineComponent({\n components: {\n ModalDatePicker,\n },\n setup() {\n const show = ref(false)\n const pickedDateTime: Date | null = null\n return { show, pickedDateTime }\n },\n})\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!./ModalDateTimePickerTest.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!./ModalDateTimePickerTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModalDateTimePickerTest.vue?vue&type=template&id=100b80f8&\"\nimport script from \"./ModalDateTimePickerTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModalDateTimePickerTest.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('div',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-sm-12\"},[_c('DropDownMultiSelect',{attrs:{\"label\":\"Grades\",\"items\":_vm.items},model:{value:(_vm.selections),callback:function ($$v) {_vm.selections=$$v},expression:\"selections\"}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\nimport DropDownMultiSelect from '@/components/DropDownMultiSelect.vue'\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport { getGrades } from '@/lib/support/models/UpwardTypes/UpwardGradeTypeID/grades'\nimport { MultiSelectValue } from '@/lib/support/components/MultiSelect/MultiSelectValue'\nexport default defineComponent({\n components: {\n DropDownMultiSelect,\n },\n setup() {\n const selections = ref([])\n const items = ref(\n getGrades(false).map((g) => {\n return { id: g, description: g } as MultiSelectValue\n })\n )\n watch(\n () => selections.value,\n () => {\n console.log(selections.value.length)\n }\n )\n return { items, selections }\n },\n})\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!./DropDownMultiSelectTest.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!./DropDownMultiSelectTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DropDownMultiSelectTest.vue?vue&type=template&id=9b6b3eb0&\"\nimport script from \"./DropDownMultiSelectTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./DropDownMultiSelectTest.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('div',[_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.delayedConfirm}},[_vm._v(\"Click Me!\")]),_c('modal-confirmation',{ref:\"modalConfirmation\"},[_c('div',[_vm._v(\"Open Developer Tools and then click a button to see your answer.\")])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport ModalConfirmation from '@/components/ModalConfirmation.vue'\nexport default defineComponent({\n components: { ModalConfirmation },\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setup(props, { refs }) {\n const delayedConfirm = () => {\n return simulateTask()\n .then(() => {\n return (refs.modalConfirmation as any).show()\n })\n .then((result) => {\n console.log('You answered: ', result ? 'Ok' : 'Cancel')\n })\n }\n const simulateTask = () => {\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve('done')\n }, 1000)\n })\n }\n return { delayedConfirm }\n },\n})\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!./ModalConfirmationTest.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!./ModalConfirmationTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ModalConfirmationTest.vue?vue&type=template&id=c0743cd4&\"\nimport script from \"./ModalConfirmationTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./ModalConfirmationTest.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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nimport Accordion from '@/components/Accordion.vue'\nimport AccordionItem from '@/components/AccordionItem.vue'\n\nimport DataTable from '@/views/TestComponents/DataTableTest/DataTableTest.vue'\nimport TreeTest from '@/views/TestComponents/Tree/TreeTest.vue'\nimport CarouselTest from '@/views/TestComponents/CarouselTest/CarouselTest.vue'\nimport ComboboxTest from '@/views/TestComponents/ComboboxTest.vue'\nimport CalendarTest from '@/views/TestComponents/CalendarTest/CalendarTest.vue'\nimport ModalDateTimePicker from '@/views/TestComponents/ModalDateTimePickerTest.vue'\nimport DropDownMultiSelectTest from '@/views/TestComponents/DropDownMultiSelectTest.vue'\nimport ModalConfirmationTest from '@/views/TestComponents/ModalConfirmationTest.vue'\n\nconst testComponents: { [key: string]: object } = {\n DataTable,\n CalendarTest,\n TreeTest,\n ComboboxTest,\n CarouselTest,\n ModalDateTimePicker,\n DropDownMultiSelectTest,\n ModalConfirmationTest,\n}\n\nexport default defineComponent({\n name: 'ComponentTest',\n components: {\n ...testComponents,\n Accordion,\n AccordionItem,\n },\n setup(props, ctx) {\n const componentsToRender = computed(() => {\n if (!ctx.root.$route.params.name) {\n return testComponents\n }\n\n const search = ctx.root.$route.params.name.toLowerCase()\n const keys = Object.keys(testComponents).filter((k) => k.toLowerCase().indexOf(search) !== -1)\n const toRender: { [key: string]: object } = {}\n\n for (const key of keys) {\n toRender[key] = testComponents[key]\n }\n\n return toRender\n })\n\n return {\n componentsToRender,\n }\n },\n})\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!./ComponentTest.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!./ComponentTest.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ComponentTest.vue?vue&type=template&id=27b9535b&scoped=true&\"\nimport script from \"./ComponentTest.vue?vue&type=script&lang=ts&\"\nexport * from \"./ComponentTest.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ComponentTest.vue?vue&type=style&index=0&id=27b9535b&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 \"27b9535b\",\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';\ninstallComponents(component, {VApp})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"authwall-background\"},[_c('div',{staticClass:\"authwall-container container-fluid\"},[_vm._m(0),_c('form',{staticClass:\"row bg-white py-5 px-sm-5\",on:{\"submit\":function($event){$event.preventDefault();return _vm.onSubmit($event)}}},[_c('p',{staticClass:\"col-12 text-uppercase text-dark text-center\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),_c('text-input',{staticClass:\"col-12\",attrs:{\"placeholder\":\"Email\",\"append-icon\":\"user\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),_c('div',{staticClass:\"col-12 px-3\"},[_c('button',{staticClass:\"col-12 btn btn-primary\",attrs:{\"type\":\"submit\",\"disabled\":!_vm.allowSubmit}},[(_vm.isLoading)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_vm._v(\" Submit \")]],2)]),(_vm.successIsVisible)?_c('div',{staticClass:\"alert alert-with-icon alert-success mb-0 mt-3\"},[_c('i',{staticClass:\"fa fa-check-circle fa-lg\"}),_vm._v(\" If your email can be matched to an account, we will send you a link to reset your password. \")]):_vm._e(),(_vm.message && !_vm.successIsVisible)?_c('div',{staticClass:\"alert alert-with-icon alert-danger mb-0 mt-3\"},[_c('i',{staticClass:\"fa fa-exclamation-circle fa-lg\"}),_vm._v(\" \"+_vm._s(_vm.message)+\" \")]):_vm._e()],1),_c('div',{staticClass:\"row text-white pt-2\"},[_vm._m(1),_c('div',{staticClass:\"col-6 text-right\"},[_vm._v(\"©\"+_vm._s(_vm.currentYear)+\" Upward Unlimited™\")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row bg-dark\"},[_c('div',{staticClass:\"col-12 text-center py-4\"},[_c('img',{attrs:{\"src\":\"/img/logo-big.png\"}})])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-6\"},[_c('a',{staticClass:\"show-link\",attrs:{\"href\":\"https://www.upward.org/contact-us/\"}},[_vm._v(\"Contact Us\")]),_c('span',{staticClass:\"px-2\"},[_vm._v(\"|\")]),_vm._v(\" Terms of Use \")])}]\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\nimport Alert from '@/components/Alert.vue'\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport { Component, Vue } from 'vue-property-decorator'\nimport authClient from '@/clients/authorizationClient'\nimport localStorageService from '@/services/localStorageService'\n\nconst localStorageEmailKey = 'authwall-remembered-email'\nconst rememberedEmail = localStorageService.getRaw(localStorageEmailKey)\n\n@Component({\n components: {\n Alert,\n TextInput,\n Loading,\n },\n})\nexport default class ForgotPassword extends Vue {\n private email = rememberedEmail || ''\n private isLoading = false\n private successIsVisible = false\n private currentYear = new Date().getFullYear()\n\n private get allowSubmit() {\n return !this.isLoading && this.email && !this.successIsVisible\n }\n get title() {\n if (this.isExpiredPassword) return 'Expired Password'\n if (this.isLockedAccount) return 'Account Locked'\n return 'Forgot Password'\n }\n\n get message() {\n if (this.isLockedAccount)\n return 'Your account is locked. Enter your email and click submit to reset your password. This will unlock your account.'\n if (this.isExpiredPassword)\n return 'Your password has expired. Please click submit to request a new password.'\n return ''\n }\n\n private get isExpiredPassword() {\n return this.$route.path === '/expired-password'\n }\n\n private get isLockedAccount() {\n return this.$route.path === '/locked-account'\n }\n\n private created() {\n if (typeof this.$route.query.email === 'string') {\n this.email = this.$route.query.email\n }\n }\n\n private async onSubmit() {\n this.successIsVisible = false\n\n if (this.isLoading) {\n return\n }\n\n this.isLoading = true\n try {\n const rsr = await authClient.getPasswordResetLink(this.email)\n\n if (rsr.isSuccess) {\n this.successIsVisible = true\n }\n } finally {\n this.isLoading = false\n }\n }\n}\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!./ForgotPassword.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!./ForgotPassword.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ForgotPassword.vue?vue&type=template&id=46c53b6c&\"\nimport script from \"./ForgotPassword.vue?vue&type=script&lang=ts&\"\nexport * from \"./ForgotPassword.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ForgotPassword.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"authwall-background\"},[_c('div',{staticClass:\"authwall-container container-fluid\"},[_vm._m(0),(_vm.isDone)?_c('div',{staticClass:\"row bg-white py-5 px-sm-5\"},[_c('div',{staticClass:\"col-12 alert alert-with-icon alert-success my-0\"},[_c('i',{staticClass:\"fa fa-check-circle fa-lg\"}),_c('p',{staticClass:\"m-0\"},[(_vm.isInvite)?[_vm._v(\" Your account has been created successfully. \")]:[_vm._v(\" Your password was reset successfully. Return to MyUpward's login screen and use your updated credentials. \")],_c('a',{attrs:{\"href\":\"/\"}},[_vm._v(\"Return to MyUpward Login\")])],2)])]):_c('form',{staticClass:\"row bg-white py-5 px-sm-5\",on:{\"submit\":function($event){$event.preventDefault();return _vm.onSubmit($event)}}},[_c('p',{staticClass:\"col-12 text-uppercase text-dark text-center\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]),(_vm.showCode)?_c('text-input',{staticClass:\"col-12\",attrs:{\"placeholder\":\"Code from email\"},model:{value:(_vm.code),callback:function ($$v) {_vm.code=$$v},expression:\"code\"}}):_vm._e(),_c('password-input',{staticClass:\"col-12\",attrs:{\"placeholder\":\"New Password\",\"required\":\"\"},on:{\"change\":_vm.onNewPasswordsChange},model:{value:(_vm.newPassword),callback:function ($$v) {_vm.newPassword=$$v},expression:\"newPassword\"}}),_c('password-input',{staticClass:\"col-12\",attrs:{\"placeholder\":\"Confirm New Password\",\"required\":\"\"},on:{\"change\":_vm.onNewPasswordsChange},model:{value:(_vm.confirmNewPassword),callback:function ($$v) {_vm.confirmNewPassword=$$v},expression:\"confirmNewPassword\"}}),_c('div',{staticClass:\"col-12 px-3\"},[_c('button',{staticClass:\"col-12 btn btn-primary\",attrs:{\"type\":\"submit\",\"disabled\":!_vm.allowSubmit}},[(_vm.isLoading)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_vm._v(\" Submit \")]],2)]),(_vm.showConfirmPasswordError)?_c('div',{staticClass:\"alert alert-with-icon alert-warning mb-0 mt-3\"},[_c('i',{staticClass:\"fa fa-exclamation-circle fa-lg\"}),_vm._v(\" The new password does not match the confirmation password entry. Please double check the entries. \")]):_vm._e()],1),_c('div',{staticClass:\"row text-white pt-2\"},[_vm._m(1),_c('div',{staticClass:\"col-6 text-right\"},[_vm._v(\"©\"+_vm._s(_vm.currentYear)+\" Upward Unlimited™\")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row bg-dark\"},[_c('div',{staticClass:\"col-12 text-center py-4\"},[_c('img',{attrs:{\"src\":\"/img/logo-big.png\"}})])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-6\"},[_c('a',{staticClass:\"show-link\",attrs:{\"href\":\"https://www.upward.org/contact-us/\"}},[_vm._v(\"Contact Us\")]),_c('span',{staticClass:\"px-2\"},[_vm._v(\"|\")]),_vm._v(\" Terms of Use \")])}]\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\nimport Alert from '@/components/Alert.vue'\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport PasswordInput from '@/elements/PasswordInput.vue'\nimport { Component, Vue } from 'vue-property-decorator'\nimport authClient from '@/clients/authorizationClient'\nimport { RestServiceResult } from '@/services/restService'\nimport { AuthToken } from '@/models/Authorization/AuthToken'\n\n@Component({\n components: {\n Alert,\n TextInput,\n Loading,\n PasswordInput,\n },\n})\nexport default class ResetPassword extends Vue {\n private code = ''\n private newPassword = ''\n private confirmNewPassword = ''\n private isLoading = false\n private showConfirmPasswordError = false\n private showCode = true\n private isDone = false\n private currentYear = new Date().getFullYear()\n\n private get title() {\n return this.isInvite ? 'Accept Invite' : 'Reset Password'\n }\n\n private get isInvite() {\n return this.$route.name === 'AcceptInvite'\n }\n\n private onNewPasswordsChange() {\n this.showConfirmPasswordError =\n !!this.newPassword && !!this.confirmNewPassword && this.newPassword !== this.confirmNewPassword\n }\n\n private get allowSubmit() {\n return (\n !this.isLoading &&\n this.code &&\n this.newPassword &&\n this.confirmNewPassword &&\n this.newPassword === this.confirmNewPassword\n )\n }\n\n private async onSubmit() {\n if (this.isLoading || !this.allowSubmit) {\n return\n }\n\n this.isLoading = true\n\n try {\n let rsr: RestServiceResult\n if (this.isInvite) {\n rsr = await authClient.acceptInvitation(this.code, this.newPassword)\n } else {\n rsr = await authClient.resetPassword(this.code, this.newPassword)\n }\n\n if (rsr.isSuccess) {\n this.isDone = true\n }\n } finally {\n this.isLoading = false\n }\n }\n\n private created() {\n const code = this.$route.query.code ?? this.$route.params.code\n\n if (code && typeof code === 'string') {\n this.code = code\n this.showCode = false\n }\n }\n}\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!./ResetPassword.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!./ResetPassword.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResetPassword.vue?vue&type=template&id=e21a29ee&\"\nimport script from \"./ResetPassword.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResetPassword.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ResetPassword.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"form-group\"},[_c('h4',[_vm._v(\"Set the flags on or off.\")]),_c('label',{attrs:{\"for\":\"text\"}},[_vm._v(\" Features to turn off. \")]),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.featureJSON),expression:\"featureJSON\"}],staticClass:\"form-control\",attrs:{\"id\":\"text\"},domProps:{\"value\":(_vm.featureJSON)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.featureJSON=$event.target.value}}}),_c('small',{staticClass:\"form-text text-muted\",attrs:{\"id\":\"help\"}},[_vm._v(\"Type JSON of the feature flags you want excluded.\")]),(_vm.allGood)?_c('span'):_vm._e(),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.setFeaturesFromText}},[_vm._v(\"Set Features\")]),_c('div'),_c('hr'),_c('h4',[_vm._v(\"All Flags Off\")]),_c('pre',{attrs:{\"width\":\"80\"}},[_vm._v(\" \"+_vm._s(_vm.allFlags)+\"\\n \")]),_c('h4',[_vm._v(\"All Flags On\")]),_c('pre',{attrs:{\"width\":\"80\"}},[_vm._v(\" []\\n \")])])])}\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\nimport { computed, defineComponent, ref } from '@vue/composition-api'\nimport { FeaturesEnum, useFeatureFlags } from '@/services/useFeatureFlags'\n\nexport default defineComponent({\n setup() {\n const ff = useFeatureFlags()\n const allGood = ref(true)\n const allFlags = computed(() => {\n const arr = []\n for (const i in ff.featuresValid.value) {\n if (i == FeaturesEnum.__UNSET__) continue\n arr.push(i)\n }\n return JSON.stringify(arr)\n })\n const featureJSON = ref(JSON.stringify(ff.featuresExcluded.value))\n function setFeaturesFromText() {\n try {\n const ffval = JSON.parse(featureJSON.value)\n ff.setExcludedFeatures(ffval)\n allGood.value = true\n } catch (e) {\n allGood.value = false\n throw e\n }\n }\n return { allGood, allFlags, ...ff, featureJSON, setFeaturesFromText }\n },\n})\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!./FeatureInterface.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!./FeatureInterface.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FeatureInterface.vue?vue&type=template&id=5ce990ce&\"\nimport script from \"./FeatureInterface.vue?vue&type=script&lang=ts&\"\nexport * from \"./FeatureInterface.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 { Vue } from 'vue-property-decorator'\nimport Router from 'vue-router'\n\nimport programs from '@/router/programs'\nimport account from '@/router/account'\nimport training from '@/router/training'\nimport myProfile from '@/router/myProfile'\nimport adminDashboard from '@/router/adminDashboard'\nimport allAccess from '@/router/allAccess'\n\nimport Home from '@/views/Home.vue'\nimport WaitPage from '@/views/WaitPage.vue'\nimport Partner from '@/views/Partner.vue'\nimport Planning from '@/views/Planning.vue'\nimport Resources from '@/views/Resources.vue'\nimport Contact from '@/views/Contact.vue'\nimport ComponentTest from '@/views/ComponentTest.vue'\nimport ForgotPassword from '@/views/ForgotPassword.vue'\nimport ResetPassword from '@/views/ResetPassword.vue'\nimport FeatureInterface from '@/views/FeatureInterface.vue'\n\nVue.use(Router)\n\nexport interface RouteMeta {\n isPublic: boolean\n isHome: boolean\n}\n\nconst router = new Router({\n mode: 'history',\n base: process.env.BASE_URL,\n routes: [\n {\n path: '/',\n name: 'Home',\n component: Home,\n meta: {\n isHome: true,\n isPublic: false,\n } as RouteMeta,\n },\n ...adminDashboard,\n ...allAccess,\n {\n path: '/waitpage',\n name: 'Wait Page',\n component: WaitPage,\n meta: {\n isHome: false,\n isPublic: true,\n } as RouteMeta,\n },\n {\n path: '/planning',\n name: 'Planning',\n component: Planning,\n meta: {\n isHome: false,\n isPublic: false,\n } as RouteMeta,\n },\n ...programs,\n ...training,\n {\n path: '/resources',\n name: 'Resources',\n component: Resources,\n meta: {\n isHome: false,\n isPublic: false,\n } as RouteMeta,\n },\n {\n path: '/partner',\n name: 'Partner',\n component: Partner,\n meta: {\n isHome: false,\n isPublic: false,\n } as RouteMeta,\n },\n {\n path: '/contact',\n name: 'Contact',\n component: Contact,\n meta: {\n isHome: false,\n isPublic: false,\n } as RouteMeta,\n },\n ...account,\n {\n path: '/forgot-password',\n name: 'ForgotPassword',\n component: ForgotPassword,\n meta: {\n isHome: false,\n isPublic: true,\n } as RouteMeta,\n },\n {\n path: '/expired-password',\n name: 'ExpiredPassword',\n component: ForgotPassword,\n meta: {\n isHome: false,\n isPublic: true,\n } as RouteMeta,\n },\n {\n path: '/locked-account',\n name: 'LockedAccount',\n component: ForgotPassword,\n meta: {\n isHome: false,\n isPublic: true,\n } as RouteMeta,\n },\n {\n path: '/resetpassword/:code?',\n name: 'ResetPassword',\n component: ResetPassword,\n meta: {\n isHome: false,\n isPublic: true,\n } as RouteMeta,\n },\n {\n path: '/acceptinvite/:code?',\n name: 'AcceptInvite',\n component: ResetPassword,\n meta: {\n isHome: false,\n isPublic: true,\n } as RouteMeta,\n },\n {\n path: '/componenttest/:name?',\n name: 'ComponentTest',\n component: ComponentTest,\n meta: {\n isHome: false,\n isPublic: true,\n } as RouteMeta,\n },\n {\n path: '/features/',\n name: 'FeatureInterface',\n component: FeatureInterface,\n meta: {\n isHome: false,\n isPublic: true,\n } as RouteMeta,\n },\n ...myProfile,\n ],\n})\n\nexport default router\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecialEventSchedule.vue?vue&type=style&index=0&id=0ac496bb&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"btn-group wide-buttons\"},[_c('button',{staticClass:\"btn btn-sm btn-default text-uppercase p-0\",class:{\n 'btn-primary': _vm.internalValue === _vm.programs.programTypeID,\n 'btn-outline-dark': _vm.internalValue === _vm.programs.cheerProgramTypeID,\n },attrs:{\"disabled\":_vm.disabled,\"type\":\"button\"},on:{\"click\":function($event){return _vm.select(_vm.programs.programTypeID)}}},[_vm._v(\" \"+_vm._s(_vm.programs.programTypeDescription)+\" \")]),_c('button',{staticClass:\"btn btn-sm btn-default text-uppercase\",class:{\n 'btn-primary': _vm.internalValue === _vm.programs.cheerProgramTypeID,\n 'btn-outline-dark': _vm.internalValue === _vm.programs.programTypeID,\n },attrs:{\"disabled\":_vm.disabled,\"type\":\"button\"},on:{\"click\":function($event){return _vm.select(_vm.programs.cheerProgramTypeID)}}},[_vm._v(\" \"+_vm._s(_vm.cheerLabel)+\" \")])])}\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\nimport { defineComponent, computed, ref, watch, onMounted, onUnmounted, PropType } from '@vue/composition-api'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\n\nexport default defineComponent({\n name: 'TypeProgramTab',\n props: {\n programs: { type: Object as PropType, required: true },\n value: { type: String, required: true },\n disabled: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n\n function select(programId: string) {\n internalValue.value = programId\n ctx.emit('input', internalValue.value)\n }\n\n const cheerLabel = computed(() => {\n if (props.programs.cheerProgramTypeDescription) {\n return 'CHEER'\n } else {\n return ''\n }\n })\n\n /**\n * quick property gives us a list of valid program ids for input.\n * first value is non-cheer program id.\n */\n const validProgramTypes = computed((): string[] => {\n const rv: string[] = []\n if (props.programs && props.programs.programTypeID) {\n rv.push(props.programs.programTypeID)\n }\n if (props.programs && props.programs.cheerProgramTypeID) {\n rv.push(props.programs.cheerProgramTypeID)\n }\n return rv\n })\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n /***\n * Adds some resiliency to the return value, either '', or in a valid value.\n * autoselect first element type on program prop assignment.\n * Should leave it alone if there is already a valid value\n * @param newLLI\n */\n watch(\n () => props.programs,\n (newLLI: LeagueListItem) => {\n programTypesChange(newLLI)\n }\n )\n\n function programTypesChange(newLLI: LeagueListItem) {\n props.programs = newLLI\n\n if (\n validProgramTypes.value.length &&\n validProgramTypes.value.findIndex((x) => x == internalValue.value) == -1\n ) {\n select(validProgramTypes.value[0])\n }\n }\n\n onMounted(() => {\n // on assignment and on mount we want the value to be an active tab.\n // i.e. there shouldn't be an intermediate state where one tab or the other is not selected.\n programTypesChange(props.programs)\n })\n\n onUnmounted(() => {\n ctx.emit('destroyed')\n })\n\n return {\n internalValue,\n cheerLabel,\n select,\n }\n },\n})\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!./TypeProgramTab.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!./TypeProgramTab.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TypeProgramTab.vue?vue&type=template&id=0685f8b7&scoped=true&\"\nimport script from \"./TypeProgramTab.vue?vue&type=script&lang=ts&\"\nexport * from \"./TypeProgramTab.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TypeProgramTab.vue?vue&type=style&index=0&id=0685f8b7&lang=scss&scoped=true&\"\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 \"0685f8b7\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpwardSystemsStep.vue?vue&type=style&index=0&id=402ee050&lang=scss&scoped=true&\"","import { IndividualPhone } from '@/GeneratedTypes/IndividualPhone'\n\nexport enum PhoneTypeEnum {\n HOME = 'HOME',\n WORK = 'WORK',\n MOBILE = 'MOBILE',\n}\n\n/***\n * Return an empty phone number\n * @param seed - optional template for values.\n */\nexport function getEmptyPhone(seed?: PhoneSeedInfo): IndividualPhone {\n return {\n phoneNumber: '',\n extension: '',\n allowSMS: false,\n phoneID: seed?.phoneID || 0,\n typePhoneID: seed?.typePhoneID || '',\n priority: 0,\n }\n}\n//nothing to set now.\nexport class PhoneSeedInfo {\n phoneID = 0\n typePhoneID = PhoneTypeEnum.HOME\n}\n\n/**\n * Convert human understood name into type id\n * @param s {string} the human name 'work','mobile','cell' for starters\n * @return - upward type id\n */\nexport function NameToType(s: string): string {\n switch (s.toLocaleLowerCase()) {\n case 'work':\n return PhoneTypeEnum.WORK\n case 'mobile':\n case 'cell':\n return PhoneTypeEnum.MOBILE\n default:\n return PhoneTypeEnum.HOME\n }\n}\n\nexport function mobilePhoneSeed() {\n const c = new PhoneSeedInfo()\n c.typePhoneID = PhoneTypeEnum.MOBILE\n return c\n}\n\nexport function homePhoneSeed() {\n const c = new PhoneSeedInfo()\n c.typePhoneID = PhoneTypeEnum.HOME\n return c\n}\n\nlet nextPhoneSeed = -1\nexport function decrementingPhoneIDStrategy() {\n const c = new PhoneSeedInfo()\n c.phoneID = nextPhoneSeed--\n return c\n}\n","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!./ReturnsOrderDetailScreen.vue?vue&type=style&index=0&id=7a3aabc6&scoped=true&lang=css&\"","import restService from '@/services/restService'\nimport { Resource } from '@/models/Program/Resource'\nimport { LegalResource } from '@/models/Legal/LegalResource'\nimport { PageContentDocument } from '@/models/PageContent/PageContentDocument'\nimport { PartnerSupportPage } from '@/models/PageContent/PartnerSupportPage'\nimport { BannerContent } from '@/models/PageContent/BannerContent'\nimport { DevotionTrackInfo } from '@/models/ContentManagement/DevotionTrack'\n\nconst baseUrl = 'ContentManagement/'\n\nconst getDevotionTracks = async (programType: string, typeProductGroupID: string) => {\n return await restService.get(`${baseUrl}devotiontracks`, {\n programType,\n typeProductGroupID,\n })\n}\n\nconst getVolunteerResources = async (upw: string, typeProgramID: string, role: string) => {\n return await restService.get(`${baseUrl}volunteerresources/${upw}`, {\n typeProgramID,\n role,\n })\n}\n\nconst getMarketingResources = async (programType: string, productYear: string, role: string) => {\n return await restService.get(`${baseUrl}volunteerresources/marketing`, {\n programType,\n productYear,\n role,\n })\n}\n\nconst getVolunteerResourcesRunning = async (upwardChallengeID: string) => {\n return await restService.get(`${baseUrl}volunteerresources/running/${upwardChallengeID}`)\n}\n\nconst getLegalResource = async (documentID: string, version: number) => {\n return await restService.get(`${baseUrl}legalresource/${documentID}`, {\n version,\n })\n}\n\nconst getPageContentDocument = async (documentID: string) => {\n const result = await restService.get(`${baseUrl}pagecontent/${documentID}`)\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('Error in contentManagementClient.getPageContentDocument')\n }\n}\n\nconst getPartnerSupportRep = async (state: string) => {\n const result = await restService.get(`${baseUrl}partnersupportrep/?state=${state}`)\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('Error in contentManagementClient.getPartnerSupportRep')\n }\n}\n\nconst getGatewayBanners = async () => {\n const result = await restService.get(`${baseUrl}gatewaybanners`)\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('Error in contentManagementClient.getPartnerSupportRep')\n }\n}\n\nconst deleteProductCache = async (orderType: string) => {\n const result = await restService.delete(`${baseUrl}productcatalog/cachedelete?productType=` + orderType)\n if (result.isSuccess) {\n return result.data\n } else {\n throw new Error('Error in contentManagementClient.deleteProductCache')\n }\n}\n\nexport default {\n getDevotionTracks,\n getVolunteerResources,\n getLegalResource,\n getPageContentDocument,\n getPartnerSupportRep,\n getGatewayBanners,\n getMarketingResources,\n deleteProductCache,\n getVolunteerResourcesRunning,\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CalendarNav.vue?vue&type=style&index=0&id=7cb1e6bc&scoped=true&lang=scss&\"","import { cloneDeep } from 'lodash'\nimport { getEmptyXRunningOrderExt } from '@/lib/support/models/GeneratedTypes/xOrders/xRunningOrderExt'\nimport { xRunningOrderExt } from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport {\n xRunningOrderDetail,\n xRunningOrderDetailIndividual,\n xRunningOrderDetailParticipantProduct,\n xRunningOrderDetailAddonProduct,\n getEmptyRunningOrderDetail,\n} from '@/models/UpwardRunning/Order/xRunningOrderExt'\n\nexport enum UROSStates {\n PRE_STEP,\n REVIEW_PARTICIPANT_DETAIL,\n REVIEW_SHIPPING,\n REVIEW_ORDER,\n CONFIRM_ORDER,\n REVIEW_ADDON_ITEMS,\n}\n\nexport interface UpwardRunningOrderState {\n template: xRunningOrderExt\n currentStep: UROSStates\n orderStatus: xRunningOrderDetail\n productIndividualPending: string[]\n loading: boolean\n validated: boolean\n pendingAddOnItems: xRunningOrderDetailAddonProduct[]\n}\n\nexport function newUROS(challenge: string) {\n const rv = {\n template: getEmptyXRunningOrderExt(),\n currentStep: UROSStates.PRE_STEP,\n orderStatus: getEmptyRunningOrderDetail(challenge),\n productIndividualPending: [],\n loading: false,\n validated: false,\n pendingAddOnItems: [] as xRunningOrderDetailAddonProduct[],\n } as UpwardRunningOrderState\n\n return rv\n}\n\nexport interface SizeUpdatedPayload {\n upwardChallengeID: string\n challengeID: number\n program: string\n participantID: number\n product: xRunningOrderDetailParticipantProduct\n}\n\n/**\n * Replace the product in players in the teams sizing structure.\n * @param teamPlayers\n * @param individualID\n * @param product\n */\nexport function setProductInParticipants(\n participantsParm: xRunningOrderDetailIndividual[],\n individualID: number,\n product: xRunningOrderDetailParticipantProduct\n) {\n const participants = cloneDeep(participantsParm)\n const cI = participants.findIndex((c) => c.individualID == individualID)\n if (cI >= 0) {\n const pI = participants[cI].products.findIndex((p) => p.upwardProductID == product.upwardProductID)\n if (pI >= 0) {\n participants[cI].products.splice(pI, 1, {\n ...participants[cI].products[pI],\n typeSizeID: product.typeSizeID,\n })\n }\n }\n return participants\n}\n","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!./ToggleLinks.vue?vue&type=style&index=0&id=42a80631&scoped=true&lang=css&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecialEventCalendar.vue?vue&type=style&index=2&id=79924b2e&scoped=true&lang=scss&\"","import { IndividualAddressInfo } from '@/GeneratedTypes/ListInfo/IndividualAddressInfo'\nimport { stringToAddressTypeID } from '@/lib/support/models/IndividualAddress/data'\n\nexport function getEmptyAddress(seed?: AddressSeedInfo): IndividualAddressInfo {\n return {\n individualID: 0,\n addressID: 0,\n typeAddressID: seed?.typeAddressID || stringToAddressTypeID('home'),\n street1: '',\n street2: '',\n subdivision1: '', //city\n subdivision2: '', //state\n postalCode: '',\n typeCountryID: 'US',\n priority: 0,\n }\n}\n\nexport class AddressSeedInfo {\n public typeAddressID: string = stringToAddressTypeID('home')\n}\n","import { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\nexport type PlayerInfoIDType = number\nimport { getEmptyAddress } from '@/lib/support/models/IndividualAddressInfo/data'\n\nexport const getEmptyLeaguePlayerInfo = (props: LeaguePlayerSeedInfo) => {\n const rv: LeaguePlayerInfo = {\n accountNumber: '',\n leagueID: props.leagueID,\n typeProgramID: props.typeProgramID,\n active: true,\n addresses: [getEmptyAddress()],\n adminNotes: '',\n amountExpectedToPay: 0,\n registrationFeeExpectedToPay: 0,\n amountPaid: 0,\n athleticScore: 0,\n birthDate: new Date('1970-01-01 00:00'),\n churchName: '',\n emailAddresses: [],\n evaluationScore: 0,\n firstName: '',\n formattedNameFirstLast: '',\n formattedNameLastFirst: '',\n formattedNamePrivate: '',\n gender: 'M',\n generalNotes: '',\n individualID: newPlayerID(),\n isImported: false,\n isPlayerSizingComplete: false,\n lastName: '',\n medicalNotes: '',\n middleInitial: '',\n pendingCoachLinkFirstName: '',\n pendingCoachLinkIndividualID: 0,\n pendingCoachLinkLastName: '',\n phoneNumbers: [],\n positionScore: 0,\n registrationCompletionInformation: '',\n registrationTransactionID: 0,\n thirdPartyClientIDs: [],\n typeGradeID: 'K3',\n yearsExperience: 0,\n hasBrokenCarpoolLink: false,\n hasBrokenCoachLink: false,\n actualCoachLinkIndividualID: 0,\n actualCoachLinkFirstName: '',\n actualCoachLinkLastName: '',\n actualCarpoolLinkIndividualID: 0,\n actualCarpoolLinkFirstName: '',\n actualCarpoolLinkLastName: '',\n extraScore: 0,\n practiceNightExclusions: [],\n products: [],\n udFs: null,\n jerseyNumber: null,\n gradeIsOverridden: false,\n doNotDraft: false,\n }\n\n return rv\n}\n\nexport class LeaguePlayerSeedInfo {\n typeProgramID = ''\n leagueID = 0\n}\n\nexport function newPlayerID(): PlayerInfoIDType {\n return 0\n}\n","export default (value: number | string | null | undefined, digits = 2) => {\n if (typeof value !== 'number') {\n return value\n }\n\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD',\n minimumFractionDigits: digits,\n maximumFractionDigits: digits,\n })\n\n return formatter.format(value)\n}\n","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!./ManageDiscountCodesUR.vue?vue&type=style&index=0&lang=css&\"","import { CommunicationCriteria } from '@/GeneratedTypes/Communication/CommunicationCriteria'\n\nexport function getEmptyCommunicationCriteria(): CommunicationCriteria {\n return {\n upwardLeagueID: '',\n accountNumber: '',\n teamID: '',\n divisionID: '',\n typeProgramID: '',\n selectedGroups: [],\n teams: [],\n individualContactInfo: [],\n practiceNight: 'All',\n startGrade: 'K3',\n endGrade: '12th',\n paymentStatus: 'All',\n evalStatus: 'All',\n coachTeamStatus: 'All Approved',\n // approvalStatus: '',\n viewAllLeagueContacts: false,\n practiceFacilityIDs: [],\n headCoachOnly: false,\n gender: 'E',\n }\n}\n","import { EmailMessage } from '@/GeneratedTypes/Communication/EmailMessage'\n\nexport function getEmptyEmailMessage(): EmailMessage {\n return {\n accountNumber: '',\n upwardLeagueID: '',\n displayName: '',\n replyTo: '',\n emailSubject: '',\n messageBody: '',\n to: [],\n attachments: [],\n sendCommunicationOn: null,\n minutesToAdd: null,\n recipientCriteria: null,\n }\n}\n","import { PreviewMessage } from '@/models/Communication/PreviewMessage'\nimport { EmailMessage } from '@/GeneratedTypes/Communication/EmailMessage'\nimport { Attachment } from '@/GeneratedTypes/Communication/Attachment'\nimport store from '@/store'\nimport { Recipient } from '@/views/Programs/Communications/model/Recipients'\nimport { getEmptyCommunicationCriteria } from '@/lib/support/models/Communication/CommunicationCriteria'\nimport { getEmptyEmailMessage } from '@/lib/support/models/Communication/EmailMessage'\n\nexport class CommunicationService {\n /**\n * Transforms a PreviewMessage into an EmailMessage for sending\n * @param preview The PreviewMessage to transform\n * @returns EmailMessage ready to be sent\n */\n static previewMessageToMessage(\n preview: PreviewMessage,\n attachment1: Attachment,\n attachment2: Attachment,\n sendCommunicationOn: Date | null,\n minutesToAdd: number | null,\n type: 'sendemail' | 'sendsms'\n ): EmailMessage {\n return {\n ...getEmptyEmailMessage(),\n accountNumber: store.getters.authorization.firstAccountNumber,\n upwardLeagueID: store.getters.leagueAbstraction.currentItem.upwardLeagueID,\n displayName: preview.displayName,\n replyTo: preview.replyTo,\n emailSubject: preview.emailSubject,\n messageBody: preview.messageBody,\n to: allRecipients(preview, type),\n attachments: createAttachementArray(attachment1, attachment2),\n sendCommunicationOn: sendCommunicationOn,\n minutesToAdd: minutesToAdd,\n recipientCriteria: {\n ...getEmptyCommunicationCriteria(),\n accountNumber: store.getters.authorization.firstAccountNumber,\n upwardLeagueID: store.getters.leagueAbstraction.currentItem.upwardLeagueID,\n selectedGroups: preview.selectedGroups,\n teams: preview.teams,\n practiceNight: preview.practiceNight,\n startGrade: preview.startGrade,\n endGrade: preview.endGrade,\n paymentStatus: preview.paymentStatus,\n evalStatus: preview.evalStatus,\n coachTeamStatus: preview.coachTeamStatus,\n typeProgramID: preview.typeProgramID,\n viewAllLeagueContacts: preview.viewAllLeagueContacts,\n practiceFacilityIDs: preview.practiceFacilityIDs,\n gender: preview.gender,\n individualContactInfo: preview.toDelimited\n ? preview.toDelimited\n .split(',')\n .map((contact) => contact.trim())\n .filter((contact) => contact !== '')\n : [],\n },\n }\n }\n}\n\nfunction allRecipients(preview: PreviewMessage, type: 'sendemail' | 'sendsms'): string[] {\n // Get emails from messagePreview.to and toDelimited\n const recipients = [...preview.to]\n if (preview.toDelimited) {\n recipients.push(...preview.toDelimited.split(',').filter((r) => r.trim() !== ''))\n }\n // Get emails from selected recipients in store\n const selectedRecipients = store.getters.communications.recipients\n .filter((recipient: Recipient) => recipient.isSelected)\n .map((recipient: Recipient) => (type === 'sendemail' ? recipient.email : recipient.phone))\n recipients.push(...selectedRecipients)\n // Remove duplicates and empty values, trim whitespace\n return [...new Set(recipients.map((r) => r.trim()))].filter((r) => r !== '')\n}\n\nfunction createAttachementArray(attachment1: Attachment, attachment2: Attachment): Attachment[] {\n const attachments: Attachment[] = []\n if (attachment1.name) {\n attachments.push(attachment1)\n }\n if (attachment2.name) {\n attachments.push(attachment2)\n }\n return attachments\n}\n\nexport default CommunicationService\n","export interface Attachment {\n data: string | null\n name: string | null\n type: string | null\n}\n\nexport function getEmptyAttachment(): Attachment {\n return {\n data: '',\n name: '',\n type: '',\n }\n}\n","import { EmailSMSAccount } from '@/GeneratedTypes/Communication/EmailSMSAccount'\nimport { PreviewMessage } from '@/models/Communication/PreviewMessage'\nimport communicationsClient from '@/clients/communicationsClient'\nimport { defineGetters, defineActions, defineMutations } from 'direct-vuex'\nimport { getEmptyPreviewMessage } from '@/lib/support/models/Communication/PreviewMessage'\nimport { CommunicationStatusData } from '@/models/Communication/CommunicationStatusData'\nimport store from '@/store'\nimport { CommunicationService } from '@/services/communicationService'\nimport { MessageChannelTypes } from '@/components/Communication/MessageChannelData'\nimport { EmailSMSLeagueSetting } from '@/GeneratedTypes/Communication/EmailSMSLeagueSetting'\nimport { Attachment, getEmptyAttachment } from '@/GeneratedTypes/Communication/Attachment'\nimport { Recipient } from '@/views/Programs/Communications/model/Recipients'\nimport upwardRunningClient from '@/clients/upwardRunningClient'\n\nconst getNewProviderInfo = () => {\n const EmailSMSProviderInfo: EmailSMSAccount = {\n emailSmsAccountID: -1,\n accountNumber: '',\n upwardLeagueID: '',\n emailAcctID: -1,\n emailAcctName: '',\n emailAcctApiKey: '',\n emailCredits: -1,\n emailMaxCredits: -1,\n isEmailAllowed: false,\n smsAcctID: -1,\n smsAcctName: '',\n smsAcctApiKey: '',\n smsCredits: -1,\n smsMaxCredits: -1,\n isSMSAllowed: false,\n smsTypeProviderID: -1,\n smsAssignedNumber: '',\n }\n\n return EmailSMSProviderInfo\n}\n\ninterface CommunicationsState {\n currentProviderInfo: EmailSMSAccount\n messagePreview: PreviewMessage\n isTollFreeApplicationPending: boolean\n statuses: CommunicationStatusData[]\n messagePreviewLoading: boolean\n leagueSettings: EmailSMSLeagueSetting | null\n attachment1: Attachment\n attachment2: Attachment\n recipients: Recipient[]\n}\n\nconst CommunicationsState: CommunicationsState = {\n currentProviderInfo: getNewProviderInfo(),\n messagePreview: getEmptyPreviewMessage(),\n isTollFreeApplicationPending: false,\n statuses: new Array(),\n messagePreviewLoading: false,\n leagueSettings: null,\n attachment1: getEmptyAttachment(),\n attachment2: getEmptyAttachment(),\n recipients: [],\n}\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n setPreviewMessage = 'setPreviewMessage',\n setTollFreeApplicationPending = 'setTollFreeApplicationPending',\n setStatuses = 'setStatuses',\n clearStatuses = 'clearStatuses',\n setSelectedGroups = 'setSelectedGroups',\n setAccountNumber = 'setAccountNumber',\n setUpwardLeagueID = 'setUpwardLeagueID',\n setCommunicationType = 'setCommunicationType',\n setToDelimited = 'setToDelimited',\n setTo = 'setTo',\n setMessageBody = 'setMessageBody',\n setMessagePreviewLoading = 'setMessagePreviewLoading',\n setAttachment = 'setAttachment',\n removeAttachment = 'removeAttachment',\n setRecipients = 'setRecipients',\n setTeams = 'setTeams',\n setTypeProgramID = 'setTypeProgramID',\n setPracticeNight = 'setPracticeNight',\n setStartGrade = 'setStartGrade',\n setEndGrade = 'setEndGrade',\n setPaymentStatus = 'setPaymentStatus',\n setEvalStatus = 'setEvalStatus',\n setCoachTeamStatus = 'setCoachTeamStatus',\n setViewAllLeagueContacts = 'setViewAllLeagueContacts',\n setPracticeFacilityIDs = 'setPracticeFacilityIDs',\n setGender = 'setGender',\n setEmailSubject = 'setEmailSubject',\n setLeagueSettings = 'setLeagueSettings',\n setEmailDisplayName = 'setEmailDisplayName',\n setEmailReplyTo = 'setEmailReplyTo',\n clearMessageInformation = 'clearMessageInformation',\n}\n\nconst mutations = defineMutations()({\n [mutationNames.setCurrent](state, { item }: { item: EmailSMSAccount }) {\n state.currentProviderInfo = item\n },\n [mutationNames.setPreviewMessage](state, { item }: { item: PreviewMessage }) {\n state.messagePreview = item\n },\n [mutationNames.setTollFreeApplicationPending](state, { item }: { item: boolean }) {\n state.isTollFreeApplicationPending = item\n },\n [mutationNames.setStatuses](state, { item }: { item: CommunicationStatusData[] }) {\n state.statuses = item\n },\n [mutationNames.clearStatuses](state) {\n state.statuses = []\n },\n [mutationNames.setSelectedGroups](state, { groups }: { groups: string[] }) {\n state.messagePreview.selectedGroups = groups\n },\n [mutationNames.setAccountNumber](state, { accountNumber }: { accountNumber: string }) {\n state.messagePreview.accountNumber = accountNumber\n },\n [mutationNames.setUpwardLeagueID](state, { upwId }: { upwId: string }) {\n state.messagePreview.upwardLeagueID = upwId\n },\n [mutationNames.setCommunicationType](state, { communicationType }: { communicationType: string }) {\n state.messagePreview.communicationType = communicationType\n },\n [mutationNames.setToDelimited](state, { toDelimited }: { toDelimited: string }) {\n state.messagePreview.toDelimited = toDelimited\n },\n [mutationNames.setTo](state, { to }: { to: string[] }) {\n state.messagePreview.to = to\n },\n [mutationNames.setMessageBody](state, { messageBody }: { messageBody: string }) {\n state.messagePreview.messageBody = messageBody\n },\n [mutationNames.setMessagePreviewLoading](state, { loading }: { loading: boolean }) {\n state.messagePreviewLoading = loading\n },\n //commCriteria mutations\n [mutationNames.setTeams](state, { teams }: { teams: number[] }) {\n state.messagePreview.teams = teams\n },\n [mutationNames.setTypeProgramID](state, { typeProgramID }: { typeProgramID: string }) {\n state.messagePreview.typeProgramID = typeProgramID\n },\n [mutationNames.setPracticeNight](state, { practiceNight }: { practiceNight: string | null }) {\n state.messagePreview.practiceNight = practiceNight\n },\n [mutationNames.setStartGrade](state, { startGrade }: { startGrade: string }) {\n state.messagePreview.startGrade = startGrade\n },\n [mutationNames.setEndGrade](state, { endGrade }: { endGrade: string }) {\n state.messagePreview.endGrade = endGrade\n },\n [mutationNames.setPaymentStatus](state, { paymentStatus }: { paymentStatus: string }) {\n state.messagePreview.paymentStatus = paymentStatus\n },\n [mutationNames.setEvalStatus](state, { evalStatus }: { evalStatus: string }) {\n state.messagePreview.evalStatus = evalStatus\n },\n [mutationNames.setCoachTeamStatus](state, { coachTeamStatus }: { coachTeamStatus: string }) {\n state.messagePreview.coachTeamStatus = coachTeamStatus\n },\n [mutationNames.setViewAllLeagueContacts](\n state,\n { viewAllLeagueContacts }: { viewAllLeagueContacts: boolean }\n ) {\n state.messagePreview.viewAllLeagueContacts = viewAllLeagueContacts\n },\n [mutationNames.setPracticeFacilityIDs](state, { practiceFacilityIDs }: { practiceFacilityIDs: number[] }) {\n state.messagePreview.practiceFacilityIDs = practiceFacilityIDs\n },\n [mutationNames.setGender](state, { gender }: { gender: string | null }) {\n state.messagePreview.gender = gender\n },\n [mutationNames.setEmailSubject](state, { emailSubject }: { emailSubject: string }) {\n state.messagePreview.emailSubject = emailSubject\n },\n [mutationNames.setLeagueSettings](state, { settings }: { settings: EmailSMSLeagueSetting | null }) {\n state.leagueSettings = settings\n },\n [mutationNames.setEmailDisplayName](state, { emailDisplayName }: { emailDisplayName: string }) {\n state.messagePreview.displayName = emailDisplayName\n },\n [mutationNames.setEmailReplyTo](state, { emailReplyTo }: { emailReplyTo: string }) {\n state.messagePreview.replyTo = emailReplyTo\n },\n [mutationNames.setAttachment](\n state,\n { attachment, position }: { attachment: Attachment; position: number }\n ) {\n if (position === 1) {\n state.attachment1 = attachment\n } else if (position === 2) {\n state.attachment2 = attachment\n }\n },\n [mutationNames.removeAttachment](state, { position }: { position: number }) {\n if (position === 1) {\n state.attachment1 = getEmptyAttachment()\n } else if (position === 2) {\n state.attachment2 = getEmptyAttachment()\n }\n },\n [mutationNames.setRecipients](state, { recipients }: { recipients: Recipient[] }) {\n state.recipients = recipients\n },\n [mutationNames.clearMessageInformation](state) {\n state.messagePreview = getEmptyPreviewMessage()\n state.attachment1 = getEmptyAttachment()\n state.attachment2 = getEmptyAttachment()\n state.recipients = []\n },\n})\n\nexport enum getterNames {\n currentItem = 'currentItem',\n isTollFreeApplicationPending = 'isTollFreeApplicationPending',\n messagePreviewLoading = 'messagePreviewLoading',\n commCriteria = 'commCriteria',\n leagueSettings = 'leagueSettings',\n attachment1 = 'attachment1',\n attachment2 = 'attachment2',\n recipients = 'recipients',\n hasSelectedRecipients = 'hasSelectedRecipients',\n}\n\nconst getterTree = defineGetters()({\n currentItem: (state) => state.currentProviderInfo,\n messagePreview: (state) => state.messagePreview,\n isTollFreeApplicationPending: (state) => state.isTollFreeApplicationPending,\n statuses: (state) => state.statuses,\n messagePreviewLoading: (state) => state.messagePreviewLoading,\n leagueSettings: (state) => state.leagueSettings,\n attachment1: (state) => state.attachment1,\n attachment2: (state) => state.attachment2,\n recipients: (state) => state.recipients,\n hasSelectedRecipients: (state) => {\n // Check recipients array for any selected recipients\n const hasSelectedInList = state.recipients.some((recipient) => recipient.isSelected)\n\n // Check messagePreview.to array for any entries\n const hasToRecipients = state.messagePreview.to.length > 0\n\n // Check messagePreview.toDelimited for any entries\n const hasToDelimited = state.messagePreview.toDelimited?.length > 0\n\n return hasSelectedInList || hasToRecipients || hasToDelimited\n },\n})\n\nexport interface LeagueData {\n upwardID: string\n accountNumber: string\n}\n\nexport enum actionNames {\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n loadFromCache = 'loadFromCache',\n beginCreating = 'beginCreating',\n retrieveMessagePreview = 'retrieveMessagePreview',\n retrieveStatuses = 'retrieveStatuses',\n retrieveRecipientList = 'retrieveRecipientList',\n updateTo = 'updateTo',\n sendMessage = 'sendMessage',\n updateTypeProgramID = 'updateTypeProgramID',\n updateApprovalStatus = 'updateApprovalStatus',\n updateHeadCoachOnly = 'updateHeadCoachOnly',\n fetchLeagueSettings = 'fetchLeagueSettings',\n updateLeagueSettings = 'updateLeagueSettings',\n setRecipientsFromRunningParticipants = 'setRecipientsFromRunningParticipants',\n updateRecipientsAndPreview = 'updateRecipientsAndPreview',\n}\n\nconst actions = defineActions({\n async [actionNames.retrieveStatuses](\n { commit },\n { accountNumber, upwardLeagueID }: { accountNumber: string; upwardLeagueID: string }\n ): Promise {\n const data = await communicationsClient.getCommunicationStatuses(accountNumber, upwardLeagueID)\n commit(mutationNames.setStatuses, { item: data })\n return data\n },\n async [actionNames.retrieveAndSetAsCurrent](\n { commit },\n { payload }: { payload: LeagueData }\n ): Promise {\n try {\n if (payload == null) {\n throw new Error('payload required')\n } else {\n const providerInfo = await communicationsClient.retrieveProviderInfo(\n payload.upwardID,\n payload.accountNumber\n )\n\n commit(mutationNames.setCurrent, { item: providerInfo })\n\n return providerInfo\n }\n } catch (error) {\n throw new Error('communications store: unable to retrieve communications provider info')\n }\n },\n async [actionNames.retrieveMessagePreview](\n { commit },\n { previewMessage }: { previewMessage: PreviewMessage }\n ): Promise {\n try {\n commit(mutationNames.setMessagePreviewLoading, { loading: true })\n if (previewMessage == null) {\n throw new Error('payload required')\n } else {\n const preview = await communicationsClient.retrieveMessagePreview(previewMessage)\n\n commit(mutationNames.setPreviewMessage, { item: preview })\n\n return preview\n }\n } catch (error) {\n throw new Error('communications store: unable to retrieve communications provider info')\n } finally {\n commit(mutationNames.setMessagePreviewLoading, { loading: false })\n }\n },\n async [actionNames.retrieveRecipientList](\n { commit, state },\n { communicationType }: { communicationType: MessageChannelTypes }\n ): Promise {\n try {\n // set account number\n if (state.messagePreview.accountNumber == '') {\n commit(mutationNames.setAccountNumber, { accountNumber: state.currentProviderInfo.accountNumber })\n }\n //set league id (could be UPWID or URID)\n const currentLeagueId = store.getters.leagueAbstraction.currentItem.upwardLeagueID\n if (state.messagePreview.upwardLeagueID == '') {\n commit(mutationNames.setUpwardLeagueID, { upwId: currentLeagueId })\n }\n //set communication type — sms or email\n commit(mutationNames.setCommunicationType, { communicationType })\n\n //clear to field\n commit(mutationNames.setTo, { to: [] })\n // fetch and the recipient list\n commit(mutationNames.setMessagePreviewLoading, { loading: true })\n const preview = await communicationsClient.retrieveMessagePreview(state.messagePreview)\n commit(mutationNames.setTo, { to: preview?.to ?? [] })\n commit(mutationNames.setMessagePreviewLoading, { loading: false })\n\n return preview\n } catch (error) {\n throw new Error('communications store: unable to retrieve communications provider info')\n }\n },\n [actionNames.updateTo]({ commit }, { to }: { to: string[] }) {\n commit(mutationNames.setTo, { to })\n },\n async [actionNames.sendMessage](\n { state },\n {\n type,\n sendCommunicationOn,\n minutesToAdd,\n }: { type: 'sendemail' | 'sendsms'; sendCommunicationOn: Date | null; minutesToAdd: number | null }\n ): Promise {\n const emailMessage = CommunicationService.previewMessageToMessage(\n state.messagePreview,\n state.attachment1,\n state.attachment2,\n sendCommunicationOn,\n minutesToAdd,\n type\n )\n await communicationsClient.sendMessage(emailMessage, type)\n },\n async [actionNames.fetchLeagueSettings](\n { commit },\n { upwID, emailSMSAccountID }: { upwID: string; emailSMSAccountID: number }\n ): Promise {\n try {\n const settings = await communicationsClient.retrieveLeagueSettings(upwID, emailSMSAccountID)\n commit(mutationNames.setLeagueSettings, { settings })\n return settings\n } catch (error) {\n throw new Error('communications store: unable to retrieve league settings')\n }\n },\n async [actionNames.updateLeagueSettings]({ commit }, { settings }: { settings: EmailSMSLeagueSetting }) {\n try {\n const updatedSettings = await communicationsClient.updateLeagueSettings(settings)\n commit(mutationNames.setLeagueSettings, { settings: updatedSettings ?? null })\n return updatedSettings\n } catch (error) {\n throw new Error('communications store: unable to update league settings')\n }\n },\n async [actionNames.setRecipientsFromRunningParticipants](\n { commit },\n { upwardRunningId }: { upwardRunningId: string }\n ): Promise {\n try {\n const result = await upwardRunningClient.retrieveParticipants(upwardRunningId)\n const recipients =\n result.data?.map((participant) => ({\n id: participant.individualID ?? '',\n name: participant.formattedName ?? '',\n email: participant.emailAddress ?? '',\n phone: participant.phoneNumber ?? '',\n isSelected: false,\n })) ?? []\n\n commit(mutationNames.setRecipients, { recipients })\n return recipients\n } catch (error) {\n throw new Error('communications store: unable to set recipients from participants')\n }\n },\n [actionNames.updateRecipientsAndPreview](\n { commit },\n { recipients, type }: { recipients: Recipient[]; type: string }\n ) {\n commit(mutationNames.setRecipients, { recipients })\n const listOfSelectedEmailsOrPhones = recipients\n .filter((recipient) => recipient.isSelected)\n .map((recipient) => (type === 'sms' ? recipient.phone : recipient.email))\n commit(mutationNames.setTo, { to: listOfSelectedEmailsOrPhones })\n },\n})\n\nexport const namespace = 'communications'\n\nexport const communications = {\n namespaced: true as true,\n state: CommunicationsState,\n getters: getterTree,\n mutations,\n actions,\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UpwardSystemStep.vue?vue&type=style&index=0&id=0efebe8a&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DivisionGrid.vue?vue&type=style&index=0&id=7566c4a2&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{staticClass:\"nav nav-tabs\"},[_vm._l((_vm.tabs),function(tab,i){return _c('li',{key:i,staticClass:\"nav-item\",class:{ active: _vm.$route.path.indexOf(tab.to) !== -1 || tab.id === _vm.internalValue }},[(tab.text)?_c('span',[(tab.to && !tab.disabled)?_c('router-link',{staticClass:\"nav-link\",attrs:{\"to\":tab.to}},[_vm._v(\" \"+_vm._s(tab.text)+\" \")]):(tab.id && !tab.disabled)?_c('a',{staticClass:\"nav-link\",on:{\"click\":function($event){return _vm.tabClicked(tab.id)}}},[_vm._v(\" \"+_vm._s(tab.text)+\" \")]):_c('a',{staticClass:\"nav-link text-muted\",attrs:{\"href\":\"javascript: void(0);\"}},[_vm._v(\" \"+_vm._s(tab.text)+\" \")])],1):_vm._e()])}),_c('li',{staticClass:\"nav-item flex-grow-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\nimport { defineComponent, ref, watch } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'HorizontalNavTabs',\n props: {\n tabs: { type: Array, required: true },\n value: { type: String, required: false, default: '' },\n },\n setup(props, ctx) {\n const internalValue = ref('')\n\n watch(\n () => internalValue,\n () => {\n if (internalValue.value !== props.value) {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (internalValue.value !== props.value) {\n internalValue.value = props.value\n }\n },\n { immediate: true }\n )\n\n function tabClicked(id: string) {\n internalValue.value = id\n }\n\n return {\n internalValue,\n tabClicked,\n }\n },\n})\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!./HorizontalNavTabs.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!./HorizontalNavTabs.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./HorizontalNavTabs.vue?vue&type=template&id=195fee2e&scoped=true&\"\nimport script from \"./HorizontalNavTabs.vue?vue&type=script&lang=ts&\"\nexport * from \"./HorizontalNavTabs.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./HorizontalNavTabs.vue?vue&type=style&index=0&id=195fee2e&lang=scss&scoped=true&\"\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 \"195fee2e\",\n null\n \n)\n\nexport default component.exports","import restService, { RestServiceResult } from '@/services/restService'\nimport { UpwardOpportunityTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardOpportunityTypeID'\nimport { UpwardProductGroupTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProductGroupTypeID'\nimport { UpwardLeagueTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardLeagueTypeID'\nimport { UpwardTimezoneTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardTimezoneTypeID'\nimport { UpwardAddressTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardAddressTypeID'\nimport { UpwardPartnerPhoneTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerPhoneTypeID'\nimport { UpwardPhoneTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPhoneTypeID'\nimport { UpwardPartnerPreferredContactMethodTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerPreferredContactMethodTypeID'\nimport { UpwardPartnerPreferredTimeOfDayTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerPreferredTimeOfDayTypeID'\nimport { UpwardPartnerDayTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerDayTypeID'\nimport { UpwardPartnerRoleTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerRoleTypeID'\nimport { UpwardDevotionTrackTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardDevotionTrackTypeID'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport { UpwardSizeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardSizeTypeID'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport { UpwardColorTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardColorTypeID'\nimport { UpwardReturnReasonTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardReturnReasonTypeID'\nimport { UpwardOrderStatusTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardOrderStatusTypeID'\nimport { UpwardProductOfferingProductPackageTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProductOfferingProductPackageTypeID'\nimport { UpwardPositionTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPositionTypeID'\nimport { UpwardGPOrderTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGPOrderTypeID'\nimport { UpwardPaymentMethodTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPaymentMethodTypeID'\nimport { UpwardDivisionGameTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardDivisionGameTypeID'\nimport { UpwardLeagueScoringTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardLeagueScoringTypeID'\nimport { UpwardTapeDownReasonTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardTapeDownReasonTypeID'\nimport { UpwardRelationshipTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardRelationshipTypeID'\nimport dayjs from 'dayjs'\n\nconst baseUrl = 'upwardTypes/'\n\nconst retrieveOpportunityTypes = async () => {\n return await restService.get(`${baseUrl}opportunityTypes`)\n}\n/***\n * @return UpwardTapeDownReasonTypeID[] list from the server of tapedown reasons.\n */\nconst retrieveTapeDownReasons = async () => {\n return (await restService.get(`${baseUrl}tapedownreasons`)).data ?? []\n}\n\nconst retrieveLeagueTypes = async () => {\n return await restService.get(`${baseUrl}league`)\n}\n\nconst retrieveProductGroupTypes = async (leagueUpwardTypeId: string, programStartDate: Date | null) => {\n let date = ''\n if (programStartDate) {\n date = `/${dayjs(programStartDate).format('YYYY-MM-DD')}`\n }\n\n return await restService.get(\n `${baseUrl}productGroupTypes/${leagueUpwardTypeId}${date}`\n )\n}\n\nconst retrieveTimezoneTypes = async () => {\n return await restService.get(`${baseUrl}timezoneTypes`)\n}\n\nconst retrievePhoneTypes = async () => {\n return await restService.get(`${baseUrl}PhoneTypes`)\n}\n\nconst retrievePartnerPhoneTypes = async () => {\n return await restService.get(`${baseUrl}PhoneTypes`)\n}\n\nconst retrievePartnerPreferredContactMethods = async () => {\n return await restService.get(\n `${baseUrl}partnerPreferredContactMethodTypes`\n )\n}\n\nconst retrievePartnerPreferredTimesOfDay = async () => {\n return await restService.get(\n `${baseUrl}partnerPreferredTimeOfDayTypes`\n )\n}\n\nconst retrieveSizeTypes = async () => {\n return await restService.get(`${baseUrl}size`)\n}\n\nconst retrieveGradeTypes = async () => {\n return await restService.get(`${baseUrl}gradeTypes`)\n}\n\nconst retrievePartnerDayTypes = async () => {\n return await restService.get(`${baseUrl}partnerDayTypes`)\n}\n\nconst retrieveDevotionTrackTypes = async () => {\n return await restService.get(`${baseUrl}devotionTrackTypes`)\n}\n\nconst retrievePartnerRoles = async () => {\n return await restService.get(`${baseUrl}partnerRoleTypes`)\n}\n\nconst retrieveProgramTypes = async (leagueTypeId = '') => {\n const type = leagueTypeId ? `/${leagueTypeId}` : ''\n return await restService.get(`${baseUrl}program${type}`)\n}\n\nconst retrievePaymentTypes = async () => {\n return await restService.get(`${baseUrl}paymentMethodTypes`)\n}\n\nconst retrieveAddressTypes = () => {\n // TODO - hook this up to real data when the controller method is available\n const mockResponse: RestServiceResult = {\n data: [\n { id: 1, description: 'Home', upwardTypeID: 'def123' },\n { id: 2, description: 'Work', upwardTypeID: 'def456' },\n ],\n errorObject: null,\n isSuccess: true,\n status: 200,\n }\n\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve(null)\n }, 1000)\n }).then(() => mockResponse)\n}\n\nconst retrieveColorTypes = async () => {\n return await restService.get(`${baseUrl}color`)\n}\n\nconst retrieveReturnReasonTypes = async () => {\n return await restService.get(`${baseUrl}returnReason`)\n}\n\nconst retrieveDivisionGameTypes = async () => {\n return await restService.get(`${baseUrl}divisionGameType`)\n}\n\nconst retrieveLeagueScoringTypes = async () => {\n return await restService.get(`${baseUrl}leagueScoringType`)\n}\n\nconst retrieveReturnStatusTypes = async () => {\n return await restService.get(`${baseUrl}returnOrderStatus`)\n}\n\nconst retrieveProductOfferingProductPackageTypes = async () => {\n return await restService.get(\n `${baseUrl}productOfferingProductPackage`\n )\n}\n\nconst retrievePositionTypes = async () => {\n return await restService.get(`${baseUrl}positions`)\n}\n\nconst retrieveGPOrderTypes = async () => {\n return await restService.get(`${baseUrl}gporder`)\n}\n\nconst retrieveRelationshipTypes = async () => {\n return await restService.get(`${baseUrl}relationship`)\n}\n\nexport default {\n retrieveOpportunityTypes,\n retrieveLeagueTypes,\n retrieveProductGroupTypes,\n retrieveTimezoneTypes,\n retrievePhoneTypes,\n retrieveAddressTypes,\n retrievePartnerPhoneTypes,\n retrievePartnerPreferredContactMethods,\n retrievePartnerPreferredTimesOfDay,\n retrievePartnerDayTypes,\n retrievePartnerRoles,\n retrieveTapeDownReasons,\n retrieveDevotionTrackTypes,\n retrievePaymentTypes,\n retrieveProgramTypes,\n retrieveSizeTypes,\n retrieveColorTypes,\n retrieveGradeTypes,\n retrieveReturnReasonTypes,\n retrieveReturnStatusTypes,\n retrieveProductOfferingProductPackageTypes,\n retrievePositionTypes,\n retrieveGPOrderTypes,\n retrieveRelationshipTypes,\n retrieveDivisionGameTypes,\n retrieveLeagueScoringTypes,\n}\n","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EvaluationsMissingReport.vue?vue&type=style&index=0&lang=scss&\"","/**\n * Rest Operations primarily for CRUD on Game Scheduler\n */\n\nimport restService from '@/services/restService'\n\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\n\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\n\nimport { CheerSquadGameAppointmentInfo } from '@/GeneratedTypes/ListInfo/CheerSquadGameAppointmentInfo'\nimport { CheerSquadSchedulerMapping } from '@/GeneratedTypes/CheerSquadSchedulerMapping'\nimport { CheerSquadGameAppointment } from '@/GeneratedTypes/CheerSquadGameAppointment'\nimport { isEmptyCheerSquadAppointment } from '@/lib/support/models/CheerSquadGameAppointment/data'\nimport { CheerSquadGameAppointmentInfoModified } from '@/models/Appointments/CheerSquadGameAppointmentInfoModified'\n\nimport { LeagueSpecialEventInfo } from '@/GeneratedTypes/ListInfo/LeagueSpecialEventInfo'\nimport { LeagueSpecialEvent } from '@/GeneratedTypes/LeagueSpecialEvent'\n\nconst baseUrl = 'appointments'\n\nfunction ourCheerURL(leagueID: UpwardLeagueIDType) {\n return `${baseUrl}/cheer/${leagueID}`\n}\n\nfunction ourSpecialEventURL(leagueID: UpwardLeagueIDType) {\n return `${baseUrl}/specialEVent/${leagueID}`\n}\n\nfunction programURL(leagueID: UpwardLeagueIDType) {\n return `programs/${leagueID}`\n}\n\nclass AppointmentClientException extends GeneralError {\n name = 'Appointments API Error'\n}\n\nexport interface CheerScheduleOptions {\n offset?: number\n}\n\nexport default class appointmentClient {\n /**\n * Returns all appointments based on a LeagueID or LeagueID and ProgramType\n * @param leagueID UPW### league\n\n * @return array of league volunteers from the league id\n */\n static async retrieveAllAppointments(\n leagueID: UpwardLeagueIDType\n ): Promise {\n const x = await restService.get(`${ourCheerURL(leagueID)}/`)\n if (!x.isSuccess) {\n throw new AppointmentClientException('Could not get list of volunteers')\n }\n return x.data\n }\n\n static async validate(\n leagueID: UpwardLeagueIDType,\n appointment: CheerSquadGameAppointmentInfoModified\n ): Promise {\n let url = `${baseUrl}/cheer/verificationDetails`\n if (!isEmptyCheerSquadAppointment(appointment)) {\n url = ourCheerURL(leagueID) + `/${appointment.id}/verificationDetails`\n }\n\n const x = await restService.post(url, appointment)\n if (!x.isSuccess) {\n throw new AppointmentClientException('Could not validate appointment')\n }\n return x.data\n }\n\n static async update(\n leagueID: UpwardLeagueIDType,\n appointment: CheerSquadGameAppointmentInfoModified\n ): Promise {\n const url = ourCheerURL(leagueID) + `/${appointment.id}`\n const x = await restService.put(url, appointment)\n\n if (!x || !x?.isSuccess) {\n throw new AppointmentClientException('Could not save appointment')\n }\n return x.data\n }\n\n static async save(\n leagueID: UpwardLeagueIDType,\n appointment: CheerSquadGameAppointmentInfoModified[]\n ): Promise {\n const url = `${baseUrl}/cheer/${leagueID}`\n const x = await restService.post(url, appointment)\n\n if (!x || !x?.isSuccess) {\n throw new AppointmentClientException('Could not save appointment')\n }\n return x.data\n }\n\n static async remove(\n leagueID: UpwardLeagueIDType,\n appointmentID: number\n ): Promise {\n const url = ourCheerURL(leagueID) + `/${appointmentID}`\n const x = await restService.delete(url)\n\n if (!x || !x?.isSuccess) {\n throw new AppointmentClientException('Could not save appointment')\n }\n return x.data\n }\n\n static async schedule(leagueID: UpwardLeagueIDType, options: CheerScheduleOptions) {\n const y = await restService.post(programURL(leagueID) + '/generateCheerGamedaySchedule', options)\n if (!y?.isSuccess) {\n throw new AppointmentClientException('Issue with appointment scheduling', y.errorObject)\n }\n }\n\n static async clearSchedule(leagueID: UpwardLeagueIDType) {\n const y = await restService.post(programURL(leagueID) + '/clearCheerGamedaySchedule', {})\n if (!y?.isSuccess) {\n throw new AppointmentClientException('Issue with squad schedule clearing', y.errorObject)\n }\n }\n\n static async clearAppointments(leagueID: UpwardLeagueIDType, squadid: number) {\n const y = await restService.delete(ourCheerURL(leagueID) + `/bySquad/${squadid}`)\n if (!y?.isSuccess) {\n throw new AppointmentClientException('Issue with clearing appointments ', y.errorObject)\n }\n }\n\n static async savePreferences(\n leagueID: UpwardLeagueIDType,\n\n preferences: CheerSquadSchedulerMapping[]\n ) {\n const x = await restService.put(programURL(leagueID) + '/cheerSquadSchedulerMapping', preferences)\n\n if (!x || !x?.isSuccess) {\n throw new AppointmentClientException('Could not save appointment')\n }\n return x.data\n }\n\n static async getPreferences(leagueID: UpwardLeagueIDType) {\n const y = await restService.get(\n programURL(leagueID) + '/cheerSquadSchedulerMapping'\n )\n if (y && y.isSuccess) {\n return y.data\n } else {\n return []\n }\n }\n\n static async retrieveAllSpecialEvents(\n leagueID: UpwardLeagueIDType,\n typeProgramID: string | null | undefined = undefined,\n divisionID = 0,\n teamID = 0,\n facilityID = 0\n ): Promise {\n let suffix = ''\n if (typeProgramID || divisionID > 0 || teamID > 0 || facilityID > 0) {\n suffix = '?'\n if (typeProgramID) {\n suffix = `${suffix}programTypeID=${typeProgramID}&`\n }\n if (divisionID > 0) {\n suffix = `${suffix}divID=${divisionID}&`\n }\n if (teamID > 0) {\n suffix = `${suffix}teamID=${teamID}&`\n }\n if (facilityID > 0) {\n suffix = `${suffix}facilityID=${facilityID}&`\n }\n //remove trailing ampersand\n suffix = suffix.slice(0, -1)\n }\n const x = await restService.get(`${ourSpecialEventURL(leagueID)}/${suffix}`)\n if (!x.isSuccess) {\n throw new AppointmentClientException('Could not get list of special events')\n }\n return x.data\n }\n\n static async validateSpecialEvent(\n leagueID: UpwardLeagueIDType,\n event: LeagueSpecialEvent\n ): Promise {\n let url = `${baseUrl}/specialEvent/verificationDetails`\n if (event.eventID > 0) {\n url = ourSpecialEventURL(leagueID) + `/${event.eventID}/verificationDetails`\n }\n\n const x = await restService.post(url, event)\n if (!x.isSuccess) {\n throw new AppointmentClientException('Could not validate special event')\n }\n return x.data\n }\n\n static async updateSpecialEvent(\n leagueID: UpwardLeagueIDType,\n event: LeagueSpecialEvent\n ): Promise {\n const url = ourSpecialEventURL(leagueID) + `/${event.eventID}`\n const x = await restService.put(url, event)\n\n if (!x || !x?.isSuccess) {\n throw new AppointmentClientException('Could not update special event')\n }\n return x.data\n }\n\n static async saveSpecialEvent(event: LeagueSpecialEvent): Promise {\n const url = `${baseUrl}/specialEvent`\n const x = await restService.post(url, event)\n\n if (!x || !x?.isSuccess) {\n throw new AppointmentClientException('Could not create special event')\n }\n return x.data\n }\n\n static async removeSpecialEvent(leagueID: UpwardLeagueIDType, eventID: number) {\n const url = ourSpecialEventURL(leagueID) + `/${eventID}`\n const x = await restService.delete(url)\n\n if (!x || !x?.isSuccess) {\n throw new AppointmentClientException('Could not delete special event')\n }\n }\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalMultiSelect.vue?vue&type=style&index=0&id=b4c78a00&lang=scss&scoped=true&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CompleteRegistrationTransaction.vue?vue&type=style&index=0&id=f4d804ce&scoped=true&lang=scss&\"","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!./ResourceTile.vue?vue&type=style&index=0&id=9c368052&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!./ExcelReports.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Index.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReturnsOrderPanel.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderListSection.vue?vue&type=style&index=0&id=cf9bedc6&lang=scss&scoped=true&\"","export enum OrderTypesEnum {\n gameday = 'merchandiseorder',\n startup = 'startuporder',\n clinic = 'clinicorder',\n league = 'leagueorder',\n manual = 'manualorder',\n runningStartup = 'runningstartuporder',\n running = 'runningorder',\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnassignDivisionParticipants.vue?vue&type=style&index=0&id=6bb8189a&lang=scss&scoped=true&\"","export enum OfferingOptionType {\n SELECT = 'SELECT',\n ADD = 'ADD',\n OPTIONAL = 'OPTIONAL',\n ADDBYGRADEGENDER = 'ADDBYGRADEGENDER',\n AUTOINCLUDE = 'AUTOINCLUDE',\n SELECTOPTIONAL = 'SELECTOPTIONAL',\n HYBRID = 'HYBRID',\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"product-select-css-grid mb-4\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductSelect.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProductSelect.vue?vue&type=template&id=142f586a&scoped=true&\"\nimport script from \"./ProductSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./ProductSelect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProductSelect.vue?vue&type=style&index=0&id=142f586a&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 \"142f586a\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EFTReport.vue?vue&type=style&index=0&id=495a3681&scoped=true&lang=scss&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Archive.vue?vue&type=style&index=0&id=7be9bb46&lang=scss&scoped=true&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderSearchScreen.vue?vue&type=style&index=0&lang=scss&\"","export enum LeagueTypes {\n 'BASKETBALL' = 'LT_BASKETBALL',\n 'BASKETBALLCHEER' = 'LT_BASKETBALL_BASKETBALLCHEERLEADING',\n 'SOCCER' = 'LT_SOCEER',\n 'FOOTBALL' = 'LT_FOOTBALL',\n 'BASKETBALLCAMP' = 'LT_BASKETBALLCAMP',\n 'CHEERLEADINGCAMP' = 'LT_CHEERLEADINGCAMP',\n 'SOCCERCAMP' = 'LT_SOCCERCAMP',\n 'FOOTBALLCHEER' = 'LT_FOOTBALL_FOOTBALLCHEERLEADING',\n 'FOOTBALLCAMP' = 'LT_FOOTBALLCAMP',\n 'VOLLEYBALL' = 'LT_VOLLEYBALL',\n 'BASEBALL' = 'LT_BASEBALL',\n 'UPWARDSELECT' = 'LT_UPWARDSELECTMSS',\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectPromoCards.vue?vue&type=style&index=0&id=c441227c&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RangeSlider.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Calendar.vue?vue&type=style&index=0&id=4fa4e644&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PartnerList.vue?vue&type=style&index=0&id=469db628&lang=scss&scoped=true&\"","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!./ManageDiscountCodes.vue?vue&type=style&index=0&lang=css&\"","import { generateIsSelected, OrderProduct } from '@/models/Order/OrderProduct'\nimport store from '@/store'\nimport { computed, ComputedRef, onMounted } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\nimport { OrderProductSelection } from '@/store/orders'\n\n/**\n * Encapsulates logic where products are selected before quantities are ordered.\n * This one uses the store automatically and is geared toward startup orders where the\n * products are chosen before the quantities are known.\n */\nexport function useProductSelector() {\n return function useProductSelector() {\n /**\n * toggles a product\n * @param product\n */\n function toggleProduct(product: OrderProduct) {\n //productSelected is readonly.\n let t = (cloneDeep(productsSelected.value) as unknown) as OrderProductSelection[]\n\n const f = t.find((x) => x.id == product.id)\n if (f) {\n t = t.filter((x) => x.id != product.id)\n } else {\n t.push({ id: product.id, upwardProductID: product.upwardProductID, variation: '' })\n }\n setCurrentOrderSelectedProducts({ list: t })\n }\n\n function isSelected(product: OrderProduct) {\n return generateIsSelected(productsSelected.value)(product)\n }\n\n const productsSelected = computed(() => store.getters.orders.productsSelected)\n\n const currentOrderProducts = computed(() => store.getters.orders.currentOrderProducts)\n\n let setCurrentOrderSelectedProducts = store.commit.orders.setCurrentOrderSelectedProducts\n onMounted(() => {\n setCurrentOrderSelectedProducts = store.commit.orders.setCurrentOrderSelectedProducts\n })\n\n return { toggleProduct, isSelected, currentOrderProducts, productsSelected }\n }\n}\nexport type ProductSelectorLogic = ReturnType\nexport type ProductSelectorLogicGenerator = typeof useNoProductSelector\nexport interface ProductSelectorLogicGeneratorParams {\n currentOrderProductsRef: ComputedRef\n}\n/**\n * Encapsulates logic where products are not pre-selected before quantities are ordered.\n * All products from the product selector will be returned on this (e.g. everything available is available)\n *\n */\nexport function useNoProductSelector(p: ProductSelectorLogicGeneratorParams) {\n const useNoProductSelector: ProductSelectorLogic = () => {\n function toggleProduct() {\n //no op toggling a product\n }\n\n // here we are emulating the type of\n\n function isSelected() {\n return true\n }\n\n const productsSelected = computed(() =>\n currentOrderProducts.value.map(\n (x) => ({ id: x.id, upwardProductID: x.upwardProductID, variation: '' } as OrderProductSelection)\n )\n )\n\n const currentOrderProducts = computed(() => p.currentOrderProductsRef.value)\n\n return { toggleProduct, isSelected, currentOrderProducts, productsSelected }\n }\n return useNoProductSelector\n}\n","import leaguesClient from '@/clients/leaguesClient'\nimport { League } from '@/GeneratedTypes/League'\nimport { LeagueTypes } from '@/lib/common/LeagueTypes'\nimport sessionObjectsClient from '@/clients/sessionObjectsClient'\nimport { initializeNewProgramGradeData, populateProgramGrades } from '@/services/gradeService'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { getEmptyLeague } from '@/lib/support/models/League/data'\nimport { EstimateInitializer } from '@/lib/support/models/EstimateInitializer/EstimateInitializer'\nimport { defineMutations, defineActions, defineGetters } from 'direct-vuex'\nimport { LeagueProgram } from '@/GeneratedTypes/LeagueProgram'\nimport { uniqueUserIdCheck } from '@/store/helper'\nimport { StartingSelection } from '@/models/League/StartingSelection'\nimport { isCheer } from '@/lib/common/ProgramTypes'\nimport store from '@/store'\n\ninterface LeaguesState {\n currentItem: League\n startingSelection: StartingSelection | null\n}\n\nconst leaguesState: LeaguesState = {\n currentItem: getEmptyLeague(),\n startingSelection: null,\n}\n\nexport enum getterNames {\n currentItem = 'currentItem',\n startingSelection = 'startingSelection',\n isUpwardSelect = 'isUpwardSelect',\n}\n\nconst getterTree = defineGetters()({\n currentItem: (state) => state.currentItem,\n startingSelection: (state) => state.startingSelection,\n isUpwardSelect: (state) => state.currentItem.typeLeagueID == LeagueTypes.UPWARDSELECT,\n})\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n setStartingSelection = 'setStartingSelection',\n}\nconst mutations = defineMutations()({\n setCurrent(state, { item }: { item: League }) {\n state.currentItem = item\n store.commit.leagueAbstraction.setCurrentLeague({ item })\n },\n setStartingSelection(state, { selection }: { selection: StartingSelection }) {\n state.startingSelection = selection\n },\n})\n\nexport enum actionNames {\n create = 'create',\n update = 'update',\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n validate = 'validate',\n cache = 'cache',\n loadFromCache = 'loadFromCache',\n beginCreating = 'beginCreating',\n beginCreatingFromEstimate = 'beginCreatingFromEstimate',\n}\n\nconst actions = defineActions({\n async retrieveAndSetAsCurrent({ commit }, { id }: { id: string }): Promise {\n const result = await leaguesClient.retrieve(id)\n\n if (result) {\n if (result.programs?.some((p) => isCheer(p.typeProgramID) ?? false) && result?.productOfferingConfig) {\n if (!result.productOfferingConfig?.cheerCoachEstimate) {\n result.productOfferingConfig.cheerCoachEstimate = 1\n }\n\n if (!result.productOfferingConfig?.cheerEstimate) {\n result.productOfferingConfig.cheerEstimate = 1\n }\n }\n\n if (result?.productOfferingConfig) {\n if (!result.productOfferingConfig.sportCoachEstimate) {\n result.productOfferingConfig.sportCoachEstimate = 1\n }\n\n if (!result.productOfferingConfig.playerEstimate) {\n result.productOfferingConfig.playerEstimate = 1\n }\n }\n commit(mutationNames.setCurrent, { item: result })\n }\n\n return null\n },\n async create({ commit, rootGetters }, { item }: { item: League }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n const result = await leaguesClient.create(item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n await sessionObjectsClient.delete(`league.new.${uniqueUserId}`)\n return result.data\n }\n\n return null\n },\n async update({ commit }, { item }: { item: League }): Promise {\n const result = await leaguesClient.update(item.upwardLeagueID!, item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrent, { item: result.data })\n return result.data\n }\n\n return null\n },\n async validate({ commit }, { item, ruleSet = '' }: { item: League; ruleSet: string }): Promise {\n const isNew = !item.upwardLeagueID\n\n const validationResult = await (isNew\n ? leaguesClient.validateNew(item, ruleSet)\n : leaguesClient.validateExisting(item.upwardLeagueID!, item))\n\n if (!validationResult.isSuccess) {\n return false\n }\n\n commit(mutationNames.setCurrent, { item: validationResult.data!.model })\n return true\n },\n async cache({ commit, rootGetters }, { item }: { item: League }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n\n const isNew = !item.upwardLeagueID\n const cacheKey = `league.${isNew ? `new.${uniqueUserId}` : item.upwardLeagueID}`\n const cacheResult = await sessionObjectsClient.createOrUpdate(cacheKey, item)\n\n if (!cacheResult.isSuccess) {\n return false\n }\n\n commit(mutationNames.setCurrent, { item })\n return true\n },\n async loadFromCache({ commit, rootGetters }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n\n const result = await sessionObjectsClient.retrieve(`league.new.${uniqueUserId}`)\n\n if (!result.isSuccess) {\n return false\n }\n\n const item = result.data!\n\n commit(mutationNames.setCurrent, { item })\n\n return true\n },\n async beginCreatingFromEstimate(\n { dispatch },\n { initializer }: { initializer: EstimateInitializer }\n ): Promise {\n const result = await leaguesClient.newTemplate(initializer.typeLeagueID)\n\n if (!result.isSuccess) {\n return false\n }\n\n let item = result.data!\n item = commonInit(item)\n initializer.productOfferingConfig.accountNumber = null\n item.firstPracticeDate = initializer.productOfferingConfig.firstPracticeDateEstimate\n item.leagueName = initializer.productOfferingConfig.name ?? ''\n item.productOfferingConfig = initializer.productOfferingConfig\n item.publicDisplayName = store.getters.authorization.accountName\n if (item.accounts) item.accounts[0].grades = initializer.productOfferingConfig.gradesByGender\n item = populateProgramGrades(item, initializer.productOfferingConfig.gradesByGender)\n\n await dispatch(actionNames.cache, { item })\n\n return true\n },\n async beginCreating(\n { commit, dispatch },\n {\n name,\n typeLeagueID,\n publicDisplayName,\n partnerContact,\n addToCache,\n }: {\n name: string\n typeLeagueID: string\n publicDisplayName: string\n partnerContact: ContactInfo | null\n addToCache: boolean\n }\n ): Promise {\n const result = await leaguesClient.newTemplate(typeLeagueID)\n\n if (!result.isSuccess) {\n return false\n }\n\n let item = result.data!\n item = commonInit(item)\n item.leagueName = name\n item.publicDisplayName = publicDisplayName\n if (item.programs != null && item.programs.length > 0) {\n item.programs.forEach((p: LeagueProgram) => {\n initializeNewProgramGradeData(item, p.typeProgramID)\n })\n }\n\n if (partnerContact) {\n item.partnerContact = {\n firstName: partnerContact.firstName!,\n lastName: partnerContact.lastName!,\n emailAddress: partnerContact.emailAddress!,\n emailValid: partnerContact.emailValid,\n emailValidReason: partnerContact.emailValidReason,\n primaryPhoneNumber: partnerContact.primaryPhone!,\n primaryPhoneTypeID: partnerContact.primaryPhoneTypeID!,\n secondaryPhoneNumber: partnerContact.secondaryPhone,\n secondaryPhoneTypeID: partnerContact.secondaryPhoneTypeID,\n alternatePhoneNumber: partnerContact.alternatePhone,\n alternatePhoneTypeID: partnerContact.alternatePhoneTypeID,\n yearsExperience: partnerContact.yearsExperience,\n isFullTime: partnerContact.isFullTime,\n typePartnerRoleID: partnerContact.typePartnerRoleID!,\n typePreferredDayOfWeekID: partnerContact.preferredContactDayOfWeek!,\n typePreferredTimeOfDayID: partnerContact.preferredContactTimeOfDay!,\n typePreferredContactMethodID: partnerContact.preferredContactMethod!,\n }\n\n item.leagueDirectorPartnerID = partnerContact.id\n }\n\n commit(mutationNames.setCurrent, { item })\n\n if (addToCache) {\n await dispatch(actionNames.cache, { item })\n }\n\n return true\n },\n})\n\nfunction commonInit(item: League): League {\n item.isOPRLeague = true\n item.canEdit = true\n\n if (!item.typeSystemsAccessID) {\n item.typeSystemsAccessID = 'FULL'\n }\n\n if (!item.registrationInfo) {\n item.registrationInfo = {\n allowCreditCard: true,\n allowPayLater: true,\n // Always set the league.registrationInfo.allowSizingEntry to true per 2635\n allowSizingEntry: true,\n allowGeneralNotes: false,\n allowDonations: false,\n allowWaitlist: false,\n onlineRegistrationBeginDate: null,\n onlineRegistrationEndDate: null,\n donationExplanation: '',\n registrationStartMessage: '',\n confirmationMessage: '',\n twoChildDiscountAmount: 0,\n threeChildDiscountAmount: 0,\n fourOrMoreChildDiscountAmount: 0,\n allowDiscountCodes: false,\n emailLDOnDiscountCodeUse: false,\n discountCodes: [],\n bypassLinks: [],\n contactLine1: '',\n contactLine2: '',\n contactLine3: '',\n contactLine4: '',\n contactLine5: '',\n }\n }\n return item\n}\n\nexport const namespace = 'leagues'\n\nexport const leagues = {\n namespaced: true as true,\n state: leaguesState,\n getters: getterTree,\n mutations,\n actions,\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Packages.vue?vue&type=style&index=0&id=1e8801a6&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"search-input form-group\"},[_c('div',{staticClass:\"alltogethernow\"},[_c('text-input',{staticClass:\"no-input-borders border-bottom-1 border-bottom-light-4 limited-width\",attrs:{\"label\":_vm.label,\"placeholder\":_vm.placeholder,\"prepend-icon\":\"fa fa-search\"},on:{\"input\":_vm.handleInput,\"change\":_vm.handleChange},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}}),(_vm.searchButtonText)?_c('button',{staticClass:\"btn btn-success float-right mt-1\",attrs:{\"role\":\"button\"},on:{\"click\":_vm.handleButtonInput}},[_vm._v(\" \"+_vm._s(_vm.searchButtonText)+\" \")]):_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\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport TextInput from '@/elements/TextInput.vue'\n\nexport default defineComponent({\n name: 'SearchInput',\n components: {\n TextInput,\n },\n props: {\n value: { type: String, required: true },\n searchButtonText: { type: String, required: false, default: '' },\n label: { type: String, required: false, default: '' },\n placeholder: { type: String, required: false, default: 'Search' },\n allowBlankInput: { type: Boolean, required: false, default: false },\n },\n setup(props, ctx) {\n const internalValue = ref('')\n\n function input() {\n ctx.emit('input', internalValue.value)\n }\n\n function searchClick() {\n ctx.emit('search-click', internalValue.value)\n }\n\n function change() {\n //trigger change if we don't have a search button\n ctx.emit('change', internalValue.value)\n }\n\n function handleInput() {\n //trigger only if we don't have a search button\n if (!props.searchButtonText || (props.searchButtonText && props.allowBlankInput)) {\n input()\n }\n }\n\n function handleButtonInput() {\n searchClick()\n input()\n }\n\n function handleChange() {\n if (!props.searchButtonText) {\n change()\n }\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n },\n { immediate: true }\n )\n\n return {\n internalValue,\n handleInput,\n handleChange,\n handleButtonInput,\n }\n },\n})\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!./SearchInput.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!./SearchInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SearchInput.vue?vue&type=template&id=43323a74&scoped=true&\"\nimport script from \"./SearchInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./SearchInput.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SearchInput.vue?vue&type=style&index=0&id=43323a74&scoped=true&lang=scss&\"\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 \"43323a74\",\n null\n \n)\n\nexport default component.exports","import { PlayerPracticeNightExclusion } from '@/GeneratedTypes/PlayerPracticeNightExclusion'\n\nexport function getEmptyPracticeNightExclusions(): PlayerPracticeNightExclusion[] {\n return []\n}\n","import { LeaguePlayer } from '@/GeneratedTypes/LeaguePlayer'\nimport { getEmptyPracticeNightExclusions } from '@/lib/support/models/PlayerPracticeNightExclusion/data'\nimport { getEmptyPlayerUDFs } from '@/lib/support/models/PlayerUDFValue/data'\nimport { PlayerInfoIDType } from '@/lib/support/models/LeaguePlayerInfo/data'\nimport { LeaguePlayerInfo } from '@/GeneratedTypes/ListInfo/LeaguePlayerInfo'\n\nexport const getEmptyLeaguePlayer = (props?: LeaguePlayerSeedInfo) => {\n const rv: LeaguePlayer = {\n accountNumber: newAccountID(),\n leagueID: props?.leagueID ?? 0,\n birthDate: new Date('1970-01-01 00:00'),\n churchName: '',\n firstName: '',\n gender: 'M',\n generalNotes: '',\n individualID: newPlayerId(),\n isImported: false,\n lastName: '',\n medicalNotes: '',\n middleInitial: '',\n udFs: getEmptyPlayerUDFs(),\n practiceNightExclusions: getEmptyPracticeNightExclusions(),\n contacts: [],\n programs: [],\n thirdPartyClientIDs: [],\n typeGradeID: 'K3',\n gradeIsOverridden: false,\n }\n\n return rv\n}\n\nexport class LeaguePlayerSeedInfo {\n typeProgramID = ''\n leagueID = 0\n}\n\nfunction newAccountID(): string {\n return '0'\n}\n\nfunction newPlayerId(): PlayerInfoIDType {\n return 0\n}\n\nexport function PlayerId(p: LeaguePlayer | LeaguePlayerInfo) {\n return p.individualID\n}\n\n/**\n * Returns if the account is newly created.\n * @param p\n */\nexport function IsNewPlayer(p: LeaguePlayer) {\n return PlayerId(p) == newPlayerId()\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertCloak.vue?vue&type=style&index=0&id=03ba83d8&lang=scss&scoped=true&\"","/**\n * Rest Operations primarily for CRUD on Game Scheduler\n */\n\nimport restService, { RestServiceResult } from '@/services/restService'\n\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\n\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\n\nimport { DivisionGameInfo } from '@/GeneratedTypes/ListInfo/DivisionGameInfo'\nimport { DivisionGame } from '@/GeneratedTypes/DivisionGame'\nimport { isEmptyDivisionGame } from '@/lib/support/models/DivisionGame/data'\nimport { DivisionGameModified } from '@/models/Games/DivisionGameModified'\nimport { DivisionGameSchedulerPreference } from '@/GeneratedTypes/DivisionGameSchedulerPreference'\n\nconst baseUrl = 'games'\nfunction ourURL(leagueID: UpwardLeagueIDType) {\n return `${baseUrl}/${leagueID}`\n}\nconst divisionUrl = 'divisions'\nfunction divisionURL(leagueID: UpwardLeagueIDType, program: string, divisionId: number) {\n return `${divisionUrl}/${leagueID}/${program}/${divisionId}`\n}\n\nclass GameClientException extends GeneralError {\n name = 'Games API Error'\n}\n\nexport interface ScheduleOptionsType {\n createDefaultPairings: boolean\n generateGameSchedule: boolean\n clearExistingSchedule: boolean\n}\n\nexport default class gamesClient {\n /**\n * Returns all games based on a LeagueID or LeagueID and ProgramType\n * @param leagueID UPW### league\n\n * @return array of league volunteers from the league id\n */\n static async retrieveAllGames(leagueID: UpwardLeagueIDType): Promise {\n const x = await restService.get(`${ourURL(leagueID)}/`)\n if (!x.isSuccess) {\n throw new GameClientException('Could not get list of volunteers')\n }\n return x.data\n }\n\n static async pairTeams(leagueID: UpwardLeagueIDType, program: string, divisionID: number): Promise {\n const x = await restService.post(\n `${divisionURL(leagueID, program, divisionID)}/generateSportDivisionGameSchedule`,\n {\n createDefaultPairings: true,\n generateGameSchedule: false,\n clearExistingSchedule: true,\n }\n )\n if (!x.isSuccess) {\n throw new GameClientException('Could not pair games')\n }\n return\n }\n\n static async validate(\n leagueID: UpwardLeagueIDType,\n game: DivisionGameModified\n ): Promise {\n let url = `${baseUrl}/verificationDetails`\n if (!isEmptyDivisionGame(game)) {\n url = ourURL(leagueID) + `/${game.gameID}/verificationDetails`\n }\n\n const x = await restService.post(url, game)\n if (!x.isSuccess) {\n throw new GameClientException('Could not validate game')\n }\n return x.data\n }\n\n static async save(leagueID: UpwardLeagueIDType, game: DivisionGameModified): Promise {\n let x: RestServiceResult | null\n if (!isEmptyDivisionGame(game)) {\n const url = ourURL(leagueID) + `/${game.gameID}`\n x = await restService.put(url, game)\n } else {\n const url = `${baseUrl}`\n x = await restService.post(url, game)\n }\n\n if (!x || !x?.isSuccess) {\n throw new GameClientException('Could not save game')\n }\n return x.data\n }\n\n static async remove(leagueID: UpwardLeagueIDType, gameID: number): Promise {\n const url = ourURL(leagueID) + `/${gameID}`\n const x = await restService.delete(url)\n\n if (!x || !x?.isSuccess) {\n throw new GameClientException('Could not save game')\n }\n return x.data\n }\n\n static async schedule(\n leagueID: UpwardLeagueIDType,\n program: string,\n divisionID: number,\n options: ScheduleOptionsType\n ) {\n const y = await restService.post(\n divisionURL(leagueID, program, divisionID) + '/generateSportDivisionGameSchedule',\n options\n )\n if (!y.isSuccess) {\n throw new GameClientException('Issue with game scheduling', y.errorObject)\n }\n }\n\n static async savePreferences(\n leagueID: UpwardLeagueIDType,\n program: string,\n divisionID: number,\n preferences: DivisionGameSchedulerPreference\n ) {\n const y = await restService.post(\n divisionURL(leagueID, program, divisionID) + '/gameSchedulerPreferences/verificationDetails',\n preferences\n )\n if (y && y.isSuccess) {\n const x = await restService.put(\n divisionURL(leagueID, program, divisionID) + '/gameSchedulerPreferences',\n preferences\n )\n\n if (!x || !x?.isSuccess) {\n throw new GameClientException('Could not save game')\n }\n return x.data\n }\n }\n\n static async getPreferences(leagueID: UpwardLeagueIDType, program: string, divisionID: number) {\n const y = await restService.get(\n divisionURL(leagueID, program, divisionID) + '/gameSchedulerPreferences'\n )\n if (y && y.isSuccess) {\n return y.data\n }\n }\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CoachListElement.vue?vue&type=style&index=0&id=2a537723&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-data-table',{staticClass:\"upw-data-table\",attrs:{\"dense\":_vm.dense,\"headers\":_vm.headers,\"items\":_vm.lItems,\"item-key\":_vm.itemKey,\"single-select\":_vm.singleSelect,\"items-per-page\":_vm.itemsPerPage,\"hide-default-header\":_vm.hideHeader,\"hide-default-footer\":_vm.hideFooter,\"sort-by\":_vm.sortBy,\"search\":_vm.search,\"page\":_vm.page,\"show-expand\":_vm.showExpand,\"single-expand\":_vm.singleExpand,\"item-class\":_vm.itemClass},on:{\"click:row\":_vm.rowSelected,\"dblclick:row\":_vm.dblClick,\"current-items\":_vm.currentData,\"page-count\":_vm.pageCount,\"pagination\":_vm.onPagination},scopedSlots:_vm._u([_vm._l((_vm.$scopedSlots),function(_,slot){return {key:slot,fn:function(props){return [_vm._t(slot,null,null,props)]}}}),{key:\"expanded-item\",fn:function(ref){\nvar headers = ref.headers;\nvar item = ref.item;\nreturn [_vm._t(\"expanded-item\",null,null,{ headers: headers, item: item })]}}],null,true),model:{value:(_vm.allSelected),callback:function ($$v) {_vm.allSelected=$$v},expression:\"allSelected\"}},[_vm._v(\" \"+_vm._s(_vm.lItems)+\" \")])}\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\nimport { defineComponent, PropType, ref, watch } from '@vue/composition-api'\nimport { DataTableHeader } from 'vuetify/types'\nimport { DataTableSelection, DataTablePagination } from '@/models/DataTable/DataTableSelection'\nimport { cloneDeep } from 'lodash'\nimport uuid from 'uuid'\n\nexport default defineComponent({\n name: 'DataTable',\n props: {\n value: {\n type: Array as PropType,\n required: false,\n default: () => [],\n },\n headers: { type: Array as PropType, required: true },\n items: { type: Array as PropType, required: true },\n itemsPerPage: { type: Number, required: false, default: 5 },\n page: { type: Number, required: false, default: 1 },\n hideHeader: { type: Boolean, required: false, default: false },\n hideFooter: { type: Boolean, required: false, default: false },\n singleSelect: { type: Boolean, required: false, default: true },\n dense: { type: Boolean, required: false, default: false },\n sortBy: { type: String, required: false }, //column to sort by\n search: { type: String, required: false }, //value to search for\n itemKey: { type: String, required: false, default: '$internalid$' }, //value to search for\n showExpand: { type: Boolean, required: false, default: false },\n singleExpand: { type: Boolean, required: false, default: true },\n itemClass: { type: Function, required: false },\n },\n setup(props, ctx) {\n const lItems = ref([])\n const allSelected = ref([])\n function rowSelected(data: any, row: DataTableSelection) {\n //set selected row\n row.select(row.isSelected ? false : true)\n row.isSelected = row.isSelected ? false : true\n\n //collect all selected\n const all = cloneDeep(allSelected.value)\n all.push(row.item)\n\n //emit\n ctx.emit('rowSelected', removeLocalId(row), all)\n }\n\n function dblClick(e: MouseEvent, row: DataTableSelection) {\n ctx.emit('dblClick', removeLocalId(row))\n }\n\n function removeLocalId(row: DataTableSelection) {\n const r = cloneDeep(row)\n delete r.item['$internalid$']\n return r\n }\n\n function pageCount(count: number) {\n ctx.emit('pageCount', count)\n }\n\n function onPagination(data: DataTablePagination) {\n ctx.emit('pagination', data)\n }\n\n function currentData(data: any[]) {\n // currentData represents the current state of the data in the grid\n // emitting it here allows instantiating components to have access to the current\n // sort order, current page data, etc\n const local = cloneDeep(data)\n const localIdRemoved = local.map((d) => {\n delete d['$internalid$']\n return d\n })\n ctx.emit('currentData', localIdRemoved)\n }\n\n watch(\n () => props.items,\n () => {\n // dataTable requires a unique ID for each row.\n // Add a local one for cases where one is not explicity set by the instantiating component\n lItems.value = cloneDeep(props.items).map((i) => {\n return { ...i, $internalid$: uuid.v4() }\n })\n },\n { immediate: true }\n )\n\n watch(\n () => props.value,\n () => {\n allSelected.value = props.value ?? []\n },\n { immediate: true }\n )\n\n watch(\n () => allSelected.value,\n () => {\n ctx.emit('change', allSelected.value)\n },\n { immediate: true }\n )\n\n return { rowSelected, dblClick, lItems, allSelected, currentData, pageCount, onPagination }\n },\n})\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!./DataTable.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!./DataTable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DataTable.vue?vue&type=template&id=b08f2342&\"\nimport script from \"./DataTable.vue?vue&type=script&lang=ts&\"\nexport * from \"./DataTable.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DataTable.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 { VDataTable } from 'vuetify/lib/components/VDataTable';\ninstallComponents(component, {VDataTable})\n","import { memoize } from 'lodash'\n/**\n * Converts a time string into component parts [0]=hr [1]=min [2]=sec\n */\nexport function timeStringSplit(time: string) {\n let arr: number[] = []\n if (time) {\n arr = time.split(/[:\\s]/).map(function (item) {\n return parseInt(item)\n })\n return arr\n }\n return [NaN, NaN, NaN]\n}\n\n/**\n * Converts a time to milliseconds past midnight.\n *\n * @param {string} time - looks like \"8:00\" or \"12:00:11\" etc\n * @return {number} ms since midnight or NaN if not a time\n */\nexport const timeStringToMilliseconds = memoize(function (time: string) {\n let secs = 0\n let arr: number[] = []\n if (time) {\n arr = timeStringSplit(time)\n secs = (arr[0] * 3600 + arr[1] * 60 + (arr[2] === undefined ? 0 : arr[2])) * 1000\n\n return secs\n }\n return NaN\n})\n\n/**\n * Will return a time string padded for sorting.\n */\nexport function millisecondsToTimeString(ms: number) {\n const d = new Date(ms)\n return dateToTimeString(d)\n}\n\nexport function dateToTimeString(d: Date) {\n return `${d.getUTCHours().toString().padStart(2, '0')}:${d.getUTCMinutes().toString().padStart(2, '0')}`\n}\n\n/**\n * Looks at a string and returns if it looks valid or not.\n * @param time\n */\nexport function timeStringLooksValid(time: string | Date | undefined | null) {\n if (time) {\n if (time instanceof Date) {\n return true\n }\n return !isNaN(timeStringSplit(time)[0])\n }\n return false\n}\n\n/**\n * Creates a new date from the existing date with the time specified from the parameters.\n * @param hours\n * @param minutes\n * @param seconds\n */\nexport function getDateWithTime(\n date: string | Date | null,\n hours: number,\n minutes: number,\n seconds: number\n): Date | null {\n if (!date) {\n return null\n }\n if (date instanceof Date) {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate(), hours, minutes, seconds)\n }\n date = new Date(date)\n return new Date(date.getFullYear(), date.getMonth(), date.getDate(), hours, minutes, seconds)\n}\n\n/**\n * Creates a new date from the existing date with the time specified from the parameters.\n * @param date\n */\nexport function convertDateTimeToUTC(date: string | Date | null): Date | null {\n if (!date) {\n return null\n }\n if (date instanceof Date) {\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000)\n }\n date = new Date(date)\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000)\n}\n\nexport function convertDateTimeToLocalTime(date: string | Date | null): Date | null {\n if (!date) {\n return null\n }\n if (date instanceof Date) {\n return new Date(date.getTime() + date.getTimezoneOffset() * 60000)\n }\n date = new Date(date)\n return new Date(date.getTime() + date.getTimezoneOffset() * 60000)\n}\n\nexport function convertToOldFashionDateTime(fullDate: Date, hours: number, minutes: number, seconds: number) {\n const dt = new Date(fullDate)\n const y = dt.getFullYear()\n const d = ('0' + dt.getDate().toString()).slice(-2)\n const m = ('0' + (dt.getMonth() + 1).toString()).slice(-2)\n return `${y}-${m}-${d}T${hours}:${minutes}:${seconds}`\n}\n","import { Contact } from '@/GeneratedTypes/Partner/Contact'\nimport { PhoneTypeEnum } from '@/lib/support/models/IndividualPhone/data'\n\nexport function getEmptyContact(): Contact {\n return {\n alternatePhoneNumber: '',\n alternatePhoneTypeID: null,\n emailAddress: '',\n emailValid: 'true',\n emailValidReason: '',\n firstName: '',\n isFullTime: false,\n lastName: '',\n primaryPhoneNumber: '',\n primaryPhoneTypeID: PhoneTypeEnum.WORK,\n secondaryPhoneNumber: '',\n secondaryPhoneTypeID: null,\n typePartnerRoleID: '',\n typePreferredContactMethodID: '',\n typePreferredDayOfWeekID: 'Monday',\n typePreferredTimeOfDayID: '',\n yearsExperience: 0,\n }\n}\n","import { LoginException } from '@/lib/common/exceptions/login/LoginException'\n\nexport class UserNotFoundException extends LoginException {\n name = 'User Not Found'\n}\n","import restService, { RestServiceResult } from '@/services/restService'\nimport { AuthToken } from '@/models/Authorization/AuthToken'\nimport { Credentials } from '@/models/Authorization/Credentials'\nimport { RequiredString } from '@/models/RequiredString'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { PasswordExpiredException } from '@/lib/common/exceptions/login/PasswordExpiredException'\nimport { LoginException } from '@/lib/common/exceptions/login/LoginException'\nimport { LockedAccountException } from '@/lib/common/exceptions/login//LockedAccountException'\nimport { UserNotFoundException } from '@/lib/common/exceptions/login/UserNotFoundException'\nimport { AxiosRequestConfig } from 'axios'\nimport { ProfilePayload } from '@/models/Authorization/ProfilePayload'\n\nconst baseUrl = 'authorization'\nconst appId = 'Streamline'\n\nclass AuthClientException extends GeneralError {\n name = 'Auth API Exception'\n}\n\nexport interface ImpersonationPayload {\n userName?: string\n accountNumber: string\n}\n\nconst login = async (username: string, password: string, accountNumber = '') => {\n const credentials = {\n username,\n password,\n appID: appId,\n accountNumber: accountNumber,\n newPassword: null,\n } as Credentials\n\n try {\n const t = await restService.post(`${baseUrl}/login/`, credentials)\n if (t.status == 200) {\n return t.data as AuthToken\n }\n } catch (e) {\n const t = e as RestServiceResult\n\n if (t.status === 401 && t.errorObject?.message == 'nomatch') {\n throw new UserNotFoundException('Login not found')\n }\n if (t.status === 403) {\n throw new PasswordExpiredException('Password has expired.')\n }\n if (t.status === 401 && t.errorObject?.message == 'locked') {\n throw new LockedAccountException('This account is locked. Please reset your password')\n }\n }\n throw new LoginException('logging in with authorization token')\n}\n\nconst validateTOTP = async (totpCode: string) => {\n try {\n const t = await restService.post(`${baseUrl}/validateTOTP/`, { value: totpCode })\n if (t.status == 200) {\n return t.data as AuthToken\n }\n } catch (e) {\n const t = e as RestServiceResult\n\n if (t.status === 401 && t.errorObject?.message == 'locked') {\n throw new LockedAccountException('This account is locked. Please reset your password')\n }\n }\n\n throw new AuthClientException('validating totp')\n}\n\nconst refreshToken = async () => {\n const t = await restService.post(`${baseUrl}/tokenrefresh/`, null)\n if (t.isSuccess) {\n return t.data\n }\n throw new AuthClientException('refreshing auth token')\n}\n\nconst passwordChange = async (username: string, password: string, newPassword: string) => {\n const credentials = {\n username,\n password,\n appID: appId,\n accountNumber: '',\n newPassword,\n } as Credentials\n\n return await restService.post(`${baseUrl}/passwordchange/`, credentials)\n}\n\nconst getSystemToken = async () => {\n return await restService.get(`${baseUrl}/systemtoken/`)\n}\n\nconst getPasswordResetLink = async (username: string) => {\n const data = {\n value: username,\n } as RequiredString\n\n const systemToken = await getSystemToken()\n return await restService.post(`${baseUrl}/passwordreset`, data, {\n headers: {\n Authorization: `Bearer ${systemToken.data!.upwardJWToken}`,\n },\n } as AxiosRequestConfig)\n}\n\nconst adminResetPassword = async (userID: string, password: string) => {\n const i = await restService.post(`${baseUrl}/passwordreset/admin/${userID}`, { value: password })\n if (i.isSuccess) {\n return i.data\n }\n throw new AuthClientException('resetting password failed')\n}\n\nconst adminResetPasswordEmail = async (email: string) => {\n const i = await restService.post(`${baseUrl}/passwordreset/`, { value: email })\n if (i.isSuccess) {\n return i.data\n }\n throw new AuthClientException('resetting password failed')\n}\n\nconst adminResetPasswordSMS = async (userID: string, phone_number: string) => {\n const i = await restService.post(`${baseUrl}/passwordreset/sms/${userID}`, { value: phone_number })\n if (i.isSuccess) {\n return i.data\n }\n throw new AuthClientException('resetting phone number failed')\n}\n\nconst resetPassword = async (code: string, newPassword: string) => {\n const data = {\n value: newPassword,\n } as RequiredString\n\n const systemToken = await getSystemToken()\n return await restService.post(`${baseUrl}/passwordreset/${code}`, data, {\n headers: {\n Authorization: `Bearer ${systemToken.data!.upwardJWToken}`,\n },\n } as AxiosRequestConfig)\n}\n\nconst acceptInvitation = async (code: string, newPassword: string) => {\n const data = {\n value: newPassword,\n } as RequiredString\n\n const systemToken = await getSystemToken()\n return await restService.post(`invitations/${code}/accept`, data, {\n headers: {\n Authorization: `Bearer ${systemToken.data!.upwardJWToken}`,\n },\n } as AxiosRequestConfig)\n}\n\n/***\n * Token might come on the URL and this will turn it into a login credential.\n * @param token\n * @return AuthToken\n */\nconst tokenLogin = async (token: string) => {\n const payload = {\n userToken: token,\n }\n\n try {\n const t = await restService.post(`${baseUrl}/loginbytoken`, payload)\n if (t.isSuccess) {\n return t.data\n }\n } catch (e) {\n const t = e as RestServiceResult\n\n if (t.status === 401 && t.errorObject?.message == 'nomatch') {\n throw new UserNotFoundException('Login not found')\n }\n if (t.status === 403) {\n throw new PasswordExpiredException('Password has expired.')\n }\n if (t.status === 401 && t.errorObject?.message == 'locked') {\n throw new LockedAccountException('This account is locked. Please reset your password')\n }\n }\n throw new LoginException('User or password combination not found.')\n}\n\n/***\n * Returns an auth token for impersonation.\n * @param userName - optional, use it to impersonate a user\n * @param accountNumber - account to impersonate\n * @return token\n */\nconst impersonate = async ({ userName, accountNumber }: ImpersonationPayload) => {\n if (!userName && !accountNumber) {\n throw new AuthClientException('When impersonating an account or username must be present.')\n }\n\n const payload = {\n username: userName ? userName : 'default',\n password: 'default',\n appID: 'default',\n accountNumber: accountNumber,\n }\n\n const r = await restService.post(`${baseUrl}/impersonate`, payload)\n if (r.isSuccess) {\n return r.data\n }\n\n throw new AuthClientException('Invalid impersonation attempt', r.errorObject)\n}\n\nconst updateProfile = async (p: ProfilePayload) => {\n const data: ProfilePayload = {\n username: p.hasOwnProperty('username') ? p.username : '',\n appID: appId,\n }\n\n if (p.hasOwnProperty('newUsername') && p.newUsername) {\n data['newUsername'] = p.newUsername\n data['usernameChangeCode'] =\n p.hasOwnProperty('usernameChangeCode') && p.usernameChangeCode ? p.usernameChangeCode : ''\n }\n\n if ((p.hasOwnProperty('newFullName'), p.newFullName)) {\n data['newFullName'] = p.newFullName\n }\n\n return await restService.post('authorization/updateprofile', data)\n}\n\nexport default {\n login,\n impersonate,\n refreshToken,\n passwordChange,\n getPasswordResetLink,\n resetPassword,\n acceptInvitation,\n updateProfile,\n tokenLogin,\n adminResetPassword,\n adminResetPasswordEmail,\n adminResetPasswordSMS,\n validateTOTP,\n}\n","import restService from '@/services/restService'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueInfoCondensed } from '@/models/Program/LeagueInfoCondensed'\nimport { RegistrationCountRequest } from '@/models/Program/RegistrationCountRequest'\nimport { RegistrationCapacityByGradeGenderInfo } from '@/GeneratedTypes/ListInfo/RegistrationCapacityByGradeGenderInfo'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { ImportProductMappingInfo } from '@/GeneratedTypes/ListInfo/ImportProductMappingInfo'\nimport { RegistrationCapacityCount } from '@/models/Program/RegistrationCapacityCount'\n\nclass ProgramClientException extends GeneralError {\n name = 'Program Client API Error'\n}\n\nconst baseUrl = 'programs/'\n\nconst retrieveImportProductMapping = async (upwId: string) => {\n const results = await restService.get(`${baseUrl}${upwId}/importProductMapping`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.retrieveImportProductMapping')\n }\n}\n\nconst retrieveAll = async (includeHistorical = false) => {\n return await restService.get(`${baseUrl}condensed`, { includeHistorical })\n}\n\nconst retrieve = async (leagueID: string) => {\n const results = await restService.get(`${baseUrl}${leagueID}`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.retrieve')\n }\n}\n\nconst getCurrentCapacities = async (leagueID: string, programTypeID: string) => {\n const results = await restService.get(\n `${baseUrl}${leagueID}/currentCapacity/${programTypeID}`\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.retrieve')\n }\n}\n\nconst getRegistrationCount = async (leagueID: string, request: RegistrationCountRequest) => {\n const results = await restService.post(\n `${baseUrl}${leagueID}/registrationCount`,\n request\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.retrieve')\n }\n}\n\nconst overrideDraftByProgram = async (leagueID: string, typeProgramID: string, overrideDraft: boolean) => {\n const results = await restService.put(\n `${baseUrl}${leagueID}/overridedraft/${typeProgramID}/${overrideDraft}`,\n {}\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.overrideDraftByProgram')\n }\n}\n\nconst overrideDraft = async (leagueID: string, overrideDraft: boolean) => {\n const results = await restService.put(`${baseUrl}${leagueID}/overridedraft/${overrideDraft}`, {})\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.overrideDraft')\n }\n}\n\nconst setPrivacy = async (leagueID: string, isPrivate: boolean) => {\n const results = await restService.put(\n `${baseUrl}${leagueID}/programPrivacy/?isPrivate=${isPrivate}`,\n {}\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.retrieve')\n }\n}\n\nconst setCancelled = async (leagueID: string, reason: string) => {\n const results = await restService.post(`${baseUrl}${leagueID}/bailProgram`, { reason })\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.retrieve')\n }\n}\nconst removeCheer = async (leagueID: string) => {\n const results = await restService.delete(`${baseUrl}${leagueID}/removecheerleading`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.retrieve')\n }\n}\n\nconst deleteLeague = async (leagueID: string, reason: string) => {\n const results = await restService.delete(`${baseUrl}${leagueID}/removeprogram`, new Object(reason))\n if (results.isSuccess) {\n return results.data\n } else {\n throw new ProgramClientException('Error in programsClient.retrieve')\n }\n}\n\nexport default {\n retrieveAll,\n retrieve,\n deleteLeague,\n removeCheer,\n setCancelled,\n setPrivacy,\n getCurrentCapacities,\n getRegistrationCount,\n retrieveImportProductMapping,\n overrideDraft,\n overrideDraftByProgram,\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DivisionSelect.vue?vue&type=style&index=0&id=1bb7f798&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Registration.vue?vue&type=style&index=0&id=3ddca34c&lang=scss&scoped=true&\"","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardColorTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardColorTypeID'\nimport { defineActions } from 'direct-vuex'\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveColorTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nexport const namespace = 'colorTypes'\n\nexport const colorTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('section-header',{staticClass:\"bg-white mt-4\",attrs:{\"title\":_vm.sectionName}}),_c('div',{staticClass:\"px-4 mb-5\"},[_c('simple-grid',{attrs:{\"grid-data\":_vm.orderList,\"columns\":_vm.columns,\"table-striped\":true}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport SectionHeader from '@/components/SectionHeader.vue'\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn } from '@/models/Grid/GridColumn'\nimport { filterNA, getFilteredProductList, OrderProduct } from '@/models/Order/OrderProduct.ts'\nimport { getEmptyOrderProductList } from '@/lib/support/models/GeneratedTypes/xOrders/xOrderProduct.ts'\nimport currency from '@/filters/currency'\nimport { computed, defineComponent, PropType } from '@vue/composition-api'\nimport { ProductSelectorLogic } from '@/views/Programs/Orders/compositions/useProductSelector'\ninterface OrderList {\n productLabel: string\n cost: string\n orderQuantity: number\n size: string\n}\nexport default defineComponent({\n components: {\n SectionHeader,\n SimpleGrid,\n },\n props: {\n orderProductList: {\n type: Array as PropType,\n default: getEmptyOrderProductList,\n required: false,\n },\n sectionName: { type: String, required: true },\n selectorMethod: {\n type: Function as PropType,\n required: true,\n },\n },\n setup(props) {\n const columns = computed(() => {\n if (orderList.value.some((x) => filterNA(x.size))) {\n return [\n { field: 'productLabel', headerText: 'Item Name', width: 300 } as GridColumn,\n { field: 'type', headerText: 'Type' } as GridColumn,\n { field: 'size', headerText: 'Size' } as GridColumn,\n { field: 'cost', headerText: 'Cost' } as GridColumn,\n { field: 'orderQuantity', headerText: 'Quantity' } as GridColumn,\n ] as GridColumn[]\n } else {\n return [\n { field: 'productLabel', headerText: 'Item Name', width: 300 } as GridColumn,\n { field: 'type', headerText: 'Type' } as GridColumn,\n { field: 'cost', headerText: 'Cost' } as GridColumn,\n { field: 'orderQuantity', headerText: 'Quantity' } as GridColumn,\n ] as GridColumn[]\n }\n })\n const ps = props.selectorMethod()\n const orderList = computed(() => {\n if (props.orderProductList && props.orderProductList.length) {\n return getFilteredProductList(props.orderProductList, ps.isSelected).map((product) => ({\n productLabel: product.cmsProductName ?? 'n/a',\n type: product.productColorSize.colorDescription ?? '',\n size: product.productColorSize.sizeDescription ?? '',\n cost: getCost(\n product.productColorSize.orderQuantity - product.productColorSize.orderFreeQuantity > 0\n ? product.productColorSize.costOffset + product.cost\n : 0\n ),\n orderQuantity: product.productColorSize.orderQuantity,\n previouslyOrdered: product.productColorSize.previouslyOrdered,\n })) as OrderList[]\n }\n return [] as OrderList[]\n })\n\n function getCost(cost: number) {\n return currency(cost)\n }\n\n return { getCost, orderList, columns }\n },\n})\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!./OrderListSection.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!./OrderListSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderListSection.vue?vue&type=template&id=48abdcc7&scoped=true&\"\nimport script from \"./OrderListSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderListSection.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderListSection.vue?vue&type=style&index=0&id=48abdcc7&lang=scss&scoped=true&\"\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 \"48abdcc7\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SquadsAutomaticScheduling.vue?vue&type=style&index=0&lang=scss&\"","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!./PreviewButton.vue?vue&type=style&index=0&id=50eb0423&scoped=true&lang=css&\"","import dayjs from 'dayjs'\n\nexport interface PromoCardMedia {\n marketingID: number\n accountNumber: string | null\n upwardleagueID: string | null\n name: string | null\n qrCodeURL: string | null\n content: string | null\n pageWidth: number\n pageHeight: number\n publicUrl: string | null\n status: string | null\n shellUrl: string\n productUniqueID: string\n defaultRegistrationURL: string | null\n}\n\n/**\n * A version of the same with the front of the card calculated or\n * filled in by a TBD method.\n */\nexport type DisplayablePromoCardMedia = PromoCardMedia\n\nexport function getEmptyPromoCardMedia(): PromoCardMedia {\n return {\n marketingID: 0,\n accountNumber: '0',\n qrCodeURL: null,\n content: '',\n name: 'New Promo Card ' + dayjs().format('M/D/YY h:mm a'),\n pageHeight: 0,\n pageWidth: 0,\n publicUrl: '',\n status: '',\n upwardleagueID: '',\n shellUrl: '',\n productUniqueID: '',\n defaultRegistrationURL: null,\n }\n}\n\nexport function getEmptyDisplayablePromoCardMedia(): DisplayablePromoCardMedia {\n return {\n ...getEmptyPromoCardMedia(),\n }\n}\n","import restService from '@/services/restService'\nimport { RestServiceResult } from '@/services/restService'\nimport { League } from '@/GeneratedTypes/League'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport { ParticipantOrderProductInfo } from '@/GeneratedTypes/ListInfo/ParticipantOrderProductInfo'\nimport { LeagueProgramAugusta } from '@/models/League/LeagueProgramAugusta'\nimport { CarPoolLinkLabelOverrideInfo } from '@/GeneratedTypes/ListInfo/CarPoolLinkLabelOverrideInfo'\nimport { LeagueTypes } from '@/lib/common/LeagueTypes'\n\ntype AwardProductOptionInfo = Record\n\nconst baseLeagueUrl = 'Leagues/'\nconst baseSelectUrl = 'Selects/'\n\nfunction getUrl(league: League) {\n return league.typeLeagueID === LeagueTypes.UPWARDSELECT ? baseSelectUrl : baseLeagueUrl\n}\n\nclass LeagueClientException extends Error {}\n\nconst create = async (league: League) => {\n return await restService.post(`${getUrl(league)}`, league)\n}\n\nconst update = async (id: string, league: League) => {\n return await restService.put(`${getUrl(league)}${id}`, league)\n}\n\nconst retrieve = async (id: string) => {\n const c = await restService.get(`${baseLeagueUrl}${id}`) //API will figure out which type to return (League vs Select)\n if (c.isSuccess) {\n return c.data\n }\n throw new LeagueClientException('retrieve failed on id = ' + id)\n}\n\nconst noProdCatalogRule =\n 'rule://upward.business.setdefaultproductgroup-upward.business.league-/BaseFirstPracticeDate'\n\nconst validateNew = async (league: League, ruleSet = '') => {\n try {\n return await restService.post(`${getUrl(league)}validate`, league, {\n params: {\n ruleSet,\n },\n })\n } catch (err: any) {\n if (err.data && err.data.brokenRules) {\n const e = err.data as UpwardVerificationDetails\n const i = e.brokenRules.findIndex((r) => r.messageID == noProdCatalogRule)\n if (i > -1) {\n e.brokenRules[i].message =\n 'The dates you selected are too far in the future to create a league at this time.'\n }\n }\n throw err\n }\n}\n\nconst validateExisting = async (id: string, league: League) => {\n try {\n return await restService.post(`${getUrl(league)}${id}/validate`, league)\n } catch (e: any) {\n throw e\n }\n}\n\nconst newTemplate = async (upwardLeagueTypeID: string) => {\n return await restService.get(\n `${\n upwardLeagueTypeID === LeagueTypes.UPWARDSELECT ? baseSelectUrl : baseLeagueUrl\n }new/${upwardLeagueTypeID}`\n )\n}\n\nconst retrieveWinnerKitProductList = async (programTypeID: string, productGroupID: string) => {\n return await restService.get(\n `${baseLeagueUrl}winnerKitProducts/${programTypeID}/${productGroupID}`\n )\n}\n\nconst retrieveAwardProductOptions = async (programTypeID: string, productGroupID: string) => {\n return getRestResult(\n await restService.get(\n `${baseLeagueUrl}awardProductOptions/${programTypeID}/${productGroupID}`\n ),\n 'leagueClient.retrieveAwardProductOptions'\n )\n}\n\nfunction getRestResult(result: RestServiceResult, methodName: string): T {\n if (result.isSuccess) {\n return result.data as T\n } else {\n throw new Error(`Error in ${methodName}`)\n }\n}\n\nconst retrieveLeagueProgramAugusta = async (id: string, progID: string) => {\n const c = await restService.get(\n `${baseLeagueUrl}leagueProgramAugusta/${id}/${progID}`\n )\n if (c.isSuccess) {\n return c.data\n }\n throw new LeagueClientException('retrieve failed on id/prog = ' + id + '/' + progID)\n}\n\nconst createLeagueProgramAugusta = async (lpa: LeagueProgramAugusta) => {\n try {\n return await restService.post(`${baseLeagueUrl}leagueProgramAugusta`, lpa)\n } catch (e) {\n throw e\n }\n}\n\nconst updateLeagueProgramAugusta = async (id: string, lpa: LeagueProgramAugusta) => {\n try {\n return await restService.put(\n `${baseLeagueUrl}leagueProgramAugusta/${id}/${lpa.typeProgramID}`,\n lpa\n )\n } catch (e) {\n throw e\n }\n}\n\nconst retrieveCarPoolLinkLabelOverride = async () => {\n const c = await restService.get(`${baseLeagueUrl}carpoollinklabeloverride/`)\n if (c.isSuccess) {\n return c.data\n }\n throw new LeagueClientException('car pool link retrieve failed. ')\n}\n\nexport default {\n create,\n retrieve,\n update,\n validateNew,\n validateExisting,\n newTemplate,\n retrieveWinnerKitProductList,\n retrieveAwardProductOptions,\n retrieveLeagueProgramAugusta,\n createLeagueProgramAugusta,\n updateLeagueProgramAugusta,\n retrieveCarPoolLinkLabelOverride,\n}\n","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!./DataTable.vue?vue&type=style&index=0&lang=css&\"","export enum ProdConfigTypes {\n LEAGUE = 'LEAGUE',\n ESTIMATE = 'ESTIMATE',\n}\n","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!./MinistryImpactReport.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"order-summary sticky-below-app-bar m-auto\"},[_c('div',[_c('div',{staticClass:\"text-center mb-5\"},[_c('h6',{staticClass:\"px-4 py-1\"},[_vm._v(_vm._s(_vm.summaryThing)+\" Summary\")])]),_c('div',{staticClass:\"grid-container\"},[_c('section-header',{staticClass:\"grid-span-row p-1 bg-transparent\",attrs:{\"title\":_vm.title}}),_c('div',{staticClass:\"grid-span-row\"},[_vm._t(\"default\")],2),(!_vm.totalOnly)?[_c('div',{staticClass:\"grid-col-2 small subtotal align-self-center\"},[_vm._v(\"Subtotal\")]),_c('div',{staticClass:\"justify-self-end align-self-center\"},[_vm._v(_vm._s(_vm.currency(_vm.subTotal)))]),(_vm.discount)?_c('div',{staticClass:\"grid-col-2 small subtotal align-self-center\"},[_vm._v(\"Discount\")]):_vm._e(),(_vm.discount)?_c('div',{staticClass:\"justify-self-end align-self-center\"},[_vm._v(\"-\"+_vm._s(_vm.currency(_vm.discount)))]):_vm._e(),_c('div',{staticClass:\"grid-col-2 small align-self-center\"},[_vm._v(\" Shipping \"),(_vm.showBasedOn)?_c('div',{staticClass:\"ship-warning small font-italic\"},[_vm._v(\" Based on shipping method selected \")]):_vm._e()]),_c('div',{staticClass:\"justify-self-end align-self-center\"},[_vm._v(\" \"+_vm._s((\"\" + (_vm.isSalesTaxCalculatedYet ? _vm.currency(_vm.shippingCost) : '-')))+\" \")]),_c('div',{staticClass:\"grid-col-2 small align-self-center\"},[_vm._v(\"Sales Tax\")]),_c('div',{staticClass:\"justify-self-end align-self-center\"},[_vm._v(\" \"+_vm._s((\"\" + (_vm.isSalesTaxCalculatedYet ? _vm.currency(_vm.salestax) : '-')))+\" \")])]:_vm._e(),_c('div',{staticClass:\"total-row grid-span-row bg-primary grid-container-inner text-white\"},[_c('h6',{staticClass:\"grid-col-2 align-self-center m-0\"},[_vm._v(_vm._s(_vm.summaryThing)+\" Total\")]),_c('div',{staticClass:\"grid-right-half justify-self-end align-self-center\"},[_vm._v(\" \"+_vm._s(_vm.currency(_vm.total - _vm.discount))+\" \")])])],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\nimport { Component, Vue, Prop } from 'vue-property-decorator'\n\nimport SectionHeader from '@/components/SectionHeader.vue'\nimport { getFilteredProductList } from '@/models/Order/OrderProduct.ts'\n\nimport { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\nimport {\n getEmptyXStartupOrderExt,\n getSalesTaxNotCalculatedYet,\n} from '@/lib/support/models/GeneratedTypes/xOrders/xStartupOrderExt'\nimport { xShipMethodBase } from '@/GeneratedTypes/xOrder/xShipMethodBase'\nimport { OrderProductSelection } from '@/store/orders'\nimport currency from '@/filters/currency'\n\nimport { ProductSelectorLogic } from '@/views/Programs/Orders/compositions/useProductSelector'\n\n@Component({\n components: {\n SectionHeader,\n },\n methods: { currency },\n})\nexport default class OrderSummary extends Vue {\n @Prop({ type: Object, default: getEmptyXStartupOrderExt, required: false })\n private readonly XStartupOrderExt!: xStartupOrderExt\n\n @Prop({ type: Boolean, default: false, required: false })\n readOnly!: boolean\n\n @Prop({ type: String, default: '', required: false })\n private readonly title!: string\n\n //*** description of the thing we are totaling (e.g. add-on items, or order).\n @Prop({ type: String, default: 'Order', required: false })\n private readonly summaryThing!: string\n\n //*** only show total.\n @Prop({ type: Boolean, default: false, required: false })\n private readonly totalOnly!: boolean\n\n @Prop({ type: Array, default: () => [], required: true })\n productsSelected!: OrderProductSelection[]\n\n @Prop({ type: Function, required: true })\n selectorMethod!: ProductSelectorLogic\n\n private get subTotal() {\n if (!this.XStartupOrderExt || !this.XStartupOrderExt.products) {\n return 0\n }\n return getFilteredProductList(this.XStartupOrderExt.products, this.selectorMethod().isSelected)\n .map(\n (x) =>\n (x.cost + x.productColorSize.costOffset) *\n (x.productColorSize.orderQuantity - x.productColorSize.orderFreeQuantity)\n )\n .reduce((pv, v) => pv + v, 0)\n }\n\n get isSalesTaxCalculatedYet() {\n return !getSalesTaxNotCalculatedYet(this.XStartupOrderExt)\n }\n\n /**\n * returns a numeric sales tax\n */\n get salestax() {\n if (!this.isSalesTaxCalculatedYet) {\n return 0\n } else {\n return this.XStartupOrderExt.salesTax\n }\n }\n /**\n * returns a numeric sales tax\n */\n get discount() {\n if (this.XStartupOrderExt?.longevityDiscountAmount) {\n return this.XStartupOrderExt?.longevityDiscountAmount\n }\n return 0\n }\n private get shippingCost() {\n //if sales tax has not been calculated then shipping is not ready to show.\n if (!this.isSalesTaxCalculatedYet) {\n return 0\n }\n\n if (\n !this.XStartupOrderExt ||\n !this.XStartupOrderExt.shippingInfo ||\n !this.XStartupOrderExt.shippingInfo.shipMethods\n )\n return 0\n\n const selMethod = this.XStartupOrderExt.shippingInfo?.shipMethods.find((method: xShipMethodBase) => {\n return method.selected\n })\n\n return selMethod?.cost || 0\n }\n\n private get showBasedOn() {\n return (\n ((this.XStartupOrderExt.shippingInfo && this.XStartupOrderExt.shippingInfo.shipMethods?.length) ?? 0) >\n 1\n )\n }\n\n /**\n * Returns a numeric total\n * @private\n */\n private get total() {\n if (!this.isSalesTaxCalculatedYet) return this.subTotal\n else {\n return this.subTotal + this.shippingCost + this.XStartupOrderExt.salesTax\n }\n }\n}\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=5e336769&scoped=true&\"\nimport script from \"./OrderSummary.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderSummary.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderSummary.vue?vue&type=style&index=0&id=5e336769&lang=scss&scoped=true&\"\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 \"5e336769\",\n null\n \n)\n\nexport default component.exports","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!./ManageBypassLinks.vue?vue&type=style&index=0&lang=css&\"","import restService from '@/services/restService'\n\nconst baseUrl = 'sessionobjects/'\n\nconst createOrUpdate = async (key: string, model: object) => {\n return await restService.post(`${baseUrl}${key}/10080`, model)\n}\n\nconst retrieve = async (key: string) => {\n return await restService.get(`${baseUrl}${key}`)\n}\n\nconst deleteMethod = async (key: string) => {\n return await restService.delete(`${baseUrl}${key}`)\n}\n\nconst retrieveData = async (key: string) => {\n const r = await restService.get(`${baseUrl}${key}`)\n return r && r.data ? r.data : null\n}\n\nexport default {\n createOrUpdate,\n retrieve,\n delete: deleteMethod,\n retrieveData,\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.displayComponent,{tag:\"component\"})}\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:\"min-h-100 d-flex flex-column main-component bg-primary\"},[(_vm.isAuthenticated && !_vm.codeReloadRequired && _vm.showReport)?[_c('router-view')]:(!_vm.isAuthenticated && !_vm.codeReloadRequired)?[_c('the-auth-wall')]:(!_vm.codeReloadRequired)?void 0:_vm._e(),(_vm.isAuthenticated && !_vm.showReport)?_c('div',{staticClass:\"alert alert-danger\",attrs:{\"role\":\"alert\"}},[_vm._v(\" You do not have access to this report. \")]):_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('div',{staticClass:\"authwall-background\"},[_c('alert',{model:{value:(_vm.alertIsVisible),callback:function ($$v) {_vm.alertIsVisible=$$v},expression:\"alertIsVisible\"}},[_c('p',{staticClass:\"font-weight-bold m-0\"},[_vm._v(\"Login failed...\"+_vm._s(_vm.errorMessage)+\" please try again.\")])]),_c('div',{staticClass:\"authwall-container container-fluid\"},[_vm._m(0),(!(_vm.show2FAPrompt || _vm.show2FAQRCode))?_c('div',[(_vm.hasMultipleAccounts)?_c('div',{staticClass:\"row\"},[_c('partner-list',{staticClass:\"col\",attrs:{\"partners\":_vm.partners},on:{\"selected\":_vm.loginWithPartner}})],1):_vm._e(),(!_vm.hasMultipleAccounts)?[(!_vm.hasMultipleAccounts)?_c('form',{staticClass:\"row bg-white py-5 px-sm-5\",on:{\"submit\":function($event){$event.preventDefault();return _vm.login(null, null)}}},[_c('p',{staticClass:\"col-12 p-0 text-dark text-center\"},[_vm._v(\"MyUpward\")]),_c('text-input',{staticClass:\"col-12\",attrs:{\"placeholder\":\"Email\",\"append-icon\":\"user\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),_c('password-input',{staticClass:\"col-12\",attrs:{\"placeholder\":\"Password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_c('div',{staticClass:\"col-12\"},[(_vm.isVerified)?[_c('button',{staticClass:\"col-12 btn btn-primary\",attrs:{\"type\":\"submit\",\"disabled\":_vm.isLoading},on:{\"click\":function($event){return _vm.login(null, null)}}},[(_vm.isLoading)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_vm._v(\"Log In\")]],2)]:[(_vm.sitekey)?_c('vue-recaptcha',{attrs:{\"loadRecaptchaScript\":\"\",\"sitekey\":_vm.sitekey},on:{\"verify\":_vm.verify}},[_c('button',{staticClass:\"col-12 btn btn-primary\",attrs:{\"type\":\"submit\",\"disabled\":_vm.isLoading},on:{\"click\":function($event){return _vm.login(null, null)}}},[(_vm.isLoading)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_vm._v(\"Log In\")]],2)]):_vm._e()]],2)],1):_vm._e(),_c('div',{staticClass:\"row bg-white p-3\"},[_c('div',{staticClass:\"col-6\"},[_c('div',{staticClass:\"form-check\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.doRememberEmail),expression:\"doRememberEmail\"}],staticClass:\"form-check-input\",attrs:{\"id\":\"doremember\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.doRememberEmail)?_vm._i(_vm.doRememberEmail,null)>-1:(_vm.doRememberEmail)},on:{\"change\":function($event){var $$a=_vm.doRememberEmail,$$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.doRememberEmail=$$a.concat([$$v]))}else{$$i>-1&&(_vm.doRememberEmail=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.doRememberEmail=$$c}}}}),_c('label',{staticClass:\"form-check-label text-dark\",attrs:{\"for\":\"doremember\"}},[_vm._v(\"Remember My Email\")])])]),_c('div',{staticClass:\"col-6 text-right\"},[_c('router-link',{staticClass:\"text-dark\",attrs:{\"to\":\"/forgot-password\"}},[_vm._v(\"Forgot Your Password?\")])],1)])]:_vm._e()],2):_vm._e(),(_vm.show2FAPrompt)?[(_vm.show2FAPrompt)?_c('form',{staticClass:\"row bg-white py-5 px-sm-5\",on:{\"submit\":function($event){$event.preventDefault();return _vm.validateTOTP()}}},[_c('p',{staticClass:\"col-12 p-0 text-dark text-center\"},[_vm._v(\" Enter the Verification Code from your Authenticator App \")]),_c('text-input',{ref:\"verificationCodeReturning\",staticClass:\"col-12\",attrs:{\"placeholder\":\"Verification Code\",\"setFocus\":_vm.focusVerificationCodeReturning},model:{value:(_vm.totpCode),callback:function ($$v) {_vm.totpCode=$$v},expression:\"totpCode\"}}),_c('button',{staticClass:\"col-12 btn btn-primary\",attrs:{\"type\":\"submit\",\"disabled\":_vm.isLoading},on:{\"click\":function($event){return _vm.validateTOTP()}}},[(_vm.isLoading)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_vm._v(\"Verify\")]],2)],1):_vm._e()]:_vm._e(),(_vm.show2FAQRCode)?[(_vm.show2FAQRCode)?_c('form',{staticClass:\"row bg-white py-4 px-sm-4\",on:{\"submit\":function($event){$event.preventDefault();return _vm.validateTOTP()}}},[_c('p',{staticClass:\"col-12 p-0 text-dark text-center\"},[(_vm.showAuthKey)?_c('span',[_vm._v(\"Enter the key below manually in your Authentication App of choice and enter the Verification Code to get started.\"),_c('br'),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){{\n _vm.showAuthKey = false\n }}}},[_vm._v(\"Click here\")]),_vm._v(\" to see the QR Code again.\")]):_c('span',[_vm._v(\"Scan this QR Code in your Authentication App of choice and enter the Verification Code to get started. If you are having trouble getting the QR Code to work then \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){{\n _vm.showAuthKey = true\n }}}},[_vm._v(\"click here\")]),_vm._v(\" to get the key to enter manually.\")])]),(_vm.showAuthKey)?_c('div',{staticClass:\"col-12 p-6 m-0 justify-center align-center\"},[_c('b',{staticClass:\"text-break\"},[_vm._v(_vm._s(_vm.totpInfo))])]):_c('div',{staticClass:\"col-12 p-0 m-0 justify-center align-center\"},[_c('v-img',{staticClass:\"qrcode mx-auto\",attrs:{\"src\":_vm.qrCodeImage}})],1),_c('text-input',{ref:\"verificationCodeInitial\",staticClass:\"col-12\",attrs:{\"placeholder\":\"Verification Code\",\"setFocus\":_vm.focusVerificationCodeInitial},model:{value:(_vm.totpCode),callback:function ($$v) {_vm.totpCode=$$v},expression:\"totpCode\"}}),_c('button',{staticClass:\"col-12 btn btn-primary\",attrs:{\"type\":\"submit\",\"disabled\":_vm.isLoading},on:{\"click\":function($event){return _vm.validateTOTP()}}},[(_vm.isLoading)?_c('loading',{attrs:{\"is-small\":\"\"}}):[_vm._v(\"Verify\")]],2)],1):_vm._e()]:_vm._e(),_c('div',{staticClass:\"row text-white pt-2\"},[_vm._m(1),_c('div',{staticClass:\"col-6 text-right\"},[_vm._v(\"©\"+_vm._s(_vm.currentYear)+\" Upward Unlimited™\")])])],2)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row bg-dark\"},[_c('div',{staticClass:\"col-12 text-center py-4\"},[_c('img',{attrs:{\"src\":\"/img/logo-big.png\"}})])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-6\"},[_c('a',{staticClass:\"show-link\",attrs:{\"href\":\"https://www.upward.org/contact-us/\"}},[_vm._v(\"Contact Us\")]),_c('span',{staticClass:\"px-2\"},[_vm._v(\"|\")]),_c('a',{staticClass:\"show-link\",attrs:{\"href\":\"https://www.upward.org/terms-of-use/\"}},[_vm._v(\"Terms of Use\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"p-3 bg-white\"},[_c('h5',[_vm._v(\"Partner Selection\")]),_c('p',[_vm._v(\"Please choose which partner you would like to view\")]),_vm._l((_vm.partners),function(p,i){return _c('div',{key:p.accountID + i,staticClass:\"p-3 mb-3 clickable text-primary border\",on:{\"click\":function($event){return _vm.selectPartner(p)}}},[_c('h5',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(p.name))]),_c('div',{staticClass:\"small\"},[_vm._v(_vm._s(p.address1_Line1))]),_c('div',{staticClass:\"small\"},[_vm._v(_vm._s(p.address1_Line2))]),_c('div',{staticClass:\"small\"},[_vm._v(_vm._s(p.address1_City)+\", \"+_vm._s(p.address1_StateOrProvince))])])})],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\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport { AccountInfo } from '@/GeneratedTypes/ListInfo/AccountInfo'\n\nexport default defineComponent({\n name: 'PartnerList',\n props: {\n partners: { type: Array as PropType, required: true },\n },\n setup(props, ctx) {\n function selectPartner(partner: AccountInfo) {\n ctx.emit('selected', partner)\n }\n\n return { selectPartner }\n },\n})\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!./PartnerList.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!./PartnerList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PartnerList.vue?vue&type=template&id=469db628&scoped=true&\"\nimport script from \"./PartnerList.vue?vue&type=script&lang=ts&\"\nexport * from \"./PartnerList.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PartnerList.vue?vue&type=style&index=0&id=469db628&lang=scss&scoped=true&\"\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 \"469db628\",\n null\n \n)\n\nexport default component.exports","import Bowser from 'bowser'\n\nexport class browserService {\n static isDesktopBrowser() {\n return Bowser.getParser(window.navigator.userAgent).getPlatformType(true) === 'desktop'\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onMounted, nextTick } from '@vue/composition-api'\nimport Alert from '@/components/Alert.vue'\nimport Loading from '@/elements/Loading.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport PasswordInput from '@/elements/PasswordInput.vue'\nimport PartnerList from '@/components/PartnerList.vue'\nimport localStorageService from '@/services/localStorageService'\nimport VueRecaptcha from 'vue-recaptcha'\nimport store from '@/store'\nimport { PasswordExpiredException } from '@/lib/common/exceptions/login/PasswordExpiredException'\nimport { LockedAccountException } from '@/lib/common/exceptions/login//LockedAccountException'\nimport { TwoFactorAuthRequiredException } from '@/lib/common/exceptions/login//TwoFactorAuthRequiredException'\nimport partnerClient from '@/clients/partnersClient'\nimport { browserService } from '@/services/browserService'\nimport { useFeatureFlags } from '@/services/useFeatureFlags'\nimport { AccountInfo } from '@/GeneratedTypes/ListInfo/AccountInfo'\nimport QRious from 'qrious'\n\nconst localStorageEmailKey = 'authwall-remembered-email'\nconst rememberedEmail = localStorageService.getRaw(localStorageEmailKey)\nconst mobileSiteURL = process.env.VUE_APP_URL_MOBILE_REDIRECT\n\nexport default defineComponent({\n name: 'TheAuthWall',\n components: {\n Alert,\n TextInput,\n PasswordInput,\n PartnerList,\n Loading,\n VueRecaptcha,\n },\n setup(props, ctx) {\n const userToken = computed(() => store.getters.authorization.userData)\n const daysUntilPasswordExpiration = computed(\n () => store.getters.authorization.daysUntilPasswordExpiration\n )\n const isSuperUser = computed(() => store.getters.authorization.isCurrentUserASuperUser)\n const isMultiAccountUser = computed(() => store.getters.authorization.isMultiAccountUser)\n const accountNumbers = computed(() => store.getters.authorization.accountNumbers)\n const totpInfo = computed(() => store.getters.authorization.totpInfo)\n const fullName = computed(() => store.getters.authorization.fullName)\n\n const email = ref(rememberedEmail || '')\n const password = ref('')\n const doRememberEmail = ref(!!rememberedEmail)\n const isLoading = ref(false)\n const alertIsVisible = ref(false)\n const currentYear = ref(new Date().getFullYear())\n const partners = ref([])\n const hasMultipleAccounts = ref(false)\n const show2FAPrompt = ref(false)\n const show2FAQRCode = ref(false)\n const totpCode = ref('')\n const qrCodeImage = ref(null)\n const qriousInstance = ref(new QRious({ size: 250 }))\n const showAuthKey = ref(false)\n const lastValidTotp = ref(null)\n const isReplaying = ref(false)\n\n const redirectFlag = ref(true)\n const accountToImpersonateAfter2FA = ref('')\n\n //TNT - temporary hack until we get to Vue3 and can do refs\n const focusVerificationCodeInitial = ref(false)\n const focusVerificationCodeReturning = ref(false)\n\n onMounted(async () => {\n if (ctx.root.$route.query.token) {\n redirectFlag.value = ctx.root.$route.query.redirect ? ctx.root.$route.query.redirect === 'true' : true\n\n try {\n verified.value = true\n await store.dispatch.authorization.loginByTokenWithImpersonation({\n chit: ctx.root.$route.query.token as string,\n })\n } catch (e) {\n // locked account\n if (e instanceof LockedAccountException) {\n await ctx.root.$router.push({ path: '/locked-account' })\n return\n }\n if (e instanceof TwoFactorAuthRequiredException) {\n const tfaEx = e as TwoFactorAuthRequiredException\n nextTick(() => {\n isLoading.value = false\n accountToImpersonateAfter2FA.value = tfaEx.accountToImpersonateAfterAuth\n show2FAPrompt.value = true\n })\n }\n }\n\n redirectCheck()\n ctx.root.$router.push('/')\n }\n })\n\n const sitekey = computed(() => process.env.VUE_APP_GOOGLE_SITEKEY)\n\n const errorMessage = ref('')\n\n /**\n * login called by button click.\n * @private\n */\n async function login(accountNo: string | null = '', replayTOTPCode: string | null) {\n if (isLoading.value || !isVerified.value) {\n return\n }\n\n isLoading.value = true\n try {\n await store.dispatch.authorization.login({\n email: email.value,\n password: password.value,\n accountNumber: accountNo,\n })\n // at this line it would be an exception if we were not logged in\n\n if (doRememberEmail.value) {\n localStorageService.set(localStorageEmailKey, email.value)\n }\n\n if (totpInfo.value == 'GOOD') {\n if (isMultiAccountUser.value) {\n const p = await partnerClient.retreivePartners(\n accountNumbers.value === null ? [] : [...accountNumbers.value] //becuase typescript\n )\n if (p) {\n hasMultipleAccounts.value = true\n partners.value = p\n isLoading.value = false\n return\n }\n }\n\n redirectCheck()\n\n //change password if expired.\n if (daysUntilPasswordExpiration.value === 0) {\n await ctx.root.$router.push('/account/security')\n }\n } else {\n if (totpInfo.value == 'PROMPT') {\n if (replayTOTPCode != null) {\n totpCode.value = replayTOTPCode\n isReplaying.value = true\n await validateTOTP()\n } else {\n //show totp prompt\n show2FAPrompt.value = true\n }\n } else {\n //show qr code for initial 2FA signup\n //build QR Code\n //const uri = `otpauth://totp/My%20Upward?secret=${this.totpInfo}`\n const uri = generateTOTPUri(totpInfo.value)\n generateQRCode(uri)\n show2FAQRCode.value = true\n }\n }\n } catch (err) {\n // deal with authentication issues.\n isLoading.value = false\n\n await handleLoginException(err)\n\n errorMessage.value = 'User or password combination not valid.'\n alertIsVisible.value = true\n }\n\n isLoading.value = false\n }\n\n async function validateTOTP() {\n if ((isLoading.value || !isVerified.value) && !isReplaying.value) {\n return\n }\n\n isLoading.value = true\n isReplaying.value = false\n\n try {\n await store.dispatch.authorization.validateTOTP(totpCode.value)\n\n if (totpInfo.value == 'GOOD') {\n //change password if expired.\n if (daysUntilPasswordExpiration.value === 0) {\n await ctx.root.$router.push('/account/security')\n }\n\n if (isMultiAccountUser.value) {\n const p = await partnerClient.retreivePartners(\n accountNumbers.value === null ? [] : [...accountNumbers.value] //becuase typescript\n )\n if (p) {\n lastValidTotp.value = totpCode.value\n show2FAPrompt.value = false\n show2FAQRCode.value = false\n hasMultipleAccounts.value = true\n partners.value = p\n isLoading.value = false\n return\n }\n }\n\n if (accountToImpersonateAfter2FA.value) {\n const who = { userName: undefined, accountNumber: accountToImpersonateAfter2FA.value }\n await store.dispatch.authorization.impersonate(who)\n await ctx.root.$router.push('/')\n }\n\n redirectCheck()\n } else {\n if (totpInfo.value == 'PROMPT' && !show2FAPrompt.value) {\n totpCode.value = ''\n show2FAPrompt.value = true\n } else {\n throw new Error('Verification Code invalid. Try again.')\n }\n }\n } catch (err) {\n // deal with authentication issues.\n isLoading.value = false\n\n await handleLoginException(err)\n\n errorMessage.value = 'Verification Code invalid. Try again.'\n alertIsVisible.value = true\n }\n\n isLoading.value = false\n }\n\n async function handleLoginException(err: Error) {\n // expired password case\n if (err instanceof PasswordExpiredException) {\n await ctx.root.$router.push({ path: '/expired-password', query: { email: email.value } })\n return\n }\n\n // locked account\n if (err instanceof LockedAccountException) {\n await ctx.root.$router.push({ path: '/locked-account' })\n return\n }\n }\n\n function generateQRCode(uri: string) {\n qriousInstance.value.value = uri\n qrCodeImage.value = qriousInstance.value.toDataURL(uri)\n }\n\n function generateTOTPUri(totpInfo: string) {\n const environment =\n process.env.NODE_ENV == 'production'\n ? process.env.VUE_APP_ROOT_API?.includes('upwqa')\n ? '(QA)'\n : ''\n : '(DEV)'\n\n const fullNameEncoded = encodeURIComponent(fullName.value || '').replace(\n /[!'()*]/g,\n (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`\n )\n\n return `otpauth://totp/My%20Upward${environment}%3A${fullNameEncoded}?secret=${totpInfo.replace(\n /=/g,\n ''\n )}&issuer=My%20Upward${environment}`\n }\n\n function redirectCheck() {\n if (useFeatureFlags()?.features?.value?.THE_AUTH_WALL__REDIRECT_TO_MOBILE) {\n // This is a SuperUser on desktop so don't redirect\n if (isSuperUser.value && browserService.isDesktopBrowser()) {\n return\n }\n\n // This is a SuperUser on mobile with redirectFlag = false so don't redirect\n if (isSuperUser.value && !browserService.isDesktopBrowser() && !redirectFlag.value) {\n return\n }\n\n if (ctx.root.$router.currentRoute.path.indexOf('/allaccess/') === 0) {\n return\n }\n // redirect everyone else\n redirect()\n }\n }\n\n function redirect() {\n const url = `${mobileSiteURL}?token=${encodeURIComponent(userToken.value ?? '')}`\n store.commit.authorization.clearCurrentCredentials()\n location.href = url\n }\n\n const isVerified = computed(() => verified.value || !process.env.VUE_APP_GOOGLE_SITEKEY)\n\n async function loginWithPartner(p: AccountInfo) {\n await login(p.accountNumber, lastValidTotp.value)\n }\n\n const verified = ref(false)\n\n async function verify() {\n verified.value = true\n await login(null, null)\n }\n\n watch(\n () => show2FAPrompt.value,\n () => {\n if (show2FAPrompt.value) {\n nextTick(() => {\n /*\n const verficatioCode = ctx.refs.verificationCodeReturning as TextInput\n const verficatioCodeTextbox = verficatioCode.$refs.inputField as HTMLInputElement\n verficatioCodeTextbox.focus()\n */\n focusVerificationCodeReturning.value = true\n })\n }\n }\n )\n\n watch(\n () => show2FAQRCode.value,\n () => {\n if (show2FAQRCode.value) {\n nextTick(() => {\n /*\n const verficatioCode = ctx.refs.verificationCodeInitial as TextInput\n const verficatioCodeTextbox = verficatioCode.$refs.inputField as HTMLInputElement\n verficatioCodeTextbox.focus()\n */\n focusVerificationCodeInitial.value = true\n })\n }\n }\n )\n\n return {\n alertIsVisible,\n errorMessage,\n show2FAPrompt,\n show2FAQRCode,\n hasMultipleAccounts,\n partners,\n email,\n password,\n isVerified,\n isLoading,\n doRememberEmail,\n totpCode,\n showAuthKey,\n totpInfo,\n qrCodeImage,\n currentYear,\n sitekey,\n loginWithPartner,\n login,\n validateTOTP,\n verify,\n focusVerificationCodeInitial,\n focusVerificationCodeReturning,\n }\n },\n})\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!./TheAuthWall.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!./TheAuthWall.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheAuthWall.vue?vue&type=template&id=3af362aa&\"\nimport script from \"./TheAuthWall.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheAuthWall.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TheAuthWall.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 { VImg } from 'vuetify/lib/components/VImg';\ninstallComponents(component, {VImg})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('alert',{attrs:{\"timeout\":0},on:{\"change\":_vm.onAlertIsVisibleChange},model:{value:(_vm.alertIsVisible),callback:function ($$v) {_vm.alertIsVisible=$$v},expression:\"alertIsVisible\"}},[(_vm.currentError && _vm.currentError.error)?[_c('p',{staticClass:\"font-weight-bold m-0\"},[_vm._v(_vm._s(_vm.currentItem.error.message))]),_c('div',{staticClass:\"alert-error-list\"},[(_vm.currentError.error.errors && _vm.currentError.error.errors.length)?_c('ul',_vm._l((_vm.currentError.error.errors),function(error,index){return _c('li',{key:error.message + index},[_vm._v(\" \"+_vm._s(error.message)+\" \"),(error.messageID)?_c('em',[_vm._v(\" \"+_vm._s(error.messageID)+\" \")]):_vm._e(),(error.innerException)?_c('accordion',{staticClass:\"alert-details\"},[_c('accordion-item',[_c('h5',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Details\")]),_vm._v(\" \"+_vm._s(_vm.errorDetailMessage(error))+\" \")])],1):_vm._e()],1)}),0):_vm._e()]),(_vm.currentError.timestamp != _vm.highestTimeStamp)?_c('div',{staticClass:\"alert-info\"},[_vm._v(\" This is an older error that had not been acknowledged yet. \")]):_vm._e()]:_vm._e(),(_vm.currentValidationError && _vm.currentValidationError.error)?[_c('p',{staticClass:\"font-weight-bold m-0\"},[_vm._v(\"Please correct the following:\")]),(_vm.currentValidationError.error.brokenRules && _vm.currentValidationError.error.brokenRules.length)?_c('ul',_vm._l((_vm.currentValidationError.error.brokenRules),function(brokenRule){return _c('li',{key:brokenRule.message},[_vm._v(\" \"+_vm._s(brokenRule.message)+\" \"),(brokenRule.messageID)?_c('em',[_c('small',{staticClass:\"text-muted\"},[_vm._v(_vm._s(brokenRule.messageID))])]):_vm._e()])}),0):_vm._e(),(_vm.currentValidationError.timestamp != _vm.highestTimeStamp)?_c('div',{staticClass:\"alert-info\"},[_vm._v(\" This is an older error that had not been acknowledged yet. \")]):_vm._e()]:_vm._e(),(_vm.itemCount > 1)?_c('div',{staticClass:\"alert-info\"},[_vm._v(\" There \"+_vm._s(_vm.itemCount === 2 ? 'is' : 'are')+\" \"+_vm._s(_vm.itemCount - 1)+\" \"+_vm._s(_vm.itemCount === 2 ? 'error' : 'errors')+\" \")]):_vm._e()],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\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport Alert from '@/components/Alert.vue'\nimport Accordion from '@/components/Accordion.vue'\nimport AccordionItem from '@/components/AccordionItem.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'TheErrorRenderer',\n components: {\n Alert,\n Accordion,\n AccordionItem,\n },\n setup(props, ctx) {\n const currentError = computed(() => store.getters.errors.currentError)\n const allErrors = computed(() => store.getters.errors.allErrors)\n const currentValidationError = computed(() => store.getters.errors.currentValidationError)\n const allValidationErrors = computed(() => store.getters.errors.allValidationErrors)\n\n const alertIsVisible = ref(!!currentError.value)\n\n const highWaterTimeStamp = ref(new Date())\n const highestTimeStamp = computed(() => {\n if (currentError.value && currentError.value.timestamp > highWaterTimeStamp.value) {\n highWaterTimeStamp.value = currentError.value.timestamp\n }\n if (currentValidationError.value && currentValidationError.value.timestamp > highWaterTimeStamp.value) {\n highWaterTimeStamp.value = currentValidationError.value.timestamp\n }\n return highWaterTimeStamp.value\n })\n\n /**\n * Grab the error with the newest timestamp as \"current\"\n */\n const currentItem = computed(() => {\n if (currentError.value && currentValidationError.value) {\n if (currentError.value.timestamp > currentValidationError.value.timestamp) {\n return currentError.value\n }\n return currentValidationError.value\n }\n return currentError.value || currentValidationError.value\n })\n\n const itemCount = computed(() => allErrors.value.length + allValidationErrors.value.length)\n\n function errorDetailMessage(err: any) {\n if (err.innerException && err.innerException.errorObject && err.innerException.errorObject.message) {\n return err.innerException.errorObject.message\n }\n return null\n }\n\n watch(\n () => ctx.root.$route,\n () => {\n store.commit.errors.clearAll(null)\n }\n )\n\n watch(\n () => currentItem.value,\n () => {\n alertIsVisible.value = !!currentItem.value\n }\n )\n\n function onAlertIsVisibleChange() {\n if (!alertIsVisible.value && currentItem.value) {\n store.commit.errors.clearCurrentValidationError(0)\n store.commit.errors.clearCurrentError(0)\n }\n }\n\n return {\n alertIsVisible,\n currentError,\n currentItem,\n highestTimeStamp,\n currentValidationError,\n itemCount,\n onAlertIsVisibleChange,\n errorDetailMessage,\n }\n },\n})\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!./TheErrorRenderer.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!./TheErrorRenderer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheErrorRenderer.vue?vue&type=template&id=522d45f1&\"\nimport script from \"./TheErrorRenderer.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheErrorRenderer.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TheErrorRenderer.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\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nimport store from '@/store'\nimport TheAuthWall from '@/singletons/TheAuthWall.vue'\nimport TheErrorRenderer from '@/singletons/TheErrorRenderer.vue'\n\nexport default defineComponent({\n name: 'CoachApp',\n components: { TheErrorRenderer, TheAuthWall },\n setup(props, ctx) {\n const isAuthenticated = computed(() => store.getters.authorization.isAuthenticated)\n const codeReloadRequired = computed(() => store.getters.authorization.codeReloadRequired)\n const leagueRoles = computed(() => store.getters.authorization.leagueRoles)\n const showReport = computed(\n () =>\n (leagueRoles.value &&\n leagueRoles.value.length > 0 &&\n leagueRoles.value.some((lr) => lr.UpwardLeagueID == ctx.root.$route.params.id)) ||\n !leagueRoles.value ||\n leagueRoles.value.length == 0\n )\n\n return { showReport, isAuthenticated, codeReloadRequired }\n },\n})\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!./CoachApp.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!./CoachApp.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CoachApp.vue?vue&type=template&id=0f60515c&\"\nimport script from \"./CoachApp.vue?vue&type=script&lang=ts&\"\nexport * from \"./CoachApp.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('div',{staticClass:\"min-h-100 d-flex flex-column main-component bg-primary\"},[(_vm.isCurrentRoutePublic && !_vm.codeReloadRequired)?[_c('router-view')]:(!_vm.isAuthenticated && !_vm.codeReloadRequired)?[_c('TheAuthWall')]:(!_vm.codeReloadRequired)?[_c('v-app',[(!_vm.isImpersonated)?_c('Notifications',{model:{value:(_vm.showNotifications),callback:function ($$v) {_vm.showNotifications=$$v},expression:\"showNotifications\"}}):_vm._e(),_c('v-navigation-drawer',{staticClass:\"bg-dark no-print\",attrs:{\"clipped\":\"\",\"app\":\"\",\"mini-variant\":_vm.mini,\"mini-variant-width\":\"77\",\"width\":\"90\",\"dark\":\"\"},model:{value:(_vm.drawerOpen),callback:function ($$v) {_vm.drawerOpen=$$v},expression:\"drawerOpen\"}},[_c('the-sidebar',{staticClass:\"no-print\",attrs:{\"flavor\":_vm.sideBarFlavor}})],1),_c('v-app-bar',{attrs:{\"clipped-left\":\"\",\"clipped-right\":\"\",\"app\":\"\",\"padless\":\"\",\"flat\":\"\"}},[_c('TheHeader',{on:{\"click\":_vm.clickHamburger,\"notificationsClick\":_vm.clickNotification}})],1),_c('v-main',[_c('router-view')],1),_c('v-footer',{staticClass:\"no-print\",attrs:{\"app\":\"\",\"padless\":\"\",\"inset\":\"\",\"absolute\":\"\"}},[_c('the-footer')],1)],1)]:_c('SiteLoading'),_c('the-prompt-to-save'),(!_vm.codeReloadRequired)?_c('the-error-renderer'):_vm._e(),_c('v-snackbar',{attrs:{\"top\":\"\",\"value\":_vm.updateExists,\"timeout\":-1,\"color\":\"primary\"}},[_c('div',{staticClass:\"text-center\"},[_c('img',{staticClass:\"mb-4\",attrs:{\"src\":\"/img/logo-big.png\"}}),_c('div',{staticClass:\"mb-4\"},[_vm._v(\"There is a new version of this application.\")]),_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.refreshApp}},[_vm._v(\" Click here to get the latest improvements \")])])])],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',{staticClass:\"container p-0\"},[_c('v-list',{staticClass:\"p-0\",attrs:{\"dense\":\"\"}},[_c('v-list-item-group',{model:{value:(_vm.activeListItem),callback:function ($$v) {_vm.activeListItem=$$v},expression:\"activeListItem\"}},[_c('sidebar-item',{attrs:{\"text\":\"Home\",\"icon-class\":\"fa fa-home\"},on:{\"click\":function($event){return _vm.navigate('/')}}}),(_vm.regularFlavor)?_c('sidebar-item',{attrs:{\"text\":\"Manage Programs\",\"icon-class\":\"fa fa-clipboard-list\"},on:{\"click\":function($event){return _vm.navigate('/programs')}}}):_vm._e(),_c('sidebar-item',{attrs:{\"text\":\"Training\",\"icon-class\":\"fa fa-lightbulb\"},on:{\"click\":function($event){return _vm.navigate('/training')}}}),(_vm.isCurrentUserASuperUser)?_c('sidebar-item',{attrs:{\"text\":\"Director Portal\",\"icon-class\":\"fa fa-users\"},on:{\"click\":_vm.clickedDirectorPortal}}):_vm._e(),_c('sidebar-item',{attrs:{\"text\":\"Resources\",\"icon-class\":\"fa fa-book\"},on:{\"click\":function($event){return _vm.navigate('/resources')}}}),(_vm.dashboardFlavor && _vm.isCurrentUserASuperUser)?_c('sidebar-item',{attrs:{\"text\":\"Admin Tools\",\"icon-class\":\"fas fa-tools\"},on:{\"click\":function($event){return _vm.navigate('/AdminDash/AdminTools')}}}):_vm._e(),(_vm.regularFlavor)?_c('sidebar-item',{attrs:{\"text\":\"Contact Upward\",\"icon-class\":\"fa fa-id-badge\"},on:{\"click\":function($event){return _vm.navigate('/contact')}}}):_vm._e(),_c('sidebar-item',{attrs:{\"text\":\"Account\",\"icon-class\":\"fa fa-user\"},on:{\"click\":function($event){return _vm.navigate('/account')}}}),(_vm.regularFlavor)?[(_vm.features.COMPONENT_TEST)?_c('sidebar-item',{attrs:{\"text\":\"Component Test\",\"icon-class\":\"fa fa-vial\",\"exact\":\"\"},on:{\"click\":function($event){return _vm.navigate('/componenttest')}}}):_vm._e(),(_vm.features.FEATURES)?_c('sidebar-item',{attrs:{\"text\":\"Feature Flags\",\"icon-class\":\"fa fa-flag\",\"exact\":\"\"},on:{\"click\":function($event){return _vm.navigate('/features')}}}):_vm._e()]:_vm._e(),_c('sidebar-item',{attrs:{\"text\":\"Logout\",\"icon-class\":\"fa-lg fa fa-sign-out-alt\",\"exact\":\"\"},on:{\"click\":_vm.logout}})],2)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","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!./TheSidebar.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!./TheSidebar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheSidebar.vue?vue&type=template&id=71cad3ee&\"\nimport script from \"./TheSidebar.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheSidebar.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 { VList } from 'vuetify/lib/components/VList';\nimport { VListItemGroup } from 'vuetify/lib/components/VList';\ninstallComponents(component, {VList,VListItemGroup})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-primary row text-white pr-2 m-0\",attrs:{\"id\":\"title-bar\"}},[_c('div',{staticClass:\"col-auto bg-dark px-0 pt-2 text-center\",attrs:{\"id\":\"header-sidebar-toggle\"}},[_c('button',{staticClass:\"btn text-white\",attrs:{\"id\":\"sidebar-toggle\",\"type\":\"button\"},on:{\"click\":function($event){return _vm.$emit('click')}}},[_c('i',{staticClass:\"fa fa-bars fa-2x\"})])]),_c('div',{staticClass:\"pt-2\",attrs:{\"id\":\"header-logo\"}},[_c('router-link',{staticClass:\"ml-4 navbar-brand\",attrs:{\"to\":\"/\"}},[_c('img',{attrs:{\"src\":\"/img/logo-big.png\"}})])],1),(!_vm.isHomeRoute && _vm.features.HOME__SEARCH_AND_NOTIFICATION)?[_vm._m(0),_c('div',{staticClass:\"resources col pt-3 d-none d-md-block\"},[_c('router-link',{attrs:{\"to\":\"/resources\"}},[_c('i',{staticClass:\"fa fa-chevron-down pr-2\"}),_vm._v(\" Resources \")])],1)]:_vm._e(),[_c('div',{staticClass:\"search col-auto form-group has-search pt-2 mb-2 d-none d-md-block\"}),_c('div',{staticClass:\"resources col pt-3 d-none d-md-block\"})],_c('div',{staticClass:\"account text-right d-none d-sm-block pb-1 align-bottom\",class:_vm.isHomeRoute ? 'col' : 'col-auto'},[(!_vm.isImpersonated)?_c('NotificationsBtn',{staticClass:\"mr-2\",attrs:{\"count\":_vm.notificationsCount},on:{\"click\":_vm.notificationsClick}}):_vm._e(),(_vm.isImpersonated)?_c('v-menu',{attrs:{\"bottom\":\"\",\"rounded\":\"\",\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-btn',_vm._g({attrs:{\"icon\":\"\",\"x-large\":\"\"}},on),[_c('v-avatar',{attrs:{\"color\":\"orange darken-4\",\"size\":\"38\"}},[_c('span',{staticClass:\"white--text\"},[_vm._v(\"IM\")])])],1)]}}],null,false,3956500538)},[_c('v-card',[_c('v-list-item-content',{staticClass:\"justify-center\"},[_c('div',{staticClass:\"mx-auto text-center p-2\"},[_c('h3',[_vm._v(\"Impersonation Acct#\"+_vm._s(_vm.impersonationAccountNumber))]),_c('v-divider',{staticClass:\"my-3\"}),_c('v-btn',{attrs:{\"depressed\":\"\",\"rounded\":\"\",\"text\":\"\"},on:{\"click\":_vm.endImpersonation}},[_vm._v(\" End Impersonation \")])],1)])],1)],1):_vm._e(),_c('v-menu',{attrs:{\"bottom\":\"\",\"rounded\":\"\",\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-btn',_vm._g({attrs:{\"icon\":\"\",\"x-large\":\"\"}},on),[_c('v-avatar',{staticClass:\"bg-dark\",attrs:{\"size\":\"38\"}},[_c('i',{staticClass:\"white--text fas fa-church\"})])],1)]}}])},[_c('v-card',[_c('v-list-item-content',{staticClass:\"justify-center\"},[_c('div',{staticClass:\"mx-auto text-center p-2\"},[_c('h3',[_vm._v(_vm._s(_vm.accountName))]),_c('div',{staticClass:\"small text-muted\"},[_vm._v(\"PARTNER NUMBER: \"+_vm._s(_vm.firstAccountNumber))]),_c('v-divider',{staticClass:\"my-3\"}),_c('v-btn',{attrs:{\"depressed\":\"\",\"rounded\":\"\",\"text\":\"\",\"to\":\"/account\"}},[_vm._v(\" Edit Account \")])],1)])],1)],1),_c('v-menu',{staticClass:\"b-0\",attrs:{\"bottom\":\"\",\"rounded\":\"\",\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-btn',_vm._g({staticClass:\"b-0\",attrs:{\"icon\":\"\",\"x-large\":\"\"}},on),[_c('v-avatar',{staticClass:\"bg-dark\",attrs:{\"size\":\"38\"}},[_c('span',{staticClass:\"white--text\"},[_vm._v(_vm._s(_vm.avatarText))])])],1)]}}])},[_c('v-card',[_c('v-list-item-content',{staticClass:\"justify-center\"},[_c('div',{staticClass:\"mx-auto text-center p-2\"},[_c('v-avatar',{attrs:{\"color\":\"purple darken-4\"}},[_c('span',{staticClass:\"white--text headline\"},[_vm._v(_vm._s(_vm.avatarText))])]),_c('h3',[_vm._v(_vm._s(_vm.fullName))]),_c('v-divider',{staticClass:\"my-3\"}),_c('v-btn',{attrs:{\"depressed\":\"\",\"rounded\":\"\",\"text\":\"\",\"to\":\"/myprofile\"}},[_vm._v(\" Edit Account \")]),_c('v-divider',{staticClass:\"my-3\"}),_c('v-btn',{attrs:{\"depressed\":\"\",\"rounded\":\"\",\"text\":\"\"},on:{\"click\":_vm.doLogout}},[_vm._v(\" Logout \")])],1)])],1)],1)],1)],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"search col-auto form-group has-search pt-2 mb-2 d-none d-md-block\"},[_c('span',{staticClass:\"fa fa-search fa-lg form-control-feedback\"}),_c('input',{staticClass:\"form-control form-control-clear border-right rounded-0\",attrs:{\"type\":\"text\",\"placeholder\":\"What are you looking for?\",\"aria-label\":\"What are you looking for?\"}})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-btn',{attrs:{\"icon\":\"\",\"x-large\":\"\"},on:{\"click\":_vm.click}},[_c('v-badge',{attrs:{\"bordered\":\"\",\"color\":\"success\",\"overlap\":\"\",\"content\":_vm.count,\"value\":_vm.count > 0}},[_c('v-avatar',{staticClass:\"bg-dark\",attrs:{\"size\":\"38\"}},[_c('i',{staticClass:\"white--text fas fa-bell\"})])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'NotificationsBtn',\n props: {\n count: { type: Number, required: false, default: 0 },\n },\n components: {},\n setup(props, { emit }) {\n function click() {\n emit('click')\n }\n return { click }\n },\n})\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!./NotificationsBtn.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!./NotificationsBtn.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./NotificationsBtn.vue?vue&type=template&id=3a1fd62b&\"\nimport script from \"./NotificationsBtn.vue?vue&type=script&lang=ts&\"\nexport * from \"./NotificationsBtn.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 { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBadge } from 'vuetify/lib/components/VBadge';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\ninstallComponents(component, {VAvatar,VBadge,VBtn})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nimport { RouteMeta } from '@/router/'\nimport { useFeatureFlags } from '@/services/useFeatureFlags'\nimport store from '@/store'\n\nimport NotificationsBtn from '@/components/Notifications/NotificationsBtn.vue'\n\nexport default defineComponent({\n name: 'TheHeader',\n components: {\n NotificationsBtn,\n },\n setup(props, ctx) {\n const isHomeRoute = computed(() => ctx.root.$route.matched.some((r) => (r.meta as RouteMeta).isHome))\n\n const { features } = useFeatureFlags()\n const fullName = computed(() => store.getters.authorization.fullName)\n const firstAccountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n const isImpersonated = computed(() => store.getters.authorization.isImpersonated)\n const impersonationAccountNumber = computed(() => store.getters.authorization.impersonationAccountNumber)\n const accountName = computed(() => store.getters.authorization.accountName)\n\n async function doLogout() {\n if (ctx.root.$route.fullPath !== '/') {\n await ctx.root.$router.push('/') //see #2787 - redirect to home on logout.\n }\n store.commit.authorization.clearCurrentCredentials()\n }\n\n const notificationsCount = computed(() => store.getters.alerts.unreadNotificationCount)\n\n const avatarText = computed(() => {\n if (fullName.value) {\n const firstInitial = fullName.value?.charAt(0)\n const lastSpace = fullName.value?.lastIndexOf(' ')\n let lastInitial = ''\n if (lastSpace && lastSpace > 0) {\n lastInitial = fullName.value?.charAt(lastSpace + 1)\n }\n return (firstInitial + lastInitial).toUpperCase()\n }\n return ''\n })\n\n async function endImpersonation() {\n await store.dispatch.authorization.unimpersonate()\n if (ctx.root.$route.name !== 'admin-dashboard') {\n await ctx.root.$router.push('/admin-dashboard')\n }\n }\n\n function notificationsClick() {\n ctx.emit('notificationsClick')\n }\n\n return {\n isHomeRoute,\n features,\n isImpersonated,\n notificationsCount,\n impersonationAccountNumber,\n accountName,\n firstAccountNumber,\n avatarText,\n fullName,\n notificationsClick,\n endImpersonation,\n doLogout,\n }\n },\n})\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!./TheHeader.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!./TheHeader.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheHeader.vue?vue&type=template&id=757e5cd8&\"\nimport script from \"./TheHeader.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheHeader.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TheHeader.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 { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\ninstallComponents(component, {VAvatar,VBtn,VCard,VDivider,VListItemContent,VMenu})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{\"value\":_vm.isVisible,\"title\":\"Save?\",\"is-small\":\"\"},on:{\"change\":_vm.onCancel}},[_c('p',{staticClass:\"p-3\"},[_vm._v(\"Would you like to save any changes you have made?\")]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.onYes}},[_vm._v(\"Yes\")]),_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.onNo}},[_vm._v(\"No\")])])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'ThePromptToSave',\n components: {\n Modal,\n },\n setup() {\n const isVisible = computed(() => store.getters.promptToSave.modalIsVisible)\n\n return {\n isVisible,\n onYes: store.dispatch.promptToSave.onYes,\n onNo: store.dispatch.promptToSave.onNo,\n onCancel: store.dispatch.promptToSave.onCancel,\n }\n },\n})\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!./ThePromptToSave.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!./ThePromptToSave.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ThePromptToSave.vue?vue&type=template&id=5181269e&\"\nimport script from \"./ThePromptToSave.vue?vue&type=script&lang=ts&\"\nexport * from \"./ThePromptToSave.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('div',{staticClass:\"container-fluid small\"},[_c('div',{staticClass:\"row\"},[_vm._m(0),_c('div',{staticClass:\"col-lg-auto py-2\"},[_c('p',{staticClass:\"mt-2 mb-0 text-right\"},[_vm._v(\" © \"+_vm._s(new Date().getFullYear())+\" Upward Unlimited ™ \"),_c('br'),_vm._v(\" Upward® is a registered trademark of Upward Unlimited. \")])]),_vm._m(1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col pb-2\"},[_c('ul',{staticClass:\"list-inline mt-3 mb-0\"},[_c('li',{staticClass:\"list-inline-item pt-2\"},[_c('a',{staticClass:\"text-muted pr-4\",attrs:{\"href\":\"https://www.upward.org\",\"target\":\"_blank\"}},[_vm._v(\"Upward.org\")])]),_c('li',{staticClass:\"list-inline-item pt-2\"},[_c('a',{staticClass:\"text-muted pr-4\",attrs:{\"href\":\"/contact\"}},[_vm._v(\"Contact Us\")])]),_c('li',{staticClass:\"list-inline-item pt-2\"},[_c('a',{staticClass:\"text-muted pr-4\",attrs:{\"href\":\"https://www.upward.org/terms-of-use/\",\"target\":\"_blank\"}},[_vm._v(\"Privacy Policy\")])]),_c('li',{staticClass:\"list-inline-item pt-2\"},[_c('a',{staticClass:\"text-muted\",attrs:{\"href\":\"https://www.upward.org/terms-of-use/\",\"target\":\"_blank\"}},[_vm._v(\"Terms of Use\")])])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"col-lg-auto py-2\"},[_c('ul',{staticClass:\"list-inline mt-3 mb-0 text-right\"},[_c('li',{staticClass:\"list-inline-item\"},[_c('a',{attrs:{\"href\":\"https://www.facebook.com/UpwardSports/\",\"target\":\"_blank\"}},[_c('h3',{staticClass:\"fab fa-facebook-square\"})])]),_c('li',{staticClass:\"list-inline-item\"},[_c('a',{attrs:{\"href\":\"https://twitter.com/upwardsports/\",\"target\":\"_blank\"}},[_c('h3',{staticClass:\"fab fa-twitter-square\"})])]),_c('li',{staticClass:\"list-inline-item\"},[_c('a',{attrs:{\"href\":\"https://www.instagram.com/upwardsports/\",\"target\":\"_blank\"}},[_c('h3',{staticClass:\"fab fa-instagram\"})])]),_c('li',{staticClass:\"list-inline-item\"},[_c('a',{attrs:{\"href\":\"https://www.linkedin.com/company/938583/\",\"target\":\"_blank\"}},[_c('h3',{staticClass:\"fab fa-linkedin\"})])]),_c('li',{staticClass:\"list-inline-item\"},[_c('a',{attrs:{\"href\":\"https://www.youtube.com/user/UpwardSports\",\"target\":\"_blank\"}},[_c('h3',{staticClass:\"fab fa-youtube-square\"})])])])])}]\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\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'TheFooter',\n})\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!./TheFooter.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!./TheFooter.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheFooter.vue?vue&type=template&id=20c2c9e2&\"\nimport script from \"./TheFooter.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheFooter.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('div',{staticClass:\"placeholder\"},[_c('img',{staticClass:\"logo\",attrs:{\"src\":\"img/logo-big.png\"}}),_c('div',[_c('div',{staticClass:\"load-wrapper\"},[_vm._v(\"Loading\")]),_c('loading',{attrs:{\"is-small\":\"\"}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\nexport default defineComponent({\n name: 'SiteLoading',\n props: {},\n components: { Loading },\n setup() {\n return {}\n },\n})\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!./SiteLoading.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!./SiteLoading.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SiteLoading.vue?vue&type=template&id=6041ed78&scoped=true&\"\nimport script from \"./SiteLoading.vue?vue&type=script&lang=ts&\"\nexport * from \"./SiteLoading.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SiteLoading.vue?vue&type=style&index=0&id=6041ed78&lang=scss&scoped=true&\"\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 \"6041ed78\",\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-navigation-drawer',{staticClass:\"upward-notification\",attrs:{\"id\":\"upw-notifications\",\"clipped\":\"\",\"app\":\"\",\"right\":\"\",\"color\":\"rgba(255,255,255,0.0)\",\"temporary\":\"\",\"hide-overlay\":\"\"},model:{value:(_vm.open),callback:function ($$v) {_vm.open=$$v},expression:\"open\"}},[(_vm.loading)?_c('div',[(_vm.count == 0)?_c('NotificationCard',[_c('Loading',{attrs:{\"is-small\":\"\"}}),_vm._v(\" Loading notifications\")],1):_vm._e()],1):[(_vm.count == 0)?_c('NotificationCard',[_vm._v(\" There are no notifications to display.\")]):_vm._l((_vm.notifications),function(n){return _c('Notification',{key:n.id,attrs:{\"notification\":n}})})]],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('NotificationCard',[_c('div',[(!_vm.notification.userHasRead)?_c('div',{staticClass:\"small font-weight-bold badge badge-pill no-dismiss light-blue accent-1 light-blue--text text--darken-4\"},[_vm._v(\" New \")]):_vm._e(),_c('div',{ref:\"msgArea\",staticClass:\"small font-weight-bold pb-4 message notification\",style:({ height: (\"\" + _vm.height) }),domProps:{\"innerHTML\":_vm._s(_vm.notification.message)}}),(_vm.showFlipper && !_vm.expanded)?_c('div',{staticClass:\"elipse clickable\",on:{\"click\":function($event){return _vm.click('MORE')}}},[_vm._v(\"...\")]):_vm._e()]),_c('div',{staticClass:\"d-flex justify-content-between clear align-items-center\"},[_c('div',{staticClass:\"small blue-grey--text text--lighten-3\"},[_vm._v(_vm._s(_vm.fmtDt))]),(_vm.showFlipper)?_c(_vm.flipper,{tag:\"component\",staticClass:\"flipper\",on:{\"click\":_vm.click}}):_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('button',{staticClass:\"btn btn-link small\",on:{\"click\":_vm.click}},[_vm._v(\"less \"),_c('i',{staticClass:\"fas fa-chevron-up\"})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'lessButton',\n props: {},\n components: {},\n setup(props, { emit }) {\n function click() {\n emit('click', 'LESS')\n }\n return { click }\n },\n})\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!./LessButton.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!./LessButton.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./LessButton.vue?vue&type=template&id=a4b54cb4&\"\nimport script from \"./LessButton.vue?vue&type=script&lang=ts&\"\nexport * from \"./LessButton.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('button',{staticClass:\"btn btn-link small\",on:{\"click\":_vm.click}},[_vm._v(\"more \"),_c('i',{staticClass:\"fas fa-chevron-down\"})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'moreButton',\n props: {},\n components: {},\n setup(props, { emit }) {\n function click() {\n emit('click', 'MORE')\n }\n return { click }\n },\n})\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!./MoreButton.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!./MoreButton.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MoreButton.vue?vue&type=template&id=11514772&\"\nimport script from \"./MoreButton.vue?vue&type=script&lang=ts&\"\nexport * from \"./MoreButton.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('div',{staticClass:\"parent\"},[_c('div',{staticClass:\"child rounded\"},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'NotificationCard',\n props: {},\n components: {},\n setup() {\n return {}\n },\n})\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!./NotificationCard.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!./NotificationCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./NotificationCard.vue?vue&type=template&id=c022fe0e&scoped=true&\"\nimport script from \"./NotificationCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./NotificationCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./NotificationCard.vue?vue&type=style&index=0&id=c022fe0e&lang=scss&scoped=true&\"\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 \"c022fe0e\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType, computed, watch, ref, onMounted } from '@vue/composition-api'\nimport dayjs from 'dayjs'\n\nimport { NotificationInfo } from '@/models/Notification/NotificationInfo'\nimport LessButton from '@/components/LessButton.vue'\nimport MoreButton from '@/components/MoreButton.vue'\nimport NotificationCard from '@/components/Notifications/NotificationCard.vue'\nexport default defineComponent({\n name: 'Notification',\n props: {\n notification: { type: Object as PropType, required: true },\n },\n components: { LessButton, MoreButton, NotificationCard },\n setup(props) {\n const msgArea = ref(null)\n const height = ref('')\n const totalHeight = ref(0)\n const showFlipper = ref(false)\n const expanded = ref(false)\n const smallHeight = '75px'\n const fmtDt = computed(() => {\n return dayjs(props.notification.startDate ?? '').format('MMM D')\n })\n\n function sizeText() {\n if (msgArea && msgArea.value && msgArea.value.scrollHeight) {\n const h = msgArea.value.scrollHeight\n totalHeight.value = h\n if (h > 100) {\n height.value = smallHeight\n showFlipper.value = true\n } else {\n height.value = `${totalHeight.value}px`\n }\n }\n }\n\n const flipper = computed(() => {\n return expanded.value ? LessButton : MoreButton\n })\n\n function click(val: 'LESS' | 'MORE') {\n if (val == 'LESS') {\n height.value = smallHeight\n expanded.value = false\n } else {\n height.value = `${totalHeight.value}px`\n expanded.value = true\n }\n }\n\n onMounted(() => {\n sizeText()\n })\n watch(\n () => props.notification,\n () => sizeText(),\n { immediate: true }\n )\n return { fmtDt, click, showFlipper, flipper, msgArea, height, expanded }\n },\n})\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!./Notification.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!./Notification.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=55b21d5f&scoped=true&\"\nimport script from \"./Notification.vue?vue&type=script&lang=ts&\"\nexport * from \"./Notification.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Notification.vue?vue&type=style&index=0&id=55b21d5f&lang=scss&scoped=true&\"\nimport style1 from \"./Notification.vue?vue&type=style&index=1&lang=scss&\"\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 \"55b21d5f\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, onMounted, watch, computed } from '@vue/composition-api'\nimport dayjs from 'dayjs'\n\nimport Notification from '@/components/Notifications/Notification.vue'\nimport NotificationCard from '@/components/Notifications/NotificationCard.vue'\nimport Loading from '@/elements/Loading.vue'\n\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'notifications',\n props: {\n value: { type: Boolean, required: true },\n },\n components: { Notification, Loading, NotificationCard },\n setup(props, { emit }) {\n const open = ref(false)\n const loading = ref(false)\n const retrieveNotifications = store.dispatch.alerts.fetchNotifications\n\n onMounted(async () => {\n loading.value = true\n await retrieveNotifications()\n loading.value = false\n })\n\n const notifications = computed(() => {\n return store.getters.alerts.notifications\n .concat()\n .sort((a, b) => (dayjs(a.startDate ?? '').isBefore(dayjs(b.startDate ?? '')) ? 1 : -1))\n })\n const count = computed(() => notifications.value.length ?? 0)\n\n watch(\n () => props.value,\n () => (open.value = props.value),\n { immediate: true }\n )\n\n watch(\n () => open.value,\n () => {\n emit('input', open.value)\n },\n { immediate: true }\n )\n\n return { notifications, open, loading, count }\n },\n})\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!./Notifications.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!./Notifications.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Notifications.vue?vue&type=template&id=370d832c&scoped=true&\"\nimport script from \"./Notifications.vue?vue&type=script&lang=ts&\"\nexport * from \"./Notifications.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Notifications.vue?vue&type=style&index=0&id=370d832c&lang=scss&scoped=true&\"\nimport style1 from \"./Notifications.vue?vue&type=style&index=1&lang=scss&\"\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 \"370d832c\",\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 { VNavigationDrawer } from 'vuetify/lib/components/VNavigationDrawer';\ninstallComponents(component, {VNavigationDrawer})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, onErrorCaptured } from '@vue/composition-api'\nimport '@/css'\nimport TheErrorRenderer from '@/singletons/TheErrorRenderer.vue'\nimport TheSidebar from '@/singletons/TheSidebar.vue'\nimport TheHeader from '@/singletons/TheHeader.vue'\nimport ThePromptToSave from '@/singletons/ThePromptToSave.vue'\nimport TheFooter from '@/singletons/TheFooter.vue'\nimport TheAuthWall from '@/singletons/TheAuthWall.vue'\nimport SiteLoading from '@/components/SiteLoading.vue'\nimport Notifications from '@/components/Notifications/Notifications.vue'\nimport { RouteMeta } from '@/router/'\nimport { convertToRestServiceResult, convertToVerificationDetails } from '@/services/restService'\nimport { UpwardExceptionResult, UpwardError } from '@/models/UpwardExceptionResult'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'MainApp',\n components: {\n TheErrorRenderer,\n TheAuthWall,\n TheSidebar,\n TheFooter,\n TheHeader,\n ThePromptToSave,\n Notifications,\n SiteLoading,\n },\n setup(props, ctx) {\n const isAuthenticated = computed(() => store.getters.authorization.isAuthenticated)\n const isImpersonated = computed(() => store.getters.authorization.isImpersonated)\n const codeReloadRequired = computed(() => store.getters.authorization.codeReloadRequired)\n const refreshTime = computed(() => store.getters.authorization.refreshTime)\n const isCurrentUserAnAdmin = computed(() => store.getters.authorization.isCurrentUserAnAdmin)\n const now = computed(() => store.getters.now)\n const userInactiveMS = computed(() => store.getters.userInactiveMS)\n\n const userHasBeenSeenThisTimePeriod = ref(false)\n const drawerOpen = ref(true)\n const showNotifications = ref(false)\n\n function clickNotification() {\n showNotifications.value = !showNotifications.value\n }\n\n const unreadNotificationCount = computed(() => store.getters.alerts.unreadNotificationCount)\n\n watch(\n () => isAuthenticated.value,\n async () => {\n if (isAuthenticated.value) {\n console.log('caching upward types')\n await store.dispatch.gradeTypes.fetchAll(false)\n await store.dispatch.leagueTypes.fetchAll(false)\n await store.dispatch.programTypes.fetchAll({ force: false })\n await store.dispatch.colorTypes.fetchAll({ force: false })\n await store.dispatch.relationshipTypes.fetchAll({ force: false })\n await store.dispatch.sizeTypes.fetchAll({ force: false })\n await store.dispatch.paymentTypes.fetchAll({ force: false })\n }\n },\n { immediate: true }\n )\n\n watch(\n () => showNotifications.value,\n async () => {\n if (!showNotifications.value && unreadNotificationCount.value > 0) {\n await store.dispatch.alerts.markMyNotificationsRead()\n }\n }\n )\n\n function clickHamburger() {\n drawerOpen.value = !drawerOpen.value\n }\n\n const mini = computed(() => ctx.root.$vuetify.breakpoint.smAndDown)\n\n const isCurrentRoutePublic = computed(() =>\n ctx.root.$route.matched.some((r) => (r.meta as RouteMeta).isPublic)\n )\n\n watch(\n () => now.value,\n async () => {\n if (isAuthenticated.value) {\n if (userHasBeenSeenThisTimePeriod.value) {\n store.commit.updateUserLastSeen(null)\n userHasBeenSeenThisTimePeriod.value = false\n } else if (userInactiveMS.value >= 60 * 60 * 1000) {\n store.commit.authorization.clearCurrentCredentials()\n\n if (ctx.root.$route.fullPath !== '/') {\n await ctx.root.$router.push('/') //see #2787 - redirect to home on logout.\n }\n store.commit.errors.addError({\n item: {\n message: 'You have been logged out because of inactivity',\n } as UpwardExceptionResult,\n })\n\n return\n }\n\n if (refreshTime.value && now.value >= refreshTime.value) {\n store.dispatch.authorization.refreshToken()\n }\n }\n }\n )\n\n function watchForActivity() {\n const onActivity = () => (userHasBeenSeenThisTimePeriod.value = true)\n\n document.addEventListener('mousemove', onActivity, false)\n document.addEventListener('mousedown', onActivity, false)\n document.addEventListener('keypress', onActivity, false)\n document.addEventListener('touchmove', onActivity, false)\n }\n\n /**\n * #2031 brings in a requirement that the sidebar menu vary based on being on the admin dashboard\n *\n */\n const sideBarFlavor = computed<'regular' | 'dashboard'>(() => {\n if (isCurrentUserAnAdmin.value) {\n return 'dashboard'\n }\n return 'regular'\n })\n\n onErrorCaptured((err: any) => {\n // Validation result object\n const validationResult = convertToVerificationDetails(err)\n\n if (\n validationResult &&\n validationResult.data &&\n validationResult.data.brokenRules &&\n validationResult.data.brokenRules.length\n ) {\n store.commit.errors.addValidationError({ item: validationResult.data! })\n return false // Stop propagation\n }\n\n // Rest service result object\n const genericResult = convertToRestServiceResult(err)\n\n if (genericResult !== null && genericResult.errorObject !== null) {\n store.commit.errors.addError({ item: genericResult.errorObject })\n return false // Stop propagation\n }\n\n const generalError =\n typeof err === 'object' && err !== null && 'innerException' in err ? (err as UpwardError) : null\n\n // Unknown\n store.commit.errors.addError({\n item: {\n message: 'The following error occurred',\n errors: [\n generalError ??\n ({\n message: `${err}`,\n } as UpwardError),\n ],\n } as UpwardExceptionResult,\n })\n\n return true\n })\n\n //this is from the SWRefreshMixin mixin that is not actually being shared anymore\n const refreshing = ref(false)\n const registration = ref(null)\n const updateExists = ref(false)\n\n function setServiceWorkerListener() {\n // Listen for our custom event from the SW registration\n document.addEventListener('swUpdated', updateAvailable, { once: true })\n\n if (navigator && navigator.serviceWorker) {\n // Prevent multiple refreshes\n navigator.serviceWorker.addEventListener('controllerchange', () => {\n if (refreshing.value) return\n refreshing.value = true\n // Here the actual reload of the page occurs\n window.location.reload()\n })\n }\n }\n\n // Store the SW registration so we can send it a message\n // We use `updateExists` to control whatever alert, toast, dialog, etc we want to use\n // To alert the user there is an update they need to refresh for\n function updateAvailable(event: any) {\n store.commit.authorization.setCodeReloadRequired({ val: true })\n registration.value = event.detail\n updateExists.value = true\n }\n\n // Called when the user accepts the update\n function refreshApp() {\n updateExists.value = false\n // Make sure we only send a 'skip waiting' message if the SW is waiting\n //@ts-ignore\n if (!registration.value || !registration.value.waiting) return\n // send message to SW to skip the waiting and activate the new SW\n //@ts-ignore\n registration.value.waiting.postMessage({ type: 'SKIP_WAITING' })\n }\n //end SWRefreshMixin mixin code\n\n //this was in the created() method under the class style\n if (ctx.root.$route.query.token) {\n //User is trying to login using a passthrough token from another app.\n //Clear any old credentials.\n store.commit.authorization.clearCurrentCredentials()\n } else {\n store.dispatch.startTimekeeping(false)\n store.dispatch.authorization.tryLoadSavedToken()\n watchForActivity()\n setServiceWorkerListener()\n }\n\n return {\n isCurrentRoutePublic,\n codeReloadRequired,\n isAuthenticated,\n isImpersonated,\n showNotifications,\n drawerOpen,\n mini,\n sideBarFlavor,\n updateExists,\n clickHamburger,\n clickNotification,\n refreshApp,\n }\n },\n})\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!./MainApp.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!./MainApp.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MainApp.vue?vue&type=template&id=3c033654&scoped=true&\"\nimport script from \"./MainApp.vue?vue&type=script&lang=ts&\"\nexport * from \"./MainApp.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MainApp.vue?vue&type=style&index=0&id=3c033654&lang=scss&scoped=true&\"\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 \"3c033654\",\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 { VAppBar } from 'vuetify/lib/components/VAppBar';\nimport { VFooter } from 'vuetify/lib/components/VFooter';\nimport { VMain } from 'vuetify/lib/components/VMain';\nimport { VNavigationDrawer } from 'vuetify/lib/components/VNavigationDrawer';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\ninstallComponents(component, {VApp,VAppBar,VFooter,VMain,VNavigationDrawer,VSnackbar})\n","\n\n\n\n\nimport { defineComponent, computed } from '@vue/composition-api'\nimport CoachApp from '@/CoachApp.vue'\nimport MainApp from '@/MainApp.vue'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'App',\n components: { CoachApp, MainApp },\n setup(props, ctx) {\n const isCurrentUserASuperUser = computed(() => store.getters.authorization.isCurrentUserASuperUser)\n const userToken = computed(() => store.getters.authorization.userData)\n const isAuthenticated = computed(() => store.getters.authorization.isAuthenticated)\n const isMultiAccountUser = computed(() => store.getters.authorization.isMultiAccountUser)\n const displayComponent = computed(() => {\n if (ctx.root.$router.currentRoute.path.indexOf('/allaccess/') === 0) {\n return CoachApp\n }\n\n if (isCurrentUserASuperUser.value || !isAuthenticated.value || isMultiAccountUser.value) {\n return MainApp\n }\n\n redirect()\n })\n\n function redirect() {\n const url = `${process.env.VUE_APP_URL_MOBILE_REDIRECT}?token=${encodeURIComponent(\n userToken.value ?? ''\n )}`\n store.commit.authorization.clearCurrentCredentials()\n location.href = url\n }\n\n return { displayComponent }\n },\n})\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=1b59da75&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.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","/* tslint:disable:no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n cached() {\n console.log('Content has been cached for offline use.')\n },\n updated(registration) {\n console.log('New content is available; please refresh.')\n document.dispatchEvent(new CustomEvent('swUpdated', { detail: registration }))\n },\n offline() {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error(error) {\n console.error('Error during service worker registration:', error)\n },\n })\n}\n","import Vue from 'vue'\nimport Vuetify from 'vuetify/lib'\n\nVue.use(Vuetify)\n\nexport default new Vuetify({\n icons: {\n iconfont: 'fa',\n },\n theme: {\n themes: {\n light: {\n primary: '#0575AA',\n danger: '#dd4b39',\n },\n },\n },\n})\n","import 'core-js/stable'\nimport 'regenerator-runtime/runtime'\nimport Vue from 'vue'\n// keep import on store before any module that includes vuex\n// https://github.com/paroi-tech/direct-vuex (...consequence of these circular dependencies...)\nimport store from '@/store/index'\nimport App from '@/App.vue'\nimport router from '@/router/index'\nimport PortalVue from 'portal-vue'\nimport CompositionApi from '@vue/composition-api'\nVue.use(CompositionApi)\nimport '@/registerServiceWorker'\nimport vuetify from './plugins/vuetify'\n\nimport LogRocket from 'logrocket'\n\nif (process.env.VUE_APP_LOG_ROCKET_KEY) {\n LogRocket.init(process.env.VUE_APP_LOG_ROCKET_KEY, {\n network: {\n requestSanitizer: (request) => {\n // if the url contains 'authorization api calls'\n if (request.url.toLowerCase().indexOf('api/authorization') !== -1) {\n // ignore the request response pair\n return null\n }\n\n // otherwise log the request normally\n return request\n },\n },\n })\n}\n\nVue.config.productionTip = false\n\nVue.use(PortalVue)\nnew Vue({\n router,\n store: store.original,\n vuetify,\n render: (h) => h(App),\n}).$mount('#app')\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlayerConflictListElement.vue?vue&type=style&index=0&id=5893d116&scoped=true&lang=scss&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameModal.vue?vue&type=style&index=0&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"vertical-nav-tabs\"},[_vm._m(0),_c('ul',{staticClass:\"nav flex-column pl-0\"},[_vm._l((_vm.tabs),function(tab,i){return _c('li',{key:i,class:['nav-item', { 'hover-bg-white': !tab.tabs }, { active: _vm.IsOnRoute(_vm.$route, tab.to) }]},[(tab.tabs)?[_c('a',{class:['nav-link', 'py-3', 'hover-bg-white', 'open', 'inner-menu'],on:{\"click\":function($event){return _vm.toggleHidden($event.currentTarget)}}},[_vm._m(1,true),_vm._v(\" \"+_vm._s(tab.text)+\" \")]),_c('ul',[_c('li',_vm._l((tab.tabs),function(tab2,i2){return _c('menu-tab',{key:(\"menu2-\" + i2),attrs:{\"is-on-route\":_vm.IsOnRoute,\"tab\":tab2}})}),1)])]:_c('menu-tab',{attrs:{\"is-on-route\":_vm.IsOnRoute,\"tab\":tab}})],2)}),_c('li',{staticClass:\"nav-item flex-grow-1\"})],2)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',[_c('i',{staticClass:\"fa fa-chevron-right\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('small',{staticClass:\"pr-1\"},[_c('i',{staticClass:\"fa fa-chevron-right icon-for-closed\"}),_c('i',{staticClass:\"fa fa-chevron-down icon-for-open\"})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.tab.to)?_c('router-link',{class:[\n 'nav-link',\n 'py-3 pr-0',\n 'hover-bg-white',\n { 'alt-router-link-active': _vm.IsOnRoute(_vm.$route, _vm.tab.to) } ],attrs:{\"to\":_vm.tab.to}},[_vm._v(\" \"+_vm._s(_vm.tab.text)+\" \")]):_c('a',{staticClass:\"nav-link py-3\",attrs:{\"href\":\"javascript: void(0);\"}},[_vm._v(\" \"+_vm._s(_vm.tab.text)+\" \")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport { VerticalTabValue } from '@/lib/support/components/VerticalTabs/VerticalTabValue'\nimport { Route } from 'vue-router'\nimport { RouteResolver } from '@/lib/support/components/VerticalTabs/RouteResolver'\n\nexport default defineComponent({\n name: 'MenuTab',\n props: {\n tab: { type: Object as PropType, required: true },\n IsOnRoute: {\n type: Function as PropType,\n required: false,\n default: ($route: Route, to: string) => $route.path.indexOf(to) !== -1,\n },\n },\n})\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!./MenuTab.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!./MenuTab.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MenuTab.vue?vue&type=template&id=3666e127&scoped=true&\"\nimport script from \"./MenuTab.vue?vue&type=script&lang=ts&\"\nexport * from \"./MenuTab.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MenuTab.vue?vue&type=style&index=0&id=3666e127&lang=scss&scoped=true&\"\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 \"3666e127\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, PropType } from '@vue/composition-api'\nimport { Route } from 'vue-router'\nimport { RouteResolver } from '@/lib/support/components/VerticalTabs/RouteResolver'\nimport { VerticalTabValue } from '@/lib/support/components/VerticalTabs/VerticalTabValue'\nimport MenuTab from '@/components/MenuTab.vue'\n\nexport default defineComponent({\n name: 'VerticalTabs',\n components: {\n MenuTab,\n },\n props: {\n tabs: { type: Array as PropType, required: true },\n IsOnRoute: {\n type: Function as PropType,\n required: false,\n default: ($route: Route, to: string) => $route?.path?.indexOf(to ?? '*never*') !== -1,\n },\n },\n setup() {\n /**\n * Working on the element, class keeping state since menu doesn't have\n * unique ids\n * @param tabElement\n */\n function toggleHidden(tabElement: HTMLElement) {\n if (tabElement.classList.contains('closed')) {\n tabElement.classList.remove('closed')\n tabElement.classList.add('open')\n } else {\n tabElement.classList.remove('open')\n tabElement.classList.add('closed')\n }\n }\n\n return {\n toggleHidden,\n }\n },\n})\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!./VerticalTabs.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!./VerticalTabs.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VerticalTabs.vue?vue&type=template&id=0591bd83&scoped=true&\"\nimport script from \"./VerticalTabs.vue?vue&type=script&lang=ts&\"\nexport * from \"./VerticalTabs.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./VerticalTabs.vue?vue&type=style&index=0&id=0591bd83&lang=scss&scoped=true&\"\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 \"0591bd83\",\n null\n \n)\n\nexport default component.exports","import restService from '@/services/restService'\nimport { LeagueDivision } from '@/GeneratedTypes/LeagueDivision'\nimport { TypeProgramGameFormatInfo } from '@/GeneratedTypes/ListInfo/TypeProgramGameFormatInfo'\nimport { UpwardPracticePlanTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPracticePlanTypeID'\nimport { LeagueProgramGenderGradeInfo } from '@/GeneratedTypes/ListInfo/LeagueProgramGenderGradeInfo'\nimport { LeagueDivisionInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionInfo'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { LeagueDivisionExtendedInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionExtendedInfo'\nimport { LeagueDivisionStandingInfo } from '@/GeneratedTypes/ListInfo/LeagueDivisionStandingInfo'\n\nconst baseUrl = 'divisions/'\n\nconst retrieveByProgram = async (id: string, typeProgramId: string) => {\n const results = await restService.get(`${baseUrl}${id}/${typeProgramId}`)\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.retrieveByProgram')\n }\n}\n\nconst retrieveAll = async (id: string): Promise => {\n const results = await restService.get(`${baseUrl}${id}`)\n\n if (results.isSuccess && results.data) {\n return results.data\n }\n return null\n}\n\nconst retrieveGradeGenderList = async (id: string, typeProgramId: string) => {\n const results = await restService.get(\n `${baseUrl}${id}/${typeProgramId}/gradegenderlist`\n )\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.retrieveGradeGenderList')\n }\n}\n\nconst retrieveGameFormats = async (typeProgramId: string) => {\n const results = await restService.get(`${baseUrl}gameFormats/${typeProgramId}`)\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.retrieveGameFormats')\n }\n}\n\nconst retrievePracticePlans = async (typeProgramId: string) => {\n const results = await restService.get(\n `${baseUrl}practicePlans/${typeProgramId}`\n )\n\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.retrievePracticePlans')\n }\n}\n\nconst retrieveTemplate = async () => {\n const results = await restService.get(`${baseUrl}new`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.retrieveTemplate')\n }\n}\n\nconst retrievePreviousLeagueDivisions = async (id: string, account: string, typeProgramID: string) => {\n const results = await restService.get(\n `${baseUrl}${id}/${typeProgramID}/previous/${account}`\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.retrievePreviousLeagueDivisions')\n }\n}\n\nconst retrieveAllPreviousLeagueDivisions = async (id: string, account: string, programs: LeagueListItem) => {\n const cheerProgramId = programs.cheerProgramTypeID\n const sportProgramId = programs.programTypeID\n let sportDivisions!: LeagueDivisionInfo[] | null\n let cheerDivisions!: LeagueDivisionInfo[] | null\n\n if (sportProgramId) {\n sportDivisions = await retrievePreviousLeagueDivisions(id, account, sportProgramId)\n }\n if (cheerProgramId) {\n cheerDivisions = await retrievePreviousLeagueDivisions(id, account, cheerProgramId)\n }\n sportDivisions = sportDivisions || []\n cheerDivisions = cheerDivisions || []\n if (sportDivisions.length > 0 && cheerDivisions.length > 0) {\n return [...sportDivisions, ...cheerDivisions]\n } else if (sportDivisions.length > 0) {\n return sportDivisions\n } else if (cheerDivisions.length > 0) {\n return cheerDivisions\n } else {\n return []\n }\n}\n\nconst validateNew = async (division: LeagueDivision) => {\n const results = await restService.post(`${baseUrl}validate`, division)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.validateNew')\n }\n}\n\nconst validateExisting = async (id: string, division: LeagueDivision) => {\n const results = await restService.post(\n `${baseUrl}${id}/${division.typeProgramID}/${division.divisionID}/verificationDetails`,\n division\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.validateExisting')\n }\n}\n\nconst update = async (id: string, division: LeagueDivision, removePracticesOnExcludedDates: boolean) => {\n const results = await restService.put(\n `${baseUrl}${id}/${division.typeProgramID}/${division.divisionID}`,\n { ...division, removePracticesOnExcludedDates: removePracticesOnExcludedDates }\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.update')\n }\n}\n\nconst importAllDivisions = async (\n toLeagueId: UpwardLeagueIDType,\n fromLeagueId: UpwardLeagueIDType | null,\n account: string\n) => {\n const results = await restService.post(\n `${baseUrl}${toLeagueId}/copyfrom?sourceUpwID=${fromLeagueId}&overwrite=true&accountNumber=${account}`,\n null\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.importAllDivisions')\n }\n}\n\nconst create = async (division: LeagueDivision) => {\n const results = await restService.post(`${baseUrl}`, division)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.create')\n }\n}\n\nconst remove = async (id: string, typeProgramId: string, divisionId: number) => {\n const results = await restService.delete(`${baseUrl}${id}/${typeProgramId}/${divisionId}`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.remove')\n }\n}\n\nconst runPlayerDraft = async (\n id: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number,\n draftingMode: string,\n practiceNightsFirst: boolean\n) => {\n const results = await restService.post(\n `${baseUrl}${id}/${typeProgramId}/${divisionId}/runPlayerDraft`,\n {\n draftingMode: draftingMode,\n practiceNightsFirst: practiceNightsFirst,\n }\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.runPlayerDraft')\n }\n}\n\nasync function retrieveSummaryInfo(id: UpwardLeagueIDType, typeProgramId: string, divisionId: number) {\n const results = await restService.get(\n `${baseUrl}${id}/${typeProgramId}/${divisionId}/extendedInfo`,\n {}\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.retrieveSummaryInfo')\n }\n}\n\nconst retrieveStandingByDivision = async (\n id: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number\n) => {\n const results = await restService.get(\n `${baseUrl}${id}/${typeProgramId}/${divisionId}/getDivisionStandings`\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in divisionsClient.retrievePreviousLeagueDivisions')\n }\n}\n\nexport default {\n retrieveAll,\n retrieveByProgram,\n retrieveGameFormats,\n retrievePracticePlans,\n retrieveGradeGenderList,\n retrieveAllPreviousLeagueDivisions,\n retrieveTemplate,\n remove,\n validateExisting,\n validateNew,\n update,\n create,\n importAllDivisions,\n runPlayerDraft,\n retrieveSummaryInfo,\n retrieveStandingByDivision,\n}\n","import { namespace as authNamespace, getterNames as authGetterName } from '@/store/authorization'\n\nexport const uniqueUserIdCheck = (rootGetters: any) => {\n let uniqueUserId = rootGetters[`${authNamespace}/${authGetterName.userData}`]\n const account = rootGetters[`${authNamespace}/${authGetterName.firstAccountNumber}`]\n uniqueUserId = uniqueUserId.replace(/[^a-zA-Z0-9 ]/g, '')\n if (!uniqueUserId || uniqueUserId == '') {\n throw new Error('cannot proceed without uniqueUserId')\n } else {\n return `${account}.${uniqueUserId}`\n }\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ButtonGroup.vue?vue&type=style&index=0&id=7960fd7e&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VerticalTabs.vue?vue&type=style&index=0&id=0591bd83&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"upward-number-input\"},[_c('text-like-wrapper',{attrs:{\"append-icon\":_vm.appendIcon,\"enabled\":_vm.enabled,\"id\":_vm.id,\"label\":_vm.label,\"sub-label-inline\":_vm.subLabelInline,\"sub-label\":_vm.subLabel,\"prepend-icon\":_vm.prependIcon,\"required\":_vm.required,\"vee-validate-rules\":_vm.VeeValidateRules,\"sub-text\":_vm.subText},on:{\"icon-click\":_vm.iconClick},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar classes = ref.classes;\nreturn [_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],staticClass:\"form-control\",attrs:{\"type\":\"number\",\"required\":_vm.required,\"step\":_vm.spinStep,\"min\":\"0\",\"placeholder\":_vm.placeholder},domProps:{\"value\":(_vm.internalValue)},on:{\"change\":_vm.handleChange,\"keyup\":_vm.handleKeyUp,\"input\":function($event){if($event.target.composing){ return; }_vm.internalValue=$event.target.value}}})]}}])})],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\nimport { defineComponent, watch } from '@vue/composition-api'\nimport { getProps, useTextlike } from '@/composables/TextLike'\nimport TextLikeWrapper from '@/elements/TextLikeWrapper.vue'\n\nexport default defineComponent({\n name: 'NumberInput',\n components: {\n TextLikeWrapper,\n },\n props: {\n value: { default: 0, type: Number, required: false },\n max: { default: Number.MAX_VALUE, type: Number, required: false },\n min: { default: Number.MIN_VALUE, type: Number, required: false },\n placeholder: { type: String, default: '', required: false },\n showSpinButton: { default: true, type: Boolean, required: false },\n changeOnKeyUp: { default: false, type: Boolean, required: false },\n spinStep: { default: 0, type: Number, required: false },\n ...getProps(),\n },\n setup(props, ctx) {\n const { iconClick, internalValue } = useTextlike(props, ctx)\n\n internalValue.value = convertToString(props.value)\n\n function convertToString(val: number | null) {\n return val === null || isNaN(val) ? '' : val.toFixed(0)\n }\n\n function convertToNumber(val: string): number | null {\n const valueAsNumber = Math.round(Number(val) * 100) / 100\n\n if (isNaN(valueAsNumber)) {\n return null\n }\n\n return valueAsNumber\n }\n\n function handleChange() {\n const valueAsNumber = convertToNumber(internalValue.value ?? '')\n ctx.emit('input', valueAsNumber)\n ctx.emit('change', valueAsNumber)\n }\n\n function handleKeyUp() {\n const valueAsNumber = convertToNumber(internalValue.value ?? '')\n ctx.emit('keyup', valueAsNumber)\n if (!props.changeOnKeyUp) return\n handleChange()\n }\n\n watch(\n () => props.value,\n () => {\n internalValue.value = convertToString(props.value)\n }\n )\n\n return {\n iconClick,\n internalValue,\n handleChange,\n handleKeyUp,\n }\n },\n})\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!./NumberInput.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!./NumberInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./NumberInput.vue?vue&type=template&id=3f8b1c1e&\"\nimport script from \"./NumberInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./NumberInput.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./NumberInput.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","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!./PromoCardOverflowWarning.vue?vue&type=style&index=0&id=5e673422&scoped=true&lang=css&\"","import { LeagueProgram } from '@/GeneratedTypes/LeagueProgram'\nimport programsClient from '@/clients/programsClient'\nimport { ImportProductMappingInfo } from '@/GeneratedTypes/ListInfo/ImportProductMappingInfo'\nimport { LeagueVolunteer } from '@/GeneratedTypes/LeagueVolunteer'\nimport { CoachProduct } from 'src/GeneratedTypes/CoachProduct'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nexport function getEmptyLeagueProgram(): LeagueProgram {\n return {\n typeProgramID: '',\n approveAdminAddedVolunteers: false,\n approveQuickAddVolunteers: false,\n\n capacity: 0,\n capacityMessage: '',\n earlyRegistrationFee: 0,\n gradesByGender: [],\n isEarlyFeeRegistration: false,\n noLimitsDraft: false,\n\n registrationCapacitiesByGradeGender: [],\n registrationFee: 0,\n freeEarlyRegistrationFeeConfirmed: false,\n freeRegistrationFeeConfirmed: false,\n }\n}\n\n/**\n * Returns if a program has a given grade and gender.\n * @param lp\n * @param gender\n * @param grade\n * @constructor\n */\nexport function ProgramHasGradeAndGender(lp: LeagueProgram, gender: string, grade: string) {\n const x = lp.gradesByGender?.find((x) => x.gender == gender && x.typeGradeID == grade)\n return x\n}\n\nexport function getProducts(volunteerTemplate: LeagueVolunteer, lp: LeagueProgram): CoachProduct[] {\n const p = volunteerTemplate.coachPreferences?.programs?.find((p) => p.typeProgramID == lp.typeProgramID)\n ?.products\n return p || []\n}\n\nexport const isCheerProgram = (program: string) => program && isCheer(program)\n\nexport interface LeagueProductMapping {\n leagueProductMappings: ImportProductMappingInfo[]\n columnNames: string[]\n}\n\nexport async function leagueProductImportMapping(upwId: string): Promise {\n // fetch the mapping of the import column names to ids for the products on this league\n let uniqueColumnNames: string[] = []\n const mappings = await programsClient.retrieveImportProductMapping(upwId)\n if (mappings) {\n uniqueColumnNames = [...new Set(mappings.map((p) => p.importColumnName))] as string[]\n }\n return {\n leagueProductMappings: mappings || ([] as ImportProductMappingInfo[]),\n columnNames: uniqueColumnNames,\n }\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Card.vue?vue&type=style&index=0&id=5f23d5e7&lang=scss&scoped=true&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrderRollup.vue?vue&type=style&index=0&id=4fd76db8&lang=scss&scoped=true&\"","import { League } from '@/GeneratedTypes/League'\nimport { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\n\nexport type LeagueIDType = number\nexport type UpwardLeagueIDType = string\n\nexport function getEmptyLeague(): League {\n return {\n productOfferingConfig: null,\n firstEvalDate: new Date(),\n evalDescription: '',\n firstPracticeDate: new Date(),\n firstGameDate: new Date(),\n seasonEndDate: new Date(),\n leagueDirectorPartnerID: 0,\n allowCarpoolLinks: false,\n carPoolLinkLabelOverride: '',\n allowCoachLinks: false,\n allowPracticeNightExclusions: false,\n allowAssistantCoachLinks: false,\n id: 0,\n typeLeagueID: '',\n typeProductGroupID: '',\n leagueName: '',\n publicDisplayName: '',\n upwardLeagueID: '',\n registrationBeginDate: new Date(),\n registrationEndDate: new Date(),\n lateDate: new Date(),\n typeSystemsAccessID: '',\n isPrivate: false,\n bailedReason: '',\n isMailIn: false,\n isOPRLeague: false,\n otherRegistrationVendorName: '',\n leagueRegistrationURL: '',\n typeCountryID: 'US',\n leagueFinderMessage: '',\n programMissionObjective: '',\n typeTimezoneID: '',\n typeDevotionTrackID: 'VIRTUES',\n awardsOrderDate: new Date(),\n hideTeamPageRoster: false,\n hideCoachEmailOnTeamPage: false,\n hideCoachPhoneOnTeamPage: false,\n hideAssistantCoachEmailOnTeamPage: true,\n hideAssistantCoachPhoneOnTeamPage: true,\n hideScheduleOnTeamPage: false,\n hidePracticeScheduleOnTeamPage: false,\n defaultTypePaymentMethodID: '',\n useInternationalDateFormat: false,\n fromEmailAddress: '',\n fromEmailDisplayName: '',\n registrationInfo: null,\n accounts: [],\n programs: [],\n practiceNights: null,\n playerUDFs: null,\n roles: null,\n partnerContact: getEmptyContact(),\n canEdit: true,\n canEditReason: null,\n optOutFanGear: false,\n leagueFinderURLOverride: null,\n requestRiskMitigationInfo: false,\n selectSportName: null,\n hideRosterOnSportsApp: false,\n hideScheduleOnSportsApp: false,\n hidePracticeScheduleOnSportsApp: false,\n ageCutoffDate: null,\n gradeDescriptions: [],\n hideHeadCoachLabel: false,\n }\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GradeGenderPicker.vue?vue&type=style&index=0&id=b43ca4ec&lang=scss&scoped=true&\"","import * as gradeStore from '@/store/gradeTypes'\n\nfunction getAllGrades(): string[] {\n return gradeStore.gradeTypes.state.items.map((x) => x.upwardTypeID!)\n}\n\nfunction getAllGradeDescriptions(): string[] {\n return gradeStore.gradeTypes.state.items.map((x) => x.description!)\n}\n\nfunction getAllAges(): string[] {\n return gradeStore.gradeTypes.state.items.map((x) => x.ageByCutoff!.toString())\n}\n\nexport const initialGrades: string[] = ['K5', '1st', '2nd', '3rd', '4th', '5th']\n\nexport function getGrades(includeInvalid?: boolean): string[] {\n if (includeInvalid) {\n return ['Invalid', ...getAllGrades()]\n }\n return getAllGrades()\n}\n\nexport function getGradeDescriptions(includeBlank?: boolean): string[] {\n if (includeBlank) {\n return ['', ...getAllGradeDescriptions()]\n }\n return getAllGradeDescriptions()\n}\n\nexport function getAges(includeInvalid?: boolean): string[] {\n if (includeInvalid) {\n return ['Invalid', ...getAllAges()]\n }\n return getAllAges()\n}\n\nexport function getDefaultGrades(includeInvalid?: boolean): string[] {\n if (includeInvalid) {\n return ['Invalid', ...initialGrades]\n }\n return initialGrades\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ValidationProvider',{attrs:{\"rules\":_vm.VeeValidateRules},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nvar classes = ref.classes;\nreturn [_c('div',{staticClass:\"form-group\"},[_c('input-label',{attrs:{\"label\":_vm.label,\"inline\":true,\"required\":_vm.required,\"for\":_vm.id,\"sub-label\":_vm.subLabel,\"sub-label-inline\":_vm.subLabelInline}}),(_vm.prependIcon)?_c('div',{staticClass:\"input-group-prepend\"},[_c('span',{staticClass:\"input-group-text\"},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.prependIcon})])]):_vm._e(),_c('div',{staticClass:\"input-group\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.internalValue),expression:\"internalValue\"}],staticClass:\"form-control\",class:classes,attrs:{\"id\":_vm.elementId,\"disabled\":!_vm.enabled,\"name\":_vm.name,\"tabindex\":_vm.tabIndex},on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.internalValue=$event.target.multiple ? $$selectedVal : $$selectedVal[0]},_vm.handleChange]}},[(_vm.showBlankItem)?_c('option',{attrs:{\"disabled\":_vm.required},domProps:{\"value\":_vm.blankItemValue}},[_vm._v(\" \"+_vm._s(_vm.blankItemText)+\" \")]):_vm._e(),_vm._l((_vm.itemsList),function(item,index){return _c('option',{key:_vm.getOptionKey(item, index),domProps:{\"value\":_vm.getOptionValue(item, index)}},[_vm._v(\" \"+_vm._s(_vm.getOptionText(item))+\" \")])})],2)]),(_vm.appendIcon)?_c('div',{staticClass:\"input-group-append\"},[_c('span',{staticClass:\"input-group-text\"},[_c('i',{staticClass:\"fa\",class:'fa-' + _vm.appendIcon})])]):_vm._e(),_c('div',[(errors[0])?_c('span',{staticClass:\"inline-error\"},[_vm._v(_vm._s(errors[0]))]):_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\nimport { defineComponent, computed, ref, watch } from '@vue/composition-api'\nimport { ValidationProvider } from 'vee-validate'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport uuid from 'uuid'\nimport { ComponentArgumentRuntimeException } from '@/lib/components/exceptions/ComponentArgumentRuntimeException'\nimport { getProps, useSelectList } from '@/composables/SelectListProperties'\n\nexport default defineComponent({\n name: 'SelectInput',\n components: {\n ValidationProvider,\n InputLabel,\n },\n props: {\n label: { type: String, default: '', required: false },\n tabIndex: { type: String, default: '', required: false },\n required: { type: Boolean, default: false, required: false },\n enabled: { type: Boolean, default: true, required: false },\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n id: { type: String, default: '', required: false },\n value: { default: null, required: true },\n blankItemText: { type: String, default: '', required: false },\n blankItemValue: { default: null, required: false },\n showBlankItem: { type: Boolean, default: false, required: false },\n name: { type: String, default: '', required: false },\n subLabel: { type: String, default: '', required: false },\n subLabelInline: { type: Boolean, default: false, required: false },\n VeeValidateRules: { type: String, default: '', required: false },\n ...getProps(),\n },\n setup(props, ctx) {\n const { getOptionValue, getOptionKey, getOptionText } = useSelectList(props)\n const guid = ref(uuid.v4())\n const internalValue = ref(props.value)\n\n const elementId = computed(() => props.id || `select-${guid.value}`)\n\n function handleChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n watch(\n () => props.value,\n () => {\n if (internalValue.value !== props.value) {\n internalValue.value = props.value\n }\n },\n { deep: true, immediate: true }\n )\n\n function assertItemListType() {\n if (!Array.isArray(props.itemsList) && !(props.itemsList instanceof Object)) {\n throw new ComponentArgumentRuntimeException(\n `Select Input ${props.name || props.label} should have an item list of type Array or Object`\n )\n }\n }\n\n watch(\n () => props.itemsList,\n () => {\n assertItemListType()\n },\n { immediate: true }\n )\n\n return {\n internalValue,\n elementId,\n handleChange,\n getOptionValue,\n getOptionKey,\n getOptionText,\n }\n },\n})\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!./SelectInput.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!./SelectInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SelectInput.vue?vue&type=template&id=245abcc7&\"\nimport script from \"./SelectInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./SelectInput.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('div',{staticClass:\"accordion-root\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\nimport { defineComponent, reactive, provide } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'Accordion',\n setup() {\n const accordionData = reactive({\n currentGuid: '',\n })\n\n provide('accordionData', accordionData)\n\n return {\n accordionData,\n }\n },\n})\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!./Accordion.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!./Accordion.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Accordion.vue?vue&type=template&id=2b1f5dc4&\"\nimport script from \"./Accordion.vue?vue&type=script&lang=ts&\"\nexport * from \"./Accordion.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","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShippingMethodSelect.vue?vue&type=style&index=0&id=ac1af7e8&lang=scss&scoped=true&\"","import { getProps as getBaseProps } from '@/composables/BaseInputWrapperProps'\nimport { ref, SetupContext } from '@vue/composition-api'\n\nexport const getProps = () => ({\n prependIcon: { type: String, default: '', required: false },\n appendIcon: { type: String, default: '', required: false },\n ...getBaseProps(),\n})\n\nexport function useTextlike(props: any, ctx: SetupContext) {\n const internalValue = ref()\n\n function iconClick() {\n ctx.emit('icon-click', true)\n }\n\n function change() {\n ctx.emit('change', internalValue.value)\n }\n\n function blur() {\n ctx.emit('blur', internalValue.value)\n }\n\n function input() {\n ctx.emit('input', internalValue.value)\n }\n\n function handleInput() {\n input()\n }\n\n function handleBlur() {\n blur()\n }\n\n function handleChange() {\n change()\n }\n\n return {\n iconClick,\n internalValue,\n handleInput,\n handleBlur,\n handleChange,\n input,\n blur,\n change,\n }\n}\n","import { PartnerChallengeProductConfig } from './PartnerChallengeProductConfig'\nimport { PartnerChallengeStartupProductConfig } from './PartnerChallengeStartupProductConfig'\nimport { PartnerChallengeUDFDefinition } from './PartnerChallengeUDFDefinition'\nimport { PartnerChallengeDiscountCode } from './PartnerChallengeDiscountCode'\n\nexport interface PartnerChallenge {\n id: number | null\n challengeName: string | null\n upwardChallengeID: string | null\n accountNumber: string | null\n coachPartnerContactID: number | null\n typeTimezoneID: string | null\n classDay: string | null\n classTime: string | null\n missionObjective: string | null\n registrationBeginDate: Date | null\n registrationEndDate: Date | null\n registrationFee: number | null\n earlyRegistrationEndDate: Date | null\n earlyRegistrationFee: number | null\n registrationStartMessage: string | null\n confirmationMessage: string | null\n devotionTrackCMSID: string | null\n hideFromLeagueFinder: boolean\n leagueFinderMessage: string | null\n participantEstimate: number | null\n productConfig: PartnerChallengeProductConfig[]\n startupProductConfig: PartnerChallengeStartupProductConfig[]\n udfs: PartnerChallengeUDFDefinition[]\n discountCodes: PartnerChallengeDiscountCode[]\n //inheritted from Challenge base table\n startDate: Date | null\n publicDisplayName: string | null\n contactPhone: string | null\n contactEmail: string | null\n //needed to choose the challenge type in UR\n typeLeagueID: string | null\n}\n\nexport function getEmptyPartnerChallenge(): PartnerChallenge {\n return {\n id: 0,\n challengeName: null,\n upwardChallengeID: null,\n typeTimezoneID: null,\n accountNumber: null,\n coachPartnerContactID: 0,\n classDay: null,\n classTime: '',\n missionObjective: '',\n registrationBeginDate: null,\n registrationEndDate: null,\n registrationFee: 0,\n earlyRegistrationEndDate: null,\n earlyRegistrationFee: 0,\n registrationStartMessage: null,\n confirmationMessage: null,\n devotionTrackCMSID: null,\n hideFromLeagueFinder: false,\n leagueFinderMessage: '',\n participantEstimate: 0,\n productConfig: [],\n startupProductConfig: [],\n udfs: [],\n discountCodes: [],\n startDate: null,\n publicDisplayName: null,\n contactPhone: null,\n contactEmail: null,\n typeLeagueID: null,\n }\n}\n","import { Contact } from '@/GeneratedTypes/Partner/Contact'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { getEmptyContact } from '@/lib/support/models/Partner/Contact/data'\nimport { ContactInfoToContact } from '@/services/contactService'\n\nexport interface RootContact extends Contact {\n id: number | null\n}\n\nexport function getEmptyRootContact(): RootContact {\n return { ...getEmptyContact(), id: 0 }\n}\n\nexport function ContactInfoToRootContact(contactInfo: ContactInfo): RootContact {\n return { ...ContactInfoToContact(contactInfo), id: contactInfo.id }\n}\n","import { defineMutations, defineActions, defineGetters } from 'direct-vuex'\nimport { Commit } from 'vuex'\n\nimport { PartnerChallenge, getEmptyPartnerChallenge } from '@/models/UpwardRunning/PartnerChallenge'\nimport { PartnerChallengeStartupProductConfig } from '@/models/UpwardRunning/PartnerChallengeStartupProductConfig'\nimport { PartnerChallengeProductConfig } from '@/models/UpwardRunning/PartnerChallengeProductConfig'\nimport { RootContact, getEmptyRootContact, ContactInfoToRootContact } from '@/models/Partner/RootContact'\nimport { RunningOrderProductInfo } from '@/GeneratedTypes/ListInfo/RunningOrderProductInfo'\nimport sessionObjectsClient from '@/clients/sessionObjectsClient'\nimport upwardRunningClient from '@/clients/upwardRunningClient'\nimport upwardRunningOrderClient from '@/clients/upwardRunningOrderClient'\nimport { uniqueUserIdCheck } from '@/store/helper'\nimport store, { moduleActionContext } from '@/store'\nimport partnersClient from '@/clients/partnersClient'\nimport { PartnerChallengeParticipantInfo } from '@/models/UpwardRunning/PartnerChallengeParticipantInfo'\nimport { PlayerInfoIDType } from '@/lib/support/models/LeaguePlayerInfo/data'\nimport { DataTablePagination, getEmptyDataTablePagination } from '@/models/DataTable/DataTableSelection'\nimport communicationsClient from '@/clients/communicationsClient'\n\nexport const NEW_PARTICIPANT = -1\nexport const NO_ACTIVE_PARTICIPANT = -2\n\nclass ParticipantRuntimeException extends Error {\n public innerException: Error | undefined = undefined\n constructor(message: string, exception?: Error) {\n super(message)\n this.message = message\n this.name = 'Participant Runtime Exception'\n this.innerException = exception\n }\n}\n\nclass ParticipantException extends Error {\n public innerException: Error | undefined = undefined\n constructor(message: string, exception?: Error) {\n super(message)\n this.message = message\n this.name = 'ParticipantException'\n this.innerException = exception\n }\n}\n\nfunction throwError(message: string, commit?: Commit, error?: Error) {\n commit && commit(mutationNames.setError, { message, error })\n throw new ParticipantException(message, error)\n}\ninterface UpwardRunningState {\n currentChallenge: PartnerChallenge\n currentPartnerContact: RootContact\n currentParticipant?: PartnerChallengeParticipantInfo\n runningOrderProducts: RunningOrderProductInfo[]\n participants: PartnerChallengeParticipantInfo[]\n lastError: string\n lastException: Error | null\n participantUnderEditId: PlayerInfoIDType\n pagination: DataTablePagination\n loading: boolean\n}\n\nexport interface UpwardRunningCache {\n challenge: PartnerChallenge\n contact: RootContact\n}\n\nconst upwardRunningState: UpwardRunningState = {\n currentChallenge: getEmptyPartnerChallenge(),\n currentPartnerContact: getEmptyRootContact(),\n currentParticipant: undefined,\n runningOrderProducts: [],\n participants: [],\n lastError: '',\n lastException: null,\n participantUnderEditId: NO_ACTIVE_PARTICIPANT,\n pagination: getEmptyDataTablePagination(),\n loading: false,\n}\n\nexport enum getterNames {\n currentParticipant = 'currentParticipant',\n currentChallenge = 'currentChallenge',\n currentPartnerContact = 'currentPartnerContact',\n runningOrderProducts = 'runningOrderProducts',\n participants = 'participants',\n pagination = 'pagination',\n loading = 'loading',\n}\n\nconst getterTree = defineGetters()({\n currentParticipant: (state) => state.currentParticipant,\n currentChallenge: (state) => state.currentChallenge,\n currentPartnerContact: (state) => state.currentPartnerContact,\n runningOrderProducts: (state) => state.runningOrderProducts,\n participants: (state) => state.participants,\n pagination: (state) => state.pagination,\n loading: (state) => state.loading,\n})\n\nexport enum mutationNames {\n setCurrentParticipant = 'setCurrentParticipant',\n setCurrentChallenge = 'setCurrentChallenge',\n setCurrentPartnerContact = 'setCurrentPartnerContact',\n setRunningOrderProducts = 'setRunningOrderProducts',\n setChallengeStartupConfig = 'setChallengeStartupConfig',\n setChallengeProductConfig = 'setChallengeProductConfig',\n setChallengeParticipantEstimate = 'setChallengeParticipantEstimate',\n setChallengeEarlyRegistrationFee = 'setChallengeEarlyRegistrationFee',\n setChallengeRegistrationFee = 'setChallengeRegistrationFee',\n clearCurrent = 'clearCurrent',\n setParticipants = 'setParticipants',\n setError = 'setError',\n setPagination = 'setPagination',\n clearCurrentParticipant = 'clearCurrentParticipant',\n setLoading = 'setLoading',\n}\nconst mutations = defineMutations()({\n setCurrentParticipant(state, { participant }: { participant: PartnerChallengeParticipantInfo }) {\n if (participant === undefined) {\n throw new ParticipantRuntimeException('participant undefined, check arguments.')\n }\n state.currentParticipant = participant\n },\n setCurrentChallenge(state, { challenge }: { challenge: PartnerChallenge }) {\n state.currentChallenge = challenge\n store.commit.leagueAbstraction.setCurrentRunning({ item: challenge })\n },\n setCurrentPartnerContact(state, { contact }: { contact: RootContact }) {\n state.currentPartnerContact = contact\n },\n setRunningOrderProducts(state, { products }: { products: RunningOrderProductInfo[] }) {\n state.runningOrderProducts = products\n },\n setChallengeStartupConfig(state, { products }: { products: PartnerChallengeStartupProductConfig[] }) {\n state.currentChallenge.startupProductConfig = products\n },\n setChallengeProductConfig(state, { products }: { products: PartnerChallengeProductConfig[] }) {\n state.currentChallenge.productConfig = products\n },\n setChallengeParticipantEstimate(state, { est }: { est: number }) {\n state.currentChallenge.participantEstimate = est\n },\n setChallengeEarlyRegistrationFee(state, { fee }: { fee: number }) {\n state.currentChallenge.earlyRegistrationFee = fee\n },\n setChallengeRegistrationFee(state, { fee }: { fee: number }) {\n state.currentChallenge.registrationFee = fee\n },\n clearCurrent(state) {\n state.currentChallenge = getEmptyPartnerChallenge()\n state.currentPartnerContact = getEmptyRootContact()\n },\n setParticipants(state: UpwardRunningState, { items }: { items: PartnerChallengeParticipantInfo[] }) {\n if (items === undefined) {\n throw new ParticipantRuntimeException('items undefined, check arguments.')\n }\n state.participants = items\n },\n setError(state, { error, exception }: { error: string; exception?: Error }) {\n if (error === undefined) {\n throw new ParticipantRuntimeException('Error undefined, check arguments.')\n }\n //@todo - propagate to general error -\n state.lastError = error\n state.lastException = exception || null\n console.warn('participant store', error, exception)\n },\n setPagination(state, { pagination }: { pagination: DataTablePagination }) {\n state.pagination = pagination\n },\n clearCurrentParticipant(state) {\n state.currentParticipant = undefined\n },\n setLoading(state, loading: boolean) {\n state.loading = loading\n },\n})\n\nexport enum actionNames {\n setCurrentParticipantByID = 'setCurrentParticipantByID',\n beginCreating = 'beginCreating',\n cache = 'cache',\n loadFromCache = 'loadFromCache',\n validate = 'validate',\n update = 'update',\n create = 'create',\n loadRunningOrderProducts = 'loadRunningOrderProducts',\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n loadRunningParticipants = 'loadRunningParticipants',\n}\n\nconst actions = defineActions({\n async create(\n { commit, rootGetters },\n { item }: { item: PartnerChallenge }\n ): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n //first save the contact and assign the DI if needed.\n const storeContact: RootContact = rootGetters[`${namespace}/${getterNames.currentPartnerContact}`]\n const savedContact = storeContact.id\n ? await partnersClient.updateAccountContact(item.accountNumber ?? '', storeContact.id, storeContact)\n : await partnersClient.createAccountContact(item.accountNumber ?? '', storeContact)\n item.coachPartnerContactID = savedContact?.id ?? 0\n commit(mutationNames.setCurrentPartnerContact, { contact: savedContact })\n const result = await upwardRunningClient.create(item)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrentChallenge, { challenge: result.data })\n await sessionObjectsClient.delete(`running.new.${uniqueUserId}`)\n await communicationsClient.setupURComms(result.data.upwardChallengeID!) //if we get here then this ID is not null\n return result.data\n }\n\n return null\n },\n async retrieveAndSetAsCurrent({ commit }, { id }: { id: string }): Promise {\n const result = await upwardRunningClient.retrieve(id)\n\n if (result) {\n const contact = await partnersClient.retrieveAccountContact(\n result.data?.accountNumber ?? '',\n result.data?.coachPartnerContactID ?? 0\n )\n commit(mutationNames.setCurrentPartnerContact, { contact })\n commit(mutationNames.setCurrentChallenge, { challenge: result.data })\n }\n\n return null\n },\n async update({ commit }, { challenge }: { challenge: PartnerChallenge }): Promise {\n const result = await upwardRunningClient.update(challenge.upwardChallengeID!, challenge)\n\n if (result.isSuccess && result.data) {\n commit(mutationNames.setCurrentChallenge, { challenge: result.data })\n return result.data\n }\n\n return null\n },\n async validate(\n { commit },\n { item, ruleSet = '' }: { item: PartnerChallenge; ruleSet: string }\n ): Promise {\n const isNew = !item.upwardChallengeID\n\n const validationResult = await (isNew\n ? upwardRunningClient.validateNew(item, ruleSet)\n : upwardRunningClient.validateExisting(item.upwardChallengeID!, item))\n\n if (!validationResult.isSuccess) {\n return false\n }\n\n commit(mutationNames.setCurrentChallenge, { challenge: validationResult.data!.model })\n return true\n },\n async cache(\n { commit, rootGetters },\n { challenge, contact }: { challenge: PartnerChallenge; contact: RootContact }\n ): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n\n const isNew = !challenge.upwardChallengeID\n const cacheKey = `running.${isNew ? `new.${uniqueUserId}` : challenge.upwardChallengeID}`\n const cacheResult = await sessionObjectsClient.createOrUpdate(cacheKey, {\n challenge: challenge,\n contact: contact,\n })\n\n if (!cacheResult.isSuccess) {\n return false\n }\n\n commit(mutationNames.setCurrentChallenge, { challenge })\n commit(mutationNames.setCurrentPartnerContact, { contact })\n return true\n },\n async loadFromCache({ commit, rootGetters }): Promise {\n const uniqueUserId = uniqueUserIdCheck(rootGetters)\n\n const result = await sessionObjectsClient.retrieve(`running.new.${uniqueUserId}`)\n\n if (!result.isSuccess) {\n return false\n }\n\n const cached = result.data!\n\n commit(mutationNames.setCurrentChallenge, { challenge: cached.challenge })\n commit(mutationNames.setCurrentPartnerContact, { contact: cached.contact })\n\n return true\n },\n async beginCreating(\n { commit, dispatch },\n {\n name,\n typeLeagueID,\n publicDisplayName,\n addToCache,\n }: {\n name: string\n typeLeagueID: string\n publicDisplayName: string\n addToCache: boolean\n }\n ): Promise {\n const challenge = getEmptyPartnerChallenge()\n let contact: RootContact | undefined = undefined\n\n //see if this person is already a contact on this account\n const contactsResult = await partnersClient.retrieveAccountContactsFullList(\n store.getters.authorization.activeAccount ?? undefined\n )\n\n console.log('TNT beginCreating.... result', contactsResult)\n\n if (contactsResult.isSuccess) {\n const matchedContact = contactsResult.data?.find(\n (x) => x.emailAddress == store.getters.upwardRunningAuth.urCreds?.emailAddress\n )\n if (matchedContact) {\n contact = ContactInfoToRootContact(matchedContact)\n }\n }\n\n console.log('TNT beginCreating... contact', contact)\n\n if (!contact) {\n console.log('TNT beginCreating... empty contact')\n contact = getEmptyRootContact()\n contact.emailAddress = store.getters.upwardRunningAuth.urCreds?.emailAddress ?? ''\n const nameParts = store.getters.upwardRunningAuth.urCreds?.displayName?.split(' ')\n contact.firstName = nameParts?.shift() ?? ''\n contact.lastName = nameParts?.join(' ') ?? ''\n }\n\n challenge.challengeName = name\n challenge.publicDisplayName = publicDisplayName\n challenge.typeLeagueID = typeLeagueID\n challenge.accountNumber = store.getters.authorization.activeAccount\n\n commit(mutationNames.setCurrentChallenge, { challenge })\n console.log('TNT beginCreating... comitting contact', contact)\n commit(mutationNames.setCurrentPartnerContact, { contact })\n\n if (addToCache) {\n await dispatch(actionNames.cache, { challenge: challenge, contact: contact })\n }\n\n return true\n },\n async loadRunningOrderProducts(\n { commit },\n { typeLeagueID, startDate }: { typeLeagueID: string; startDate: Date }\n ): Promise {\n const result = await upwardRunningOrderClient.getRunningOrderProductList(typeLeagueID, startDate)\n commit(mutationNames.setRunningOrderProducts, { products: result })\n return true\n },\n async loadRunningParticipants({ commit, state }, { upwardRunningId }) {\n try {\n if (state.lastLeagueLoaded != upwardRunningId) {\n commit('setLoading', true)\n const result = await upwardRunningClient.retrieveParticipants(upwardRunningId)\n\n commit(mutationNames.setParticipants, { items: result.data })\n }\n } catch (ex) {\n throwError('Error with the retrieval of participants', commit, ex)\n } finally {\n commit('setLoading', false)\n }\n },\n setCurrentParticipantByID(context, { id }: { id: PlayerInfoIDType }) {\n const { state, commit } = pactionContext(context)\n try {\n if (!state.participants) {\n throwError(\"Can't find an ID on an empty list of participants\", context.commit)\n return\n }\n // do we already have it as current item?\n if (\n state.participantUnderEditId == id &&\n state.currentParticipant &&\n state.currentParticipant.individualID == id\n ) {\n return\n }\n\n const index = state.participants.findIndex((y) => y.individualID == id)\n if (index >= 0) {\n commit.setCurrentParticipant({ participant: state.participants[index] })\n return\n }\n } catch (ex) {\n commit.clearCurrentParticipant()\n throwError(ex.message, context.commit, ex)\n }\n throwError(`Participant not current in edit ${id}`, context.commit)\n },\n})\n\nexport const namespace = 'upwardRunning'\n\nexport const upwardRunning = {\n namespaced: true as true,\n state: upwardRunningState,\n getters: getterTree,\n mutations,\n actions,\n}\nconst pactionContext = (context: any) => moduleActionContext(context, upwardRunning)\n","export enum TypeProductOption {\n 'INCLUDED' = 'INCLUDED',\n 'OPTIONAL' = 'OPTIONAL',\n 'NOTAVAILABLE' = 'NOTAVAILABLE',\n 'NOTSET' = '',\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WaitlistReport.vue?vue&type=style&index=0&id=5f199f69&scoped=true&lang=scss&\"","/**\n * Store contains minimum fields for at least camp and league. For league orders this simplifies\n * some of the special casing we use to make an order. Later, if this works, we might be able to\n * extend it elsewhere where basics like account number and league id are necessary.\n *\n */\nimport { defineMutations, defineGetters } from 'direct-vuex'\nimport store from '@/store'\nimport {\n campToAbstraction,\n connectToAbstraction,\n clinicToAbstraction,\n getEmptyLeagueAbstraction,\n LeagueAbstraction,\n leagueToAbstraction,\n runningToAbstraction,\n} from '@/models/LeagueAbstraction/LeagueAbstraction'\nimport { League } from '@/GeneratedTypes/League'\nimport { Camp } from '@/GeneratedTypes/Camp'\nimport { Connect } from '@/GeneratedTypes/Connect'\nimport { Clinic } from '@/GeneratedTypes/Clinic'\nimport { PartnerChallenge } from '@/models/UpwardRunning/PartnerChallenge'\nimport { UpwardProgramTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardProgramTypeID'\nimport { UpwardOpportunityTypes } from '@/lib/common/upwardOpportunityTypes'\nimport { LeagueTypes } from '@/lib/common/LeagueTypes'\nimport { RolesEnum } from '@/lib/support/models/LeagueVolunteer/data'\nimport { isCheer } from '@/lib/common/ProgramTypes'\n\nexport enum ProgramTypes {\n CAMP = 'CAMP',\n LEAGUE = 'LEAGUE',\n}\n\ninterface LeaguesState {\n currentItem: LeagueAbstraction\n hasCheer: boolean | null\n leagueUpwardProgramTypes: UpwardProgramTypeID[]\n programType: UpwardOpportunityTypes\n}\n\nfunction initState() {\n return {\n currentItem: getEmptyLeagueAbstraction(),\n hasCheer: null,\n leagueUpwardProgramTypes: [],\n programType: UpwardOpportunityTypes.LEAGUE,\n } as LeaguesState\n}\nconst leaguesState = initState()\n\n/**\n * mostly use the currentItem.\n */\nexport enum getterNames {\n currentItem = 'currentItem',\n hasCheer = 'hasCheer',\n shortPrograms = 'shortPrograms',\n isInPartnership = 'isInPartnership',\n userIsLeagueOwner = 'useIsLeagueOwner',\n leagueUpwardProgamTypes = 'leagueUpwardProgramTypeID',\n programType = 'programType',\n isUpwardSelect = 'isUpwardSelect',\n isByAge = 'isByAge',\n}\n\nconst getterTree = defineGetters()({\n currentItem: (state) => state.currentItem,\n hasCheer: (state): boolean => {\n if (state.currentItem.programs) {\n return state.currentItem.programs.length > 1\n } else {\n return false\n }\n },\n isInPartnership: (state) => {\n const accounts = state.currentItem.accounts\n if (accounts) {\n return accounts.length > 1\n }\n return false\n },\n userIsLeagueOwner: (state) => {\n //The user who is logged in is a member of the account that owns this league\n if (!getterTree.isInPartnership) return true\n const loggedInAccount = store.getters.authorization.firstAccountNumber\n const owner = state.currentItem.accounts?.find((a) => a.accountNumber == loggedInAccount && a.leagueOwner)\n if (owner) return true\n return false\n },\n shortPrograms: (state) =>\n state.currentItem.programs?.map((p) => {\n const cheer = 'Cheer'\n const typeId = p.typeProgramID\n .split(' ')\n .map((w) => w[0].toUpperCase() + w.substr(1).toLowerCase())\n .join(' ')\n return { label: isCheer(p.typeProgramID) ? cheer : typeId, id: p.typeProgramID }\n }) as { label: string; id: string }[],\n leagueUpwardProgramTypeID: (state) => {\n return getLeagueProgramTypes(state.currentItem)\n },\n programType: (state) => {\n return state.programType\n },\n refLabel: (state) => {\n return state.currentItem.roles?.find((x) => x.id == RolesEnum.REFEREE)?.description ?? 'Referee'\n },\n isUpwardSelect: (state) => {\n return state.currentItem.typeLeagueID === LeagueTypes.UPWARDSELECT\n },\n isByAge: (state) => {\n return state.currentItem.ageCutoffDate !== null\n },\n})\n\nexport enum leagueAbstractionMutationNames {\n setCurrentLeague = 'setCurrentLeague',\n setCurrentCamp = 'setCurrentCamp',\n setLeagueUpwardProgramTypes = 'setLeagueUpwardProgramTypes',\n}\n\nconst mutations = defineMutations()({\n setCurrentLeague(state, { item }: { item: League }) {\n state.currentItem = leagueToAbstraction(item)\n state.programType = UpwardOpportunityTypes.LEAGUE\n store.commit.gradeTypes.updateDescriptionsFromLeague({ descriptions: item.gradeDescriptions ?? [] })\n },\n setCurrentCamp(state, { item }: { item: Camp }) {\n state.currentItem = campToAbstraction(item)\n state.programType = UpwardOpportunityTypes.CAMP\n store.commit.gradeTypes.updateDescriptionsFromLeague({ descriptions: item.gradeDescriptions ?? [] })\n },\n setCurrentConnect(state, { item }: { item: Connect }) {\n state.currentItem = connectToAbstraction(item)\n state.programType = UpwardOpportunityTypes.CONNECT\n store.commit.gradeTypes.updateDescriptionsFromLeague({ descriptions: item.gradeDescriptions ?? [] })\n },\n setCurrentClinic(state, { item }: { item: Clinic }) {\n state.currentItem = clinicToAbstraction(item)\n state.programType = UpwardOpportunityTypes.CLINIC\n store.commit.gradeTypes.updateDescriptionsFromLeague({ descriptions: item.gradeDescriptions ?? [] })\n },\n setCurrentRunning(state, { item }: { item: PartnerChallenge }) {\n state.currentItem = runningToAbstraction(item)\n state.programType = UpwardOpportunityTypes.UPWARDRUNNING\n },\n clear(state) {\n Object.assign(state, initState())\n },\n})\n\nfunction getLeagueProgramTypes(item: LeagueAbstraction): UpwardProgramTypeID[] {\n const retval: UpwardProgramTypeID[] = []\n item.programs?.forEach((x) => {\n const prog = store.getters.programTypes.byUpwardTypeId(x.typeProgramID)\n if (prog) {\n retval.push(prog)\n }\n })\n return retval\n}\n\nexport const leagueAbstractionNamespace = 'leagueAbstraction'\n\nexport const leagueAbstraction = {\n namespaced: true as true,\n state: leaguesState,\n getters: getterTree,\n mutations,\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegistrationTransactionsPanel.vue?vue&type=style&index=0&lang=scss&\"","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!./ProductSelect.vue?vue&type=style&index=0&id=142f586a&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!./PlayerEvaluationEditGrid.vue?vue&type=style&index=0&lang=css&\"","import { GetterTree, MutationTree } from 'vuex'\nimport { RootState } from '@/store/rootState'\nimport upwardTypesClient from '@/clients/upwardTypesClient'\nimport * as genericUpwardTypes from '@/store/genericUpwardTypes'\nimport { UpwardGradeTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardGradeTypeID'\nimport { LeagueTypeGradeInfo } from 'src/GeneratedTypes/ListInfo/LeagueTypeGradeInfo'\nimport { defineActions } from 'direct-vuex'\n\nexport enum customGetterNames {\n getTypeIDByAge = 'getTypeIDByAge',\n}\n\nexport enum customMutationNames {\n updateDescriptionsFromLeague = 'updateDescriptionsFromLeague',\n}\n\nexport const getterNames = {\n ...genericUpwardTypes.getterNames,\n ...customGetterNames,\n}\n\nexport const mutationNames = {\n ...genericUpwardTypes.mutationNames,\n ...customMutationNames,\n}\n\nexport const actionNames = {\n ...genericUpwardTypes.actionNames,\n}\n\nconst generic = genericUpwardTypes.getGenericUpwardTypes(\n upwardTypesClient.retrieveGradeTypes\n)\n\nconst typeState: genericUpwardTypes.GenericTypeState = {\n items: [],\n}\n\nconst getterTree: GetterTree, RootState> = {\n ...generic.getterTree,\n [getterNames.getTypeIDByAge]: (state) => (age: number) =>\n state.items.find((x) => x.ageByCutoff == age) ?? null,\n}\n\nconst customMutations: MutationTree> = {\n [mutationNames.updateDescriptionsFromLeague](\n state,\n { descriptions }: { descriptions: LeagueTypeGradeInfo[] }\n ): void {\n const grades: UpwardGradeTypeID[] = state.items\n if (grades.length == descriptions.length) {\n descriptions.forEach((x) => {\n const grade = grades.find((g) => g.upwardTypeID == x.upwardTypeID)\n if (grade) {\n grade.description = x.description\n grade.alternateDescription = x.alternateDescription\n } else {\n throw new Error('League/Grade Description mismatch')\n }\n })\n } else {\n throw new Error('League/Grade Description length mismatch')\n }\n },\n}\n\nconst mutations: MutationTree> = {\n ...generic.mutations,\n ...customMutations,\n}\n\nconst actions = defineActions({\n ...generic.actions,\n})\n\nexport const namespace = 'gradeTypes'\n\nexport const gradeTypes = {\n namespaced: true as true,\n state: typeState,\n getters: getterTree,\n actions,\n mutations,\n}\n","/**\n * Rest Operations for invitations\n */\n\nimport restService from '@/services/restService'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\n\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { RoleIDToRoleName } from '@/views/Programs/Volunteers/ext/roleutils'\nimport { InviteContact } from '@/models/VolunteerManagement/Invitations/InviteContact'\nimport { ApplicationInvitation } from '@/GeneratedTypes/Authorize/ApplicationInvitation'\n\nconst baseUrl = 'invitations/'\nfunction ourURL() {\n return `${baseUrl}`\n}\n\nconst DEFAULT_APPLICATION_ID = 8 //no idea why\n\ninterface TextRoles {\n roleID: string\n}\n\nclass InvitePostParams {\n constructor({\n accountNumber,\n individualID,\n recipient,\n email,\n upwardLeagueID,\n phone,\n roles,\n }: {\n accountNumber: string\n individualID: number\n recipient: string\n email: string\n upwardLeagueID: UpwardLeagueIDType\n phone: string\n roles: TextRoles[]\n }) {\n this.accountNumber = accountNumber\n this.individualID = individualID\n this.recipient = recipient\n this.email = email\n this.upwardLeagueID = upwardLeagueID\n this.roles = roles\n this.phone = phone\n }\n id: string | null = null\n applicationID = DEFAULT_APPLICATION_ID\n accountNumber = '0'\n //** name of recipient\n recipient = ''\n //** email of recipient\n email = ''\n //** blank for our uses\n invitationMessage = ''\n //** individual id\n individualID = 0\n //** upward ID\n upwardLeagueID: UpwardLeagueIDType = ''\n //** phone\n phone = ''\n //** weirdly text roles.\n roles: TextRoles[] = []\n}\n\ninterface InviteArgs {\n //** UPW\n leagueID: UpwardLeagueIDType\n //** I think this comes off the contact info, nessesary to complete API\n\n invitations: InviteContact[]\n}\n\nclass InviteClientException extends GeneralError {\n name = 'Invite API Error'\n}\n\nexport default class inviteClient {\n /**\n * Sends or resends an invitation\n * @param args UPW### league and id\n * @return array of league volunteers from the league id\n */\n static async inviteVolunteers(args: InviteArgs): Promise {\n const emailInvites: InvitePostParams[] = []\n\n args.invitations.forEach((x) => {\n const roles = x.roles.map((u) => ({ roleID: RoleIDToRoleName(u) || '' })) || []\n emailInvites.push(\n new InvitePostParams({\n individualID: x.id,\n upwardLeagueID: args.leagueID,\n email: x.email,\n accountNumber: x.accountNumber,\n recipient: x.name,\n phone: x.phone,\n roles: roles.filter((r) => r.roleID),\n })\n )\n })\n\n const result = await restService.post(`${ourURL()}volunteer`, emailInvites)\n if (result.isSuccess) {\n return\n }\n\n throw new InviteClientException('Invite server error while sending email.')\n }\n\n /**\n * Sends or resends invitations with SMS\n * @param args UPW### league and id\n * @return array of league volunteers from the league id\n */\n static async inviteVolunteersWithSms(args: InviteArgs): Promise {\n const smsInvites: InvitePostParams[] = []\n\n args.invitations.forEach((x) => {\n const roles = x.roles.map((u) => ({ roleID: RoleIDToRoleName(u) || '' })) || []\n smsInvites.push(\n new InvitePostParams({\n individualID: x.id,\n upwardLeagueID: args.leagueID,\n email: x.email,\n accountNumber: x.accountNumber,\n recipient: x.name,\n phone: x.phone,\n roles: roles.filter((r) => r.roleID),\n })\n )\n })\n\n const result = await restService.post(`${ourURL()}sms`, smsInvites)\n if (result.isSuccess) {\n return\n }\n\n throw new InviteClientException('Invite server error while sending SMS.')\n }\n\n static async invitePartnerUser(\n email: string,\n accountNumber: string,\n recipient: string,\n role: string,\n message: string,\n phone: string,\n id: string | null\n ): Promise {\n const y: InvitePostParams[] = []\n\n y.push({\n id,\n applicationID: DEFAULT_APPLICATION_ID,\n accountNumber: accountNumber,\n recipient: recipient,\n email: email,\n invitationMessage: message,\n individualID: 0,\n upwardLeagueID: '',\n phone: phone,\n roles: [\n {\n roleID: 'Director',\n },\n ],\n })\n\n /*\n Task 4735 removed the data input role and now director is the only option. \n Some of the plumbing for \"roles\" needed to stay so RoleID gets populated with 'Director'. \n RoleID is now set to 'Director' instead of 'role' so the selection would default in AddUserModal.vue.\n */\n const x = await restService.post(`${ourURL()}${phone ? 'sms' : ''}`, y)\n if (x.isSuccess) {\n return\n }\n\n throw new InviteClientException('Invite server error communications error.')\n }\n\n static async getOpenPartnerInvitations(accountNumber: string): Promise {\n const x = await restService.get(`${ourURL()}open/${accountNumber}`)\n if (x.isSuccess) {\n return x.data?.filter((i) => (i.roles?.filter((r) => r.roleID == 'Director') ?? []).length > 0) ?? []\n }\n\n throw new InviteClientException('Invite server error communications error.')\n }\n\n static async deleteInvitation(invitationId: string): Promise {\n const x = await restService.delete(`${ourURL()}${invitationId}`)\n if (x.isSuccess) {\n return\n }\n\n throw new InviteClientException('Invite server error communications error.')\n }\n\n static async unwaitlist(leagueID: UpwardLeagueIDType, waitListID: number): Promise {\n try {\n const x = await restService.delete(`Registrations/waitlist/${leagueID}/${waitListID}`)\n if (x.isSuccess) {\n return\n }\n } catch {\n throw new InviteClientException('Could not remove entry from waitlist.')\n }\n\n throw new InviteClientException('Invite server error communications error.')\n }\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TeamCard.vue?vue&type=style&index=0&id=2a4e4e1f&lang=scss&scoped=true&\"","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!./StripeBalanceTransactionPanel.vue?vue&type=style&index=0&lang=css&\"","export const AddIconCssClass = 'fa fa-plus'\nexport const AddIcon = {\n name: 'AddIcon',\n data() {\n return {\n iconCssClass: AddIconCssClass,\n }\n },\n template: '',\n}\n\nexport const EditIconCssClass = 'fa fa-pencil-alt'\nexport const EditIcon = {\n name: 'EditIcon',\n data() {\n return {\n iconCssClass: EditIconCssClass,\n }\n },\n template: '',\n}\n\nexport const DeleteIconCssClass = 'fas fa-minus-circle'\nexport const DeleteIcon = {\n name: 'DeleteIcon',\n data() {\n return {\n iconCssClass: DeleteIconCssClass,\n }\n },\n template: '',\n}\n\nexport const SaveIconCssClass = 'fa fa-check'\nexport const SaveIcon = {\n name: 'SaveIcon',\n data() {\n return {\n iconCssClass: SaveIconCssClass,\n }\n },\n template: '',\n}\n\nexport const SuccessIconCssClass = 'fa fa-check'\nexport const SuccessIcon = {\n name: 'SuccessIcon',\n data() {\n return {\n iconCssClass: SuccessIconCssClass,\n }\n },\n template: '',\n}\n\nexport const CloneIconCssClass = 'far fa-clone'\nexport const CloneIcon = {\n name: 'CloneIcon',\n data() {\n return {\n iconCssClass: CloneIconCssClass,\n }\n },\n template: '',\n}\n\nexport const HelpIconCssClass = 'fa fa-question-circle'\nexport const HelpIcon = {\n name: 'HelpIcon',\n data() {\n return {\n iconCssClass: HelpIconCssClass,\n }\n },\n template: '',\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"promo-card-list\"},[(_vm.loading)?_c('div',[_c('loading')],1):[_vm._l((_vm.cards),function(card){return [_c('selector-card',{key:(\"card-\" + (card.productUniqueID)),staticClass:\"half-size\",attrs:{\"selectable\":\"\",\"is-selected\":_vm.isSelected(card)},on:{\"select\":function($event){return _vm.toggleCard(card)}},scopedSlots:_vm._u([{key:\"body\",fn:function(){return [_c('PromoCardDisplay',{attrs:{\"card\":card},on:{\"copy\":_vm.copyCard,\"edit\":_vm.editCard,\"remove\":_vm.removeCard}})]},proxy:true},{key:\"innerButton\",fn:function(){return [_vm._v(_vm._s((\"\" + (_vm.isSelected(card) ? 'Added' : 'Add to Order')))+\" \")]},proxy:true}],null,true)})]})]],2),_c('button',{staticClass:\"btn btn-success\",on:{\"click\":_vm.createNewCardClicked}},[_vm._v(\" + Create New Card \"),(_vm.loadingPromoCard)?_c('loading',{attrs:{\"is-small\":\"\"}}):_vm._e()],1),(_vm.isPromoCardCreateShowing)?_c('PromoCardModal',{attrs:{\"showing\":_vm.isPromoCardCreateShowing,\"value\":_vm.promocard,\"preview\":_vm.promoPreview},on:{\"closed\":_vm.promoCardClosed,\"update\":_vm.promoCardUpdated}}):_vm._e(),_c('ConfirmationModal',{attrs:{\"is-small\":\"\",\"show\":_vm.isPromoCardDeleteConfirmShowing,\"title\":\"Confirm Delete Promo Card\"},on:{\"onResponse\":_vm.deleteCardResponded}},[_vm._v(\" Are you sure you want to remove this card? \")])],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('Modal',{staticClass:\"promo-modal\",attrs:{\"title\":\"Edit Promo Card\",\"value\":_vm.modalIsVisible},on:{\"input\":_vm.close}},[[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row align-items-end\"},[_c('div',{staticClass:\"col-9 p-0\"},[_c('TextInput',{attrs:{\"maxlength\":\"50\",\"label\":\"Card Name\"},model:{value:(_vm.internalValue.name),callback:function ($$v) {_vm.$set(_vm.internalValue, \"name\", $$v)},expression:\"internalValue.name\"}})],1),_c('div',{staticClass:\"col-3 p-0\"},[_c('FormatHelpButton')],1)]),_c('div',{staticClass:\"row align-items-end justify-items-top\"},[_c('div',{staticClass:\"col-9 p-0\"},[_c('TextInput',{attrs:{\"maxlength\":\"256\",\"label\":\"QR Code URL (optional)\",\"subText\":\"Leave blank for no QR Code on front page. Use button to default to registration URL.\"},model:{value:(_vm.qrCodeURL),callback:function ($$v) {_vm.qrCodeURL=$$v},expression:\"qrCodeURL\"}})],1),_c('div',{staticClass:\"col-3 p-0 align-self-stretch\"},[_c('div',{staticClass:\"ml-2 mt-6 float-right\"},[_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":_vm.setQRDefault}},[_vm._v(\"Set to Registration URL\")])])])]),_c('div',{staticClass:\"row justify-content-end\"},[_c('div',{staticClass:\"col-6 p-2\"},[_c('PromoCardOverflowWarning',{attrs:{\"is-dirty\":_vm.dirty},model:{value:(_vm.contentOverflowing),callback:function ($$v) {_vm.contentOverflowing=$$v},expression:\"contentOverflowing\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-6\"},[_c('div',[_c('InputLabel',{attrs:{\"label\":\"Promo Card Preview\",\"sub-label\":\"(front & back)\",\"subLabelInline\":\"\"}})],1),_c('PreviewButton',{attrs:{\"loading\":_vm.fetchingPdf},on:{\"click\":_vm.doPreview}}),_c('iframe',{staticClass:\"preview\",attrs:{\"src\":_vm.url}})],1),_c('div',{staticClass:\"col-6\"},[_c('div',[_c('InputLabel',{attrs:{\"label\":\"Customized Text\",\"sub-label\":\"(back of promo card)\",\"subLabelInline\":\"\"}})],1),_c('div',[_c('Editor',{attrs:{\"value\":_vm.inputContent},on:{\"input\":_vm.updateValue,\"overflowChanged\":_vm.overflowChanged}})],1)])])])],_c('template',{slot:\"footer\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-9 p-0\"},[_c('div',{staticStyle:{\"max-width\":\"550px\"}},[_c('span',{staticClass:\"text-danger font-weight-bold small d-block\"},[_vm._v(\"Right Margin Warning \")]),_c('div',{staticClass:\"small text-muted\"},[_vm._v(\" Long unbroken strings like URLs will overflow the right margin. Force it to wrap by highlighting the text and clicking \"),_c('i',{staticClass:\"fas fa-stream\"}),_vm._v(\" from the menu. \")])])]),_c('div',{staticClass:\"col-3\"},[_c('div',{staticClass:\"float-right\"},[_c('button',{staticClass:\"btn btn-light mr-3\",on:{\"click\":_vm.close}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-success\",attrs:{\"type\":\"submit\"},on:{\"click\":_vm.save}},[_c('i',{staticClass:\"fas fa-print\"}),_vm._v(\" Save \"),(_vm.isSaving)?_c('loading',{attrs:{\"is-small\":\"\"}}):_vm._e()],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('div',{staticClass:\"tiptap-editor-container thin-scrollbar\"},[_c('div',{ref:\"editorElement\",staticClass:\"tiptap-editor\"},[(_vm.editor)?_c('editor-menu-bubble',{attrs:{\"keep-in-bounds\":\"\",\"editor\":_vm.editor},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar menu = ref.menu;\nvar commands = ref.commands;\nvar isActive = ref.isActive;\nreturn [_c('div',{staticClass:\"menububble\",class:{ 'is-active': menu.isActive },style:((\"left: \" + (menu.left) + \"px; bottom: \" + (menu.bottom) + \"px;\"))},[_c('button',{class:{ 'is-active': isActive.bold() },on:{\"click\":commands.bold}},[_c('b',[_vm._v(\"B\")])]),_c('button',{class:{ 'is-active': isActive.italic() },on:{\"click\":commands.italic}},[_c('em',[_vm._v(\"I\")])]),_c('button',{class:{ 'is-active': isActive.underline() },on:{\"click\":commands.underline}},[_c('u',[_vm._v(\"U\")])]),_c('button',{class:{ 'is-active': isActive.heading({ level: 1 }) },on:{\"click\":function($event){return commands.heading({ level: 1 })}}},[_vm._v(\" H1 \")]),_c('button',{class:{ 'is-active': isActive.heading({ level: 2 }) },on:{\"click\":function($event){return commands.heading({ level: 2 })}}},[_vm._v(\" H2 \")]),_c('button',{class:{ 'is-active': isActive.heading({ level: 3 }) },on:{\"click\":function($event){return commands.heading({ level: 3 })}}},[_vm._v(\" H3 \")]),_c('button',{class:{ 'is-active': isActive.heading({ level: 5 }) },on:{\"click\":function($event){return commands.heading({ level: 5 })}}},[_vm._v(\" Red \")]),_c('button',{class:{ 'is-active': isActive.heading({ level: 6 }) },attrs:{\"title\":\"force long text to wrap in pdf\"},on:{\"click\":function($event){return commands.heading({ level: 6 })}}},[_c('i',{staticClass:\"fas fa-stream\"})])])]}}],null,false,1917036419)}):_vm._e(),(_vm.editor)?_c('editor-content',{staticClass:\"editor\",attrs:{\"editor\":_vm.editor}}):_vm._e(),(_vm.isContentOverflowing)?_c('div',{staticClass:\"text-warning small d-flex justify-content-center\"},[_c('v-popover',{staticClass:\"ml-2 clickable\",attrs:{\"trigger\":\"click\"}},[_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(\"Possible Overflow\")]),_vm._v(\" (click for info) \"),_c('template',{slot:\"popover\"},[_c('span',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"clickable\"},[_c('p',[_vm._v(\"Your text might be too long to fit on the back of the promo card.\")]),_c('p',[_vm._v(\"Update the preview and verify that all the text appears on the 2nd page.\")]),_c('p',{staticClass:\"font-weight-bold\"},[_vm._v(\"What is in the preview is what will be printed.\")])])])],2)],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\nimport { Editor, EditorContent, EditorMenuBar, EditorMenuBubble } from 'tiptap'\n\nimport { HardBreak, Heading, Bold, Italic, Underline, History } from 'tiptap-extensions'\nimport { computed, defineComponent, onMounted, onUnmounted, ref, watch } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'Editor',\n props: {\n value: { type: String, required: true },\n },\n components: { EditorContent, EditorMenuBar, EditorMenuBubble },\n setup(props, ctx) {\n const internalValue = ref('')\n\n //** should contain our editor element ref\n const editorElement = ref(null)\n //** will contain the tiptap editing area.\n const editorAreaElement = computed(() => editorElement.value?.querySelector('.ProseMirror'))\n //** editor container used to style overflow\n const editorContainer = computed(() => document.querySelector('.editor-container '))\n let scrollHeightLast = 0\n\n watch(\n () => props.value,\n (v) => {\n internalValue.value = v\n editor && editor.value && editor.value.setContent(v)\n },\n { immediate: true }\n )\n\n function contentOverflows() {\n const hasScrollBar = editorAreaElement.value?.clientHeight != editorAreaElement.value?.scrollHeight\n const hasScrolled = (editorAreaElement.value?.scrollHeight ?? -1) > scrollHeightLast\n isContentOverflowing.value = hasScrollBar && hasScrolled\n return isContentOverflowing.value\n }\n\n const isContentOverflowing = ref(false)\n watch(\n () => isContentOverflowing.value,\n () => {\n ctx.emit('overflowChanged', isContentOverflowing.value)\n },\n { immediate: true }\n )\n\n function onUpdate({ getHTML }: { getHTML: () => string }) {\n if (contentOverflows()) {\n scrollToBottom()\n }\n ctx.emit('input', getHTML())\n }\n\n function onInit() {\n setTimeout(() => {\n if (contentOverflows()) {\n scrollToBottom()\n }\n })\n }\n\n function scrollToBottom() {\n if (editorContainer.value) {\n editorContainer.value.scrollTop = editorContainer.value.scrollHeight\n }\n }\n\n const editor = ref(null)\n onMounted(() => {\n editor.value = new Editor({\n extensions: [\n new HardBreak(),\n new Heading({ levels: [1, 2, 3, 5, 6] }),\n new Bold(),\n new Italic(),\n new Underline(),\n new History(),\n ],\n content: internalValue.value,\n onInit,\n onUpdate,\n })\n })\n onUnmounted(() => editor.value?.destroy())\n return { editor, internalValue, editorElement, isContentOverflowing }\n },\n})\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!./Editor.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!./Editor.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Editor.vue?vue&type=template&id=e54df696&\"\nimport script from \"./Editor.vue?vue&type=script&lang=ts&\"\nexport * from \"./Editor.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Editor.vue?vue&type=style&index=0&lang=scss&\"\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('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.value),expression:\"value\"}],staticClass:\"editor-overflow-warning text-center border small p-3 border-warning shadow\"},[_vm._m(0),_c('div',{staticClass:\"text-muted\"},[(_vm.isDirty)?_c('div',[_vm._v(\"Click \"),_c('b',[_vm._v(\"Update Preview\")]),_vm._v(\" then check the bottom of the 2nd page.\")]):_vm._e(),_c('div',[_vm._v(\"Your text might not fit on the back of your promo card.\")]),(!_vm.isDirty)?_c('div',[_vm._v(\"Check the bottom of the 2nd page using Promo Card Preview.\")]):_vm._e(),_c('div',{staticClass:\"font-weight-bold pt-3\"},[_vm._v(\"What is in the Preview is what will be printed.\")])]),_c('button',{staticClass:\"btn btn-link\",on:{\"click\":_vm.close}},[_vm._v(\"close\")])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h6',[_c('i',{staticClass:\"fas fa-exclamation-circle text-warning\"}),_vm._v(\" Warning: Possible Overflow\")])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'PromoCardOverflowWarning',\n props: {\n value: { type: Boolean, required: true },\n isDirty: { type: Boolean, require: true },\n },\n setup(props, { emit }) {\n function close() {\n emit('input', false)\n }\n return { close }\n },\n})\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!./PromoCardOverflowWarning.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!./PromoCardOverflowWarning.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PromoCardOverflowWarning.vue?vue&type=template&id=5e673422&scoped=true&\"\nimport script from \"./PromoCardOverflowWarning.vue?vue&type=script&lang=ts&\"\nexport * from \"./PromoCardOverflowWarning.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PromoCardOverflowWarning.vue?vue&type=style&index=0&id=5e673422&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 \"5e673422\",\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-popover',{staticClass:\"ml-2 float-right\",attrs:{\"trigger\":\"click\"}},[_c('button',{staticClass:\"btn btn-primary\"},[_vm._v(\"Formatting Help\")]),_c('template',{slot:\"popover\"},[_c('div',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],staticClass:\"clickable text-left\"},[_c('p',[_c('b',[_vm._v(\"HEADINGS\")]),_vm._v(\": \"),_c('span',{staticClass:\"small\"},[_vm._v(\"All headings must be in their own paragraph. Backspacing that connects a heading to the previous paragraph will remove the formatting.\")])]),_c('p',[_c('b',[_vm._v(\"RED TEXT\")]),_vm._v(\": \"),_c('span',{staticClass:\"small\"},[_vm._v(\"Red text must be in its own paragraph. Backspacing that connects red text to the previous paragraph will remove the formatting.\")])]),_c('p',[_c('b',[_vm._v(\"RIGHT MARGIN\")]),_vm._v(\": \"),_c('span',{staticClass:\"small\"},[_vm._v(\"Long unbroken strings like URLs will overflow the right margin when \"),_c('b',[_vm._v(\"previewed\")]),_vm._v(\". Force it to wrap by highlighting the text and clicking \"),_c('i',{staticClass:\"fas fa-stream\"}),_vm._v(\" from the menu.\")])])])])],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\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'FormatHelpButton',\n})\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!./FormatHelpButton.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!./FormatHelpButton.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormatHelpButton.vue?vue&type=template&id=075e38c6&\"\nimport script from \"./FormatHelpButton.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormatHelpButton.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('button',{staticClass:\"btn preview-btn\",attrs:{\"type\":\"submit\"},on:{\"click\":_vm.click}},[(!_vm.loading)?_c('i',{staticClass:\"fa fa-eye\"}):_c('loading',{attrs:{\"is-small\":\"\"}}),_vm._v(\" \"+_vm._s(!_vm.loading ? 'Update' : 'Loading')+\" Preview \")],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nimport Loading from '@/elements/Loading.vue'\nexport default defineComponent({\n name: 'PreviewButton',\n components: { Loading },\n props: { loading: { type: Boolean, required: false, defautl: true } },\n setup(props, { emit }) {\n function click() {\n emit('click')\n }\n return { click }\n },\n})\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!./PreviewButton.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!./PreviewButton.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PreviewButton.vue?vue&type=template&id=50eb0423&scoped=true&\"\nimport script from \"./PreviewButton.vue?vue&type=script&lang=ts&\"\nexport * from \"./PreviewButton.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PreviewButton.vue?vue&type=style&index=0&id=50eb0423&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 \"50eb0423\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue'\n\nimport Component from 'vue-class-component'\nimport Modal from '@/components/Modal.vue'\nimport { Emit, Prop, Watch } from 'vue-property-decorator'\nimport { DisplayablePromoCardMedia } from '@/models/PromoCards/PromoCardMedia'\nimport TextInput from '@/elements/TextInput.vue'\nimport { cloneDeep } from 'lodash'\nimport Loading from '@/elements/Loading.vue'\nimport Editor from '@/components/Editor.vue'\nimport PromoCardOverflowWarning from '@/views/Programs/Orders/vues/components/PromoCardOverflowWarning.vue'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport FormatHelpButton from '@/views/Programs/Orders/vues/components/FormatHelpButton.vue'\nimport PreviewButton from '@/views/Programs/Orders/vues/components/PreviewButton.vue'\nimport ordersClient from '@/clients/ordersClient'\nimport store from '@/store'\n\n@Component({\n components: {\n Loading,\n TextInput,\n Modal,\n Editor,\n PromoCardOverflowWarning,\n InputLabel,\n FormatHelpButton,\n PreviewButton,\n },\n})\nexport default class PromoCardModal extends Vue {\n @Prop({ type: Object, default: null, required: false })\n private readonly value!: DisplayablePromoCardMedia\n\n private internalValue!: DisplayablePromoCardMedia\n\n @Prop({ type: Object, default: null, required: false })\n private readonly preview!: DisplayablePromoCardMedia | null\n internalPreview: DisplayablePromoCardMedia | null = null\n\n fetchingPdf = false\n\n /**\n * see comment at the top of Editor.vue for an explanation of why\n * 2 variables are used\n **/\n inputContent = ''\n outputContent = ''\n qrCodeURL = ''\n\n dirty = false\n private updateValue(v: string) {\n this.dirty = true\n this.outputContent = v\n }\n\n @Prop({ type: Boolean, default: false, required: false })\n private readonly showing!: boolean\n\n private modalIsVisible = false\n\n @Watch('showing', { immediate: true })\n showingUpdated() {\n this.modalIsVisible = this.showing\n }\n\n mounted() {\n this.internalPreview = null\n }\n\n @Watch('modalIsVisible')\n modalIsVisibleUpdated(n: boolean, o: boolean) {\n if (o && !n) {\n this.closed()\n }\n }\n\n async doPreview() {\n this.internalPreview = null\n this.fetchingPdf = true\n await this.saveAndFetchPdf()\n this.fetchingPdf = false\n }\n\n async saveAndFetchPdf() {\n const promoCard = cloneDeep(this.internalValue)\n promoCard.content = this.outputContent\n promoCard.qrCodeURL = this.qrCodeURL\n const pm = await ordersClient.savePromoCard(promoCard, true)\n\n if (pm) {\n this.internalPreview = pm\n this.dirty = false\n }\n }\n\n contentOverflowing = false\n overflowChanged(overflowing: boolean) {\n this.contentOverflowing = overflowing\n }\n\n @Emit()\n closed() {\n return this.modalIsVisible\n }\n\n get accountNumber() {\n return store.getters.authorization.firstAccountNumber\n }\n\n get upwardLeagueId() {\n return store.getters.leagueAbstraction.currentItem.upwardLeagueID\n }\n\n @Watch('value', { immediate: true })\n valueUpdated() {\n this.internalValue = cloneDeep(this.value)\n this.inputContent = this.value.content ?? ''\n this.outputContent = this.value.content ?? ''\n this.qrCodeURL = this.value.qrCodeURL ?? ''\n this.internalValue.accountNumber = this.accountNumber\n this.internalValue.upwardleagueID = this.upwardLeagueId\n this.doPreview()\n }\n url = ''\n @Watch('internalPreview')\n urlChange() {\n if (this.internalPreview && this.internalPreview.publicUrl)\n this.url = `https://drive.google.com/viewerng/viewer?embedded=true&cachebust=${Math.random()}&url=${\n this.internalPreview.publicUrl\n }`\n this.checkLoading()\n }\n\n @Watch('qrCodeURL')\n qrCodeURLChanged() {\n this.dirty = true\n }\n\n checkLoading() {\n setTimeout(() => {\n if (document.querySelector('iframe')?.contentDocument) {\n this.fetchingPdf = true\n // Document didn't load. Try again.\n this.urlChange()\n this.fetchingPdf = false\n }\n }, 3000)\n }\n\n /**\n * Close no save.\n */\n close() {\n this.modalIsVisible = false\n }\n\n @Emit()\n async update() {\n await this.saveAndFetchPdf()\n return cloneDeep(this.internalPreview)\n }\n\n isSaving = false\n save() {\n this.isSaving = true\n this.update()\n }\n\n setQRDefault() {\n this.qrCodeURL = this.internalValue.defaultRegistrationURL ?? ''\n }\n}\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!./PromoCardModal.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!./PromoCardModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PromoCardModal.vue?vue&type=template&id=e9ca78ba&\"\nimport script from \"./PromoCardModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./PromoCardModal.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PromoCardModal.vue?vue&type=style&index=0&lang=scss&\"\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('div',{staticClass:\"promo-card container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-2\"},[_c('img',{attrs:{\"src\":_vm.card.shellUrl}})]),_c('div',{staticClass:\"col-7\"},[_c('div',{staticClass:\"name\"},[_vm._v(_vm._s(_vm.card.name))]),_c('div',[_vm._v(\"Custom Promo Card\")]),_c('a',{attrs:{\"href\":_vm.card.publicUrl,\"target\":\"_blank\"}},[_vm._v(\"View/Print PDF\")])]),_c('div',{staticClass:\"col-3\"},[_c('a',{on:{\"click\":_vm.edit}},[_c('i',{staticClass:\"fas fa-pencil-alt\",attrs:{\"aria-hidden\":\"true\"}})]),_c('a',{on:{\"click\":_vm.copy}},[_c('i',{staticClass:\"fas fa-redo-alt\",attrs:{\"aria-hidden\":\"true\"}})]),_c('a',{on:{\"click\":_vm.remove}},[_c('i',{staticClass:\"fa fa-trash\",attrs:{\"aria-hidden\":\"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\nimport { Component, Emit, Prop, Vue } from 'vue-property-decorator'\nimport { DisplayablePromoCardMedia } from '../../../../../models/PromoCards/PromoCardMedia'\n\n@Component({})\nexport default class PromoCardDisplay extends Vue {\n @Prop({ type: Object, required: true })\n card!: DisplayablePromoCardMedia\n\n @Emit()\n edit() {\n return this.card\n }\n\n @Emit()\n copy() {\n return this.card\n }\n @Emit()\n remove() {\n return this.card\n }\n}\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!./PromoCardDisplay.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!./PromoCardDisplay.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PromoCardDisplay.vue?vue&type=template&id=995b1108&scoped=true&\"\nimport script from \"./PromoCardDisplay.vue?vue&type=script&lang=ts&\"\nexport * from \"./PromoCardDisplay.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PromoCardDisplay.vue?vue&type=style&index=0&id=995b1108&lang=scss&scoped=true&\"\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 \"995b1108\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport SelectorCard from '@/components/SelectorCard.vue'\n\nimport {\n DisplayablePromoCardMedia,\n getEmptyDisplayablePromoCardMedia,\n getEmptyPromoCardMedia,\n PromoCardMedia,\n} from '@/models/PromoCards/PromoCardMedia'\nimport { computed, defineComponent, onMounted, ref, watch } from '@vue/composition-api'\nimport PromoCardModal from '@/views/Programs/Orders/vues/components/PromoCardModal.vue'\nimport ordersClient from '@/clients/ordersClient'\nimport PromoCardDisplay from '@/views/Programs/Orders/vues/components/PromoCardDisplay.vue'\nimport Loading from '@/elements/Loading.vue'\nimport { cloneDeep } from 'lodash'\nimport ConfirmationModal from '@/components/ConfirmationModal.vue'\n\nimport store from '@/store'\nimport { getEmptyOrderProduct } from '@/lib/support/models/GeneratedTypes/xOrders/xOrderProduct'\n\n/**\n * returns if the size variation is \"non-empty\"\n **/\nfunction emptyProduct(s: string) {\n return s && s != 'N/A'\n}\n\nexport default defineComponent({\n components: {\n ConfirmationModal,\n Loading,\n PromoCardDisplay,\n PromoCardModal,\n SelectorCard,\n },\n props: {\n leagueID: { type: String, default: '', required: true },\n accountNumber: { type: String, default: 0, required: true },\n //** selected products, we skip promo cards if they aren't selected.\n },\n setup(props, ctx) {\n //establishes type here.\n\n const cards = ref([])\n const productsSelected = computed(() => store.getters.orders.productsSelected)\n\n //** basically the product order qty is holding our selected cards for a promocard, we refer to it as a number[]\n const cardsSelected = computed(\n () =>\n (\n (\n (store.getters.orders.currentOrderProducts.length\n ? store.getters.orders.currentOrderProducts\n : []\n ).find((x) => x.upwardProductID == 'PROMOCARD') ?? getEmptyOrderProduct()\n ).productColorSizes?.filter((p) => emptyProduct(p.typeColorID)) ?? []\n ).map((y) => y.typeColorID) ?? []\n )\n\n const hasSelectedACard = computed(() => cardsSelected.value && cardsSelected.value.length)\n\n /**\n * When a card is selected allow continuing to the next step\n */\n watch(\n () => hasSelectedACard.value,\n (b) => {\n if (b) {\n ctx.emit('on-enable')\n } else {\n ctx.emit('on-disable')\n }\n },\n { immediate: true }\n )\n /**\n * toggles a card, updates the store.\n * @param card\n */\n function toggleCard(card: PromoCardMedia) {\n let cs = (cloneDeep(cardsSelected.value) as unknown) as string[]\n cs = cs.filter((x) => x != card.productUniqueID)\n // if it is not found in the current selected, then it must be an add.\n if (!cardsSelected.value.find((x) => x == card.productUniqueID)) {\n cs.push(card.productUniqueID)\n }\n\n function cardfind(id: string) {\n return cards.value.find((x) => x.productUniqueID == id) ?? getEmptyPromoCardMedia()\n }\n\n store.commit.orders.setCardsSelected({\n cards: cs\n .map((x) => {\n card = cardfind(x)\n return { name: card?.name ?? '', id: card.productUniqueID }\n })\n .filter((x) => emptyProduct(x.id)),\n })\n }\n\n function isSelected(card: PromoCardMedia) {\n return !!cardsSelected.value.find((x) => x == card.productUniqueID)\n }\n\n const isPromoCardCreateShowing = ref(false)\n const loadingPromoCard = ref(false)\n function promoCardClosed() {\n isPromoCardCreateShowing.value = false\n }\n async function createNewCardClicked() {\n loadingPromoCard.value = true\n try {\n promocard.value =\n (await ordersClient.getPromoCardTemplate(props.leagueID)) ?? getEmptyDisplayablePromoCardMedia()\n promocard.value.upwardleagueID = props.leagueID\n promocard.value.accountNumber = props.accountNumber\n isPromoCardCreateShowing.value = true\n } finally {\n loadingPromoCard.value = false\n }\n }\n const promocard = ref(getEmptyDisplayablePromoCardMedia())\n const promoPreview = ref(null)\n async function promoCardUpdated(promocard: PromoCardMedia) {\n if (!promocard.upwardleagueID) {\n promocard.upwardleagueID = props.leagueID\n }\n if (!promocard.accountNumber || !parseInt(promocard.accountNumber)) {\n promocard.accountNumber = props.accountNumber\n }\n await saveCard(promocard)\n }\n\n async function saveCard(promocard: PromoCardMedia) {\n loading.value = true\n isPromoCardCreateShowing.value = false\n const newcard = await ordersClient.savePromoCard(promocard, false)\n loading.value = false\n if (newcard) {\n cards.value = cards.value.filter((x) => x.marketingID != newcard.marketingID)\n cards.value.push(newcard)\n toggleCard(newcard)\n }\n }\n\n onMounted(async () => {\n cards.value = await ordersClient.getPromoCards(props.leagueID)\n\n if (!productsSelected.value.find((x) => x.upwardProductID == 'PROMOCARD')) {\n //skip this step if no promo cards are selected.\n ctx.emit('go-next')\n }\n })\n const loading = ref(false)\n\n async function copyCard(card: PromoCardMedia) {\n loading.value = true\n const newcard = cloneDeep(card)\n newcard.marketingID = 0\n card.name = `Copy of ${card.name}`\n await saveCard(newcard)\n }\n\n watch(\n () => loading.value,\n (nv: boolean) => {\n // if we are loading we aren't allowing the next button\n if (!nv) {\n ctx.emit('on-enable', nv)\n } else {\n ctx.emit('on-disable', nv)\n }\n }\n )\n\n function editCard(card: PromoCardMedia) {\n promocard.value = cloneDeep(card)\n isPromoCardCreateShowing.value = true\n }\n\n const isPromoCardDeleteConfirmShowing = ref(false)\n const promoCardToDelete = ref(getEmptyDisplayablePromoCardMedia())\n function removeCard(card: DisplayablePromoCardMedia) {\n isPromoCardDeleteConfirmShowing.value = true\n promoCardToDelete.value = card\n }\n\n async function deleteCardResponded(b: boolean) {\n if (b) {\n loading.value = true\n await ordersClient.deletePromoCard(promoCardToDelete.value.marketingID)\n // remove the deleted card from the list.\n cards.value = cards.value.filter((x) => x.marketingID != promoCardToDelete.value.marketingID)\n store.commit.orders.setCardsSelected({\n cards: cards.value\n .map((x) => {\n return { name: x?.name ?? '', id: x.productUniqueID }\n })\n .filter((x) => emptyProduct(x.id)),\n })\n loading.value = false\n }\n isPromoCardDeleteConfirmShowing.value = false\n }\n\n return {\n deleteCardResponded,\n loading,\n isPromoCardDeleteConfirmShowing,\n promoCardToDelete,\n copyCard,\n editCard,\n promoPreview,\n removeCard,\n isPromoCardCreateShowing,\n promocard,\n promoCardClosed,\n promoCardUpdated,\n createNewCardClicked,\n cards,\n isSelected,\n toggleCard,\n loadingPromoCard,\n }\n },\n})\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!./SelectPromoCards.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!./SelectPromoCards.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SelectPromoCards.vue?vue&type=template&id=c441227c&scoped=true&\"\nimport script from \"./SelectPromoCards.vue?vue&type=script&lang=ts&\"\nexport * from \"./SelectPromoCards.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SelectPromoCards.vue?vue&type=style&index=0&id=c441227c&lang=scss&scoped=true&\"\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 \"c441227c\",\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('div',{staticClass:\"form-group\"},[(_vm.mode === 'radio')?[(_vm.label)?_c('label',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.label))]):_vm._e(),_c('div',{staticClass:\"switches\"},_vm._l((_vm.options),function(option,i){return _c('div',{key:i,staticClass:\"form-check form-check-inline\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedValue),expression:\"selectedValue\"}],staticClass:\"form-check-input\",attrs:{\"type\":\"radio\",\"id\":_vm.name + i,\"name\":_vm.name},domProps:{\"value\":option.value,\"checked\":_vm._q(_vm.selectedValue,option.value)},on:{\"change\":function($event){_vm.selectedValue=option.value}}}),_c('label',{staticClass:\"form-check-label\",attrs:{\"for\":_vm.name + i}},[_vm._v(_vm._s(option.text))])])}),0)]:_vm._e(),(_vm.mode === 'buttons')?_c('button-group',{staticClass:\"switch-slot-btn\",attrs:{\"options\":_vm.options},model:{value:(_vm.selectedValue),callback:function ($$v) {_vm.selectedValue=$$v},expression:\"selectedValue\"}}):_vm._e(),(_vm.mode === 'select')?_c('select-input',{attrs:{\"items-list\":_vm.options,\"label\":_vm.label,\"text-property-name\":\"text\",\"value-property-name\":\"value\",\"enabled\":_vm.enabled},model:{value:(_vm.selectedValue),callback:function ($$v) {_vm.selectedValue=$$v},expression:\"selectedValue\"}}):_vm._e(),_vm._l((_vm.slotNames),function(slotName,index){return _c('div',{key:index,staticClass:\"mt-3\",class:{ 'border-left pl-3': _vm.showBorder }},[_vm._t(slotName)],2)})],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',{staticClass:\"btn-group\"},_vm._l((_vm.options),function(option,index){return _c('button',{key:index,staticClass:\"col btn btn-default text-uppercase\",class:{ on: _vm.internalValue === option.value, off: _vm.internalValue !== option.value },attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.select(option.value)}}},[_vm._v(\" \"+_vm._s(option.text)+\" \"),(option.slotName)?_vm._t(option.slotName):_vm._e()],2)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch, PropType } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'ButtonGroup',\n props: {\n options: {\n type: Array as PropType>,\n required: true,\n },\n value: { type: String, required: true },\n },\n setup(props, ctx) {\n const internalValue = ref(null)\n\n function onInternalValueChange() {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n\n function select(val: any) {\n internalValue.value = val\n onInternalValueChange()\n }\n\n //private created() {\n setInternalValue()\n //}\n\n function setInternalValue() {\n internalValue.value = props.value ? props.value : props.options.length ? props.options[0].value : null\n }\n\n watch(\n () => props.value,\n () => {\n setInternalValue()\n }\n )\n\n watch(\n () => internalValue.value,\n () => {\n onInternalValueChange()\n }\n )\n\n return {\n internalValue,\n select,\n }\n },\n})\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!./ButtonGroup.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!./ButtonGroup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ButtonGroup.vue?vue&type=template&id=7960fd7e&scoped=true&\"\nimport script from \"./ButtonGroup.vue?vue&type=script&lang=ts&\"\nexport * from \"./ButtonGroup.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ButtonGroup.vue?vue&type=style&index=0&id=7960fd7e&lang=scss&scoped=true&\"\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 \"7960fd7e\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, computed, ref, watch, PropType } from '@vue/composition-api'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport ButtonGroup from '@/elements/ButtonGroup.vue'\nimport SelectInput from '@/elements/SelectInput.vue'\nimport uuid from 'uuid'\n\nexport default defineComponent({\n name: 'SwitchSlot',\n components: {\n InputLabel,\n ButtonGroup,\n SelectInput,\n },\n props: {\n label: { type: String, default: '', required: false },\n mode: { type: String, default: 'radio', required: false },\n showBorder: { type: Boolean, default: true, required: false },\n value: { required: false, default: '' },\n options: { type: Array as PropType>, required: true },\n enabled: { type: Boolean, default: true, required: false },\n },\n setup(props, ctx) {\n const selectedValue = ref(props.value || (props.options.length ? props.options[0].value : null))\n const guid = uuid.v4()\n const name = `switchslot-${guid}`\n\n const slotNames = computed(() => {\n if (!selectedValue.value) {\n return []\n }\n\n if (!Array.isArray(selectedValue.value)) {\n return [selectedValue.value]\n }\n\n return selectedValue.value\n })\n\n watch(\n () => selectedValue.value,\n () => {\n ctx.emit('input', selectedValue.value)\n ctx.emit('change', selectedValue.value)\n }\n )\n\n watch(\n () => props.value,\n () => {\n selectedValue.value = props.value || (props.options.length ? props.options[0].value : null)\n }\n )\n\n return {\n selectedValue,\n name,\n slotNames,\n }\n },\n})\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!./SwitchSlot.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!./SwitchSlot.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SwitchSlot.vue?vue&type=template&id=0700a7c6&\"\nimport script from \"./SwitchSlot.vue?vue&type=script&lang=ts&\"\nexport * from \"./SwitchSlot.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 * Rest Operations primarily for CRUD on LeaguePlayerInfo\n */\n\nimport restService, { RestServiceResult } from '@/services/restService'\nimport { LeagueVolunteerInfo } from '@/GeneratedTypes/ListInfo/LeagueVolunteerInfo'\nimport { LeagueVolunteer } from '@/GeneratedTypes/LeagueVolunteer'\nimport { LeagueCoachProgramInfoFLAT } from '@/GeneratedTypes/ListInfo/LeagueCoachProgramInfoFLAT'\nimport {\n IsNewVolunteer,\n RolesEnum,\n VolunteerID,\n VolunteerIDType,\n} from '@/lib/support/models/LeagueVolunteer/data'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { VolunteerSearchArgs } from '@/GeneratedTypes/VolunteerSearchArgs'\nimport { VolunteerSearchInfo } from '@/GeneratedTypes/ListInfo/VolunteerSearchInfo'\nimport dayjs from 'dayjs'\n\nimport { CombineDataArray } from '@/lib/support/models/RestServiceResult/CombineDataArray'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { LeagueVolunteerRole } from '@/GeneratedTypes/LeagueVolunteerRole'\nimport { LeagueCoach } from '@/GeneratedTypes/LeagueCoach'\nimport { CoachConflictInfo } from '@/GeneratedTypes/ListInfo/CoachConflictInfo'\nimport { FillMinimumLVDetail } from '@/lib/support/models/LeagueVolunteer/PlayerContactToLeagueVolunteer'\nimport { cloneDeep, uniq } from 'lodash'\nimport { RoleIDToRoleName } from '@/views/Programs/Volunteers/ext/roleutils'\nimport { AxiosRequestConfig } from 'axios'\n\nconst baseUrl = 'volunteers/'\nfunction ourURL(leagueID: string) {\n return `${baseUrl}${leagueID}`\n}\n\ninterface VolunteerClientSearchArgs {\n leagueID: UpwardLeagueIDType\n first?: string\n last?: string\n email?: string\n phone?: string\n orSearch?: boolean\n role: RolesEnum[]\n includePastLeagues?: boolean\n historyLimit?: null | Date\n useStartsWith?: boolean\n coachTypeProgramID?: string\n}\nexport class VolunteerClientException extends GeneralError {\n name = 'Volunteer API Error'\n}\n\nexport default class volunteersClient {\n /**\n * Returns volunteers based on a LeagueID or LeagueID and ProgramType\n * @param leagueID UPW### league\n\n * @return array of league volunteers from the league id\n */\n static async retrieve(leagueID: UpwardLeagueIDType): Promise {\n const x = await restService.get(`${ourURL(leagueID)}/`)\n if (!x.isSuccess) {\n throw new VolunteerClientException('Could not get list of volunteers')\n }\n return x.data\n }\n\n /**\n * Remove the role off a volunteer, if the returned volunteer has no roles left then remove\n * the volunteer from the database.\n * @param leagueID\n * @param volunteerID\n * @param roleID\n */\n static async removeRole(\n leagueID: UpwardLeagueIDType,\n\n volunteerID: VolunteerIDType,\n roleID: number\n ) {\n const x = await restService.delete(`${ourURL(leagueID)}/${volunteerID}/${roleID}`)\n if (!x.isSuccess) {\n throw new VolunteerClientException('Server could not remove ' + volunteerID)\n }\n //remove a volunteer if no roles.\n if (x.data && !x.data.roles?.length) {\n await volunteersClient.remove(leagueID, volunteerID)\n }\n return x.data\n }\n\n /**\n * Remove a volunteer by ID from the server.\n * @param leagueID\n * @param volunteerID\n */\n static async remove(\n leagueID: UpwardLeagueIDType,\n\n volunteerID: VolunteerIDType\n ) {\n const x = await restService.delete(`${ourURL(leagueID)}/${volunteerID}`)\n if (!x.isSuccess) {\n throw new VolunteerClientException('Server could not remove ' + volunteerID)\n }\n return x.data\n }\n\n /***\n * Run the validation routine\n * @param leagueID\n * @param volunteer\n * @param forceAsNew - if we are treating this as new player to this league (e.g. imported from a different league)\n * @throws Error object -- has validation errors.\n */\n static async validate(leagueID: UpwardLeagueIDType, volunteer: LeagueVolunteer, forceAsNew = false) {\n let idpart = '/' // if new this isn't set.\n\n if (!IsNewVolunteer(volunteer) && !forceAsNew) {\n idpart = '/' + VolunteerID(volunteer) + '/'\n }\n const x = await restService.post(`${ourURL(leagueID)}${idpart}validate`, volunteer)\n if (x.isSuccess) {\n return true\n }\n throw x.errorObject // this makes the exceptions show on the big red box.\n }\n\n /***\n * Run the save routine\n * @param leagueID\n * @param volunteer\n * @param forceAsNew - overrides the check that normally assumes volunteer id of 0 is a new volunteer (used in existing individual)\n * @throws Error object -- has validation errors.\n */\n static async save(\n leagueID: UpwardLeagueIDType,\n volunteer: LeagueVolunteer,\n forceAsNew?: boolean,\n xlsImport = false\n ) {\n const isNewPlayer = IsNewVolunteer(volunteer)\n let x: RestServiceResult | null = null\n\n // volunteer import requires special header\n const header: AxiosRequestConfig = { headers: { AutoMapPendingLinks: true } }\n const config = xlsImport ? header : undefined\n\n if (isNewPlayer || forceAsNew) {\n x = await restService.post(`${ourURL(leagueID)}`, volunteer, config)\n } else {\n const idpart = '/' + VolunteerID(volunteer) + '/'\n x = await restService.put(`${ourURL(leagueID)}${idpart}`, volunteer, config)\n }\n\n if (!x.isSuccess) {\n throw new VolunteerClientException('Problem with volunteer save. ', x.errorObject)\n }\n if (x.isSuccess) {\n return x.data\n }\n return x.data\n }\n\n /***\n * Search former volunteers.\n * @param leagueID {string} - league to search\n * @param first {string} - first or general search (for an or search)\n * @param last {string} - last name or general search\n * @param email {string} - email or general search (for an or search)\n * @param phone {string} - phone number or general search\n * @param orSearch {boolean} - and/or search boolean flag.\n */\n static async search({\n leagueID,\n first,\n last,\n email,\n phone,\n role,\n orSearch,\n includePastLeagues,\n historyLimit,\n useStartsWith,\n coachTypeProgramID,\n }: VolunteerClientSearchArgs): Promise {\n const params: VolunteerSearchArgs = {\n currentUpwardLeagueID: leagueID,\n currentLeagueID: 0,\n firstName: first ?? null,\n lastName: last ?? null,\n email: email ?? null,\n phone: phone ?? null,\n historyLimit: typeof historyLimit === 'undefined' ? dayjs().subtract(3, 'year').toDate() : historyLimit,\n includeCurrentLeague: true,\n includePastLeagues: includePastLeagues ?? true,\n // we'll just accept the first role, in the future multiple searches if necessary\n roleID: role[0] ?? null,\n useStartsWith: typeof useStartsWith == 'undefined' ? true : useStartsWith,\n accountNumber: null,\n coachTypeProgramID: coachTypeProgramID ?? null,\n }\n const otherParams: VolunteerSearchArgs = { ...params }\n const endpointURI = `volunteers/search`\n let result: VolunteerSearchInfo[] = []\n\n // in an or search take the first name and do a last or first search.\n if (orSearch) {\n params.lastName = null\n otherParams.firstName = null\n otherParams.lastName = params.firstName\n\n const values = await Promise.all<\n RestServiceResult,\n RestServiceResult\n >([\n restService.post(endpointURI, params),\n restService.post(endpointURI, otherParams),\n ])\n result = cloneDeep(uniq(CombineDataArray(values)))\n } else {\n const x = await restService.post(endpointURI, params)\n if (!x.isSuccess) {\n throw new VolunteerClientException('Problem with the retrieval of search information')\n }\n if (x.data) {\n result = cloneDeep(x?.data)\n }\n }\n\n return result\n }\n\n /**\n * Returns a template, null or empty volunteer ID will be a new template, otherwise gets the template\n * corresponding to the participant passed, expect null on error, exception on error.\n * @param leagueID\n * @param volunteerID - or nothing for a new template\n * @param program - program we are adding to\n * @param role - role we are adding.\n * @return Promise\n */\n static async retrieveTemplateWithRole(\n leagueID: UpwardLeagueIDType,\n program: string,\n role: RolesEnum,\n volunteerID?: VolunteerIDType\n ): Promise {\n let url = `volunteers/${leagueID}/newForRole/${program}/${(\n RoleIDToRoleName(role) ?? ''\n ).toLocaleUpperCase()}`\n if (volunteerID) {\n url = `volunteers/${leagueID}/newExistingForRole/${volunteerID}/${program}/${(\n RoleIDToRoleName(role) ?? ''\n ).toLocaleUpperCase()}`\n }\n\n const x = await restService.get(url)\n if (!x.isSuccess) {\n throw new VolunteerClientException(`Could not retrieve a blank volunteer ${volunteerID}`)\n }\n return x.data\n }\n\n /**\n * Returns a template, null or empty volunteer ID will be a new template, otherwise gets the template\n * corresponding to the participant passed, expect null on error, exception on error.\n * @param leagueID\n * @param volunteerID - or nothing for a new template\n * @return Promise\n */\n static async retrieveTemplate(\n leagueID: UpwardLeagueIDType,\n volunteerID?: VolunteerIDType\n ): Promise {\n const suffix = volunteerID && volunteerID > 0 ? `/${volunteerID}` : ''\n const x = await restService.get(`${ourURL(leagueID)}/new${suffix}`)\n if (!x.isSuccess) {\n throw new VolunteerClientException(`Could not retrieve a blank volunteer ${volunteerID}`)\n }\n return x.data\n }\n\n /**\n * Does way more shifting things around then most client methods, chases down if a\n * given id is registered as a volunteer, if all roles are removed then\n * it will delete the volunteer record, this method supports player contact role adding\n * methods.\n * @param leagueID\n * @param id\n * @param existingLeagueVolunteer - this happens when we are using an existing league volunteer (e.g. parent defined on participant)\n * @param roles\n * @param coachPrefs\n */\n static async setVolunteerRoles(\n leagueID: UpwardLeagueIDType,\n id: number,\n existingLeagueVolunteer: LeagueVolunteer | undefined,\n roles: LeagueVolunteerRole[],\n coachPrefs: LeagueCoach\n ): Promise {\n let c,\n y: LeagueVolunteer | null = null\n\n let isNew = id < 0 // <0 is a player contact created, an obviously bad id.\n if (!isNew) {\n // we don't know for sure yet if the ID is in the DB.\n c = await volunteersClient.retrieveVolunteer(leagueID, id)\n }\n\n // no contact or no leagueID, this is not a registered volunteer.\n if (!c || !c?.leagueID) {\n c = (await volunteersClient.retrieveTemplate(leagueID, id)) ?? null\n isNew = true\n }\n\n if (c) {\n c.roles = roles\n c.gender = existingLeagueVolunteer?.gender ?? ''\n\n // probably not required but cannot find null-error on backend, so no nulls\n if (coachPrefs) {\n c.coachPreferences = coachPrefs\n }\n\n if (existingLeagueVolunteer) {\n c = FillMinimumLVDetail(existingLeagueVolunteer, c)\n }\n\n if (c.roles?.length) {\n y = await volunteersClient.save(leagueID, c, isNew)\n } // no roles, remove volunteer\n else {\n if (isNew) {\n return c\n }\n y = await volunteersClient.remove(leagueID, c.individualID)\n }\n }\n return y\n }\n\n /**\n * Returns a template, null or empty volunteer ID will be a new template, otherwise gets the template\n * corresponding to the participant passed, expect null on error, exception on error.\n * @param leagueID\n * @param volunteerID - or nothing for a new template\n * @return Promise\n */\n static async retrieveVolunteer(\n leagueID: UpwardLeagueIDType,\n volunteerID: VolunteerIDType\n ): Promise {\n const x = await restService.get(`${ourURL(leagueID)}/${volunteerID}`)\n if (!x.isSuccess) {\n throw new VolunteerClientException(`Could not retrieve a volunteer ID ${volunteerID}`)\n }\n return x.data\n }\n\n static async approve(leagueID: UpwardLeagueIDType, approved: boolean, roleid: number, who: number[]) {\n const x = await restService.post(\n `${ourURL(leagueID)}/batchapproval/${roleid}/${approved ? 'true' : 'false'}`,\n who\n )\n if (!x.isSuccess) {\n throw new VolunteerClientException(`Could not approve volunteers for role ${roleid} as ${approved}`)\n }\n return x.data\n }\n\n /**\n * Returns a list of approved coaches by division, which accounts for the coach's age preferences.\n * @param leagueId\n * @param typeProgramId\n * @param divisionId\n * @return Promise\n */\n static async getByDivisionId(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string,\n divisionId: number\n ): Promise {\n const x = await restService.get(\n `${baseUrl}approvedCoachesByDivision/${leagueId}/${typeProgramId}/${divisionId}`\n )\n\n if (!x.isSuccess) {\n throw new VolunteerClientException(\n `Could not get a list of volunteers for ${leagueId}, ${typeProgramId}, ${divisionId}.`\n )\n }\n return x.data\n }\n\n /**\n * Returns a list of approved coaches by division, which accounts for the coach's age preferences.\n * @param leagueId\n * @return Promise\n */\n static async getAllCoaches(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string\n ): Promise {\n const x = await restService.get(`${baseUrl}${leagueId}/Roles?roleIDs=3`)\n\n if (!x.isSuccess) {\n throw new VolunteerClientException(`Could not get a list of volunteers for ${leagueId}.`)\n }\n\n const coachList =\n x.data?.filter(\n (c) =>\n !typeProgramId || c.coachPreferences?.programs?.find((cp) => cp.typeProgramID == typeProgramId, 0)\n ) ?? []\n\n return coachList\n }\n\n /**\n * Returns a list of approved volunteers by RoleID.\n * @param leagueId\n * @param roleId\n * @return Promise\n */\n static async getVolunteerByRole(\n leagueId: UpwardLeagueIDType,\n roleId: number\n ): Promise {\n const x = await restService.get(`${baseUrl}${leagueId}/Roles?roleIDs=${roleId}`)\n\n if (!x.isSuccess) {\n throw new VolunteerClientException(`Could not get a list of volunteers by role for ${leagueId}.`)\n }\n return x.data\n }\n\n static async getLeanVolunteerListByProgram(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string\n ): Promise {\n const x = await restService.get(`${baseUrl}${leagueId}/byProgram/${typeProgramId}`)\n\n if (!x.isSuccess) {\n throw new VolunteerClientException(\n `Could not get a list of volunteers by program for ${leagueId}/${typeProgramId}.`\n )\n }\n return x.data\n }\n\n static async getLeanVolunteerListByProgramAndRoles(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string,\n roleIDs: number[]\n ): Promise {\n const roleIDQueryString = roleIDs.join(',')\n const x = await restService.get(\n `${baseUrl}${leagueId}/byProgramAndRoles/${typeProgramId}?roleIDs=${roleIDQueryString}`\n )\n\n if (!x.isSuccess) {\n throw new VolunteerClientException(\n `Could not get a list of volunteers by program/role for ${leagueId}/${typeProgramId}/${roleIDQueryString}.`\n )\n }\n return x.data\n }\n\n static async getFullVolunteerInfo(\n leagueId: UpwardLeagueIDType,\n volunteerID: VolunteerIDType\n ): Promise {\n const x = await restService.get(`${baseUrl}info/${leagueId}/${volunteerID}`)\n\n if (!x.isSuccess) {\n throw new VolunteerClientException(`Could not get info for volunteer ${leagueId}/${volunteerID}.`)\n }\n return x.data\n }\n\n static async getCoachProgramListFLAT(\n leagueId: UpwardLeagueIDType,\n typeProgramId: string | null,\n divisionId: number | null\n ): Promise {\n if (typeProgramId && divisionId) {\n const x = await restService.get(\n `${baseUrl}coachProgramListApprovedFLAT/${leagueId}/${typeProgramId}/${divisionId}`\n )\n if (!x.isSuccess) {\n throw new VolunteerClientException(\n `Could not get a list of coaches for ${leagueId}, ${typeProgramId}, ${divisionId}.`\n )\n }\n return x.data\n } else {\n const x = await restService.get(\n `${baseUrl}coachProgramListApprovedFLAT/${leagueId}`\n )\n\n if (!x.isSuccess) {\n throw new VolunteerClientException(`Could not get a list of coaches for ${leagueId}.`)\n }\n return x.data\n }\n }\n\n static async retrieveCoachConflicts(leagueID: UpwardLeagueIDType): Promise {\n if (leagueID) {\n const x = await restService.get(`${ourURL(leagueID)}/coachConflicts`)\n if (x.isSuccess) {\n return x.data\n }\n throw new VolunteerClientException('Problem with retrieval of the coach conflicts.')\n } else {\n return []\n }\n }\n}\n","import { xRunningStartupOrderExt } from '@/models/UpwardRunning/Order/xRunningStartupOrderExt'\nimport localStorageService from '@/services/localStorageService'\n\nexport function setCache(key: string, order: xRunningStartupOrderExt) {\n if (!order) return\n\n const item = { createdDate: new Date(), order: order }\n localStorageService.set(key, item)\n}\n\nexport function getCached(key: string) {\n const result = localStorageService.getParsed(key)\n const OneDay = 1000 * 60 * 60 * 24 // in milliseconds\n\n if (!result) return null\n if (+new Date() - +new Date(result.createdDate) > OneDay) {\n deleteCached(key)\n return null\n } else {\n return result?.order\n }\n}\n\nexport function deleteCached(key: string) {\n return localStorageService.remove(key)\n}\n\ninterface LocalStorageOrder {\n createdDate: Date\n order: xRunningStartupOrderExt\n}\n","import { defineActions, defineGetters, defineMutations } from 'direct-vuex'\nimport { getFilteredProductList, OrderProduct } from '@/models/Order/OrderProduct'\nimport { OrderTypesEnum } from '@/lib/support/models/GeneratedTypes/xOrders/xOrdersGeneral'\nimport upwardRunningOrderClient, {\n ValidateRunningOrderShippingPayload,\n} from '@/clients/upwardRunningOrderClient'\nimport upwardRunningClient, {\n PartnerChallengeCartRequest,\n PartnerChallengeParticipantCartChangeRequest,\n} from '@/clients/upwardRunningClient'\nimport {\n getEmptyXRunningStartupOrderExt,\n setSalesTaxNotCalculatedYet,\n ToXRunningStartupOrderExt,\n} from '@/lib/support/models/GeneratedTypes/xOrders/xRunningStartupOrderExt'\nimport { xRunningStartupOrder } from '@/GeneratedTypes/xOrder/xRunningStartupOrder'\nimport { xRunningStartupOrderExt } from '@/models/UpwardRunning/Order/xRunningStartupOrderExt'\nimport { xRunningOrderExt } from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport {\n xRunningOrderDetail,\n xRunningOrderDetailAddonProduct,\n xRunningOrderDetailParticipantProduct,\n} from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport { getEmptyOrderProductSize, OrderProductSize } from '@/models/Order/OrderProductSize'\nimport { xShipToBase } from '@/GeneratedTypes/xOrder/xShipToBase'\nimport { xShipMethodBase } from '@/GeneratedTypes/xOrder/xShipMethodBase'\nimport { cloneDeep, remove } from 'lodash'\nimport { moduleActionContext } from '@/store/index'\nimport { RuntimeException } from '@/lib/common/exceptions/RuntimeException'\nimport { deleteCached, getCached, setCache } from '@/lib/support/store/orders/upwardRunningCache'\nimport { setProduct } from '@/lib/support/store/orders/operations'\nimport {\n UpwardRunningOrderState,\n UROSStates,\n newUROS,\n SizeUpdatedPayload,\n setProductInParticipants,\n} from '@/lib/support/store/orders/upwardRunningOrderState'\nimport { PartnerChallengeCart } from '@/models/UpwardRunning/PartnerChallengeCart'\nimport { getEmptyXRunningOrderExt } from '@/lib/support/models/GeneratedTypes/xOrders/xRunningOrderExt'\n\ninterface OrderState {\n currentOrderTemplate?: xRunningStartupOrderExt\n lastCompletedOrder?: xRunningStartupOrderExt\n selectedProducts: OrderProductSelection[]\n selectedCards: number[]\n internalOrderTypeUpdateHack: number\n uros: UpwardRunningOrderState\n}\n\nexport interface OrderProductSelection {\n upwardProductID: string\n variation: string\n id: number\n}\n\nconst orderState: OrderState = {\n currentOrderTemplate: undefined,\n lastCompletedOrder: undefined,\n selectedProducts: [],\n selectedCards: [],\n internalOrderTypeUpdateHack: 1,\n uros: newUROS(''),\n}\n\nexport enum getterNames {\n currentOrderTemplate = 'currentOrderTemplate',\n lastCompletedOrder = 'lastCompletedOrder',\n currentOrderProducts = 'currentOrderProducts',\n currentOrderShipTo = 'currentOrderShipTo',\n currentOrderShippingMethods = 'currentOrderShippingMethods',\n currentOrderNotes = 'currentOrderNotes',\n currentOrderInternalOrderType = 'currentOrderInternalOrderType',\n currentOrderAdminNote = 'currentOrderAdminNote',\n productsSelected = 'productsSelected',\n cardsSelected = 'cardsSelected',\n uros = 'uros',\n}\n\nclass RunningOrderRuntimeException extends RuntimeException {\n name = 'Running Order Problem'\n}\n\nconst getterTree = defineGetters()({\n currentOrderTemplate: (state) => state.currentOrderTemplate,\n lastCompletedOrder: (state) => state.lastCompletedOrder,\n currentOrderProducts: (state) =>\n cloneDeep(state.currentOrderTemplate?.products)\n ?.filter((p) => p.isActive)\n ?.sort((x, y) => (x.sortOrder == y.sortOrder ? 0 : x.sortOrder > y.sortOrder ? 1 : -1)) || [],\n currentOrderShipTo: (state) => state.currentOrderTemplate?.shippingInfo?.shipTo || {},\n currentOrderNotes: (state) => state.currentOrderTemplate?.notes || '',\n currentOrderShippingMethods: (state) => state.currentOrderTemplate?.shippingInfo?.shipMethods || [],\n currentOrderInternalOrderType: (state) => {\n const hack = state.internalOrderTypeUpdateHack\n const pi = state.currentOrderTemplate?.processingInstructions?.find(\n (x) => x.type == 'SET_INTERNAL_ORDERTYPE'\n )\n return pi && hack > 0 ? pi.value : null //hack will always be > 0\n },\n currentOrderAdminNote: (state) =>\n state.currentOrderTemplate?.processingInstructions?.find((x) => x.type == 'ADD_ADMINISTRATIVE_NOTE')\n ?.value ?? null,\n productsSelected: (state) => state.selectedProducts,\n cardsSelected: (state) => state.selectedCards,\n uros: (state) => state.uros,\n})\n\nexport enum mutationNames {\n setCurrentOrderTemplate = 'setCurrentOrderTemplate',\n setLastCompletedOrder = 'setLastCompletedOrder',\n setCurrentOrderProducts = 'setCurrentOrderProducts',\n setCurrentOrderShipTo = 'setCurrentOrderShipTo',\n setCurrentOrderShippingMethods = 'setCurrentOrderShippingMethods',\n setCurrentOrderNotes = 'setCurrentOrderNotes',\n setCurrentOrderInternalOrderType = 'setCurrentOrderInternalOrderType',\n setCurrentOrderAdminNote = 'setCurrentOrderAdminNote',\n setSelectedProducts = 'setSelectedProducts',\n setPurchaseOrderNumber = 'setPurchaseOrderNumber',\n setCardsSelected = 'setCardsSelected',\n setCurrentOrderSelectedProducts = 'setCurrentOrderSelectedProducts',\n resetCurrentOrder = 'resetCurrentOrder',\n resetSalesTaxAndShipping = 'resetSalesTaxAndShipping',\n setCurrentStep = 'setCurrentStep',\n eraseState = 'eraseState',\n setLoading = 'setLoading',\n setTemplate = 'setTemplate',\n setOrderStatus = 'setOrderStatus',\n setPendingAddOnItems = 'setPendingAddOnItems',\n addPendingAddOnItems = 'addPendingAddOnItems',\n setParticipantProductLoading = 'setParticipantProductLoading',\n setProductSize = 'setProductSize',\n setValidated = 'setValidated',\n}\n\n/**\n * Cache key creation based on the parameter of challenge id.\n * Prior keys did not pull new orders templates on league change.\n * @param orderType\n * @param upwardChallengeID\n */\nfunction makeKey(orderType: OrderTypesEnum, upwardChallengeID: string | null) {\n return `${orderType}-${upwardChallengeID ?? ''}}`\n}\n\ninterface CardDescriptionType {\n name: string\n id: string\n}\n\nconst mutations = defineMutations()({\n resetSalesTaxAndShipping(state, { orderType }: { orderType: OrderTypesEnum }) {\n state.currentOrderTemplate = setSalesTaxNotCalculatedYet(cloneDeep(state.currentOrderTemplate))\n setCache(\n makeKey(orderType, state.currentOrderTemplate?.upwardChallengeID ?? ''),\n state.currentOrderTemplate || getEmptyXRunningStartupOrderExt()\n )\n },\n /**\n * Clear out the old orders detail and zero out sales tax and shipping.\n * @param state\n * @param orderType\n */\n resetCurrentOrder(state, { orderType }: { orderType: OrderTypesEnum }) {\n state.currentOrderTemplate = setSalesTaxNotCalculatedYet(cloneDeep(state.currentOrderTemplate))\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.orderLines = []\n const products = cloneDeep(state.currentOrderTemplate?.products ?? [])\n\n products.forEach((x, index) => {\n state.currentOrderTemplate!.products.splice(index, 1, {\n ...x,\n productColorSizes: cloneDeep(x.productColorSizes ?? []).map((u) => ({\n ...u,\n orderQuantity: 0,\n orderFreeQuantity: 0,\n })),\n })\n })\n }\n setCache(\n makeKey(orderType, state.currentOrderTemplate?.upwardChallengeID ?? ''),\n state.currentOrderTemplate || getEmptyXRunningStartupOrderExt()\n )\n },\n setCurrentOrderTemplate(\n state,\n { orderType, item }: { orderType: OrderTypesEnum; item: xRunningStartupOrderExt }\n ) {\n state.currentOrderTemplate = item\n setCache(makeKey(orderType, item.upwardChallengeID), item)\n },\n /**\n * Chooses the promo cards that are available for purchase,\n * we do this by creating fake variations which allow the product card\n * make those selectable.\n * @param state\n * @param cards\n */\n setCardsSelected(state, { cards }: { cards: CardDescriptionType[] }) {\n let prods = cloneDeep(state.currentOrderTemplate?.products ?? [])\n const promocard = cloneDeep(prods.find((x) => x.upwardProductID == 'PROMOCARD'))\n if (promocard) {\n promocard.productColorSizes = cards.map(\n (x) =>\n ({\n ...getEmptyOrderProductSize(),\n colorDescription: x.name,\n typeColorID: x.id.toString(),\n } as OrderProductSize)\n )\n prods = prods.filter((x) => x.upwardProductID != 'PROMOCARD')\n prods.push(promocard)\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.products = prods\n\n setCache(\n makeKey(\n state.currentOrderTemplate.upwardOrderType as OrderTypesEnum,\n state.currentOrderTemplate.upwardChallengeID\n ),\n state.currentOrderTemplate\n )\n }\n }\n },\n setLastCompletedOrder(\n state,\n { orderType, item }: { orderType: OrderTypesEnum; item?: xRunningStartupOrderExt | null }\n ) {\n if (!orderType) return\n state.lastCompletedOrder = item ?? undefined\n if (item) {\n setCache(`${makeKey(orderType, item.upwardChallengeID)}_completed`, item)\n }\n },\n /**\n * These products are selected in the first round of product selection.\n * @param state\n * @param orderType\n * @param list\n */\n setCurrentOrderSelectedProducts(state, { list }: { list: OrderProductSelection[] }) {\n state.selectedProducts = cloneDeep(list)\n },\n\n setCurrentOrderProducts(state, { orderType, item }: { orderType: OrderTypesEnum; item: OrderProduct[] }) {\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.products = item\n state.currentOrderTemplate = setSalesTaxNotCalculatedYet(cloneDeep(state.currentOrderTemplate))\n setCache(\n makeKey(orderType, state.currentOrderTemplate?.upwardChallengeID ?? ''),\n state.currentOrderTemplate ?? getEmptyXRunningStartupOrderExt()\n )\n }\n },\n async setCurrentOrderShipTo(state, { orderType, item }: { orderType: OrderTypesEnum; item: xShipToBase }) {\n if (state.currentOrderTemplate && state.currentOrderTemplate.shippingInfo) {\n state.currentOrderTemplate.shippingInfo.shipTo = item\n await setCache(\n makeKey(orderType, state.currentOrderTemplate.upwardChallengeID),\n state.currentOrderTemplate\n )\n }\n },\n setCurrentOrderNotes(state, { orderType, item }: { orderType: OrderTypesEnum; item: string }) {\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.notes = item\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardChallengeID), state.currentOrderTemplate)\n }\n },\n setPurchaseOrderNumber(state, { orderType, item }: { orderType: OrderTypesEnum; item: string }) {\n if (state.currentOrderTemplate) {\n state.currentOrderTemplate.purchaseOrderNumber = item\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardChallengeID), state.currentOrderTemplate)\n }\n },\n setCurrentOrderShippingMethods(\n state,\n { orderType, item }: { orderType: OrderTypesEnum; item: xShipMethodBase[] }\n ) {\n if (state.currentOrderTemplate && state.currentOrderTemplate.shippingInfo) {\n state.currentOrderTemplate.shippingInfo.shipMethods = item\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardChallengeID), state.currentOrderTemplate)\n }\n },\n setCurrentOrderInternalOrderType(\n state,\n { orderType, item }: { orderType: OrderTypesEnum; item: string | null }\n ) {\n if (state.currentOrderTemplate) {\n //remove existing processing instruction if it exists\n if (state.currentOrderTemplate.processingInstructions) {\n remove(state.currentOrderTemplate.processingInstructions, (x) => x.type == 'SET_INTERNAL_ORDERTYPE')\n }\n\n if (item != null && item != '') {\n //add\n if (!state.currentOrderTemplate.processingInstructions) {\n state.currentOrderTemplate.processingInstructions = []\n }\n\n state.currentOrderTemplate.processingInstructions.push({\n type: 'SET_INTERNAL_ORDERTYPE',\n value: item,\n })\n }\n\n state.internalOrderTypeUpdateHack++\n\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardChallengeID), state.currentOrderTemplate)\n }\n },\n setCurrentOrderAdminNote(state, { orderType, item }: { orderType: OrderTypesEnum; item: string | null }) {\n if (state.currentOrderTemplate) {\n //remove existing processing instruction if it exists\n if (state.currentOrderTemplate.processingInstructions) {\n remove(state.currentOrderTemplate.processingInstructions, (x) => x.type == 'ADD_ADMINISTRATIVE_NOTE')\n }\n\n if (item != null && item != '') {\n //add\n if (!state.currentOrderTemplate.processingInstructions) {\n state.currentOrderTemplate.processingInstructions = []\n }\n\n state.currentOrderTemplate.processingInstructions.push({\n type: 'ADD_ADMINISTRATIVE_NOTE',\n value: item,\n })\n }\n\n setCache(makeKey(orderType, state.currentOrderTemplate.upwardChallengeID), state.currentOrderTemplate)\n }\n },\n setCurrentStep(state, { currentStep }: { currentStep: UROSStates }) {\n state.uros.currentStep = currentStep\n },\n eraseState(state) {\n state.uros = newUROS('')\n },\n setLoading(state, { loading }: { loading: boolean }) {\n state.uros.loading = loading\n },\n setTemplate(state, { template }: { template: xRunningOrderExt }) {\n state.uros.template = cloneDeep(template)\n },\n setOrderStatus(state, status: xRunningOrderDetail) {\n state.uros.orderStatus = cloneDeep(status)\n },\n setPendingAddOnItems(state, { items }: { items: xRunningOrderDetailAddonProduct[] }) {\n state.uros.pendingAddOnItems = items\n },\n addPendingAddOnItems(state, { item }: { item: xRunningOrderDetailAddonProduct }) {\n state.uros.pendingAddOnItems.push(item)\n },\n setParticipantProductLoading(\n state,\n { participantID, productID, loading }: { participantID: number; productID: string; loading: boolean }\n ) {\n const i = state.uros.productIndividualPending.indexOf(`${participantID}-${productID}`)\n if (i >= 0) {\n if (!loading) {\n state.uros.productIndividualPending.splice(i, 1)\n }\n } else if (loading) {\n state.uros.productIndividualPending.push(`${participantID}-${productID}`)\n }\n },\n setProductSize(\n state,\n { participantID, product }: { participantID: number; product: xRunningOrderDetailParticipantProduct }\n ) {\n const newStatus = cloneDeep(state.uros.orderStatus)\n newStatus.participants = setProductInParticipants(newStatus.participants, participantID, product)\n state.uros.orderStatus = newStatus\n },\n setValidated(state, { validated }: { validated: boolean }) {\n state.uros.validated = cloneDeep(validated)\n },\n})\n\nexport enum actionNames {\n retrieveAndSetAsCurrent = 'retrieveAndSetAsCurrent',\n validateOrder = 'validateOrder',\n createOrder = 'createOrder',\n retrieveLastOrder = 'retrieveLastOrder',\n setCurrentOrderProducts = 'setCurrentOrderProducts',\n clearCachedOrder = 'clearCachedOrder',\n resetRunningOrder = 'resetRunningOrder',\n sizingUpdate = 'sizingUpdate',\n validateRunningOrder = 'validateRunningOrder',\n confirmOrder = 'confirmOrder',\n}\n\nconst actions = defineActions({\n /**\n * Sets the orders quantity for a given product in the current orders.\n * @param state\n * @param context\n * @param orderType\n * @param productID - upward product id\n * @param colorID\n * @param sizeID\n * @param quantity - 0 for delete, otherwise the quantity\n */\n\n setProductQuantity(\n context,\n {\n orderType,\n productID,\n colorID,\n sizeID,\n quantity,\n quantityFree,\n }: {\n orderType: OrderTypesEnum\n productID: number\n colorID: string\n sizeID: string\n quantity: number\n quantityFree: number\n }\n ) {\n const { state, commit } = ordersActionContext(context)\n\n // when adding a product invalidate sales tax.\n commit.setCurrentOrderTemplate({\n orderType,\n item:\n setSalesTaxNotCalculatedYet(cloneDeep(state.currentOrderTemplate)) ??\n getEmptyXRunningStartupOrderExt(),\n })\n\n //then update quantity, size, color on product id.\n const products = cloneDeep(state.currentOrderTemplate?.products ?? [])\n\n commit.setCurrentOrderProducts({\n orderType,\n item: setProduct(products, { productID, sizeID, colorID, quantity, quantityFree }),\n })\n },\n\n /**\n * Grab an orders by type, if it exists in cache then continue to\n * use it, otherwise grab a template from the server.\n * Also, if the league has changed grab another orders template.\n * @param commit\n * @param context\n * @param id league id\n * @param orderType orders type from enum\n */\n async retrieveAndSetAsCurrent(\n context,\n { id, orderType }: { id: string; orderType: OrderTypesEnum }\n ): Promise {\n const { commit } = ordersActionContext(context)\n let orderData!: xRunningStartupOrderExt | null\n // Is orders cached in localStorage?\n orderData = getCached(makeKey(orderType, id))\n\n if (!orderData) {\n // Data doesn't exist in localStorage, fetch orders template from orders API\n orderData = (await upwardRunningOrderClient.retrieveTemplate(id, orderType)) as xRunningStartupOrderExt\n } else {\n //set initial selected products based on products with quantities.\n const curproducts = getFilteredProductList(orderData.products, () => true)\n .map((x) => ({ id: x.id, upwardProductID: x.upwardProductID, variation: '' }))\n .filter((x, i, a) => i == a.indexOf(x))\n commit.setCurrentOrderSelectedProducts({ list: curproducts })\n\n //\n }\n //by this time we have orders data.\n if (orderData) {\n commit.setCurrentOrderTemplate({ orderType, item: orderData })\n commit.resetCurrentOrder({ orderType: orderType })\n }\n return orderData\n },\n async validateOrder(\n { commit },\n { orderType, id }: { orderType: OrderTypesEnum; id: string }\n ): Promise {\n let result = null\n if (orderState.currentOrderTemplate) {\n result = await upwardRunningOrderClient.verificationDetails(id, orderState.currentOrderTemplate)\n if (result) {\n commit(mutationNames.setCurrentOrderTemplate, {\n orderType: orderType,\n item: ToXRunningStartupOrderExt(result, orderState.currentOrderTemplate),\n })\n }\n }\n return result\n },\n /***\n * Submit an orders and reset orders state.\n * @param commit\n * @param dispatch\n * @param id\n * @param orderType\n */\n async createOrder(\n { commit, dispatch },\n { id, orderType }: { id: string; orderType: OrderTypesEnum }\n ): Promise {\n let result = null\n\n if (orderState.currentOrderTemplate) {\n // place the orders\n\n if (\n orderState?.currentOrderTemplate?.orderLines?.some(\n (x) => !x.productUniqueID && x.productID == 'PROMOCARD'\n )\n ) {\n throw new RunningOrderRuntimeException(\n 'There is a problem with the promo card, please remove the card and choose an alternative promocard variation.'\n )\n }\n\n result = await upwardRunningOrderClient.createOrder(id, orderState.currentOrderTemplate)\n\n if (result) {\n // put this orders in lastCompletedOrder. This info is displayed on confirmation page.\n commit(mutationNames.setLastCompletedOrder, {\n orderType: orderType,\n item: cloneDeep(ToXRunningStartupOrderExt(result, orderState.currentOrderTemplate)),\n })\n\n // delete the orders from localStorage\n deleteCached(makeKey(orderType, orderState.currentOrderTemplate.upwardChallengeID ?? ''))\n commit(mutationNames.resetCurrentOrder, { orderType: orderType })\n\n // repopulate currentOrderTemplate so it's ready for next orders\n await dispatch(actionNames.retrieveAndSetAsCurrent, {\n id: id,\n orderType: orderType,\n })\n }\n }\n return result\n },\n retrieveLastOrder(\n { commit },\n { orderType, upwardChallengeID }: { orderType: OrderTypesEnum; upwardChallengeID: string }\n ): void {\n let result = null\n result = getCached(`${makeKey(orderType, upwardChallengeID)}_completed`)\n commit(mutationNames.setLastCompletedOrder, {\n orderType: orderType,\n item: result,\n })\n return\n },\n clearCachedOrder(\n {},\n { orderType, upwardChallengeID }: { orderType: OrderTypesEnum; upwardChallengeID: string }\n ): void {\n deleteCached(makeKey(orderType, upwardChallengeID))\n },\n async resetOrder(\n context,\n {\n challenge,\n }: {\n challenge: string\n }\n ) {\n const { commit } = ordersActionContext(context)\n commit.eraseState()\n try {\n commit.setLoading({ loading: true })\n const template: xRunningOrderExt =\n ((await upwardRunningOrderClient.retrieveTemplate(\n challenge,\n OrderTypesEnum.running\n )) as xRunningOrderExt) ?? getEmptyXRunningOrderExt()\n\n const pendingProduct = await upwardRunningOrderClient.getPendingProduct(challenge)\n if (pendingProduct) {\n commit.setPendingAddOnItems({ items: pendingProduct })\n }\n\n const os = await upwardRunningOrderClient.getRunningOrderStatus(challenge)\n commit.setOrderStatus(os)\n\n commit.setTemplate({ template })\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n async sizingUpdate(context, a: SizeUpdatedPayload) {\n const { commit } = ordersActionContext(context)\n commit.setParticipantProductLoading({\n participantID: a.participantID,\n productID: a.product.upwardProductID,\n loading: true,\n })\n const sendproduct: PartnerChallengeParticipantCartChangeRequest = {\n individualID: a.participantID,\n upwardProductID: a.product.upwardProductID,\n upwardSizeTypeID: a.product.typeSizeID,\n }\n try {\n commit.setLoading({ loading: true })\n //skip sending product sizes with NONE since we are handling that under the hood when the second call is made without the NONE size\n if (sendproduct.upwardSizeTypeID != 'NONE') {\n await upwardRunningClient.setParticipantCartProduct(a.upwardChallengeID, sendproduct)\n }\n commit.setProductSize({\n participantID: a.participantID,\n product: a.product,\n })\n } finally {\n //commit.setParticipantProduct\n commit.setParticipantProductLoading({\n participantID: a.participantID,\n productID: a.product.upwardProductID,\n loading: false,\n })\n commit.setLoading({ loading: false })\n }\n },\n async addOrUpdate_AddOnProduct(\n context,\n { upwId, product }: { upwId: string; product: xRunningOrderDetailAddonProduct }\n ) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n const exist = state.uros.pendingAddOnItems.find((p) => findExistingProduct(p, product))\n let newProduct!: PartnerChallengeCart\n const request = {\n upwardProductID: product.upwardProductID,\n upwardColorTypeID: product.typeColorID,\n upwardSizeTypeID: product.typeSizeID,\n quantity: product.quantity,\n } as PartnerChallengeCartRequest\n\n if (exist) {\n // **** update existing add-on product ****\n newProduct = await upwardRunningClient.updateChallengeCartProduct(upwId, exist.id, request)\n\n //remove existing add-on product\n const clean = cloneDeep(state.uros.pendingAddOnItems).filter((p) => !findExistingProduct(p, product))\n commit.setPendingAddOnItems({ items: clean })\n } else {\n // **** add new add-on product ****\n newProduct = await upwardRunningClient.createChallengeCartProduct(upwId, request)\n }\n console.log('TNT newProduct', newProduct, product)\n product.id = newProduct.id\n console.log('TNT product', product)\n commit.addPendingAddOnItems({ item: product })\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n async remove_AddOnProduct(\n context,\n { upwId, product }: { upwId: string; product: xRunningOrderDetailAddonProduct }\n ) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n\n //remove from store\n const clean = cloneDeep(state.uros.pendingAddOnItems).filter((p) => !findExistingProduct(p, product))\n commit.setPendingAddOnItems({ items: clean })\n\n //DELETE\n await upwardRunningClient.deleteChallengeCartProduct(upwId, product.id)\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n async validateRunningOrder(context, p: ValidateRunningOrderShippingPayload) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n commit.setValidated({ validated: false })\n const rv = await upwardRunningOrderClient.validateOrderShipping(p)\n\n if (rv) {\n commit.setTemplate({\n template: cloneDeep({\n ...state.uros.template,\n shippingInfo: rv.shippingInfo,\n notes: rv.notes,\n orderLines: rv.orderLines,\n purchaseOrderNumber: rv.purchaseOrderNumber,\n salesTax: rv.salesTax,\n upwardOrderID: rv.upwardOrderID,\n } as xRunningOrderExt),\n })\n commit.setValidated({ validated: true })\n }\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n\n async confirmOrder(context, p: ValidateRunningOrderShippingPayload) {\n const { commit, state } = ordersActionContext(context)\n try {\n commit.setLoading({ loading: true })\n commit.setValidated({ validated: false })\n const rv = await upwardRunningOrderClient.confirmOrder(p)\n if (rv) {\n commit.setTemplate({\n template: cloneDeep({\n ...state.uros.template,\n shippingInfo: rv.shippingInfo,\n notes: rv.notes,\n purchaseOrderNumber: rv.purchaseOrderNumber,\n salesTax: rv.salesTax,\n orderLines: rv.orderLines,\n upwardOrderID: rv.upwardOrderID,\n clientOrderDate: rv.clientOrderDate,\n } as xRunningOrderExt),\n }) // } )\n commit.setValidated({ validated: true })\n }\n } finally {\n commit.setLoading({ loading: false })\n }\n },\n})\n\nfunction findExistingProduct(old: xRunningOrderDetailAddonProduct, newProd: xRunningOrderDetailAddonProduct) {\n return (\n old.upwardProductID == newProd.upwardProductID &&\n old.typeSizeID == newProd.typeSizeID &&\n old.typeColorID == newProd.typeColorID\n )\n}\n\nexport const namespace = 'upwardRunningOrders'\n\nexport const upwardRunningOrders = {\n namespaced: true as true,\n state: orderState as OrderState,\n getters: getterTree,\n mutations,\n actions,\n}\n\nconst ordersActionContext = (context: any) => moduleActionContext(context, upwardRunningOrders)\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FacilitySummaryBox.vue?vue&type=style&index=0&id=4fad064e&scoped=true&lang=scss&\"","import { LeagueVolunteer } from '@/GeneratedTypes/LeagueVolunteer'\nimport { getEmptyIndividualAddress } from '@/lib/support/models/IndividualAddress/data'\nimport { getEmptyLeagueCoach } from '@/lib/support/models/LeagueCoach/data'\nimport { LeagueVolunteerInfo } from '@/GeneratedTypes/ListInfo/LeagueVolunteerInfo'\n\nexport type VolunteerIDType = number\n\nexport function getEmptyLeagueVolunteer(seed?: LeagueVolunteerSeedInfo): LeagueVolunteer {\n return {\n accountNumber: newAccountID(),\n leagueID: seed?.leagueID ?? 0,\n addresses: [getEmptyIndividualAddress()],\n birthDate: new Date('1970-01-01 00:00'),\n churchName: '',\n firstName: '',\n gender: 'M',\n individualID: newVolunteerID(),\n lastName: '',\n middleInitial: '',\n coachPreferences: getEmptyLeagueCoach(), //default null...?\n emailAddresses: [],\n phoneNumbers: [],\n roles: [],\n staff: false,\n typeSizeID: '',\n thirdPartyClientIDs: [],\n optOutEmails: false,\n optOutSMS: false,\n inviteAllowed: true,\n registrationNote: '',\n }\n}\n\nexport enum RolesEnum {\n REFEREE = 1,\n PRAYERPARTNER = 2,\n COACH = 3,\n DEVOTIONLEADER = 4,\n TEAMPARENT = 5,\n VENDOR = 6,\n COACHCOMMISSIONER = 7,\n REFEREECOMMISSIONER = 8,\n ADCOMMISSIONER = 9,\n HALFTIMECOMMISSIONER = 10,\n PRAYERCOMMISSIONER = 11,\n HOSTCOMMISSIONER = 12,\n CHEERDIRECTOR = 13,\n GAMEDAYCOMMISSIONER = 14,\n}\n\n/**\n * Returns if this volunteer was created from new Template\n * @param l\n */\nexport function isNewVolunteer(l: LeagueVolunteer) {\n return l.individualID == 0\n}\n\n/**\n * Returns if this volunteer was imported\n * @param l\n */\nexport function isImportedVolunteer(editVolunteer: LeagueVolunteer) {\n return !editVolunteer.leagueID && !editVolunteer.accountNumber\n}\n\n/**\n * Return a signal for an empty ID\n */\nfunction newVolunteerID(): VolunteerIDType {\n return 0\n}\nfunction newAccountID() {\n return '0'\n}\n\nexport class LeagueVolunteerSeedInfo {\n leagueID = 0\n}\n\n/**\n * Logic to extract out the id of the record.\n * @param l\n * @return record id\n * @constructor\n */\nexport function VolunteerID(l: LeagueVolunteer | LeagueVolunteerInfo) {\n return l.individualID\n}\n\n/**\n * Logic to answer if this is a new volunteer or has been previously saved\n * @param l volunteer (template has sent back \"\" for an\n * @return {boolean} is it a new volunteer\n */\nexport function IsNewVolunteer(l: LeagueVolunteer) {\n return l.individualID <= 0\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"btn btn-link\",on:{\"click\":_vm.click}},[_c('i',{staticClass:\"fas fa-minus-circle\",staticStyle:{\"cursor\":\"pointer\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\nimport { defineComponent } from '@vue/composition-api'\nexport default defineComponent({\n name: 'DeleteBtn',\n props: {},\n components: {},\n setup(props, { emit }) {\n function click() {\n emit('click')\n }\n return { click }\n },\n})\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!./DeleteBtn.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!./DeleteBtn.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DeleteBtn.vue?vue&type=template&id=ba4268d6&\"\nimport script from \"./DeleteBtn.vue?vue&type=script&lang=ts&\"\nexport * from \"./DeleteBtn.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 { LoginException } from '@/lib/common/exceptions/login/LoginException'\n\nexport class LockedAccountException extends LoginException {\n name = 'Locked account'\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailableGameDays.vue?vue&type=style&index=0&id=74b0db22&lang=scss&scoped=true&\"","import { Commit } from 'vuex'\nimport volunteersClient from '@/clients/volunteersClient'\nimport { LeagueVolunteerInfo } from '@/GeneratedTypes/ListInfo/LeagueVolunteerInfo'\nimport { LeagueVolunteer } from '@/GeneratedTypes/LeagueVolunteer'\nimport { RolesEnum, VolunteerIDType } from '@/lib/support/models/LeagueVolunteer/data'\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { RuntimeException } from '@/lib/common/exceptions/RuntimeException'\nimport { VolunteerID } from '@/lib/support/models/LeagueVolunteer/data'\nimport {\n leagueVolunteerToLeagueVolunteerInfo,\n leagueVolunteerToLeagueVolunteerInfoMerge,\n} from '@/lib/support/models/LeagueVolunteer/leagueVolunteerInfoToLeagueVolunteer'\nimport { LeagueVolunteerRoleInfo } from '@/GeneratedTypes/ListInfo/LeagueVolunteerRoleInfo'\nimport dayjs from 'dayjs'\nimport { InviteContact } from '@/models/VolunteerManagement/Invitations/InviteContact'\nimport inviteClient from '@/clients/inviteClient'\nimport { UpwardLeagueIDType } from '@/lib/support/models/League/data'\nimport { defineActions, defineMutations, defineGetters } from 'direct-vuex'\nimport { moduleActionContext } from '@/store/index'\nimport { cloneDeep } from 'lodash'\nimport { DataTablePagination, getEmptyDataTablePagination } from '@/models/DataTable/DataTableSelection'\n\n/***\n * Builds the store for volunteers.\n * LeagueVolunteerInfo is the query model\n * LeagueVolunteer is the commit model\n *\n */\n\nconst NEW_VOLUNTEER = -1\nconst NO_ACTIVE_VOLUNTEER = -2\nclass VolunteerRoleException extends GeneralError {\n name = 'Volunteer Role Exception'\n}\n\nclass VolunteerException extends GeneralError {\n name = 'VolunteerException'\n}\nclass VolunteerRuntimeException extends RuntimeException {\n name = 'Volunteer Runtime Exception'\n}\n\nfunction throwError(message: string, commit?: Commit, error?: Error) {\n commit && commit(mutationNames.setError, { message, error })\n throw new VolunteerException(message, error)\n}\n\nenum VolunteerRetrieveEnum {\n edit,\n nothing,\n}\ninterface VolunteerState {\n currentItem?: LeagueVolunteerInfo\n volunteers: LeagueVolunteerInfo[]\n lastLeagueLoaded: string\n lastError: string\n lastException: Error | null\n volunteerUnderEdit: LeagueVolunteer | null\n volunteerUnderEditId: VolunteerIDType\n currentProgram: string\n operation: VolunteerRetrieveEnum\n loading: boolean\n status: string\n referees: LeagueVolunteerInfo[]\n pagination: DataTablePagination\n}\n\nconst volunteerState: VolunteerState = {\n currentItem: undefined,\n volunteers: [],\n lastLeagueLoaded: '',\n lastError: '',\n lastException: null,\n volunteerUnderEdit: null, //initial state null.\n volunteerUnderEditId: NO_ACTIVE_VOLUNTEER,\n currentProgram: '',\n operation: VolunteerRetrieveEnum.nothing,\n loading: false,\n status: '',\n referees: [],\n pagination: getEmptyDataTablePagination(),\n}\n\nexport interface LoadProgramVolunteersArgs {\n leagueId: string\n shouldForce?: boolean\n typeProgramId?: string\n}\n\nexport interface LeanVolunteersByProgramRoleArgs {\n leagueId: string\n shouldForce?: boolean\n typeProgramId: string\n roleIDs: number[] | null\n}\n\nexport interface SingleVolunteerArgs {\n volunteer: LeagueVolunteerInfo\n}\n\nexport interface SingleEditVolunteerArgs {\n volunteer: LeagueVolunteer\n}\n\nexport enum getterNames {\n currentItem = 'currentItem',\n volunteers = 'volunteers',\n volunteerUnderEdit = 'volunteerUnderEdit',\n currentProgram = 'currentProgram',\n loading = 'loading',\n status = 'status',\n referees = 'referees',\n pagination = 'pagination',\n}\n\nconst getterTree = defineGetters()({\n currentItem: (state) => state.currentItem,\n volunteers: (state) => state.volunteers,\n volunteerUnderEdit: (state) => state.volunteerUnderEdit,\n currentProgram: (state) => state.currentProgram,\n loading: (state) => state.loading,\n status: (state) => state.status,\n referees: (state) => state.referees,\n pagination: (state) => state.pagination,\n})\n\nexport enum mutationNames {\n setCurrent = 'setCurrent',\n setUpdatedVolunteer = 'setUpdatedVolunteer',\n setUpdatedAndMergeVolunteer = 'setUpdatedAndMergeVolunteer',\n setVolunteers = 'setVolunteers',\n setError = 'setError',\n clearVolunteerUnderEdit = 'clearVolunteerUnderEdit',\n setLastLeagueLoaded = 'setLastLeagueLoaded',\n setVolunteerUnderEdit = 'setVolunteerUnderEdit',\n setVolunteerUnderEditId = 'setVolunteerUnderEditId',\n setCurrentProgram = 'setCurrentProgram',\n setOperation = 'setOperation',\n setAllApproved = 'setAllApproved',\n removeVolunteer = 'removeVolunteer',\n setAllInvited = 'setAllInvited',\n setLoading = 'setLoading',\n clearCurrent = 'clearCurrent',\n forceVolunteerListReload = 'forceVolunteerListReload',\n setStatus = 'setStatus',\n setReferees = 'setReferees',\n setPagination = 'setPagination,',\n}\n\nfunction changeRole(\n x1: LeagueVolunteerRoleInfo,\n role: RolesEnum,\n approved: boolean\n): LeagueVolunteerRoleInfo {\n return {\n ...x1,\n approved: (x1.approved = x1.roleID == role ? approved : x1.approved),\n }\n}\n\n/**\n * Returns next year as \"YYYY-MM-DD\"\n */\nfunction nextyear() {\n return dayjs().add(1, 'year').format('YYYY-MM-DD')\n}\n\nconst mutations = defineMutations()({\n /***\n * Optimistically sets a batch invite.\n * @param state\n * @param role\n * @param ids\n */\n setAllInvited(state: VolunteerState, { ids }: { role: RolesEnum; ids: InviteContact[] }) {\n // role can be accessed but isn't used here. batch invite seems to be flat at the volunterinfo level\n state.volunteers = state.volunteers.map((x) => ({\n ...x,\n //proxy for field that will be added.\n inviteExpireDate: ids.findIndex((i) => i.id == x.individualID) >= 0 ? nextyear() : x.inviteExpireDate,\n }))\n },\n setAllApproved(\n state: VolunteerState,\n { ids, role, approved }: { ids: VolunteerIDType[]; approved: boolean; role: RolesEnum }\n ) {\n state.volunteers = state.volunteers.map((x) => ({\n ...x,\n roles:\n x?.roles?.map((x1) =>\n ids.indexOf(x.individualID) >= 0 ? changeRole(x1, role, approved) : { ...x1 }\n ) || [],\n }))\n },\n setLoading(state: VolunteerState, loading: boolean) {\n state.loading = loading\n },\n setStatus(state: VolunteerState, status: string) {\n state.status = status\n },\n setReferees(state: VolunteerState, referees: LeagueVolunteerInfo[]) {\n state.referees = referees\n },\n removeVolunteer(state: VolunteerState, { id }: { id: VolunteerIDType }) {\n if (state.volunteerUnderEdit?.individualID == id) {\n state.volunteerUnderEditId = NO_ACTIVE_VOLUNTEER\n state.volunteerUnderEdit = null\n }\n\n state.volunteers = state.volunteers.filter((x) => x.individualID != id)\n },\n\n setOperation(state: VolunteerState, status: VolunteerRetrieveEnum) {\n state.operation = status\n },\n setCurrent(state: VolunteerState, { volunteer }: SingleVolunteerArgs) {\n if (volunteer === undefined) {\n throw new VolunteerRuntimeException('volunteer undefined, check arguments.')\n }\n state.currentItem = volunteer\n },\n clearCurrent(state: VolunteerState) {\n state.currentItem = undefined\n },\n\n setVolunteers(state: VolunteerState, { items }: { items: LeagueVolunteerInfo[] }) {\n if (items === undefined) {\n throw new VolunteerRuntimeException('items undefined, check arguments.')\n }\n state.volunteers = items\n },\n setError(state: VolunteerState, { error, exception }: { error: string; exception?: Error }) {\n if (error === undefined) {\n throw new VolunteerRuntimeException('Error undefined, check arguments.')\n }\n //@todo - propagate to general error -\n state.lastError = error\n state.lastException = exception || null\n console.warn('volunteer store', error, exception)\n },\n forceVolunteerListReload(state: VolunteerState) {\n state.lastLeagueLoaded = Math.random().toString()\n },\n setLastLeagueLoaded(state: VolunteerState, { leagueID }: { leagueID: string }) {\n if (leagueID == undefined) {\n throw new VolunteerRuntimeException('Error undefined, check arguments.')\n }\n state.lastLeagueLoaded = leagueID\n },\n setVolunteerUnderEdit(state: VolunteerState, { volunteer }: SingleEditVolunteerArgs) {\n if (volunteer === undefined) {\n throw new VolunteerRuntimeException(\n 'Error undefined volunteer argument in setVolunteerUnderEdit, check arguments.'\n )\n }\n state.volunteerUnderEdit = volunteer\n },\n clearVolunteerUnderEdit(state: VolunteerState) {\n state.volunteerUnderEdit = null\n state.volunteerUnderEditId = NO_ACTIVE_VOLUNTEER\n },\n setVolunteerUnderEditId(state: VolunteerState, { id }: { id: VolunteerIDType }) {\n state.volunteerUnderEditId = id\n },\n\n setCurrentProgram(state: VolunteerState, { program }: { program: string }) {\n state.currentProgram = program\n },\n setUpdatedVolunteer(state: VolunteerState, { volunteer }: SingleVolunteerArgs) {\n if (volunteer === undefined) {\n throw new VolunteerRuntimeException('volunteer undefined, check arguments.')\n }\n const idx = state.volunteers.findIndex((x) => x.individualID == volunteer.individualID)\n if (idx >= 0) {\n state.volunteers.splice(idx, 1, volunteer)\n } else {\n state.volunteers.push(volunteer)\n }\n },\n setUpdatedAndMergeVolunteer(state: VolunteerState, { volunteer }: { volunteer: LeagueVolunteer }) {\n if (volunteer === undefined) {\n throw new VolunteerRuntimeException('volunteer undefined, check arguments.')\n }\n const idx = state.volunteers.findIndex((x) => x.individualID == volunteer.individualID)\n const existingVolunteer = cloneDeep(state.volunteers[idx])\n if (idx >= 0) {\n const merged = leagueVolunteerToLeagueVolunteerInfoMerge(volunteer, existingVolunteer)\n state.volunteers.splice(idx, 1, merged)\n } else {\n state.volunteers.push(leagueVolunteerToLeagueVolunteerInfo(volunteer))\n }\n },\n setPagination(state, { pagination }: { pagination: DataTablePagination }) {\n state.pagination = pagination\n },\n})\n\nexport enum actionNames {\n removeVolunteer = 'removeVolunteer',\n loadProgramVolunteers = 'loadProgramVolunteers',\n setCurrentVolunteerByID = 'setCurrentVolunteerByID',\n getNewTemplate = 'getNewTemplate',\n getVolunteer = 'getVolunteer',\n upsertVolunteer = 'upsertVolunteer',\n transferVolunteers = 'transferVolunteers',\n setAllApproved = 'setAllApproved',\n setAllInvited = 'setAllInvited',\n fetchReferees = 'fetchReferees',\n}\n\nexport interface InviteAllParams {\n ids: InviteContact[]\n\n leagueID: string\n}\n\nexport interface LeagueRoleParams {\n ids: VolunteerIDType[]\n leagueID: string\n role: RolesEnum\n approved: boolean\n}\n\nexport interface VolunteerDeleteArgs {\n upwardLeagueID: UpwardLeagueIDType\n id: VolunteerIDType\n roles: number[]\n}\nconst actions = defineActions({\n async setAllInvited({ commit }, { ids, leagueID }: InviteAllParams) {\n commit(mutationNames.setLoading, true)\n await inviteClient.inviteVolunteers({ leagueID, invitations: ids })\n commit(mutationNames.setLoading, false)\n\n commit(mutationNames.setAllInvited, { ids })\n },\n\n async setAllInvitedViaSms({ commit }, { ids, leagueID }: InviteAllParams) {\n commit(mutationNames.setLoading, true)\n await inviteClient.inviteVolunteersWithSms({ leagueID, invitations: ids })\n commit(mutationNames.setLoading, false)\n\n commit(mutationNames.setAllInvited, { ids })\n },\n\n async setAllApproved({ commit }, { leagueID, role, ids, approved }: LeagueRoleParams) {\n commit(mutationNames.setLoading, true)\n\n await volunteersClient.approve(leagueID, approved, role, ids)\n commit(mutationNames.setLoading, false)\n\n commit(mutationNames.setAllApproved, {\n ids,\n role,\n approved,\n })\n },\n\n async upsertVolunteer(\n { commit },\n {\n leagueID,\n volunteer,\n forceNew = false,\n }: { leagueID: string; volunteer: LeagueVolunteer; forceNew: boolean }\n ) {\n commit(mutationNames.setLoading, true)\n await volunteersClient.validate(leagueID, volunteer, forceNew)\n const newvolunteer = await volunteersClient.save(leagueID, volunteer, forceNew)\n commit(mutationNames.setLoading, false)\n if (newvolunteer) {\n commit(mutationNames.setUpdatedAndMergeVolunteer, { volunteer: newvolunteer })\n commit(mutationNames.setVolunteerUnderEditId, { id: NO_ACTIVE_VOLUNTEER })\n }\n },\n /***\n * Grab the specified participant as an edit (won't use the selected due to new and copy UC's)\n *\n */\n async getVolunteer(ctx, { id }: { id: VolunteerIDType }): Promise {\n let template = null\n const { commit, state } = actionContext(ctx)\n\n try {\n if (state.volunteerUnderEditId == id && state.operation == VolunteerRetrieveEnum.edit) {\n return //nothing to communicate.\n }\n commit.setOperation(VolunteerRetrieveEnum.edit)\n commit.setVolunteerUnderEditId({ id })\n\n template = await volunteersClient.retrieveVolunteer(state.lastLeagueLoaded, id)\n if (!template) {\n //load failed.\n commit.setOperation(VolunteerRetrieveEnum.nothing)\n commit.clearVolunteerUnderEdit()\n throwError(`Server returned an invalid template for ${id}`)\n return\n } else {\n commit.setVolunteerUnderEdit({ volunteer: template })\n }\n } catch (ex) {\n throwError(ex.message, ctx.commit, ex)\n }\n },\n /***\n * Get referees for a league\n *\n */\n async fetchReferees(ctx, { upwId, force = true }: { upwId: string; force?: boolean }): Promise {\n const { commit, state } = actionContext(ctx)\n if (!force && state.referees.length) return true\n\n try {\n const result = await volunteersClient.getVolunteerByRole(upwId, 1) // roleId 1 == referee\n\n if (result) {\n commit.setReferees(result)\n return true\n }\n } catch (ex: any) {\n throwError(ex.message, ctx.commit, ex)\n }\n return false\n },\n /***\n * Loads volunteers, leagueid and program type are found in the state machine\n * @param commit\n * @param state\n * @param leagueid\n * @param typeProgramId\n */\n async loadProgramVolunteers({ commit, state }, { leagueId, shouldForce }: LoadProgramVolunteersArgs) {\n try {\n if (state.lastLeagueLoaded != leagueId || shouldForce) {\n commit(mutationNames.setLoading, true)\n\n const result = await volunteersClient.retrieve(leagueId)\n\n commit(mutationNames.setLastLeagueLoaded, { leagueID: leagueId })\n commit(mutationNames.setVolunteers, { items: result })\n }\n } catch (ex) {\n throwError('Error with the retrieval of volunteers', commit, ex)\n } finally {\n commit(mutationNames.setLoading, false)\n }\n },\n /***\n * Sets a current application state for a single selected volunteer.\n * @param commit\n * @param context\n * @param id\n */\n async setCurrentVolunteerByID(context, { id }: { id: VolunteerIDType }) {\n const { commit, dispatch, state } = actionContext(context)\n try {\n if (!state.volunteers) {\n throwError(\"Can't find an ID on an empty list of volunteers\", context.commit)\n return\n }\n\n // do we already have it as current item?\n if (state.currentItem && VolunteerID(state.currentItem) == id) {\n return\n }\n\n // go ahead and preload the template, the vues will shuffle it in when it gets there, preferring the\n // league volunteer we already have in memory as a place to start.\n\n const index = state.volunteers.findIndex((x) => VolunteerID(x) == id)\n if (index >= 0) {\n //if we have retrieved a list of lean or otherwise limited info classes (likely)\n // then get the full info for this volunteer in case the data is needed downstream\n commit.setCurrent({\n volunteer:\n state.volunteers[index].addresses == null //this was a lean-ish class\n ? (await volunteersClient.getFullVolunteerInfo(\n state.lastLeagueLoaded, //yikes\n VolunteerID(state.volunteers[index])\n )) ?? state.volunteers[index] //if for some reason this returns null, then just use the existing info class\n : state.volunteers[index],\n })\n\n await dispatch.getVolunteer({ id: VolunteerID(state.volunteers[index]) })\n\n return\n }\n } catch (ex) {\n commit.clearCurrent()\n throwError(ex.message, context.commit, ex)\n }\n throwError('Volunteer not current in edit', context.commit)\n },\n /**\n * Remove the list of roles that would be associated with the roles editable on the screen requesting the delete\n * if all roles are removed then delete the individual.\n * @param context\n * @param upwardLeagueID\n * @param id\n * @param roles\n */\n async removeVolunteer(context, { upwardLeagueID, id, roles }: VolunteerDeleteArgs) {\n const { state } = actionContext(context)\n const { commit } = context\n const volunteer = state.volunteers.find((x) => x.individualID == id)\n if (volunteer) {\n const v = cloneDeep(volunteer)\n\n for (const x of roles) {\n if (v.roles?.length == 1) {\n if (v.roles.indexOf(v.roles![0]) >= 0) {\n //last role remove on a volunteer is a delete per API requirements (see #2631)\n //or Todd says \"you can't delete a roleless volunteer\"\n try {\n await volunteersClient.remove(upwardLeagueID, id)\n } catch (e) {\n throw new VolunteerRoleException(`Volunteer removal request failed on server`)\n }\n v.roles = []\n } else {\n throw new VolunteerRoleException(\n `Role removal request from a person that doesn't appear to have that role`\n )\n }\n } else {\n try {\n await volunteersClient.removeRole(upwardLeagueID, id, x)\n } catch (e) {\n throw new VolunteerRoleException(\n 'Volunteer has teams or other connections that have to be undone before this role can be removed.',\n e\n )\n }\n const roleIndex = v.roles?.findIndex((y) => y.roleID == x)\n if (roleIndex != undefined && roleIndex >= 0) {\n v.roles?.splice(roleIndex, 1)\n }\n }\n }\n\n if (v.roles?.length == 0) {\n commit(mutationNames.removeVolunteer, { id })\n } else {\n commit(mutationNames.setUpdatedVolunteer, { volunteer: v })\n }\n }\n },\n /***\n * Grab the specified volunteer (won't use the selected due to new and copy UC's)\n */\n async getNewTemplate({ commit, state }, { id }: { id?: VolunteerIDType }): Promise {\n let template = null\n\n try {\n if (state.volunteerUnderEditId == id) {\n return //nothing to communicate.\n }\n commit(mutationNames.setVolunteerUnderEditId, { id: id ?? NEW_VOLUNTEER })\n commit(mutationNames.setLoading, true)\n\n template = await volunteersClient.retrieveTemplate(state.lastLeagueLoaded, id)\n commit(mutationNames.setLoading, false)\n\n if (template) {\n template = removeExtraneousTemplateInfo(template)\n }\n commit(mutationNames.setVolunteerUnderEdit, { volunteer: template })\n } catch (ex) {\n throwError(ex.message, commit, ex)\n }\n if (!template) {\n //load failed.\n commit(mutationNames.setVolunteerUnderEditId, { id: NO_ACTIVE_VOLUNTEER })\n throwError(`Server returned an invalid template for ${id}`)\n return\n }\n },\n async transferVolunteers(\n context,\n { leagueID, ids, newAccount }: { leagueID: string; ids: number[]; newAccount: string }\n ) {\n const { commit } = actionContext(context)\n let q = 0\n for (let i1 = 0; i1 < ids.length; i1++) {\n const i = ids[i1]\n q++\n commit.setStatus(`Saving ${((q * 100) / ids.length).toFixed(1)}% `)\n const p = await volunteersClient.retrieveVolunteer(leagueID, i)\n if (p) {\n p.accountNumber = newAccount\n\n try {\n await volunteersClient.save(leagueID, p)\n commit.setUpdatedVolunteer({ volunteer: leagueVolunteerToLeagueVolunteerInfo(p) })\n } catch (e: any) {\n commit.setStatus(e.getMessage())\n }\n }\n }\n commit.setStatus(`Done`)\n },\n async loadLeanVolunteersByProgramRole(\n { commit, state },\n { leagueId, shouldForce, typeProgramId, roleIDs }: LeanVolunteersByProgramRoleArgs\n ) {\n try {\n if (state.lastLeagueLoaded != leagueId || shouldForce) {\n commit(mutationNames.setLoading, true)\n\n const result =\n roleIDs === null\n ? await volunteersClient.getLeanVolunteerListByProgram(leagueId, typeProgramId)\n : await volunteersClient.getLeanVolunteerListByProgramAndRoles(leagueId, typeProgramId, roleIDs)\n\n commit(mutationNames.setLastLeagueLoaded, { leagueID: leagueId })\n commit(mutationNames.setVolunteers, { items: result })\n }\n } catch (ex) {\n throwError('Error with the retrieval of volunteers', commit, ex)\n } finally {\n commit(mutationNames.setLoading, false)\n }\n },\n})\n\nfunction removeExtraneousTemplateInfo(x: LeagueVolunteer): LeagueVolunteer {\n return {\n ...x,\n coachPreferences: null,\n roles: [],\n }\n}\n\nexport const namespace = 'volunteers'\n\nexport const volunteers = {\n namespaced: true as true,\n state: volunteerState,\n getters: getterTree,\n mutations,\n actions,\n}\nconst actionContext = (context: any) => moduleActionContext(context, volunteers)\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HorizontalTabs.vue?vue&type=style&index=0&lang=scss&\"","import restService from '@/services/restService'\nimport { ContactInfo } from '@/GeneratedTypes/Partner/ListInfo/ContactInfo'\nimport { RootContact } from '@/models/Partner/RootContact'\nimport { PartnerUserInfo } from '@/models/UserManagement/PartnerUserInfo'\nimport { AccountInfo } from '@/GeneratedTypes/ListInfo/AccountInfo'\n\nimport { GeneralError } from '@/lib/common/exceptions/GeneralError'\nimport { UpwardVerificationDetails } from '@/models/UpwardVerificationDetails'\nimport { UpwardPartnerSocialMediaTypeID } from '@/GeneratedTypes/UpwardTypes/UpwardPartnerSocialMediaTypeID'\nimport { SocialMedia } from '@/GeneratedTypes/Partner/SocialMedia'\nimport { AccountProfile } from '@/models/Partner/AccountProfile'\nimport { EFTAuthorizationRequest } from '@/models/Partner/EFTAuthorizationRequest'\nimport { EFTRequestStatus } from '@/models/Partner/EFTRequestStatus'\n\nconst baseUrl = 'partners/'\n\nclass PartnerClientException extends GeneralError {\n name = 'Partner API Error'\n}\n\nconst retrieveAccountContacts = async (accountNumber = '') => {\n return await restService.get(`${baseUrl}${accountNumber}/trainedLeaders`)\n}\n\nconst retrieveAccountContactsFullList = async (accountNumber = '') => {\n return await restService.get(`${baseUrl}${accountNumber}/admin/contacts`)\n}\n\nconst retrieveUsers = async (type: string): Promise => {\n const result = await restService.get(`users?type=${type}`)\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new PartnerClientException('A problem occurred retrieving partner users.')\n }\n}\n\nconst getAccountsNearBy = async (accountNumber: string): Promise => {\n const result = await restService.get(`${baseUrl}accountsnearby/${accountNumber}/50`)\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new PartnerClientException('A problem occurred retrieving partners.')\n }\n}\n\nconst deletePartnerUser = async (userId: number): Promise => {\n const x = await restService.delete(`users/${userId}`)\n if (x.isSuccess) {\n return\n }\n\n throw new PartnerClientException('A problem occurred deleting the specified user.')\n}\n\nconst updatePartnerRole = async (userId: number, role: string): Promise => {\n const x = await restService.post(`users/${userId}/roles`, { value: role })\n if (x.isSuccess) {\n return\n }\n\n throw new PartnerClientException('A problem occurred updating the specified user.')\n}\n\nconst getPartnerInfo = async (accountNumber: string): Promise => {\n const result = await restService.get(`${baseUrl}${accountNumber}`)\n\n if (result.isSuccess) {\n return result.data\n } else {\n throw new PartnerClientException('A problem occurred retrieving partner info.')\n }\n}\n\nconst retreivePartners = async (accountNumbers: string[]): Promise => {\n const result = await restService.post(`${baseUrl}`, accountNumbers)\n return result.data\n}\n\nconst retreivePartnerSocialMediaTypes = async (): Promise => {\n const result = await restService.get(\n 'upwardTypes/partnerSocialMediaTypes'\n )\n return result.data\n}\n\nconst retreivePartnerSocialMediaData = async (accountNumber: string): Promise => {\n const result = await restService.get(`partners/${accountNumber}/socialMedia`)\n return result.data\n}\n\nconst updatePartnerSocialMediaData = async (accountNumber: string, data: SocialMedia[]): Promise => {\n await restService.put(`partners/${accountNumber}/socialMedia`, data)\n return true\n}\n\nconst updateAccountProfile = async (accountNumber: string, profile: AccountProfile): Promise => {\n const x = await restService.post(`${baseUrl}${accountNumber}/admin/updateProfile`, profile)\n if (x.isSuccess) {\n return\n }\n\n throw new PartnerClientException('A problem occurred updating the Account Profile.')\n}\n\nconst sendEFTAuthorizationRequest = async (\n accountNumber: string,\n eftAuth: EFTAuthorizationRequest\n): Promise => {\n const x = await restService.post(`${baseUrl}${accountNumber}/eftauthorization`, eftAuth)\n if (x.isSuccess) {\n return\n }\n\n throw new PartnerClientException('A problem occurred sending the EFT Authorization Request.')\n}\n\nconst getEFTRequestStatus = async (accountNumber: string): Promise => {\n const result = await restService.get(`${baseUrl}${accountNumber}/eftrequeststatus`)\n return result.data\n}\n\nexport interface PartnerSearchResultsType {\n /*** name of church hyphenated with location ***/\n name: string\n accountNumber: number\n eftBankAcctLast4: string\n placeOrdersOnHoldNote: string\n fanGearCustomURL: string\n\n // ... other stuff returned, but don't need it yet\n}\n\n/**\n * Searches the list of partners by a prefix term.\n * @param term\n */\nconst searchPartners = async (term: string) => {\n const x = await restService.post(`partners/search`, {\n searchFilter: term,\n useStartsWith: true,\n })\n if (x.isSuccess) {\n return x.data\n }\n\n throw new PartnerClientException('A problem occurred searching partners.')\n}\n\nconst validateNew = async (accountNumber: string, contact: RootContact) => {\n const results = await restService.post(\n `${baseUrl}${accountNumber}/contact/verificationDetails`,\n contact\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in partnersClient.validateNew')\n }\n}\n\nconst validateExisting = async (accountNumber: string, id: number, contact: RootContact) => {\n const results = await restService.post(\n `${baseUrl}${accountNumber}/contact/${id}/verificationDetails`,\n contact\n )\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in partnersClient.validateExisting')\n }\n}\n\nconst createAccountContact = async (accountNumber: string, contact: RootContact) => {\n const results = await restService.post(`${baseUrl}${accountNumber}/contact`, contact)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in partnersClient.createAccountContact')\n }\n}\n\nconst updateAccountContact = async (accountNumber: string, id: number, contact: RootContact) => {\n const results = await restService.put(`${baseUrl}${accountNumber}/contact/${id}`, contact)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in partnersClient.updateAccountContact')\n }\n}\n\nconst retrieveAccountContact = async (accountNumber: string, id: number) => {\n const results = await restService.get(`${baseUrl}${accountNumber}/contact/${id}`)\n if (results.isSuccess) {\n return results.data\n } else {\n throw new Error('Error in partnersClient.retrieveAccountContact')\n }\n}\n\nexport default {\n retrieveAccountContacts,\n retrieveAccountContactsFullList,\n retrieveUsers,\n deletePartnerUser,\n updatePartnerRole,\n getAccountsNearBy,\n searchPartners,\n getPartnerInfo,\n retreivePartners,\n retreivePartnerSocialMediaTypes,\n retreivePartnerSocialMediaData,\n updatePartnerSocialMediaData,\n updateAccountProfile,\n sendEFTAuthorizationRequest,\n getEFTRequestStatus,\n validateNew,\n validateExisting,\n createAccountContact,\n updateAccountContact,\n retrieveAccountContact,\n}\n","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!./ResourceTile.vue?vue&type=style&index=0&id=32971616&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypeProgramTab.vue?vue&type=style&index=0&id=0685f8b7&lang=scss&scoped=true&\"","import { LoginException } from '@/lib/common/exceptions/login/LoginException'\n\nexport class PasswordExpiredException extends LoginException {\n name = 'Password Expired'\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecialEventCalendar.vue?vue&type=style&index=0&id=79924b2e&scoped=true&lang=scss&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ShowToggle.vue?vue&type=style&index=0&id=707876c6&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductWarningModal.vue?vue&type=style&index=0&id=cee560b4&lang=scss&scoped=true&\"","export const getProps = () => ({\n itemsList: { type: [Object, Array], required: true },\n valueAndTextTheSame: { type: Boolean, default: false, required: false },\n textPropertyName: { type: String, default: '', required: false },\n valuePropertyName: { type: String, default: '', required: false },\n})\n\nexport function useSelectList(props: any) {\n function getOptionValue(item: any, index: number | symbol | string): string {\n if (props.valueAndTextTheSame) {\n return item\n }\n if (props.valuePropertyName !== '') {\n return item[props.valuePropertyName]\n }\n if (props.textPropertyName !== '') {\n return item[props.textPropertyName]\n }\n return index.toString()\n }\n\n function getOptionKey(item: any, index: number | symbol | string): string {\n return JSON.stringify(getOptionValue(item, index))\n }\n\n function getOptionText(item: Record): string {\n if (props.textPropertyName !== '') {\n return `${item[props.textPropertyName]}`\n }\n return item.toString()\n }\n\n return {\n getOptionValue,\n getOptionKey,\n getOptionText,\n }\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommunicationsOptOutReport.vue?vue&type=style&index=0&id=30829917&scoped=true&lang=scss&\"","import ordersClient from '@/clients/ordersClient'\nimport upwardRunningOrderClient from '@/clients/upwardRunningOrderClient'\nimport { Ref, UnwrapRef } from '@vue/composition-api'\nimport { xStartupOrder } from '@/GeneratedTypes/xOrder/xStartupOrder'\nimport { xReturnOrderExt } from '@/models/Order/xReturnOrderExt'\nimport { OrderInfoExt } from '@/models/Order/OrderInfoExt'\nimport { xRunningOrderExt } from '@/models/UpwardRunning/Order/xRunningOrderExt'\nimport { xRunningStartupOrderExt } from '@/models/UpwardRunning/Order/xRunningStartupOrderExt'\n\nexport async function loadOrder(\n league: string,\n orderid: string,\n currentOrder: Ref>,\n currentOrderInfo: Ref>,\n errorMessage: Ref>\n) {\n const timeout = new Promise((acc, rej) => {\n const id = setTimeout(() => {\n clearTimeout(id)\n //basically a timeout, but instructed to explain to the user as so\n rej(new Error('Order loading error.'))\n }, 30 * 1000)\n })\n\n const getorder = async () => {\n if (currentOrderInfo && currentOrder) {\n ;[currentOrder.value, currentOrderInfo.value] = await Promise.all([\n ordersClient.getOrder({ leagueID: league, id: orderid }),\n ordersClient.getOrderInfo({\n leagueID: league,\n id: orderid,\n }),\n ])\n }\n errorMessage.value = ''\n }\n\n /*\n race a promise against a timeout that rejects and then another promise\n that's only job is to try to resolve two promises running in parallel\n that are expected to both complete successfully 😵\n */\n await Promise.race([timeout, getorder()])\n}\n\nexport async function loadReturnsOrder(\n league: string,\n orderid: string,\n currentOrder: Ref>,\n currentOrderInfo: Ref>,\n errorMessage: Ref>\n) {\n const timeout = new Promise((acc, rej) => {\n const id = setTimeout(() => {\n clearTimeout(id)\n //basically a timeout, but instructed to explain to the user as so\n rej(new Error('Order loading error.'))\n }, 30 * 1000)\n })\n\n const getorder = async () => {\n if (currentOrderInfo && currentOrder) {\n ;[currentOrder.value, currentOrderInfo.value] = await Promise.all([\n ordersClient.getRMA({ leagueID: league, id: orderid }),\n ordersClient.getOrderInfo({\n leagueID: league,\n id: orderid,\n }),\n ])\n }\n errorMessage.value = ''\n }\n\n /*\n race a promise against a timeout that rejects and then another promise\n that's only job is to try to resolve two promises running in parallel\n that are expected to both complete successfully 😵\n */\n await Promise.race([timeout, getorder()])\n}\n\nexport async function loadRunningOrder(\n challenge: string,\n orderid: string,\n currentOrder: Ref>,\n currentOrderInfo: Ref>,\n errorMessage: Ref>\n) {\n const timeout = new Promise((acc, rej) => {\n const id = setTimeout(() => {\n clearTimeout(id)\n //basically a timeout, but instructed to explain to the user as so\n rej(new Error('Order loading error.'))\n }, 30 * 1000)\n })\n\n const getorder = async () => {\n if (currentOrderInfo && currentOrder) {\n ;[currentOrder.value, currentOrderInfo.value] = await Promise.all([\n upwardRunningOrderClient.getxOrder({ challengeID: challenge, id: orderid }),\n ordersClient.getOrderInfo({\n leagueID: challenge,\n id: orderid,\n }),\n ])\n }\n errorMessage.value = ''\n }\n\n /*\n race a promise against a timeout that rejects and then another promise\n that's only job is to try to resolve two promises running in parallel\n that are expected to both complete successfully 😵\n */\n await Promise.race([timeout, getorder()])\n}\n","import { LeagueFacility } from '@/GeneratedTypes/LeagueFacility'\n\nexport const getEmptyLeagueFacility = () => {\n const leagueFacility: LeagueFacility = {\n leagueID: 0,\n facilityID: 0,\n accountNumber: '',\n isShared: false,\n facilityName: '',\n active: false,\n street1: '',\n street2: '',\n subdivision1: '',\n subdivision2: '',\n postalCode: '',\n typeCountryID: '',\n childFacilities: [],\n availability: [],\n }\n\n return leagueFacility\n}\n","import { LeagueListItem } from '@/models/Program/LeagueListItem'\n\nexport function getEmptyLeagueListItem(seed: LeagueListItemSeed): LeagueListItem {\n return {\n opportunityTypeID: -1,\n opportunityTypeDescription: '',\n programTypeDescription: '',\n cheerProgramTypeDescription: 'CHEER',\n programTypeID: '',\n cheerProgramTypeID: '',\n leagueTypeAbbreviation: '',\n maleGradeMin: 'K3',\n maleGradeMax: '12',\n femaleGradeMin: 'K3',\n femaleGradeMax: '12',\n eitherGradeMax: '12',\n eitherGradeMin: 'K3',\n femaleCheerGradeMin: 'K3',\n femaleCheerGradeMax: '12',\n maleCheerGradeMin: 'K3',\n maleCheerGradeMax: '12',\n eitherCheerGradeMin: 'K3',\n eitherCheerGradeMax: '12',\n practiceDays: [],\n isOPRLeague: false,\n leagueName: '',\n canDelete: true,\n leagueID: seed.leagueID,\n upwardLeagueID: seed.upwardLeagueID,\n typeLeagueID: -1,\n participantCount: 0,\n participantCheerCount: 0,\n firstEvalDate: null,\n evalDescription: null,\n firstPracticeDate: null,\n firstGameDate: null,\n onlineRegistrationBeginDate: null,\n onlineRegistrationEndDate: null,\n registrationBeginDate: null,\n registrationEndDate: null,\n isHost: false,\n partnerCount: 0,\n seasonEndDate: null,\n grades: null,\n current: true,\n myLeagueInfo: null,\n // leagueWarnings: LeagueWarning,[] | null;\n }\n}\n\nexport class LeagueListItemSeed {\n leagueID = -1\n upwardLeagueID = ''\n}\n\nexport function LeagueInfoMoreThanOneProgram(lli: LeagueListItem): boolean {\n return !!lli.cheerProgramTypeID\n}\n\nexport function isByAge(lli: LeagueListItem): boolean {\n return lli.myLeagueInfo ? lli.myLeagueInfo.ageCutoffDate != null : false\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PackageIcon.vue?vue&type=style&index=0&id=d3ecaf5a&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"print-position\"},[_vm._l((_vm.rollups),function(r,i){return _c('div',{key:r.position,staticClass:\"p-3 m-2 shipment print-pretty\"},[(r.warehouse != 'Upward Fees')?_c('div',[_vm._v(\"SHIPMENT \"+_vm._s(i + 1))]):_vm._e(),_c('div',{staticClass:\"small mb-3\"},[_vm._v(_vm._s(r.warehouse))]),_c('table',{staticClass:\"mb-3\"},[_vm._m(0,true),_vm._l((r.items),function(item,i){return _c('tr',{key:r.position + i},[_c('td',[_vm._v(\" \"+_vm._s(_vm.currency(item.productDescription))+\" \")]),_c('td',{staticClass:\"text-right pl-5\"},[_vm._v(_vm._s(_vm.currency(item.unitCost)))]),_c('td',{staticClass:\"text-center pl-5\"},[_vm._v(_vm._s(item.quantity))]),_c('td',{staticClass:\"text-right pl-5\"},[_vm._v(_vm._s(_vm.currency(item.extendedCost)))])])}),_c('tr')],2),_c('div',[_c('div',{staticClass:\"text-primary small font-weight-bold\"},[_vm._v(\" Total \"+_vm._s(_vm.currency(r.total + r.discount))+\" \"),_c('span',{staticClass:\"small\"},[_vm._v(\" before taxes\")])]),(r.discount < 0)?_c('div',{staticClass:\"small text-muted\",staticStyle:{\"width\":\"fit-content\"}},[_c('div',[_vm._v(\"(\"+_vm._s(_vm.currency(r.total))+\" \"+_vm._s(_vm.currency(r.discount))+\" discount)\")])]):_vm._e()])])}),_c('div',{staticClass:\"print-pretty p-3 m-2 bg-light-1 grand-total\"},[_c('h6',[_vm._v(\"Grand Total\")]),_c('table',[_c('tr',[_c('td',[_vm._v(\"Sub-Total\")]),_c('td',{staticClass:\"pl-3 text-right\"},[_vm._v(_vm._s(_vm.currency(_vm.subtotal)))])]),_c('tr',[_c('td',[_vm._v(\"Taxes\")]),_c('td',{staticClass:\"pl-3 text-right\"},[_vm._v(_vm._s(_vm.currency(_vm.salesTax)))])]),(_vm.discount)?_c('tr',[_c('td',[_vm._v(\"Discount\")]),_c('td',{staticClass:\"pl-3 text-right\"},[_vm._v(_vm._s(_vm.currency(_vm.discount)))])]):_vm._e(),_c('tr',[_c('td',{staticClass:\"text-primary font-weight-bold\"},[_vm._v(\"Total\")]),_c('td',{staticClass:\"pl-3 text-right text-primary font-weight-bold\"},[_vm._v(_vm._s(_vm.currency(_vm.total)))])])])])],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',[_c('th'),_c('th',{staticClass:\"text-right pl-5\"},[_vm._v(\"Unit Price\")]),_c('th',{staticClass:\"text-center pl-5\"},[_vm._v(\"Quantity\")]),_c('th',{staticClass:\"text-right pl-5\"},[_vm._v(\"Total\")])])}]\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\nimport { defineComponent, PropType, computed } from '@vue/composition-api'\nimport currency from '@/filters/currency'\nimport { Rollup } from '@/views/Programs/Orders/league/types/Rollup'\nimport { xStartupOrderExt } from '@/models/Order/xStartupOrderExt'\n\nexport default defineComponent({\n name: 'OrderRollup',\n components: {},\n methods: { currency },\n props: {\n rollups: { type: Array as PropType, required: true },\n order: { type: Object as PropType, required: false },\n },\n setup(props) {\n const discount = computed(() => props.rollups.map((i) => i.discount).reduce((t, a) => a + t, 0))\n\n const subtotal = computed(() => {\n const rollupTotal = props.rollups.map((i) => i.total).reduce((t, a) => a + t, 0)\n return rollupTotal\n })\n\n const salesTax = computed(() => (props.order && props.order.salesTax ? props.order.salesTax : 0))\n\n const total = computed(() => {\n /*const totalProductAmount =\n props.order && props.order.totalOrderedProductAmount ? props.order.totalOrderedProductAmount : 0\n */\n return subtotal.value + salesTax.value + discount.value\n })\n\n return {\n subtotal,\n total,\n salesTax,\n discount,\n }\n },\n})\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!./OrderRollup.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!./OrderRollup.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderRollup.vue?vue&type=template&id=4fd76db8&scoped=true&\"\nimport script from \"./OrderRollup.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderRollup.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderRollup.vue?vue&type=style&index=0&id=4fd76db8&lang=scss&scoped=true&\"\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 \"4fd76db8\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Teams.vue?vue&type=style&index=0&id=79720780&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-expansion-panels',{attrs:{\"multiple\":\"\",\"accordion\":\"\"},model:{value:(_vm.divisionPanelsValue),callback:function ($$v) {_vm.divisionPanelsValue=$$v},expression:\"divisionPanelsValue\"}},_vm._l((_vm.divisionList),function(div,divIndex){return _c('v-expansion-panel',{key:'div-' + divIndex,on:{\"change\":function($event){return _vm.divPanelChange(div, divIndex)}}},[_c('v-expansion-panel-header',{staticClass:\"division-header\",scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('v-icon',{attrs:{\"color\":\"white\"}},[_vm._v(\" $expand \")])]},proxy:true}],null,true)},[_c('div',[_c('i',{staticClass:\"fas fa-angle-double-down mr-2\",class:div.expandDisabled.value ? 'disabled' : '',on:{\"click\":function($event){$event.stopPropagation();return _vm.expandAllDivision(div, divIndex)}}}),_c('i',{staticClass:\"fas fa-angle-double-up\",class:div.collapseDisabled.value ? 'disabled' : '',on:{\"click\":function($event){$event.stopPropagation();return _vm.collapseAllDivision(div, divIndex)}}}),_c('span',{staticClass:\"ml-2\"},[_vm._v(\"Division: \"+_vm._s(div.divisionName)+\" - \"+_vm._s(div.divsionItemCount)+\" items\")])])]),_c('v-expansion-panel-content',[_c('v-expansion-panels',{attrs:{\"multiple\":\"\",\"accordion\":\"\"},model:{value:(div.panelValue),callback:function ($$v) {_vm.$set(div, \"panelValue\", $$v)},expression:\"div.panelValue\"}},_vm._l((div.teams),function(team,teamIndex){return _c('v-expansion-panel',{key:'team-' + teamIndex},[_c('v-expansion-panel-header',{staticClass:\"team-header\",scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('v-icon',{attrs:{\"color\":\"white\"}},[_vm._v(\" $expand \")])]},proxy:true}],null,true)},[_vm._v(\" Team: \"+_vm._s(team.teamName)+\" - \"+_vm._s(team.orderLines.length)+\" items\")]),_c('v-expansion-panel-content',[_c('simple-grid',{attrs:{\"grid-data\":team.orderLines,\"columns\":_vm.columns,\"table-striped\":true,\"disableHeaderSort\":true}})],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\nimport SimpleGrid from '@/elements/SimpleGrid.vue'\nimport { GridColumn, GridColumnAlignEnum } from '@/models/Grid/GridColumn'\nimport currency from '@/filters/currency'\nimport { computed, defineComponent, PropType, ref, onMounted, ComputedRef } from '@vue/composition-api'\nimport { CFormatOrder, OrderLineExt } from '@/models/Order/xStartupOrderExt'\nimport { programTypes } from '@/store/programTypes'\n\nexport default defineComponent({\n components: {\n SimpleGrid,\n },\n props: {\n order: {\n type: Object as PropType,\n\n required: true,\n },\n },\n setup(props) {\n const divisionPanelsValue = ref([])\n\n const columns = computed(() => {\n return [\n { field: 'name', headerText: 'Name' },\n { field: 'productLabel', headerText: 'Item Name' },\n { field: 'type', headerText: 'Type' },\n { field: 'size', headerText: 'Size' },\n { field: 'orderQuantity', headerText: 'Quantity' },\n { field: 'cost', headerText: 'Cost', textAlign: GridColumnAlignEnum.RIGHT },\n { field: 'program', headerText: 'Program' },\n ] as GridColumn[]\n })\n\n function getProductLabel(x: OrderLineExt) {\n if (x.cmsProductName) {\n return x.cmsProductName\n }\n if (props.order?.products) {\n const prod = props.order?.products?.find((p) => p.upwardProductID == x.productID)\n if (prod && prod.cmsProductName) {\n return prod.cmsProductName\n }\n }\n if (x.productID) {\n return x.productID\n }\n return 'n/a'\n }\n\n function supressNA(s: string) {\n if (s == 'N/A' || s == 'Not Applicable' || s == 'One Size') {\n return ''\n }\n return s\n }\n\n function getCost(cost: number) {\n return currency(cost)\n }\n\n interface OrderListItem {\n productLabel: string\n program: string | null\n type: string\n size: string\n cost: string | null | undefined\n orderQuantity: number\n name: string\n }\n\n interface TeamListItem {\n teamName: string\n orderLines: OrderListItem[]\n }\n\n interface DivisionListItem {\n divisionName: string\n divsionItemCount: number\n teams: TeamListItem[]\n panelValue: Number[]\n expandDisabled: ComputedRef\n collapseDisabled: ComputedRef\n }\n\n const divisionList = ref([])\n\n onMounted(() => {\n let retval = [] as DivisionListItem[]\n\n const sortedLines = props.order.orderLinesExt.sort((a, b) => {\n const divSortNameA = a.cargo?.participantDivisionName || 'zzzzzzzzzzzzzzzzzz'\n const divSortNameB = b.cargo?.participantDivisionName || 'zzzzzzzzzzzzzzzzzz'\n\n const teamSortNameA = a.cargo?.participantTeamName || 'zzzzzzzzzzzzzzzzzz'\n const teamSortNameB = b.cargo?.participantTeamName || 'zzzzzzzzzzzzzzzzzz'\n\n const playerSortNameA = a.participantName || a.cargo?.participantName || 'zzzzzzzzzzzzzzzzzz'\n const playerSortNameB = b.participantName || b.cargo?.participantName || 'zzzzzzzzzzzzzzzzzz'\n\n if (divSortNameA < divSortNameB) return -1\n if (divSortNameA > divSortNameB) return 1\n if (teamSortNameA < teamSortNameB) return -1\n if (teamSortNameA > teamSortNameB) return 1\n if (playerSortNameA < playerSortNameB) return -1\n if (playerSortNameA > playerSortNameB) return 1\n return 0\n })\n\n sortedLines.forEach((ordLine) => {\n //remove lines with no quantity as well as system and access fees\n if (\n ordLine.quantity &&\n ordLine.productID != 'UPWARDACCESSFEE' &&\n ordLine.productID != 'UPWARDSYSTEMSFEE'\n ) {\n const divName = ordLine.cargo?.participantDivisionName || 'Unassigned'\n const teamName = ordLine.cargo?.participantTeamName || 'Unassigned'\n const ordLineDetail = {\n productLabel: getProductLabel(ordLine),\n program:\n programTypes.state.items.find((x) => x.upwardTypeID == ordLine.typeProgramID)?.description ??\n ordLine.typeProgramID,\n type: supressNA(ordLine.colorDescription || ordLine.typeColorID || ''),\n size: supressNA(ordLine.sizeDescription || ordLine.typeSizeID || ''),\n cost: currency(ordLine.extendedCost),\n orderQuantity: ordLine.quantity,\n name: ordLine.participantName || ordLine.cargo?.participantName || 'Miscellaneous',\n } as OrderListItem\n\n let div = retval.find((x) => x.divisionName == divName)\n if (div) {\n div.divsionItemCount++\n let team = div.teams.find((x) => x.teamName == teamName)\n if (team) {\n //suppress repeating values\n if (team.orderLines.find((x) => x.name == ordLineDetail.name)) {\n ordLineDetail.name = ''\n }\n team.orderLines.push(ordLineDetail)\n } else {\n team = { teamName: teamName, orderLines: [ordLineDetail] }\n div.teams.push(team)\n }\n } else {\n div = {\n divisionName: divName,\n divsionItemCount: 1,\n teams: [{ teamName: teamName, orderLines: [ordLineDetail] }],\n panelValue: [],\n expandDisabled: computed(() => div?.panelValue.length === div?.teams.length),\n collapseDisabled: computed(() => div?.panelValue.length === 0),\n }\n retval.push(div)\n }\n }\n })\n\n divisionList.value = retval\n })\n\n function expandAllDivision(div: DivisionListItem, index: Number) {\n for (let i = 0; i < div.teams.length; i++) {\n if (div.panelValue.indexOf(i) === -1) {\n div.panelValue.push(i)\n }\n }\n if (divisionPanelsValue.value.indexOf(index) === -1) {\n divisionPanelsValue.value.push(index)\n }\n }\n\n function collapseAllDivision(div: DivisionListItem) {\n //div.panelValue = [] //this does not work. use splice below\n div.panelValue.splice(0, div.teams.length)\n }\n\n function divPanelChange(div: DivisionListItem, index: Number) {\n if (divisionPanelsValue.value.indexOf(index) > -1) {\n //div is being collapsed\n collapseAllDivision(div)\n }\n }\n\n return {\n getCost,\n columns,\n divisionList,\n divisionPanelsValue,\n expandAllDivision,\n collapseAllDivision,\n divPanelChange,\n }\n },\n})\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!./ParticipantOrderGrouped.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!./ParticipantOrderGrouped.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ParticipantOrderGrouped.vue?vue&type=template&id=08ab0a99&scoped=true&\"\nimport script from \"./ParticipantOrderGrouped.vue?vue&type=script&lang=ts&\"\nexport * from \"./ParticipantOrderGrouped.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ParticipantOrderGrouped.vue?vue&type=style&index=0&id=08ab0a99&scoped=true&lang=scss&\"\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 \"08ab0a99\",\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 { 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';\ninstallComponents(component, {VExpansionPanel,VExpansionPanelContent,VExpansionPanelHeader,VExpansionPanels,VIcon})\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ParticipantKitStepUR.vue?vue&type=style&index=0&id=94855c6e&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Registration.vue?vue&type=style&index=0&id=df26071a&lang=scss&scoped=true&\"","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainApp.vue?vue&type=style&index=0&id=3c033654&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserManagement.vue?vue&type=style&index=0&id=9b91c758&lang=scss&scoped=true&\"","import { OrderProductSize } from 'src/models/Order/OrderProductSize'\nimport { OrderProductSelection } from '@/store/orders'\nexport interface OrderProduct extends CMSProduct {\n // Key fields\n upwardProductID: string\n typeProgramID: string\n\n cost: number\n individualID: number\n requiresJerseyNumber: boolean\n hasSNumbers: boolean\n // Order properties\n orderMinimumQuantity: number\n orderMaximumQuantity: number\n orderFreeQuantity: number\n orderSelectionRequired: boolean\n //used to select product uniquely\n id: number\n // used to choose qty and size.\n productColorSizes: OrderProductSize[] | null\n\n // Other info (if not used by the UI, remove.)\n typeProductGroupID: string\n registrationLabel: string | null\n extendedDescription: string | null\n isActive: boolean\n sortOrder: number\n orderQuantity: number\n jerseyNumber: string\n duplicateProductMatchingKey: string | null\n}\n\nexport interface OrderProductLine extends Omit {\n productColorSize: OrderProductSize\n individualID: number\n}\n\nexport function makeOrderLine(product: OrderProduct, variation: OrderProductSize): OrderProductLine {\n return { ...product, individualID: 0, productColorSize: variation }\n}\n\n/**\n * Returns if a size has been selected by size string.\n * @param s size tag\n * @return s if it is not a null-desc\n */\nexport function isSizeUnselected(s: string) {\n return s == 'NONE'\n}\n\n/**\n * Filters the null-descriptions of a variation or size to nothing\n * @param s\n * @return s if it is not a null-desc\n */\nexport function filterNA(s: string) {\n if (s == 'One Size' || s == 'Not Applicable' || s == 'NA' || s == 'N/A') {\n return ''\n }\n return s\n}\n\n/**\n * products coming out of cms\n */\nexport interface CMSProduct {\n cmsProductDescription: string | null\n cmsProductImageUrls: string[] | null\n cmsUnitDescription: string | null\n cmsSizingGuideUrl: string | null\n cmsProductName: string | null\n}\n\n/**\n * Returns a list of products that are selected and have qty > 1\n * Will normalize the products with size/color > 2 to duplicate the product with only that size/color\n * but for now no products in here match that criteria.\n * @param products\n * @param isSelected\n * @return {OrderProduct[]} with only productColorSizes set to null,[], or one for each qty>1\n */\nexport function getFilteredProductList(\n products: OrderProduct[] | Readonly,\n isSelected: (n: OrderProduct) => boolean\n): OrderProductLine[] {\n const rv: OrderProductLine[] = []\n\n products.forEach((x) => {\n if (isSelected(x) && x.productColorSizes && x.productColorSizes.length) {\n x.productColorSizes?.forEach((y) => {\n if (y.orderQuantity > 0) {\n rv.push(makeOrderLine(x, y))\n }\n })\n }\n })\n\n return rv\n}\n\n/**\n * Takes a list of products and generates an is-selected function from the scope that accepts one products\n * @param productsSelected - list of products selected\n */\nexport function generateIsSelected(\n productsSelected: OrderProductSelection[] | Readonly\n) {\n return (product: OrderProduct) => {\n if (product && product.upwardProductID && product.id && productsSelected && productsSelected.length) {\n return (\n productsSelected.findIndex(\n (x) => x.upwardProductID == product.upwardProductID && x.id == product.id\n ) >= 0 ?? false\n )\n }\n return false\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container-fluid mb-5\"},[_vm._m(0),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"order-detail-layout\"},[_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Shipment Information\")]),_c('order-shipper',{attrs:{\"order\":_vm.orderInfo}})],1),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Details\")]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Type: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderTitle))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Order Number: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.order.upwardOrderID))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Order Date: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderDate))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"Placed By: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderInfo.createdBy))])]),_c('div',[_c('span',{staticClass:\"label\"},[_vm._v(\"League: \")]),_c('span',{staticClass:\"field\"},[_vm._v(_vm._s(_vm.orderInfo.leagueName))])])]),_c('cost-summary',{staticClass:\"p-3\",attrs:{\"order\":_vm.order}}),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Ship To\")]),_c('shipping-address-display',{staticClass:\"small text-muted\",attrs:{\"value\":_vm.order.shippingInfo.shipTo}})],1),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Shipping Details\")]),_c('div',{staticClass:\"label mt-3\"},[_vm._v(\"Special Request\")]),_c('div',{staticClass:\"field\"},[_vm._v(_vm._s((\"\" + (_vm.order.notes ? _vm.order.notes : 'none'))))]),_c('div',{staticClass:\"label mt-3\"},[_vm._v(\"Shipping Method\")]),_vm._l((_vm.shippingMethods),function(method,index){return _c('div',{key:index},[(method.selected)?_c('div',[_c('div',{staticClass:\"field\"},[_c('span',[_vm._v(_vm._s(method.description))]),(method.extendedDescription)?_c('span',[_vm._v(\" (\"+_vm._s(method.extendedDescription)+\")\")]):_vm._e()])]):_vm._e()])})],2),_c('div',{staticClass:\"p-3\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Status History\")]),_c('table',_vm._l((_vm.statusList),function(sl,i){return _c('tr',{key:i,staticClass:\"py-1\"},[_c('td',{staticClass:\"small text-muted px-1\"},[_vm._v(_vm._s(_vm.formatDate(sl.createDate)))]),_c('td',{staticClass:\"field px-3\"},[_vm._v(\" \"+_vm._s(sl.statusDescription)+\" \")])])}),0)])],1)])]),(_vm.orderInfo.typeOrderID === 'LEAGUEORDER')?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-4 flex-nowrap flex-shrink-0\"},[_c('switch-slot',{staticClass:\"pop\",attrs:{\"mode\":\"radio\",\"options\":_vm.viewOptions},model:{value:(_vm.viewSwitch),callback:function ($$v) {_vm.viewSwitch=$$v},expression:\"viewSwitch\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\"},[(_vm.viewSwitch == 'price-breakdown')?_c('div',{staticClass:\"col\"},[_c('h5',{staticClass:\"text-muted pl-3\"},[_vm._v(\"Price Breakdown\")]),_c('order-rollup',{attrs:{\"rollups\":_vm.rollups,\"order\":_vm.order}})],1):_vm._e(),(_vm.viewSwitch == 'grouped')?_c('div',{staticClass:\"col\"},[_c('ParticipantOrderGrouped',{attrs:{\"order\":_vm.order}})],1):_vm._e(),(_vm.viewSwitch == 'raw')?_c('div',{staticClass:\"col\"},[_c('order-list-section',{staticClass:\"border-top pt-3\",attrs:{\"order\":_vm.order}},[_c('div',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_c('h5',{staticClass:\"text-muted\"},[_vm._v(\"Items\")])])])],1):_vm._e()])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col text-center\"},[_c('div',{staticClass:\"d-flex flex-column align-items-center\"},[_c('div',{staticClass:\"alert-warning py-2 px-5\"},[_c('div',[_vm._v(\"This is not an invoice.\")]),_c('div',{staticClass:\"small\"},[_vm._v(\"Your order may arrive via multiple shipments.\")])])])])])}]\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\nimport { computed, defineComponent, PropType, ref, onMounted } from '@vue/composition-api'\nimport { cloneDeep } from 'lodash'\nimport dayjs from 'dayjs'\n\nimport InputLabel from '@/elements/InputLabel.vue'\nimport OrderListSection from './OrderListSection.vue'\nimport ShippingAddressDisplay from '@/components/ShippingAddressDisplay.vue'\nimport OrderShipper from '@/components/OrderHistory/OrderShippers.vue'\nimport CostSummary from '@/components/OrderHistory/CostSummary.vue'\nimport SwitchSlot from '@/elements/SwitchSlot.vue'\nimport OrderRollup from '@/views/Programs/Orders/league/components/OrderRollup.vue'\nimport ParticipantOrderGrouped from './ParticipantOrderGrouped.vue'\n\nimport { OrderInfo } from '@/GeneratedTypes/Order/ListInfo/OrderInfo'\nimport { CFormatOrder } from '@/models/Order/xStartupOrderExt'\nimport { SectionNameConversion } from '@/views/Programs/Orders/vues/history/ext/SectionNames'\nimport { useOrderRollup } from '@/views/Programs/Orders/compositions/userOrderRollup'\nimport store from '@/store'\n\nexport default defineComponent({\n name: 'OrderDetail',\n components: {\n OrderListSection,\n InputLabel,\n ShippingAddressDisplay,\n OrderShipper,\n CostSummary,\n SwitchSlot,\n OrderRollup,\n ParticipantOrderGrouped,\n },\n props: {\n order: { type: Object as PropType, required: true },\n orderInfo: { type: Object as PropType, required: true },\n },\n setup(props) {\n const trackingNumbers = computed(() => props.orderInfo.trackingNumbers?.map((x) => x.trackingNumber))\n const shippingMethods = computed(() => props.order.shippingInfo?.shipMethods?.filter((x) => x.selected))\n const shipDate = computed(() =>\n props.orderInfo.shipDate\n ? dayjs(props.orderInfo.shipDate).format('MMM D, YYYY')\n : 'Order has not shipped'\n )\n\n const statusList = computed(() =>\n cloneDeep(props.orderInfo.statusList ?? []).sort((a, b) =>\n a.valueOf() == b.valueOf() ? 0 : a.valueOf() > b.valueOf() ? -1 : 1\n )\n )\n\n const statusText = computed(() => props.orderInfo.upwardOrderStatusID ?? 'n/a')\n const orderDate = computed(() => props.orderInfo?.createDate && formatDate(props.orderInfo.createDate))\n function formatDate(d: Date) {\n return dayjs(d).format('MMM D, YYYY h:mm a')\n }\n const orderTitle = computed(() => SectionNameConversion[props.order.upwardOrderType ?? ''])\n\n const orderRollup = useOrderRollup()\n orderRollup.getRollup(props.order?.upwardLeagueID ?? '', props.order?.upwardOrderID ?? '')\n\n const viewOptions = [\n { text: 'Price Breakdown', value: 'price-breakdown' },\n { text: 'Grouped By Division/Team', value: 'grouped' },\n { text: 'Sortable Listing', value: 'raw' },\n ]\n const viewSwitch = ref(props.orderInfo?.typeOrderID === 'LEAGUEORDER' ? viewOptions[0].value : 'raw')\n\n onMounted(() => {\n store.dispatch.programTypes.fetchAll(false) //go ahead and cache these up\n })\n\n return {\n statusText,\n trackingNumbers,\n shippingMethods,\n shipDate,\n orderDate,\n statusList,\n formatDate,\n orderTitle,\n viewOptions,\n viewSwitch,\n rollups: computed(() => orderRollup.rollup.value),\n }\n },\n})\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!./OrderDetail.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!./OrderDetail.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./OrderDetail.vue?vue&type=template&id=072e9c43&scoped=true&\"\nimport script from \"./OrderDetail.vue?vue&type=script&lang=ts&\"\nexport * from \"./OrderDetail.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./OrderDetail.vue?vue&type=style&index=0&id=072e9c43&scoped=true&lang=scss&\"\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 \"072e9c43\",\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('div',[_c('modal',{attrs:{\"title\":_vm.title,\"is-small\":true},on:{\"change\":_vm.modalClose},model:{value:(_vm.internalModalIsVisible),callback:function ($$v) {_vm.internalModalIsVisible=$$v},expression:\"internalModalIsVisible\"}},[_c('div',{staticClass:\"container-fluid\"},[_c('div',{staticClass:\"row px-2\"},[_c('div',{staticClass:\"col-md-12 py-2\"},[_vm._t(\"default\"),(_vm.hasConfirmBox)?_c('span',[_vm._v(\"To proceed with deletion, please type CONFIRM and click Delete.\")]):_vm._e()],2),(_vm.hasConfirmBox)?_c('div',{staticClass:\"col-md-6 py-2\"},[_c('text-input',{model:{value:(_vm.confirmation),callback:function ($$v) {_vm.confirmation=$$v},expression:\"confirmation\"}})],1):_vm._e()])]),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-light\",on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]),_c('button',{staticClass:\"btn btn-danger\",class:{ disabled: _vm.areWeReadyToConfirm },attrs:{\"disabled\":_vm.areWeReadyToConfirm},on:{\"click\":_vm.confirmed}},[_c('delete-icon'),_vm._t(\"delete-button\",[_vm._v(\" Delete \")])],2)])],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\n\n\n\n\n\n\n\n\n\n\n\n\n\n/***\n * @vue-event {null} onDeleteConfirm - confirm delete\n * @vue-event {null} onDeleteDismissed - delete closed\n */\n\nimport { defineComponent, computed, ref, watch, onMounted } from '@vue/composition-api'\nimport Modal from '@/components/Modal.vue'\nimport TextInput from '@/elements/TextInput.vue'\nimport { DeleteIcon } from '@/elements/Icons'\n\nexport default defineComponent({\n name: 'ConfirmDeleteModal',\n components: {\n Modal,\n TextInput,\n DeleteIcon,\n },\n props: {\n value: { type: Boolean, required: false, default: false },\n title: { type: String, default: '' },\n hasConfirmBox: { type: Boolean, default: true },\n },\n setup(props, ctx) {\n const internalModalIsVisible = ref(false)\n const confirmation = ref('')\n\n /***\n * Do we have everything we need for a user to hit the Delete button?\n */\n const areWeReadyToConfirm = computed(() => !confirmText.value && props.hasConfirmBox)\n\n const confirmText = computed(() => confirmation.value.toUpperCase() === 'CONFIRM')\n\n onMounted(() => {\n internalModalIsVisible.value = props.value\n })\n\n function confirmed() {\n ctx.emit('onDeleteConfirmed')\n toggleModal()\n }\n\n function cancel() {\n ctx.emit('onDeleteDismissed')\n toggleModal()\n }\n\n function toggleModal() {\n confirmation.value = ''\n internalModalIsVisible.value = !internalModalIsVisible.value\n }\n\n function modalClose() {\n confirmation.value = ''\n ctx.emit('onDeleteDismissed')\n }\n\n watch(\n () => internalModalIsVisible.value,\n () => {\n ctx.emit('input', internalModalIsVisible.value)\n ctx.emit('change', internalModalIsVisible.value)\n }\n )\n\n watch(\n () => props.value,\n () => {\n if (internalModalIsVisible.value !== props.value) {\n internalModalIsVisible.value = props.value\n }\n }\n )\n\n return {\n internalModalIsVisible,\n modalClose,\n confirmation,\n cancel,\n areWeReadyToConfirm,\n confirmed,\n }\n },\n})\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=6d542880&\"\nimport script from \"./ConfirmDeleteModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./ConfirmDeleteModal.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('the-mask',{staticClass:\"form-control\",attrs:{\"mask\":_vm.mask,\"placeholder\":_vm.placeholder,\"enabled\":_vm.enabled,\"id\":_vm.id,\"name\":_vm.name},model:{value:(_vm.internalValue),callback:function ($$v) {_vm.internalValue=$$v},expression:\"internalValue\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { defineComponent, ref, watch } from '@vue/composition-api'\nimport uuid from 'uuid'\nimport { TheMask } from 'vue-the-mask'\n\nexport default defineComponent({\n name: 'MaskedInputElement',\n components: {\n TheMask,\n },\n props: {\n id: { type: String, default: () => 'masked-' + uuid.v4(), required: false },\n name: { type: String, default: '', required: false },\n enabled: { type: Boolean, default: true, required: false },\n inputType: { type: String, default: 'text', required: false },\n placeholder: { type: String, default: '', required: false },\n mask: { type: String, default: '', required: false },\n value: { type: String, required: true },\n },\n setup(props, ctx) {\n const internalValue = ref(props.value)\n\n watch(\n () => props.value,\n () => {\n internalValue.value = props.value\n }\n )\n\n watch(\n () => internalValue.value,\n () => {\n ctx.emit('input', internalValue.value)\n ctx.emit('change', internalValue.value)\n }\n )\n\n return {\n internalValue,\n }\n },\n})\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!./MaskedInputElement.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!./MaskedInputElement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MaskedInputElement.vue?vue&type=template&id=05763cde&\"\nimport script from \"./MaskedInputElement.vue?vue&type=script&lang=ts&\"\nexport * from \"./MaskedInputElement.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","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=55b21d5f&lang=scss&scoped=true&\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabMenu.vue?vue&type=style&index=0&id=8e06741a&lang=scss&scoped=true&\"","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!./ForgotPassword.vue?vue&type=style&index=0&lang=css&\"","/*\n * Logic that is shared across the overall product flow\n */\nimport { computed } from '@vue/composition-api'\n\nimport store from '@/store'\nimport { ProdConfigTypes } from '@/lib/common/ProdConfigTypes'\nimport { LeagueTypes } from '@/lib/common/LeagueTypes'\n\nexport function productFlowLogic() {\n /* productFlow Store */\n const isNewProdConfig = computed(() => store.getters.productFlow.isNewProdConfig)\n const prodConfigType = computed(() => store.getters.productFlow.prodConfigType)\n const currentTypeProgramId = computed(() => store.getters.productFlow.currentProgramTypeId)\n const setCurrentProductSetupStep = store.commit.productFlow.setCurrentProductSetupStep\n const setCurrentTypeProgram = store.commit.productFlow.setCurrentTypeProgram\n const productSetupMaxTouchedStep = computed(() => store.getters.productFlow.maxTouchedProductSetupStep)\n const setProdConfigType = store.commit.productFlow.setProdConfigType\n const setIsNewProdConfig = store.commit.productFlow.setIsNewProdConfig\n\n /* leagueAbstraction store */\n const currentTypeLeagueId = computed(() => store.getters.leagueAbstraction.currentItem.typeLeagueID)\n const leagueAbstraction = computed(() => store.getters.leagueAbstraction.currentItem)\n\n /* productOffering Store */\n const productOfferingConfig = computed(() => store.getters.productOfferings.productOfferingConfig)\n\n /* authorization Store */\n const firstAccountNumber = computed(() => store.getters.authorization.firstAccountNumber)\n\n const isUpwardSelect = computed(\n () =>\n (prodConfigType.value == ProdConfigTypes.ESTIMATE\n ? productOfferingConfig.value.typeLeagueID\n : leagueAbstraction.value.typeLeagueID) == LeagueTypes.UPWARDSELECT\n )\n\n /*\n * ProductSetupStepper Logic\n */\n function productSetupNextStep(currentStep: number) {\n const steps = store.getters.productFlow.steps\n const stepName = steps[currentStep]\n store.commit.productFlow.addViewedStep({ step: stepName })\n\n const next = currentStep + 1\n setCurrentProductSetupStep({ step: next })\n setMaxTouchedProductSetupStep(next)\n }\n\n function setMaxTouchedProductSetupStep(nextStep: number) {\n const max = store.getters.productFlow.maxTouchedProductSetupStep\n if (nextStep >= max) {\n store.commit.productFlow.setMaxTouchedProductSetupStep({ step: nextStep })\n }\n }\n\n function markAsDirty() {\n if (store.getters.productOfferings.initialProductFlowLoadingComplete) {\n store.commit.promptToSave.setIsDirty({ isDirty: true })\n }\n }\n\n function getUpwardProgramTypeByIsCheer(isCheer: boolean) {\n return store.getters.leagueAbstraction.leagueUpwardProgramTypeID.find((p) => p.isCheer == isCheer)\n }\n\n function productSetupStepClicked(step: number) {\n setCurrentProductSetupStep({ step })\n }\n\n /*\n * ParticipantKitStepper 1 Logic\n */\n const kit1MaxTouchedStep = computed(() => store.getters.productFlow.maxTouchedParticipantKit1Step)\n\n function kit1NextStep(currentStep: number) {\n const next = currentStep + 1\n store.commit.productFlow.setCurrentParticipantKit1Step({ step: next })\n setMaxTouchedParticipantKit1Step(next)\n }\n\n function setMaxTouchedParticipantKit1Step(nextStep: number) {\n const max = store.getters.productFlow.maxTouchedParticipantKit1Step\n if (nextStep >= max) {\n store.commit.productFlow.setMaxTouchedParticipantKit1Step({ step: nextStep })\n }\n }\n\n function kit1Clicked(step: number) {\n store.commit.productFlow.setCurrentParticipantKit1Step({ step })\n }\n\n /*\n * ParticipantKitStepper 2 Logic\n */\n const kit2MaxTouchedStep = computed(() => store.getters.productFlow.maxTouchedParticipantKit2Step)\n function kit2Clicked(step: number) {\n store.commit.productFlow.setCurrentParticipantKit2Step({ step })\n }\n\n function setMaxTouchedParticipantKit2Step(nextStep: number) {\n const max = store.getters.productFlow.maxTouchedParticipantKit2Step\n if (nextStep >= max) {\n store.commit.productFlow.setMaxTouchedParticipantKit2Step({ step: nextStep })\n }\n }\n\n function kit2NextStep(currentStep: number) {\n const next = currentStep + 1\n store.commit.productFlow.setCurrentParticipantKit2Step({ step: next })\n setMaxTouchedParticipantKit2Step(next)\n }\n\n /*\n * Step actions\n */\n function nextStep(isSport: boolean, step: number) {\n if (isSport) {\n kit1NextStep(step)\n } else {\n kit2NextStep(step)\n }\n }\n\n function kitStepClicked(isSport: boolean, step: number) {\n if (isSport) {\n kit1Clicked(step)\n } else {\n kit2Clicked(step)\n }\n }\n\n /*\n * Fetch product catalog\n */\n async function fetchProductCatalog() {\n store.commit.productFlow.setProductOfferingLoading({ loading: true })\n\n const firstPracticeDate =\n prodConfigType.value == ProdConfigTypes.ESTIMATE\n ? productOfferingConfig.value.firstPracticeDateEstimate\n : leagueAbstraction.value.productSeasonDate\n\n const leagueType =\n prodConfigType.value == ProdConfigTypes.ESTIMATE\n ? productOfferingConfig.value.typeLeagueID\n : leagueAbstraction.value.typeLeagueID\n try {\n await store.dispatch.productOfferings.fetchTopLevelProducts({\n accountNumber: firstAccountNumber.value,\n leagueType: leagueType ?? '',\n firstPracticeDate,\n })\n } finally {\n store.commit.productFlow.setProductOfferingLoading({ loading: false })\n }\n }\n\n /*\n * Utilites\n */\n\n function adjustIndex(i: number) {\n // Add 1 to convert 0 base index to 1 base\n // Add another 1 to account for product-group-picker (offering) in the stepper\n return i + 2\n }\n\n return {\n leagueAbstraction,\n productOfferingConfig,\n currentTypeProgramId,\n currentTypeLeagueId,\n firstAccountNumber,\n productSetupNextStep,\n productSetupMaxTouchedStep,\n productSetupStepClicked,\n nextStep,\n kitStepClicked,\n kit1MaxTouchedStep,\n kit2MaxTouchedStep,\n adjustIndex,\n fetchProductCatalog,\n markAsDirty,\n setProdConfigType,\n setIsNewProdConfig,\n isNewProdConfig,\n prodConfigType,\n setCurrentTypeProgram,\n getUpwardProgramTypeByIsCheer,\n isUpwardSelect,\n }\n}\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PromoCardDisplay.vue?vue&type=style&index=0&id=995b1108&lang=scss&scoped=true&\"","import { LeagueListItem } from '@/models/Program/LeagueListItem'\nimport { LeagueProgram } from '@/GeneratedTypes/LeagueProgram'\nimport { getEmptyLeagueListItem, LeagueListItemSeed } from '@/lib/support/models/LeagueListItem/data'\n\n/***\n * Limited function gets us from a LeagueProgram array\n * to a description of the league as a league list item.\n * Moves cheer and primary league into the structure.\n *\n * @param pts\n * @constructor\n */\nexport function LeagueProgams2LeagueListItem(pts: LeagueProgram[]): LeagueListItem {\n const lli = getEmptyLeagueListItem(new LeagueListItemSeed())\n if (pts.length > 1) {\n if (pts[1]) {\n lli.cheerProgramTypeID = pts[1].typeProgramID\n lli.cheerProgramTypeDescription = 'Cheer'\n }\n lli.programTypeID = pts[0].typeProgramID\n lli.programTypeDescription = pts[0].typeProgramID\n }\n\n return lli\n}\n","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!./WebviewReports.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Slide.vue?vue&type=style&index=0&id=132c34f4&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex grid-card\"},[_c('div',{staticClass:\"card shadow-sm w-100\",class:{ 'is-selected': _vm.isSelected, dark: _vm.dark, light: !_vm.dark }},[_c('div',{staticClass:\"card-body pb-1\"},[_vm._t(\"default\")],2),_vm._t(\"footer\")],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\nimport { defineComponent } from '@vue/composition-api'\n\nexport default defineComponent({\n name: 'GridCard',\n props: {\n dark: { type: Boolean, required: false, default: false },\n isSelected: { type: Boolean, required: false, default: false },\n },\n})\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!./GridCard.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!./GridCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GridCard.vue?vue&type=template&id=2dcd36b2&\"\nimport script from \"./GridCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./GridCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./GridCard.vue?vue&type=style&index=0&lang=scss&\"\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('validation-provider',{attrs:{\"rules\":_vm.VeeValidateRules,\"mode\":_vm.veeValidateMode},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar errors = ref.errors;\nvar classes = ref.classes;\nvar failedRules = ref.failedRules;\nreturn [(_vm.label)?_c('input-label',{class:_vm.wrapperClass,attrs:{\"label\":_vm.label,\"inline\":true,\"required\":_vm.required,\"input-id\":_vm.id,\"sub-label\":_vm.subLabel,\"sub-label-inline\":_vm.subLabelInline,\"show-help\":_vm.showHelp},on:{\"helpClicked\":function($event){return _vm.$emit('helpClicked')}}}):_vm._e(),_vm._t(\"default\"),(_vm.subText)?_c('p',{staticClass:\"text-muted font-italic small m-0\"},[_vm._v(_vm._s(_vm.subText))]):_vm._e(),(_vm.subTextWithLink)?_c('p',{staticClass:\"text-muted font-italic small m-0\",domProps:{\"innerHTML\":_vm._s(_vm.subTextWithLink)}}):_vm._e(),(errors[0])?_c('p',{staticClass:\"inline-error m-0\"},[_vm._v(_vm._s(errors[0]))]):_vm._e()]}}],null,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\nimport { defineComponent } from '@vue/composition-api'\nimport { getProps } from '@/composables/BaseInputWrapperProps'\nimport InputLabel from '@/elements/InputLabel.vue'\nimport { ValidationProvider } from 'vee-validate'\n\nexport default defineComponent({\n name: 'BaseInputWrapper',\n components: {\n InputLabel,\n ValidationProvider,\n },\n props: {\n ...getProps(),\n },\n})\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!./BaseInputWrapper.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!./BaseInputWrapper.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BaseInputWrapper.vue?vue&type=template&id=39e03338&\"\nimport script from \"./BaseInputWrapper.vue?vue&type=script&lang=ts&\"\nexport * from \"./BaseInputWrapper.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","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=style&index=0&id=173ba804&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlertCloak.vue?vue&type=style&index=1&lang=scss&\""],"sourceRoot":""}