{"version":3,"file":"js/app.js","mappings":"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","sources":["webpack://vue-app/./src/extensions/number.extensions.ts","webpack://vue-app/./src/assets/icons/icon__check.svg","webpack://vue-app/./src/assets/icons/icon__warning.svg","webpack://vue-app/./src/components/layout/Notifications.vue?ba14","webpack://vue-app/./src/components/layout/Notifications.vue","webpack://vue-app/./src/assets/icons/icon__chevron.svg","webpack://vue-app/./src/types/organizationType.ts","webpack://vue-app/./src/types/role.ts","webpack://vue-app/./src/types/subscriptionStatus.ts","webpack://vue-app/./src/types/guid.ts","webpack://vue-app/./src/locales/index.ts","webpack://vue-app/./src/i18n.ts","webpack://vue-app/./src/types/entities/activity/activity.ts","webpack://vue-app/./src/types/documentCategory.ts","webpack://vue-app/./src/types/documentPolicy.ts","webpack://vue-app/./src/types/entities/product.ts","webpack://vue-app/./src/types/entities/activity/participant.ts","webpack://vue-app/./src/stores/memberStore.ts","webpack://vue-app/./src/router/helpers.ts","webpack://vue-app/./src/components/navigation/Subnav.vue?8453","webpack://vue-app/./src/components/navigation/Subnav.vue","webpack://vue-app/./src/components/navigation/Subnav.vue?e19a","webpack://vue-app/./src/components/navigation/AdminNavbarItems.vue?e16f","webpack://vue-app/./src/components/navigation/AdminNavbarItems.vue","webpack://vue-app/./src/components/navigation/AdminNavbarItems.vue?991d","webpack://vue-app/./src/components/navigation/CorporateMemberNavbarItems.vue?e139","webpack://vue-app/./src/components/navigation/CorporateMemberNavbarItems.vue","webpack://vue-app/./src/components/navigation/CorporateMemberNavbarItems.vue?14ed","webpack://vue-app/./src/components/navigation/SyndicateAdminMemberNavbarItems.vue?31b5","webpack://vue-app/./src/components/navigation/SyndicateAdminMemberNavbarItems.vue","webpack://vue-app/./src/components/navigation/SyndicateAdminMemberNavbarItems.vue?ea79","webpack://vue-app/./src/components/navigation/SyndicateCoownerMemberNavbarItems.vue?9fd1","webpack://vue-app/./src/components/navigation/SyndicateCoownerMemberNavbarItems.vue","webpack://vue-app/./src/components/navigation/SyndicateCoownerMemberNavbarItems.vue?7b8f","webpack://vue-app/./src/components/navigation/IndividualMemberNavbarItems.vue?c3ed","webpack://vue-app/./src/components/navigation/IndividualMemberNavbarItems.vue","webpack://vue-app/./src/components/navigation/IndividualMemberNavbarItems.vue?1ef6","webpack://vue-app/./src/injection/types.ts","webpack://vue-app/./src/extensions/date.extensions.ts","webpack://vue-app/./src/stores/apiStore.ts","webpack://vue-app/./src/services/apiService.ts","webpack://vue-app/./src/extensions/string.extensions.ts","webpack://vue-app/./src/types/responses/succeededOrNotResponse.ts","webpack://vue-app/./src/services/activityOccurrenceService.ts","webpack://vue-app/./src/services/activityService.ts","webpack://vue-app/./src/services/addressService.ts","webpack://vue-app/./src/services/bookService.ts","webpack://vue-app/./src/services/contactService.ts","webpack://vue-app/./src/services/documentService.ts","webpack://vue-app/./src/services/favoriteDocumentService.ts","webpack://vue-app/./src/services/invoiceService.ts","webpack://vue-app/./src/services/memberService.ts","webpack://vue-app/./src/services/membershipService.ts","webpack://vue-app/./src/services/organizationService.ts","webpack://vue-app/./src/services/userService.ts","webpack://vue-app/./src/inversify.config.ts","webpack://vue-app/./src/components/navigation/IndividualAndSyndicateCoownerMemberNavbarItems.vue?9341","webpack://vue-app/./src/components/navigation/IndividualAndSyndicateCoownerMemberNavbarItems.vue","webpack://vue-app/./src/components/navigation/IndividualAndSyndicateCoownerMemberNavbarItems.vue?ac4b","webpack://vue-app/./src/components/navigation/Navbar.vue?c04b","webpack://vue-app/./src/components/navigation/Navbar.vue","webpack://vue-app/./src/components/navigation/Navbar.vue?7d82","webpack://vue-app/./src/components/layout/ProgressRing.vue?408b","webpack://vue-app/./src/components/layout/ProgressRing.vue","webpack://vue-app/./src/components/layout/ProgressRing.vue?6c08","webpack://vue-app/./src/components/layout/LogoutPopup.vue?d87b","webpack://vue-app/./src/components/layout/LogoutPopup.vue","webpack://vue-app/./src/components/layout/LogoutPopup.vue?b97d","webpack://vue-app/./src/components/layout/Loader.vue?ad51","webpack://vue-app/./src/components/layout/Loader.vue","webpack://vue-app/./src/App.vue?cb76","webpack://vue-app/./src/App.vue","webpack://vue-app/./src/App.vue?7ccd","webpack://vue-app/./src/stores/pinia.ts","webpack://vue-app/./src/validation/rules.ts","webpack://vue-app/./src/notify.ts","webpack://vue-app/./src/assets/icons/icon__arrow.svg","webpack://vue-app/./src/components/layout/BtnLink.vue?359f","webpack://vue-app/./src/components/layout/BtnLink.vue","webpack://vue-app/./src/assets/icons/icon__download.svg","webpack://vue-app/./src/components/layout/Card.vue?771b","webpack://vue-app/./src/components/layout/Card.vue","webpack://vue-app/./src/components/layout/Card.vue?1c1f","webpack://vue-app/./src/validation/index.ts","webpack://vue-app/./src/components/forms/FormInput.vue?4715","webpack://vue-app/./src/components/forms/FormInput.vue","webpack://vue-app/./src/components/forms/FormInput.vue?73d1","webpack://vue-app/./src/components/forms/FormRow.vue?6411","webpack://vue-app/./src/components/forms/FormRow.vue","webpack://vue-app/./src/components/forms/FormRow.vue?3d56","webpack://vue-app/./src/components/forms/FormErrorsList.vue?0a0b","webpack://vue-app/./src/components/forms/FormErrorsList.vue","webpack://vue-app/./src/assets/icons/icon__help.svg","webpack://vue-app/./src/components/forms/FormTooltip.vue?53af","webpack://vue-app/./src/components/forms/FormTooltip.vue","webpack://vue-app/./src/views/ChangePassword.vue?47eb","webpack://vue-app/./src/views/ChangePassword.vue","webpack://vue-app/./src/views/ChangePassword.vue?f5b3","webpack://vue-app/./src/views/ChangeEmail.vue?6090","webpack://vue-app/./src/views/ChangeEmail.vue","webpack://vue-app/./src/views/ChangeEmail.vue?fd6a","webpack://vue-app/./src/components/memberships/MembershipCertificate.vue?472e","webpack://vue-app/./src/components/memberships/MembershipCertificate.vue","webpack://vue-app/./src/components/memberships/MembershipCertificate.vue?d1da","webpack://vue-app/./src/components/forms/FormSelect.vue?4b73","webpack://vue-app/./src/components/forms/FormSelect.vue","webpack://vue-app/./src/components/forms/FormSelect.vue?5bd0","webpack://vue-app/./src/components/forms/FormReadonlyField.vue?e604","webpack://vue-app/./src/components/forms/FormReadonlyField.vue","webpack://vue-app/./src/components/forms/FormReadonlyField.vue?f360","webpack://vue-app/./src/views/Account.vue?8d54","webpack://vue-app/./src/views/Account.vue","webpack://vue-app/./src/views/Account.vue?727f","webpack://vue-app/./src/views/Coproperty.vue?cf90","webpack://vue-app/./src/views/Coproperty.vue","webpack://vue-app/./src/assets/icons/icon__calendar.svg","webpack://vue-app/./src/assets/icons/icon__clipboard.svg","webpack://vue-app/./src/assets/icons/icon__person.svg","webpack://vue-app/./src/assets/icons/icon__edit.svg","webpack://vue-app/./src/assets/icons/icon__mail.svg","webpack://vue-app/./src/assets/icons/icon__delete.svg","webpack://vue-app/./src/assets/icons/icon__transfer.svg","webpack://vue-app/./src/assets/icons/icon__view.svg","webpack://vue-app/./src/assets/icons/icon__heart--full.svg","webpack://vue-app/./src/assets/icons/icon__heart--empty.svg","webpack://vue-app/./src/assets/icons/icon__external.svg","webpack://vue-app/./src/components/layout/DataTable.vue?9ffc","webpack://vue-app/./src/components/layout/DataTable.vue","webpack://vue-app/./src/components/layout/DataTable.vue?3e60","webpack://vue-app/./src/components/tables/DocumentsTable.vue?83a1","webpack://vue-app/./src/components/tables/DocumentsTable.vue","webpack://vue-app/./src/components/tables/DocumentsTable.vue?dee8","webpack://vue-app/./src/views/CopropertyIndex.vue?4e7b","webpack://vue-app/./src/views/CopropertyIndex.vue","webpack://vue-app/./src/views/CopropertyIndex.vue?3b53","webpack://vue-app/./src/views/Company.vue?89d2","webpack://vue-app/./src/views/Company.vue","webpack://vue-app/./src/components/tables/InvoiceTable.vue?059f","webpack://vue-app/./src/components/tables/InvoiceTable.vue","webpack://vue-app/./src/components/tables/InvoiceTable.vue?0075","webpack://vue-app/./src/types/productCategory.ts","webpack://vue-app/./src/helpers.ts","webpack://vue-app/./src/views/Invoices.vue?9334","webpack://vue-app/./src/views/Invoices.vue","webpack://vue-app/./src/views/Invoices.vue?2e52","webpack://vue-app/./src/components/tables/MemberTable.vue?374e","webpack://vue-app/./src/components/tables/MemberTable.vue","webpack://vue-app/./src/components/tables/MemberTable.vue?2bb3","webpack://vue-app/./src/components/tables/ContactTable.vue?5437","webpack://vue-app/./src/components/tables/ContactTable.vue","webpack://vue-app/./src/components/tables/ContactTable.vue?8f96","webpack://vue-app/./src/components/forms/FormFiles.vue?272b","webpack://vue-app/./src/components/forms/FormFiles.vue","webpack://vue-app/./src/components/forms/FormFiles.vue?1334","webpack://vue-app/./src/components/forms/FormMultiSelect.vue?9f5f","webpack://vue-app/./src/components/forms/FormMultiSelect.vue","webpack://vue-app/./src/components/forms/FormMultiSelect.vue?f065","webpack://vue-app/./src/types/activityArea.ts","webpack://vue-app/./src/extensions/formOptions.extensions.ts","webpack://vue-app/./src/components/forms/FormTextEditorLinkPopup.vue?8a9d","webpack://vue-app/./src/components/forms/FormTextEditorLinkPopup.vue","webpack://vue-app/./src/components/forms/FormTextEditorLinkPopup.vue?89ff","webpack://vue-app/./src/components/forms/FormTextEditor.vue?408c","webpack://vue-app/./src/components/forms/FormTextEditor.vue","webpack://vue-app/./src/components/forms/FormTextEditor.vue?7da2","webpack://vue-app/./src/components/forms/FormCheckbox.vue?8617","webpack://vue-app/./src/components/forms/FormCheckbox.vue","webpack://vue-app/./src/components/forms/FormCheckbox.vue?f526","webpack://vue-app/./src/components/forms/OrganizationForm.vue?0c39","webpack://vue-app/./src/components/forms/OrganizationForm.vue","webpack://vue-app/./src/components/forms/OrganizationForm.vue?f9cd","webpack://vue-app/./src/views/member/MemberOrganizationForm.vue?8cba","webpack://vue-app/./src/views/member/MemberOrganizationForm.vue","webpack://vue-app/./src/views/member/MemberOrganizationForm.vue?0ed3","webpack://vue-app/./src/views/Membership.vue?f42a","webpack://vue-app/./src/views/Membership.vue","webpack://vue-app/./src/views/Membership.vue?446a","webpack://vue-app/./src/views/Syndicate.vue?804d","webpack://vue-app/./src/views/Syndicate.vue","webpack://vue-app/./src/views/admin/Admin.vue?021e","webpack://vue-app/./src/views/admin/Admin.vue","webpack://vue-app/./src/assets/icons/icon__back.svg","webpack://vue-app/./src/components/layout/BackLinkTitle.vue?7507","webpack://vue-app/./src/components/layout/BackLinkTitle.vue","webpack://vue-app/./src/components/layout/BackLinkTitle.vue?817d","webpack://vue-app/./src/components/layout/Breadcrumbs.vue?b156","webpack://vue-app/./src/components/layout/Breadcrumbs.vue","webpack://vue-app/./src/components/layout/Breadcrumbs.vue?07ed","webpack://vue-app/./src/components/forms/Fieldset.vue?40ba","webpack://vue-app/./src/components/forms/Fieldset.vue","webpack://vue-app/./src/components/forms/FormRadios.vue?9746","webpack://vue-app/./src/components/forms/FormRadios.vue","webpack://vue-app/./src/components/forms/FormRadios.vue?a82e","webpack://vue-app/./src/components/products/ProductBaseForm.vue?2bd4","webpack://vue-app/./src/components/products/ProductBaseForm.vue","webpack://vue-app/./src/components/products/ProductBaseForm.vue?0951","webpack://vue-app/./src/components/activities/ActivityScheduleForm.vue?c29b","webpack://vue-app/./src/components/activities/ActivityScheduleForm.vue","webpack://vue-app/./src/components/activities/ActivityScheduleForm.vue?8f7f","webpack://vue-app/./src/types/entities/activity/activityOccurrence.ts","webpack://vue-app/./src/components/activities/ActivityOccurrenceForm.vue?274d","webpack://vue-app/./src/components/activities/ActivityOccurrenceForm.vue","webpack://vue-app/./src/components/activities/ActivityOccurrenceForm.vue?04f5","webpack://vue-app/./src/components/activities/ActivityForm.vue?f821","webpack://vue-app/./src/components/activities/ActivityForm.vue","webpack://vue-app/./src/components/activities/ActivityForm.vue?5db8","webpack://vue-app/./src/views/admin/AdminActivityForm.vue?1a0d","webpack://vue-app/./src/views/admin/AdminActivityForm.vue","webpack://vue-app/./src/views/admin/AdminActivityForm.vue?6d11","webpack://vue-app/./src/assets/icons/icon__search.svg","webpack://vue-app/./src/components/layout/SearchInput.vue?d1e1","webpack://vue-app/./src/components/layout/SearchInput.vue","webpack://vue-app/./src/components/layout/SearchInput.vue?abee","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceIndex.vue?6e53","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceIndex.vue","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceIndex.vue?e42a","webpack://vue-app/./src/components/activities/NewActivityParticipant.vue?f436","webpack://vue-app/./src/components/activities/NewActivityParticipant.vue","webpack://vue-app/./src/components/activities/NewActivityParticipant.vue?60c0","webpack://vue-app/./src/components/tables/ActivityParticipantTable.vue?9438","webpack://vue-app/./src/components/tables/ActivityParticipantTable.vue","webpack://vue-app/./src/components/tables/ActivityParticipantTable.vue?5c0a","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceParticipants.vue?96f5","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceParticipants.vue","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceParticipants.vue?c0f5","webpack://vue-app/./src/components/activities/ActivityParticipantTransferForm.vue?09cc","webpack://vue-app/./src/components/activities/ActivityParticipantTransferForm.vue","webpack://vue-app/./src/components/activities/ActivityParticipantTransferForm.vue?c125","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceParticipantTransfer.vue?9c34","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceParticipantTransfer.vue","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceParticipantTransfer.vue?e76b","webpack://vue-app/./src/components/tables/ActivityRegistrationTable.vue?36cb","webpack://vue-app/./src/components/tables/ActivityRegistrationTable.vue","webpack://vue-app/./src/components/tables/ActivityRegistrationTable.vue?5d8b","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceRegistrations.vue?422a","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceRegistrations.vue","webpack://vue-app/./src/views/admin/AdminActivityOccurrenceRegistrations.vue?2f96","webpack://vue-app/./src/views/admin/AdminOrganizationIndex.vue?4df6","webpack://vue-app/./src/views/admin/AdminOrganizationIndex.vue","webpack://vue-app/./src/views/admin/AdminOrganizationIndex.vue?a01c","webpack://vue-app/./src/views/admin/AdminOrganizationForm.vue?5c54","webpack://vue-app/./src/views/admin/AdminOrganizationForm.vue","webpack://vue-app/./src/views/admin/AdminOrganizationForm.vue?1eef","webpack://vue-app/./src/types/entities/plan/planType.ts","webpack://vue-app/./src/components/memberships/MembershipForm.vue?7393","webpack://vue-app/./src/components/memberships/MembershipForm.vue","webpack://vue-app/./src/components/memberships/MembershipForm.vue?47b5","webpack://vue-app/./src/components/layout/Legend.vue?5cd0","webpack://vue-app/./src/components/layout/Legend.vue","webpack://vue-app/./src/components/memberships/MembershipsForm.vue?6ec1","webpack://vue-app/./src/components/memberships/MembershipsForm.vue","webpack://vue-app/./src/components/memberships/MembershipsForm.vue?910b","webpack://vue-app/./src/views/admin/AdminMembershipsIndex.vue?8291","webpack://vue-app/./src/views/admin/AdminMembershipsIndex.vue","webpack://vue-app/./src/views/admin/AdminMembershipsIndex.vue?8362","webpack://vue-app/./src/components/tables/MemberActivityParticipantTable.vue?b7e9","webpack://vue-app/./src/components/tables/MemberActivityParticipantTable.vue","webpack://vue-app/./src/components/tables/MemberActivityParticipantTable.vue?8f19","webpack://vue-app/./src/components/tables/MemberActivityTable.vue?67a5","webpack://vue-app/./src/components/tables/MemberActivityTable.vue","webpack://vue-app/./src/components/tables/MemberActivityTable.vue?8c31","webpack://vue-app/./src/components/members/MemberActivities.vue?cc00","webpack://vue-app/./src/components/members/MemberActivities.vue","webpack://vue-app/./src/components/members/MemberActivities.vue?4617","webpack://vue-app/./src/views/member/MemberActivitiesView.vue?442e","webpack://vue-app/./src/views/member/MemberActivitiesView.vue","webpack://vue-app/./src/views/member/MemberActivitiesView.vue?5bcd","webpack://vue-app/./src/components/forms/MemberForm.vue?1f80","webpack://vue-app/./src/components/forms/MemberForm.vue","webpack://vue-app/./src/components/forms/MemberForm.vue?8281","webpack://vue-app/./src/views/shared/AddMemberForm.vue?0705","webpack://vue-app/./src/views/shared/AddMemberForm.vue","webpack://vue-app/./src/views/shared/AddMemberForm.vue?a664","webpack://vue-app/./src/components/forms/ContactForm.vue?6c24","webpack://vue-app/./src/components/forms/ContactForm.vue","webpack://vue-app/./src/components/forms/ContactForm.vue?60b7","webpack://vue-app/./src/views/shared/AddContactForm.vue?703f","webpack://vue-app/./src/views/shared/AddContactForm.vue","webpack://vue-app/./src/views/shared/AddContactForm.vue?91b8","webpack://vue-app/./src/views/member/IndividualMemberSyndicateView.vue?d3fb","webpack://vue-app/./src/views/member/IndividualMemberSyndicateView.vue","webpack://vue-app/./src/views/member/IndividualMemberSyndicateView.vue?6787","webpack://vue-app/./src/views/member/SyndicateCoownerOrganizationView.vue?b82f","webpack://vue-app/./src/views/member/SyndicateCoownerOrganizationView.vue","webpack://vue-app/./src/views/member/SyndicateCoownerOrganizationView.vue?1104","webpack://vue-app/./src/views/SyndicateIndex.vue?cd2a","webpack://vue-app/./src/views/SyndicateIndex.vue","webpack://vue-app/./src/views/SyndicateIndex.vue?2a39","webpack://vue-app/./src/views/CompanyIndex.vue?4ec7","webpack://vue-app/./src/views/CompanyIndex.vue","webpack://vue-app/./src/views/CompanyIndex.vue?fe04","webpack://vue-app/./src/views/admin/AdminResetMemberPassword.vue?6974","webpack://vue-app/./src/views/admin/AdminResetMemberPassword.vue","webpack://vue-app/./src/views/admin/AdminResetMemberPassword.vue?c544","webpack://vue-app/./src/views/shared/EditMemberForm.vue?4fcd","webpack://vue-app/./src/views/shared/EditMemberForm.vue","webpack://vue-app/./src/views/shared/EditMemberForm.vue?0d01","webpack://vue-app/./src/views/shared/EditContactForm.vue?c462","webpack://vue-app/./src/views/shared/EditContactForm.vue","webpack://vue-app/./src/views/shared/EditContactForm.vue?eb2f","webpack://vue-app/./src/views/admin/AdminBookIndex.vue?2382","webpack://vue-app/./src/views/admin/AdminBookIndex.vue","webpack://vue-app/./src/views/admin/AdminBookIndex.vue?f5a3","webpack://vue-app/./src/components/books/BookForm.vue?2f71","webpack://vue-app/./src/components/books/BookForm.vue","webpack://vue-app/./src/components/books/BookForm.vue?7f1c","webpack://vue-app/./src/views/admin/AdminAddBookForm.vue?00ca","webpack://vue-app/./src/views/admin/AdminAddBookForm.vue","webpack://vue-app/./src/views/admin/AdminAddBookForm.vue?db7b","webpack://vue-app/./src/views/admin/AdminEditBookForm.vue?f669","webpack://vue-app/./src/views/admin/AdminEditBookForm.vue","webpack://vue-app/./src/views/admin/AdminEditBookForm.vue?87fd","webpack://vue-app/./src/views/DocumentCategory.vue?289b","webpack://vue-app/./src/views/DocumentCategory.vue","webpack://vue-app/./src/views/DocumentCategory.vue?3ee7","webpack://vue-app/./src/components/forms/DocumentForm.vue?d8b1","webpack://vue-app/./src/components/forms/DocumentForm.vue","webpack://vue-app/./src/components/forms/DocumentForm.vue?0e8f","webpack://vue-app/./src/views/DocumentForm.vue?f640","webpack://vue-app/./src/views/DocumentForm.vue","webpack://vue-app/./src/views/DocumentForm.vue?7988","webpack://vue-app/./src/router/index.ts","webpack://vue-app/./src/main.ts","webpack://vue-app/webpack/bootstrap","webpack://vue-app/webpack/runtime/chunk loaded","webpack://vue-app/webpack/runtime/compat get default export","webpack://vue-app/webpack/runtime/create fake namespace object","webpack://vue-app/webpack/runtime/define property getters","webpack://vue-app/webpack/runtime/ensure chunk","webpack://vue-app/webpack/runtime/get javascript chunk filename","webpack://vue-app/webpack/runtime/get mini-css chunk filename","webpack://vue-app/webpack/runtime/global","webpack://vue-app/webpack/runtime/hasOwnProperty shorthand","webpack://vue-app/webpack/runtime/load script","webpack://vue-app/webpack/runtime/make namespace object","webpack://vue-app/webpack/runtime/node module decorator","webpack://vue-app/webpack/runtime/publicPath","webpack://vue-app/webpack/runtime/jsonp chunk loading","webpack://vue-app/webpack/startup"],"sourcesContent":["Object.defineProperty(Number.prototype, \"toCurrency\", {\n value: function (locale = \"fr-CA\"): string {\n return new Intl.NumberFormat(locale, {\n style: \"currency\",\n currency: \"CAD\",\n minimumFractionDigits: 2,\n maximumFractionDigits: 2,\n }).format(this);\n },\n writable: true,\n configurable: true,\n});","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 40 40\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#00CB14\",\n d: \"M17.05 29.1 31.2 14.95l-2.3-2.25-11.85 11.85-6-6L8.8 20.8l8.25 8.3ZM20 40c-2.733 0-5.317-.525-7.75-1.575-2.433-1.05-4.558-2.483-6.375-4.3-1.817-1.817-3.25-3.942-4.3-6.375C.525 25.317 0 22.733 0 20c0-2.767.525-5.367 1.575-7.8 1.05-2.433 2.483-4.55 4.3-6.35 1.817-1.8 3.942-3.225 6.375-4.275C14.683.525 17.267 0 20 0c2.767 0 5.367.525 7.8 1.575 2.433 1.05 4.55 2.475 6.35 4.275 1.8 1.8 3.225 3.917 4.275 6.35C39.475 14.633 40 17.233 40 20c0 2.733-.525 5.317-1.575 7.75-1.05 2.433-2.475 4.558-4.275 6.375-1.8 1.817-3.917 3.25-6.35 4.3C25.367 39.475 22.767 40 20 40Zm0-3c4.733 0 8.75-1.658 12.05-4.975C35.35 28.708 37 24.7 37 20c0-4.733-1.65-8.75-4.95-12.05C28.75 4.65 24.733 3 20 3c-4.7 0-8.708 1.65-12.025 4.95C4.658 11.25 3 15.267 3 20c0 4.7 1.658 8.708 4.975 12.025C11.292 35.342 15.3 37 20 37Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 48 48\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#ED1B2D\",\n d: \"M24 35.25q1.2 0 1.975-.75.775-.75.775-1.95t-.775-2q-.775-.8-1.975-.8-1.2 0-1.975.8-.775.8-.775 2t.775 1.95q.775.75 1.975.75Zm-2.2-8.85h4.7V12.9h-4.7ZM24 45.25q-4.4 0-8.275-1.65T8.95 39.05q-2.9-2.9-4.55-6.75T2.75 24q0-4.45 1.65-8.325 1.65-3.875 4.55-6.75t6.75-4.55Q19.55 2.7 24 2.7q4.45 0 8.325 1.675 3.875 1.675 6.75 4.55t4.55 6.75Q45.3 19.55 45.3 24q0 4.45-1.675 8.3-1.675 3.85-4.55 6.725-2.875 2.875-6.75 4.55Q28.45 45.25 24 45.25Zm.05-4.7q6.85 0 11.675-4.825Q40.55 30.9 40.55 23.95q0-6.85-4.825-11.675Q30.9 7.45 24 7.45q-6.9 0-11.725 4.825Q7.45 17.1 7.45 24q0 6.9 4.825 11.725Q17.1 40.55 24.05 40.55ZM24 24Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"notifications\" }\nconst _hoisted_2 = { class: \"notification__content\" }\nconst _hoisted_3 = { class: \"notification__icon\" }\nconst _hoisted_4 = [\"innerHTML\"]\n\nimport IconSuccess from \"@/assets/icons/icon__check.svg\";\nimport IconWarning from \"@/assets/icons/icon__warning.svg\";\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Notifications',\n setup(__props) {\n\n\nreturn (_ctx: any,_cache: any) => {\n const _component_notifications = _resolveComponent(\"notifications\", true)!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_notifications, { position: \"top right\" }, {\n body: _withCtx((props) => [\n _createElementVNode(\"div\", {\n class: _normalizeClass(`notification notification--${props.item.type}`)\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n (props.item.type === 'success')\n ? (_openBlock(), _createBlock(_unref(IconSuccess), {\n key: 0,\n class: \"icon icon--green\"\n }))\n : _createCommentVNode(\"\", true),\n (props.item.type === 'error')\n ? (_openBlock(), _createBlock(_unref(IconWarning), {\n key: 1,\n class: \"icon\"\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", {\n class: \"notification__text\",\n innerHTML: props.item.text\n }, null, 8, _hoisted_4)\n ])\n ], 2)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","import script from \"./Notifications.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Notifications.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 10 7\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#000\",\n d: \"M4.707 3.268 8 6.56l1.414-1.414L4.707.44 0 5.147 1.414 6.56l3.293-3.293Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","export enum OrganizationType {\r\n Corporate = \"Corporate\",\r\n RegularSyndicate = \"RegularSyndicate\",\r\n RegularIndividual = \"RegularIndividual\"\r\n}","export enum Role {\r\n Admin = 'admin',\r\n CorporateAdmin = 'corporate_admin_member',\r\n RegularSyndicateAdmin = 'regular_syndicate_admin_member',\r\n RegularSyndicateManager = 'regular_syndicate_manager_member',\r\n RegularSyndicateCoOwner = 'regular_syndicate_coowner_member',\r\n RegularIndividual = 'regular_individual_member'\r\n}","export enum SubscriptionStatus {\r\n Created = 'Created',\r\n WaitingOnPayment = 'WaitingOnPayment',\r\n Active = 'Active',\r\n WaitingOnRenewal = 'WaitingOnRenewal'\r\n}","export class Guid {\n public static newGuid(): Guid {\n return new Guid(\n \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n const r = (Math.random() * 16) | 0;\n const v = c == \"x\" ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n })\n );\n }\n public static get empty(): string {\n return \"00000000-0000-0000-0000-000000000000\";\n }\n public get empty(): string {\n return Guid.empty;\n }\n public static isValid(str: string): boolean {\n const validRegex =\n /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\n return validRegex.test(str);\n }\n private value: string = this.empty;\n constructor(value?: string) {\n if (value) {\n if (Guid.isValid(value)) {\n this.value = value;\n }\n }\n }\n public toString() {\n return this.value;\n }\n\n public toJSON(): string {\n return this.value;\n }\n}\n","export enum Locales {\n EN = 'en',\n FR = 'fr',\n}\n\nexport const LOCALES = [\n { value: Locales.EN, caption: 'English' },\n { value: Locales.FR, caption: 'Français' }\n]\n\nimport en from \"./en.json\";\nimport fr from \"./fr.json\";\n\nexport const messages = {\n [Locales.EN]: en,\n [Locales.FR]: fr\n};\n\nexport const defaultLocale = Locales.EN;","import {createI18n} from \"vue3-i18n\";\nimport {defaultLocale, Locales, messages} from \"@/locales\";\nimport Cookies from \"universal-cookie\";\n\nfunction getDefaultLocale(): string {\n // First, check if a cookie exists\n const language = new Cookies().get('lang')\n\n if (language != undefined && language.length > 0)\n return language.toLowerCase().includes('en') ? Locales.EN : Locales.FR\n\n return defaultLocale\n}\n\nconst i18n = createI18n({\n locale: getDefaultLocale(),\n messages: messages\n});\n\nexport default i18n;\n","import {Product} from \"@/types/entities/product\";\nimport {ActivityOccurrence} from \"@/types/entities/activity/activityOccurrence\";\n\nexport class TinyActivity extends Product {\n pageImage?: File\n savedPageImage?: string\n imageOverlayTextFr?: string\n imageOverlayTextEn?: string\n startsAt?: string;\n endsAt?: string;\n location?: string;\n locationAddress?: string;\n onlineUrl?: string;\n onlinePhoneNumber?: string;\n onlineWebinarNumber?: string;\n surveyUrl?: string;\n trainer?: string;\n maxParticipants?: number;\n isPrivate?: boolean;\n isPublished?: boolean;\n\n participantGuideUrl?: File;\n activityPresentationUrl?: File;\n activityRecordingUrl?: string;\n\n firstStartDate?: string;\n lastEndDate?: string;\n}\n\nexport class Activity extends TinyActivity {\n activityOccurrences: ActivityOccurrence[] = [];\n}\n\nexport enum ActivityLocation {\n Online = \"online\",\n InPerson = \"presential\",\n}\n\nexport function getActivityLocations(): any {\n return [ActivityLocation.Online, ActivityLocation.InPerson];\n}\n\nexport function getStartDate(activity: Activity): string | undefined {\n return activity.activityOccurrences && activity.activityOccurrences.length > 0\n ? activity.activityOccurrences[0].startDate\n : undefined;\n}\n\nexport function getEndDate(activity: Activity): string | undefined {\n return activity.activityOccurrences && activity.activityOccurrences.length > 0\n ? activity.activityOccurrences[activity.activityOccurrences?.length-1].endDate\n : undefined;\n}","import i18n from '@/i18n';\r\n\r\nexport enum DocumentCategory {\r\n DeclarationOfCoOwnership = 'declaration_of_coownership',\r\n Regulations = 'regulations',\r\n CadastreAndCertificateOfLocation = 'cadastre_and_certificate_of_location',\r\n PlansAndPermits = 'plans_and_permits',\r\n ReferenceUnit = 'reference_unit',\r\n Transcript = 'transcript',\r\n BudgetAndFinancialStatements = 'budget_and_financial_statements',\r\n Contracts = 'contracts',\r\n StudyOfTheContingencyFundAndMaintenanceLog = 'study_of_the_contingency_fund_and_maintenance_log',\r\n Insurance = 'insurance',\r\n EvacuationPlan = 'evacuation_plan',\r\n ReportsAndExpertise = 'reports_and_expertise',\r\n Works = 'works',\r\n Assemblies = 'assemblies',\r\n BoardOfDirectors = 'board_of_directors',\r\n Other = 'other'\r\n}\r\n\r\nexport class DocumentCategoryHelper {\r\n static values(): string[] {\r\n return Object.keys(DocumentCategory).filter((item) => isNaN(Number(item)))\r\n }\r\n\r\n static categoriesLabelAndSlug(): any[] {\r\n return this.values().map((documentCategory: string) => {\r\n return {\r\n label: i18n.t(`document.categories.${documentCategory.makeFirstLetterLowercase()}.name`),\r\n slug: i18n.t(`document.categories.${documentCategory.makeFirstLetterLowercase()}.slug`)\r\n }\r\n });\r\n }\r\n\r\n static categoriesNameAndLabel(): any[] {\r\n return this.values().map((documentCategory: string) => {\r\n return {\r\n name: this.getCategoryValueOfKey(documentCategory),\r\n label: i18n.t(`document.categories.${documentCategory.makeFirstLetterLowercase()}.name`)\r\n }\r\n });\r\n }\r\n\r\n static getCategoryNameFromSlug(categorySlug: string) {\r\n const dict: any = {}\r\n Object.keys((i18n.messages[i18n.getLocale()]['document']['categories'])).forEach((x: any) => {\r\n dict[i18n.messages[i18n.getLocale()]['document']['categories'][x]['slug']] = x\r\n })\r\n return dict[categorySlug]\r\n }\r\n\r\n static getCategoryValueOfKey(key: string) {\r\n // eslint-disable-next-line\r\n return Object.entries(DocumentCategory).find(([k, _]) => k.toUpperCase() === key.toUpperCase())?.[1]\r\n }\r\n}","import i18n from \"@/i18n\";\r\n\r\nexport enum DocumentPolicy {\r\n Private = 0,\r\n OrganizationAdmin = 1,\r\n Everyone = 2\r\n}\r\n\r\nexport class DocumentPolicyHelper {\r\n static values(): string[] {\r\n return Object.keys(DocumentPolicy).filter((item) => isNaN(Number(item)))\r\n }\r\n\r\n static policiesValueAndNames(): any[] {\r\n return this.values().map((documentPolicy: string) => {\r\n return {\r\n name: Number(i18n.t(`document.policies.${documentPolicy.makeFirstLetterLowercase()}.value`)),\r\n label: i18n.t(`document.policies.${documentPolicy.makeFirstLetterLowercase()}.name`)\r\n }\r\n });\r\n }\r\n}","export interface IProduct {\r\n id?: string\r\n nameFr?: string\r\n nameEn?: string\r\n descriptionFr?: string\r\n descriptionEn?: string\r\n memberPrice?: number\r\n nonMemberPrice?: number\r\n cardImage?: File\r\n savedCardImage?: string\r\n membersOnly?: boolean\r\n}\r\n\r\nexport class Product implements IProduct {\r\n id?: string;\r\n nameFr?: string\r\n nameEn?: string\r\n descriptionFr?: string\r\n descriptionEn?: string\r\n \r\n memberPrice?: number\r\n nonMemberPrice?: number\r\n cardImage?: File\r\n savedCardImage?: string\r\n membersOnly?: boolean\r\n}","interface IParticipant {\n id?: string;\n activityOccurrenceId?: string;\n activityRegistrationId?: string;\n firstName?: string;\n lastName?: string;\n emailAddress?: string;\n allergies?: string;\n reducedMobility: boolean;\n memberNumber?: string;\n}\n\nexport class Participant implements IParticipant {\n id?: string;\n activityOccurrenceId?: string;\n activityRegistrationId?: string;\n firstName?: string;\n lastName?: string;\n emailAddress?: string;\n allergies?: string;\n reducedMobility = false;\n memberNumber?: string;\n}","import {defineStore} from 'pinia'\nimport {IAuthenticatedMember} from \"@/types/entities/authenticatedMember\";\nimport {Role} from \"@/types\";\n\ninterface MemberState {\n member: IAuthenticatedMember\n}\n\nexport const useMemberStore = defineStore('member', {\n state: (): MemberState => ({\n member: {roles: [] as string[]} as IAuthenticatedMember\n }),\n\n actions: { // methods\n setMember(member: IAuthenticatedMember) {\n this.member = member\n },\n hasRole(role: Role): boolean {\n return this.member.roles.some(x => x === role)\n },\n hasRoles(roles: Role[]): boolean {\n return roles.every(x => this.member.roles.includes(x));\n },\n hasIndividualAndCoOwnerRoles(): boolean {\n return this.hasRoles([Role.RegularIndividual, Role.RegularSyndicateCoOwner]);\n },\n hasOneOfTheseRoles(roles: Role[]): boolean {\n return roles.some(x => this.member.roles.includes(x));\n }\n },\n\n getters: { // computed\n getMember: (state) => state.member,\n },\n\n persist: {\n storage: sessionStorage\n }\n})","import {useRoute} from \"vue-router\";\nimport {useI18n} from \"vue3-i18n\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {Role} from \"@/types\";\n\n/**\n * @param parentKey string? if undefined, use current route path as base url\n * @param childKey string? if undefined, return empty.\n * @param parameters expect an array [] containing objects => {name: \"\", value: \"\"}\n */\nexport function getChildPath(parentKey?: string, childKey?: string, parameters: any = null) {\n if (childKey == undefined)\n return '';\n\n const {t} = useI18n();\n const route = useRoute();\n\n const parentRoute = parentKey != null ? t(`routes.${parentKey}.fullPath`) : route.path;\n let childRouteSegment = t(`routes.${childKey}.path`);\n\n if (parameters != null && parameters.length > 0) {\n parameters.forEach((param: any) => {\n childRouteSegment = childRouteSegment.replace(param.name, param.value);\n });\n }\n\n return `${parentRoute}/${childRouteSegment}`;\n}\n\nexport function getAuthenticatedMemberOrganizationRoute() {\n const memberStore = useMemberStore()\n if (memberStore.hasRole(Role.CorporateAdmin)) {\n return 'company'\n } else if (memberStore.hasOneOfTheseRoles([Role.RegularSyndicateAdmin, Role.RegularSyndicateManager, Role.RegularSyndicateCoOwner])) {\n return 'syndicate'\n } else if (memberStore.hasRole(Role.RegularSyndicateCoOwner)) {\n return 'membership'\n }\n}","import { useCssVars as _useCssVars, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createVNode as _createVNode, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, vShow as _vShow, withDirectives as _withDirectives, createCommentVNode as _createCommentVNode, Transition as _Transition } from \"vue\"\n\nimport { ref, onMounted, computed } from \"vue\";\nimport IconChevron from \"@/assets/icons/icon__chevron.svg\";\nimport { useI18n } from \"vue3-i18n\";\nimport { useRouter } from \"vue-router\";\nimport { getChildPath } from \"@/router/helpers\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Subnav',\n props: {\n routeKey: {}\n },\n setup(__props: any) {\n\n_useCssVars(_ctx => ({\n \"2b967249\": (_unref(height))\n}))\n\nconst props = __props;\n\nconst { t } = useI18n()\nconst router = useRouter();\n\nconst directChildRoutes = computed(() => {\n const routes = router.getRoutes();\n\n return routes.filter(r => r.path == t(`routes.${props.routeKey}.path`))[0].children;\n})\n\nlet isExpanded = ref(true);\nlet content = ref();\nlet height = ref();\n\nonMounted(() => {\n height.value = `${\n content.value != undefined ? content.value.scrollHeight : 0\n }px`;\n\n //close it once we have the scroll value\n toggleExpansion();\n});\n\nfunction toggleExpansion() {\n isExpanded.value = !isExpanded.value;\n}\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterLink = _resolveComponent(\"RouterLink\")!\n\n return (_ctx.routeKey)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"subnav\", { 'subnav--expand': _unref(isExpanded) }])\n }, [\n _createElementVNode(\"button\", {\n class: \"subnav__title\",\n onClick: toggleExpansion\n }, [\n _createTextVNode(_toDisplayString(_unref(t)(`routes.${_ctx.routeKey}.name`)) + \" \", 1),\n _createVNode(_unref(IconChevron), {\n class: _normalizeClass([\"icon icon--white\", {'icon--rotate-180 icon--black' : !_unref(isExpanded)}])\n }, null, 8, [\"class\"])\n ]),\n _createVNode(_Transition, { name: \"expand\" }, {\n default: _withCtx(() => [\n (directChildRoutes.value != null && directChildRoutes.value.length > 0)\n ? _withDirectives((_openBlock(), _createElementBlock(\"ul\", {\n key: 0,\n class: \"subnav__content\",\n ref_key: \"content\",\n ref: content\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(directChildRoutes.value, (child) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: child.name\n }, [\n _createVNode(_component_RouterLink, {\n to: _unref(getChildPath)(_ctx.routeKey, child.name?.toString()),\n class: \"subnav__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)(`routes.${child.name?.toString()}.name`)), 1)\n ]),\n _: 2\n }, 1032, [\"to\"])\n ]))\n }), 128))\n ], 512)), [\n [_vShow, _unref(isExpanded)]\n ])\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ], 2))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","\n\n\n\n\n","import script from \"./Subnav.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Subnav.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Subnav.vue?vue&type=style&index=0&id=88745d22&scoped=true&lang=scss\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-88745d22\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"navbar__nav\" }\n\nimport { useI18n } from \"vue3-i18n\";\nimport Subnav from \"./Subnav.vue\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminNavbarItems',\n setup(__props) {\n\nconst {t} = useI18n()\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterLink = _resolveComponent(\"RouterLink\")!\n\n return (_openBlock(), _createElementBlock(\"ul\", _hoisted_1, [\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.account.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.account.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(Subnav, { routeKey: 'admin' })\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"navbar__nav\" }\n\nimport { useI18n } from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'CorporateMemberNavbarItems',\n setup(__props) {\n\nconst {t} = useI18n()\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterLink = _resolveComponent(\"RouterLink\")!\n\n return (_openBlock(), _createElementBlock(\"ul\", _hoisted_1, [\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.account.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.account.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.company.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.company.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.invoices.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.invoices.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.activities.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.activities.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./CorporateMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./CorporateMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"navbar__nav\" }\n\nimport { useI18n } from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'SyndicateAdminMemberNavbarItems',\n setup(__props) {\n\nconst {t} = useI18n()\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterLink = _resolveComponent(\"RouterLink\")!\n\n return (_openBlock(), _createElementBlock(\"ul\", _hoisted_1, [\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.account.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.account.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.coproperty.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.coproperty.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.syndicate.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.syndicate.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.invoices.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.invoices.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.activities.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.activities.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./SyndicateAdminMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SyndicateAdminMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"navbar__nav\" }\n\nimport { useI18n } from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'SyndicateCoownerMemberNavbarItems',\n setup(__props) {\n\nconst {t} = useI18n()\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterLink = _resolveComponent(\"RouterLink\")!\n\n return (_openBlock(), _createElementBlock(\"ul\", _hoisted_1, [\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.account.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.account.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.coproperty.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.coproperty.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.syndicate.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.syndicate.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.invoices.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.invoices.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.activities.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.activities.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./SyndicateCoownerMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SyndicateCoownerMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"navbar__nav\" }\n\nimport { useI18n } from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'IndividualMemberNavbarItems',\n setup(__props) {\n\nconst {t} = useI18n()\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterLink = _resolveComponent(\"RouterLink\")!\n\n return (_openBlock(), _createElementBlock(\"ul\", _hoisted_1, [\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.account.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.account.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.coproperty.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.coproperty.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.membership.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.membership.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.invoices.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.invoices.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.activities.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.activities.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./IndividualMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./IndividualMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","export const TYPES = {\n IApiService: Symbol.for(\"IApiService\"),\n IAddressService: Symbol.for(\"IAddressService\"),\n IUserService: Symbol.for(\"IUserService\"),\n IMemberService: Symbol.for(\"IMemberService\"),\n IMembershipService: Symbol.for(\"IMembershipService\"),\n IContactService: Symbol.for(\"IContactService\"),\n IBookService: Symbol.for(\"IBookService\"),\n IActivityService: Symbol.for(\"IActivityService\"),\n IActivityOccurrenceService: Symbol.for(\"IActivityOccurrenceService\"),\n IOrganizationService: Symbol.for(\"IOrganizationService\"),\n IInvoiceService: Symbol.for(\"IInvoiceService\"),\n IDocumentService: Symbol.for(\"IDocumentService\"),\n IFavoriteDocumentService: Symbol.for(\"IFavoriteDocumentService\"),\n AxiosInstance: Symbol.for(\"AxiosInstance\")\n};\n","import i18n from \"@/i18n\";\n\nexport {};\n\ndeclare global {\n interface Date {\n getTimestamp(): number;\n\n hoursBetweenToday(): number;\n\n formatToDateString(): string;\n\n formatToTimeString(): string;\n }\n}\n\n/*\n Extends the Date object to get number of seconds since UNIX epoch\n instead of milliseconds as with .getTime()\n*/\nDate.prototype.getTimestamp = function (): number {\n return Math.round(this.getTime() / 1000);\n};\n\n/*\n Extends the Date object to calculate the number of hours\n between .getTime() and today's date\n*/\nDate.prototype.hoursBetweenToday = function () {\n // Copy the date to avoid modifying the original object\n const endDate = new Date(this.getTime());\n const startDate = new Date();\n const timeDifference = endDate.getTime() - startDate.getTime();\n\n // Convert milliseconds to hours\n return Math.ceil(timeDifference / (1000 * 3600));\n};\n\n\n// set locale for dates to be formatted correctly, but time\"s already in local time so say it's in UTC so its not converted\nDate.prototype.formatToDateString = function toDateString(): string {\n return this.toLocaleDateString(`${i18n.getLocale()}-CA`, {timeZone: \"UTC\"})\n};\n\n// set locale for dates to be formatted correctly, but time\"s already in local time so say it's in UTC so its not converted\nDate.prototype.formatToTimeString = function toTimeString(): string {\n const locale = `${i18n.getLocale()}-CA`\n return this.toLocaleTimeString(locale, {hour: \"2-digit\", minute: \"2-digit\", hour12: false, timeZone: \"UTC\"})\n};\n","import { defineStore } from 'pinia'\n\ninterface ApiState {\n needToLogout: boolean\n}\n\nexport const useApiStore = defineStore('api', {\n state: (): ApiState => ({\n needToLogout: false\n }),\n\n actions: { // methods\n setNeedToLogout (needToLogout:boolean) {\n this.needToLogout = needToLogout\n }\n },\n\n getters: { // computed\n getNeedToLogout: (state) => state.needToLogout\n }\n})","import axios, {AxiosInstance, AxiosResponse, InternalAxiosRequestConfig,} from \"axios\";\nimport {inject, injectable} from \"inversify\";\n\nimport {IApiService} from \"@/injection/interfaces\";\nimport {TYPES} from \"@/injection/types\";\nimport \"@/extensions/date.extensions\";\nimport {ITokenResponse} from \"@/types/responses/tokenResponse\";\nimport {useApiStore} from \"@/stores/apiStore\";\n\n@injectable()\nexport class ApiService implements IApiService {\n _httpClient: AxiosInstance;\n _accessToken: string;\n _accessTokenExpires: number;\n _tokenRequestedAt: Date;\n\n constructor(@inject(TYPES.AxiosInstance) httpClient: AxiosInstance) {\n this._httpClient = httpClient;\n this._accessToken = \"\";\n this._accessTokenExpires = 0;\n this._tokenRequestedAt = new Date();\n\n /*\n Attaching the accessToken to the request header. The access token is stored in cookies by ApiAuthenticationController\n Keep track of the expiresIn so we do not poke the backend every time we make a request.\n AccessToken and RefreshToken rotation is handled in by Umbraco OpenId Connect so when we call the\n ApiAuthenticationController we always have a valid accessToken.\n */\n this._httpClient.interceptors.request.use(\n async (config) => {\n // Checking if the AccessToken has expired. If it is expires, we call the backend to get the current valid token\n // otherwise we do nothing since the bearer is already set with the valid token.\n if (this._accessToken === \"\" || this._accessTokenExpires === 0) {\n await this.askUmbracoBackEndForNewTokens(config, false);\n }\n return config;\n },\n (error) => {\n return Promise.reject(error);\n }\n );\n\n this._httpClient.interceptors.response.use(\n (response) => {\n return response;\n },\n async (error) => {\n const originalRequest = error.config;\n\n if (error.request.status === 401 && originalRequest._retry) {\n return Promise.reject(error);\n }\n\n if (error.request.status == 401) {\n originalRequest._retry = true;\n return await this.askUmbracoBackEndForNewTokens(\n originalRequest,\n true\n );\n }\n return Promise.reject(error);\n }\n );\n }\n\n public headersWithJsonContentType() {\n return {\n headers: {\n \"Content-Type\": 'application/json',\n },\n };\n }\n\n public headersWithFormDataContentType() {\n return {\n headers: {\n \"Content-Type\": '\"multipart/form-data\"',\n },\n };\n }\n\n public buildEmptyBody(): string {\n return '{}'\n }\n\n private async askUmbracoBackEndForNewTokens(\n config: InternalAxiosRequestConfig,\n retryRequest: boolean\n ) {\n try {\n return await axios\n .get(\n `${process.env.VUE_APP_WEBSITE_BASE_URL}/api-authentication/refresh-token`\n )\n .then((response: AxiosResponse) => {\n if (!response.data) return;\n\n const tokens = response.data;\n if (!tokens.accessToken) {\n // refresh token is expired\n this.logoutUserAndRedirectToHomePage();\n return;\n }\n this._accessToken = response.data.accessToken;\n this._accessTokenExpires = response.data.expiresIn;\n this._tokenRequestedAt = new Date();\n\n const bearer = `Bearer ${this._accessToken}`;\n config.headers.Authorization = bearer;\n this._httpClient.defaults.headers.common['Authorization'] = bearer;\n\n if (retryRequest) {\n return this._httpClient(config)\n }\n });\n } catch (error) {\n this.logoutUserAndRedirectToHomePage()\n return Promise.reject(error);\n }\n }\n\n private logoutUserAndRedirectToHomePage() {\n const apiStore = useApiStore();\n apiStore.setNeedToLogout(true);\n // A watcher is setup in the component LogoutPopup, it will handle the rest.\n }\n}","import i18n from \"@/i18n\";\r\n\r\nexport {};\r\n\r\ndeclare global {\r\n interface String {\r\n makeFirstLetterLowercase(): string;\r\n\r\n toCamelCase(): string;\r\n\r\n truncateString(maxLength: number): string;\r\n\r\n extractFileName(): string;\r\n\r\n toLocalDateTimeString(): string;\r\n }\r\n}\r\n\r\nString.prototype.makeFirstLetterLowercase = function (): string {\r\n return this.substring(0, 1).toLowerCase() + this.substring(1);\r\n};\r\n\r\nString.prototype.toCamelCase = function (): string {\r\n const words = this.split(\"_\");\r\n const camelCasedWords = [];\r\n for (let i = 0; i < words.length; i++) {\r\n const word = words[i];\r\n if (i == 0) {\r\n camelCasedWords.push(word.toLowerCase());\r\n continue;\r\n }\r\n if (word.length > 1)\r\n camelCasedWords.push(\r\n `${word[0].toUpperCase()}${word.substring(1).toLowerCase()}`\r\n );\r\n else camelCasedWords.push(word.toUpperCase());\r\n }\r\n return camelCasedWords.join(\"\");\r\n};\r\n\r\nString.prototype.truncateString = function truncateString(maxLength: number): string {\r\n if (this.length > maxLength) {\r\n return this.substr(0, maxLength) + \"...\";\r\n }\r\n return this.toString();\r\n};\r\n\r\nString.prototype.extractFileName = function (): string {\r\n const regex = /-(.+)\\.[^.]+$/;\r\n const match = decodeURI(this.toString()).match(regex);\r\n return match ? match[1] : decodeURI(this.toString())\r\n};\r\n\r\nString.prototype.toLocalDateTimeString = function toLocalDateTimeString(): string {\r\n const localDateTime = new Date(this as string)\r\n const locale = `${i18n.getLocale()}-CA`\r\n const time = localDateTime.toLocaleTimeString(locale, {hour: \"2-digit\", minute: \"2-digit\", hour12: false})\r\n return `${localDateTime.toLocaleDateString(locale)} ${i18n.t('global.at')} ${time}`\r\n};","import i18n from \"@/i18n\";\nimport '@/extensions/string.extensions';\nimport {Error} from \"./error\";\n\nexport class SucceededOrNotResponse {\n errors: Error[] = [];\n succeeded: boolean;\n\n constructor(succeeded: boolean, errors?: Error[]) {\n this.succeeded = succeeded\n if (errors)\n this.errors = errors\n }\n \n getErrorMessages(translationLocation: string, fallbackKey?: string): string[] {\n const errorMessages: string[] = [];\n this.errors.forEach(error => {\n const errorKey = error.errorType.makeFirstLetterLowercase()\n const errorMessage = i18n.t(`${translationLocation}.${errorKey}`)\n if (fallbackKey)\n errorMessages.push(errorMessage ? errorMessage : i18n.t(fallbackKey))\n else\n errorMessages.push(errorMessage ? errorMessage : i18n.t('validation.errorOccured'))\n })\n return errorMessages\n }\n}\n","import {AxiosError, AxiosResponse} from \"axios\";\nimport {injectable} from \"inversify\";\n\nimport \"@/extensions/date.extensions\";\nimport {ApiService} from \"@/services/apiService\";\nimport {IActivityOccurrenceService} from \"@/injection/interfaces\";\nimport {Activity, ActivityRegistration, ActivitySchedule, Participant} from \"@/types/entities/activity\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\nimport {ActivityOccurrence} from \"@/types/entities/activity/activityOccurrence\";\n\n@injectable()\nexport class ActivityOccurrenceService extends ApiService implements IActivityOccurrenceService {\n public async getActivityOccurrence(id: string): Promise {\n const response = await this._httpClient\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/${id}`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as ActivityOccurrence;\n\n }\n\n public async getFutureActivityOccurrences(): Promise {\n const response = await this._httpClient\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/future`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as ActivityOccurrence[];\n }\n\n public async getPastActivityOccurrences(): Promise {\n const response = await this._httpClient\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/past`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as ActivityOccurrence[];\n }\n\n public async createActivityOccurrence(activityId: string, dates: ActivitySchedule): Promise {\n const response = await this._httpClient\n .post>(\n `${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences`,\n new CreateActivityOccurrenceRequestBody(activityId, dates),\n this.headersWithJsonContentType())\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as ActivityOccurrence;\n }\n\n public async deleteActivityOccurrence(id: string): Promise {\n const response = await this._httpClient\n .delete>(`${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/${id}`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return new SucceededOrNotResponse(response.status === 204)\n }\n\n public async getActivityOccurrenceParticipant(participantId: string): Promise {\n const response = await this._httpClient\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/participants/${participantId}`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as Participant;\n }\n\n public async getActivityOccurrenceParticipants(activityOccurrenceId: string): Promise {\n const response = await this._httpClient\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/${activityOccurrenceId}/participants`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as Participant[];\n }\n\n public async addParticipantToActivityOccurrence(activityOccurrenceId: string, participant: Participant): Promise {\n const response = await this._httpClient\n .post>(`${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/${activityOccurrenceId}/participants`,\n participant,\n this.headersWithJsonContentType())\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as Activity;\n }\n\n public async getActivityOccurrenceRegistrations(activityOccurrenceId: string): Promise {\n const response = await this._httpClient.get<\n string,\n AxiosResponse\n >(`${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/${activityOccurrenceId}/registrations`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as ActivityRegistration[];\n }\n\n public async deleteActivityRegistration(activityRegistrationId: string): Promise {\n const response = await this._httpClient.delete<\n string,\n AxiosResponse\n >(`${process.env.VUE_APP_API_BASE_URL}/api/activity-registrations/${activityRegistrationId}`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return new SucceededOrNotResponse(response.status === 204)\n }\n\n public async transferActivityOccurrenceParticipant(activityOccurrenceId: string, participantId: string): Promise {\n const response = await this._httpClient\n .post>(\n `${process.env.VUE_APP_API_BASE_URL}/api/activity-occurrences/${activityOccurrenceId}/participants/${participantId}`,\n this.buildEmptyBody(),\n this.headersWithJsonContentType())\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data;\n }\n}\n\nclass CreateActivityOccurrenceRequestBody {\n activityId?: string;\n startDate?: string;\n endDate?: string;\n\n constructor(activityId: string, dates: ActivitySchedule) {\n this.activityId = activityId;\n this.startDate = dates.startDate;\n this.endDate = dates.endDate;\n }\n}\n","import {AxiosError, AxiosResponse} from \"axios\";\nimport {injectable} from \"inversify\";\n\nimport \"@/extensions/date.extensions\";\nimport {ApiService} from \"@/services/apiService\";\nimport {IActivityService} from \"@/injection/interfaces\";\nimport {Activity} from \"@/types/entities/activity\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\n\n@injectable()\nexport class ActivityService extends ApiService implements IActivityService {\n\n public async getActivity(id: string): Promise {\n const response = await this._httpClient\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/activities/${id}`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as Activity;\n }\n\n public async getAllActivities(): Promise {\n const response = await this._httpClient\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/activities`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as Activity[];\n }\n\n public async createActivity(data: Activity): Promise {\n const response = await this._httpClient\n .post>(\n `${process.env.VUE_APP_API_BASE_URL}/api/activities`,\n data,\n this.headersWithFormDataContentType())\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as SucceededOrNotResponse;\n }\n\n public async updateActivity(data: Activity): Promise {\n const response = await this._httpClient\n .put>(\n `${process.env.VUE_APP_API_BASE_URL}/api/activities/${data.id}`,\n data,\n this.headersWithFormDataContentType())\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as SucceededOrNotResponse;\n\n }\n\n public async deleteActivity(id: string): Promise {\n const response = await this._httpClient\n .delete>(`${process.env.VUE_APP_API_BASE_URL}/api/activities/${id}`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return new SucceededOrNotResponse(response.status === 204)\n }\n}","import {injectable} from \"inversify\";\r\n\r\nimport \"@/extensions/date.extensions\";\r\nimport {ApiService} from \"@/services/apiService\";\r\nimport {IAddressService} from \"@/injection/interfaces\";\r\nimport {IFilterAddressesRequest, IGetAddressRequest} from \"@/types/requests\";\r\nimport {IFilterAddressesResponse, IGetAddressResponse} from \"@/types/responses\";\r\nimport {AxiosError, AxiosResponse} from \"axios\";\r\nimport {Book} from \"@/types\";\r\n\r\n@injectable()\r\nexport class AddressService extends ApiService implements IAddressService {\r\n public async filterAddresses(request: IFilterAddressesRequest): Promise {\r\n const params = `street=${request.street}&language=${request.language}`\r\n const response = await this\r\n ._httpClient\r\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/addresses/filter?${params}`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n return response.data as IFilterAddressesResponse\r\n }\r\n\r\n public async getAddress(request: IGetAddressRequest): Promise {\r\n const params = `language=${request.language}`\r\n const response = await this\r\n ._httpClient\r\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/addresses/${request.id}?${params}`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n return response.data as IGetAddressResponse\r\n }\r\n}","import {IBookService} from \"@/injection/interfaces\";\r\nimport {injectable} from \"inversify\";\r\nimport {ApiService} from \"./apiService\";\r\nimport {SucceededOrNotResponse} from \"@/types/responses\";\r\nimport {AxiosError, AxiosResponse} from \"axios\";\r\nimport {ICreateBookRequest} from \"@/types/requests/createBookRequest\";\r\nimport {Book} from \"@/types/entities\";\r\nimport {IEditBookRequest} from \"@/types/requests/editBookRequest\";\r\n\r\n@injectable()\r\nexport class BookService extends ApiService implements IBookService {\r\n public async getAllBooks(): Promise {\r\n const response = await this\r\n ._httpClient\r\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/books`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n return response.data as Book[]\r\n }\r\n\r\n public async getBook(bookId: string): Promise {\r\n const response = await this\r\n ._httpClient\r\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/books/${bookId}`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n return response.data as Book\r\n }\r\n\r\n public async deleteBook(bookId: string): Promise {\r\n const response = await this\r\n ._httpClient\r\n .delete>(`${process.env.VUE_APP_API_BASE_URL}/api/books/${bookId}`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n return new SucceededOrNotResponse(response.status === 204)\r\n }\r\n\r\n public async createBook(request: ICreateBookRequest): Promise {\r\n const response = await this\r\n ._httpClient\r\n .post>(\r\n `${process.env.VUE_APP_API_BASE_URL}/api/books`,\r\n request,\r\n this.headersWithFormDataContentType())\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n\r\n public async editBook(request: IEditBookRequest): Promise {\r\n const response = await this\r\n ._httpClient\r\n .put>(\r\n `${process.env.VUE_APP_API_BASE_URL}/api/books/${request.id}`,\r\n request,\r\n this.headersWithFormDataContentType())\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n}","import {AxiosError, AxiosResponse} from \"axios\";\r\nimport {injectable} from \"inversify\";\r\n\r\nimport \"@/extensions/date.extensions\";\r\nimport {ApiService} from \"@/services/apiService\";\r\nimport {IContactService} from \"@/injection/interfaces\";\r\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\";\r\nimport {IAddContactRequest} from \"@/types/requests/addContactRequest\";\r\nimport {Contact} from \"@/types/entities/contact\";\r\nimport {useMemberStore} from \"@/stores/memberStore\";\r\nimport {Role} from \"@/types\";\r\n\r\n@injectable()\r\nexport class ContactService extends ApiService implements IContactService {\r\n public async getContact(organizationId: string, contactId: string): Promise {\r\n const memberStore = useMemberStore();\r\n const endpointUrl = memberStore.hasRole(Role.Admin)\r\n ? `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/contacts/${contactId}`\r\n : `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine/contacts/${contactId}`\r\n const response = await this\r\n ._httpClient\r\n .get>(endpointUrl)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n return response.data as Contact\r\n }\r\n\r\n public async addContact(request: IAddContactRequest, organizationId: string): Promise {\r\n const memberStore = useMemberStore();\r\n const endpointUrl = memberStore.hasRole(Role.Admin)\r\n ? `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/contacts`\r\n : `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine/contacts`\r\n const response = await this._httpClient\r\n .post>(endpointUrl, request)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n\r\n public async updateContact(contact: Contact, organizationId: string): Promise {\r\n const memberStore = useMemberStore();\r\n const endpointUrl = memberStore.hasRole(Role.Admin)\r\n ? `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/contacts/${contact.id}`\r\n : `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine/contacts/${contact.id}`\r\n const response = await this\r\n ._httpClient\r\n .put>(endpointUrl, contact)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n\r\n public async deleteContact(contactId: string, organizationId: string): Promise {\r\n const memberStore = useMemberStore()\r\n const endpointUrl = memberStore.hasRole(Role.Admin)\r\n ? `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/contacts/${contactId}`\r\n : `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine/contacts/${contactId}`\r\n const response = await this\r\n ._httpClient\r\n .delete>(endpointUrl)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n return new SucceededOrNotResponse(response.status === 204)\r\n }\r\n}","import {injectable} from \"inversify\";\r\nimport \"@/extensions/date.extensions\";\r\nimport {ApiService} from \"@/services/apiService\";\r\nimport {IDocumentService} from \"@/injection/interfaces\";\r\nimport {AxiosError, AxiosResponse} from \"axios\";\r\nimport {Document, IAddDocumentsRequest, IDocument} from \"@/types/entities/document\";\r\nimport {SucceededOrNotResponse} from \"@/types/responses\";\r\n\r\n@injectable()\r\nexport class DocumentService extends ApiService implements IDocumentService {\r\n public async addDocuments(request: IAddDocumentsRequest): Promise {\r\n const response = await this._httpClient\r\n .post>(\r\n `${process.env.VUE_APP_API_BASE_URL}/api/documents`, request, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n })\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n });\r\n return response.data\r\n }\r\n\r\n public async updateDocument(document: Document): Promise {\r\n const response = await this._httpClient.put<\r\n Document,\r\n AxiosResponse\r\n >(`${process.env.VUE_APP_API_BASE_URL}/api/documents/${document.id}`, document, {\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n })\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n return response.data as Document;\r\n }\r\n\r\n public async getAllDocuments(sharedPolicy?: number): Promise {\r\n const route = `${process.env.VUE_APP_API_BASE_URL}/api/documents${sharedPolicy != undefined ? '?policy=' + sharedPolicy : ''}`;\r\n const response = await this._httpClient.get>(route)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n return response.data as Document[];\r\n }\r\n\r\n public async getDocument(id: string): Promise {\r\n const route = `${process.env.VUE_APP_API_BASE_URL}/api/documents/${id}`;\r\n const response = await this._httpClient.get>(route)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n\r\n return response.data as Document;\r\n }\r\n\r\n public async deleteDocument(id: string): Promise {\r\n const response = await this._httpClient.delete<\r\n string,\r\n AxiosResponse\r\n >(`${process.env.VUE_APP_API_BASE_URL}/api/documents/${id}`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n return response.data;\r\n }\r\n}","import {injectable} from \"inversify\";\nimport \"@/extensions/date.extensions\";\nimport {ApiService} from \"@/services/apiService\";\nimport {AxiosError, AxiosResponse} from \"axios\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\nimport {IFavoriteDocumentService} from \"@/injection/interfaces\";\n\n@injectable()\nexport class FavoriteDocumentService extends ApiService implements IFavoriteDocumentService {\n public async addToFavorite(id: string): Promise {\n const response = await this._httpClient\n .post>(\n `${process.env.VUE_APP_API_BASE_URL}/api/documents/${id}/favorite`,\n '{}',\n this.headersWithJsonContentType())\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse\n });\n return response.data\n }\n\n public async removeFromFavorite(id: string): Promise {\n const response = await this._httpClient.delete<\n string,\n AxiosResponse\n >(`${process.env.VUE_APP_API_BASE_URL}/api/documents/favorites/${id}`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data;\n }\n}","import {injectable} from \"inversify\";\r\n\r\nimport {ApiService} from \"@/services/apiService\";\r\nimport {IInvoiceService} from \"@/injection/interfaces\";\r\nimport {Invoice} from \"@/types\";\r\nimport {AxiosError, AxiosResponse} from \"axios\";\r\n\r\n@injectable()\r\nexport class InvoiceService extends ApiService implements IInvoiceService {\r\n public async getMyInvoices(): Promise {\r\n const response = await this\r\n ._httpClient\r\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/invoices/mine`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n return response.data as Invoice[]\r\n }\r\n}","import {AxiosError, AxiosResponse} from \"axios\"\r\nimport {injectable} from \"inversify\"\r\n\r\nimport \"@/extensions/date.extensions\"\r\nimport {ApiService} from \"@/services/apiService\"\r\nimport {IMemberService} from \"@/injection/interfaces\"\r\nimport {IAuthenticatedMember} from \"@/types/entities/authenticatedMember\"\r\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\"\r\nimport {IAddMemberRequest} from \"@/types/requests/addMemberRequest\"\r\nimport {Member} from \"@/types/entities/member\"\r\nimport {useMemberStore} from \"@/stores/memberStore\"\r\nimport {ActivityRegistration, Role} from \"@/types\"\r\n\r\n@injectable()\r\nexport class MemberService extends ApiService implements IMemberService {\r\n public async getCurrentMember(): Promise {\r\n try {\r\n const response = await this\r\n ._httpClient\r\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/members/me`)\r\n return response.data\r\n } catch (error) {\r\n return Promise.reject(error)\r\n }\r\n }\r\n\r\n public async getMember(organizationId: string, memberId: string): Promise {\r\n const memberStore = useMemberStore()\r\n const endpointUrl = memberStore.hasRole(Role.Admin)\r\n ? `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/members/${memberId}`\r\n : `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine/members/${memberId}`\r\n const response = await this\r\n ._httpClient\r\n .get>(endpointUrl)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n return response.data as Member\r\n }\r\n\r\n public async addMember(request: IAddMemberRequest, organizationId: string): Promise {\r\n const memberStore = useMemberStore()\r\n const endpointUrl = memberStore.hasRole(Role.Admin)\r\n ? `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/members`\r\n : `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine/members`\r\n const response = await this._httpClient\r\n .post>(endpointUrl, request)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n\r\n public async updateMember(member: Member, organizationId: string): Promise {\r\n const memberStore = useMemberStore()\r\n const endpointUrl = memberStore.hasRole(Role.Admin)\r\n ? `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/members/${member.id}`\r\n : `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine/members/${member.id}`\r\n const response = await this\r\n ._httpClient\r\n .put>(endpointUrl, member)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n\r\n public async updateAuthenticatedMember(request: IAuthenticatedMember): Promise {\r\n try {\r\n const response = await this\r\n ._httpClient\r\n .put>(\r\n `${process.env.VUE_APP_API_BASE_URL}/api/members/me`,\r\n request)\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n } catch (error) {\r\n return Promise.reject(error)\r\n }\r\n }\r\n\r\n public async deleteMember(memberId: string, organizationId: string): Promise {\r\n const memberStore = useMemberStore()\r\n const endpointUrl = memberStore.hasRole(Role.Admin)\r\n ? `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/members/${memberId}`\r\n : `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine/members/${memberId}`\r\n const response = await this\r\n ._httpClient\r\n .delete>(endpointUrl)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse\r\n })\r\n return new SucceededOrNotResponse(response.status === 204)\r\n }\r\n\r\n public async getCurrentMemberActivityRegistrations(): Promise {\r\n const response = await this._httpClient\r\n .get>(`${process.env.VUE_APP_API_BASE_URL}/api/members/me/my-activity-registrations`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n return response.data as ActivityRegistration[];\r\n }\r\n\r\n public async deleteCurrentMemberActivityRegistration(activityRegistrationId: string): Promise {\r\n const response = await this._httpClient.delete>(`${process.env.VUE_APP_API_BASE_URL}/api/members/me/activity-registrations/${activityRegistrationId}`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n return new SucceededOrNotResponse(response.status === 204)\r\n }\r\n\r\n public async deleteCurrentMemberActivityRegistrationParticipant(activityRegistrationId: string, participantId: string): Promise {\r\n const response = await this._httpClient.delete>(`${process.env.VUE_APP_API_BASE_URL}/api/members/me/activity-registrations/${activityRegistrationId}/participants/${participantId}`)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n return new SucceededOrNotResponse(response.status === 204)\r\n }\r\n}","import { AxiosError, AxiosResponse } from \"axios\";\nimport { injectable } from \"inversify\";\n\nimport \"@/extensions/date.extensions\";\nimport { ApiService } from \"@/services/apiService\";\nimport {IMembershipService} from \"@/injection/interfaces\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\nimport {Plan} from \"@/types/entities/plan\";\n\n@injectable()\nexport class MembershipService extends ApiService implements IMembershipService {\n public async getMemberships(): Promise {\n const response = await this\n ._httpClient.get>(`${process.env.VUE_APP_API_BASE_URL}/api/plans`)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as Plan[];\n }\n\n public async updateMemberships(memberships: Plan[]): Promise {\n const response = await this\n ._httpClient.put>(`${process.env.VUE_APP_API_BASE_URL}/api/plans`, \n {\n memberships : memberships\n })\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as Plan[];\n }\n}","import {AxiosError, AxiosResponse} from \"axios\";\nimport {injectable} from \"inversify\";\n\nimport \"@/extensions/date.extensions\";\n\nimport {ApiService} from \"@/services/apiService\";\nimport {IOrganizationService} from \"@/injection/interfaces\";\nimport {IFullOrganization, IOrganization} from \"@/types/entities/organization\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\nimport {IEditOrganizationRequest, IEditOwnOrganizationRequest} from \"@/types/requests\";\n\n@injectable()\nexport class OrganizationService extends ApiService implements IOrganizationService {\n public async getAllOrganizations(): Promise {\n const route = `${process.env.VUE_APP_API_BASE_URL}/api/organizations`;\n const response = await this._httpClient.get>(route)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as IOrganization[];\n }\n\n public async getOrganizationWithId(id: string): Promise {\n const route = `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${id.toString()}`;\n const response = await this._httpClient.get>(route)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as IFullOrganization;\n }\n\n public async getMyOrganization(lang = \"fr\"): Promise {\n const route = `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine?lang=${lang}`;\n const response = await this._httpClient.get>(route)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as IFullOrganization;\n }\n\n public async getMySyndicate(): Promise {\n const route = `${process.env.VUE_APP_API_BASE_URL}/api/syndicate/mine`;\n const response = await this._httpClient.get>(route)\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse;\n });\n return response.data as IFullOrganization;\n }\n\n public async editMyOrganization(request: IEditOwnOrganizationRequest): Promise {\n const route = `${process.env.VUE_APP_API_BASE_URL}/api/organizations/mine`\n const response = await this\n ._httpClient\n .put>(\n route,\n request,\n this.headersWithFormDataContentType())\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse\n })\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\n }\n\n public async editOrganizationWithId(id: string, request: IEditOrganizationRequest): Promise {\n const route = `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${id}`\n const response = await this\n ._httpClient\n .put>(\n route,\n request,\n this.headersWithFormDataContentType())\n .catch(function (error: AxiosError): AxiosResponse {\n return error.response as AxiosResponse\n })\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\n }\n}","import {AxiosError, AxiosResponse} from \"axios\";\r\nimport {injectable} from \"inversify\";\r\n\r\nimport \"@/extensions/date.extensions\";\r\nimport {ApiService} from \"@/services/apiService\";\r\nimport {IChangePasswordRequest} from \"@/types/requests/changePasswordRequest\";\r\nimport {IUserService} from \"@/injection/interfaces\";\r\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\";\r\nimport {IChangeEmailRequest} from \"@/types/requests/changeEmailRequest\";\r\nimport {IResetMemberPasswordRequest} from \"@/types/requests\";\r\n\r\n@injectable()\r\nexport class UserService extends ApiService implements IUserService {\r\n public async changeEmail(request: IChangeEmailRequest): Promise {\r\n const response = await this\r\n ._httpClient\r\n .put>(\r\n `${process.env.VUE_APP_API_BASE_URL}/api/users/me/change-email`,\r\n request)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n\r\n public async changePassword(request: IChangePasswordRequest): Promise {\r\n const response = await this\r\n ._httpClient\r\n .put>(\r\n `${process.env.VUE_APP_API_BASE_URL}/api/users/me/change-password`,\r\n request)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n\r\n public async resetMemberPassword(organizationId: string, memberId: string, request: IResetMemberPasswordRequest): Promise {\r\n const response = await this\r\n ._httpClient\r\n .put>(\r\n `${process.env.VUE_APP_API_BASE_URL}/api/organizations/${organizationId}/members/${memberId}/reset-password`,\r\n request)\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n\r\n\r\n public async resendInvite(userId: string): Promise {\r\n const response = await this._httpClient\r\n .post>(\r\n `${process.env.VUE_APP_API_BASE_URL}/api/users/${userId.toString()}/resend-invite`,\r\n this.buildEmptyBody(),\r\n this.headersWithJsonContentType())\r\n .catch(function (error: AxiosError): AxiosResponse {\r\n return error.response as AxiosResponse;\r\n });\r\n const succeededOrNotResponse = response.data as SucceededOrNotResponse\r\n return new SucceededOrNotResponse(succeededOrNotResponse.succeeded, succeededOrNotResponse.errors)\r\n }\r\n}","import {Container} from \"inversify\";\nimport axios, {AxiosInstance} from 'axios';\nimport \"reflect-metadata\";\n\nimport {TYPES} from \"@/injection/types\";\nimport {\n IActivityOccurrenceService,\n IActivityService,\n IAddressService,\n IApiService,\n IBookService,\n IContactService,\n IDocumentService,\n IFavoriteDocumentService,\n IInvoiceService,\n IMemberService,\n IMembershipService,\n IOrganizationService,\n IUserService\n} from \"@/injection/interfaces\";\nimport {\n ActivityOccurrenceService,\n ActivityService,\n ApiService,\n BookService,\n ContactService,\n DocumentService,\n FavoriteDocumentService,\n InvoiceService,\n MemberService,\n MembershipService,\n OrganizationService,\n UserService\n} from \"@/services\";\nimport {AddressService} from \"@/services/addressService\";\n\nconst dependencyInjection = new Container();\ndependencyInjection.bind(TYPES.AxiosInstance).toConstantValue(axios.create())\ndependencyInjection.bind(TYPES.IApiService).to(ApiService).inSingletonScope()\ndependencyInjection.bind(TYPES.IAddressService).to(AddressService).inSingletonScope()\ndependencyInjection.bind(TYPES.IUserService).to(UserService).inSingletonScope()\ndependencyInjection.bind(TYPES.IMemberService).to(MemberService).inSingletonScope()\ndependencyInjection.bind(TYPES.IContactService).to(ContactService).inSingletonScope()\ndependencyInjection.bind(TYPES.IMembershipService).to(MembershipService).inSingletonScope()\ndependencyInjection.bind(TYPES.IBookService).to(BookService).inSingletonScope()\ndependencyInjection.bind(TYPES.IActivityService).to(ActivityService).inSingletonScope()\ndependencyInjection.bind(TYPES.IActivityOccurrenceService).to(ActivityOccurrenceService).inSingletonScope()\ndependencyInjection.bind(TYPES.IOrganizationService).to(OrganizationService).inSingletonScope()\ndependencyInjection.bind(TYPES.IInvoiceService).to(InvoiceService).inSingletonScope()\ndependencyInjection.bind(TYPES.IDocumentService).to(DocumentService).inSingletonScope()\ndependencyInjection.bind(TYPES.IFavoriteDocumentService).to(FavoriteDocumentService).inSingletonScope()\n\nfunction useAddressService() {\n return dependencyInjection.get(TYPES.IAddressService);\n}\n\nfunction useUserService() {\n return dependencyInjection.get(TYPES.IUserService);\n}\n\nfunction useMemberService() {\n return dependencyInjection.get(TYPES.IMemberService);\n}\n\nfunction useContactService() {\n return dependencyInjection.get(TYPES.IContactService);\n}\n\nfunction useBookService() {\n return dependencyInjection.get(TYPES.IBookService);\n}\n\nfunction useActivityService() {\n return dependencyInjection.get(TYPES.IActivityService);\n}\n\nfunction useActivityOccurrenceService() {\n return dependencyInjection.get(TYPES.IActivityOccurrenceService);\n}\n\nfunction useMembershipService() {\n return dependencyInjection.get(TYPES.IMembershipService);\n}\n\nfunction useOrganizationService() {\n return dependencyInjection.get(TYPES.IOrganizationService);\n}\n\nfunction useInvoiceService() {\n return dependencyInjection.get(TYPES.IInvoiceService);\n}\n\nfunction useDocumentService() {\n return dependencyInjection.get(TYPES.IDocumentService);\n}\n\nfunction useFavoriteDocumentService() {\n return dependencyInjection.get(TYPES.IFavoriteDocumentService);\n}\n\nexport {\n dependencyInjection,\n useAddressService,\n useUserService,\n useMemberService,\n useContactService,\n useMembershipService,\n useBookService,\n useActivityService,\n useActivityOccurrenceService,\n useOrganizationService,\n useInvoiceService,\n useDocumentService,\n useFavoriteDocumentService\n};","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"navbar__nav\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\n\nimport {useI18n} from \"vue3-i18n\";\nimport {onMounted, ref} from \"vue\";\nimport {IFullOrganization} from \"@/types/entities/organization\";\nimport i18n from \"@/i18n\";\nimport {useOrganizationService} from \"@/inversify.config\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'IndividualAndSyndicateCoownerMemberNavbarItems',\n setup(__props) {\n\nconst {t} = useI18n()\n\nconst organizationService = useOrganizationService()\n\nconst organization = ref()\n\nonMounted(async () => {\n let fullOrganization = await organizationService.getMyOrganization(i18n.getLocale())\n if (fullOrganization) {\n organization.value = fullOrganization\n }\n})\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterLink = _resolveComponent(\"RouterLink\")!\n\n return (_openBlock(), _createElementBlock(\"ul\", _hoisted_1, [\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.account.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.account.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.coproperty.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.coproperty.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n (organization.value?.subscription.isActive)\n ? (_openBlock(), _createElementBlock(\"li\", _hoisted_2, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.membership.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.membership.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]))\n : _createCommentVNode(\"\", true),\n (organization.value?.syndicate?.isActive)\n ? (_openBlock(), _createElementBlock(\"li\", _hoisted_3, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.syndicate.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.syndicate.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.invoices.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.invoices.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]),\n _createElementVNode(\"li\", null, [\n _createVNode(_component_RouterLink, {\n to: _unref(t)('routes.activities.path'),\n class: \"navbar__navlink\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)('routes.activities.name')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./IndividualAndSyndicateCoownerMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./IndividualAndSyndicateCoownerMemberNavbarItems.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { useCssVars as _useCssVars, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Fragment as _Fragment, createBlock as _createBlock, vShow as _vShow, withDirectives as _withDirectives, Transition as _Transition, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4de15efe\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"navbar\" }\nconst _hoisted_2 = { class: \"navbar__title\" }\n\nimport {computed, onMounted, ref} from \"vue\";\nimport IconChevron from \"@/assets/icons/icon__chevron.svg\"\nimport {useI18n} from \"vue3-i18n\";\nimport {useRouter} from \"vue-router\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {Role} from \"@/types\";\nimport AdminNavbarItems from \"@/components/navigation/AdminNavbarItems.vue\";\nimport CorporateMemberNavbarItems from \"@/components/navigation/CorporateMemberNavbarItems.vue\";\nimport SyndicateAdminMemberNavbarItems from \"@/components/navigation/SyndicateAdminMemberNavbarItems.vue\";\nimport SyndicateCoownerMemberNavbarItems from \"@/components/navigation/SyndicateCoownerMemberNavbarItems.vue\";\nimport IndividualMemberNavbarItems from \"@/components/navigation/IndividualMemberNavbarItems.vue\";\nimport IndividualAndSyndicateCoownerMemberNavbarItems\n from \"@/components/navigation/IndividualAndSyndicateCoownerMemberNavbarItems.vue\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Navbar',\n props: {\n memberIsLoading: { type: Boolean }\n },\n setup(__props: any) {\n\n_useCssVars(_ctx => ({\n \"7dc16308\": (_unref(height))\n}))\n\nconst props = __props\n\nconst {t} = useI18n()\n\nconst memberStore = useMemberStore()\n\nlet isExpanded = ref(true);\nlet content = ref();\nlet height = ref();\n\nconst router = useRouter();\nconst currentRoute = ref(router.currentRoute);\nlet rootRouteName = computed(() => {\n let name = currentRoute.value.name;\n\n if (currentRoute.value.matched[0] != null) {\n name = currentRoute.value.matched[0].name\n }\n\n return name?.toString()\n})\n\n\nonMounted(() => {\n height.value = `${\n content.value != undefined ? content.value.scrollHeight : 0\n }px`;\n\n //close it once we have the scroll value\n toggleExpansion();\n});\n\nfunction toggleExpansion() {\n isExpanded.value = !isExpanded.value;\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.$windowWidth < 1225)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"h2\", _hoisted_2, _toDisplayString(_unref(t)(\"global.menu\")), 1),\n (_ctx.$router.currentRoute.value.name)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"navbar__drawer-btn\",\n onClick: toggleExpansion\n }, [\n _createTextVNode(_toDisplayString(_unref(t)(`routes.${_unref(rootRouteName)}.name`)) + \" \", 1),\n _createVNode(_unref(IconChevron), {\n class: _normalizeClass([{'icon--rotate-180' : !_unref(isExpanded)}, \"icon icon--white\"])\n }, null, 8, [\"class\"])\n ]))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true),\n _createVNode(_Transition, { name: \"expand\" }, {\n default: _withCtx(() => [\n _withDirectives(_createElementVNode(\"div\", {\n ref_key: \"content\",\n ref: content,\n class: \"navbar__content\"\n }, [\n (_unref(memberStore).hasRole(_unref(Role).Admin))\n ? (_openBlock(), _createBlock(AdminNavbarItems, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_unref(memberStore).hasRole(_unref(Role).CorporateAdmin))\n ? (_openBlock(), _createBlock(CorporateMemberNavbarItems, { key: 1 }))\n : _createCommentVNode(\"\", true),\n (_unref(memberStore).hasOneOfTheseRoles([_unref(Role).RegularSyndicateAdmin, _unref(Role).RegularSyndicateManager]))\n ? (_openBlock(), _createBlock(SyndicateAdminMemberNavbarItems, { key: 2 }))\n : _createCommentVNode(\"\", true),\n (_unref(memberStore).hasIndividualAndCoOwnerRoles())\n ? (_openBlock(), _createBlock(IndividualAndSyndicateCoownerMemberNavbarItems, { key: 3 }))\n : _createCommentVNode(\"\", true),\n (_unref(memberStore).hasRole(_unref(Role).RegularSyndicateCoOwner) && !_unref(memberStore).hasRole(_unref(Role).RegularIndividual))\n ? (_openBlock(), _createBlock(SyndicateCoownerMemberNavbarItems, { key: 4 }))\n : _createCommentVNode(\"\", true),\n (_unref(memberStore).hasRole(_unref(Role).RegularIndividual) && !_unref(memberStore).hasRole(_unref(Role).RegularSyndicateCoOwner))\n ? (_openBlock(), _createBlock(IndividualMemberNavbarItems, { key: 5 }))\n : _createCommentVNode(\"\", true)\n ], 512), [\n [_vShow, !_ctx.memberIsLoading && (_unref(isExpanded) || _ctx.$windowWidth >= 1225 || !_ctx.$router.currentRoute.value.name)]\n ])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n\n\n","import script from \"./Navbar.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Navbar.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Navbar.vue?vue&type=style&index=0&id=4de15efe&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4de15efe\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeStyle as _normalizeStyle, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"progress-ring__label\" }\nconst _hoisted_2 = [\"height\", \"width\"]\nconst _hoisted_3 = [\"stroke-dasharray\", \"stroke-width\", \"r\", \"cx\", \"cy\"]\n\nimport { computed } from \"vue\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ProgressRing',\n props: {\n label: {},\n radius: {},\n progress: {},\n stroke: {}\n },\n setup(__props: any) {\n\nconst props = __props;\n\nlet normalizedRadius = computed(() => props.radius - props.stroke * 2);\nlet circumference = computed(() => normalizedRadius.value * 2 * Math.PI);\nlet strokeDashoffset = computed(() => circumference.value - props.progress / 100 * circumference.value);\nlet dimension = computed(() => props.radius * 2);\nlet styles = computed(() => {\n return {\n height: dimension.value - 8 + 'px',\n width: dimension.value - 8 + 'px',\n }\n})\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"progress-ring\",\n style: _normalizeStyle(_unref(styles))\n }, [\n _createElementVNode(\"span\", _hoisted_1, _toDisplayString(_ctx.label), 1),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: \"progress-ring__line\",\n height: _unref(dimension),\n width: _unref(dimension)\n }, [\n _createElementVNode(\"circle\", {\n \"stroke-dasharray\": _unref(circumference) + ' ' + _unref(circumference),\n style: _normalizeStyle({ strokeDashoffset: _unref(strokeDashoffset) }),\n \"stroke-width\": _ctx.stroke,\n r: _unref(normalizedRadius),\n cx: _ctx.radius,\n cy: _ctx.radius\n }, null, 12, _hoisted_3)\n ], 8, _hoisted_2))\n ], 4))\n}\n}\n\n})","\n\n\n","import script from \"./ProgressRing.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ProgressRing.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, toDisplayString as _toDisplayString, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Transition as _Transition, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7418d07c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"popup popup--logout\"\n}\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"popup__bg\" }, null, -1))\nconst _hoisted_3 = { class: \"popup__container\" }\nconst _hoisted_4 = { class: \"popup__header\" }\nconst _hoisted_5 = { class: \"popup__title h2-like\" }\nconst _hoisted_6 = { class: \"popup__content\" }\nconst _hoisted_7 = { class: \"popup__block\" }\nconst _hoisted_8 = [\"innerHTML\"]\n\nimport { useApiStore } from \"@/stores/apiStore\";\nimport { computed, watch, ref, onBeforeUnmount } from \"vue\";\nimport { useI18n } from \"vue3-i18n\";\nimport ProgressRing from \"./ProgressRing.vue\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'LogoutPopup',\n setup(__props) {\n\nconst {t} = useI18n()\nconst apiStore = useApiStore();\nconst needToLogout = computed(() => apiStore.needToLogout);\n\nwatch(needToLogout, () => {\n interval.value = setInterval(() => {\n timeLeftBeforeReturnToHome.value--;\n\n if (timeLeftBeforeReturnToHome.value == 0) {\n logoutAndRerouteHome();\n clearInterval(interval.value);\n }\n }, 1000);\n});\n\nlet interval = ref();\nconst timeLeftBeforeReturnToHome = ref(10);\nconst percentageLeftBeforeReturnHome = computed(\n () => (timeLeftBeforeReturnToHome.value * 100) / 10\n);\n\nfunction logoutAndRerouteHome() {\n const logoutButton = document.getElementById(\"js-logout-btn\") as HTMLElement;\n\n if (logoutButton)\n logoutButton.click();\n\n setTimeout(() => window.location.replace(\"/\"), 1000);\n}\n\nonBeforeUnmount(() => {\n if (interval.value != null) {\n clearInterval(interval.value);\n }\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(_Transition, { name: \"fade\" }, {\n default: _withCtx(() => [\n (needToLogout.value)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"p\", _hoisted_5, _toDisplayString(_unref(t)('global.logout.timeout')), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, [\n _createVNode(ProgressRing, {\n label: timeLeftBeforeReturnToHome.value,\n progress: percentageLeftBeforeReturnHome.value,\n radius: 24,\n stroke: 3\n }, null, 8, [\"label\", \"progress\"]),\n _createElementVNode(\"div\", {\n innerHTML: _unref(t)('global.logout.redirectMessage')\n }, null, 8, _hoisted_8)\n ]),\n _createElementVNode(\"button\", {\n class: \"popup__btn btn\",\n type: \"button\",\n onClick: logoutAndRerouteHome\n }, _toDisplayString(_unref(t)('global.logout.returnHome')), 1)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }))\n}\n}\n\n})","\n\n\n\n\n","import script from \"./LogoutPopup.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./LogoutPopup.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./LogoutPopup.vue?vue&type=style&index=0&id=7418d07c&scoped=true&lang=scss\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-7418d07c\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, Transition as _Transition, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5f3d65ee\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"loader__ring\" }, [\n /*#__PURE__*/_createElementVNode(\"div\"),\n /*#__PURE__*/_createElementVNode(\"div\"),\n /*#__PURE__*/_createElementVNode(\"div\"),\n /*#__PURE__*/_createElementVNode(\"div\")\n], -1))\nconst _hoisted_2 = [\n _hoisted_1\n]\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Loader',\n props: {\n isInline: { type: Boolean }\n },\n setup(__props: any) {\n\n// eslint-disable-next-line no-undef\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(_Transition, { name: \"fade\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"loader\", {'loader--inline': _ctx.isInline}])\n }, _hoisted_2, 2)\n ]),\n _: 1\n }))\n}\n}\n\n})","import script from \"./Loader.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Loader.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Loader.vue?vue&type=style&index=0&id=5f3d65ee&scoped=true&lang=scss\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-5f3d65ee\"]])\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, resolveDynamicComponent as _resolveDynamicComponent, openBlock as _openBlock, createBlock as _createBlock, Suspense as _Suspense, withCtx as _withCtx, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"dashboard\" }\nconst _hoisted_2 = { class: \"dashboard__navbar\" }\nconst _hoisted_3 = { class: \"dashboard__content-container\" }\nconst _hoisted_4 = { class: \"dashboard__content\" }\n\nimport Notifications from \"@/components/layout/Notifications.vue\";\nimport Navbar from \"@/components/navigation/Navbar.vue\";\nimport {onMounted, ref} from \"vue\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {useMemberService} from \"@/inversify.config\";\nimport LogoutPopup from \"@/components/layout/LogoutPopup.vue\";\nimport Loader from \"@/components/layout/Loader.vue\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'App',\n setup(__props) {\n\nconst memberStore = useMemberStore()\nconst memberService = useMemberService()\n\nconst memberIsLoading = ref(true)\n\nonMounted(async () => {\n memberIsLoading.value = true\n let member = await memberService.getCurrentMember()\n if (member)\n memberStore.setMember(member)\n memberIsLoading.value = false\n});\n\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterView = _resolveComponent(\"RouterView\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(LogoutPopup),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(Navbar, { \"member-is-loading\": memberIsLoading.value }, null, 8, [\"member-is-loading\"])\n ]),\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(Notifications),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(_component_RouterView, null, {\n default: _withCtx(({Component}) => [\n Component\n ? (_openBlock(), _createBlock(_Suspense, { key: 0 }, {\n fallback: _withCtx(() => [\n _createVNode(Loader)\n ]),\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_resolveDynamicComponent(Component)))\n ]),\n _: 2\n }, 1024))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ])\n ])\n ]))\n}\n}\n\n})","\n\n\n\n\n","import script from \"./App.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./App.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./App.vue?vue&type=style&index=0&id=ebaa958a&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createPinia } from \"pinia\";\nimport piniaPluginPersistedstate from 'pinia-plugin-persistedstate'\n\nconst p = createPinia()\np.use(piniaPluginPersistedstate)\n\nexport const pinia = p;","import i18n from \"@/i18n\";\nimport {Status} from \"@/validation\";\n\nexport type Rule = (value: string) => Status;\nexport type RuleBoolean = (value: boolean) => Status;\nexport type RuleArray = (value: any[]) => Status;\n\nexport const isFutureDate: Rule = (value: string): Status => {\n const startDate = new Date(value);\n startDate.setUTCMinutes(startDate.getTimezoneOffset());\n startDate.setHours(0, 0, 0, 0);\n const todayDate = new Date();\n todayDate.setHours(0, 0, 0, 0);\n const result = startDate >= todayDate;\n\n return {\n valid: result,\n message: result ? undefined : i18n.t(\"validation.futureDate\"),\n };\n};\n\nexport function minDate(min: string): Rule {\n return function (value: string): Status {\n const result = value > min;\n\n return {\n valid: result,\n message: result\n ? undefined\n : i18n.t('validation.min').replace(\"{min}\", min.toString())\n };\n };\n}\n\nexport function min(min: number): Rule {\n return function (value: string): Status {\n const result = Boolean(parseInt(value) >= min);\n\n return {\n valid: result,\n message: result\n ? undefined\n : i18n.t('validation.min').replace(\"{min}\", min.toString()),\n };\n };\n}\n\nexport function max(max: number): Rule {\n return function (value: string): Status {\n const result = Boolean(parseInt(value) <= max);\n\n return {\n valid: result,\n message: result\n ? undefined\n : i18n.t('validation.max').toString().replace(\"{max}\", max.toString()),\n };\n };\n}\n\nexport const required: Rule = (value?: string): Status => {\n const result = value == undefined ? false : Boolean(value.toString());\n return {\n valid: result,\n message: result ? undefined : i18n.t('validation.empty').toString()\n };\n};\n\nexport const requiredTextEditor: Rule = (value: string): Status => {\n const result = Boolean(value !== \"\" && value !== \"


\");\n\n return {\n valid: result,\n message: result ? undefined : i18n.t(\"validation.empty\").toString(),\n };\n};\n\nexport const requiredBoolean: RuleBoolean = (value: boolean): Status => {\n return {\n valid: value,\n message: value ? undefined : i18n.t('validation.checked').toString()\n };\n};\n\nexport const requiredArray: RuleArray = (array: any[]): Status => {\n const result = array != null && array.length > 0;\n return {\n valid: result,\n message: result ? undefined : i18n.t('validation.empty').toString()\n };\n}\n\nexport const mustMatchZipCodeFormat: Rule = (value: string): Status => {\n const zipCodeRegex = new RegExp(/^[ABCEGHJ-NPRSTVXY]\\d[ABCEGHJ-NPRSTV-Z]\\d[ABCEGHJ-NPRSTV-Z]\\d$|^\\d{9}$/)\n const valid = zipCodeRegex.test(value)\n return {\n valid: valid,\n message: valid ? undefined : i18n.t('validation.zipCode').toString()\n };\n};\n\nexport const mustMatchPhoneNumberFormat: Rule = (value: string): Status => {\n const phoneNumberRegex = new RegExp(/^(\\d-)?\\d{3}-\\d{3}-\\d{4}$/)\n const valid = phoneNumberRegex.test(value)\n return {\n valid: valid,\n message: valid ? undefined : i18n.t('validation.phoneNumber').toString()\n };\n};\n\nexport const mustMatchEmailFormat: Rule = (value: string): Status => {\n const emailRegex = new RegExp(/^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/)\n const valid = emailRegex.test(value)\n return {\n valid: valid,\n message: valid ? undefined : i18n.t('validation.email').toString()\n };\n}","import { notify } from \"@kyvg/vue3-notification\";\n\nexport function notifySuccess(text: string) {\n notify({\n text: text,\n type: \"success\",\n })\n}\n\nexport function notifyError(text: string) {\n notify({\n text: text,\n type: \"error\",\n })\n}","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 20 15\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#000\",\n d: \"m13 14.367-1.4-1.374 4.6-4.511H0V6.52h16.2l-4.6-4.51L13 .636 20 7.5l-7 6.865Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, unref as _unref, createVNode as _createVNode, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"href\"]\n\nimport IconArrow from \"@/assets/icons/icon__arrow.svg\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BtnLink',\n props: {\n name: {},\n path: {},\n href: {}\n },\n setup(__props: any) {\n\n\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_ctx.path)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n to: _ctx.path,\n class: \"btn btn--icon-translate-hover\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.name) + \" \", 1),\n _createVNode(_unref(IconArrow), { class: \"icon\" })\n ]),\n _: 1\n }, 8, [\"to\"]))\n : (_ctx.href)\n ? (_openBlock(), _createElementBlock(\"a\", {\n key: 1,\n href: _ctx.href,\n target: \"_blank\",\n class: \"btn btn--icon-translate-hover\"\n }, [\n _createTextVNode(_toDisplayString(_ctx.name) + \" \", 1),\n _createVNode(_unref(IconArrow), { class: \"icon\" })\n ], 8, _hoisted_1))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","import script from \"./BtnLink.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./BtnLink.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 16 16\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#1C1B1F\",\n d: \"M2 16c-.55 0-1.02-.196-1.412-.587A1.927 1.927 0 0 1 0 14v-3h2v3h12v-3h2v3a1.93 1.93 0 0 1-.587 1.413A1.928 1.928 0 0 1 14 16H2Zm6-4L3 7l1.4-1.45L7 8.15V0h2v8.15l2.6-2.6L13 7l-5 5Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { useCssVars as _useCssVars, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, renderSlot as _renderSlot, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, vShow as _vShow, withDirectives as _withDirectives, Transition as _Transition, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4c9a1b85\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"card__expand-trigger\"\n}\nconst _hoisted_2 = { class: \"card__title-container\" }\nconst _hoisted_3 = { class: \"card__title-subcontainer\" }\nconst _hoisted_4 = { class: \"card__title\" }\n\nimport { ref, onMounted } from \"vue\";\nimport BtnLink from \"@/components/layout/BtnLink.vue\";\nimport IconDownload from \"@/assets/icons/icon__download.svg\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Card',\n props: {\n title: {},\n linkText: {},\n linkPath: {},\n downloadLabel: {}\n },\n emits: [\"download\"],\n setup(__props: any, { emit: __emit }) {\n\n_useCssVars(_ctx => ({\n \"040336a2\": (_unref(height))\n}))\n\n\n\nlet isExpanded = ref(true);\nlet content = ref();\nlet height = ref();\n\n// eslint-disable-next-line\nconst emit = __emit\n\nonMounted(() => {\n height.value = `${\n content.value != undefined ? content.value.scrollHeight : 0\n }px`;\n\n //close it once we have the scroll value\n toggleExpansion();\n});\n\nfunction toggleExpansion() {\n isExpanded.value = !isExpanded.value;\n}\n\nfunction handleDownload() {\n emit(\"download\")\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"section\", {\n class: _normalizeClass([\"card\", { 'card--expand': _unref(isExpanded) }])\n }, [\n (_ctx.title)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"h2\", _hoisted_4, _toDisplayString(_ctx.title), 1),\n _renderSlot(_ctx.$slots, \"on-title-right\")\n ]),\n (_ctx.linkText && _ctx.linkPath)\n ? (_openBlock(), _createBlock(BtnLink, {\n key: 0,\n name: _ctx.linkText,\n path: _ctx.linkPath\n }, null, 8, [\"name\", \"path\"]))\n : (_ctx.downloadLabel)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn--blue\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (handleDownload()))\n }, [\n _createVNode(_unref(IconDownload), { class: \"icon icon--black\" }),\n _createTextVNode(\" \" + _toDisplayString(_ctx.downloadLabel), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.$windowWidth < 768)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n type: \"button\",\n class: _normalizeClass([\"plus-sign plus-sign--minus\", { 'plus-sign--plus': _unref(isExpanded) }]),\n onClick: toggleExpansion\n }, null, 2))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(_Transition, { name: \"expand\" }, {\n default: _withCtx(() => [\n _withDirectives(_createElementVNode(\"div\", {\n class: \"card__content\",\n ref_key: \"content\",\n ref: content\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ], 512), [\n [_vShow, _unref(isExpanded) || _ctx.$windowWidth >= 768 || _ctx.title == null]\n ])\n ]),\n _: 3\n })\n ], 2))\n}\n}\n\n})","\n\n\n\n\n","import script from \"./Card.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Card.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./Card.vue?vue&type=style&index=0&id=4c9a1b85&scoped=true&lang=scss\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4c9a1b85\"]])\n\nexport default __exports__","import {Rule, RuleArray, RuleBoolean} from \"@/validation/rules\";\n\nexport interface Status {\n valid: boolean;\n message?: string;\n}\n\nexport function validate(value: string, rules: Rule[]): Status {\n for (const rule of rules) {\n const result = rule(value);\n if (!result.valid) {\n return result;\n }\n }\n\n return {\n valid: true,\n };\n}\n\nexport function validateBoolean(value: boolean, rules: RuleBoolean[]): Status {\n for (const rule of rules) {\n const result = rule(value);\n if (!result.valid) {\n return result;\n }\n }\n\n return {\n valid: true,\n };\n}\n\nexport function validateArray(value: any[], rules: RuleArray[]): Status {\n for (const rule of rules) {\n const result = rule(value);\n if (!result.valid) {\n return result;\n }\n }\n\n return {\n valid: true,\n };\n}","import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, vModelDynamic as _vModelDynamic, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = [\"id\", \"aria-describedby\", \"aria-invalid\", \"list\", \"min\", \"name\", \"placeholder\", \"type\"]\nconst _hoisted_2 = [\"for\"]\nconst _hoisted_3 = {\n key: 0,\n class: \"form__indicator\"\n}\nconst _hoisted_4 = {\n key: 1,\n class: \"form__tooltip\"\n}\nconst _hoisted_5 = [\"id\"]\n\nimport {required, Rule} from '@/validation/rules'\nimport {Status, validate} from '@/validation'\nimport {ref, watch} from \"vue\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormInput',\n props: {\n name: {},\n label: {},\n modelValue: {},\n placeholder: {},\n type: {},\n rules: {},\n tooltip: {},\n list: {}\n },\n emits: [\"update:modelValue\", \"validated\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\nconst props = __props;\n\n// eslint-disable-next-line\n__expose({\n //to call validation in parent.\n validateInput\n})\n\nconst inputValue = ref(props.modelValue === '' ? undefined : props.modelValue);\nwatch(props, () => inputValue.value = props.modelValue === '' ? undefined : props.modelValue)\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst status = ref({valid: true});\nconst isRequired = !(props.rules != undefined && props.rules.length == 0);\n\nfunction handleInput() {\n reformatInput()\n validateInput();\n inputValue.value = inputValue.value === '' ? undefined : inputValue.value\n emit(\"update:modelValue\", inputValue.value);\n}\n\nfunction handleBlur() {\n validateInput();\n}\n\nfunction validateInput() {\n let validationRules = props.rules ? props.rules : [required]\n status.value = validate(inputValue.value as string, validationRules)\n emit(\"validated\", props.name, status.value);\n}\n\nfunction reformatInput() {\n if (props.type === \"tel\")\n reformatPhoneNumber()\n else if (props.type === \"zip\")\n reformatZipCode()\n}\n\nfunction reformatPhoneNumber() {\n let trimmedPhoneNumber = (inputValue.value as string).replace(/\\D/g, '');\n if (trimmedPhoneNumber.length === 11) {\n let x = trimmedPhoneNumber.match(/(\\d?)(\\d{0,3})(\\d{0,3})(\\d{0,4})/);\n if (!x)\n return;\n inputValue.value = !x[2] ? x[1] : `${x[1]}-${x[2]}` + (x[3] ? `-${x[3]}` + (x[4] ? `-${x[4]}` : '') : '');\n return;\n }\n let x = trimmedPhoneNumber.match(/(\\d{0,3})(\\d{0,3})(\\d{0,4})/);\n if (!x)\n return;\n inputValue.value = !x[2] ? x[1] : x[1] + '-' + x[2] + (x[3] ? '-' + x[3] : '');\n}\n\nfunction reformatZipCode() {\n inputValue.value = (inputValue.value as string).replace(' ', '').toUpperCase()\n if (inputValue.value.length <= 9)\n return;\n inputValue.value = inputValue.value.substring(0,9);\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([{'error':!status.value.valid}, \"form__field\"])\n }, [\n _renderSlot(_ctx.$slots, \"before-input\"),\n _withDirectives(_createElementVNode(\"input\", {\n id: _ctx.name,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((inputValue).value = $event)),\n \"aria-describedby\": `error__${_ctx.name}`,\n \"aria-invalid\": !status.value.valid,\n list: _ctx.list,\n min: _ctx.type == 'number' ? '0' : '',\n name: _ctx.name,\n placeholder: _ctx.placeholder,\n type: _ctx.type,\n onBlur: handleBlur,\n onInput: handleInput\n }, null, 40, _hoisted_1), [\n [_vModelDynamic, inputValue.value]\n ]),\n _createElementVNode(\"label\", { for: _ctx.name }, [\n _createTextVNode(_toDisplayString(_ctx.label ? _ctx.label : _ctx.name) + \" \", 1),\n isRequired\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_3, \"*\"))\n : _createCommentVNode(\"\", true),\n (_ctx.tooltip)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(_ctx.tooltip), 1))\n : _createCommentVNode(\"\", true)\n ], 8, _hoisted_2),\n (!status.value.valid)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n id: `error__${_ctx.name}`,\n class: \"form__error-message\"\n }, _toDisplayString(status.value.message), 9, _hoisted_5))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})","\n\n\n","import script from \"./FormInput.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./FormInput.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nimport {computed} from \"vue\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormRow',\n props: {\n centerFields: { type: Boolean },\n withThreeColumns: { type: Boolean },\n withFourColumns: { type: Boolean }\n },\n setup(__props: any) {\n\nconst props = __props;\n\nconst display = computed(() => {\n let classes = \"form__row\";\n\n if (props.centerFields) classes += ' align-center'\n if (props.withFourColumns) classes += ' quadruple'\n if (props.withThreeColumns) classes += ' triple'\n\n return classes\n})\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass(display.value)\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ], 2))\n}\n}\n\n})","\n\n\n","import script from \"./FormRow.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./FormRow.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"form-errors-list\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"form-errors-list__title\"\n}\nconst _hoisted_3 = { class: \"form-errors-list__list\" }\n\nimport IconWarning from \"@/assets/icons/icon__warning.svg\"\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormErrorsList',\n props: {\n title: {},\n errorsList: {}\n },\n setup(__props: any) {\n\nconst props = __props;\n// eslint-disable-next-line\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.title)\n ? (_openBlock(), _createElementBlock(\"p\", _hoisted_2, [\n _createVNode(_unref(IconWarning), { class: \"icon\" }),\n _createTextVNode(\" \" + _toDisplayString(_ctx.title), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"ul\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.errorsList, (error) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: \"form-errors-list__item\",\n key: error\n }, _toDisplayString(error), 1))\n }), 128))\n ])\n ]))\n}\n}\n\n})","import script from \"./FormErrorsList.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FormErrorsList.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 20 20\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#1093D2\",\n d: \"M9.95 16c.35 0 .646-.121.888-.363.241-.241.362-.537.362-.887s-.12-.646-.362-.887a1.208 1.208 0 0 0-.888-.363c-.35 0-.646.121-.888.363a1.206 1.206 0 0 0-.362.887c0 .35.12.646.362.887.242.242.538.363.888.363Zm-.9-3.85h1.85c0-.55.063-.983.188-1.3.125-.317.479-.75 1.062-1.3a7.484 7.484 0 0 0 1.025-1.238c.25-.391.375-.862.375-1.412 0-.933-.342-1.65-1.025-2.15-.683-.5-1.492-.75-2.425-.75-.95 0-1.72.25-2.312.75-.592.5-1.005 1.1-1.238 1.8l1.65.65c.083-.3.271-.625.563-.975.291-.35.737-.525 1.337-.525.533 0 .933.146 1.2.437.267.292.4.613.4.963 0 .333-.1.646-.3.937-.2.292-.45.563-.75.813-.733.65-1.183 1.142-1.35 1.475-.167.333-.25.942-.25 1.825ZM10 20a9.733 9.733 0 0 1-3.9-.788 10.092 10.092 0 0 1-3.175-2.137c-.9-.9-1.612-1.958-2.137-3.175A9.732 9.732 0 0 1 0 10a9.74 9.74 0 0 1 .788-3.9 10.092 10.092 0 0 1 2.137-3.175c.9-.9 1.958-1.613 3.175-2.138A9.743 9.743 0 0 1 10 0a9.74 9.74 0 0 1 3.9.787 10.105 10.105 0 0 1 3.175 2.138c.9.9 1.612 1.958 2.137 3.175A9.733 9.733 0 0 1 20 10a9.733 9.733 0 0 1-.788 3.9 10.092 10.092 0 0 1-2.137 3.175c-.9.9-1.958 1.612-3.175 2.137A9.733 9.733 0 0 1 10 20Zm0-2c2.233 0 4.125-.775 5.675-2.325C17.225 14.125 18 12.233 18 10c0-2.233-.775-4.125-2.325-5.675C14.125 2.775 12.233 2 10 2c-2.233 0-4.125.775-5.675 2.325C2.775 5.875 2 7.767 2 10c0 2.233.775 4.125 2.325 5.675C5.875 17.225 7.767 18 10 18Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, renderSlot as _renderSlot, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"tooltip tooltip--form\" }\nconst _hoisted_2 = { class: \"tooltip__cta\" }\nconst _hoisted_3 = { class: \"rte rte--small\" }\n\nimport IconHelp from \"@/assets/icons/icon__help.svg\";\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormTooltip',\n setup(__props) {\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_unref(IconHelp), { class: \"icon icon--blue\" }),\n _createElementVNode(\"div\", _hoisted_3, [\n _renderSlot(_ctx.$slots, \"default\")\n ])\n ])\n ]))\n}\n}\n\n})","import script from \"./FormTooltip.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./FormTooltip.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withCtx as _withCtx, createVNode as _createVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { class: \"form__submit btn btn--fullscreen\" }\n\nimport {computed, ref} from \"vue\";\n\nimport Card from \"@/components/layout/Card.vue\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport FormErrorsList from \"@/components/forms/FormErrorsList.vue\";\n\nimport {useI18n} from \"vue3-i18n\";\nimport {useUserService} from \"@/inversify.config\";\nimport {IChangePasswordRequest} from \"@/types/requests/changePasswordRequest\";\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\";\nimport { notifyError, notifySuccess } from \"@/notify\";\nimport { Status } from \"@/validation\";\nimport FormTooltip from \"@/components/forms/FormTooltip.vue\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ChangePassword',\n setup(__props) {\n\nconst {t} = useI18n()\nconst userService = useUserService()\n\nconst currentPassword = ref()\nconst currentPasswordInput = ref()\n\nconst newPassword = ref()\nconst newPasswordInput = ref()\n\nconst newPasswordConfirmation = ref()\nconst newPasswordConfirmationInput = ref()\n\nconst changePasswordResponse = ref()\nlet errorsMessages = computed(() => {\n if (!changePasswordResponse.value)\n return []\n let response = changePasswordResponse.value as SucceededOrNotResponse\n return response.getErrorMessages('validation.password')\n})\n\nconst inputValidationStatuses:any = {};\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid\n}\n\nasync function showErrorMessages() {\n currentPasswordInput.value?.validateInput(currentPassword.value);\n newPasswordInput.value?.validateInput(newPassword.value);\n newPasswordConfirmationInput.value?.validateInput(newPasswordConfirmation.value);\n}\n\nasync function handleSubmit() {\n await showErrorMessages();\n\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\n notifyError(t('global.formErrorNotification'))\n return\n }\n\n const request = {\n currentPassword: currentPassword.value,\n newPassword: newPassword.value,\n newPasswordConfirmation: newPasswordConfirmation.value,\n } as IChangePasswordRequest\n\n changePasswordResponse.value = await userService.changePassword(request) as SucceededOrNotResponse;\n\n changePasswordResponse.value.succeeded\n ? notifySuccess(t('password.form.successMessage'))\n : notifyError(t('password.form.failedMessage'));\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Card, {\n title: _unref(t)('password.form.title')\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n (changePasswordResponse.value && !changePasswordResponse.value.succeeded && changePasswordResponse.value.errors.length > 0)\n ? (_openBlock(), _createBlock(FormErrorsList, {\n key: 0,\n title: _unref(t)('password.form.failedMessage'),\n errorsList: _unref(errorsMessages)\n }, null, 8, [\"title\", \"errorsList\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(FormTooltip, null, {\n default: _withCtx(() => [\n _createElementVNode(\"p\", null, _toDisplayString(_unref(t)('password.form.format')), 1)\n ]),\n _: 1\n }),\n _createVNode(FormInput, {\n ref_key: \"currentPasswordInput\",\n ref: currentPasswordInput,\n modelValue: currentPassword.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((currentPassword).value = $event)),\n label: _unref(t)('password.form.currentPassword'),\n name: \"currentPassword\",\n type: \"password\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref_key: \"newPasswordInput\",\n ref: newPasswordInput,\n modelValue: newPassword.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((newPassword).value = $event)),\n label: _unref(t)('password.form.newPassword'),\n name: \"newPassword\",\n type: \"password\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref_key: \"newPasswordConfirmationInput\",\n ref: newPasswordConfirmationInput,\n modelValue: newPasswordConfirmation.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((newPasswordConfirmation).value = $event)),\n label: _unref(t)('password.form.newPasswordConfirmation'),\n name: \"newPasswordConfirmation\",\n type: \"password\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createElementVNode(\"button\", _hoisted_2, _toDisplayString(_unref(t)('global.save')), 1)\n ], 40, _hoisted_1)\n ]),\n _: 1\n }, 8, [\"title\"]))\n}\n}\n\n})","\n\n\n","import script from \"./ChangePassword.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ChangePassword.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, withCtx as _withCtx, toDisplayString as _toDisplayString, withModifiers as _withModifiers, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = [\"innerHTML\"]\nconst _hoisted_3 = { class: \"form__submit btn btn--fullscreen\" }\n\nimport {computed, ref} from \"vue\"\nimport {mustMatchEmailFormat} from \"@/validation/rules\"\n\nimport Card from \"@/components/layout/Card.vue\"\nimport FormInput from \"@/components/forms/FormInput.vue\"\nimport FormTooltip from \"@/components/forms/FormTooltip.vue\";\n\nimport {useI18n} from \"vue3-i18n\"\nimport {useUserService} from \"@/inversify.config\"\nimport {useMemberStore} from \"@/stores/memberStore\"\n\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\"\nimport {IChangeEmailRequest} from \"@/types/requests/changeEmailRequest\"\nimport {Status} from \"@/validation\";\nimport { notifyError, notifySuccess } from \"@/notify\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ChangeEmail',\n setup(__props) {\n\nconst {t} = useI18n()\nconst memberStore = useMemberStore()\nconst userService = useUserService()\n\nconst newEmail = ref(\"\")\nconst newEmailInput = ref()\n\nconst currentEmail = computed(() => memberStore.getMember.email)\n\nconst changeEmailResponse = ref()\n\nconst inputValidationStatuses:any = {};\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid\n}\n\nasync function showErrorMessages() {\n newEmailInput.value?.validateInput(newEmail.value);\n}\n\nasync function handleSubmit() {\n showErrorMessages();\n\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\n notifyError(t('global.formErrorNotification'))\n return\n }\n\n const request = {\n newEmail: newEmail.value\n } as IChangeEmailRequest\n changeEmailResponse.value = await userService.changeEmail(request)\n\n changeEmailResponse.value.succeeded\n ? notifySuccess(t('email.form.successMessage'))\n : notifyError(t('email.form.failedMessage'));\n \n let logoutButton = document.getElementById('js-logout-btn') as HTMLElement\n logoutButton.click()\n}\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Card, {\n title: _unref(t)('email.form.title')\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n _createVNode(FormInput, {\n ref_key: \"newEmailInput\",\n ref: newEmailInput,\n name: \"email\",\n type: \"email\",\n modelValue: newEmail.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((newEmail).value = $event)),\n label: _unref(t)('email.form.label'),\n placeholder: currentEmail.value,\n rules: [_unref(mustMatchEmailFormat)],\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"placeholder\", \"rules\"]),\n _createVNode(FormTooltip, null, {\n default: _withCtx(() => [\n _createElementVNode(\"p\", {\n innerHTML: _unref(t)('email.form.warning')\n }, null, 8, _hoisted_2)\n ]),\n _: 1\n }),\n _createElementVNode(\"button\", _hoisted_3, _toDisplayString(_unref(t)('global.save')), 1)\n ], 40, _hoisted_1)\n ]),\n _: 1\n }, 8, [\"title\"]))\n}\n}\n\n})","\n\n\n","import script from \"./ChangeEmail.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ChangeEmail.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, isRef as _isRef, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"util--hidden\" }\nconst _hoisted_2 = [\"src\"]\n\nimport {computed, ref} from \"vue\";\nimport Card from \"@/components/layout/Card.vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {useMemberStore} from \"@/stores/memberStore\";\n\n// jsPDF auto-table documentation:\n// https://simonbengtsson.github.io/jsPDF-AutoTable/\n// https://github.com/simonbengtsson/jsPDF-AutoTable/blob/master/examples/examples.js\nimport {jsPDF} from \"jspdf\";\nimport autoTable from \"jspdf-autotable\";\nimport {Role} from \"@/types\";\n\nconst pageWidth = 279; //mm -> value from their autocrat template.\nconst pageHeight = 216; //mm\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MembershipCertificate',\n setup(__props) {\n\nconst {t} = useI18n();\n\nconst memberStore = useMemberStore();\nconst member = computed(() => memberStore.getMember);\n\n//PDF of member doc ==========================================================\nfunction downloadMembershipCertificate() {\n membershipCertificate.value.save(`${t(\"member.certificate.mine\")}_${member.value.memberNumber}_${member.value.organizationName}`.replaceAll(\" \", \"-\") + '.pdf');\n}\n\n//Helpers ---------------------------------\nconst pxToMm = (val: number) => val * 0.2645833333;\nconst pxToPt = (val: number) => val * (72 / 96);\nconst getFinalYautoTable = (doc: jsPDF) => (doc as any).lastAutoTable.finalY || 0;\n\n//Properties -----------------\nlet headerImg = ref();\nlet logo = ref();\nlet signaturePresident = ref();\nlet signatureDirector = ref();\n\nlet areImagesLoaded = ref(false);\n\nconst colors = {\n black: \"#000000\",\n blue: \"#00ADEE\",\n white: \"#FFFFFF\",\n};\n\nconst pageXPadding = pxToMm(120);\nconst pageYPadding = pxToMm(120);\n\nconst largeYPadding = pxToMm(40);\nconst mediumYPadding = pxToMm(24);\nconst smallYPadding = pxToMm(12);\n\nlet yPosition = 0;\n\nconst titleFontSize = pxToPt(48);\nconst subtitleFontSize = pxToPt(22);\nconst dynamicValueFontSize = pxToPt(32);\nconst signatureLabelFontSize = pxToPt(14);\n\nconst basicTableProperties: any = {\n theme: \"plain\",\n margin: {\n top: pageYPadding,\n right: pageXPadding,\n left: pageXPadding,\n },\n};\n\nconst basicTextStylesProperties: any = {\n font: \"helvetica\",\n textColor: colors.black,\n cellPadding: 0,\n halign: \"center\",\n};\n\n//Setting up --------------------------------------------\nlet doc = new jsPDF();\n\nlet membershipCertificate = computed(() => {\n //reset\n yPosition = 0;\n doc = new jsPDF({\n orientation: \"landscape\",\n format: [pageWidth, pageHeight],\n });\n\n if (member.value && areImagesLoaded.value) {\n let memberName = memberStore.hasRole(Role.RegularIndividual)\n ? member.value.firstName + \" \" + member.value.lastName\n : member.value.organizationName;\n\n //Basic properties\n doc.setProperties({\n title: `${t(\"member.certificate.mine\")} - ${member.value.memberNumber} - ${memberName}`,\n author: \"RGCQ\",\n creator: \"RGCQ\",\n });\n\n //populate with content\n addPdfHeader();\n\n //Add body\n addTextToPdfBody(t(\"member.certificate.membershipCertificate\"), true, false, \"lg\");\n addTextToPdfBody(t(\"member.certificate.toRGCQ\"), false, true);\n addTextToPdfBody(t(\"member.certificate.for\"), false, true, \"sm\");\n addTextToPdfBody(`${member.value.memberNumber} - ${memberName}`, false, false);\n addTextToPdfBody(t(\"member.certificate.until\"), false, true);\n addTextToPdfBody(member.value.subscription?.endAt ?? \"\", false, false);\n\n //Add footer\n addPdfFooter();\n }\n\n return doc;\n});\n\nconst previewSrc = computed(() => membershipCertificate.value?.output(\"datauristring\"));\n\n//Creating the layout -----------------------------------------------\nconst addPdfHeader = () => {\n autoTable(doc, {\n margin: {\n top: 0,\n right: 0,\n left: 0,\n },\n body: [[{content: \"\"}]],\n didDrawCell: (data: any) => {\n if (headerImg.value != null) {\n //calculate so img is fullscreen.\n let ratio = headerImg.value.naturalHeight / headerImg.value.naturalWidth;\n\n if (!isNaN(pageWidth) && !isNaN(pageWidth * ratio)) {\n doc.addImage(\n headerImg.value,\n \"JPEG\",\n data.cell.x,\n data.cell.y,\n pageWidth,\n pageWidth * ratio\n );\n\n yPosition = pageWidth * ratio; //y is now height of img, to place the text under it.\n }\n }\n },\n });\n};\n\nconst addTextToPdfBody = (text: string, isTitle = false, isSubtitle = false, spacing = \"md\",) => {\n const startY = yPosition + (spacing == \"lg\"\n ? largeYPadding\n : spacing == \"md\"\n ? mediumYPadding\n : smallYPadding);\n\n autoTable(doc, {\n ...basicTableProperties,\n startY: startY,\n styles: {\n ...basicTextStylesProperties,\n fontStyle: isSubtitle ? \"normal\" : \"bold\",\n fontSize: isTitle ? titleFontSize : isSubtitle ? subtitleFontSize : dynamicValueFontSize,\n },\n body: [[{content: text.toUpperCase()}]]\n });\n\n yPosition = getFinalYautoTable(doc);\n};\n\nconst addPdfFooter = () => {\n const cellStyles = {\n cellWidth: (pageWidth - (pageXPadding * 2)) / 3,\n halign: \"center\"\n }\n\n autoTable(doc, {\n ...basicTableProperties,\n startY: yPosition + mediumYPadding,\n body: [\n [\n {\n content: \"\",\n title: \"signature-president\",\n styles: {...cellStyles}\n },\n {\n content: \"\",\n title: \"logo\",\n styles: {...cellStyles}\n },\n {\n content: \"\",\n title: \"signature-director\",\n styles: {...cellStyles}\n }\n ]\n ],\n didDrawCell: (data: any) => {\n const isLogo = data.cell.raw.title == \"logo\";\n const isSignatureDirector = data.cell.raw.title == \"signature-director\";\n\n const image = isLogo\n ? logo.value\n : isSignatureDirector\n ? signatureDirector.value\n : signaturePresident.value;\n\n if (image != null && data.cell != null) {\n //add image\n const ratio = image.naturalHeight / image.naturalWidth;\n const signatureCellWidth = cellStyles.cellWidth - pxToMm(72);\n\n let imageWidth = isLogo\n ? cellStyles.cellWidth\n : signatureCellWidth;\n let imageHeight = imageWidth * ratio;\n\n\n if (imageWidth < imageHeight && !isLogo) {\n imageHeight = signatureCellWidth;\n imageWidth = imageHeight * ratio;\n }\n\n const lineYPosition = yPosition + pxToMm(72);\n const imageYPosition = isLogo\n ? data.cell.y\n : lineYPosition - imageHeight;\n const imageXPosition = isSignatureDirector\n ? data.cell.x + pxToMm(72)\n : data.cell.x;\n\n\n if (!isNaN(imageXPosition) && !isNaN(imageYPosition) && !isNaN(imageWidth) && !isNaN(imageHeight)) {\n doc.addImage(\n image,\n \"JPEG\",\n imageXPosition,\n imageYPosition,\n imageWidth,\n imageHeight\n );\n\n if (!isLogo) {\n //add line under signature\n doc.setLineWidth(pxToPt(0.5));\n doc.setDrawColor(colors.black);\n doc.line(\n imageXPosition,\n lineYPosition,\n imageXPosition + signatureCellWidth,\n lineYPosition);\n\n //then add text under it.\n const textYPosition = lineYPosition + doc.getLineWidth() + pxToMm(24);\n\n doc.setFontSize(signatureLabelFontSize);\n doc.text(\n isSignatureDirector\n ? [\"Me Cécile Pilarski\", t(\"member.certificate.director\")]\n : [\"Me Yves Joli-Coeur\", t(\"member.certificate.president\")],\n imageXPosition,\n textYPosition,\n {\n maxWidth: signatureCellWidth\n });\n }\n }\n }\n },\n });\n};\n\nreturn (_ctx: any,_cache: any) => {\n return (member.value)\n ? (_openBlock(), _createBlock(Card, {\n key: 0,\n title: _unref(t)('member.certificate.mine'),\n \"download-label\": _unref(t)('member.certificate.download'),\n onDownload: _cache[1] || (_cache[1] = ($event: any) => (downloadMembershipCertificate()))\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"img\", {\n ref_key: \"headerImg\",\n ref: headerImg,\n src: \"/images/membership-certificate/header-img.jpg\",\n alt: \"\"\n }, null, 512),\n _createElementVNode(\"img\", {\n ref_key: \"logo\",\n ref: logo,\n src: \"/images/membership-certificate/logo.jpg\",\n alt: \"\"\n }, null, 512),\n _createElementVNode(\"img\", {\n ref_key: \"signatureDirector\",\n ref: signatureDirector,\n src: \"/images/membership-certificate/signature--director.jpg\",\n alt: \"\"\n }, null, 512),\n _createElementVNode(\"img\", {\n ref_key: \"signaturePresident\",\n ref: signaturePresident,\n src: \"/images/membership-certificate/signature--president.jpg\",\n alt: \"\",\n onLoad: _cache[0] || (_cache[0] = () => {_isRef(areImagesLoaded) //@ts-ignore\n ? areImagesLoaded.value = true : areImagesLoaded = true})\n }, null, 544)\n ]),\n _createElementVNode(\"iframe\", { src: previewSrc.value }, null, 8, _hoisted_2)\n ]),\n _: 1\n }, 8, [\"title\", \"download-label\"]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","\n\n\n","import script from \"./MembershipCertificate.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MembershipCertificate.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, unref as _unref, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = [\"name\", \"id\", \"aria-invalid\", \"aria-describedby\"]\nconst _hoisted_2 = [\"value\", \"selected\"]\nconst _hoisted_3 = [\"for\"]\nconst _hoisted_4 = {\n key: 0,\n class: \"form__indicator\"\n}\nconst _hoisted_5 = [\"id\"]\n\nimport { FormOption } from \"@/types/formOption\";\nimport {validate, Status} from '@/validation'\nimport {required, Rule} from '@/validation/rules'\nimport {ref, watch} from \"vue\";\nimport { useI18n } from \"vue3-i18n\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormSelect',\n props: {\n name: {},\n modelValue: {},\n label: {},\n rules: {},\n options: {},\n noLabel: { type: Boolean }\n },\n emits: [\"update:modelValue\", \"validated\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\nconst props = __props;\n\n// eslint-disable-next-line\n__expose({\n //to call validation in parent.\n validateInput\n})\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst { t } = useI18n();\nconst status = ref( { valid: true });\nconst isRequired = !(props.rules != null && props.rules.length == 0);\nconst inputValue = ref(props.modelValue as string);\nwatch(props, (newProps) => inputValue.value = newProps.modelValue)\n\nfunction handleChange() {\n validateInput();\n emit(\"update:modelValue\", inputValue.value);\n}\n\nfunction handleBlur() {\n validateInput()\n}\n\nfunction validateInput() {\n let validationRules = props.rules ? props.rules : [required]\n status.value = validate(inputValue.value, validationRules)\n\n emit(\"validated\", props.name, status.value);\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"form__field\", { error: !status.value.valid }])\n }, [\n _withDirectives(_createElementVNode(\"select\", {\n name: _ctx.name,\n id: _ctx.name,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((inputValue).value = $event)),\n onChange: handleChange,\n onBlur: handleBlur,\n \"aria-invalid\": !status.value.valid,\n \"aria-describedby\": `error__${_ctx.name}`\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.options, (option) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n key: option.name,\n value: option.name,\n selected: _ctx.modelValue === option.name\n }, _toDisplayString(option.label), 9, _hoisted_2))\n }), 128))\n ], 40, _hoisted_1), [\n [_vModelSelect, inputValue.value]\n ]),\n (!_ctx.noLabel)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: _ctx.name\n }, [\n _createTextVNode(_toDisplayString(_ctx.label ? _ctx.label : _ctx.name) + \" \", 1),\n isRequired\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, \"*\"))\n : _createCommentVNode(\"\", true)\n ], 8, _hoisted_3))\n : _createCommentVNode(\"\", true),\n (!status.value.valid)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n class: \"form__error-message\",\n id: `error__${_ctx.name}`\n }, _toDisplayString(_unref(t)('validation.select')), 9, _hoisted_5))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})","\n\n\n","import script from \"./FormSelect.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FormSelect.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"form__field\" }\nconst _hoisted_2 = [\"name\", \"id\", \"value\"]\nconst _hoisted_3 = [\"for\"]\n\nimport {useI18n} from \"vue3-i18n\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormReadonlyField',\n props: {\n name: {},\n label: {},\n modelValue: {}\n },\n setup(__props: any) {\n\n\n\nconst {t} = useI18n()\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n type: \"text\",\n readonly: \"\",\n name: _ctx.name,\n id: _ctx.name,\n value: _ctx.modelValue ? _ctx.modelValue : _unref(t)('global.undefined')\n }, null, 8, _hoisted_2),\n _createElementVNode(\"label\", { for: _ctx.name }, _toDisplayString(_ctx.label ? _ctx.label : _ctx.name), 9, _hoisted_3)\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./FormReadonlyField.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FormReadonlyField.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid\" }\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = { id: \"address-list\" }\nconst _hoisted_4 = [\"id\"]\nconst _hoisted_5 = { class: \"form__duo-fields\" }\nconst _hoisted_6 = { class: \"form__submit btn btn--fullscreen\" }\nconst _hoisted_7 = { class: \"content-grid content-grid--double\" }\n\nimport {computed, ref} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {useAddressService, useMemberService} from \"@/inversify.config\";\nimport {mustMatchPhoneNumberFormat, mustMatchZipCodeFormat, required,} from \"@/validation/rules\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {Role} from \"@/types\";\nimport {Status} from \"@/validation\";\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\";\nimport Card from \"@/components/layout/Card.vue\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport ChangePassword from \"@/views/ChangePassword.vue\";\nimport ChangeEmail from \"@/views/ChangeEmail.vue\";\nimport MembershipCertificate from \"@/components/memberships/MembershipCertificate.vue\";\nimport FormSelect from \"@/components/forms/FormSelect.vue\";\nimport FormReadonlyField from \"@/components/forms/FormReadonlyField.vue\";\nimport {IFilterAddressesRequest, IGetAddressRequest} from \"@/types/requests\";\nimport {IAddress} from \"@/types/responses\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Account',\n setup(__props) {\n\nconst {t, getLocale} = useI18n()\nconst memberStore = useMemberStore();\nconst memberService = useMemberService();\nconst addressService = useAddressService()\n\nconst member = computed(() => memberStore.getMember);\nconst updateMemberResponse = ref();\nconst addressOptions = ref([])\n\nconst rolesAllowedToEditJobTitle = [Role.CorporateAdmin, Role.RegularSyndicateAdmin, Role.RegularSyndicateManager, Role.RegularIndividual]\nconst rolesThatCanHaveAnyJobTitle = [Role.CorporateAdmin, Role.RegularIndividual]\n\nconst canEditJobTitle = computed(() => memberStore.hasOneOfTheseRoles(rolesAllowedToEditJobTitle))\nconst canHaveAnyJobTitle = computed(() => memberStore.hasOneOfTheseRoles(rolesThatCanHaveAnyJobTitle))\nconst jobTitles = [\n {\n label: t('member.jobTitle.administrator.label'),\n name: t('member.jobTitle.administrator.value')\n },\n {\n label: t('member.jobTitle.manager.label'),\n name: t('member.jobTitle.manager.value')\n },\n {\n label: t('member.jobTitle.coowner.label'),\n name: t('member.jobTitle.coowner.value')\n },\n]\n\nconst formInputs = ref<(typeof FormInput)[]>([])\nconst inputValidationStatuses: any = {}\n\nfunction addFormInputRef(ref: typeof FormInput) {\n if (!formInputs.value.includes(ref))\n formInputs.value.push(ref)\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid;\n}\n\nasync function handleSubmit() {\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\n if (Object.values(inputValidationStatuses).some((x) => x === false)) {\n notifyError(t(\"global.formErrorNotification\"));\n return;\n }\n\n updateMemberResponse.value = (await memberService.updateAuthenticatedMember(\n member.value\n )) as SucceededOrNotResponse;\n\n updateMemberResponse.value?.succeeded\n ? notifySuccess(t(\"account.form.successMessage\"))\n : notifyError(t(\"account.form.failedMessage\"));\n}\n\nasync function handleInput(inputValue: string) {\n let selectedOptions = addressOptions.value.filter(x => x.text == inputValue)\n if (selectedOptions.length > 0) {\n let request = {\n id: selectedOptions[0].id,\n language: getLocale()\n } as IGetAddressRequest\n let response = await addressService.getAddress(request)\n member.value.street = response.detailedAddress.street\n member.value.city = response.detailedAddress.city\n member.value.zipCode = response.detailedAddress.zipCode.replace(' ', '')\n return;\n }\n await loadMatchingAddresses(inputValue)\n}\n\nasync function loadMatchingAddresses(inputValue: string) {\n let request = {\n street: inputValue,\n language: getLocale()\n } as IFilterAddressesRequest\n let addresses = await addressService.filterAddresses(request)\n addressOptions.value = addresses.matchingAddresses\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (member.value)\n ? (_openBlock(), _createBlock(Card, {\n key: 0,\n title: _unref(t)('routes.account.name')\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n _createVNode(FormRow, { \"with-three-columns\": true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.firstName,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((member.value.firstName) = $event)),\n label: _unref(t)('global.firstName'),\n name: \"firstName\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.lastName,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((member.value.lastName) = $event)),\n label: _unref(t)('global.lastName'),\n name: \"lastName\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n (canEditJobTitle.value && canHaveAnyJobTitle.value)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 0,\n ref: addFormInputRef,\n modelValue: member.value.jobTitle,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((member.value.jobTitle) = $event)),\n label: _unref(t)('account.form.jobTitle'),\n name: \"jobTitle\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (canEditJobTitle.value && !canHaveAnyJobTitle.value)\n ? (_openBlock(), _createBlock(FormSelect, {\n key: 1,\n ref: addFormInputRef,\n modelValue: member.value.jobTitle,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((member.value.jobTitle) = $event)),\n label: _unref(t)('global.jobTitle'),\n options: jobTitles,\n name: \"jobTitle\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (!canEditJobTitle.value)\n ? (_openBlock(), _createBlock(FormReadonlyField, {\n key: 2,\n modelValue: member.value.jobTitle,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((member.value.jobTitle) = $event)),\n label: _unref(t)('global.jobTitle'),\n name: \"jobTitle\"\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n _createVNode(FormRow, { \"with-three-columns\": true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n modelValue: member.value.apartment,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((member.value.apartment) = $event)),\n label: _unref(t)('global.apartment'),\n rules: [],\n name: \"apartment\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.street,\n \"onUpdate:modelValue\": [\n _cache[6] || (_cache[6] = ($event: any) => ((member.value.street) = $event)),\n handleInput\n ],\n label: _unref(t)('global.street'),\n list: 'address-list',\n name: \"street\",\n type: \"text\",\n onValidated: handleValidation\n }, {\n \"before-input\": _withCtx(() => [\n _createElementVNode(\"datalist\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(addressOptions.value, (address) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n id: address.id,\n key: address.id\n }, _toDisplayString(address.text), 9, _hoisted_4))\n }), 128))\n ])\n ]),\n _: 1\n }, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.city,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((member.value.city) = $event)),\n label: _unref(t)('global.city'),\n name: \"city\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { \"with-three-columns\": true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.zipCode,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = ($event: any) => ((member.value.zipCode) = $event)),\n label: _unref(t)('global.zipCode'),\n rules: [_unref(required), _unref(mustMatchZipCodeFormat)],\n name: \"zipCode\",\n type: \"zip\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.phoneNumber,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = ($event: any) => ((member.value.phoneNumber) = $event)),\n label: _unref(t)('global.phoneNumber'),\n rules: [_unref(required), _unref(mustMatchPhoneNumberFormat)],\n name: \"phoneNumber\",\n type: \"tel\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.phoneExtension,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = ($event: any) => ((member.value.phoneExtension) = $event)),\n label: _unref(t)('global.phoneExtension'),\n rules: [],\n name: \"phoneExtension\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ])\n ]),\n _: 1\n }),\n _createElementVNode(\"button\", _hoisted_6, _toDisplayString(_unref(t)(\"global.save\")), 1)\n ], 40, _hoisted_2)\n ]),\n _: 1\n }, 8, [\"title\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(MembershipCertificate),\n _createElementVNode(\"div\", _hoisted_7, [\n _createVNode(ChangePassword),\n _createVNode(ChangeEmail)\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./Account.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Account.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveDynamicComponent as _resolveDynamicComponent, openBlock as _openBlock, createBlock as _createBlock, createVNode as _createVNode, Suspense as _Suspense, withCtx as _withCtx, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent } from \"vue\"\n\nimport Loader from \"@/components/layout/Loader.vue\";\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Coproperty',\n setup(__props) {\n\r\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterView = _resolveComponent(\"RouterView\")!\n\n return (_openBlock(), _createBlock(_component_RouterView, null, {\n default: _withCtx(({Component}) => [\n Component\n ? (_openBlock(), _createBlock(_Suspense, { key: 0 }, {\n fallback: _withCtx(() => [\n _createVNode(Loader)\n ]),\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_resolveDynamicComponent(Component)))\n ]),\n _: 2\n }, 1024))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }))\n}\n}\n\n})","import script from \"./Coproperty.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Coproperty.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 32 32\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#00ADEE\",\n \"fill-rule\": \"evenodd\",\n d: \"M24.889 3.368V0h-3.556v3.368H10.667V0H7.11v3.368H0V32h32V3.368h-7.111ZM7.11 6.737v3.368h3.556V6.737h10.666v3.368h3.556V6.737h3.555v6.737H3.555V6.737h3.556ZM3.556 16.844v11.79h24.888v-11.79H3.555Z\",\n \"clip-rule\": \"evenodd\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 14 14\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"g\", {\n fill: \"none\",\n stroke: \"currentColor\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n}, [\n /*#__PURE__*/_createElementVNode(\"path\", { d: \"M9.5 1.5H11a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-10a1 1 0 0 1 1-1h1.5\" }),\n /*#__PURE__*/_createElementVNode(\"rect\", {\n width: \"5\",\n height: \"2.5\",\n x: \"4.5\",\n y: \".5\",\n rx: \"1\"\n }),\n /*#__PURE__*/_createElementVNode(\"path\", { d: \"M4.5 5.5h5M4.5 8h5m-5 2.5h5\" })\n], -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 20 20\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#1C1B1F\",\n d: \"M3.85 15.1c.85-.65 1.8-1.163 2.85-1.538A9.744 9.744 0 0 1 10 13c1.15 0 2.25.187 3.3.562 1.05.375 2 .888 2.85 1.538a7.737 7.737 0 0 0 1.363-2.325A7.845 7.845 0 0 0 18 10c0-2.217-.779-4.104-2.337-5.663C14.104 2.779 12.217 2 10 2s-4.104.779-5.662 2.337C2.779 5.896 2 7.783 2 10c0 .983.163 1.908.488 2.775A7.72 7.72 0 0 0 3.85 15.1ZM10 11c-.983 0-1.813-.337-2.488-1.012S6.5 8.483 6.5 7.5c0-.983.337-1.813 1.012-2.488S9.017 4 10 4c.983 0 1.813.337 2.488 1.012S13.5 6.517 13.5 7.5c0 .983-.337 1.813-1.012 2.488S10.983 11 10 11Zm0 9a9.733 9.733 0 0 1-3.9-.788 10.092 10.092 0 0 1-3.175-2.137c-.9-.9-1.612-1.958-2.137-3.175A9.732 9.732 0 0 1 0 10a9.74 9.74 0 0 1 .788-3.9 10.092 10.092 0 0 1 2.137-3.175c.9-.9 1.958-1.613 3.175-2.138A9.743 9.743 0 0 1 10 0a9.74 9.74 0 0 1 3.9.787 10.105 10.105 0 0 1 3.175 2.138c.9.9 1.612 1.958 2.137 3.175A9.733 9.733 0 0 1 20 10a9.733 9.733 0 0 1-.788 3.9 10.092 10.092 0 0 1-2.137 3.175c-.9.9-1.958 1.612-3.175 2.137A9.733 9.733 0 0 1 10 20Zm0-2c.883 0 1.717-.129 2.5-.387.783-.259 1.5-.63 2.15-1.113a7.542 7.542 0 0 0-2.15-1.113A7.942 7.942 0 0 0 10 15c-.883 0-1.717.129-2.5.387-.783.259-1.5.63-2.15 1.113.65.483 1.367.854 2.15 1.113A7.942 7.942 0 0 0 10 18Zm0-9c.433 0 .792-.142 1.075-.425.283-.283.425-.642.425-1.075 0-.433-.142-.792-.425-1.075C10.792 6.142 10.433 6 10 6c-.433 0-.792.142-1.075.425-.283.283-.425.642-.425 1.075 0 .433.142.792.425 1.075C9.208 8.858 9.567 9 10 9Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 19 19\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#000\",\n d: \"M2.001 16.259h1.4l8.63-8.63-1.4-1.4L2 14.857v1.4ZM16.31 6.179l-4.253-4.203 1.401-1.4A1.921 1.921 0 0 1 14.87 0c.559 0 1.03.192 1.414.575l1.4 1.401c.384.384.584.846.6 1.388a1.808 1.808 0 0 1-.55 1.389L16.31 6.178Zm-1.451 1.475L4.252 18.26H0v-4.253L10.606 3.402l4.252 4.252Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 16 12\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#1C1B1F\",\n d: \"M1.5 12c-.417 0-.77-.146-1.062-.438A1.444 1.444 0 0 1 0 10.5v-9C0 1.083.146.73.438.438A1.444 1.444 0 0 1 1.5 0h13c.417 0 .77.146 1.062.438.292.291.438.645.438 1.062v9c0 .417-.146.77-.438 1.062A1.444 1.444 0 0 1 14.5 12h-13ZM8 7 1.5 3.271V10.5h13V3.271L8 7Zm0-1.771L14.5 1.5h-13L8 5.229ZM1.5 3.271V1.5v9-7.229Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 17 19\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#000\",\n d: \"M3.048 18.286a1.956 1.956 0 0 1-1.435-.597 1.956 1.956 0 0 1-.597-1.435V3.048H0V1.016h5.08V0h6.095v1.016h5.079v2.032h-1.016v13.206c0 .559-.199 1.037-.597 1.435a1.956 1.956 0 0 1-1.435.597H3.048ZM13.206 3.048H3.048v13.206h10.158V3.048ZM5.08 14.222h2.032V5.08H5.08v9.143Zm4.064 0h2.032V5.08H9.143v9.143Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n version: \"1.0\",\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"682.667\",\n height: \"682.667\",\n viewBox: \"0 0 512 512\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M192.3 22.1c-4 1.2-124 115.4-126.7 120.6-2.1 4.2-1.8 10.8.8 14.7 2.1 3.3 119.2 115.2 123.1 117.8 4 2.6 12.9 2.1 17.2-1 6.2-4.4 6.3-5.2 6.3-45.6V192h81.3c87.8 0 92 .2 108 5.4 38.2 12.6 67.2 44.9 75.3 83.9.8 4 1.8 12.1 2.3 18 .8 11.5 1.8 13.9 7.5 18.1 2 1.6 4.2 2.1 8.6 2.1 6.3 0 9.5-1.6 13.4-6.9 2-2.6 2.1-4 2.1-30.4 0-18.3-.5-30.2-1.3-35.2-6.4-36.6-21.9-66.7-47.2-92-13.5-13.4-25.9-22.3-43.5-30.9-14.7-7.3-23.9-10.6-40.2-14.3-9.5-2.1-11.9-2.2-87.8-2.7l-78-.6-.5-37.7c-.5-36.3-.6-37.8-2.6-40.5-4.1-5.4-11.8-8.1-18.1-6.2z\" }, null, -1)\nconst _hoisted_3 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M9.5 193.4c-4.2 1.8-8.3 6.9-9.1 11.2-1.2 6.5.3 54.3 2 63.3C9.1 303.4 24.2 332.2 49 357c22.7 22.6 50.7 37.8 83.5 45.1 9.8 2.2 11.8 2.3 88 2.8l78 .6.5 37.5c.4 27.3.8 38.1 1.7 39.7 1.9 3.2 6.1 6.2 10.4 7.3 8.5 2.3 6.8 3.7 72.6-59.1 36.1-34.5 61.6-59.5 62.7-61.6 2.1-4.2 1.8-10.8-.8-14.8-2.1-3.3-119.2-115.2-123.1-117.7-4-2.6-12.9-2.1-17.2 1-6.2 4.4-6.3 5.2-6.3 45.6V320h-81.2c-48.5 0-84.1-.4-88.3-1-43-6.2-78.7-35.8-92-76.5-3.1-9.5-4.3-16.3-5.4-29.9-.8-11.4-1.9-13.8-7.3-17.9-3.3-2.5-11.3-3.2-15.3-1.3z\" }, null, -1)\nconst _hoisted_4 = [\n _hoisted_2,\n _hoisted_3\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_4]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 576 512\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M288 80c-65.2 0-118.8 29.6-159.9 67.7C89.6 183.5 63 226 49.4 256 63 286 89.6 328.5 128 364.3c41.2 38.1 94.8 67.7 160 67.7s118.8-29.6 159.9-67.7C486.4 328.5 513 286 526.6 256c-13.6-30-40.2-72.5-78.6-108.3C406.8 109.6 353.2 80 288 80zM95.4 112.6C142.5 68.8 207.2 32 288 32s145.5 36.8 192.6 80.6c46.8 43.5 78.1 95.4 93 131.1 3.3 7.9 3.3 16.7 0 24.6-14.9 35.7-46.2 87.7-93 131.1C433.5 443.2 368.8 480 288 480s-145.5-36.8-192.6-80.6C48.6 356 17.3 304 2.5 268.3c-3.3-7.9-3.3-16.7 0-24.6C17.3 208 48.6 156 95.4 112.6zM288 336c44.2 0 80-35.8 80-80s-35.8-80-80-80h-2c1.3 5.1 2 10.5 2 16 0 35.3-28.7 64-64 64-5.5 0-10.9-.7-16-2v2c0 44.2 35.8 80 80 80zm0-208a128 128 0 1 1 0 256 128 128 0 1 1 0-256z\" }, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 512 512\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"m47.6 300.4 180.7 168.7c7.5 7 17.4 10.9 27.7 10.9s20.2-3.9 27.7-10.9l180.7-168.7c30.4-28.3 47.6-68 47.6-109.5v-5.8c0-69.9-50.5-129.5-119.4-141-45.6-7.6-92 7.3-124.6 39.9l-12 12-12-12c-32.6-32.6-79-47.5-124.6-39.9C50.5 55.6 0 115.2 0 185.1v5.8c0 41.5 17.2 81.2 47.6 109.5z\" }, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 512 512\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"m225.8 468.2-2.5-2.3L48.1 303.2C17.4 274.7 0 234.7 0 192.8v-3.3c0-70.4 50-130.8 119.2-144 39.4-7.6 79.7 1.5 111.8 24.1 9 6.4 17.4 13.8 25 22.3 4.2-4.8 8.7-9.2 13.5-13.3 3.7-3.2 7.5-6.2 11.5-9 32.1-22.6 72.4-31.7 111.8-24.2C462 58.6 512 119.1 512 189.5v3.3c0 41.9-17.4 81.9-48.1 110.4L288.7 465.9l-2.5 2.3c-8.2 7.6-19 11.9-30.2 11.9s-22-4.2-30.2-11.9zM239.1 145c-.4-.3-.7-.7-1-1.1l-17.8-20-.1-.1c-23.1-25.9-58-37.7-92-31.2-46.6 8.9-80.2 49.5-80.2 96.9v3.3c0 28.5 11.9 55.8 32.8 75.2L256 430.7 431.2 268a102.7 102.7 0 0 0 32.8-75.2v-3.3c0-47.3-33.6-88-80.1-96.9-34-6.5-69 5.4-92 31.2l-.1.1-.1.1-17.8 20c-.3.4-.7.7-1 1.1-4.5 4.5-10.6 7-16.9 7s-12.4-2.5-16.9-7z\" }, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 15 14\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#5C5C5C\",\n d: \"M2.322 14c-.416 0-.77-.146-1.062-.438A1.444 1.444 0 0 1 .822 12.5v-11c0-.417.146-.77.438-1.062A1.444 1.444 0 0 1 2.322 0h5.5v1.5h-5.5v11h11V7h1.5v5.5c0 .417-.146.77-.438 1.062a1.444 1.444 0 0 1-1.062.438h-11Zm3.562-4L4.822 8.938 12.26 1.5H9.822V0h5v5h-1.5V2.562L5.884 10Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, resolveComponent as _resolveComponent, resolveDirective as _resolveDirective, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, withDirectives as _withDirectives, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"tag\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"vue3-easy-data-table__actions\"\n}\nconst _hoisted_3 = [\"href\"]\nconst _hoisted_4 = {\n key: 2,\n class: \"vue3-easy-data-table__action\",\n type: \"button\"\n}\nconst _hoisted_5 = [\"onClick\"]\nconst _hoisted_6 = [\"href\"]\nconst _hoisted_7 = [\"onClick\"]\nconst _hoisted_8 = [\"onClick\"]\n\nimport type {FilterOption, Header, Item} from \"vue3-easy-data-table\"\nimport {useI18n} from \"vue3-i18n\"\nimport IconCalendar from \"@/assets/icons/icon__calendar.svg\"\nimport IconClipboard from \"@/assets/icons/icon__clipboard.svg\"\nimport IconParticipants from \"@/assets/icons/icon__person.svg\"\nimport IconEdit from \"@/assets/icons/icon__edit.svg\"\nimport IconMail from \"@/assets/icons/icon__mail.svg\"\nimport IconDelete from \"@/assets/icons/icon__delete.svg\"\nimport IconDownload from \"@/assets/icons/icon__download.svg\"\nimport IconTransfer from \"@/assets/icons/icon__transfer.svg\"\nimport IconView from \"@/assets/icons/icon__view.svg\"\nimport IconHeartFull from \"@/assets/icons/icon__heart--full.svg\"\nimport IconHeartEmpty from \"@/assets/icons/icon__heart--empty.svg\"\nimport IconExternal from \"@/assets/icons/icon__external.svg\"\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'DataTable',\n props: {\n headers: {},\n items: {},\n filterOptions: {},\n isLoading: { type: Boolean },\n searchValue: {},\n isSoloItem: { type: Boolean }\n },\n emits: [\"delete\", \"resendUserInvite\", \"edit\", \"addFavorite\", \"removeFavorite\"],\n setup(__props: any, { emit: __emit }) {\n\nconst {t} = useI18n()\n\n// eslint-disable-next-line\n\n\n// eslint-disable-next-line\nconst emit = __emit\n\nfunction handleDelete(item: any) {\n emit(\"delete\", item)\n}\n\nfunction handleEdit(id: string) {\n emit(\"edit\", id)\n}\n\nfunction resendUserInvite(userId: string) {\n emit(\"resendUserInvite\", userId)\n}\n\nfunction handleAddFavorite(id: string) {\n emit(\"addFavorite\", id)\n}\n\nfunction handleRemoveFavorite(id: string) {\n emit(\"removeFavorite\", id)\n}\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _component_EasyDataTable = _resolveComponent(\"EasyDataTable\")!\n const _directive_tippy = _resolveDirective(\"tippy\")!\n\n return (_openBlock(), _createBlock(_component_EasyDataTable, {\n \"empty-message\": _unref(t)('global.table.noData'),\n \"filter-options\": _ctx.filterOptions,\n headers: _ctx.headers,\n \"hide-footer\": _ctx.isSoloItem,\n \"hide-rows-per-page\": true,\n items: _ctx.items,\n loading: _ctx.isLoading,\n \"rows-of-page-separator-message\": _unref(t)('global.table.of'),\n \"rows-per-page\": _ctx.isSoloItem ? 1 : 10,\n \"search-value\": _ctx.searchValue,\n \"table-min-height\": 0,\n alternating: \"\",\n \"buttons-pagination\": \"\",\n \"header-item-class-name\": \"vue3-easy-data-table__header-item\",\n \"theme-color\": \"#00ADEE\"\n }, {\n \"item-status\": _withCtx((item) => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"p\", null, _toDisplayString(item.status), 1)\n ])\n ]),\n \"item-actions\": _withCtx((item) => [\n (item && item.actions)\n ? (_openBlock(), _createElementBlock(\"p\", _hoisted_2, [\n (item.actions.view)\n ? _withDirectives((_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n to: item.actions.view,\n class: \"vue3-easy-data-table__action\"\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(IconView), { class: \"icon icon--black\" })\n ]),\n _: 2\n }, 1032, [\"to\"])), [\n [_directive_tippy, _unref(t)(`global.actions.view`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.download)\n ? _withDirectives((_openBlock(), _createElementBlock(\"a\", {\n key: 1,\n href: item.actions.download,\n class: \"vue3-easy-data-table__action\",\n target: \"_blank\"\n }, [\n _createVNode(_unref(IconDownload), { class: \"icon icon--black\" })\n ], 8, _hoisted_3)), [\n [_directive_tippy, _unref(t)(`global.actions.download`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.favorite && item.id)\n ? _withDirectives((_openBlock(), _createElementBlock(\"button\", _hoisted_4, [\n (item.actions.favorite.isInIt)\n ? (_openBlock(), _createBlock(_unref(IconHeartFull), {\n key: 0,\n class: \"icon icon--black\",\n onClick: ($event: any) => (handleRemoveFavorite(item.id))\n }, null, 8, [\"onClick\"]))\n : (_openBlock(), _createBlock(_unref(IconHeartEmpty), {\n key: 1,\n class: \"icon icon--black\",\n onClick: ($event: any) => (handleAddFavorite(item.id))\n }, null, 8, [\"onClick\"]))\n ])), [\n [_directive_tippy, item.actions.favorite.isInIt ? _unref(t)('global.actions.removeFavorite') : _unref(t)('global.actions.addFavorite')]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.update)\n ? _withDirectives((_openBlock(), _createBlock(_component_router_link, {\n key: 3,\n to: item.actions.update,\n class: \"vue3-easy-data-table__action\"\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(IconEdit), { class: \"icon icon--black\" })\n ]),\n _: 2\n }, 1032, [\"to\"])), [\n [_directive_tippy, _unref(t)(`global.actions.update`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.recurrences)\n ? _withDirectives((_openBlock(), _createBlock(_component_router_link, {\n key: 4,\n to: item.actions.recurrences,\n class: \"vue3-easy-data-table__action\"\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(IconCalendar), { class: \"icon icon--black\" })\n ]),\n _: 2\n }, 1032, [\"to\"])), [\n [_directive_tippy, _unref(t)(`global.actions.recurrences`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.participants)\n ? _withDirectives((_openBlock(), _createBlock(_component_router_link, {\n key: 5,\n to: item.actions.participants,\n class: \"vue3-easy-data-table__action\"\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(IconParticipants), { class: \"icon icon--black\" })\n ]),\n _: 2\n }, 1032, [\"to\"])), [\n [_directive_tippy, _unref(t)(`global.actions.participants`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.registrations)\n ? _withDirectives((_openBlock(), _createBlock(_component_router_link, {\n key: 6,\n to: item.actions.registrations,\n class: \"vue3-easy-data-table__action\"\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(IconClipboard), { class: \"icon icon--black\" })\n ]),\n _: 2\n }, 1032, [\"to\"])), [\n [_directive_tippy, _unref(t)(`global.actions.registrations`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.edit && item.id)\n ? _withDirectives((_openBlock(), _createElementBlock(\"button\", {\n key: 7,\n class: \"vue3-easy-data-table__action\",\n type: \"button\",\n onClick: ($event: any) => (handleEdit(item.id))\n }, [\n _createVNode(_unref(IconEdit), { class: \"icon icon--black\" })\n ], 8, _hoisted_5)), [\n [_directive_tippy, _unref(t)(`global.actions.update`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.transfer && item.id)\n ? _withDirectives((_openBlock(), _createBlock(_component_router_link, {\n key: 8,\n to: item.actions.transfer,\n class: \"vue3-easy-data-table__action\"\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(IconTransfer), { class: \"icon icon--black\" })\n ]),\n _: 2\n }, 1032, [\"to\"])), [\n [_directive_tippy, _unref(t)(`global.actions.transfer`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.bill)\n ? _withDirectives((_openBlock(), _createElementBlock(\"a\", {\n key: 9,\n href: item.actions.bill,\n class: \"vue3-easy-data-table__action\",\n target: \"blank\"\n }, [\n _createVNode(_unref(IconExternal), { class: \"icon icon--black\" })\n ], 8, _hoisted_6)), [\n [_directive_tippy, _unref(t)(`global.actions.bill`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.resendUserInvite && item.userId)\n ? _withDirectives((_openBlock(), _createElementBlock(\"button\", {\n key: 10,\n class: \"vue3-easy-data-table__action\",\n type: \"button\",\n onClick: ($event: any) => (resendUserInvite(item.userId))\n }, [\n _createVNode(_unref(IconMail), { class: \"icon icon--black\" })\n ], 8, _hoisted_7)), [\n [_directive_tippy, _unref(t)(`global.actions.resendUserInvite`)]\n ])\n : _createCommentVNode(\"\", true),\n (item.actions.delete && item.id)\n ? _withDirectives((_openBlock(), _createElementBlock(\"button\", {\n key: 11,\n class: \"vue3-easy-data-table__action red-bg\",\n type: \"button\",\n onClick: ($event: any) => (handleDelete(item))\n }, [\n _createVNode(_unref(IconDelete), { class: \"icon icon--black\" })\n ], 8, _hoisted_8)), [\n [_directive_tippy, _unref(t)(`global.actions.delete`)]\n ])\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"empty-message\", \"filter-options\", \"headers\", \"hide-footer\", \"items\", \"loading\", \"rows-of-page-separator-message\", \"rows-per-page\", \"search-value\"]))\n}\n}\n\n})","\n\n\n","import script from \"./DataTable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./DataTable.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport DataTable from \"@/components/layout/DataTable.vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {computed} from \"vue\";\nimport {DocumentCategoryHelper, Guid} from \"@/types\";\nimport {DocumentPolicyHelper} from \"@/types/documentPolicy\";\nimport {useDocumentService, useFavoriteDocumentService} from \"@/inversify.config\";\nimport {Document} from \"@/types/entities/document\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'DocumentsTable',\n props: {\n documents: {},\n searchValue: {},\n isLoading: { type: Boolean }\n },\n emits: [\"documentsUpdated\"],\n setup(__props: any, { emit: __emit }) {\n\nconst emit = __emit;\n\n// eslint-disable-next-line no-undef\nconst props = __props\n\n// eslint-disable-next-line\nconst {t, getLocale} = useI18n();\n\nconst documentService = useDocumentService();\nconst favoriteDocumentService = useFavoriteDocumentService();\n\nconst documentPolicies = computed(() => DocumentPolicyHelper.policiesValueAndNames());\n\nconst documents = computed(() => {\n if (props.documents.length == 0) {\n return [];\n }\n\n return props.documents\n .map((x: Document) => {\n const category = DocumentCategoryHelper.categoriesNameAndLabel().find((c) => c.name == x.category);\n return {\n id: x.id,\n policy: documentPolicies.value.filter((y) => y.name == x.policy)[0]?.label,\n category: category != null ? category.label : \"\",\n name: x.name != null ? x.name.extractFileName() : \"\",\n actions: {\n download: x.documentPath,\n favorite: {\n isInIt: x.favoriteDocumentId != null\n },\n update: x.canEditOrDeleteDocument\n ? {name: \"coproperty.children.editDocument\", params: {id: x.id},}\n : null,\n delete: x.canEditOrDeleteDocument\n },\n };\n }) as Document[];\n});\n\nasync function deleteDocument(document: any) {\n if (document?.id == null || !Guid.isValid(document.id ?? \"\"))\n return;\n\n let confirmDelete = confirm(t(\"document.deleteConfirmation\"));\n\n if (!confirmDelete) return;\n\n let result: SucceededOrNotResponse = await documentService.deleteDocument(document.id);\n if (result?.succeeded) {\n notifySuccess(t(\"document.deleteSuccess\"));\n emit(\"documentsUpdated\")\n } else {\n notifyError(t(\"document.deleteError\"));\n }\n}\n\nasync function addToFavorite(documentId: string) {\n if (!Guid.isValid(documentId ?? \"\") || documentId == null)\n return;\n\n let result: SucceededOrNotResponse = await favoriteDocumentService.addToFavorite(documentId);\n if (result?.succeeded) {\n notifySuccess(t(\"document.addFavoriteSuccess\"));\n emit(\"documentsUpdated\")\n } else {\n notifyError(t(\"document.addFavoriteError\"));\n }\n}\n\nasync function removeFromFavorite(documentId: string) {\n if (!Guid.isValid(documentId ?? \"\") || documentId == null) return;\n\n let favDocumentId = props.documents.find((x: Document) => x.id?.toString() == documentId)?.favoriteDocumentId;\n let result: SucceededOrNotResponse = await favoriteDocumentService.removeFromFavorite(favDocumentId ?? \"\");\n if (result?.succeeded) {\n notifySuccess(t(\"document.removeFavoriteSuccess\"));\n emit(\"documentsUpdated\")\n } else {\n notifyError(t(\"document.removeFavoriteError\"));\n }\n}\n\nconst documentHeader = [\n {\n text: t(\"global.title\"),\n value: \"name\",\n sortable: true,\n width: 200,\n },\n {\n text: t(\"document.policy\"),\n value: \"policy\",\n sortable: true,\n width: 150,\n },\n {\n text: t(\"document.category\"),\n value: \"category\",\n sortable: true,\n width: 150,\n },\n {\n text: t(\"global.table.actions\"),\n value: \"actions\",\n width: 150,\n }\n]\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(DataTable, {\n headers: documentHeader,\n \"is-loading\": _ctx.isLoading,\n items: documents.value,\n \"search-value\": _ctx.searchValue,\n onDelete: deleteDocument,\n onAddFavorite: addToFavorite,\n onRemoveFavorite: removeFromFavorite\n }, null, 8, [\"is-loading\", \"items\", \"search-value\"]))\n}\n}\n\n})","\n\n","import script from \"./DocumentsTable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./DocumentsTable.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid\" }\nconst _hoisted_2 = { class: \"util--screen-reader\" }\nconst _hoisted_3 = { class: \"content-grid content-grid--triple content-grid--triple-small-right\" }\n\nimport Card from '@/components/layout/Card.vue';\nimport BtnLink from '@/components/layout/BtnLink.vue';\nimport {DocumentCategoryHelper} from \"@/types\";\nimport {useI18n} from \"vue3-i18n\";\nimport {computed, onMounted, ref} from \"vue\";\nimport DocumentsTable from '@/components/tables/DocumentsTable.vue';\nimport {useDocumentService} from \"@/inversify.config\";\nimport {Document} from \"@/types/entities/document\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'CopropertyIndex',\n setup(__props) {\n\nconst {t} = useI18n()\n\nconst documentService = useDocumentService();\n\nconst recentDocuments = ref([]);\nconst favoriteDocuments = ref([]);\nconst documentsAreLoading = ref(false)\n\nconst documentCategoryLabelsAndSlugs = computed(() =>\n DocumentCategoryHelper.categoriesLabelAndSlug().sort((a, b) => a.label > b.label ? 1 : -1))\n\nonMounted(async () => {\n await loadAllDocuments()\n})\n\nasync function loadAllDocuments() {\n documentsAreLoading.value = true;\n recentDocuments.value = [];\n favoriteDocuments.value = [];\n\n let documents = await documentService.getAllDocuments();\n if (documents && documents.length > 0) {\n recentDocuments.value = documents\n .sort((a: any, b: any) => Date.parse(b.creationDate) - Date.parse(a.creationDate))\n favoriteDocuments.value = documents.filter((x: Document) => x.favoriteDocumentId != null)\n }\n documentsAreLoading.value = false;\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"h1\", _hoisted_2, _toDisplayString(_unref(t)(\"routes.coproperty.name\")), 1),\n _createVNode(Card, {\n title: _unref(t)('global.quickLinks'),\n class: \"card--row-content\"\n }, {\n default: _withCtx(() => [\n _createVNode(BtnLink, {\n name: _unref(t)('routes.coproperty.children.addDocument.name'),\n path: { 'name': 'coproperty.children.addDocument' }\n }, null, 8, [\"name\", \"path\"])\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(Card, {\n title: _unref(t)('coproperty.recentDocs')\n }, {\n default: _withCtx(() => [\n _createVNode(DocumentsTable, {\n documents: recentDocuments.value,\n \"is-loading\": documentsAreLoading.value,\n onDocumentsUpdated: loadAllDocuments\n }, null, 8, [\"documents\", \"is-loading\"])\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(Card, {\n title: _unref(t)('coproperty.allDocs')\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(documentCategoryLabelsAndSlugs.value, (documentCategory) => {\n return (_openBlock(), _createBlock(BtnLink, {\n key: documentCategory,\n name: documentCategory.label,\n path: { 'name': 'coproperty.children.documentCategory', 'params': { 'documentCategorySlug': documentCategory.slug } }\n }, null, 8, [\"name\", \"path\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(Card, {\n title: _unref(t)('coproperty.favoriteDocs')\n }, {\n default: _withCtx(() => [\n _createVNode(DocumentsTable, {\n documents: favoriteDocuments.value,\n \"is-loading\": documentsAreLoading.value,\n onDocumentsUpdated: loadAllDocuments\n }, null, 8, [\"documents\", \"is-loading\"])\n ]),\n _: 1\n }, 8, [\"title\"])\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./CopropertyIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./CopropertyIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveDynamicComponent as _resolveDynamicComponent, openBlock as _openBlock, createBlock as _createBlock, createVNode as _createVNode, Suspense as _Suspense, withCtx as _withCtx, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent } from \"vue\"\n\nimport Loader from \"@/components/layout/Loader.vue\";\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Company',\n setup(__props) {\n\r\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterView = _resolveComponent(\"RouterView\")!\n\n return (_openBlock(), _createBlock(_component_RouterView, null, {\n default: _withCtx(({Component}) => [\n Component\n ? (_openBlock(), _createBlock(_Suspense, { key: 0 }, {\n fallback: _withCtx(() => [\n _createVNode(Loader)\n ]),\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_resolveDynamicComponent(Component)))\n ]),\n _: 2\n }, 1024))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }))\n}\n}\n\n})","import script from \"./Company.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Company.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport \"@/extensions/number.extensions\";\r\nimport DataTable from \"@/components/layout/DataTable.vue\"\r\nimport Card from \"@/components/layout/Card.vue\"\r\nimport { useI18n } from \"vue3-i18n\"\r\nimport { Invoice } from \"@/types/entities/invoice\"\r\nimport { computed } from \"vue\";\r\n\r\n// eslint-disable-next-line\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'InvoiceTable',\n props: {\n invoices: {},\n isLoading: { type: Boolean },\n title: {}\n },\n setup(__props: any) {\n\r\nconst props = __props;\r\n\r\nconst { t } = useI18n()\r\n\r\nconst formattedInvoices = computed(() => {\r\n return [...props.invoices]\r\n .sort((a: Invoice, b: Invoice) => new Date(b.createdAt ?? \"\").valueOf() - new Date(a.createdAt ?? \"\").valueOf())\r\n .map(x => {\r\n return {\r\n description : x.description,\r\n accountingSoftwareNumber: x.accountingSoftwareNumber,\r\n createdAt: x.createdAt,\r\n total: x.total?.toCurrency(),\r\n isPaid: x.total == 0 ? t(\"global.free\") : t(x.isPaid ? 'global.yes' : 'global.no'),\r\n actions: {\r\n bill : x.accountingSoftwareUrl,\r\n }\r\n };\r\n })\r\n})\r\n\r\nconst invoiceHeader = [\r\n {\r\n text: t(\"invoice.accountingSoftwareNumber\"),\r\n value: \"accountingSoftwareNumber\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"invoice.description\"),\r\n value: \"description\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"invoice.creationDate\"),\r\n value: \"createdAt\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"invoice.isPaid\"),\r\n value: \"isPaid\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"invoice.total\"),\r\n value: \"total\",\r\n sortable: true,\r\n width: 100,\r\n },\r\n {\r\n text: t(\"global.table.actions\"),\r\n value: \"actions\",\r\n sortable: false,\r\n width: 75\r\n }\r\n]\r\n\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Card, {\n title: _ctx.title ?? _unref(t)('global.invoices')\n }, {\n default: _withCtx(() => [\n _createVNode(DataTable, {\n headers: invoiceHeader,\n items: formattedInvoices.value,\n \"is-loading\": _ctx.isLoading\n }, null, 8, [\"items\", \"is-loading\"])\n ]),\n _: 1\n }, 8, [\"title\"]))\n}\n}\n\n})","\r\n","import script from \"./InvoiceTable.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./InvoiceTable.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","export enum ProductCategory {\r\n Book = \"book\",\r\n Activity = \"activity\",\r\n MembershipPlan = \"membershipPlan\"\r\n}","import {TranslatableString} from \"@/types\";\r\nimport i18n from \"@/i18n\";\r\n\r\nexport async function getFileFromUrl(url: string, name: string, defaultType = 'image/jpeg'): Promise {\r\n const response = await fetch(url);\r\n const data = await response.blob();\r\n return new File([data], name, {\r\n type: data.type || defaultType,\r\n });\r\n}\r\n\r\nexport function getValueForLocale(translatableString?: TranslatableString): string {\r\n if (i18n.getLocale() === \"fr\")\r\n return translatableString?.fr ?? \"\";\r\n return translatableString?.en ?? \"\";\r\n}","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"util--screen-reader\" }\nconst _hoisted_2 = { class: \"content-grid\" }\n\nimport {useI18n} from \"vue3-i18n\"\r\nimport {onMounted, ref} from \"vue\"\r\nimport {useInvoiceService} from \"@/inversify.config\"\r\nimport InvoiceTable from \"@/components/tables/InvoiceTable.vue\";\r\nimport {Invoice} from \"@/types/entities\";\r\nimport {ProductCategory} from \"@/types/productCategory\";\r\nimport {getValueForLocale} from \"@/helpers\";\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Invoices',\n setup(__props) {\n\r\nconst {t} = useI18n()\r\n\r\nconst invoiceService = useInvoiceService()\r\n\r\nconst invoices = ref([])\r\nconst invoicesAreLoading = ref(false)\r\n\r\nonMounted(async () => {\r\n await loadInvoices()\r\n})\r\n\r\nasync function loadInvoices() {\r\n invoicesAreLoading.value = true\r\n\r\n let myInvoices = await invoiceService.getMyInvoices()\r\n if (myInvoices) {\r\n myInvoices.forEach(invoice => {\r\n let title = invoice.productCategory == ProductCategory.MembershipPlan\r\n ? invoice.createdAt\r\n : getValueForLocale(invoice.productName)\r\n invoice.description = `${t(`products.${invoice.productCategory}`)} : ${title}`\r\n })\r\n invoices.value = myInvoices\r\n }\r\n invoicesAreLoading.value = false\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"h1\", _hoisted_1, _toDisplayString(_unref(t)(\"routes.invoices.name\")), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n (invoices.value)\n ? (_openBlock(), _createBlock(InvoiceTable, {\n key: 0,\n invoices: invoices.value,\n \"is-loading\": invoicesAreLoading.value,\n title: _unref(t)('routes.invoices.name')\n }, null, 8, [\"invoices\", \"is-loading\", \"title\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}\n}\n\n})","\r\n\r\n\r\n","import script from \"./Invoices.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Invoices.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport DataTable from \"@/components/layout/DataTable.vue\";\r\nimport Card from \"@/components/layout/Card.vue\";\r\nimport {useI18n} from \"vue3-i18n\";\r\nimport {Member} from \"@/types/entities/member\";\r\nimport {computed, ref} from \"vue\";\r\nimport {useMemberStore} from \"@/stores/memberStore\";\r\nimport {Guid, Role} from \"@/types\";\r\nimport {useMemberService, useUserService} from \"@/inversify.config\";\r\nimport {notifyError, notifySuccess} from \"@/notify\";\r\nimport {getAuthenticatedMemberOrganizationRoute} from \"@/router/helpers\";\r\n\r\n// eslint-disable-next-line\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MemberTable',\n props: {\n members: {},\n organizationId: {},\n cardLinkPath: {},\n isLoading: { type: Boolean },\n hideCardLink: { type: Boolean }\n },\n setup(__props: any) {\n\r\nconst props = __props\r\n\r\nconst {t} = useI18n()\r\nconst memberStore = useMemberStore()\r\nconst userService = useUserService()\r\nconst memberService = useMemberService()\r\n\r\nconst members = ref(props.members);\r\n\r\nconst canAddEditOrDeleteMember = memberStore.hasOneOfTheseRoles([Role.Admin, Role.RegularSyndicateAdmin, Role.RegularSyndicateManager])\r\nconst cardLinkPath = canAddEditOrDeleteMember && !props.hideCardLink ? props.cardLinkPath : undefined\r\nconst cardLinkText = canAddEditOrDeleteMember && !props.hideCardLink ? t('organization.addMember') : undefined\r\n\r\nconst tableMembers = computed(() => {\r\n return members.value.map((member: any) => {\r\n let item = {...member}\r\n item.roles = member.roles ? member.roles.map((x: any) => t(`user.roles.${x}`)).join(', ') : undefined\r\n if (canAddEditOrDeleteMember) {\r\n item.actions = {\r\n resendUserInvite: true,\r\n update: {\r\n name: memberStore.hasRole(Role.Admin)\r\n ? 'admin.children.organizations.editMember'\r\n : `${getAuthenticatedMemberOrganizationRoute()}.children.editMember`,\r\n params: {organizationId: member.organizationId, memberId: member.id}\r\n },\r\n delete: member.email != memberStore.getMember.email\r\n }\r\n }\r\n return item;\r\n })\r\n})\r\n\r\nasync function resendUserInvite(userId: string) {\r\n let response = await userService.resendInvite(userId)\r\n\r\n if (response.succeeded) {\r\n notifySuccess(t('user.inviteSuccessfullySent'))\r\n } else {\r\n let errorMessages = response.getErrorMessages('user', 'user.sendingInviteFailed')\r\n notifyError(errorMessages[0])\r\n }\r\n}\r\n\r\nasync function deleteMember(member: any) {\r\n if (member?.id == null || !Guid.isValid(member.id ?? \"\"))\r\n return\r\n\r\n let confirmDelete = confirm(t(\"validation.member.delete.confirmation\"));\r\n if (!confirmDelete)\r\n return;\r\n\r\n let response = await memberService.deleteMember(member.id, props.organizationId)\r\n if (response.succeeded) {\r\n members.value = members.value.filter(x => x.id !== member.id)\r\n notifySuccess(t('validation.member.delete.success'))\r\n } else {\r\n let errorMessages = response.getErrorMessages('validation.member.delete',\r\n 'validation.member.delete.errorOccured')\r\n notifyError(errorMessages[0])\r\n }\r\n}\r\n\r\nlet memberHeader = [\r\n {\r\n text: t(\"global.firstName\"),\r\n value: \"firstName\",\r\n sortable: true,\r\n width: 125,\r\n },\r\n {\r\n text: t(\"global.lastName\"),\r\n value: \"lastName\",\r\n sortable: true,\r\n width: 125,\r\n },\r\n {\r\n text: t(\"global.email\"),\r\n value: \"email\",\r\n sortable: true,\r\n width: 100,\r\n },\r\n {\r\n text: t(\"global.roles\"),\r\n value: \"roles\",\r\n sortable: true,\r\n width: 200,\r\n }\r\n]\r\n\r\nif (canAddEditOrDeleteMember) {\r\n memberHeader.push({\r\n text: t(\"global.table.actions\"),\r\n value: \"actions\",\r\n sortable: false,\r\n width: 125\r\n })\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Card, {\n \"link-path\": _unref(cardLinkPath),\n \"link-text\": _unref(cardLinkText),\n title: tableMembers.value.length > 1 ? _unref(t)('global.members') : _unref(t)('global.member')\n }, {\n default: _withCtx(() => [\n _createVNode(DataTable, {\n headers: _unref(memberHeader),\n \"is-loading\": _ctx.isLoading,\n items: tableMembers.value,\n onDelete: deleteMember,\n onResendUserInvite: resendUserInvite\n }, null, 8, [\"headers\", \"is-loading\", \"items\"])\n ]),\n _: 1\n }, 8, [\"link-path\", \"link-text\", \"title\"]))\n}\n}\n\n})","\r\n","import script from \"./MemberTable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MemberTable.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport {computed, ref} from \"vue\";\r\nimport {useI18n} from \"vue3-i18n\";\r\nimport {useMemberStore} from \"@/stores/memberStore\";\r\nimport {Guid, Role} from \"@/types\";\r\nimport {Contact} from \"@/types/entities/contact\";\r\nimport DataTable from \"@/components/layout/DataTable.vue\";\r\nimport Card from \"@/components/layout/Card.vue\";\r\nimport {getAuthenticatedMemberOrganizationRoute} from \"@/router/helpers\";\r\nimport {useContactService} from \"@/inversify.config\";\r\nimport {notifyError, notifySuccess} from \"@/notify\";\r\n\r\n// eslint-disable-next-line\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ContactTable',\n props: {\n contacts: {},\n organizationId: {},\n cardLinkPath: {},\n isLoading: { type: Boolean }\n },\n setup(__props: any) {\n\r\nconst props = __props;\r\n\r\nconst {t} = useI18n()\r\nconst memberStore = useMemberStore()\r\nconst contactService = useContactService()\r\n\r\nconst contacts = ref(props.contacts);\r\n\r\nconst canAddEditOrDeleteContact = memberStore.hasOneOfTheseRoles([Role.Admin, Role.CorporateAdmin])\r\n\r\nconst tableContacts = computed(() => {\r\n return contacts.value.map((x: any) => {\r\n if (canAddEditOrDeleteContact) {\r\n x.actions = {\r\n update: {\r\n name: memberStore.hasRole(Role.Admin)\r\n ? 'admin.children.organizations.editContact'\r\n : `${getAuthenticatedMemberOrganizationRoute()}.children.editContact`,\r\n params: {organizationId: props.organizationId, contactId: x.id}\r\n },\r\n delete: true\r\n }\r\n }\r\n return x;\r\n }) as Contact[];\r\n})\r\n\r\nasync function deleteContact(contact: any) {\r\n if (contact?.id == null || !Guid.isValid(contact.id ?? \"\"))\r\n return;\r\n\r\n let confirmDelete = confirm(t(\"validation.contact.delete.confirmation\"));\r\n if (!confirmDelete)\r\n return;\r\n\r\n let response = await contactService.deleteContact(contact.id, props.organizationId)\r\n if (response.succeeded) {\r\n contacts.value = contacts.value.filter(x => x.id !== contact.id)\r\n notifySuccess(t('validation.contact.delete.success'))\r\n } else {\r\n let errorMessages = response.getErrorMessages('validation.contact.delete',\r\n 'validation.member.contact.errorOccured')\r\n notifyError(errorMessages[0])\r\n }\r\n}\r\n\r\nconst cardLinkPath = canAddEditOrDeleteContact ? props.cardLinkPath : undefined;\r\nconst cardLinkText = canAddEditOrDeleteContact ? t('organization.addContact') : undefined;\r\n\r\nconst contactHeader = [\r\n {\r\n text: t(\"global.firstName\"),\r\n value: \"firstName\",\r\n sortable: true,\r\n width: 125,\r\n },\r\n {\r\n text: t(\"global.lastName\"),\r\n value: \"lastName\",\r\n sortable: true,\r\n width: 125,\r\n },\r\n {\r\n text: t(\"global.email\"),\r\n value: \"email\",\r\n sortable: true,\r\n width: 125,\r\n }\r\n];\r\n\r\nif (canAddEditOrDeleteContact) {\r\n contactHeader.push({\r\n text: t(\"global.table.actions\"),\r\n value: \"actions\",\r\n sortable: false,\r\n width: 75\r\n })\r\n}\r\n\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Card, {\n \"link-path\": _unref(cardLinkPath),\n \"link-text\": _unref(cardLinkText),\n title: _unref(t)('global.contacts')\n }, {\n default: _withCtx(() => [\n _createVNode(DataTable, {\n headers: contactHeader,\n \"is-loading\": _ctx.isLoading,\n items: tableContacts.value,\n onDelete: deleteContact\n }, null, 8, [\"is-loading\", \"items\"])\n ]),\n _: 1\n }, 8, [\"link-path\", \"link-text\", \"title\"]))\n}\n}\n\n})","\r\n","import script from \"./ContactTable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ContactTable.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, unref as _unref, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = { class: \"form__field form-files\" }\nconst _hoisted_2 = [\"name\", \"id\", \"accept\", \"multiple\", \"aria-invalid\", \"aria-describedby\"]\nconst _hoisted_3 = [\"for\"]\nconst _hoisted_4 = {\n key: 0,\n class: \"form__indicator\"\n}\nconst _hoisted_5 = {\n key: 1,\n class: \"form__tooltip\"\n}\nconst _hoisted_6 = {\n key: 2,\n class: \"btn\"\n}\nconst _hoisted_7 = {\n key: 0,\n class: \"form-files__files\"\n}\nconst _hoisted_8 = { class: \"form-files__name\" }\nconst _hoisted_9 = [\"onClick\", \"aria-label\"]\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"span\", { class: \"plus-sign plus-sign--plus plus-sign--minus\" }, null, -1)\nconst _hoisted_11 = [\n _hoisted_10\n]\nconst _hoisted_12 = {\n key: 1,\n class: \"form-files__files\"\n}\nconst _hoisted_13 = { class: \"form-files__name\" }\nconst _hoisted_14 = [\"onClick\", \"aria-label\"]\nconst _hoisted_15 = /*#__PURE__*/_createElementVNode(\"span\", { class: \"plus-sign plus-sign--plus plus-sign--minus\" }, null, -1)\nconst _hoisted_16 = [\n _hoisted_15\n]\nconst _hoisted_17 = [\"id\"]\n\nimport { Status } from \"@/validation\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormFiles',\n props: {\n name: {},\n label: {},\n modelValue: {},\n tooltip: {},\n min: {},\n max: {},\n isMultiple: { type: Boolean },\n possiblesTypes: {},\n defaultSelectedFiles: {},\n canDelete: { type: Boolean }\n },\n emits: [\"update:modelValue\", \"validated\", \"on-default-selected-files-change\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\nconst { t } = useI18n();\n\n// eslint-disable-next-line\nconst props = __props;\n\n// eslint-disable-next-line\n__expose({\n //to call validation in parent.\n validateInput\n});\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nlet minNbFiles = computed(() => props.min != null ? props.min : 0);\nlet maxNbFiles = computed(() => props.max != null ? props.max : -1);\n\nconst defaultSelectedFiles = ref(props.defaultSelectedFiles);\nwatch(defaultSelectedFiles, (newValue) => emit(\"on-default-selected-files-change\", newValue?.length ? newValue[0].toString() : \"\") , { deep: true, immediate: true });\nwatch(props, (newProps) => {\n defaultSelectedFiles.value = newProps.defaultSelectedFiles;\n});\n\nconst status = ref({ valid: true });\nconst files = ref>();\nconst filesInput = ref();\n\nlet btnLabelKey = computed(() => {\n let isReplacing = (files.value && files.value.length > 0) || (defaultSelectedFiles.value && defaultSelectedFiles.value.length > 0);\n let isPlural = maxNbFiles.value > 1 || props.isMultiple || (files.value && files.value.length > 1);\n \n return `global.${isReplacing ? 'replace' : 'add'}File${isPlural ? 's' : ''}`\n})\n\nfunction removeFile(file: File) {\n if (files.value) {\n files.value = files.value.filter((f) => f != file);\n emit(\"update:modelValue\", files.value);\n }\n\n validateInput()\n}\n\nfunction clearSavedFile(index: number) {\n defaultSelectedFiles.value?.splice(index, 1);\n}\n\nconst hasChanged = ref(false)\nfunction handleChange(e: Event) {\n const inputEl = e.target as HTMLInputElement;\n\n hasChanged.value = true;\n\n if (inputEl.files != null && inputEl.files.length > 0) {\n files.value = Array.from(inputEl.files);\n }\n\n validateInput();\n\n emit(\"update:modelValue\", files.value);\n}\n\nasync function validateInput() {\n await updateStatus();\n emit(\"validated\", props.name, status.value);\n}\n\nasync function updateStatus() {\n status.value = {\n valid: true,\n message: \"\"\n }\n\n if (minNbFiles.value > 0 && (files.value == null && props.defaultSelectedFiles == null || (files.value != null && files.value.length < minNbFiles.value))) {\n status.value = {\n valid: false,\n message: t(\"validation.fileMin\", { min: minNbFiles.value, s: minNbFiles.value > 1 ? \"s\" : \"\" })\n }\n\n return\n }\n\n if (maxNbFiles.value > 0 && files.value != null && files.value.length > maxNbFiles.value) {\n status.value = {\n valid: false,\n message: t(\"validation.fileMax\", { max: maxNbFiles.value, s: maxNbFiles.value > 1 ? \"s\" : \"\" })\n }\n\n return\n }\n\n if (props.possiblesTypes != null && props.possiblesTypes.length > 0 && files.value != null) {\n files.value.forEach(file => {\n if (!props.possiblesTypes?.includes(file.type)) {\n files.value = [];\n\n status.value = {\n valid: false,\n message: t(\"validation.fileType\", {type: props.possiblesTypes?.toString().replaceAll(\"image/\", \" .\")})\n }\n }\n })\n }\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"form__fields-container\", { error: !status.value.valid }])\n }, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n ref_key: \"filesInput\",\n ref: filesInput,\n type: \"file\",\n name: _ctx.name,\n id: _ctx.name,\n accept: _ctx.possiblesTypes?.toString(),\n multiple: _ctx.isMultiple,\n onChange: handleChange,\n onBlur: validateInput,\n \"aria-invalid\": !status.value.valid,\n \"aria-describedby\": `error__${_ctx.name}`\n }, null, 40, _hoisted_2),\n _createElementVNode(\"label\", { for: _ctx.name }, [\n _createTextVNode(_toDisplayString(_ctx.label ? _ctx.label : _ctx.name) + \" \", 1),\n (_unref(minNbFiles) > 0)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, \"*\"))\n : _createCommentVNode(\"\", true),\n (_ctx.tooltip)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(_ctx.tooltip), 1))\n : _createCommentVNode(\"\", true),\n (_ctx.isMultiple || files.value?.length != 1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_6, [\n _createTextVNode(_toDisplayString(_unref(t)(_unref(btnLabelKey))) + \" \", 1),\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"plus-sign\", { 'plus-sign--red': !status.value.valid }])\n }, null, 2)\n ]))\n : _createCommentVNode(\"\", true)\n ], 8, _hoisted_3),\n (files.value != null && files.value.length > 0)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_7, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(files.value, (file) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: file.name,\n class: \"form-files__file\"\n }, [\n _createElementVNode(\"p\", _hoisted_8, _toDisplayString(file.name), 1),\n _createElementVNode(\"button\", {\n onClick: ($event: any) => (removeFile(file)),\n class: \"form-files__remove\",\n type: \"button\",\n \"aria-label\": _unref(t)('global.removeFile')\n }, _hoisted_11, 8, _hoisted_9)\n ]))\n }), 128))\n ]))\n : (!hasChanged.value && (defaultSelectedFiles.value && defaultSelectedFiles.value.filter(x => x.toString().length).length > 0))\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_12, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(defaultSelectedFiles.value, (file, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: file.toString(),\n class: \"form-files__file\"\n }, [\n _createElementVNode(\"p\", _hoisted_13, _toDisplayString(file.toString().extractFileName()), 1),\n (_ctx.canDelete)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n onClick: ($event: any) => (clearSavedFile(index)),\n class: \"form-files__remove\",\n type: \"button\",\n \"aria-label\": _unref(t)('global.removeFile')\n }, _hoisted_16, 8, _hoisted_14))\n : _createCommentVNode(\"\", true)\n ]))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (!status.value.valid)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: \"form__error-message\",\n id: `error__${_ctx.name}`\n }, _toDisplayString(status.value.message), 9, _hoisted_17))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})","\n\n\n","import script from \"./FormFiles.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FormFiles.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createTextVNode as _createTextVNode, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = { class: \"form-select-multiple__selection\" }\nconst _hoisted_2 = [\"onClick\"]\nconst _hoisted_3 = {\n key: 0,\n class: \"form-select-multiple__options\"\n}\nconst _hoisted_4 = [\"onClick\"]\nconst _hoisted_5 = [\"for\"]\nconst _hoisted_6 = {\n key: 0,\n class: \"form__indicator\"\n}\nconst _hoisted_7 = [\"id\"]\n\nimport {FormOption} from \"@/types/formOption\";\nimport {Status, validateArray} from '@/validation'\nimport {requiredArray, RuleArray} from '@/validation/rules'\nimport {ref, watch} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormMultiSelect',\n props: {\n name: {},\n modelValue: {},\n label: {},\n rules: {},\n options: {},\n noLabel: { type: Boolean },\n maxItems: {}\n },\n emits: [\"onOptionChange\", \"validated\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\nconst props = __props;\n\n// eslint-disable-next-line\n__expose({\n //to call validation in parent.\n validateInput\n})\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst {t} = useI18n();\nconst status = ref({valid: true});\nconst isRequired = !(props.rules != null && props.rules.length == 0);\nconst selectedOptions = ref(props.modelValue as FormOption[]);\n\nwatch(props, (newProps) => selectedOptions.value = newProps.modelValue)\n\nconst popperOptions: Partial = {\n modifiers: [\n {\n name: \"sameWidth\",\n enabled: true,\n fn: ({state}) => {\n state.styles.popper.width = `${state.rects.reference.width}px`;\n },\n phase: \"beforeWrite\",\n requires: [\"computeStyles\"],\n effect: ({state}) => {\n state.elements.popper.style.width = `${state.elements.reference.clientWidth}px`;\n },\n },\n ],\n}\n\nfunction toggleOption(option: FormOption) {\n let options = selectedOptions.value && selectedOptions.value.find(o => o.name == option.name)\n ? selectedOptions.value.filter(o => o.name != option.name)\n : [...selectedOptions.value, option];\n if (props.maxItems && options.length > props.maxItems)\n return;\n\n selectedOptions.value = options as FormOption[];\n emit(\"onOptionChange\", options);\n\n validateInput();\n}\n\nfunction validateInput() {\n let validationRules = props.rules ? props.rules : [requiredArray]\n status.value = validateArray(selectedOptions.value, validationRules)\n\n emit(\"validated\", props.name, status.value);\n}\n\nreturn (_ctx: any,_cache: any) => {\n const _component_tippy = _resolveComponent(\"tippy\")!\n\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([{ error: !status.value.valid }, \"form__field form-select-multiple\"])\n }, [\n _createVNode(_component_tippy, {\n arrow: false,\n \"popper-options\": popperOptions,\n interactive: \"\",\n \"max-width\": \"100%\",\n offset: \"0\",\n theme: \"custom-form-select\",\n trigger: \"click focus\"\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"p\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(selectedOptions.value, (option) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n key: `fake__${option.name}`,\n class: \"form-select-multiple__selection-option\",\n onClick: ($event: any) => (toggleOption(option))\n }, _toDisplayString(option.label), 9, _hoisted_2))\n }), 128))\n ])\n ]),\n content: _withCtx(() => [\n (_ctx.options)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.options, (option) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: option.name,\n class: _normalizeClass([{ 'selected': selectedOptions.value && selectedOptions.value.find(o => o.name == option.name) }, \"form-select-multiple__option\"]),\n onClick: ($event: any) => (toggleOption(option))\n }, _toDisplayString(option.label), 11, _hoisted_4))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n (!_ctx.noLabel)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: _ctx.name\n }, [\n _createTextVNode(_toDisplayString(_ctx.label ? _ctx.label : _ctx.name) + \" \", 1),\n isRequired\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_6, \"*\"))\n : _createCommentVNode(\"\", true)\n ], 8, _hoisted_5))\n : _createCommentVNode(\"\", true),\n (!status.value.valid)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n id: `error__${_ctx.name}`,\n class: \"form__error-message\"\n }, _toDisplayString(_unref(t)('validation.select')), 9, _hoisted_7))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})","\n\n\n","import script from \"./FormMultiSelect.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./FormMultiSelect.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import i18n from \"@/i18n\";\r\nimport {FormOption} from \"@/types/formOption\";\r\nimport '@/extensions/formOptions.extensions';\r\n\r\nexport enum ActivityArea {\r\n PurchaseSaleAndRental = 'ACHAT, VENTE, LOCATION',\r\n AirConditioning = 'AIR CLIMATISÉ',\r\n Alarm = 'ALARME',\r\n LandscapeDesignAndMaintenance = 'AMÉNAGEMENT PAYSAGER ET ENTRETIEN',\r\n Architect = 'ARCHITECTE',\r\n LandSurveyor = 'ARPENTEUR-GÉOMÈTRE',\r\n Elevator = 'ASCENSEUR',\r\n Paving = 'ASPHALTAGE',\r\n Insurance = 'ASSURANCE',\r\n LawyersNotariesAndLegalServices = 'AVOCAT, NOTAIRE ET SERVICE JURIDIQUE',\r\n Balcony = 'BALCON',\r\n ConcreteAndMasonry = 'BÉTON ET MAÇONNERIE',\r\n ChargingStation = 'BORNE DE RECHARGE',\r\n Noise = 'BRUIT',\r\n Sealing = 'CALFEUTRAGE',\r\n MaintenanceRecordAndReserveFund = \"CARNET D'ENTRETIEN ET FONDS DE PRÉVOYANCE\",\r\n Heating = 'CHAUFFAGE',\r\n Conditioning = 'CLIMATISATION',\r\n AccountingAndFinance = 'COMPTABILITÉ ET FINANCE',\r\n ConciergeServices = 'CONCIERGERIE',\r\n RebuildingCost = 'COÛT DE RECONSTRUCTION',\r\n Lighting = 'ÉCLAIRAGE',\r\n Edition = 'EDITION',\r\n Electricity = 'ELECTRICITÉ',\r\n VirtualMeeting = 'RÉUNION VIRTUELLE',\r\n GeneralContractor = 'ENTREPRENEUR GÉNÉRAL',\r\n Housekeeping = 'ENTRETIEN MÉNAGER',\r\n BuildingEvaluator = 'EVALUATEUR EN BATIMENT',\r\n CertifiedAppraiser = 'EVALUATEUR AGRÉÉ',\r\n BuildingConsultant = 'EXPERT CONSEIL EN BÂTIMENT',\r\n ClaimsAdjuster = 'EXPERT EN SINISTRE',\r\n Window = 'FENÊTRE',\r\n Fireplace = 'FOYER',\r\n NaturalGaz = 'GAZ NATUREL',\r\n Generator = 'GÉNÉRATRICE',\r\n TechnicalProjectManagement = 'GESTION DE PROJET TECHNIQUE',\r\n ParkingManagement = 'GESTION DE STATIONNEMENT',\r\n FinancialAndAdministrativeManagement = 'GESTION FINANCIÈRE ET ADMINISTRATIVE',\r\n LocationManagement = 'GESTION LOCATIVE',\r\n PestManagement = 'GESTION PARASITAIRE',\r\n Manager = 'GESTIONNAIRE',\r\n SmallCopropertyManager = 'GESTIONNAIRE PETITE COPROPRIÉTÉ',\r\n Gutter = 'GOUTTIERE',\r\n Infiltration = 'INFILTRATION',\r\n Engineer = 'INGENIEUR',\r\n Inspection = 'INSPECTION',\r\n FacadeInspection = 'INSPECTION DE FAÇADE',\r\n DroneInspection = 'INSPECTION PAR DRONE',\r\n ThermalInspection = 'INSPECTION THERMIQUE',\r\n IntercomAndAccessControl = 'INTERCOM ET CONTRÔLE D\\'ACCÈS',\r\n Internet = 'INTERNET',\r\n Delivery = 'LIVRAISON',\r\n Software = 'LOGICIEL',\r\n BalconyAndParkingMembrane = 'MEMBRANE BALCON ET STATIONNEMENT',\r\n AirConditionerCleaning = 'NETTOYAGE AIR CLIMATISÉ',\r\n CeramicCleaning = 'NETTOYAGE CÉRAMIQUE',\r\n DryerDuctCleaning = 'NETTOYAGE CONDUIT DE SÉCHEUSE',\r\n VentilationCleaning = 'NETTOYAGE VENTILATION',\r\n CleaningAndMaintenance = 'NETTOYAGE ET ENTRETIEN',\r\n CleaningAndPumpingOfSepticTanks = 'NETTOYAGE ET POMPAGE DE PUISARD',\r\n ParkingCleaning = 'NETTOYAGE STATIONNEMENT',\r\n CarpetCleaning = 'NETTOYAGE TAPIS',\r\n WindowCleaning = 'NETTOYAGE VITRE',\r\n Tools = 'OUTILLAGE',\r\n Painter = 'PEINTRE',\r\n WindowFilm = 'PELLICULE POUR FENÊTRE',\r\n SwimmingPool = 'PISCINE',\r\n Plumbing = 'PLOMBERIE',\r\n GarageDoors = 'PORTES DE GARAGE',\r\n DoorsAndWindows = 'PORTES ET FENETRES',\r\n WaterDamagePrevention = \"PRÉVENTION DÉGAT D'EAU\",\r\n IndoorAirQuality = 'QUALITÉ D’AIR INTERIEUR',\r\n RenovationAndSmallJobs = 'RÉNOVATION ET PETITS TRAVAUX',\r\n ApplianceRepair = 'RÉPARATION ÉLECTROMÉNAGER',\r\n FireSecurity = 'SÉCURITÉ INCENDIE',\r\n Locksmith = 'SERRURIER',\r\n ArboriculturalServices = 'SERVICES ARBORICOLES',\r\n HealthAndHelpService = 'SERVICE DE SANTÉ ET D\\'AIDE',\r\n EnergyService = 'SERVICE ÉNERGETIQUE',\r\n Claims = 'SINISTRE',\r\n Parking = 'STATIONNEMENT',\r\n SecuritySystem = 'SYSTÈME DE SÉCURITÉ',\r\n Technology = 'TECHNOLOGIE',\r\n HeatPump = 'THERMOPOMPE',\r\n Roofing = 'TOITURE',\r\n Ventilation = 'VENTILATION'\r\n}\r\n\r\nexport class ActivityAreaHelper {\r\n static values(): string[] {\r\n return Object.keys(ActivityArea).filter((item) => isNaN(Number(item)))\r\n }\r\n\r\n static translatedValues(): string[] {\r\n return this.values().map(x => i18n.t(`organization.activityArea.${x.makeFirstLetterLowercase()}`))\r\n }\r\n\r\n static activityAreaFormOptions(): FormOption[] {\r\n return this.values().map(activityArea => {\r\n return {\r\n name: this.getActivityAreaValueOfKey(activityArea),\r\n label: i18n.t(`organization.activityArea.${activityArea.makeFirstLetterLowercase()}`)\r\n } as FormOption\r\n });\r\n }\r\n\r\n static convertActivityAreaKeysToFormOptions(activityAreas: string[]): FormOption[] {\r\n return activityAreas\r\n .filter(x => this.translatedValues().includes(x))\r\n .map(activityArea => {\r\n return {\r\n name: activityArea,\r\n label: i18n.t(`organization.activityArea.${this.getKeyOfActivityAreaValue(activityArea).makeFirstLetterLowercase()}`)\r\n } as FormOption\r\n }).sortByLabel()\r\n }\r\n\r\n static getActivityAreaValueOfKey(key: string) {\r\n // eslint-disable-next-line\r\n return Object.entries(ActivityArea).find(([k, _]) => k.toUpperCase() === key.toUpperCase())?.[1]\r\n }\r\n\r\n static getKeyOfActivityAreaValue(value: string) {\r\n return Object.keys(ActivityArea)[Object.values(ActivityArea).indexOf(value as ActivityArea)];\r\n }\r\n}","import {FormOption} from \"@/types\";\r\n\r\nexport {};\r\n\r\ndeclare global {\r\n interface Array {\r\n sortByLabel(): Array;\r\n }\r\n}\r\n\r\nArray.prototype.sortByLabel = function (): Array {\r\n const collator = new Intl.Collator();\r\n return this.sort(function (a, b) {\r\n return collator.compare(a.label, b.label);\r\n });\r\n};","import { defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, unref as _unref, toDisplayString as _toDisplayString, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, createVNode as _createVNode, withModifiers as _withModifiers, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { class: \"popup__container\" }\nconst _hoisted_3 = { class: \"popup__content\" }\nconst _hoisted_4 = { class: \"popup__header\" }\nconst _hoisted_5 = { class: \"h2-like\" }\nconst _hoisted_6 = { class: \"popup__block\" }\nconst _hoisted_7 = { class: \"form__submit\" }\nconst _hoisted_8 = { class: \"btn btn--fullscreen\" }\n\nimport { computed, onMounted, ref } from \"vue\"\nimport { useI18n } from \"vue3-i18n\"\nimport { notifyError } from \"@/notify\"\nimport { Status } from \"@/validation\"\nimport FormInput from \"@/components/forms/FormInput.vue\"\nimport { Link } from \"@/types\";\nimport { Quill, QuillEditor } from \"@vueup/vue-quill\";\nimport FormTooltip from \"@/components/forms/FormTooltip.vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormTextEditorLinkPopup',\n props: {\n name: {},\n quillEditor: {}\n },\n emits: [\"closePopup\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props\n\n// eslint-disable-next-line\nconst emit = __emit\n\nconst { t } = useI18n()\n\nconst selection = ref(null)\nconst selectionHTML = ref(null)\nconst selectionContainsImage = computed(() => selectionHTML.value?.includes(\"(null)\nconst link = ref({\n label: \"\",\n url: \"\",\n})\n\n//Functions ======================================\nonMounted( () => {\n //keep quill editor in memory \n const quill = props.quillEditor.getQuill();\n \n if(quill) {\n //if the popup is open, init label as selection if applicable.\n selection.value = quill.getSelection(true);\n selectionHTML.value = getSelectionHtml(quill.getContents(selection.value.index, selection.value.length));\n selectedText.value = quill.getText(selection.value.index, selection.value.length);\n\n if (selectedText.value) {\n link.value.label = selectedText.value;\n }\n }\n});\n\nfunction getSelectionHtml(selectedContent:any) {\n let tempContainer = document.createElement('div')\n let tempQuill = new Quill(tempContainer);\n \n tempQuill.setContents(selectedContent);\n return tempContainer.querySelector('.ql-editor')?.innerHTML;\n}\n\nfunction handleSubmit() {\n formInputs.value.forEach((x: typeof FormInput) => x?.validateInput())\n \n if (Object.values(inputValidationStatuses).some(x => x === false)) {\n notifyError(t('global.formErrorNotification'))\n return\n }\n\n addLinkToQuill();\n}\n\nfunction addLinkToQuill() {\n const quill = props.quillEditor.getQuill();\n\n if(quill){\n const url = !/^https?:\\/\\//i.test(link.value.url) ? \"https://\" + link.value.url.replace(\"http://\", \"\") : link.value.url;\n const content = selectionContainsImage.value ? selectionHTML.value : link.value.label;\n \n const linkTag = `${content}`\n \n selection.value = quill.getSelection(true);\n \n //if selected, delete the old text\n if (selectionContainsImage.value) quill.deleteText(selection.value.index, 1);\n if (selectedText.value) quill.deleteText(selection.value.index, selectedText.value.length);\n \n //then, add the new tag\n quill.clipboard.dangerouslyPasteHTML(selection.value.index, linkTag, 'user');\n\n if (selectionContainsImage.value) quill.setSelection(selection.value.index, 1);\n if (link.value.label) quill.setSelection(selection.value.index, link.value.label.length);\n\n //then, close popup\n closePopup();\n }\n}\n\nfunction closePopup() {\n emit(\"closePopup\");\n}\n\n//Validation =================================\nconst formInputs = ref<(typeof FormInput)[]>([])\nconst inputValidationStatuses: any = {}\n\nfunction addFormInputRef(ref: typeof FormInput) {\n if (!formInputs.value.includes(ref))\n formInputs.value.push(ref)\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"popup popup--visible\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n _createElementVNode(\"div\", {\n class: \"popup__bg\",\n onClick: closePopup\n }),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"p\", _hoisted_5, _toDisplayString(_unref(t)(\"textEditorLinkPopup.addLink\")), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n (!selectionContainsImage.value)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 0,\n modelValue: link.value.label,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((link.value.label) = $event)),\n ref: addFormInputRef,\n label: _unref(t)('textEditorLinkPopup.label'),\n name: `link-label-${_ctx.name}`,\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"name\"]))\n : (_openBlock(), _createBlock(FormTooltip, { key: 1 }, {\n default: _withCtx(() => [\n _createElementVNode(\"p\", null, _toDisplayString(_unref(t)(\"textEditorLinkPopup.image\")), 1)\n ]),\n _: 1\n })),\n _createVNode(FormInput, {\n modelValue: link.value.url,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((link.value.url) = $event)),\n ref: addFormInputRef,\n label: _unref(t)('textEditorLinkPopup.url'),\n name: `link-url-${_ctx.name}`,\n type: \"url\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"name\"]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"button\", _hoisted_8, _toDisplayString(_unref(t)('global.add')), 1),\n _createElementVNode(\"button\", {\n class: \"btn btn--fullscreen btn--red\",\n type: \"button\",\n onClick: closePopup\n }, _toDisplayString(_unref(t)('global.cancel')), 1)\n ])\n ])\n ])\n ])\n ], 40, _hoisted_1))\n}\n}\n\n})","\n\n\n","import script from \"./FormTextEditorLinkPopup.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./FormTextEditorLinkPopup.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = [\"for\"]\nconst _hoisted_2 = {\n key: 0,\n class: \"form__indicator\"\n}\nconst _hoisted_3 = { class: \"form__tooltip\" }\nconst _hoisted_4 = [\"id\"]\n\nimport { requiredTextEditor, Rule } from '@/validation/rules'\nimport { Status, validate } from '@/validation'\nimport { ref, watch } from \"vue\";\nimport { QuillEditor } from \"@vueup/vue-quill\";\nimport BlotFormatter from \"quill-blot-formatter\";\nimport { ImageDrop } from \"quill-image-drop-module\";\nimport MagicUrl from 'quill-magic-url'\nimport MarkdownShortcuts from 'quill-markdown-shortcuts';\nimport FormTextEditorLinkPopup from \"@/components/forms/FormTextEditorLinkPopup.vue\";\n\n//The doc tell us to load styles like this:\n// import \"@vueup/vue-quill/dist/vue-quill.snow.css\";\n//but they dont show up in prod. So I stocked them in our project directly :\nimport \"@/assets/plugins/vue-quill/vue-quill.snow.min.css\";\nimport { useI18n } from \"vue3-i18n\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormTextEditor',\n props: {\n name: {},\n label: {},\n modelValue: {},\n tooltip: {},\n rules: {}\n },\n emits: [\"update:modelValue\", \"validated\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\nconst props = __props;\n\n// eslint-disable-next-line\n__expose({\n //to call validation in parent.\n validateInput : validateTextEditor\n})\n\nconst { t } = useI18n()\n\nconst toolbarOptions = [\n [\"clean\"], // remove formatting button\n\n [\"bold\", \"italic\"], // toggled buttons\n\n [{ list: \"ordered\" }, { list: \"bullet\" }],\n [{ indent: \"-1\" }, { indent: \"+1\" }], // outdent/indent\n\n [{ header: [2, 3, 4, false] }],\n\n [{ color: [\"#00ADEE\", \"#000000\"] }], // dropdown with defaults from theme\n [{ align: [] }],\n\n [ 'link', 'image' ],\n];\n\nconst modules = [\n {\n name: 'blotFormatter', //so images can be resized in editor\n module: BlotFormatter,\n options: {}\n },\n {\n name: \"imageDrop\",\n module: ImageDrop,\n options: {}\n },\n {\n name: 'magicUrl', //so urls are recognize when pasted.\n module: MagicUrl,\n options: {}\n },\n {\n name: 'markdownShortcuts',\n module: MarkdownShortcuts,\n options: {}\n }\n]\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst contentModel = ref(props.modelValue);\nwatch(props, (newProps) => contentModel.value = newProps.modelValue);\nconst status = ref({ valid: true });\nconst isRequired = !(props.rules != null && props.rules.length == 0);\n\nconst showQuillEditorLinkPopup = ref(false);\nconst quillEditor = ref(null);\nwatch(quillEditor, (editor) => {\n //since Quill cant do it itself after 8 (!!!) years, I'm customizing the add link input.\n const quill = editor?.getQuill();\n const toolbar = quill.getModule(\"toolbar\");\n\n if (toolbar) {\n const showLinkPopup = () => {\n showQuillEditorLinkPopup.value = true;\n }\n\n toolbar.addHandler(\"link\", showLinkPopup)\n }\n});\n\nfunction handleChange() {\n const value = quillEditor.value?.getContents();\n validateTextEditor();\n\n contentModel.value = value\n emit(\"update:modelValue\", value);\n}\n\nfunction handleBlur() {\n validateTextEditor();\n}\n\nfunction validateTextEditor() {\n const value = quillEditor.value?.getContents();\n let validationRules = props.rules ? props.rules : [requiredTextEditor]\n status.value = validate(value, validationRules)\n\n emit(\"validated\", props.name, status.value);\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"form__field\", {'error':!status.value.valid}])\n }, [\n (showQuillEditorLinkPopup.value)\n ? (_openBlock(), _createBlock(FormTextEditorLinkPopup, {\n key: 0,\n onClosePopup: _cache[0] || (_cache[0] = () => showQuillEditorLinkPopup.value = false),\n \"quill-editor\": quillEditor.value,\n name: _ctx.name\n }, null, 8, [\"quill-editor\", \"name\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_unref(QuillEditor), {\n ref_key: \"quillEditor\",\n ref: quillEditor,\n toolbar: toolbarOptions,\n modules: modules,\n \"content-type\": \"html\",\n content: contentModel.value,\n \"onUpdate:content\": [\n _cache[1] || (_cache[1] = ($event: any) => ((contentModel).value = $event)),\n handleChange\n ],\n id: _ctx.name,\n onBlur: handleBlur,\n \"aria-invalid\": !status.value.valid,\n \"aria-describedby\": `error__${_ctx.name}`\n }, null, 8, [\"content\", \"id\", \"aria-invalid\", \"aria-describedby\"]),\n _createElementVNode(\"label\", { for: _ctx.name }, [\n _createTextVNode(_toDisplayString(_ctx.label ? _ctx.label : _ctx.name) + \" \", 1),\n isRequired\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_2, \"*\"))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(_ctx.tooltip ? `${_ctx.tooltip}
` : \"\") + \" \" + _toDisplayString(_unref(t)(\"textEditorLinkPopup.tooltip\")), 1)\n ], 8, _hoisted_1),\n (!status.value.valid)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n class: \"form__error-message\",\n id: `error__${_ctx.name}`\n }, _toDisplayString(status.value.message), 9, _hoisted_4))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})","\n\n\n","import script from \"./FormTextEditor.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FormTextEditor.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { vModelCheckbox as _vModelCheckbox, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = [\"name\", \"id\", \"aria-invalid\", \"aria-describedby\"]\nconst _hoisted_2 = [\"for\"]\nconst _hoisted_3 = {\n key: 0,\n class: \"form__indicator\"\n}\nconst _hoisted_4 = [\"id\"]\n\nimport { Status, validateBoolean } from '@/validation'\nimport { requiredBoolean } from '@/validation/rules';\nimport {ref} from \"vue\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormCheckbox',\n props: {\n name: {},\n modelValue: { type: Boolean },\n label: {},\n required: { type: Boolean }\n },\n emits: [\"update:modelValue\", \"validated\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\nconst props = __props;\n\n// eslint-disable-next-line\n__expose({\n //to call validation in parent.\n validateInput: validateCheckbox\n})\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst status = ref( { valid: true });\nconst checked = ref(props.modelValue);\n\nfunction handleChange(e: Event) {\n const checked = (e.target as HTMLInputElement).checked;\n\n validateCheckbox(checked);\n\n emit(\"update:modelValue\", checked);\n}\n\nfunction handleBlur(e: Event) {\n const checked = (e.target as HTMLInputElement).checked;\n validateCheckbox(checked)\n}\n\nfunction validateCheckbox(checked:boolean) {\n status.value = validateBoolean(checked, props.required ? [requiredBoolean] : []);\n emit(\"validated\", props.name, status.value);\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"form__field\", {'error':!status.value.valid}])\n }, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n name: _ctx.name,\n id: _ctx.name,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((checked).value = $event)),\n onChange: handleChange,\n onBlur: handleBlur,\n \"aria-invalid\": !status.value.valid,\n \"aria-describedby\": 'error__' + _ctx.name\n }, null, 40, _hoisted_1), [\n [_vModelCheckbox, checked.value]\n ]),\n _createElementVNode(\"label\", { for: _ctx.name }, [\n _createTextVNode(_toDisplayString(_ctx.label ? _ctx.label : _ctx.name) + \" \", 1),\n (_ctx.required)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_3, \"*\"))\n : _createCommentVNode(\"\", true)\n ], 8, _hoisted_2),\n (!status.value.valid)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: \"form__error-message\",\n id: 'error' + _ctx.name\n }, _toDisplayString(status.value.message), 9, _hoisted_4))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})","\n\n\n","import script from \"./FormCheckbox.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FormCheckbox.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, isRef as _isRef, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { id: \"address-list\" }\nconst _hoisted_3 = [\"id\"]\nconst _hoisted_4 = { class: \"form__duo-fields\" }\nconst _hoisted_5 = { class: \"form__submit btn btn--fullscreen\" }\n\nimport {computed, ref} from \"vue\"\nimport {useI18n} from \"vue3-i18n\"\nimport {notifyError} from \"@/notify\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {useAddressService} from \"@/inversify.config\"\nimport {min, mustMatchPhoneNumberFormat, mustMatchZipCodeFormat, required} from \"@/validation/rules\";\nimport {FormOption, OrganizationType, Role} from \"@/types\";\nimport {IFullOrganization} from \"@/types/entities/organization\";\nimport {Status} from \"@/validation\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport FormInput from \"@/components/forms/FormInput.vue\"\nimport FormReadonlyField from \"@/components/forms/FormReadonlyField.vue\";\nimport FormFiles from \"@/components/forms/FormFiles.vue\";\nimport {IAddress} from \"@/types/responses\";\nimport {IFilterAddressesRequest, IGetAddressRequest} from \"@/types/requests\";\nimport FormMultiSelect from \"@/components/forms/FormMultiSelect.vue\";\nimport {ActivityAreaHelper} from \"@/types/activityArea\";\nimport FormTextEditor from \"@/components/forms/FormTextEditor.vue\";\nimport FormCheckbox from \"@/components/forms/FormCheckbox.vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'OrganizationForm',\n props: {\n modelValue: {}\n },\n emits: [\"update:modelValue\", \"onImageChange\", \"submit\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst {t, getLocale} = useI18n()\nconst memberStore = useMemberStore()\nconst addressService = useAddressService()\n\nconst addressOptions = ref([])\nconst activityAreas = ref(props.modelValue.activityAreas\n ? ActivityAreaHelper.convertActivityAreaKeysToFormOptions(props.modelValue.activityAreas)\n : [])\nconst organization = ref(props.modelValue)\n\nlet organizationType = computed(() => {\n if (!organization.value)\n return;\n let type = organization.value.type.makeFirstLetterLowercase();\n return t(`organization.types.${type}`)\n})\n\nconst formInputs = ref<(typeof FormInput)[]>([])\nconst inputValidationStatuses: any = {}\n\nfunction addFormInputRef(ref: typeof FormInput) {\n if (!formInputs.value.includes(ref))\n formInputs.value.push(ref)\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid\n}\n\nasync function onImageChange(event: any) {\n const files = event?.target?.files\n if (!files)\n return;\n emit('onImageChange', files.length === 0 ? undefined : files[0])\n}\n\nfunction onActivityAreaChange(newOptions: FormOption[]) {\n activityAreas.value = newOptions\n organization.value.activityAreas = activityAreas.value.map(x => x.name)\n}\n\nasync function handleInput(inputValue: string) {\n let selectedOptions = addressOptions.value.filter(x => x.text == inputValue)\n if (selectedOptions.length > 0) {\n let request = {\n id: selectedOptions[0].id,\n language: getLocale()\n } as IGetAddressRequest\n let response = await addressService.getAddress(request)\n organization.value.street = response.detailedAddress.street\n organization.value.city = response.detailedAddress.city\n organization.value.zipCode = response.detailedAddress.zipCode.replace(' ', '')\n return;\n }\n await loadMatchingAddresses(inputValue)\n}\n\nasync function loadMatchingAddresses(inputValue: string) {\n let request = {\n street: inputValue,\n language: getLocale()\n } as IFilterAddressesRequest\n let addresses = await addressService.filterAddresses(request)\n addressOptions.value = addresses.matchingAddresses\n}\n\nasync function handleSubmit() {\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\n notifyError(t('global.formErrorNotification'))\n return\n }\n emit('submit', organization.value as IFullOrganization)\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n (organization.value.type == _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormRow, { key: 0 }, {\n default: _withCtx(() => [\n _createVNode(FormFiles, {\n modelValue: organization.value.logo,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((organization.value.logo) = $event)),\n _cache[2] || (_cache[2] = ($event: any) => (onImageChange($event)))\n ],\n \"default-selected-files\": organization.value.logo != null ? [organization.value.logo] : [],\n label: _unref(t)('organization.logo'),\n possiblesTypes: ['image/png', 'image/jpg', 'image/jpeg', 'image/webp'],\n tooltip: _unref(t)(`organization.logoFormat`),\n name: \"logo\",\n onChange: _cache[1] || (_cache[1] = ($event: any) => (onImageChange($event)))\n }, null, 8, [\"modelValue\", \"default-selected-files\", \"label\", \"tooltip\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(memberStore).hasRole(_unref(Role).Admin))\n ? (_openBlock(), _createBlock(FormRow, {\n key: 1,\n withThreeColumns: true\n }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.crmId,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((organization.value.crmId) = $event)),\n label: _unref(t)('global.crmId'),\n name: \"crmId\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: _unref(organizationType),\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => (_isRef(organizationType) ? (organizationType).value = $event : organizationType = $event)),\n label: _unref(t)('organization.type'),\n name: \"type\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.chapter,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((organization.value.chapter) = $event)),\n label: _unref(t)('organization.chapter'),\n name: \"chapter\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }))\n : (_openBlock(), _createBlock(FormRow, {\n key: 2,\n withThreeColumns: true\n }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: _unref(organizationType),\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => (_isRef(organizationType) ? (organizationType).value = $event : organizationType = $event)),\n label: _unref(t)('organization.type'),\n name: \"type\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.chapter,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((organization.value.chapter) = $event)),\n label: _unref(t)('organization.chapter'),\n name: \"chapter\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.memberNumber,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = ($event: any) => ((organization.value.memberNumber) = $event)),\n label: _unref(t)('organization.memberNumber'),\n name: \"memberNumber\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n })),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.subscription.startAt,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = ($event: any) => ((organization.value.subscription.startAt) = $event)),\n label: _unref(t)('organization.subscriptionStartAt'),\n name: \"subscriptionStartAt\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.subscription.endAt,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = ($event: any) => ((organization.value.subscription.endAt) = $event)),\n label: _unref(t)('organization.subscriptionEndAt'),\n name: \"subscriptionEndAt\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: organization.value.enterpriseNumber,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = ($event: any) => ((organization.value.enterpriseNumber) = $event)),\n label: _unref(t)('organization.enterpriseNumber'),\n name: \"enterpriseNumber\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: organization.value.apartment,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = ($event: any) => ((organization.value.apartment) = $event)),\n label: _unref(t)('global.apartment'),\n rules: [],\n name: \"apartment\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: organization.value.street,\n \"onUpdate:modelValue\": [\n _cache[13] || (_cache[13] = ($event: any) => ((organization.value.street) = $event)),\n handleInput\n ],\n label: _unref(t)('global.street'),\n list: 'address-list',\n name: \"street\",\n type: \"text\",\n onValidated: handleValidation\n }, {\n \"before-input\": _withCtx(() => [\n _createElementVNode(\"datalist\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(addressOptions.value, (address) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n id: address.id,\n key: address.id\n }, _toDisplayString(address.text), 9, _hoisted_3))\n }), 128))\n ])\n ]),\n _: 1\n }, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: organization.value.city,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = ($event: any) => ((organization.value.city) = $event)),\n label: _unref(t)('global.city'),\n name: \"city\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: organization.value.zipCode,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = ($event: any) => ((organization.value.zipCode) = $event)),\n label: _unref(t)('global.zipCode'),\n rules: [_unref(required), _unref(mustMatchZipCodeFormat)],\n name: \"zipCode\",\n type: \"zip\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: organization.value.phoneNumber,\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = ($event: any) => ((organization.value.phoneNumber) = $event)),\n label: _unref(t)('global.phoneNumber'),\n rules: [_unref(required), _unref(mustMatchPhoneNumberFormat)],\n name: \"phoneNumber\",\n type: \"tel\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: organization.value.phoneExtension,\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = ($event: any) => ((organization.value.phoneExtension) = $event)),\n label: _unref(t)('global.phoneExtension'),\n rules: [],\n name: \"phoneExtension\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: organization.value.email,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = ($event: any) => ((organization.value.email) = $event)),\n label: _unref(t)('global.email'),\n name: \"email\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n (organization.value.type === _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormMultiSelect, {\n key: 0,\n ref: addFormInputRef,\n label: _unref(t)('organization.activityAreas'),\n \"max-items\": 5,\n modelValue: activityAreas.value,\n options: _unref(ActivityAreaHelper).activityAreaFormOptions(),\n name: \"activityAreas\",\n onOnOptionChange: onActivityAreaChange\n }, null, 8, [\"label\", \"modelValue\", \"options\"]))\n : _createCommentVNode(\"\", true),\n (organization.value.type === _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 1,\n ref: addFormInputRef,\n modelValue: organization.value.yearsOfExperience,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = ($event: any) => ((organization.value.yearsOfExperience) = $event)),\n label: _unref(t)('organization.yearsOfExperience'),\n name: \"yearsOfExperience\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (organization.value.type === _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 2,\n ref: addFormInputRef,\n modelValue: organization.value.website,\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = ($event: any) => ((organization.value.website) = $event)),\n label: _unref(t)('organization.website'),\n rules: [],\n name: \"website\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (organization.value.type !== _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 3,\n ref: addFormInputRef,\n modelValue: organization.value.numberOfUnits,\n \"onUpdate:modelValue\": _cache[21] || (_cache[21] = ($event: any) => ((organization.value.numberOfUnits) = $event)),\n label: _unref(t)('organization.numberOfUnits'),\n rules: [_unref(required), _unref(min)(2)],\n name: \"numberOfUnits\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]))\n : _createCommentVNode(\"\", true),\n (organization.value.type === _unref(OrganizationType).RegularIndividual && organization.value.syndicate?.name)\n ? (_openBlock(), _createBlock(FormReadonlyField, {\n key: 4,\n modelValue: organization.value.syndicate.name,\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = ($event: any) => ((organization.value.syndicate.name) = $event)),\n label: _unref(t)('organization.syndicate'),\n name: \"syndicateName\"\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n (organization.value.type === _unref(OrganizationType).Corporate && _unref(memberStore).hasRole(_unref(Role).Admin))\n ? (_openBlock(), _createBlock(FormRow, {\n key: 3,\n \"center-fields\": true\n }, {\n default: _withCtx(() => [\n _createVNode(FormCheckbox, {\n ref: addFormInputRef,\n modelValue: organization.value.hasContingencyFundCertification,\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = ($event: any) => ((organization.value.hasContingencyFundCertification) = $event)),\n label: _unref(t)('organization.hasContingencyFundCertification'),\n name: \"isPublished\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (organization.value.type == _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormTextEditor, {\n key: 4,\n ref: addFormInputRef,\n modelValue: organization.value.descriptionFr,\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = ($event: any) => ((organization.value.descriptionFr) = $event)),\n label: _unref(t)('organization.descriptionFr'),\n rules: [],\n name: \"description-fr\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (organization.value.type == _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormTextEditor, {\n key: 5,\n ref: addFormInputRef,\n modelValue: organization.value.descriptionEn,\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = ($event: any) => ((organization.value.descriptionEn) = $event)),\n label: _unref(t)('organization.descriptionEn'),\n rules: [],\n name: \"description-en\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", _hoisted_5, _toDisplayString(_unref(t)('global.save')), 1)\n ], 40, _hoisted_1))\n}\n}\n\n})","\n\n\n","import script from \"./OrganizationForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./OrganizationForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, Fragment as _Fragment, createElementBlock as _createElementBlock } from \"vue\"\n\nimport {onMounted, ref} from \"vue\"\r\nimport {useI18n} from \"vue3-i18n\"\r\nimport {useOrganizationService} from \"@/inversify.config\"\r\nimport {notifyError, notifySuccess} from \"@/notify\"\r\nimport {getAuthenticatedMemberOrganizationRoute} from \"@/router/helpers\"\r\nimport {OrganizationType, Role} from \"@/types\"\r\nimport {IFullOrganization} from \"@/types/entities/organization\";\r\nimport Card from \"@/components/layout/Card.vue\"\r\nimport MemberTable from \"@/components/tables/MemberTable.vue\"\r\nimport ContactTable from \"@/components/tables/ContactTable.vue\"\r\nimport {useMemberStore} from \"@/stores/memberStore\";\r\nimport {getFileFromUrl} from \"@/helpers\";\r\nimport OrganizationForm from \"@/components/forms/OrganizationForm.vue\";\r\nimport {IEditOwnOrganizationRequest} from \"@/types/requests/editOwnOrganizationRequest\";\r\n\r\n// eslint-disable-next-line\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MemberOrganizationForm',\n props: {\n organizationId: {}\n },\n setup(__props: any) {\n\r\nconst props = __props\r\n\r\nconst {t, getLocale} = useI18n()\r\nconst memberStore = useMemberStore()\r\nconst organizationService = useOrganizationService()\r\n\r\nconst organizationLogo = ref()\r\nconst organization = ref()\r\nconst organizationIsLoading = ref(false)\r\n\r\nconst addMemberPath = {\r\n name: `${getAuthenticatedMemberOrganizationRoute()}.children.addMember`,\r\n params: {organizationId: props.organizationId}\r\n};\r\nconst addContactPath = {\r\n name: `${getAuthenticatedMemberOrganizationRoute()}.children.addContact`,\r\n params: {organizationId: props.organizationId}\r\n};\r\n\r\nonMounted(() => {\r\n loadOrganization()\r\n})\r\n\r\nasync function loadOrganization() {\r\n organizationIsLoading.value = true\r\n\r\n let fullOrganization = await organizationService.getMyOrganization(getLocale())\r\n if (fullOrganization) {\r\n organization.value = fullOrganization\r\n if (fullOrganization.logo)\r\n organizationLogo.value = await getFileFromUrl(fullOrganization.logo, fullOrganization.logo)\r\n }\r\n organizationIsLoading.value = false\r\n}\r\n\r\nasync function onImageChange(file: File) {\r\n organizationLogo.value = file\r\n}\r\n\r\nasync function handleSubmit(organization: IFullOrganization) {\r\n let request: IEditOwnOrganizationRequest = {\r\n type: organization.type,\r\n logo: organizationLogo.value,\r\n email: organization.email,\r\n phoneNumber: organization.phoneNumber,\r\n phoneExtension: organization.phoneExtension,\r\n apartment: organization.apartment,\r\n street: organization.street,\r\n city: organization.city,\r\n zipCode: organization.zipCode,\r\n enterpriseNumber: organization.enterpriseNumber,\r\n website: organization.website,\r\n numberOfUnits: organization.numberOfUnits ?? 0,\r\n yearsOfExperience: organization.yearsOfExperience,\r\n activityAreas: organization.activityAreas,\r\n descriptionFr: organization.descriptionFr,\r\n descriptionEn: organization.descriptionEn\r\n };\r\n let succeededOrNotResponse = await organizationService.editMyOrganization(request)\r\n if (succeededOrNotResponse && succeededOrNotResponse.succeeded) {\r\n notifySuccess(t('validation.organization.update.success'))\r\n } else {\r\n let errorMessages = succeededOrNotResponse.getErrorMessages(\r\n 'validation.organization.update', 'validation.organization.update.errorOccured');\r\n notifyError(errorMessages[0])\r\n }\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (organization.value)\n ? (_openBlock(), _createBlock(Card, {\n key: 0,\n title: organization.value.name\n }, {\n default: _withCtx(() => [\n _createVNode(OrganizationForm, {\n modelValue: organization.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((organization).value = $event)),\n \"is-syndicate-organization\": organization.value.type === _unref(OrganizationType).RegularSyndicate,\n onSubmit: handleSubmit,\n onOnImageChange: onImageChange\n }, null, 8, [\"modelValue\", \"is-syndicate-organization\"])\n ]),\n _: 1\n }, 8, [\"title\"]))\n : _createCommentVNode(\"\", true),\n (organization.value && !_unref(memberStore).hasRole(_unref(Role).RegularSyndicateCoOwner))\n ? (_openBlock(), _createBlock(MemberTable, {\n key: 1,\n \"card-link-path\": addMemberPath,\n \"is-loading\": organizationIsLoading.value,\n members: organization.value.members,\n \"organization-id\": organization.value.id.toString()\n }, null, 8, [\"is-loading\", \"members\", \"organization-id\"]))\n : _createCommentVNode(\"\", true),\n (organization.value && organization.value.type === _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(ContactTable, {\n key: 2,\n \"card-link-path\": addContactPath,\n contacts: organization.value.contacts,\n \"is-loading\": organizationIsLoading.value,\n \"organization-id\": organization.value.id.toString()\n }, null, 8, [\"contacts\", \"is-loading\", \"organization-id\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})","\r\n","import script from \"./MemberOrganizationForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MemberOrganizationForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"util--screen-reader\" }\nconst _hoisted_2 = { class: \"content-grid\" }\n\nimport {useI18n} from \"vue3-i18n\"\r\nimport {useMemberStore} from \"@/stores/memberStore\";\r\nimport MemberOrganizationForm from \"@/views/member/MemberOrganizationForm.vue\";\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Membership',\n setup(__props) {\n\r\nconst {t} = useI18n()\r\nconst memberStore = useMemberStore()\r\nconst member = memberStore.getMember;\r\n\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"h1\", _hoisted_1, _toDisplayString(_unref(t)(\"routes.membership.name\")), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(MemberOrganizationForm, {\n \"organization-id\": _unref(member).organizationId\n }, null, 8, [\"organization-id\"])\n ])\n ]))\n}\n}\n\n})","\r\n\r\n ","import script from \"./Membership.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Membership.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveDynamicComponent as _resolveDynamicComponent, openBlock as _openBlock, createBlock as _createBlock, createVNode as _createVNode, Suspense as _Suspense, withCtx as _withCtx, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent } from \"vue\"\n\nimport Loader from \"@/components/layout/Loader.vue\";\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Syndicate',\n setup(__props) {\n\r\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterView = _resolveComponent(\"RouterView\")!\n\n return (_openBlock(), _createBlock(_component_RouterView, null, {\n default: _withCtx(({Component}) => [\n Component\n ? (_openBlock(), _createBlock(_Suspense, { key: 0 }, {\n fallback: _withCtx(() => [\n _createVNode(Loader)\n ]),\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_resolveDynamicComponent(Component)))\n ]),\n _: 2\n }, 1024))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }))\n}\n}\n\n})","import script from \"./Syndicate.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Syndicate.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveDynamicComponent as _resolveDynamicComponent, openBlock as _openBlock, createBlock as _createBlock, createVNode as _createVNode, Suspense as _Suspense, withCtx as _withCtx, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent } from \"vue\"\n\nimport Loader from \"@/components/layout/Loader.vue\";\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Admin',\n setup(__props) {\n\r\n\nreturn (_ctx: any,_cache: any) => {\n const _component_RouterView = _resolveComponent(\"RouterView\")!\n\n return (_openBlock(), _createBlock(_component_RouterView, null, {\n default: _withCtx(({Component}) => [\n Component\n ? (_openBlock(), _createBlock(_Suspense, { key: 0 }, {\n fallback: _withCtx(() => [\n _createVNode(Loader)\n ]),\n default: _withCtx(() => [\n (_openBlock(), _createBlock(_resolveDynamicComponent(Component)))\n ]),\n _: 2\n }, 1024))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }))\n}\n}\n\n})","import script from \"./Admin.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Admin.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 12 20\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#1C1B1F\",\n d: \"M10 20 0 10 10 0l1.775 1.775L3.55 10l8.225 8.225L10 20Z\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nimport IconBack from \"@/assets/icons/icon__back.svg\";\nimport { useRouter } from \"vue-router\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BackLinkTitle',\n props: {\n title: {}\n },\n setup(__props: any) {\n\n\n\nconst router = useRouter();\n\nfunction goBack() {\n router.back();\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"button\", {\n onClick: _cache[0] || (_cache[0] = ($event: any) => (goBack())),\n class: \"back-link-title\"\n }, [\n _createVNode(_unref(IconBack), { class: \"icon\" }),\n _createElementVNode(\"h1\", null, _toDisplayString(_ctx.title), 1)\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./BackLinkTitle.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./BackLinkTitle.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"breadcrumbs\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"breadcrumbs__breadcrumb\"\n}\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = { class: \"breadcrumbs__active\" }\n\nimport { useI18n } from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Breadcrumbs',\n props: {\n title: {}\n },\n setup(__props: any) {\n\nconst {t} = useI18n()\n\n// eslint-disable-next-line\n\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n\n return (_openBlock(), _createElementBlock(\"ul\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.$route.matched, (matched, i) => {\n return (_openBlock(), _createElementBlock(_Fragment, { key: i }, [\n (i+1 < _ctx.$route.matched.length && matched.path != _ctx.$route.path)\n ? (_openBlock(), _createElementBlock(\"li\", _hoisted_2, [\n (!matched.meta.noLinkInBreadcrumbs)\n ? (_openBlock(), _createBlock(_component_router_link, {\n key: 0,\n to: matched.path\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_unref(t)(`routes.${matched.name?.toString()}.name`)), 1)\n ]),\n _: 2\n }, 1032, [\"to\"]))\n : (_openBlock(), _createElementBlock(\"p\", _hoisted_3, _toDisplayString(_unref(t)(`routes.${matched.name?.toString()}.name`)), 1))\n ]))\n : _createCommentVNode(\"\", true)\n ], 64))\n }), 128)),\n _createElementVNode(\"li\", _hoisted_4, _toDisplayString(_ctx.title), 1)\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./Breadcrumbs.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Breadcrumbs.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot } from \"vue\"\n\nconst _hoisted_1 = { class: \"form__fieldset\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"form__legend\"\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Fieldset',\n props: {\n title: {}\n },\n setup(__props: any) {\n\n// eslint-disable-next-line\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"fieldset\", _hoisted_1, [\n (_ctx.title)\n ? (_openBlock(), _createElementBlock(\"legend\", _hoisted_2, [\n _createElementVNode(\"h3\", null, _toDisplayString(_ctx.title), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _renderSlot(_ctx.$slots, \"default\")\n ]))\n}\n}\n\n})","import script from \"./Fieldset.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Fieldset.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, unref as _unref, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"form__fields-title\"\n}\nconst _hoisted_2 = { class: \"form__field form__radios\" }\nconst _hoisted_3 = [\"name\", \"id\", \"value\", \"aria-invalid\", \"aria-describedby\", \"checked\"]\nconst _hoisted_4 = [\"for\"]\nconst _hoisted_5 = {\n key: 0,\n class: \"form__indicator\"\n}\nconst _hoisted_6 = [\"id\"]\n\nimport { FormOption } from \"@/types/formOption\";\nimport { Status} from '@/validation'\nimport { ref } from \"vue\";\nimport { useI18n } from \"vue3-i18n\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'FormRadios',\n props: {\n title: {},\n name: {},\n modelValue: {},\n options: {},\n required: { type: Boolean }\n },\n emits: [\"update:modelValue\", \"validated\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\nconst props = __props;\n\n// eslint-disable-next-line\n__expose({\n //to call validation in parent.\n validateInput: validateRadios\n})\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst { t } = useI18n();\nconst status = ref({ valid: true });\n\nfunction handleChange(e: Event) {\n const groupName = (e.target as HTMLInputElement).name;\n validateRadios(groupName);\n\n const value = (e.target as HTMLInputElement).value;\n emit(\"update:modelValue\", value);\n}\n\nfunction handleBlur(e: Event) {\n const groupName = (e.target as HTMLInputElement).name;\n validateRadios(groupName)\n}\n\nfunction validateRadios(groupName:string) {\n const isChecked = document.querySelector(`[name=${groupName}]:checked`) != null;\n\n status.value = { valid: props.required ? isChecked : true };\n\n emit(\"validated\", props.name, status.value);\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"form__fields-container\", { error: !status.value.valid }])\n }, [\n (_ctx.title)\n ? (_openBlock(), _createElementBlock(\"p\", _hoisted_1, _toDisplayString(_ctx.title), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"ul\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.options, (option) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n class: \"form__radio\",\n key: option.name\n }, [\n _createElementVNode(\"input\", {\n type: \"radio\",\n name: _ctx.name,\n id: `${_ctx.name}-${option.name}`,\n value: option.name,\n \"aria-invalid\": !status.value.valid,\n \"aria-describedby\": `error__${_ctx.name}`,\n checked: _ctx.modelValue === option.name,\n onChange: handleChange,\n onBlur: handleBlur\n }, null, 40, _hoisted_3),\n _createElementVNode(\"label\", {\n for: `${_ctx.name}-${option.name}`\n }, [\n _createTextVNode(_toDisplayString(option.label) + \" \", 1),\n (_ctx.required)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_5, \"*\"))\n : _createCommentVNode(\"\", true)\n ], 8, _hoisted_4)\n ]))\n }), 128))\n ]),\n (!status.value.valid)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n class: \"form__error-message\",\n id: `error__${_ctx.name}`\n }, _toDisplayString(_unref(t)('validation.select')), 9, _hoisted_6))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})","\n\n\n","import script from \"./FormRadios.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./FormRadios.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, renderSlot as _renderSlot, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nimport { ref } from \"vue\";\nimport { Status } from \"@/validation\";\nimport { required, min } from \"@/validation/rules\";\nimport { useI18n } from \"vue3-i18n\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport Fieldset from \"@/components/forms/Fieldset.vue\";\nimport FormCheckbox from \"@/components/forms/FormCheckbox.vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport FormFiles from \"@/components/forms/FormFiles.vue\";\nimport {Product} from \"@/types/entities/product\";\nimport FormTextEditor from \"@/components/forms/FormTextEditor.vue\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ProductBaseForm',\n props: {\n product: {},\n title: {},\n nameFrLabel: {},\n nameEnLabel: {},\n descriptionFrLabel: {},\n descriptionEnLabel: {}\n },\n emits: [\"handleValidation\", \"registerFormInputRef\"],\n setup(__props: any, { emit: __emit }) {\n\nconst { t } = useI18n();\n\n// eslint-disable-next-line no-undef\nconst props = __props\n\n// eslint-disable-next-line\nconst emit = __emit\n\nconst product = ref(props.product)\n\nfunction addFormInputRef(ref: typeof FormInput) {\n emit(\"registerFormInputRef\", ref);\n}\n\nasync function onImageChange(event: any, type: string) {\n const file = event?.target?.files[0];\n if (file && type === \"card\") product.value.cardImage = file as File\n}\n\nasync function onSavedImageChange(url: string, type: string) {\n if (type === \"card\") product.value.savedCardImage = url\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n emit(\"handleValidation\", name, validationStatus);\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createVNode(Fieldset, {\n title: props.title\n }, {\n default: _withCtx(() => [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormFiles, {\n modelValue: product.value.cardImage,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((product.value.cardImage) = $event)),\n name: \"cardImage\",\n ref: addFormInputRef,\n label: _unref(t)('products.form.image-card'),\n tooltip: _unref(t)(`products.form.image-card-tooltip`),\n possiblesTypes: ['image/png', 'image/jpg', 'image/jpeg', 'image/webp'],\n \"default-selected-files\": product.value.savedCardImage != null ? [product.value.savedCardImage] : [],\n \"can-delete\": \"\",\n onOnDefaultSelectedFilesChange: _cache[1] || (_cache[1] = ($event: any) => (onSavedImageChange($event, 'card'))),\n onChange: _cache[2] || (_cache[2] = ($event: any) => (onImageChange($event, 'card'))),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"tooltip\", \"default-selected-files\"]),\n _renderSlot(_ctx.$slots, \"image\")\n ]),\n _: 3\n }),\n _renderSlot(_ctx.$slots, \"after-images\"),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n modelValue: product.value.nameFr,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((product.value.nameFr) = $event)),\n type: \"text\",\n name: \"name-fr\",\n ref: addFormInputRef,\n label: _unref(t)(props.nameFrLabel ?? 'products.form.name-fr'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n modelValue: product.value.nameEn,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((product.value.nameEn) = $event)),\n type: \"text\",\n name: \"name-en\",\n ref: addFormInputRef,\n label: _unref(t)(props.nameEnLabel ?? 'products.form.name-en'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormTextEditor, {\n modelValue: product.value.descriptionFr,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((product.value.descriptionFr) = $event)),\n ref: addFormInputRef,\n name: \"description-fr\",\n label: _unref(t)(props.descriptionFrLabel ?? 'products.form.description-fr'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormTextEditor, {\n modelValue: product.value.descriptionEn,\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((product.value.descriptionEn) = $event)),\n ref: addFormInputRef,\n name: \"description-en\",\n label: _unref(t)(props.descriptionEnLabel ?? 'products.form.description-en'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _renderSlot(_ctx.$slots, \"before-prices\")\n ]),\n _: 3\n }, 8, [\"title\"]),\n _createVNode(Fieldset, {\n title: _unref(t)('products.form.price')\n }, {\n default: _withCtx(() => [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n type: \"number\",\n name: \"member-price\",\n modelValue: product.value.memberPrice,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((product.value.memberPrice) = $event)),\n modelModifiers: { number: true },\n ref: addFormInputRef,\n label: _unref(t)('products.form.memberPrice'),\n rules: [_unref(required), _unref(min)(0)],\n tooltip: _unref(t)('products.form.no-taxes'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\", \"tooltip\"]),\n (!product.value.membersOnly)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 0,\n type: \"number\",\n name: \"non-member-price\",\n modelValue: product.value.nonMemberPrice,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = ($event: any) => ((product.value.nonMemberPrice) = $event)),\n modelModifiers: { number: true },\n ref: addFormInputRef,\n label: _unref(t)('products.form.nonMemberPrice'),\n rules: product.value.membersOnly ? [] : [_unref(required), _unref(min)(0)],\n tooltip: _unref(t)('products.form.no-taxes'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\", \"tooltip\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n _createVNode(FormCheckbox, {\n name: \"membersOnly\",\n modelValue: product.value.membersOnly,\n \"onUpdate:modelValue\": [\n _cache[9] || (_cache[9] = ($event: any) => ((product.value.membersOnly) = $event)),\n _cache[10] || (_cache[10] = newValue => {if (newValue) product.value.nonMemberPrice = undefined })\n ],\n ref: addFormInputRef,\n label: _unref(t)('products.form.membersOnly'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }, 8, [\"title\"])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./ProductBaseForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ProductBaseForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, resolveDirective as _resolveDirective, openBlock as _openBlock, createElementBlock as _createElementBlock, withDirectives as _withDirectives, resolveComponent as _resolveComponent, withCtx as _withCtx, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6cb78918\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"form__subfieldset\" }\nconst _hoisted_2 = { class: \"form__sublegend\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"form__field\"\n}\nconst _hoisted_4 = { class: \"form__field-readonly\" }\nconst _hoisted_5 = { class: \"occupied-places\" }\n\nimport {ref, watch} from \"vue\";\nimport {minDate, required} from \"@/validation/rules\";\nimport {useI18n} from \"vue3-i18n\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport {Status} from \"@/validation\";\nimport IconParticipants from \"@/assets/icons/icon__person.svg\"\nimport IconDelete from \"@/assets/icons/icon__delete.svg\"\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ActivityScheduleForm',\n props: {\n index: {},\n id: {},\n activityId: {},\n startDate: {},\n endDate: {},\n maxParticipants: {},\n occupiedPlaces: {}\n },\n emits: [\"update:startDate\", \"update:endDate\", \"handleValidation\", \"registerFormInputRef\", \"addActivityOccurrenceRow\", \"removeActivityOccurrenceRow\"],\n setup(__props: any, { emit: __emit }) {\n\nconst {t} = useI18n();\n\n// eslint-disable-next-line no-undef\nconst props = __props;\n\n// eslint-disable-next-line\nconst emit = __emit;\n\n\nconst occurrenceStartDate = ref(props.startDate ? props.startDate : \"\");\nwatch(occurrenceStartDate, (newValue) => emit(\"update:startDate\", newValue));\n\nconst occurrenceEndDate = ref(props.endDate ? props.endDate : \"\");\nwatch(occurrenceEndDate, (newValue) => emit(\"update:endDate\", newValue));\n\nwatch(props, (newProps) => {\n occurrenceStartDate.value = newProps.startDate ? newProps.startDate : \"\";\n occurrenceEndDate.value = newProps.endDate ? newProps.endDate : \"\";\n});\n\nfunction addFormInputRef(ref: typeof FormInput) {\n emit(\"registerFormInputRef\", ref);\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n emit(\"handleValidation\", name, validationStatus);\n}\n\nfunction deleteActivityRegistrationRow() {\n emit(\"removeActivityOccurrenceRow\", props.index)\n}\n\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_link = _resolveComponent(\"router-link\")!\n const _directive_tippy = _resolveDirective(\"tippy\")!\n\n return (_openBlock(), _createElementBlock(\"fieldset\", _hoisted_1, [\n _createElementVNode(\"legend\", _hoisted_2, [\n _createElementVNode(\"h4\", null, _toDisplayString(_unref(t)('activityOccurrences.occurrence')) + \" #\" + _toDisplayString(_ctx.index + 1), 1),\n _withDirectives((_openBlock(), _createElementBlock(\"button\", {\n class: \"btn btn--square btn--red\",\n onClick: deleteActivityRegistrationRow\n }, [\n _createVNode(_unref(IconDelete), { class: \"icon icon--black\" })\n ])), [\n [_directive_tippy, _unref(t)(`global.actions.delete`)]\n ])\n ]),\n _createVNode(FormRow, { \"with-three-columns\": \"\" }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: occurrenceStartDate.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((occurrenceStartDate).value = $event)),\n label: _unref(t)('activityOccurrences.form.startDate'),\n rules: [_unref(required)],\n name: \"startDate\",\n type: \"date\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: occurrenceEndDate.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((occurrenceEndDate).value = $event)),\n label: _unref(t)('activityOccurrences.form.endDate'),\n rules: occurrenceEndDate.value.length && occurrenceStartDate.value.length ? [_unref(minDate)(occurrenceStartDate.value)] : [],\n name: \"endDate\",\n type: \"date\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n (props.id && props.activityId)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"label\", null, _toDisplayString(_unref(t)(\"participants.nbParticipant\")), 1),\n _createElementVNode(\"p\", _hoisted_4, [\n _createElementVNode(\"span\", null, [\n _createElementVNode(\"span\", _hoisted_5, _toDisplayString(props.occupiedPlaces) + \" / \" + _toDisplayString(props.maxParticipants ?? 0), 1)\n ]),\n _createVNode(_component_router_link, {\n to: { 'name': 'admin.children.activities.participants.edit', 'params': { activityId: props.activityId, activityOccurrenceId: props.id } },\n class: \"btn btn--square btn--blue\"\n }, {\n default: _withCtx(() => [\n _createVNode(_unref(IconParticipants), { class: \"icon icon--black\" })\n ]),\n _: 1\n }, 8, [\"to\"])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n\n","import script from \"./ActivityScheduleForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ActivityScheduleForm.vue?vue&type=script&lang=ts&setup=true\"\n\nimport \"./ActivityScheduleForm.vue?vue&type=style&index=0&id=6cb78918&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-6cb78918\"]])\n\nexport default __exports__","import {TinyActivity} from \"@/types\";\n\nexport class ActivityOccurrence {\n id?: string\n startDate?: string\n endDate?: string\n occupiedPlaces?: number\n slug?: string\n activity: TinyActivity\n\n constructor() {\n this.activity = {}\n }\n}","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createBlock as _createBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, withCtx as _withCtx } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"span\", { class: \"plus-sign\" }, null, -1)\n\nimport {ref, watch} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport ActivityScheduleForm from \"@/components/activities/ActivityScheduleForm.vue\";\nimport Fieldset from \"@/components/forms/Fieldset.vue\";\nimport FormInput from \"../forms/FormInput.vue\";\nimport {ActivityOccurrence} from \"@/types/entities/activity/activityOccurrence\";\nimport {Status} from \"@/validation\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {Guid} from \"@/types\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\nimport {useActivityOccurrenceService} from \"@/inversify.config\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ActivityOccurrenceForm',\n props: {\n activityId: {},\n modelValue: {}\n },\n emits: [\"update:modelValue\", \"validated\", \"updatedActivityOccurrences\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\nconst activityOccurrenceService = useActivityOccurrenceService();\n\n// eslint-disable-next-line no-undef\nconst props = __props\n\n// eslint-disable-next-line\nconst emit = __emit;\n\n// eslint-disable-next-line\n__expose({\n //to call validation in parent.\n validateForm\n})\n\nconst {t} = useI18n();\n\nconst formInputs = ref([])\nconst inputValidationStatuses: any = {}\n\nlet activityOccurrences = ref(props.modelValue && props.modelValue.length > 0\n ? props.modelValue\n : [new ActivityOccurrence()])\n\nwatch(activityOccurrences, () => validateForm(), {deep: true})\nwatch(props, (newValue) => {\n activityOccurrences.value = newValue.modelValue;\n}, {deep: true, immediate: true})\n\nfunction addActivityOccurrenceRow() {\n activityOccurrences.value.push(new ActivityOccurrence())\n}\n\nasync function removeActivityOccurrenceRow(index: number) {\n let activityOccurrence = {...activityOccurrences.value[index]};\n if (!activityOccurrence.id?.length) activityOccurrences.value.splice(index, 1)\n else if (await deleteActivityOccurrence(activityOccurrence.id)) {\n activityOccurrences.value.splice(index, 1)\n }\n}\n\nfunction addFormInputRef(ref: typeof FormInput) {\n if (!formInputs.value.includes(ref) && ref)\n formInputs.value.push(ref)\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid\n}\n\nasync function validateForm() {\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\n\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\n emit(\"validated\", \"\", {valid: false});\n notifyError(t('activityOccurrences.form.mustChooseDate'))\n return\n }\n\n const hasDuplicates = validateDuplicateActivityScheduleDates();\n if (hasDuplicates) {\n emit(\"validated\", \"\", {valid: false});\n notifyError(t('activityOccurrences.form.saveDuplicateError'))\n return\n }\n\n emit(\"update:modelValue\", activityOccurrences.value);\n emit(\"validated\", \"activityOccurenceForm\", {valid: true});\n}\n\nfunction validateDuplicateActivityScheduleDates() {\n activityOccurrences.value.forEach((activity: ActivityOccurrence) => {\n if (!activity.endDate) activity.endDate = undefined\n });\n\n return activityOccurrences.value.filter((activity: ActivityOccurrence, index: number) =>\n activityOccurrences.value.some((otherActivity: ActivityOccurrence, otherIndex: number) =>\n index !== otherIndex &&\n activity.startDate?.split(\"T\")[0] === otherActivity.startDate?.split(\"T\")[0] &&\n activity.endDate?.split(\"T\")[0] === otherActivity.endDate?.split(\"T\")[0]\n )\n ).length > 0;\n}\n\nasync function deleteActivityOccurrence(id?: string): Promise {\n if (!Guid.isValid(id ?? \"\") || id == null) return false;\n\n let confirmDelete = confirm(t(\"activityOccurrences.form.deleteConfirmation\"));\n if (!confirmDelete)\n return false;\n\n let result: SucceededOrNotResponse = await activityOccurrenceService.deleteActivityOccurrence(id);\n if (!result?.succeeded) {\n notifyError(t('activityOccurrences.form.deleteError'))\n return false\n }\n notifySuccess(t('activityOccurrences.form.deleteSuccess'))\n emit(\"updatedActivityOccurrences\", activityOccurrences.value);\n return true;\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Fieldset, {\n title: _unref(t)('activityOccurrences.occurrences')\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_unref(activityOccurrences), (item, i) => {\n return (_openBlock(), _createBlock(ActivityScheduleForm, {\n key: i,\n \"activity-id\": item.activity.id,\n \"onUpdate:activityId\": ($event: any) => ((item.activity.id) = $event),\n \"end-date\": item.endDate,\n \"onUpdate:endDate\": ($event: any) => ((item.endDate) = $event),\n id: item.id,\n \"onUpdate:id\": ($event: any) => ((item.id) = $event),\n \"max-participants\": item.activity.maxParticipants,\n \"onUpdate:maxParticipants\": ($event: any) => ((item.activity.maxParticipants) = $event),\n \"occupied-places\": item.occupiedPlaces,\n \"onUpdate:occupiedPlaces\": ($event: any) => ((item.occupiedPlaces) = $event),\n \"start-date\": item.startDate,\n \"onUpdate:startDate\": ($event: any) => ((item.startDate) = $event),\n index: i,\n onHandleValidation: handleValidation,\n onRegisterFormInputRef: addFormInputRef,\n onRemoveActivityOccurrenceRow: ($event: any) => (removeActivityOccurrenceRow(i))\n }, null, 8, [\"activity-id\", \"onUpdate:activityId\", \"end-date\", \"onUpdate:endDate\", \"id\", \"onUpdate:id\", \"max-participants\", \"onUpdate:maxParticipants\", \"occupied-places\", \"onUpdate:occupiedPlaces\", \"start-date\", \"onUpdate:startDate\", \"index\", \"onRemoveActivityOccurrenceRow\"]))\n }), 128)),\n _createElementVNode(\"button\", {\n class: \"btn btn--border util--ml-auto\",\n type: \"button\",\n onClick: addActivityOccurrenceRow\n }, [\n _createTextVNode(_toDisplayString(_unref(t)(\"activityOccurrences.add\")) + \" \", 1),\n _hoisted_1\n ])\n ]),\n _: 1\n }, 8, [\"title\"]))\n}\n}\n\n})","\n\n","import script from \"./ActivityOccurrenceForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ActivityOccurrenceForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { withAsyncContext as _withAsyncContext, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, withCtx as _withCtx, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = [\"innerHTML\"]\nconst _hoisted_3 = {\n key: 1,\n class: \"form__submit btn btn--fullscreen\",\n type: \"submit\"\n}\nconst _hoisted_4 = {\n key: 2,\n class: \"form__submit\"\n}\nconst _hoisted_5 = {\n class: \"btn btn--fullscreen\",\n type: \"submit\"\n}\n\nimport {computed, ref} from \"vue\";\nimport {Status} from \"@/validation\";\nimport {min, mustMatchPhoneNumberFormat, required} from \"@/validation/rules\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport Fieldset from \"@/components/forms/Fieldset.vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport FormRadios from \"@/components/forms/FormRadios.vue\";\nimport ProductBaseForm from \"@/components/products/ProductBaseForm.vue\";\nimport FormErrorsList from \"@/components/forms/FormErrorsList.vue\";\nimport FormTooltip from \"@/components/forms/FormTooltip.vue\";\n\nimport {useI18n} from \"vue3-i18n\";\nimport {Guid} from \"@/types\";\nimport {useRouter} from \"vue-router\";\nimport {useActivityService} from \"@/inversify.config\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\";\nimport {Activity, ActivityLocation} from \"@/types/entities/activity\";\nimport FormCheckbox from \"@/components/forms/FormCheckbox.vue\";\nimport FormFiles from \"@/components/forms/FormFiles.vue\";\nimport ActivityOccurrenceForm from \"@/components/activities/ActivityOccurrenceForm.vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ActivityForm',\n props: {\n id: {}\n },\n async setup(__props: any) {\n\nlet __temp: any, __restore: any\n\nconst props = __props\n\nconst {t} = useI18n();\n\nconst router = useRouter();\nconst activityService = useActivityService();\n\nconst isEditMode = props.id && Guid.isValid(props.id);\nconst activity = ref(isEditMode ? (\n ([__temp,__restore] = _withAsyncContext(() => activityService.getActivity(props.id))),\n __temp = await __temp,\n __restore(),\n __temp\n) : new Activity())\n\nconst formInputs = ref([])\nconst activityOccurenceForm = ref()\nconst inputValidationStatuses: any = {}\n\nconst locationOptions = [\n {name: ActivityLocation.InPerson, label: t(\"activities.form.location-presential\")},\n {name: ActivityLocation.Online, label: t(\"activities.form.location-online\")},\n];\n\nconst isOnline = computed(() => {\n if (!activity.value.location)\n return false;\n return activity.value.location == ActivityLocation.Online;\n});\n\nasync function onImageChange(event: any, type: string) {\n const file = event?.target?.files[0];\n if (type === \"page\")\n activity.value.pageImage = file as File;\n if (type === \"participantGuideUrl\")\n activity.value.participantGuideUrl = file as File;\n if (type === \"activityPresentationUrl\")\n activity.value.activityPresentationUrl = file as File;\n}\n\nasync function onSavedImageChange(url: any, type: string) {\n if (type === \"page\") activity.value.savedPageImage = url\n}\n\nasync function onActivityOccurrencesChange(activityOccurrences: any) {\n activity.value.activityOccurrences = activityOccurrences;\n}\n\n\nfunction addFormInputRef(ref: typeof FormInput) {\n if (!formInputs.value.includes(ref) && ref)\n formInputs.value.push(ref)\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid\n}\n\nasync function handleSubmit() {\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\n await activityOccurenceForm.value.validateForm()\n\n if (activity.value.activityOccurrences.length == 0) {\n notifyError(t('activityOccurrences.form.mustEnterAtLeastOneOccurrence'))\n return;\n }\n\n let validKeyNames = Object.keys(inputValidationStatuses).filter(x => x.length);\n if (Object.values(validKeyNames.map(key => inputValidationStatuses[key])).some(x => x === false)) {\n notifyError(t('global.formErrorNotification'))\n return\n } else {\n await save();\n }\n}\n\nasync function save() {\n let succeededOrNotResponse: SucceededOrNotResponse\n activity.value.activityOccurrences.forEach(occurrence => {\n occurrence.startDate = occurrence.startDate ? occurrence.startDate : \"\";\n occurrence.endDate = occurrence.endDate ? occurrence.endDate : \"\";\n })\n\n if (!activity.value.activityOccurrences.every(x => x.startDate?.length)) {\n notifyError(t('activities.form.saveError'))\n return;\n }\n\n let request: any = {\n ...activity.value,\n activityOccurrences: JSON.stringify(activity.value.activityOccurrences)\n }\n if (isEditMode) {\n succeededOrNotResponse = await activityService.updateActivity(request);\n } else {\n succeededOrNotResponse = await activityService.createActivity(request);\n }\n\n if (succeededOrNotResponse.succeeded) {\n notifySuccess(t('activities.form.saveSuccess'))\n setTimeout(() => {\n router.back();\n }, 1500);\n } else {\n notifyError(t('activities.form.saveError'))\n displayErrors(succeededOrNotResponse)\n }\n}\n\nasync function deleteActivity() {\n if (!Guid.isValid(activity.value.id ?? \"\") || activity.value.id == null)\n return;\n\n let confirmDelete = confirm(t(\"activities.form.deleteConfirmation\"));\n\n if (!confirmDelete) return;\n\n let result: SucceededOrNotResponse = await activityService.deleteActivity(activity.value.id);\n if (result?.succeeded) {\n notifySuccess(t('activities.form.deleteSuccess'))\n await router.push({name: \"admin.children.activities.index\"});\n } else {\n displayErrors(result as SucceededOrNotResponse)\n notifyError(t('activities.form.deleteError'))\n }\n}\n\nconst errorsMessages = ref([])\n\nfunction displayErrors(response: SucceededOrNotResponse) {\n response = new SucceededOrNotResponse(response.succeeded, response.errors)\n if (response?.succeeded != undefined && !response?.succeeded) {\n errorsMessages.value = response.getErrorMessages('validation.activity', 'validation.activity.errorOccured')\n } else errorsMessages.value = []\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"form\",\n enctype: \"multipart/form-data\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n (errorsMessages.value.length)\n ? (_openBlock(), _createBlock(FormErrorsList, {\n key: 0,\n errorsList: errorsMessages.value,\n title: _unref(t)('global.formErrorNotification')\n }, null, 8, [\"errorsList\", \"title\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(ProductBaseForm, {\n product: activity.value,\n title: _unref(t)('products.form.fieldset-informations-activity'),\n onHandleValidation: handleValidation,\n onRegisterFormInputRef: addFormInputRef\n }, {\n image: _withCtx(() => [\n _createVNode(FormFiles, {\n ref: addFormInputRef,\n modelValue: activity.value.pageImage,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((activity.value.pageImage) = $event)),\n \"default-selected-files\": activity.value.savedPageImage != null ? [activity.value.savedPageImage] : [],\n label: _unref(t)('products.form.image-page'),\n possiblesTypes: ['image/png', 'image/jpg', 'image/jpeg', 'image/webp'],\n tooltip: _unref(t)(`products.form.image-page-tooltip`),\n \"can-delete\": \"\",\n name: \"pageImage\",\n onChange: _cache[1] || (_cache[1] = ($event: any) => (onImageChange($event, 'page'))),\n onValidated: handleValidation,\n onOnDefaultSelectedFilesChange: _cache[2] || (_cache[2] = ($event: any) => (onSavedImageChange($event, 'page')))\n }, null, 8, [\"modelValue\", \"default-selected-files\", \"label\", \"tooltip\"])\n ]),\n \"after-images\": _withCtx(() => [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: activity.value.imageOverlayTextFr,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((activity.value.imageOverlayTextFr) = $event)),\n label: _unref(t)('products.form.image-text-fr'),\n rules: [],\n name: \"image-text-fr\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: activity.value.imageOverlayTextEn,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((activity.value.imageOverlayTextEn) = $event)),\n label: _unref(t)('products.form.image-text-en'),\n rules: [],\n name: \"image-text-en\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"product\", \"title\"]),\n _createVNode(Fieldset, {\n title: _unref(t)('activities.form.fieldset-schedule')\n }, {\n default: _withCtx(() => [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: activity.value.startsAt,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((activity.value.startsAt) = $event)),\n label: _unref(t)('activities.form.startsAt'),\n rules: [],\n name: \"starts-at\",\n type: \"time\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: activity.value.endsAt,\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((activity.value.endsAt) = $event)),\n label: _unref(t)('activities.form.endsAt'),\n rules: [],\n name: \"ends-at\",\n type: \"time\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: activity.value.trainer,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((activity.value.trainer) = $event)),\n label: _unref(t)('activities.form.trainer'),\n rules: [],\n name: \"trainer\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(ActivityOccurrenceForm, {\n ref_key: \"activityOccurenceForm\",\n ref: activityOccurenceForm,\n \"model-value\": activity.value.activityOccurrences,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = ($event: any) => ((activity.value.activityOccurrences) = $event)),\n \"activity-id\": props.id,\n onValidated: handleValidation,\n onUpdatedActivityOccurrences: onActivityOccurrencesChange\n }, null, 8, [\"model-value\", \"activity-id\"]),\n _createVNode(Fieldset, {\n title: _unref(t)('activities.form.fieldset-location')\n }, {\n default: _withCtx(() => [\n _createVNode(FormRadios, {\n ref: addFormInputRef,\n modelValue: activity.value.location,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = ($event: any) => ((activity.value.location) = $event)),\n isRequired: true,\n label: _unref(t)('activities.form.location'),\n options: locationOptions,\n name: \"location\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormRow, { \"with-three-columns\": \"\" }, {\n default: _withCtx(() => [\n (!isOnline.value)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 0,\n ref: addFormInputRef,\n modelValue: activity.value.locationAddress,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = ($event: any) => ((activity.value.locationAddress) = $event)),\n label: _unref(t)('activities.form.address'),\n rules: [],\n name: \"location-address\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (isOnline.value)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 1,\n ref: addFormInputRef,\n modelValue: activity.value.onlineUrl,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = ($event: any) => ((activity.value.onlineUrl) = $event)),\n label: _unref(t)('activities.form.url'),\n rules: [],\n name: \"online-url\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (isOnline.value)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 2,\n ref: addFormInputRef,\n modelValue: activity.value.onlinePhoneNumber,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = ($event: any) => ((activity.value.onlinePhoneNumber) = $event)),\n label: _unref(t)('global.phoneNumber'),\n rules: [_unref(required), _unref(mustMatchPhoneNumberFormat)],\n name: \"online-phone-number\",\n type: \"tel\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]))\n : _createCommentVNode(\"\", true),\n (isOnline.value)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 3,\n ref: addFormInputRef,\n modelValue: activity.value.onlineWebinarNumber,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = ($event: any) => ((activity.value.onlineWebinarNumber) = $event)),\n label: _unref(t)('activities.form.webinarNumber'),\n rules: [],\n name: \"online-webinar-number\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(Fieldset, {\n title: _unref(t)('activities.form.fieldset-participants')\n }, {\n default: _withCtx(() => [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: activity.value.maxParticipants,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = ($event: any) => ((activity.value.maxParticipants) = $event)),\n label: _unref(t)('activities.form.maxParticipants'),\n rules: [_unref(required), _unref(min)(1)],\n name: \"maxParticipants\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: activity.value.surveyUrl,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = ($event: any) => ((activity.value.surveyUrl) = $event)),\n label: _unref(t)('activityOccurrences.form.surveyUrl'),\n rules: [],\n name: \"surveyUrl\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormCheckbox, {\n modelValue: activity.value.isPrivate,\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = ($event: any) => ((activity.value.isPrivate) = $event)),\n label: _unref(t)('activities.form.private'),\n name: \"isPrivate\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormCheckbox, {\n modelValue: activity.value.isPublished,\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = ($event: any) => ((activity.value.isPublished) = $event)),\n label: _unref(t)('activities.form.publish'),\n name: \"isPublished\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(Fieldset, {\n title: _unref(t)('activities.form.fieldset-documents')\n }, {\n default: _withCtx(() => [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: activity.value.activityRecordingUrl,\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = ($event: any) => ((activity.value.activityRecordingUrl) = $event)),\n label: _unref(t)('activityOccurrences.form.activityRecordingUrl'),\n rules: [],\n name: \"activityRecordingUrl\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormFiles, {\n modelValue: activity.value.participantGuideUrl,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = ($event: any) => ((activity.value.participantGuideUrl) = $event)),\n \"default-selected-files\": activity.value.participantGuideUrl != undefined ? [activity.value.participantGuideUrl] : [],\n label: _unref(t)('activityOccurrences.form.participantGuideUrl'),\n name: \"participantGuideUrl\",\n onChange: _cache[20] || (_cache[20] = ($event: any) => (onImageChange($event, 'participantGuideUrl'))),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"default-selected-files\", \"label\"]),\n _createVNode(FormFiles, {\n modelValue: activity.value.activityPresentationUrl,\n \"onUpdate:modelValue\": _cache[21] || (_cache[21] = ($event: any) => ((activity.value.activityPresentationUrl) = $event)),\n \"default-selected-files\": activity.value.activityPresentationUrl != undefined ? [activity.value.activityPresentationUrl] : [],\n label: _unref(t)('activityOccurrences.form.activityPresentationUrl'),\n name: \"activityPresentationUrl\",\n onChange: _cache[22] || (_cache[22] = ($event: any) => (onImageChange($event, 'activityPresentationUrl'))),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"default-selected-files\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormTooltip, null, {\n default: _withCtx(() => [\n _createElementVNode(\"p\", {\n innerHTML: _unref(t)(`global.uploadZippedFolder-tooltip`)\n }, null, 8, _hoisted_2)\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"title\"]),\n (!_unref(isEditMode))\n ? (_openBlock(), _createElementBlock(\"button\", _hoisted_3, _toDisplayString(_unref(t)(\"global.add\")), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", _hoisted_5, _toDisplayString(_unref(t)(\"global.update\")), 1),\n _createElementVNode(\"button\", {\n class: \"btn btn--red btn--fullscreen\",\n type: \"button\",\n onClick: deleteActivity\n }, _toDisplayString(_unref(t)(\"global.delete\")), 1)\n ]))\n ], 40, _hoisted_1))\n}\n}\n\n})","\n\n","import script from \"./ActivityForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ActivityForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport Card from '@/components/layout/Card.vue';\nimport BackLinkTitle from '@/components/layout/BackLinkTitle.vue';\nimport Breadcrumbs from '@/components/layout/Breadcrumbs.vue';\nimport ActivityForm from '@/components/activities/ActivityForm.vue';\nimport {useI18n} from \"vue3-i18n\";\nimport {computed} from \"vue\";\nimport {Guid} from \"@/types\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminActivityForm',\n props: {\n id: {}\n },\n setup(__props: any) {\n\nconst {t} = useI18n()\n\n// eslint-disable-next-line no-undef\nconst props = __props\n\nconst isEditMode = computed(() => props.id && Guid.isValid(props.id));\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.activities.${!isEditMode.value ? 'add' : 'update'}.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.activities.${!isEditMode.value ? 'add' : 'update'}.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(ActivityForm, {\n id: props.id\n }, null, 8, [\"id\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminActivityForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminActivityForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 17 18\"\n}\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"path\", {\n fill: \"#000\",\n \"fill-rule\": \"evenodd\",\n d: \"m12.886 11.568 3.853 3.852a1.024 1.024 0 0 1-1.445 1.446l-3.854-3.853a7.12 7.12 0 0 1-4.284 1.427A7.164 7.164 0 0 1 0 7.284 7.164 7.164 0 0 1 7.157.127c3.946 0 7.156 3.21 7.156 7.157a7.118 7.118 0 0 1-1.427 4.283Zm-5.73-9.396a5.112 5.112 0 0 0-5.11 5.112l-.002-.001a5.118 5.118 0 0 0 5.112 5.112 5.112 5.112 0 0 0 0-10.223Z\",\n \"clip-rule\": \"evenodd\"\n}, null, -1)\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nfunction render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"svg\", _hoisted_1, [..._hoisted_3]))\n}\nexport default { render };","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createElementVNode as _createElementVNode, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"search-input\" }\nconst _hoisted_2 = [\"value\", \"placeholder\"]\nconst _hoisted_3 = { for: \"search\" }\n\nimport IconSearch from \"@/assets/icons/icon__search.svg\";\nimport { useI18n } from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'SearchInput',\n props: {\n modelValue: {}\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit: __emit }) {\n\nconst { t } = useI18n();\n\n// eslint-disable-next-line\n\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nfunction handleInput(e: Event) {\n const value = (e.target as HTMLInputElement).value;\n emit(\"update:modelValue\", value);\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n type: \"search\",\n name: \"search\",\n id: \"search\",\n value: _ctx.modelValue,\n placeholder: _unref(t)('global.search'),\n onInput: handleInput\n }, null, 40, _hoisted_2),\n _createElementVNode(\"label\", _hoisted_3, [\n _createVNode(_unref(IconSearch), { class: \"icon icon--black\" })\n ])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./SearchInput.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SearchInput.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage content-grid--subpage-table\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = { class: \"back-link-title\" }\nconst _hoisted_4 = { class: \"content-grid__filters\" }\n\nimport Card from \"@/components/layout/Card.vue\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport SearchInput from \"@/components/layout/SearchInput.vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {computed, onMounted, ref, watch} from \"vue\";\nimport {useActivityOccurrenceService} from \"@/inversify.config\";\nimport DataTable from \"@/components/layout/DataTable.vue\";\nimport BtnLink from \"@/components/layout/BtnLink.vue\";\nimport {Guid} from \"@/types\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\";\nimport FormCheckbox from \"@/components/forms/FormCheckbox.vue\";\nimport {ActivityOccurrence} from \"@/types/entities/activity/activityOccurrence\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminActivityOccurrenceIndex',\n setup(__props) {\n\nconst {t} = useI18n()\n\nconst activityOccurrenceService = useActivityOccurrenceService();\n\nconst searchValue = ref(\"\");\nconst showPastActivities = ref(false);\nconst activityOccurrencesAreLoading = ref(false);\nconst activityOccurrences = ref([]);\n\nwatch(showPastActivities, async (newValue) => {\n await loadFutureOrPastOccurrences(newValue)\n})\n\nonMounted(async () => {\n await loadFutureOrPastOccurrences(showPastActivities.value);\n})\n\nconst activityOccurrenceItems = computed(() => {\n let items: any[] = [];\n if (activityOccurrences.value.length === 0)\n return []\n\n activityOccurrences.value.forEach((activityOccurrence: ActivityOccurrence) => {\n const occupiedPlaces = activityOccurrence.occupiedPlaces != null ? activityOccurrence.occupiedPlaces : 0\n items.push({\n id: activityOccurrence.id,\n name: activityOccurrence.activity?.nameFr?.truncateString(42),\n startDate: activityOccurrence.startDate ? activityOccurrence.startDate : t(\"global.undefined\"),\n endDate: activityOccurrence.endDate ? activityOccurrence.endDate : t(\"global.undefined\"),\n participants: `${occupiedPlaces}/${activityOccurrence.activity.maxParticipants}`,\n isPublished: activityOccurrence.activity?.isPublished ? t(\"global.yes\") : t(\"global.no\"),\n actions: {\n update: {name: \"admin.children.activities.update\", params: {id: activityOccurrence.activity?.id}},\n participants: {\n name: \"admin.children.activities.participants.edit\",\n params: {activityId: activityOccurrence.activity?.id, activityOccurrenceId: activityOccurrence.id}\n },\n registrations: {\n name: \"admin.children.activities.registrations.edit\",\n params: {activityId: activityOccurrence.activity?.id}\n },\n delete: true,\n }\n });\n });\n\n return items;\n});\n\nasync function loadFutureOrPastOccurrences(showPastActivities: boolean) {\n activityOccurrencesAreLoading.value = true;\n let response = showPastActivities\n ? await activityOccurrenceService.getPastActivityOccurrences()\n : await activityOccurrenceService.getFutureActivityOccurrences();\n if (response.length > 0) {\n activityOccurrences.value = response;\n }\n activityOccurrencesAreLoading.value = false;\n}\n\nasync function deleteActivityOccurrence(activityOccurrence: any) {\n if (activityOccurrence?.id == null || !Guid.isValid(activityOccurrence.id ?? \"\"))\n return\n\n let confirmDelete = confirm(t(\"activityOccurrences.form.deleteConfirmation\"));\n if (!confirmDelete)\n return;\n\n let result: SucceededOrNotResponse = await activityOccurrenceService.deleteActivityOccurrence(activityOccurrence.id);\n if (result?.succeeded) {\n notifySuccess(t('activityOccurrences.form.deleteSuccess'))\n await loadFutureOrPastOccurrences(showPastActivities.value);\n } else {\n notifyError(t('activityOccurrences.form.deleteError'))\n }\n}\n\nconst activityOccurrencesHeader = [\n {\n text: t(\"products.form.name\"),\n value: \"name\",\n sortable: true,\n width: 315,\n },\n {\n text: t(\"activities.form.startDate\"),\n value: \"startDate\",\n sortable: true,\n width: 135,\n },\n {\n text: t(\"activities.form.endDate\"),\n value: \"endDate\",\n sortable: true,\n width: 125,\n },\n {\n text: t(\"activities.form.fieldset-participants\"),\n value: \"participants\",\n width: 80,\n },\n {\n text: t(\"activities.form.isPublished\"),\n value: \"isPublished\",\n width: 105,\n },\n {\n text: t(\"global.table.actions\"),\n value: \"actions\",\n width: 175\n },\n];\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.activities.name`)\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"h1\", _hoisted_3, _toDisplayString(_unref(t)(`routes.admin.children.activities.name`)), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(SearchInput, {\n modelValue: searchValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((searchValue).value = $event))\n }, null, 8, [\"modelValue\"]),\n _createVNode(FormCheckbox, {\n modelValue: showPastActivities.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((showPastActivities).value = $event)),\n label: _unref(t)('activities.showPastActivities'),\n class: \"form\",\n name: \"show-past-activities\"\n }, null, 8, [\"modelValue\", \"label\"])\n ])\n ]),\n _createVNode(Card, {\n title: _unref(t)('global.quickLinks'),\n class: \"card--row-content\"\n }, {\n default: _withCtx(() => [\n _createVNode(BtnLink, {\n name: _unref(t)('routes.admin.children.activities.add.name'),\n path: {name: `admin.children.activities.add`}\n }, null, 8, [\"name\", \"path\"]),\n _createVNode(BtnLink, {\n name: _unref(t)(`routes.admin.children.activities.participants.add.name`),\n path: {name: `admin.children.activities.participants.add`}\n }, null, 8, [\"name\", \"path\"]),\n _createVNode(BtnLink, {\n name: _unref(t)(`routes.admin.children.activities.registrations.add.name`),\n path: {name: `admin.children.activities.registrations.add`}\n }, null, 8, [\"name\", \"path\"])\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(DataTable, {\n headers: activityOccurrencesHeader,\n \"is-loading\": activityOccurrencesAreLoading.value,\n items: activityOccurrenceItems.value,\n \"search-value\": searchValue.value,\n onDelete: deleteActivityOccurrence\n }, null, 8, [\"is-loading\", \"items\", \"search-value\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminActivityOccurrenceIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminActivityOccurrenceIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, createVNode as _createVNode, withCtx as _withCtx, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"span\", { class: \"plus-sign\" }, null, -1)\nconst _hoisted_2 = [\"onSubmit\"]\nconst _hoisted_3 = {\n key: 0,\n class: \"btn btn--fullscreen\",\n type: \"submit\"\n}\n\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport Fieldset from \"@/components/forms/Fieldset.vue\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport FormCheckbox from \"@/components/forms/FormCheckbox.vue\";\nimport FormErrorsList from \"@/components/forms/FormErrorsList.vue\";\nimport { ref, watch } from \"vue\";\nimport { useI18n } from \"vue3-i18n\";\nimport { notifyError, notifySuccess } from \"@/notify\";\nimport { useActivityOccurrenceService } from \"@/inversify.config\";\nimport { Status } from \"@/validation\";\nimport {Participant} from \"@/types/entities/activity\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\n\ninterface propsInterface {\n isOnlineActivity: boolean,\n activityOccurrenceId: string,\n}\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'NewActivityParticipant',\n props: {\n isOnlineActivity: { type: Boolean },\n activityOccurrenceId: {}\n },\n emits: [\"newParticipantAdded\"],\n setup(__props: any, { emit: __emit }) {\n\nconst { t } = useI18n();\n\nconst activityOccurrenceService = useActivityOccurrenceService();\n\n// eslint-disable-next-line\nconst props = __props;\n\nconst emit = __emit;\n\nconst isOnline = ref(props.isOnlineActivity);\nconst activityOccurrenceId = ref(props.activityOccurrenceId);\n\nlet newParticipant = ref(new Participant);\nconst showAddParticipantPlusButton = ref(true);\n\nwatch(props, (newProps) => {\n isOnline.value = newProps.isOnlineActivity;\n activityOccurrenceId.value = newProps.activityOccurrenceId;\n});\n\nwatch(activityOccurrenceId, () => showAddParticipantPlusButton.value = true);\n\nconst formInputs = ref<(typeof FormInput)[]>([])\nconst inputValidationStatuses:any = {}\n\nfunction addFormInputRef(ref: typeof FormInput) {\n if (!formInputs.value.includes(ref) && ref != null)\n formInputs.value.push(ref)\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid\n}\n\nasync function handleSubmit() {\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\n notifyError(t('global.formErrorNotification'))\n return\n }\n else {\n await addParticipant();\n }\n}\n\nasync function addParticipant() {\n errorsMessages.value = []\n let response = await activityOccurrenceService.addParticipantToActivityOccurrence(activityOccurrenceId.value, newParticipant.value)\n if (!response.id) {\n notifyError(t('participants.saveError'))\n displayErrors(response as SucceededOrNotResponse)\n return\n }\n notifySuccess(t('participants.saveSuccess'))\n emit(\"newParticipantAdded\")\n showAddParticipantPlusButton.value = !showAddParticipantPlusButton.value\n newParticipant.value = new Participant();\n}\n\nconst errorsMessages = ref([])\nfunction displayErrors(response: SucceededOrNotResponse) {\n response = new SucceededOrNotResponse(response.succeeded, response.errors)\n if (response?.succeeded != undefined && !response?.succeeded) {\n errorsMessages.value = response.getErrorMessages('validation.participants')\n }\n else errorsMessages.value = []\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n (showAddParticipantPlusButton.value && props.activityOccurrenceId)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn--border util--ml-auto\",\n type: \"button\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (showAddParticipantPlusButton.value = !showAddParticipantPlusButton.value))\n }, [\n _createTextVNode(_toDisplayString(_unref(t)(\"participants.add\")) + \" \", 1),\n _hoisted_1\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"]),\n enctype: \"multipart/form-data\"\n }, [\n (errorsMessages.value.length)\n ? (_openBlock(), _createBlock(FormErrorsList, {\n key: 0,\n title: _unref(t)('global.formErrorNotification'),\n errorsList: errorsMessages.value\n }, null, 8, [\"title\", \"errorsList\"]))\n : _createCommentVNode(\"\", true),\n (!showAddParticipantPlusButton.value)\n ? (_openBlock(), _createBlock(Fieldset, {\n key: 1,\n title: _unref(t)('participants.newParticipant')\n }, {\n default: _withCtx(() => [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: _unref(newParticipant).firstName,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((_unref(newParticipant).firstName) = $event)),\n name: \"newParticipantFirstName\",\n type: \"text\",\n label: _unref(t)('participants.firstName'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: _unref(newParticipant).lastName,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((_unref(newParticipant).lastName) = $event)),\n name: \"newParticipantLastName\",\n type: \"text\",\n label: _unref(t)('participants.lastName'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: _unref(newParticipant).emailAddress,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((_unref(newParticipant).emailAddress) = $event)),\n name: \"newParticipantEmailAddress\",\n type: \"text\",\n label: _unref(t)('participants.email'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n (!isOnline.value)\n ? (_openBlock(), _createBlock(FormInput, {\n key: 0,\n modelValue: _unref(newParticipant).allergies,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((_unref(newParticipant).allergies) = $event)),\n name: \"newParticipantAllergies\",\n type: \"text\",\n rules: [],\n label: _unref(t)('participants.allergies')\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n (!isOnline.value)\n ? (_openBlock(), _createBlock(FormCheckbox, {\n key: 0,\n modelValue: _unref(newParticipant).reducedMobility,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((_unref(newParticipant).reducedMobility) = $event)),\n name: \"reducedMobility\",\n label: _unref(t)('participants.reducedMobility')\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n (!showAddParticipantPlusButton.value)\n ? (_openBlock(), _createElementBlock(\"button\", _hoisted_3, _toDisplayString(_unref(t)('global.add')), 1))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"title\"]))\n : _createCommentVNode(\"\", true)\n ], 40, _hoisted_2)\n ]))\n}\n}\n\n})","\n\n","import script from \"./NewActivityParticipant.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./NewActivityParticipant.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport NewActivityParticipant from \"@/components/activities/NewActivityParticipant.vue\";\nimport DataTable from \"@/components/layout/DataTable.vue\";\nimport Card from \"@/components/layout/Card.vue\";\nimport {computed, ref, watch} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {Participant} from \"@/types/entities/activity\";\nimport {Item} from \"vue3-easy-data-table\";\n\ninterface propsInterface {\n activityId: string\n activityOccurrenceId: string,\n\n participants: Participant[],\n maxParticipants?: number,\n participantsAreLoading: boolean,\n participantsSearchValue: string\n isOnlineActivity: boolean,\n}\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ActivityParticipantTable',\n props: {\n activityId: {},\n activityOccurrenceId: {},\n participants: {},\n maxParticipants: {},\n participantsAreLoading: { type: Boolean },\n participantsSearchValue: {},\n isOnlineActivity: { type: Boolean }\n },\n emits: [\"newParticipantAdded\"],\n setup(__props: any, { emit: __emit }) {\n\nconst {t} = useI18n();\n\n// eslint-disable-next-line\nconst props = __props;\n\nconst emit = __emit;\n\nconst participants = ref(props.participants);\nconst activityOccurrenceId = ref(props.activityOccurrenceId);\nconst activityId = ref(props.activityId);\nconst participantsAreLoading = ref(props.participantsAreLoading);\nconst participantsSearchValue = ref(props.participantsSearchValue)\nconst isOnline = ref(props.isOnlineActivity);\nconst maxParticipants = ref(props.maxParticipants ?? 0);\n\nwatch(props, (newProps) => {\n activityId.value = newProps.activityId;\n activityOccurrenceId.value = newProps.activityOccurrenceId;\n participants.value = newProps.participants;\n participantsAreLoading.value = newProps.participantsAreLoading;\n participantsSearchValue.value = newProps.participantsSearchValue;\n isOnline.value = newProps.isOnlineActivity;\n maxParticipants.value = newProps.maxParticipants!;\n});\n\n\nconst participantsItems = computed(() => {\n let items: Item[] = [];\n if (participants.value == null || participants.value.length == 0)\n return [];\n participants.value.forEach((participant: Participant) => {\n items.push({\n ...participant,\n memberNumber: participant.memberNumber?.length ? participant.memberNumber : t(\"global.undefined\"),\n reducedMobility: participant.reducedMobility ? t('global.yes') : t('global.no'),\n actions: {\n edit: true,\n transfer: {\n name: \"admin.children.activities.participantTransfer\",\n params: {participantId: participant.id, activityOccurrenceId: activityOccurrenceId.value}\n }\n }\n });\n });\n return items\n})\n\nconst participantsHeaders = computed(() => {\n let headers =\n [\n {\n text: t(\"participants.memberNumber\"),\n value: \"memberNumber\",\n sortable: true,\n width: 250\n },\n {\n text: t(\"participants.lastName\"),\n value: \"lastName\",\n sortable: true\n },\n {\n text: t(\"participants.firstName\"),\n value: \"firstName\",\n sortable: true\n },\n {\n text: t(\"participants.email\"),\n value: \"emailAddress\",\n sortable: true\n }\n ];\n\n if (!isOnline.value) {\n headers.push(\n {\n text: t(\"participants.allergies\"),\n value: \"allergies\",\n sortable: true\n },\n {\n text: t(\"participants.reducedMobility\"),\n value: \"reducedMobility\",\n sortable: true\n },\n )\n }\n\n headers.push(\n {\n text: t(\"global.table.actions\"),\n value: \"actions\",\n sortable: false\n })\n return headers\n})\n\nfunction handleEdit(id: string) {\n let participant = participants.value.find(x => x.id == id);\n if (!participant)\n return;\n const appUrl = new URL(window.location.href);\n let url = new URL(`${appUrl.origin}/activites-et-formations/inscription`);\n const params = new URLSearchParams({\n activityOccurrenceId: activityOccurrenceId.value,\n activityRegistrationId: participant.activityRegistrationId!\n });\n url.search = params.toString();\n window.location.href = url.toString();\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Card, {\n title: _unref(t)('participants.participants') + `\\t(${participants.value.length}/${maxParticipants.value})`\n }, {\n default: _withCtx(() => [\n _createVNode(DataTable, {\n headers: participantsHeaders.value,\n \"is-loading\": participantsAreLoading.value,\n items: participantsItems.value,\n \"search-value\": participantsSearchValue.value,\n onEdit: handleEdit\n }, null, 8, [\"headers\", \"is-loading\", \"items\", \"search-value\"]),\n _createVNode(NewActivityParticipant, {\n activityOccurrenceId: activityOccurrenceId.value,\n \"onUpdate:activityOccurrenceId\": _cache[0] || (_cache[0] = ($event: any) => ((activityOccurrenceId).value = $event)),\n isOnlineActivity: isOnline.value,\n \"onUpdate:isOnlineActivity\": _cache[1] || (_cache[1] = ($event: any) => ((isOnline).value = $event)),\n onNewParticipantAdded: _cache[2] || (_cache[2] = () => emit('newParticipantAdded'))\n }, null, 8, [\"activityOccurrenceId\", \"isOnlineActivity\"])\n ]),\n _: 1\n }, 8, [\"title\"]))\n}\n}\n\n})","\n\n","import script from \"./ActivityParticipantTable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ActivityParticipantTable.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { withAsyncContext as _withAsyncContext, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, withCtx as _withCtx, toDisplayString as _toDisplayString, withModifiers as _withModifiers, isRef as _isRef, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage content-grid--subpage-table\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = [\"onSubmit\"]\nconst _hoisted_4 = { class: \"form__submit\" }\nconst _hoisted_5 = [\"disabled\"]\n\nimport {computed, onMounted, ref, watch} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport Card from '@/components/layout/Card.vue';\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\nimport FormSelect from \"@/components/forms/FormSelect.vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport SearchInput from \"@/components/layout/SearchInput.vue\";\nimport ActivityParticipantTable from \"@/components/tables/ActivityParticipantTable.vue\";\n\nimport {FormOption, Guid} from \"@/types\";\nimport {useActivityOccurrenceService, useActivityService} from \"@/inversify.config\";\nimport {Activity, ActivityLocation, Participant} from \"@/types/entities/activity\";\nimport {ActivityOccurrence} from \"@/types/entities/activity/activityOccurrence\";\nimport {ComputedRef} from \"vue/dist/vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminActivityOccurrenceParticipants',\n props: {\n activityId: {},\n activityOccurrenceId: {}\n },\n async setup(__props: any) {\n\nlet __temp: any, __restore: any\n\nconst props = __props\n\nconst {t} = useI18n()\n\nconst activityService = useActivityService()\nconst activityOccurrenceService = useActivityOccurrenceService()\n\nconst selectedActivityId = ref(props.activityId ?? \"\")\nconst activities = ref((\n ([__temp,__restore] = _withAsyncContext(() => activityService.getAllActivities(true))),\n __temp = await __temp,\n __restore(),\n __temp\n) ?? [])\nconst selectedActivity = ref(findActivityWithId(selectedActivityId.value))\n\nconst givenActivityOccurrenceId = ref(props.activityOccurrenceId ?? \"\")\nconst activityOccurrences = ref(selectedActivity.value ? selectedActivity.value.activityOccurrences : [])\nconst selectedActivityOccurrence = ref(activityOccurrences.value.length > 0 ? activityOccurrences.value[0] as ActivityOccurrence : new ActivityOccurrence())\nconst selectedActivityOccurrenceId = ref(Guid.isValid(givenActivityOccurrenceId.value) ? props.activityOccurrenceId : selectedActivityOccurrence.value.id ?? \"\")\n\nconst participants = ref([]);\nconst participantsAreLoading = ref(false);\nconst participantsSearchValue = ref(\"\");\n\nonMounted(async () => {\n await fetchActivityOccurrenceParticipants()\n})\n\nconst disableDownloadButton = computed(() => {\n return !selectedActivityId.value || !selectedActivityOccurrenceId.value || !participants.value.length\n})\n\nlet activitiesOptions: ComputedRef = computed(() => {\n let formOptions = activities.value\n .filter(x => x && x.id && x.nameFr)\n .map(({id, nameFr}) => ({\n name: id,\n label: nameFr\n })) as FormOption[]\n return formOptions.sortByLabel()\n});\n\nlet activityOccurrencesOptions: any = computed(() => {\n if (activityOccurrences.value.length === 0)\n return []\n return activityOccurrences.value\n .filter(x => x && x.id && x.startDate)\n .map(x => {\n let startDate = x.startDate ? x.startDate : \"\"\n let endDate = x.endDate ? ` ---> ${x.endDate}` : ''\n return {\n name: x.id,\n label: `${startDate}${endDate}`\n }\n });\n});\n\nlet isOnlineActivity: any = computed(() => {\n if (!Guid.isValid(selectedActivityId.value))\n return false\n\n let activity = findActivityWithId(selectedActivityId.value)\n return activity?.location == ActivityLocation.Online\n});\n\nwatch(selectedActivityId, (newId) => {\n participants.value = []\n selectedActivity.value = findActivityWithId(newId)\n\n activityOccurrences.value = selectedActivity.value.activityOccurrences\n if (activityOccurrences.value.length === 0)\n return\n selectedActivityOccurrence.value = activityOccurrences.value[0] as ActivityOccurrence\n selectedActivityOccurrenceId.value = activityOccurrences.value[0].id as string\n})\n\nwatch(selectedActivityOccurrenceId, async () => {\n await fetchActivityOccurrenceParticipants()\n})\n\nfunction findActivityWithId(id: string): Activity {\n return activities.value.find(x => x.id == id) as Activity;\n}\n\nasync function fetchActivityOccurrenceParticipants() {\n if (!selectedActivityOccurrenceId.value) return\n\n participantsAreLoading.value = true\n participants.value = await activityOccurrenceService.getActivityOccurrenceParticipants(selectedActivityOccurrenceId.value);\n participantsAreLoading.value = false\n}\n\nasync function newParticipantAdded() {\n await fetchActivityOccurrenceParticipants()\n}\n\nasync function handleSubmit() {\n let csvData = \",Num membre,Prenom,Nom,Email\";\n if (!isOnlineActivity.value)\n csvData += \",Allergies,Mobilite reduite\"\n for (let index = 0; index < participants.value.length; index++) {\n const p = participants.value[index];\n csvData += `\\n${index + 1},${p.memberNumber?.length ? p.memberNumber : t(\"global.undefined\")},${p.firstName},${p.lastName},${p.emailAddress}`;\n if (!isOnlineActivity.value) csvData += `,${p.allergies?.length ? p.allergies : t(\"global.undefined\")},${p.reducedMobility ? t(\"global.yes\") : t(\"global.no\")}`\n }\n\n const utf8BOM = \"\\uFEFF\"; // Optional but recommended for proper UTF-8 encoding\n let blob = new Blob([utf8BOM, csvData], {type: \"text/csv;charset=utf-8;\"});\n let url = URL.createObjectURL(blob);\n let link = document.createElement(\"a\");\n link.setAttribute(\"href\", url);\n\n let activity = activities.value.find(x => x.id == selectedActivityId.value)\n link.setAttribute(\"download\", `${activity?.nameFr}_participants.csv`);\n\n // Simulate a click on the link to initiate the download\n link.click();\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.activities.participants.add.name`)\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.activities.participants.add.name`)\n }, null, 8, [\"title\"]),\n (participants.value.length)\n ? (_openBlock(), _createBlock(SearchInput, {\n key: 0,\n modelValue: participantsSearchValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((participantsSearchValue).value = $event))\n }, null, 8, [\"modelValue\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(Card, {\n title: _unref(t)('activities.selectAnActivity')\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormSelect, {\n modelValue: selectedActivityId.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((selectedActivityId).value = $event)),\n label: _unref(t)('activities.activity'),\n options: _unref(activitiesOptions),\n rules: [],\n name: \"activityId\"\n }, null, 8, [\"modelValue\", \"label\", \"options\"]),\n (selectedActivityId.value)\n ? (_openBlock(), _createBlock(FormSelect, {\n key: 0,\n modelValue: selectedActivityOccurrenceId.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((selectedActivityOccurrenceId).value = $event)),\n label: _unref(t)('activities.selectAnOccurrence'),\n options: _unref(activityOccurrencesOptions),\n rules: [],\n name: \"activityOccurrenceId\"\n }, null, 8, [\"modelValue\", \"label\", \"options\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"button\", {\n disabled: disableDownloadButton.value,\n class: \"btn btn--fullscreen\",\n type: \"submit\"\n }, _toDisplayString(_unref(t)(\"participants.download\")), 9, _hoisted_5)\n ])\n ], 40, _hoisted_3)\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(ActivityParticipantTable, {\n \"activity-id\": selectedActivityId.value,\n \"onUpdate:activityId\": _cache[3] || (_cache[3] = ($event: any) => ((selectedActivityId).value = $event)),\n \"activity-occurrence-id\": selectedActivityOccurrenceId.value,\n \"onUpdate:activityOccurrenceId\": _cache[4] || (_cache[4] = ($event: any) => ((selectedActivityOccurrenceId).value = $event)),\n isOnlineActivity: _unref(isOnlineActivity),\n \"onUpdate:isOnlineActivity\": _cache[5] || (_cache[5] = ($event: any) => (_isRef(isOnlineActivity) ? (isOnlineActivity).value = $event : isOnlineActivity = $event)),\n \"max-participants\": selectedActivityOccurrence.value.activity.maxParticipants,\n \"onUpdate:maxParticipants\": _cache[6] || (_cache[6] = ($event: any) => ((selectedActivityOccurrence.value.activity.maxParticipants) = $event)),\n participants: participants.value,\n \"onUpdate:participants\": _cache[7] || (_cache[7] = ($event: any) => ((participants).value = $event)),\n participantsAreLoading: participantsAreLoading.value,\n \"onUpdate:participantsAreLoading\": _cache[8] || (_cache[8] = ($event: any) => ((participantsAreLoading).value = $event)),\n participantsSearchValue: participantsSearchValue.value,\n \"onUpdate:participantsSearchValue\": _cache[9] || (_cache[9] = ($event: any) => ((participantsSearchValue).value = $event)),\n onNewParticipantAdded: newParticipantAdded\n }, null, 8, [\"activity-id\", \"activity-occurrence-id\", \"isOnlineActivity\", \"max-participants\", \"participants\", \"participantsAreLoading\", \"participantsSearchValue\"])\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminActivityOccurrenceParticipants.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminActivityOccurrenceParticipants.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { withAsyncContext as _withAsyncContext, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, Fragment as _Fragment, createElementBlock as _createElementBlock, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = { class: \"form__submit\" }\nconst _hoisted_2 = [\"disabled\"]\nconst _hoisted_3 = { key: 3 }\n\nimport {computed, ComputedRef, onMounted, ref, watch} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport FormSelect from \"@/components/forms/FormSelect.vue\";\nimport Fieldset from \"@/components/forms/Fieldset.vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport FormErrorsList from \"@/components/forms/FormErrorsList.vue\";\nimport {FormOption, Guid} from \"@/types\";\nimport {useActivityOccurrenceService, useActivityService} from \"@/inversify.config\";\nimport {useRouter} from \"vue-router\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {Activity, Participant} from \"@/types/entities/activity\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\nimport {ActivityOccurrence} from \"@/types/entities/activity/activityOccurrence\";\nimport Loader from \"@/components/layout/Loader.vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ActivityParticipantTransferForm',\n props: {\n activityOccurrenceId: {},\n participantId: {}\n },\n async setup(__props: any) {\n\nlet __temp: any, __restore: any\n\nconst props = __props\n\nconst {t} = useI18n();\n\nconst router = useRouter()\n\nconst activityService = useActivityService()\nconst activityOccurenceService = useActivityOccurrenceService();\n\nconst selectedActivityId = ref(\"\")\nconst activities = ref((\n ([__temp,__restore] = _withAsyncContext(() => getAllActivitiesExceptCurrent())),\n __temp = await __temp,\n __restore(),\n __temp\n) ?? [])\nconst selectedActivity = ref({activityOccurrences: []})\n\nconst activityOccurrences = ref(selectedActivity.value ? getActivityOccurrencesExceptCurrent() : [])\nconst selectedActivityOccurrence = ref(activityOccurrences.value.length > 0\n ? activityOccurrences.value[0] as ActivityOccurrence\n : {} as ActivityOccurrence)\nconst selectedActivityOccurrenceId = ref(selectedActivityOccurrence.value.id ?? \"\")\n\nconst participant = ref({reducedMobility: false});\n\nonMounted(async () => {\n await fetchActivityOccurrenceParticipant()\n})\n\nlet activitiesOptions: ComputedRef = computed(() => {\n let formOptions = activities.value\n .filter(x => x && x.id && x.nameFr)\n .map(({id, nameFr}) => ({\n name: id,\n label: nameFr\n })) as FormOption[]\n return formOptions.sortByLabel()\n});\n\nlet activityOccurrencesOptions: ComputedRef = computed(() => {\n if (activityOccurrences.value.length === 0)\n return []\n return activityOccurrences.value\n .filter(x => x && x.id && x.startDate)\n .map(x => {\n let startDate = x.startDate ? x.startDate : \"\"\n let endDate = x.endDate ? ` ---> ${x.endDate}` : ''\n return {\n name: x.id,\n label: `${startDate}${endDate}`\n }\n }) as FormOption[];\n});\n\nconst transferButtonIsDisabled = computed(() => {\n return !Guid.isValid(selectedActivityId.value) || !Guid.isValid(selectedActivityOccurrenceId.value)\n})\n\nwatch(selectedActivityId, (newId) => {\n selectedActivity.value = activities.value.find(x => x.id == newId) as Activity\n\n activityOccurrences.value = selectedActivity.value.activityOccurrences\n if (activityOccurrences.value.length === 0)\n return\n selectedActivityOccurrence.value = activityOccurrences.value[0] as ActivityOccurrence\n selectedActivityOccurrenceId.value = activityOccurrences.value[0].id as string\n})\n\nasync function fetchActivityOccurrenceParticipant() {\n let response = await activityOccurenceService.getActivityOccurrenceParticipant(props.participantId)\n if (!Guid.isValid(response.id ?? \"\")) {\n displayErrors(response as SucceededOrNotResponse)\n return\n }\n participant.value = response\n}\n\nasync function transferParticipant() {\n let result = await activityOccurenceService.transferActivityOccurrenceParticipant(selectedActivityOccurrenceId.value, props.participantId)\n if (result?.succeeded) {\n notifySuccess(t('participants.form.transferSaveSuccess'))\n await router.push({name: \"admin.children.activities.index\"})\n } else {\n displayErrors(result)\n notifyError(t('participants.form.transferSaveError'))\n }\n}\n\nasync function getAllActivitiesExceptCurrent() {\n const activities = await activityService.getAllActivities(true)\n // show activity if it has more than one occurrence, otherwise hide it since we don't want to transfer participant to same occurrence\n return activities.filter(x => !x.activityOccurrences.some(y => y.id == props.activityOccurrenceId) || x.activityOccurrences.length > 1)\n}\n\nfunction getActivityOccurrencesExceptCurrent() {\n return selectedActivity.value.activityOccurrences.filter(x => x.id != props.activityOccurrenceId)\n}\n\nconst errorsMessages = ref([])\n\nfunction displayErrors(response: SucceededOrNotResponse) {\n response = new SucceededOrNotResponse(response.succeeded, response.errors)\n if (response?.succeeded != undefined && !response?.succeeded) {\n errorsMessages.value = response.getErrorMessages('validation.activityOccurrence')\n } else errorsMessages.value = []\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _cache[2] || (_cache[2] = _withModifiers(($event: any) => (transferParticipant()), [\"prevent\"]))\n }, [\n (participant.value?.firstName)\n ? (_openBlock(), _createBlock(Fieldset, {\n key: 0,\n title: _unref(t)('participants.participant')\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"ul\", null, [\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_unref(t)('participants.firstName')) + \":\", 1),\n _createTextVNode(\" \" + _toDisplayString(participant.value.firstName), 1)\n ]),\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_unref(t)('participants.lastName')) + \":\", 1),\n _createTextVNode(\" \" + _toDisplayString(participant.value.lastName), 1)\n ]),\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_unref(t)('participants.email')) + \":\", 1),\n _createTextVNode(\" \" + _toDisplayString(participant.value.emailAddress), 1)\n ])\n ])\n ]),\n _: 1\n }, 8, [\"title\"]))\n : (_openBlock(), _createBlock(Loader, {\n key: 1,\n \"is-inline\": true\n })),\n (_unref(activitiesOptions).length)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n _createVNode(Fieldset, null, {\n default: _withCtx(() => [\n (errorsMessages.value.length)\n ? (_openBlock(), _createBlock(FormErrorsList, {\n key: 0,\n errorsList: errorsMessages.value,\n title: _unref(t)('global.formErrorNotification')\n }, null, 8, [\"errorsList\", \"title\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormSelect, {\n modelValue: selectedActivityId.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((selectedActivityId).value = $event)),\n label: _unref(t)('activities.activity'),\n options: _unref(activitiesOptions),\n rules: [],\n name: \"activityId\"\n }, null, 8, [\"modelValue\", \"label\", \"options\"]),\n (_unref(activityOccurrencesOptions).length)\n ? (_openBlock(), _createBlock(FormSelect, {\n key: 0,\n modelValue: selectedActivityOccurrenceId.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((selectedActivityOccurrenceId).value = $event)),\n label: _unref(t)('activityOccurrences.occurrence'),\n options: _unref(activityOccurrencesOptions),\n rules: [],\n name: \"activityOccurrenceId\"\n }, null, 8, [\"modelValue\", \"label\", \"options\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"button\", {\n disabled: transferButtonIsDisabled.value,\n class: \"btn btn--fullscreen\",\n type: \"submit\"\n }, _toDisplayString(_unref(t)('global.transfer')), 9, _hoisted_2)\n ])\n ], 64))\n : (_openBlock(), _createElementBlock(\"p\", _hoisted_3, _toDisplayString(_unref(t)('activities.noAvailableActivity')), 1))\n ], 32))\n}\n}\n\n})","\n\n","import script from \"./ActivityParticipantTransferForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ActivityParticipantTransferForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport Card from '@/components/layout/Card.vue';\nimport BackLinkTitle from '@/components/layout/BackLinkTitle.vue';\nimport Breadcrumbs from '@/components/layout/Breadcrumbs.vue';\nimport ActivityParticipantTransferForm from \"@/components/activities/ActivityParticipantTransferForm.vue\";\nimport {useI18n} from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminActivityOccurrenceParticipantTransfer',\n props: {\n activityOccurrenceId: {},\n participantId: {}\n },\n setup(__props: any) {\n\nconst {t} = useI18n()\n\n// eslint-disable-next-line no-undef\nconst props = __props\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.activities.participantTransfer.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.activities.participantTransfer.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(ActivityParticipantTransferForm, {\n \"activity-occurrence-id\": props.activityOccurrenceId,\n \"participant-id\": props.participantId\n }, null, 8, [\"activity-occurrence-id\", \"participant-id\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n","import script from \"./AdminActivityOccurrenceParticipantTransfer.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminActivityOccurrenceParticipantTransfer.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport DataTable from \"@/components/layout/DataTable.vue\";\nimport {computed, ref, watch} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {Guid} from \"@/types\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {useActivityOccurrenceService} from \"@/inversify.config\";\nimport {ActivityRegistration} from \"@/types/entities/activity\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ActivityRegistrationTable',\n props: {\n activityOccurrenceId: {},\n registrations: {},\n registrationsAreLoading: { type: Boolean },\n registrationsSearchValue: {}\n },\n emits: [\"registrationDeleted\"],\n setup(__props: any, { emit: __emit }) {\n\nconst {t} = useI18n();\n\nconst activityOccurrenceService = useActivityOccurrenceService();\n\n// eslint-disable-next-line no-undef\nconst props = __props\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst activityOccurrenceId = ref(props.activityOccurrenceId);\nconst registrations = ref(props.registrations);\nconst registrationsAreLoading = ref(props.registrationsAreLoading);\nconst registrationsSearchValue = ref(props.registrationsSearchValue);\n\nwatch(props, (newProps) => {\n registrations.value = newProps.registrations;\n activityOccurrenceId.value = newProps.activityOccurrenceId;\n registrationsAreLoading.value = newProps.registrationsAreLoading;\n registrationsSearchValue.value = newProps.registrationsSearchValue;\n});\n\nconst registrationsItems = computed(() => {\n let items: any[] = []\n if (registrations.value.length === 0)\n return []\n registrations.value.forEach((registration: ActivityRegistration) => {\n items.push({\n id: registration.id,\n firstName: registration.billingAddress?.firstName,\n lastName: registration.billingAddress?.lastName,\n email: registration.billingAddress?.email,\n participantsCount: registration.participants?.length,\n isPaid: registration.isFree ? t(\"global.free\") : registration.isPaid ? t(\"global.yes\") : t(\"global.no\"),\n actions: {\n edit: true,\n delete: true,\n }\n })\n })\n return items\n});\n\nfunction handleEdit(id: string) {\n const appUrl = new URL(window.location.href);\n let url = new URL(`${appUrl.origin}/activites-et-formations/inscription`);\n const params = new URLSearchParams({activityOccurrenceId: activityOccurrenceId.value, activityRegistrationId: id});\n url.search = params.toString();\n window.location.href = url.toString();\n}\n\nasync function handleDelete(activityRegistration: any) {\n if (activityRegistration?.id == null || !Guid.isValid(activityRegistration.id ?? \"\"))\n return;\n\n let confirmDelete = confirm(t(\"registrations.form.deleteConfirmation\"));\n if (!confirmDelete) return;\n\n let result: SucceededOrNotResponse = await activityOccurrenceService.deleteActivityRegistration(activityRegistration.id);\n\n if (result?.succeeded) {\n notifySuccess(t(\"registrations.form.deleteSuccess\"));\n emit(\"registrationDeleted\");\n } else {\n notifyError(t(\"registrations.form.deleteError\"));\n }\n}\n\nconst registrationsHeaders = [\n {\n text: t(\"participants.lastName\"),\n value: \"lastName\",\n sortable: true,\n },\n {\n text: t(\"participants.firstName\"),\n value: \"firstName\",\n sortable: true,\n },\n {\n text: t(\"participants.email\"),\n value: \"email\",\n sortable: true,\n },\n {\n text: t(\"participants.participants\"),\n value: \"participantsCount\",\n sortable: true,\n },\n {\n text: t(\"invoice.isPaid\"),\n value: \"isPaid\",\n sortable: true,\n },\n {\n text: t(\"global.table.actions\"),\n value: \"actions\",\n }\n]\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(DataTable, {\n headers: registrationsHeaders,\n \"is-loading\": registrationsAreLoading.value,\n items: registrationsItems.value,\n \"search-value\": registrationsSearchValue.value,\n onDelete: handleDelete,\n onEdit: handleEdit\n }, null, 8, [\"is-loading\", \"items\", \"search-value\"]))\n}\n}\n\n})","\n\n","import script from \"./ActivityRegistrationTable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ActivityRegistrationTable.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { withAsyncContext as _withAsyncContext, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, withCtx as _withCtx, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage content-grid--subpage-table\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = { class: \"form\" }\nconst _hoisted_4 = { key: 1 }\n\nimport {computed, onMounted, ref, watch} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport Card from '@/components/layout/Card.vue';\nimport SearchInput from \"@/components/layout/SearchInput.vue\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\nimport FormSelect from \"@/components/forms/FormSelect.vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport ActivityRegistrationTable from \"@/components/tables/ActivityRegistrationTable.vue\";\nimport {useActivityOccurrenceService, useActivityService} from \"@/inversify.config\";\nimport {Activity, ActivityRegistration} from \"@/types/entities/activity\";\nimport {ActivityOccurrence} from \"@/types/entities/activity/activityOccurrence\";\nimport {ComputedRef} from \"vue/dist/vue\";\nimport {FormOption} from \"@/types\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminActivityOccurrenceRegistrations',\n props: {\n activityId: {}\n },\n async setup(__props: any) {\n\nlet __temp: any, __restore: any\n\nconst props = __props\n\nconst {t} = useI18n();\n\nconst activityService = useActivityService();\nconst activityOccurrenceService = useActivityOccurrenceService()\n\nconst selectedActivityId = ref(props.activityId ?? \"\")\nconst activities = ref((\n ([__temp,__restore] = _withAsyncContext(() => activityService.getAllActivities())),\n __temp = await __temp,\n __restore(),\n __temp\n) ?? [])\nconst selectedActivity = ref(findActivityWithId(selectedActivityId.value))\n\nconst activityOccurrences = ref(selectedActivity.value ? selectedActivity.value.activityOccurrences : [])\nconst selectedActivityOccurrence = ref(activityOccurrences.value.length > 0 ? activityOccurrences.value[0] as ActivityOccurrence : new ActivityOccurrence())\nconst selectedActivityOccurrenceId = ref(selectedActivityOccurrence.value.id ?? \"\")\n\nconst registrations = ref([]);\nconst registrationsAreLoading = ref(false);\nconst registrationsSearchValue = ref(\"\");\n\nonMounted(async () => {\n await fetchActivityRegistrations()\n})\n\nlet activitiesOptions: ComputedRef = computed(() => {\n let formOptions = activities.value\n .filter(x => x && x.id && x.nameFr)\n .map(({id, nameFr}) => ({\n name: id,\n label: nameFr\n })) as FormOption[]\n return formOptions.sortByLabel()\n});\n\nlet activityOccurrencesOptions: any = computed(() => {\n if (activityOccurrences.value.length === 0)\n return []\n return activityOccurrences.value\n .filter(x => x && x.id && x.startDate)\n .map(x => {\n let startDate = x.startDate ? x.startDate : \"\"\n let endDate = x.endDate ? ` ---> ${x.endDate}` : ''\n return {\n name: x.id,\n label: `${startDate}${endDate}`\n }\n });\n});\n\nwatch(selectedActivityId, (newId) => {\n registrations.value = []\n selectedActivity.value = findActivityWithId(newId)\n\n activityOccurrences.value = selectedActivity.value.activityOccurrences\n if (activityOccurrences.value.length === 0)\n return\n selectedActivityOccurrence.value = activityOccurrences.value[0] as ActivityOccurrence\n selectedActivityOccurrenceId.value = activityOccurrences.value[0].id as string\n})\n\nwatch(selectedActivityOccurrenceId, async () => {\n await fetchActivityRegistrations()\n})\n\nasync function fetchActivityRegistrations() {\n registrationsAreLoading.value = true\n registrations.value = await activityOccurrenceService.getActivityOccurrenceRegistrations(selectedActivityOccurrenceId.value);\n registrationsAreLoading.value = false\n}\n\nfunction findActivityWithId(id: string): Activity {\n return activities.value.find(x => x.id == id) as Activity;\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.activities.registrations.add.name`)\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.activities.registrations.add.name`)\n }, null, 8, [\"title\"]),\n (registrations.value.length)\n ? (_openBlock(), _createBlock(SearchInput, {\n key: 0,\n modelValue: registrationsSearchValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((registrationsSearchValue).value = $event)),\n class: \"util--ml-auto\"\n }, null, 8, [\"modelValue\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(Card, {\n title: _unref(t)('activities.selectAnActivity')\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"form\", _hoisted_3, [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormSelect, {\n modelValue: selectedActivityId.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((selectedActivityId).value = $event)),\n label: _unref(t)('activities.activity'),\n options: _unref(activitiesOptions),\n rules: [],\n name: \"activityId\"\n }, null, 8, [\"modelValue\", \"label\", \"options\"]),\n (selectedActivityId.value)\n ? (_openBlock(), _createBlock(FormSelect, {\n key: 0,\n modelValue: selectedActivityOccurrenceId.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((selectedActivityOccurrenceId).value = $event)),\n label: _unref(t)('activities.selectAnOccurrence'),\n options: _unref(activityOccurrencesOptions),\n rules: [],\n name: \"activityOccurrenceId\"\n }, null, 8, [\"modelValue\", \"label\", \"options\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ])\n ]),\n _: 1\n }, 8, [\"title\"]),\n (selectedActivityOccurrenceId.value.length)\n ? (_openBlock(), _createBlock(Card, {\n key: 0,\n title: _unref(t)('registrations.registrations')\n }, {\n default: _withCtx(() => [\n (registrations.value.length)\n ? (_openBlock(), _createBlock(ActivityRegistrationTable, {\n key: 0,\n \"activity-occurrence-id\": selectedActivityOccurrenceId.value,\n \"onUpdate:activityOccurrenceId\": _cache[3] || (_cache[3] = ($event: any) => ((selectedActivityOccurrenceId).value = $event)),\n registrations: registrations.value,\n \"onUpdate:registrations\": _cache[4] || (_cache[4] = ($event: any) => ((registrations).value = $event)),\n registrationsAreLoading: registrationsAreLoading.value,\n \"onUpdate:registrationsAreLoading\": _cache[5] || (_cache[5] = ($event: any) => ((registrationsAreLoading).value = $event)),\n registrationsSearchValue: registrationsSearchValue.value,\n \"onUpdate:registrationsSearchValue\": _cache[6] || (_cache[6] = ($event: any) => ((registrationsSearchValue).value = $event)),\n onRegistrationDeleted: fetchActivityRegistrations\n }, null, 8, [\"activity-occurrence-id\", \"registrations\", \"registrationsAreLoading\", \"registrationsSearchValue\"]))\n : (_openBlock(), _createElementBlock(\"p\", _hoisted_4, _toDisplayString(_unref(t)('registrations.emptyRegistrations')), 1))\n ]),\n _: 1\n }, 8, [\"title\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminActivityOccurrenceRegistrations.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminActivityOccurrenceRegistrations.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage content-grid--subpage-table\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = { class: \"back-link-title\" }\nconst _hoisted_4 = { class: \"content-grid__filters\" }\n\nimport Card from \"@/components/layout/Card.vue\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport SearchInput from \"@/components/layout/SearchInput.vue\";\nimport { useI18n } from \"vue3-i18n\";\nimport {ref, onMounted, computed} from \"vue\";\nimport { useOrganizationService } from \"@/inversify.config\";\nimport DataTable from \"@/components/layout/DataTable.vue\";\nimport {IOrganization} from \"@/types/entities/organization\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminOrganizationIndex',\n setup(__props) {\n\nconst { t } = useI18n();\n\nconst organizationService = useOrganizationService();\n\nconst allOrganizations = ref();\nconst searchValue = ref(\"\");\nconst organizationsAreLoading = ref(false);\n\nconst organizationHeader = [\n {\n text: t(\"organization.name\"),\n value: \"name\",\n sortable: true,\n width: 325,\n },\n {\n text: t(\"organization.status\"),\n value: \"status\",\n sortable: true,\n width: 150,\n },\n {\n text: t(\"organization.type\"),\n value: \"type\",\n sortable: true,\n width: 125,\n },\n {\n text: t(\"organization.memberNumber\"),\n value: \"memberNumber\",\n sortable: true,\n width: 150,\n },\n {\n text: t(\"global.table.actions\"),\n value: \"actions\",\n width: 75\n },\n];\n\nconst organizations = computed(() => {\n if (allOrganizations.value == null) {\n return []\n }\n return allOrganizations.value.map((x: IOrganization) => {\n return {\n id: x.id,\n crmId: x.crmId,\n name: x.name,\n type: t(`organization.types.${x.type.makeFirstLetterLowercase()}`),\n memberNumber: x.memberNumber,\n status: t(`organization.statuses.${x.subscriptionStatus.makeFirstLetterLowercase()}`),\n actions: {\n view: {name: \"admin.children.organizations.view\", params: {organizationId: x.id}}\n }\n }\n }) as IOrganization[];\n})\n\nonMounted(async () => {\n await loadAllOrganizations();\n});\n\nasync function loadAllOrganizations() {\n organizationsAreLoading.value = true;\n\n let organizations = await organizationService.getAllOrganizations();\n if (organizations && organizations.length > 0) {\n allOrganizations.value = organizations;\n }\n organizationsAreLoading.value = false;\n}\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.organizations.name`)\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"h1\", _hoisted_3, _toDisplayString(_unref(t)(`routes.admin.children.organizations.name`)), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(SearchInput, {\n modelValue: searchValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((searchValue).value = $event))\n }, null, 8, [\"modelValue\"])\n ])\n ]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(DataTable, {\n headers: organizationHeader,\n items: organizations.value,\n \"is-loading\": organizationsAreLoading.value,\n \"search-value\": searchValue.value\n }, null, 8, [\"items\", \"is-loading\", \"search-value\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminOrganizationIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminOrganizationIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, withCtx as _withCtx, createBlock as _createBlock, Suspense as _Suspense } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"util--text-grey\"\n}\n\nimport Loader from \"@/components/layout/Loader.vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {useOrganizationService} from \"@/inversify.config\";\nimport {computed, onMounted, ref} from \"vue\";\nimport Card from \"@/components/layout/Card.vue\";\nimport MemberTable from \"@/components/tables/MemberTable.vue\";\nimport ContactTable from \"@/components/tables/ContactTable.vue\";\nimport InvoiceTable from \"@/components/tables/InvoiceTable.vue\";\nimport {IFullOrganization} from \"@/types/entities/organization\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {getFileFromUrl} from \"@/helpers\";\nimport {Invoice} from \"@/types/entities\";\nimport {OrganizationType, Role} from \"@/types\";\nimport OrganizationForm from \"@/components/forms/OrganizationForm.vue\";\nimport {IEditOrganizationRequest} from \"@/types/requests\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminOrganizationForm',\n props: {\n organizationId: {}\n },\n setup(__props: any) {\n\nconst props = __props;\n\nconst {t} = useI18n()\nconst memberStore = useMemberStore();\nconst organizationService = useOrganizationService();\n\nconst organizationLogo = ref()\nconst organization = ref();\nconst organizationIsLoading = ref(false);\n\nlet organizationInvoices = computed(() => {\n if (!organization.value)\n return []\n\n if (!memberStore.hasRole(Role.RegularSyndicateCoOwner))\n return getSubscriptionInvoices();\n return []\n})\n\nconst addMemberPath = {name: 'admin.children.organizations.addMember', params: {organizationId: props.organizationId}};\nconst addContactPath = {\n name: 'admin.children.organizations.addContact',\n params: {organizationId: props.organizationId}\n};\n\nonMounted(() => {\n loadOrganization()\n})\n\nasync function loadOrganization() {\n organizationIsLoading.value = true;\n\n let fullOrganization = await organizationService.getOrganizationWithId(props.organizationId)\n if (fullOrganization) {\n organization.value = fullOrganization;\n if (fullOrganization.logo)\n organizationLogo.value = await getFileFromUrl(fullOrganization.logo, fullOrganization.logo)\n }\n organizationIsLoading.value = false;\n}\n\nfunction getSubscriptionInvoices(): Invoice[] {\n if (!organization.value?.subscription.invoices?.length)\n return [];\n organization.value?.subscription.invoices?.forEach(x => {\n x.description = `${t(`products.membershipPlan`)} : ${x.createdAt}`\n })\n return organization.value?.subscription.invoices;\n}\n\nasync function onImageChange(file: File) {\n organizationLogo.value = file\n}\n\nasync function handleSubmit(organization: IFullOrganization) {\n let request: IEditOrganizationRequest = {\n id: organization.id,\n type: organization.type,\n logo: organizationLogo.value,\n email: organization.email,\n phoneNumber: organization.phoneNumber,\n phoneExtension: organization.phoneExtension,\n apartment: organization.apartment,\n street: organization.street,\n city: organization.city,\n zipCode: organization.zipCode,\n enterpriseNumber: organization.enterpriseNumber,\n website: organization.website,\n numberOfUnits: organization.numberOfUnits,\n yearsOfExperience: organization.yearsOfExperience,\n activityAreas: organization.activityAreas,\n descriptionFr: organization.descriptionFr,\n descriptionEn: organization.descriptionEn,\n hasContingencyFundCertification: organization.hasContingencyFundCertification\n };\n let succeededOrNotResponse = await organizationService.editOrganizationWithId(props.organizationId, request)\n if (succeededOrNotResponse && succeededOrNotResponse.succeeded) {\n notifySuccess(t('validation.organization.update.success'))\n } else {\n let errorMessages = succeededOrNotResponse.getErrorMessages(\n 'validation.organization.update', 'validation.organization.update.errorOccured');\n notifyError(errorMessages[0])\n }\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(_Suspense, null, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.organizations.view.name`)\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(BackLinkTitle, {\n title: _unref(t)('routes.admin.children.organizations.view.name')\n }, null, 8, [\"title\"]),\n (organization.value)\n ? (_openBlock(), _createElementBlock(\"p\", _hoisted_3, _toDisplayString(`${_unref(t)('organization.modifiedOn')} ${organization.value.lastModified.toLocalDateTimeString()}`), 1))\n : _createCommentVNode(\"\", true)\n ]),\n (organization.value)\n ? (_openBlock(), _createBlock(Card, {\n key: 0,\n title: organization.value.name\n }, {\n default: _withCtx(() => [\n _createVNode(OrganizationForm, {\n modelValue: organization.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((organization).value = $event)),\n onSubmit: handleSubmit,\n onOnImageChange: onImageChange\n }, null, 8, [\"modelValue\"])\n ]),\n _: 1\n }, 8, [\"title\"]))\n : _createCommentVNode(\"\", true),\n (organization.value)\n ? (_openBlock(), _createBlock(MemberTable, {\n key: 1,\n \"card-link-path\": addMemberPath,\n \"hide-card-link\": organization.value.type == _unref(OrganizationType).Corporate && organization.value.members.length > 0,\n \"is-loading\": organizationIsLoading.value,\n members: organization.value.members,\n \"organization-id\": organization.value.id.toString()\n }, null, 8, [\"hide-card-link\", \"is-loading\", \"members\", \"organization-id\"]))\n : _createCommentVNode(\"\", true),\n (organization.value && organization.value.type === _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(ContactTable, {\n key: 2,\n \"card-link-path\": addContactPath,\n contacts: organization.value.contacts,\n \"is-loading\": organizationIsLoading.value,\n \"organization-id\": organization.value.id.toString()\n }, null, 8, [\"contacts\", \"is-loading\", \"organization-id\"]))\n : _createCommentVNode(\"\", true),\n (organization.value)\n ? (_openBlock(), _createBlock(InvoiceTable, {\n key: 3,\n invoices: _unref(organizationInvoices),\n \"is-loading\": organizationIsLoading.value\n }, null, 8, [\"invoices\", \"is-loading\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n fallback: _withCtx(() => [\n _createVNode(Loader)\n ]),\n _: 1\n }))\n}\n}\n\n})","\n\n\n","import script from \"./AdminOrganizationForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminOrganizationForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","export enum PlanType {\n Syndicate,\n CoOwner,\n Corporate,\n}","import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nimport { computed, ref, watch } from \"vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\n\nimport { useI18n } from \"vue3-i18n\";\nimport { min, required } from \"@/validation/rules\";\nimport {Plan, PlanType} from \"@/types/entities/plan\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MembershipForm',\n props: {\n value: {}\n },\n emits: [\"planUpdated\"],\n setup(__props: any, { emit: __emit }) {\n\nconst { t } = useI18n()\n\n// eslint-disable-next-line\nconst props = __props;\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst plan = ref(props.value)\nconst accountCode = ref(props.value.product?.accountingSoftwareProduct?.accountCode ?? {})\nconst itemCode = ref(props.value.product?.accountingSoftwareProduct?.itemCode ?? {})\nconst price = ref(props.value.product?.price)\n\n\nconst priceInputLabel = computed(() => {\n if (plan.value.type == PlanType.Syndicate)\n return t(`memberships.form.unitPrice${plan.value.unitsMin != undefined && plan.value.unitsMin > 1 ? plan.value.unitsMin : ''\n }${plan.value.unitsMax != undefined && plan.value.unitsMax > 1 ? `And${plan.value.unitsMax}` : ''}units`);\n else return t(`memberships.form.unitPrice`)\n})\n\nconst accountCodeInputLabel = computed(() => {\n let label = t(`memberships.form.accountCode`)\n if (plan.value.unitsMin == null)\n label += \" \" + plan.value.chapter\n return label\n})\n\n\nwatch(props, (newVal) => {\n plan.value = newVal.value\n accountCode.value = newVal.value.product?.accountingSoftwareProduct?.accountCode ?? {}\n itemCode.value = newVal.value.product?.accountingSoftwareProduct?.itemCode ?? {}\n price.value = newVal.value.product?.price\n}, { immediate: true, deep: true })\n\nwatch(accountCode, (newVal) => {\n if(plan.value.product?.accountingSoftwareProduct != null)\n plan.value.product.accountingSoftwareProduct.accountCode = newVal\n emit('planUpdated', plan.value)\n}, { immediate: true, deep: true })\n\nwatch(itemCode, (newVal) => {\n if(plan.value.product?.accountingSoftwareProduct != null)\n plan.value.product.accountingSoftwareProduct.itemCode = newVal\n emit('planUpdated', plan.value)\n}, { immediate: true, deep: true })\n\nwatch(price, (newVal) => {\n if(plan.value.product != null){\n plan.value.product.price = newVal;\n emit('planUpdated', plan.value)\n }\n})\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(FormRow, { \"with-three-columns\": \"\" }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: `accountCodeEl-${plan.value.id}`,\n name: `accountCode-${plan.value.id}`,\n type: \"text\",\n label: accountCodeInputLabel.value,\n modelValue: accountCode.value.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((accountCode.value.value) = $event))\n }, null, 8, [\"name\", \"label\", \"modelValue\"]),\n _createVNode(FormInput, {\n ref: `itemCodeEl-${plan.value.id}`,\n name: `itemCode-${plan.value.id}`,\n type: \"text\",\n label: _unref(t)(`memberships.form.itemCode`),\n modelValue: itemCode.value.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((itemCode.value.value) = $event))\n }, null, 8, [\"name\", \"label\", \"modelValue\"]),\n _createVNode(FormInput, {\n ref: `priceEl-${plan.value.id}`,\n name: `price-${plan.value.id}`,\n type: \"text\",\n label: priceInputLabel.value,\n rules: [_unref(min)(0), _unref(required)],\n modelValue: price.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((price).value = $event)),\n modelModifiers: { number: true }\n }, null, 8, [\"name\", \"label\", \"rules\", \"modelValue\"])\n ]),\n _: 1\n }))\n}\n}\n\n})","\n\n\n","import script from \"./MembershipForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MembershipForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"form__legend\" }\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'Legend',\n props: {\n title: {}\n },\n setup(__props: any) {\n\r\n// eslint-disable-next-line\r\n\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"legend\", _hoisted_1, [\n _createElementVNode(\"h3\", null, _toDisplayString(_ctx.title), 1)\n ]))\n}\n}\n\n})","import script from \"./Legend.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./Legend.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, withCtx as _withCtx, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { class: \"form__submit btn btn--fullscreen\" }\n\nimport { computed, onBeforeMount, ref, watch } from \"vue\";\nimport FormTooltip from \"@/components/forms/FormTooltip.vue\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport FormErrorsList from \"@/components/forms/FormErrorsList.vue\";\nimport Fieldset from \"@/components/forms/Fieldset.vue\";\nimport MembershipForm from \"@/components/memberships/MembershipForm.vue\";\nimport Legend from \"@/components/layout/Legend.vue\";\nimport { useMembershipService } from \"@/inversify.config\";\n\nimport { useI18n } from \"vue3-i18n\";\nimport { notifyError, notifySuccess } from \"@/notify\";\nimport { SucceededOrNotResponse } from \"@/types/responses/succeededOrNotResponse\";\nimport {Plan, PlanType} from \"@/types/entities/plan\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MembershipsForm',\n setup(__props) {\n\nconst { t } = useI18n()\nconst membershipService = useMembershipService()\n\nconst memberships = ref([])\nconst taxName = ref()\nconst coOwnerPlans = computed(() => memberships.value.filter(x => x.type == PlanType.CoOwner))\nconst corporatePlans = computed(() => memberships.value.filter(x => x.type == PlanType.Corporate))\nconst syndicatePlans = computed(() => memberships.value.filter(x => x.type == PlanType.Syndicate).sort((a, b) => (a.unitsMin ?? 0) - (b.unitsMin ?? 0)))\nconst groupedByChapterSyndicatePlans = computed(() => {\n return syndicatePlans.value.reduce((result: any, obj: Plan) => {\n const chapter = obj.chapter ?? \"\";\n if (!result[chapter]) {\n result[chapter] = [];\n }\n result[chapter].push(obj);\n return result;\n }, {});\n})\n\nonBeforeMount(async () => {\n memberships.value = await getMemberships();\n taxName.value = memberships.value.length ? memberships.value[0].product?.accountingSoftwareProduct?.taxName : \"\"\n})\n\nasync function getMemberships() {\n return await membershipService.getMemberships() as Plan[]\n}\n\nasync function updateMemberships(value: Plan[]) {\n return await membershipService.updateMemberships(value)\n}\n\nwatch(taxName, (newVal) => {\n memberships.value.forEach(x=>{\n if(x.product?.accountingSoftwareProduct != null)\n x.product.accountingSoftwareProduct.taxName = newVal\n })\n})\n\nfunction updateMembership(value: Plan) {\n var membership = memberships.value.find(x => x.id == value.id)\n if (membership != null) membership = value\n\n let accountcode = membership?.product?.accountingSoftwareProduct?.accountCode\n updateAccountCodes(accountcode?.value ?? \"\", accountcode?.id ?? \"\")\n\n let itemCode = membership?.product?.accountingSoftwareProduct?.itemCode\n updateItemCodes(itemCode?.value ?? \"\", itemCode?.id ?? \"\")\n}\n\nasync function updateAccountCodes(value: string, id:string) {\n memberships.value = memberships.value.map(x=> {\n let accountCode = x.product?.accountingSoftwareProduct?.accountCode;\n if(accountCode?.id == id) {\n accountCode.value = value;\n }\n return x;\n })\n}\n\nasync function updateItemCodes(value: string, id:string) {\n memberships.value = memberships.value.map(x=> {\n let itemCode = x.product?.accountingSoftwareProduct?.itemCode;\n if(itemCode?.id == id) itemCode.value = value;\n return x;\n })\n}\n\nconst errorsMessages = ref([])\nfunction displayErrors(response: SucceededOrNotResponse) {\n response = new SucceededOrNotResponse(response.succeeded, response.errors)\n if (response?.succeeded != undefined && !response?.succeeded) {\n errorsMessages.value = response.getErrorMessages('validation.membership')\n }\n else errorsMessages.value = []\n}\n\nasync function handleSubmit() {\n const valid = handleValidation()\n if (!valid) {\n notifyError(t('global.formErrorNotification'))\n return\n }\n\n errorsMessages.value = []\n let response = await updateMemberships(memberships.value)\n\n if ((response as SucceededOrNotResponse)?.succeeded != undefined && !(response as SucceededOrNotResponse)?.succeeded) {\n notifyError(t('global.formErrorNotification'))\n displayErrors(response as SucceededOrNotResponse)\n }\n else {\n notifySuccess(t('memberships.form.successMessage'))\n memberships.value = response as Plan[]\n }\n\n}\n\nfunction handleValidation() {\n let valid = memberships.value.length > 0 && memberships.value.every((x: Plan) => {\n return (x.product?.accountingSoftwareProduct?.accountCode?.value?.length ?? 0 > 0) &&\n (x.product?.accountingSoftwareProduct?.itemCode?.value?.length ?? 0 > 0) &&\n ((x.product?.price ?? 0) >= 0) &&\n (x.product?.accountingSoftwareProduct?.taxName?.length ?? 0 > 0)\n })\n return valid \n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n (errorsMessages.value.length)\n ? (_openBlock(), _createBlock(FormErrorsList, {\n key: 0,\n title: _unref(t)('global.formErrorNotification'),\n errorsList: errorsMessages.value\n }, null, 8, [\"title\", \"errorsList\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(Fieldset, {\n title: _unref(t)(`memberships.form.unitPriceCorpo`)\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(corporatePlans.value, (membership) => {\n return (_openBlock(), _createBlock(MembershipForm, {\n key: membership.id,\n value: membership,\n onPlanUpdated: updateMembership\n }, null, 8, [\"value\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(Fieldset, {\n title: _unref(t)(`memberships.form.unitPriceCoOwner`)\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(coOwnerPlans.value, (membership) => {\n return (_openBlock(), _createBlock(MembershipForm, {\n key: membership.id,\n value: membership,\n onPlanUpdated: updateMembership\n }, null, 8, [\"value\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(Legend, {\n title: _unref(t)(`memberships.form.unitPriceRegular`)\n }, null, 8, [\"title\"]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(groupedByChapterSyndicatePlans.value, (plans, chapter) => {\n return (_openBlock(), _createBlock(Fieldset, {\n key: chapter,\n title: chapter\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(plans, (plan, index) => {\n return (_openBlock(), _createBlock(MembershipForm, {\n key: `${chapter}-${index}`,\n value: plan,\n onPlanUpdated: updateMembership\n }, null, 8, [\"value\"]))\n }), 128))\n ]),\n _: 2\n }, 1032, [\"title\"]))\n }), 128)),\n _createVNode(Fieldset, {\n title: _unref(t)(`memberships.tax`)\n }, {\n default: _withCtx(() => [\n _createVNode(FormRow, { \"with-three-columns\": \"\" }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: `taxNameEl`,\n name: `taxName`,\n type: \"text\",\n label: _unref(t)(`memberships.form.taxName`),\n modelValue: taxName.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((taxName).value = $event))\n }, null, 8, [\"label\", \"modelValue\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(FormTooltip, null, {\n default: _withCtx(() => [\n _createElementVNode(\"p\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_unref(t)('memberships.form.invalidTaxTypeMessage')), 1)\n ])\n ]),\n _: 1\n }),\n _createElementVNode(\"button\", _hoisted_2, _toDisplayString(_unref(t)('global.save')), 1)\n ], 40, _hoisted_1))\n}\n}\n\n})","\n\n\n","import script from \"./MembershipsForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MembershipsForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = { class: \"back-link-title\" }\n\nimport Card from '@/components/layout/Card.vue';\nimport Breadcrumbs from '@/components/layout/Breadcrumbs.vue';\nimport MembershipsForm from '@/components/memberships/MembershipsForm.vue';\n\nimport { useI18n } from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminMembershipsIndex',\n setup(__props) {\n\nconst { t } = useI18n()\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)('routes.admin.children.memberships.name')\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"h1\", _hoisted_3, _toDisplayString(_unref(t)(`routes.admin.children.memberships.name`)), 1)\n ]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(MembershipsForm)\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminMembershipsIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminMembershipsIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, Fragment as _Fragment, createElementBlock as _createElementBlock } from \"vue\"\n\nimport DataTable from \"@/components/layout/DataTable.vue\";\nimport SearchInput from \"@/components/layout/SearchInput.vue\";\nimport {computed, ref, watch} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {ActivityRegistration, Participant} from \"@/types/entities/activity\";\nimport {Guid} from \"@/types\";\n\ninterface propsInterface {\n participants: Participant[],\n activityRegistration: ActivityRegistration | undefined,\n isLessThanTwoDays: boolean\n}\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MemberActivityParticipantTable',\n props: {\n participants: {},\n activityRegistration: {},\n isLessThanTwoDays: { type: Boolean }\n },\n emits: [\"deleteParticipant\"],\n setup(__props: any, { emit: __emit }) {\n\nconst {t} = useI18n();\n\n// eslint-disable-next-line\nconst props = __props;\n\n// eslint-disable-next-line\nconst emit = __emit;\n\nconst participants = ref(props.participants);\nconst isLessThanTwoDays = ref(props.isLessThanTwoDays);\nconst activityRegistration = ref(props.activityRegistration);\nconst participantsSearchValue = ref(\"\")\n\nwatch(props, (newProps) => {\n participants.value = newProps.participants;\n isLessThanTwoDays.value = newProps.isLessThanTwoDays;\n activityRegistration.value = newProps.activityRegistration;\n});\n\nasync function handleDelete(participant: any) {\n if (participant?.id == null || !Guid.isValid(participant.id ?? \"\"))\n return;\n\n let confirmDelete = confirm(t(\"participants.form.deleteConfirmation\"));\n if (!confirmDelete)\n return;\n\n emit(\"deleteParticipant\", participant.id)\n}\n\n// DataTable\nconst participantsHeader = computed(() => {\n let headers = [\n {\n text: t(\"participants.lastName\"),\n value: \"lastName\",\n sortable: true\n },\n {\n text: t(\"participants.firstName\"),\n value: \"firstName\",\n sortable: true\n },\n {\n text: t(\"participants.email\"),\n value: \"emailAddress\",\n sortable: true\n },\n {\n text: t(\"participants.allergies\"),\n value: \"allergies\",\n sortable: true\n },\n {\n text: t(\"participants.reducedMobility\"),\n value: \"reducedMobility\",\n sortable: true\n }\n ];\n\n if (!isLessThanTwoDays.value) {\n headers.push({\n text: t(\"global.table.actions\"),\n value: \"actions\",\n sortable: false\n })\n }\n return headers;\n})\n\nconst participantsItems = computed(() => {\n let items: any[] = [];\n if (participants.value != null && participants.value.length > 0) {\n participants.value.forEach((participant: Participant) => {\n items.push({\n ...participant,\n allergies: participant.allergies?.length ? participant.allergies : t('global.undefined'),\n reducedMobility: participant.reducedMobility ? t('global.yes') : t('global.no'),\n actions: {\n delete: !isLessThanTwoDays.value\n },\n });\n });\n }\n\n return items\n})\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (participantsItems.value.length)\n ? (_openBlock(), _createBlock(SearchInput, {\n key: 0,\n modelValue: participantsSearchValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((participantsSearchValue).value = $event)),\n class: \"util--ml-auto\"\n }, null, 8, [\"modelValue\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(DataTable, {\n headers: participantsHeader.value,\n items: participantsItems.value,\n \"search-value\": participantsSearchValue.value,\n onDelete: handleDelete\n }, null, 8, [\"headers\", \"items\", \"search-value\"])\n ], 64))\n}\n}\n\n})","\n\n","import script from \"./MemberActivityParticipantTable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MemberActivityParticipantTable.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, unref as _unref, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = { key: 2 }\n\nimport {useI18n} from \"vue3-i18n\";\r\nimport {computed, onMounted, ref} from \"vue\";\r\nimport {ActivityRegistration, Guid} from \"@/types\";\r\nimport SearchInput from \"@/components/layout/SearchInput.vue\";\r\nimport DataTable from \"@/components/layout/DataTable.vue\";\r\nimport {SucceededOrNotResponse} from \"@/types/responses\";\r\nimport {notifyError, notifySuccess} from \"@/notify\";\r\nimport {useMemberService} from \"@/inversify.config\";\r\nimport i18n from \"@/i18n\";\r\nimport '@/extensions/date.extensions';\r\n\r\n// eslint-disable-next-line\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MemberActivityTable',\n emits: [\"activityRegistrationSelected\"],\n setup(__props, { emit: __emit }) {\n\r\nconst emit = __emit\r\n\r\nconst {t} = useI18n()\r\nconst memberService = useMemberService()\r\n\r\nconst registrationsSearchValue = ref(\"\");\r\nconst activityRegistrations = ref([])\r\n\r\nonMounted(async () => {\r\n await fetchActivityRegistration();\r\n})\r\n\r\nasync function handleDelete(activityRegistration: any) {\r\n if (activityRegistration?.id == null || !Guid.isValid(activityRegistration.id ?? \"\"))\r\n return;\r\n\r\n let confirmDelete = confirm(t(\"registrations.form.deleteConfirmation\"));\r\n if (!confirmDelete) return;\r\n\r\n let result: SucceededOrNotResponse = await memberService.deleteCurrentMemberActivityRegistration(activityRegistration.id);\r\n\r\n if (result?.succeeded) {\r\n notifySuccess(t(\"registrations.form.deleteSuccess\"));\r\n await fetchActivityRegistration();\r\n } else {\r\n notifyError(t(\"registrations.form.deleteError\"));\r\n }\r\n}\r\n\r\nfunction handleUpdateRedirect(id: string) {\r\n emit(\"activityRegistrationSelected\", id)\r\n}\r\n\r\nasync function fetchActivityRegistration() {\r\n let response = await memberService.getCurrentMemberActivityRegistrations()\r\n activityRegistrations.value = response as ActivityRegistration[];\r\n}\r\n\r\nconst registrationsHeaders = [\r\n {\r\n text: t(\"activities.activity\"),\r\n value: \"activityName\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"organization.status\"),\r\n value: \"status\",\r\n sortable: true\r\n },\r\n {\r\n text: t(\"activities.form.startDate\"),\r\n value: \"activityOccurrenceStartDate\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"activities.form.startsAt\"),\r\n value: \"activityOccurrenceStartTime\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"participants.lastName\"),\r\n value: \"lastName\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"participants.firstName\"),\r\n value: \"firstName\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"participants.participants\"),\r\n value: \"participantsCount\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"invoice.isPaid\"),\r\n value: \"isPaid\",\r\n sortable: true,\r\n },\r\n {\r\n text: t(\"global.table.actions\"),\r\n value: \"actions\",\r\n },\r\n];\r\n\r\nconst registrationsItems = computed(() => {\r\n let items: any[] = [];\r\n if (activityRegistrations.value === null || activityRegistrations.value.length == 0)\r\n return []\r\n\r\n let lang = i18n.getLocale()\r\n\r\n let now = new Date();\r\n activityRegistrations.value.forEach((registration: ActivityRegistration) => {\r\n let activityName = (lang == 'fr' ? registration.activityNameFr : registration.activityNameEn) ?? '';\r\n\r\n let occurrenceStartDateTime = new Date(registration.activityOccurrenceStartDateAndTime ?? '');\r\n let status = registration.deletedActivityOccurrence\r\n ? t(\"activityOccurrences.canceled\")\r\n : occurrenceStartDateTime > now\r\n ? t(\"activityOccurrences.upcoming\")\r\n : t(\"activityOccurrences.completed\");\r\n\r\n items.push({\r\n id: registration.id,\r\n activityName: activityName,\r\n activityOccurrenceStartDate: occurrenceStartDateTime.formatToDateString(),\r\n activityOccurrenceStartTime: occurrenceStartDateTime.formatToTimeString(),\r\n firstName: registration.billingAddress?.firstName,\r\n lastName: registration.billingAddress?.lastName,\r\n email: registration.billingAddress?.email,\r\n participantsCount: registration.participants?.length,\r\n isPaid: registration.isFree ? t(\"global.free\") : registration.isPaid ? t(\"global.yes\") : t(\"global.no\"),\r\n status: status,\r\n actions: {\r\n redirect: !registration.deletedActivityOccurrence,\r\n delete: registration.deletedActivityOccurrence ? false : new Date(registration.activityOccurrenceStartDateAndTime ?? \"\").hoursBetweenToday() >= 48\r\n }\r\n })\r\n })\r\n\r\n return items\r\n .sort((a, b) => new Date(b.activityOccurrenceStartDate ?? \"\").valueOf() - new Date(a.activityOccurrenceStartDate ?? \"\").valueOf());\r\n})\r\n\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (activityRegistrations.value.length)\n ? (_openBlock(), _createBlock(SearchInput, {\n key: 0,\n modelValue: registrationsSearchValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((registrationsSearchValue).value = $event)),\n class: \"registrationsHeaders\"\n }, null, 8, [\"modelValue\"]))\n : _createCommentVNode(\"\", true),\n (activityRegistrations.value.length)\n ? (_openBlock(), _createBlock(DataTable, {\n key: 1,\n headers: registrationsHeaders,\n items: registrationsItems.value,\n \"search-value\": registrationsSearchValue.value,\n onDelete: handleDelete,\n onUpdateRedirect: handleUpdateRedirect\n }, null, 8, [\"items\", \"search-value\"]))\n : (_openBlock(), _createElementBlock(\"p\", _hoisted_1, _toDisplayString(_unref(t)('registrations.noRegistrations')), 1))\n ], 64))\n}\n}\n\n})","\r\n\r\n","import script from \"./MemberActivityTable.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MemberActivityTable.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { key: 0 }\nconst _hoisted_2 = { key: 1 }\n\nimport {useI18n} from \"vue3-i18n\";\nimport FormTooltip from \"@/components/forms/FormTooltip.vue\";\nimport Card from '@/components/layout/Card.vue';\nimport MemberActivityParticipantTable from \"@/components/tables/MemberActivityParticipantTable.vue\";\n\nimport {useMemberService} from \"@/inversify.config\";\nimport {computed, onMounted, ref} from \"vue\";\nimport {ActivityRegistration, Participant} from \"@/types\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\nimport MemberActivityTable from \"@/components/tables/MemberActivityTable.vue\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MemberActivities',\n setup(__props) {\n\nconst {t} = useI18n();\nconst memberService = useMemberService()\n\nconst cardTitle = computed(() => isEditMode.value ? t('participants.participants') : t('registrations.registrations'))\nconst isEditMode = ref(false)\n\nconst activityRegistrations = ref([])\nconst selectedActivityRegistration = ref()\nconst participants = ref([])\nconst isLessThanTwoDays = ref(false)\n\nonMounted(async () => {\n await fetchActivityRegistration();\n})\n\nasync function fetchActivityRegistration() {\n let response = await memberService.getCurrentMemberActivityRegistrations()\n activityRegistrations.value = response as ActivityRegistration[];\n}\n\nfunction handleUpdateRedirect(id: string) {\n let activityRegistration = activityRegistrations.value.find(x => x.id == id)\n selectedActivityRegistration.value = activityRegistration;\n participants.value = activityRegistration?.participants ?? []\n isLessThanTwoDays.value = new Date(activityRegistration?.activityOccurrenceStartDateAndTime ?? \"\").hoursBetweenToday() < 48\n isEditMode.value = true\n}\n\nasync function deleteParticipant(participantId: string) {\n let result: SucceededOrNotResponse = await memberService\n .deleteCurrentMemberActivityRegistrationParticipant(selectedActivityRegistration.value?.id ?? \"\", participantId);\n\n if (result?.succeeded) {\n notifySuccess(t(\"participants.form.deleteSuccess\"));\n await fetchActivityRegistration();\n let activityRegistration = activityRegistrations.value.find(x => x.id == selectedActivityRegistration.value?.id ?? \"\")\n participants.value = activityRegistration?.participants ?? []\n isEditMode.value = participants.value.length > 0 // go back to all registrations if no participant is left\n } else {\n notifyError(t(\"participants.form.deleteError\"));\n }\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Card, { title: cardTitle.value }, {\n default: _withCtx(() => [\n (isEditMode.value)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(MemberActivityParticipantTable, {\n \"activity-registration\": selectedActivityRegistration.value,\n \"is-less-than-two-days\": isLessThanTwoDays.value,\n participants: participants.value,\n onDeleteParticipant: deleteParticipant\n }, null, 8, [\"activity-registration\", \"is-less-than-two-days\", \"participants\"]),\n _createElementVNode(\"button\", {\n class: \"btn btn--fullscreen\",\n type: \"button\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (isEditMode.value = !isEditMode.value))\n }, _toDisplayString(_unref(t)(\"global.back\")), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createVNode(MemberActivityTable, { onActivityRegistrationSelected: handleUpdateRedirect })\n ])),\n _createVNode(FormTooltip, { class: \"util--with-top-margin\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"p\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(_unref(t)('registrations.deleteMemberRegistration--tooltip')), 1)\n ])\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"title\"]))\n}\n}\n\n})","\n\n","import script from \"./MemberActivities.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MemberActivities.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = { class: \"back-link-title\" }\n\nimport MemberActivities from '@/components/members/MemberActivities.vue';\n\nimport {useI18n} from \"vue3-i18n\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MemberActivitiesView',\n setup(__props) {\n\nconst {t} = useI18n()\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"h1\", _hoisted_3, _toDisplayString(_unref(t)(`routes.activities.name`)), 1)\n ]),\n _createVNode(MemberActivities)\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./MemberActivitiesView.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MemberActivitiesView.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { id: \"address-list\" }\nconst _hoisted_3 = [\"id\"]\nconst _hoisted_4 = { class: \"form__duo-fields\" }\nconst _hoisted_5 = { class: \"form__submit btn btn--fullscreen\" }\n\nimport {ref} from \"vue\"\r\nimport {useI18n} from \"vue3-i18n\"\r\nimport {notifyError} from \"@/notify\"\r\nimport {mustMatchPhoneNumberFormat, mustMatchZipCodeFormat, required} from \"@/validation/rules\"\r\nimport {Status} from \"@/validation\"\r\nimport {Member} from \"@/types/entities/member\"\r\nimport FormRow from \"@/components/forms/FormRow.vue\"\r\nimport FormInput from \"@/components/forms/FormInput.vue\"\r\nimport FormSelect from \"@/components/forms/FormSelect.vue\";\r\nimport {useAddressService} from \"@/inversify.config\";\r\nimport {IFilterAddressesRequest, IGetAddressRequest} from \"@/types/requests\";\r\nimport {IAddress} from \"@/types/responses\";\r\n\r\n// eslint-disable-next-line no-undef\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'MemberForm',\n props: {\n member: {},\n isSyndicateOrganization: { type: Boolean }\n },\n emits: [\"formSubmit\"],\n setup(__props: any, { emit: __emit }) {\n\r\nconst props = __props\r\n\r\n// eslint-disable-next-line\r\nconst emit = __emit\r\n\r\nconst {t, getLocale} = useI18n()\r\nconst addressService = useAddressService()\r\n\r\nconst addressOptions = ref([])\r\nconst member = ref(props.member ?? {})\r\n\r\nconst jobTitles = [\r\n {\r\n label: t('member.jobTitle.administrator.label'),\r\n name: t('member.jobTitle.administrator.value')\r\n },\r\n {\r\n label: t('member.jobTitle.manager.label'),\r\n name: t('member.jobTitle.manager.value')\r\n },\r\n {\r\n label: t('member.jobTitle.coowner.label'),\r\n name: t('member.jobTitle.coowner.value')\r\n },\r\n]\r\n\r\nconst formInputs = ref<(typeof FormInput)[]>([])\r\nconst inputValidationStatuses: any = {}\r\n\r\nfunction addFormInputRef(ref: typeof FormInput) {\r\n if (!formInputs.value.includes(ref))\r\n formInputs.value.push(ref)\r\n}\r\n\r\nasync function handleValidation(name: string, validationStatus: Status) {\r\n inputValidationStatuses[name] = validationStatus.valid\r\n}\r\n\r\nasync function handleSubmit() {\r\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\r\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\r\n notifyError(t('global.formErrorNotification'))\r\n return\r\n }\r\n emit(\"formSubmit\", member.value)\r\n}\r\n\r\nasync function handleInput(inputValue: string) {\r\n let selectedOptions = addressOptions.value.filter(x => x.text == inputValue)\r\n if (selectedOptions.length > 0) {\r\n let request = {\r\n id: selectedOptions[0].id,\r\n language: getLocale()\r\n } as IGetAddressRequest\r\n let response = await addressService.getAddress(request)\r\n member.value.street = response.detailedAddress.street\r\n member.value.city = response.detailedAddress.city\r\n member.value.zipCode = response.detailedAddress.zipCode.replace(' ', '')\r\n return;\r\n }\r\n await loadMatchingAddresses(inputValue)\r\n}\r\n\r\nasync function loadMatchingAddresses(inputValue: string) {\r\n let request = {\r\n street: inputValue,\r\n language: getLocale()\r\n } as IFilterAddressesRequest\r\n let addresses = await addressService.filterAddresses(request)\r\n addressOptions.value = addresses.matchingAddresses\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.firstName,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((member.value.firstName) = $event)),\n label: _unref(t)('global.firstName'),\n name: \"firstName\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.lastName,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((member.value.lastName) = $event)),\n label: _unref(t)('global.lastName'),\n name: \"lastName\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n (_ctx.isSyndicateOrganization)\n ? (_openBlock(), _createBlock(FormSelect, {\n key: 0,\n ref: addFormInputRef,\n modelValue: member.value.jobTitle,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((member.value.jobTitle) = $event)),\n label: _unref(t)('global.jobTitle'),\n options: jobTitles,\n name: \"jobTitle\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n : (_openBlock(), _createBlock(FormInput, {\n key: 1,\n ref: addFormInputRef,\n modelValue: member.value.jobTitle,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((member.value.jobTitle) = $event)),\n label: _unref(t)('global.jobTitle'),\n name: \"jobTitle\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]))\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.apartment,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((member.value.apartment) = $event)),\n label: _unref(t)('global.apartment'),\n \"not-required\": true,\n rules: [],\n name: \"apartment\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.street,\n \"onUpdate:modelValue\": [\n _cache[5] || (_cache[5] = ($event: any) => ((member.value.street) = $event)),\n handleInput\n ],\n label: _unref(t)('global.street'),\n list: 'address-list',\n name: \"street\",\n type: \"text\",\n onValidated: handleValidation\n }, {\n \"before-input\": _withCtx(() => [\n _createElementVNode(\"datalist\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(addressOptions.value, (address) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n id: address.id,\n key: address.id\n }, _toDisplayString(address.text), 9, _hoisted_3))\n }), 128))\n ])\n ]),\n _: 1\n }, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.city,\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((member.value.city) = $event)),\n label: _unref(t)('global.city'),\n name: \"city\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.zipCode,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((member.value.zipCode) = $event)),\n label: _unref(t)('global.zipCode'),\n rules: [_unref(required), _unref(mustMatchZipCodeFormat)],\n name: \"zipCode\",\n type: \"zip\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.phoneNumber,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = ($event: any) => ((member.value.phoneNumber) = $event)),\n label: _unref(t)('global.phoneNumber'),\n rules: [_unref(required), _unref(mustMatchPhoneNumberFormat)],\n name: \"phoneNumber\",\n type: \"tel\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.phoneExtension,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = ($event: any) => ((member.value.phoneExtension) = $event)),\n label: _unref(t)('global.phoneExtension'),\n rules: [],\n name: \"phoneExtension\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: member.value.email,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = ($event: any) => ((member.value.email) = $event)),\n label: _unref(t)('global.email'),\n name: \"email\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createElementVNode(\"button\", _hoisted_5, _toDisplayString(_unref(t)('global.save')), 1)\n ], 40, _hoisted_1))\n}\n}\n\n})","\r\n\r\n\r\n\r\n","import script from \"./MemberForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./MemberForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport {useI18n} from \"vue3-i18n\";\nimport {useRouter} from \"vue-router\";\nimport {useMemberService, useOrganizationService} from \"@/inversify.config\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {Member} from \"@/types/entities/member\";\nimport {IAddMemberRequest} from \"@/types/requests/addMemberRequest\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\nimport Card from \"@/components/layout/Card.vue\";\nimport MemberForm from \"@/components/forms/MemberForm.vue\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {OrganizationType, Role} from \"@/types\";\nimport {onMounted, ref} from \"vue\";\nimport {IFullOrganization} from \"@/types/entities/organization\";\nimport Loader from \"@/components/layout/Loader.vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AddMemberForm',\n props: {\n organizationId: {}\n },\n setup(__props: any) {\n\nconst props = __props;\n\nconst { t, getLocale } = useI18n()\nconst router = useRouter();\nconst memberStore = useMemberStore()\nconst memberService = useMemberService()\nconst organizationService = useOrganizationService()\n\nlet organization = ref()\n\nonMounted(async () => {\n organization.value = memberStore.hasRole(Role.Admin)\n ? await organizationService.getOrganizationWithId(props.organizationId)\n : await organizationService.getMyOrganization(getLocale())\n})\n\nasync function handleSubmit(member : Member) {\n let succeededOrNotResponse = await memberService.addMember(member as IAddMemberRequest, props.organizationId)\n if (succeededOrNotResponse && succeededOrNotResponse.succeeded) {\n notifySuccess(t('validation.member.add.success'))\n setTimeout(() => {\n router.back();\n }, 1500);\n } else {\n let errorMessages = succeededOrNotResponse.getErrorMessages('validation.member.add');\n if (errorMessages.length == 0) \n notifyError(t('validation.member.add.errorOccured'))\n else\n notifyError(errorMessages[0]) \n }\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.organizations.addMember.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.organizations.addMember.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n (_unref(organization))\n ? (_openBlock(), _createBlock(MemberForm, {\n key: 0,\n \"is-syndicate-organization\": _unref(organization)?.type === _unref(OrganizationType).RegularSyndicate,\n onFormSubmit: handleSubmit\n }, null, 8, [\"is-syndicate-organization\"]))\n : (_openBlock(), _createBlock(Loader, {\n key: 1,\n \"is-inline\": true\n }))\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AddMemberForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AddMemberForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { id: \"address-list\" }\nconst _hoisted_3 = [\"id\"]\nconst _hoisted_4 = { class: \"form__duo-fields\" }\nconst _hoisted_5 = { class: \"form__submit btn btn--fullscreen\" }\n\nimport {ref} from \"vue\"\r\nimport {useI18n} from \"vue3-i18n\"\r\nimport {notifyError} from \"@/notify\"\r\nimport {mustMatchPhoneNumberFormat, mustMatchZipCodeFormat, required} from \"@/validation/rules\"\r\nimport {Status} from \"@/validation\"\r\nimport {Contact} from \"@/types/entities/contact\"\r\nimport FormRow from \"@/components/forms/FormRow.vue\"\r\nimport FormInput from \"@/components/forms/FormInput.vue\"\r\nimport {IFilterAddressesRequest, IGetAddressRequest} from \"@/types/requests\";\r\nimport {IAddress} from \"@/types/responses\";\r\nimport {useAddressService} from \"@/inversify.config\";\r\n\r\n// eslint-disable-next-line no-undef\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ContactForm',\n props: {\n contact: {}\n },\n emits: [\"formSubmit\"],\n setup(__props: any, { emit: __emit }) {\n\r\nconst props = __props\r\n\r\n// eslint-disable-next-line\r\nconst emit = __emit\r\n\r\nconst {t, getLocale} = useI18n()\r\nconst addressService = useAddressService()\r\n\r\nconst addressOptions = ref([])\r\nconst contact = ref(props.contact ?? {})\r\n\r\nconst formInputs = ref<(typeof FormInput)[]>([])\r\nconst inputValidationStatuses: any = {}\r\n\r\nfunction addFormInputRef(ref: typeof FormInput) {\r\n if (!formInputs.value.includes(ref))\r\n formInputs.value.push(ref)\r\n}\r\n\r\nasync function handleValidation(name: string, validationStatus: Status) {\r\n inputValidationStatuses[name] = validationStatus.valid\r\n}\r\n\r\nasync function handleSubmit() {\r\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\r\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\r\n notifyError(t('global.formErrorNotification'))\r\n return\r\n }\r\n emit(\"formSubmit\", contact.value)\r\n}\r\n\r\nasync function handleInput(inputValue: string) {\r\n let selectedOptions = addressOptions.value.filter(x => x.text == inputValue)\r\n if (selectedOptions.length > 0) {\r\n let request = {\r\n id: selectedOptions[0].id,\r\n language: getLocale()\r\n } as IGetAddressRequest\r\n let response = await addressService.getAddress(request)\r\n contact.value.street = response.detailedAddress.street\r\n contact.value.city = response.detailedAddress.city\r\n contact.value.zipCode = response.detailedAddress.zipCode.replace(' ', '')\r\n return;\r\n }\r\n await loadMatchingAddresses(inputValue)\r\n}\r\n\r\nasync function loadMatchingAddresses(inputValue: string) {\r\n let request = {\r\n street: inputValue,\r\n language: getLocale()\r\n } as IFilterAddressesRequest\r\n let addresses = await addressService.filterAddresses(request)\r\n addressOptions.value = addresses.matchingAddresses\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.firstName,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((contact.value.firstName) = $event)),\n label: _unref(t)('global.firstName'),\n name: \"firstName\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.lastName,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((contact.value.lastName) = $event)),\n label: _unref(t)('global.lastName'),\n name: \"lastName\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.jobTitle,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((contact.value.jobTitle) = $event)),\n label: _unref(t)('global.jobTitle'),\n rules: [],\n name: \"jobTitle\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.apartment,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((contact.value.apartment) = $event)),\n label: _unref(t)('global.apartment'),\n \"not-required\": true,\n rules: [],\n name: \"apartment\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.street,\n \"onUpdate:modelValue\": [\n _cache[4] || (_cache[4] = ($event: any) => ((contact.value.street) = $event)),\n handleInput\n ],\n label: _unref(t)('global.street'),\n list: 'address-list',\n name: \"street\",\n type: \"text\",\n onValidated: handleValidation\n }, {\n \"before-input\": _withCtx(() => [\n _createElementVNode(\"datalist\", _hoisted_2, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(addressOptions.value, (address) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n id: address.id,\n key: address.id\n }, _toDisplayString(address.text), 9, _hoisted_3))\n }), 128))\n ])\n ]),\n _: 1\n }, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.city,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((contact.value.city) = $event)),\n label: _unref(t)('global.city'),\n name: \"city\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.zipCode,\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((contact.value.zipCode) = $event)),\n label: _unref(t)('global.zipCode'),\n rules: [_unref(required), _unref(mustMatchZipCodeFormat)],\n name: \"zipCode\",\n type: \"zip\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.phoneNumber,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((contact.value.phoneNumber) = $event)),\n label: _unref(t)('global.phoneNumber'),\n rules: [_unref(required), _unref(mustMatchPhoneNumberFormat)],\n name: \"phoneNumber\",\n type: \"tel\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"rules\"]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.phoneExtension,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = ($event: any) => ((contact.value.phoneExtension) = $event)),\n label: _unref(t)('global.phoneExtension'),\n rules: [],\n name: \"phoneExtension\",\n type: \"number\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _createVNode(FormInput, {\n ref: addFormInputRef,\n modelValue: contact.value.email,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = ($event: any) => ((contact.value.email) = $event)),\n label: _unref(t)('global.email'),\n name: \"email\",\n type: \"text\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createElementVNode(\"button\", _hoisted_5, _toDisplayString(_unref(t)('global.save')), 1)\n ], 40, _hoisted_1))\n}\n}\n\n})","\r\n\r\n\r\n","import script from \"./ContactForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ContactForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport {useI18n} from \"vue3-i18n\";\nimport {useRouter} from \"vue-router\";\nimport {useContactService} from \"@/inversify.config\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {Contact} from \"@/types/entities/contact\";\nimport {IAddContactRequest} from \"@/types/requests/addContactRequest\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\nimport Card from \"@/components/layout/Card.vue\";\nimport ContactForm from \"@/components/forms/ContactForm.vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AddContactForm',\n props: {\n organizationId: {}\n },\n setup(__props: any) {\n\nconst props = __props;\n\nconst {t} = useI18n()\nconst router = useRouter();\nconst contactService = useContactService()\n\nasync function handleSubmit(contact: Contact) {\n let succeededOrNotResponse = await contactService.addContact(contact as IAddContactRequest, props.organizationId)\n if (succeededOrNotResponse && succeededOrNotResponse.succeeded) {\n notifySuccess(t('validation.contact.add.success'))\n setTimeout(() => {\n router.back();\n }, 1500);\n } else {\n let errorMessages = succeededOrNotResponse.getErrorMessages('validation.contact.add');\n if (errorMessages.length == 0) \n notifyError(t('validation.contact.add.errorOccured'))\n else\n notifyError(errorMessages[0]) \n }\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.organizations.addContact.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.organizations.addContact.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(ContactForm, {\n id: props.organizationId,\n onFormSubmit: handleSubmit\n }, null, 8, [\"id\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AddContactForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AddContactForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, isRef as _isRef, createVNode as _createVNode, withCtx as _withCtx, createElementVNode as _createElementVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = {\n class: \"form\",\n novalidate: \"\"\n}\nconst _hoisted_2 = { class: \"form__duo-fields\" }\n\nimport {computed, onMounted, ref} from \"vue\"\r\nimport {useI18n} from \"vue3-i18n\"\r\nimport {useOrganizationService} from \"@/inversify.config\"\r\nimport {OrganizationType} from \"@/types\"\r\nimport {IFullOrganization} from \"@/types/entities/organization\";\r\nimport FormReadonlyField from \"@/components/forms/FormReadonlyField.vue\"\r\nimport Card from \"@/components/layout/Card.vue\"\r\nimport FormRow from \"@/components/forms/FormRow.vue\"\r\nimport {getFileFromUrl} from \"@/helpers\";\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'IndividualMemberSyndicateView',\n setup(__props) {\n\r\nconst {t} = useI18n()\r\nconst organizationService = useOrganizationService()\r\n\r\nconst organizationLogo = ref()\r\nconst organization = ref()\r\nconst organizationIsLoading = ref(false)\r\n\r\nonMounted(async () => {\r\n await loadOrganization()\r\n})\r\n\r\nlet organizationType = computed(() => {\r\n if (!organization.value)\r\n return\r\n let type = organization.value.type.makeFirstLetterLowercase()\r\n return t(`organization.types.${type}`)\r\n})\r\n\r\nasync function loadOrganization() {\r\n organizationIsLoading.value = true\r\n let fullOrganization = await organizationService.getMySyndicate();\r\n if (fullOrganization) {\r\n organization.value = fullOrganization\r\n if (fullOrganization.logo)\r\n organizationLogo.value = await getFileFromUrl(fullOrganization.logo, fullOrganization.logo)\r\n }\r\n organizationIsLoading.value = false\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (organization.value)\n ? (_openBlock(), _createBlock(Card, {\n key: 0,\n title: organization.value.name\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"form\", _hoisted_1, [\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: _unref(organizationType),\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (_isRef(organizationType) ? (organizationType).value = $event : organizationType = $event)),\n label: _unref(t)('organization.type'),\n name: \"type\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.chapter,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((organization.value.chapter) = $event)),\n label: _unref(t)('organization.chapter'),\n name: \"chapter\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.enterpriseNumber,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((organization.value.enterpriseNumber) = $event)),\n label: _unref(t)('organization.enterpriseNumber'),\n name: \"enterpriseNumber\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.apartment,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((organization.value.apartment) = $event)),\n label: _unref(t)('global.apartment'),\n name: \"apartment\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.street,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((organization.value.street) = $event)),\n label: _unref(t)('global.street'),\n name: \"street\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.city,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((organization.value.city) = $event)),\n label: _unref(t)('global.city'),\n name: \"city\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.zipCode,\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((organization.value.zipCode) = $event)),\n label: _unref(t)('global.zipCode'),\n name: \"zipCode\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.phoneNumber,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((organization.value.phoneNumber) = $event)),\n label: _unref(t)('global.phoneNumber'),\n name: \"phoneNumber\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.phoneExtension,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = ($event: any) => ((organization.value.phoneExtension) = $event)),\n label: _unref(t)('global.phoneExtension'),\n name: \"phoneExtension\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.email,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = ($event: any) => ((organization.value.email) = $event)),\n label: _unref(t)('global.email'),\n name: \"email\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.subscription.startAt,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = ($event: any) => ((organization.value.subscription.startAt) = $event)),\n label: _unref(t)('organization.subscriptionStartAt'),\n name: \"subscriptionStartAt\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.subscription.endAt,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = ($event: any) => ((organization.value.subscription.endAt) = $event)),\n label: _unref(t)('organization.subscriptionEndAt'),\n name: \"subscriptionEndAt\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.memberNumber,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = ($event: any) => ((organization.value.memberNumber) = $event)),\n label: _unref(t)('organization.memberNumber'),\n name: \"memberNumber\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n (organization.value.type !== _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormReadonlyField, {\n key: 0,\n modelValue: organization.value.numberOfUnits,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = ($event: any) => ((organization.value.numberOfUnits) = $event)),\n label: _unref(t)('organization.numberOfUnits'),\n name: \"numberOfUnits\"\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (organization.value.type === _unref(OrganizationType).RegularIndividual && organization.value.syndicate?.name)\n ? (_openBlock(), _createBlock(FormReadonlyField, {\n key: 1,\n modelValue: organization.value.syndicate.name,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = ($event: any) => ((organization.value.syndicate.name) = $event)),\n label: _unref(t)('organization.syndicate'),\n name: \"syndicateName\"\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ])\n ]),\n _: 1\n }, 8, [\"title\"]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","\r\n","import script from \"./IndividualMemberSyndicateView.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./IndividualMemberSyndicateView.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, isRef as _isRef, createVNode as _createVNode, withCtx as _withCtx, createElementVNode as _createElementVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { class: \"form__duo-fields\" }\n\nimport {computed, onMounted, ref} from \"vue\"\r\nimport {useI18n} from \"vue3-i18n\"\r\nimport {OrganizationType} from \"@/types\"\r\nimport {IFullOrganization} from \"@/types/entities/organization\";\r\nimport FormReadonlyField from \"@/components/forms/FormReadonlyField.vue\"\r\nimport Card from \"@/components/layout/Card.vue\"\r\nimport FormRow from \"@/components/forms/FormRow.vue\"\r\nimport {useOrganizationService} from \"@/inversify.config\";\r\n\r\n// eslint-disable-next-line\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'SyndicateCoownerOrganizationView',\n props: {\n organizationId: {}\n },\n setup(__props: any) {\n\r\nconst props = __props\r\n\r\nconst {t, getLocale} = useI18n()\r\nconst organizationService = useOrganizationService()\r\n\r\nconst organization = ref()\r\nconst organizationIsLoading = ref(false)\r\n\r\nonMounted(async () => {\r\n await loadOrganization()\r\n})\r\n\r\nlet organizationType = computed(() => {\r\n if (!organization.value)\r\n return\r\n let type = organization.value.type.makeFirstLetterLowercase()\r\n return t(`organization.types.${type}`)\r\n})\r\n\r\nasync function loadOrganization() {\r\n organizationIsLoading.value = true\r\n\r\n let fullOrganization = await organizationService.getMyOrganization(getLocale())\r\n if (fullOrganization) {\r\n organization.value = fullOrganization\r\n }\r\n organizationIsLoading.value = false\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (organization.value)\n ? (_openBlock(), _createBlock(Card, {\n key: 0,\n title: organization.value.name\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"form\",\n enctype: \"multipart/form-data\",\n novalidate: \"\",\n onSubmit: _withModifiers(() => {}, [\"prevent\"])\n }, [\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: _unref(organizationType),\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => (_isRef(organizationType) ? (organizationType).value = $event : organizationType = $event)),\n label: _unref(t)('organization.type'),\n name: \"type\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.chapter,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((organization.value.chapter) = $event)),\n label: _unref(t)('organization.chapter'),\n name: \"chapter\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.enterpriseNumber,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((organization.value.enterpriseNumber) = $event)),\n label: _unref(t)('organization.enterpriseNumber'),\n name: \"enterpriseNumber\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.apartment,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((organization.value.apartment) = $event)),\n label: _unref(t)('global.apartment'),\n name: \"apartment\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.street,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((organization.value.street) = $event)),\n label: _unref(t)('global.street'),\n name: \"street\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.city,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = ($event: any) => ((organization.value.city) = $event)),\n label: _unref(t)('global.city'),\n name: \"city\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.zipCode,\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = ($event: any) => ((organization.value.zipCode) = $event)),\n label: _unref(t)('global.zipCode'),\n name: \"zipCode\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.phoneNumber,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = ($event: any) => ((organization.value.phoneNumber) = $event)),\n label: _unref(t)('global.phoneNumber'),\n name: \"phoneNumber\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.phoneExtension,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = ($event: any) => ((organization.value.phoneExtension) = $event)),\n label: _unref(t)('global.phoneExtension'),\n name: \"phoneExtension\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.email,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = ($event: any) => ((organization.value.email) = $event)),\n label: _unref(t)('global.email'),\n name: \"email\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.subscription.startAt,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = ($event: any) => ((organization.value.subscription.startAt) = $event)),\n label: _unref(t)('organization.subscriptionStartAt'),\n name: \"subscriptionStartAt\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.subscription.endAt,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = ($event: any) => ((organization.value.subscription.endAt) = $event)),\n label: _unref(t)('organization.subscriptionEndAt'),\n name: \"subscriptionEndAt\"\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormReadonlyField, {\n modelValue: organization.value.memberNumber,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = ($event: any) => ((organization.value.memberNumber) = $event)),\n label: _unref(t)('organization.memberNumber'),\n name: \"memberNumber\"\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, { withThreeColumns: true }, {\n default: _withCtx(() => [\n (organization.value.type !== _unref(OrganizationType).Corporate)\n ? (_openBlock(), _createBlock(FormReadonlyField, {\n key: 0,\n modelValue: organization.value.numberOfUnits,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = ($event: any) => ((organization.value.numberOfUnits) = $event)),\n label: _unref(t)('organization.numberOfUnits'),\n name: \"numberOfUnits\"\n }, null, 8, [\"modelValue\", \"label\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ], 40, _hoisted_1)\n ]),\n _: 1\n }, 8, [\"title\"]))\n : _createCommentVNode(\"\", true)\n}\n}\n\n})","\r\n","import script from \"./SyndicateCoownerOrganizationView.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SyndicateCoownerOrganizationView.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"util--screen-reader\" }\nconst _hoisted_2 = { class: \"content-grid\" }\n\nimport {useI18n} from \"vue3-i18n\"\r\nimport {useMemberStore} from \"@/stores/memberStore\";\r\nimport MemberOrganizationForm from \"@/views/member/MemberOrganizationForm.vue\";\r\nimport IndividualMemberSyndicateView from \"@/views/member/IndividualMemberSyndicateView.vue\";\r\nimport SyndicateCoownerOrganizationView from \"@/views/member/SyndicateCoownerOrganizationView.vue\";\r\nimport {Role} from \"@/types\";\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'SyndicateIndex',\n setup(__props) {\n\r\nconst {t} = useI18n()\r\nconst memberStore = useMemberStore()\r\nconst member = memberStore.getMember;\r\n\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"h1\", _hoisted_1, _toDisplayString(_unref(t)(\"routes.syndicate.name\")), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n (_unref(memberStore).hasIndividualAndCoOwnerRoles())\n ? (_openBlock(), _createBlock(IndividualMemberSyndicateView, { key: 0 }))\n : (_unref(memberStore).hasRole(_unref(Role).RegularSyndicateCoOwner))\n ? (_openBlock(), _createBlock(SyndicateCoownerOrganizationView, {\n key: 1,\n \"organization-id\": _unref(member).organizationId\n }, null, 8, [\"organization-id\"]))\n : (_openBlock(), _createBlock(MemberOrganizationForm, {\n key: 2,\n \"organization-id\": _unref(member).organizationId\n }, null, 8, [\"organization-id\"]))\n ])\n ]))\n}\n}\n\n})","\r\n\r\n","import script from \"./SyndicateIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./SyndicateIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"util--screen-reader\" }\nconst _hoisted_2 = { class: \"content-grid\" }\n\nimport {useI18n} from \"vue3-i18n\"\r\nimport {useMemberStore} from \"@/stores/memberStore\";\r\nimport MemberOrganizationForm from \"@/views/member/MemberOrganizationForm.vue\";\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'CompanyIndex',\n setup(__props) {\n\r\nconst {t} = useI18n()\r\nconst memberStore = useMemberStore()\r\nconst member = memberStore.getMember;\r\n\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"h1\", _hoisted_1, _toDisplayString(_unref(t)(\"routes.company.name\")), 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(MemberOrganizationForm, {\n \"organization-id\": _unref(member).organizationId\n }, null, 8, [\"organization-id\"])\n ])\n ]))\n}\n}\n\n})","\r\n\r\n\r\n ","import script from \"./CompanyIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./CompanyIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withCtx as _withCtx, createVNode as _createVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { class: \"form__submit btn btn--fullscreen\" }\n\nimport {computed, ref} from \"vue\";\n\nimport Card from \"@/components/layout/Card.vue\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport FormErrorsList from \"@/components/forms/FormErrorsList.vue\";\n\nimport {useI18n} from \"vue3-i18n\";\nimport {useUserService} from \"@/inversify.config\";\nimport {SucceededOrNotResponse} from \"@/types/responses/succeededOrNotResponse\";\nimport { notifyError, notifySuccess } from \"@/notify\";\nimport { Status } from \"@/validation\";\nimport {IResetMemberPasswordRequest} from \"@/types/requests\";\nimport FormTooltip from \"@/components/forms/FormTooltip.vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminResetMemberPassword',\n props: {\n organizationId: {},\n memberId: {}\n },\n setup(__props: any) {\n\nconst props = __props;\n\nconst {t} = useI18n()\nconst userService = useUserService()\n\nconst currentPassword = ref()\nconst currentPasswordInput = ref()\n\nconst newPassword = ref()\nconst newPasswordInput = ref()\n\nconst newPasswordConfirmation = ref()\nconst newPasswordConfirmationInput = ref()\n\nconst changePasswordResponse = ref()\nlet errorsMessages = computed(() => {\n if (!changePasswordResponse.value)\n return []\n let response = changePasswordResponse.value as SucceededOrNotResponse\n return response.getErrorMessages('validation.password')\n})\n\nconst inputValidationStatuses:any = {};\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid\n}\n\nasync function showErrorMessages() {\n currentPasswordInput.value?.validateInput(currentPassword.value);\n newPasswordInput.value?.validateInput(newPassword.value);\n newPasswordConfirmationInput.value?.validateInput(newPasswordConfirmation.value);\n}\n\nasync function handleSubmit() {\n await showErrorMessages();\n\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\n notifyError(t('global.formErrorNotification'))\n return\n }\n\n const request = {\n newPassword: newPassword.value,\n newPasswordConfirmation: newPasswordConfirmation.value,\n } as IResetMemberPasswordRequest\n\n changePasswordResponse.value = await userService\n .resetMemberPassword(props.organizationId, props.memberId, request) as SucceededOrNotResponse;\n\n changePasswordResponse.value.succeeded\n ? notifySuccess(t('password.form.successMessage'))\n : notifyError(t('password.form.failedMessage'));\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(Card, {\n title: _unref(t)('password.form.title')\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n (changePasswordResponse.value && !changePasswordResponse.value.succeeded && changePasswordResponse.value.errors.length > 0)\n ? (_openBlock(), _createBlock(FormErrorsList, {\n key: 0,\n title: _unref(t)('password.form.failedMessage'),\n errorsList: _unref(errorsMessages)\n }, null, 8, [\"title\", \"errorsList\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(FormTooltip, null, {\n default: _withCtx(() => [\n _createElementVNode(\"p\", null, _toDisplayString(_unref(t)('password.form.format')), 1)\n ]),\n _: 1\n }),\n _createVNode(FormInput, {\n ref_key: \"newPasswordInput\",\n ref: newPasswordInput,\n modelValue: newPassword.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((newPassword).value = $event)),\n label: _unref(t)('password.form.newPassword'),\n name: \"newPassword\",\n type: \"password\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n ref_key: \"newPasswordConfirmationInput\",\n ref: newPasswordConfirmationInput,\n modelValue: newPasswordConfirmation.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((newPasswordConfirmation).value = $event)),\n label: _unref(t)('password.form.newPasswordConfirmation'),\n name: \"newPasswordConfirmation\",\n type: \"password\",\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createElementVNode(\"button\", _hoisted_2, _toDisplayString(_unref(t)('global.save')), 1)\n ], 40, _hoisted_1)\n ]),\n _: 1\n }, 8, [\"title\"]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminResetMemberPassword.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminResetMemberPassword.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { withAsyncContext as _withAsyncContext, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport {onMounted, ref} from \"vue\"\nimport {useI18n} from \"vue3-i18n\"\nimport {useMemberService, useOrganizationService} from \"@/inversify.config\"\nimport {Member} from \"@/types/entities/member\"\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\"\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\"\nimport Card from \"@/components/layout/Card.vue\"\nimport MemberForm from \"@/components/forms/MemberForm.vue\"\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {useRouter} from \"vue-router\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {OrganizationType, Role} from \"@/types\";\nimport {IFullOrganization} from \"@/types/entities/organization\";\nimport Loader from \"@/components/layout/Loader.vue\";\nimport AdminResetMemberPassword from \"@/views/admin/AdminResetMemberPassword.vue\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'EditMemberForm',\n props: {\n organizationId: {},\n memberId: {}\n },\n async setup(__props: any) {\n\nlet __temp: any, __restore: any\n\nconst props = __props\n\nconst {t, getLocale} = useI18n()\nconst router = useRouter()\nconst memberStore = useMemberStore()\nconst memberService = useMemberService()\nconst organizationService = useOrganizationService()\n\nconst organizationId = props.organizationId ? props.organizationId : memberStore.getMember.organizationId\nconst existingMember = ref((\n ([__temp,__restore] = _withAsyncContext(() => memberService.getMember(organizationId, props.memberId))),\n __temp = await __temp,\n __restore(),\n __temp\n))\nconst hasIndividualAndCoOwnerRoles = ref(existingMember.value.roles != undefined &&\n existingMember.value.roles.includes(Role.RegularIndividual) &&\n existingMember.value.roles.includes(Role.RegularSyndicateCoOwner))\n\nlet organization = ref()\nlet isSyndicate = ref(false)\n\nonMounted(async () => {\n organization.value = memberStore.hasRole(Role.Admin)\n ? await organizationService.getOrganizationWithId(organizationId)\n : await organizationService.getMyOrganization(getLocale())\n isSyndicate.value = organization.value?.type === OrganizationType.RegularSyndicate\n})\n\nasync function handleSubmit(member: Member) {\n if (isSyndicate.value && hasIndividualAndCoOwnerRoles.value && member.jobTitle == t('member.jobTitle.administrator.value')) {\n notifyError(t('validation.member.edit.individualMemberCannotHaveSyndicateAdminRole'))\n return;\n }\n\n let succeededOrNotResponse = await memberService.updateMember(member, organizationId)\n if (succeededOrNotResponse && succeededOrNotResponse.succeeded) {\n notifySuccess(t('validation.member.edit.success'))\n setTimeout(() => {\n router.back();\n }, 1500);\n } else {\n let errorMessages = succeededOrNotResponse.getErrorMessages('validation.member.edit');\n if (errorMessages.length == 0)\n notifyError(t('validation.member.edit.errorOccured'))\n else\n notifyError(errorMessages[0])\n }\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.organizations.editMember.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.organizations.editMember.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n (_unref(organization))\n ? (_openBlock(), _createBlock(MemberForm, {\n key: 0,\n \"is-syndicate-organization\": _unref(isSyndicate),\n member: existingMember.value,\n onFormSubmit: handleSubmit\n }, null, 8, [\"is-syndicate-organization\", \"member\"]))\n : (_openBlock(), _createBlock(Loader, {\n key: 1,\n \"is-inline\": true\n }))\n ]),\n _: 1\n }),\n (_unref(memberStore).hasRole(_unref(Role).Admin))\n ? (_openBlock(), _createBlock(AdminResetMemberPassword, {\n key: 0,\n \"organization-id\": props.organizationId,\n \"member-id\": props.memberId\n }, null, 8, [\"organization-id\", \"member-id\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./EditMemberForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./EditMemberForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { withAsyncContext as _withAsyncContext, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport {ref} from \"vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {useContactService} from \"@/inversify.config\";\nimport {Contact} from \"@/types/entities/contact\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\nimport Card from \"@/components/layout/Card.vue\";\nimport ContactForm from \"@/components/forms/ContactForm.vue\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {useRouter} from \"vue-router\";\nimport {useMemberStore} from \"@/stores/memberStore\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'EditContactForm',\n props: {\n organizationId: {},\n contactId: {}\n },\n async setup(__props: any) {\n\nlet __temp: any, __restore: any\n\nconst props = __props;\n\nconst {t} = useI18n()\nconst router = useRouter()\nconst memberStore = useMemberStore()\nconst contactService = useContactService()\n\nconst organizationId = props.organizationId ? props.organizationId : memberStore.getMember.organizationId\n\nconst contact = ref((\n ([__temp,__restore] = _withAsyncContext(() => contactService.getContact(organizationId, props.contactId))),\n __temp = await __temp,\n __restore(),\n __temp\n));\n\nasync function handleSubmit(contact: Contact) {\n let succeededOrNotResponse = await contactService.updateContact(contact, organizationId)\n if (succeededOrNotResponse && succeededOrNotResponse.succeeded) {\n notifySuccess(t('validation.contact.edit.success'))\n setTimeout(() => {\n router.back();\n }, 1500);\n } else {\n let errorMessages = succeededOrNotResponse.getErrorMessages('validation.contact.edit');\n if (errorMessages.length == 0) \n notifyError(t('validation.contact.edit.errorOccured'))\n else\n notifyError(errorMessages[0]) \n }\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.organizations.editContact.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.organizations.editContact.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(ContactForm, {\n id: _unref(organizationId),\n onFormSubmit: handleSubmit,\n contact: contact.value\n }, null, 8, [\"id\", \"contact\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./EditContactForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./EditContactForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage content-grid--subpage-table\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = { class: \"back-link-title\" }\nconst _hoisted_4 = { class: \"content-grid__filters\" }\n\nimport i18n from \"@/i18n\";\nimport {useI18n} from \"vue3-i18n\";\nimport {computed, onMounted, ref} from \"vue\";\nimport {useBookService} from \"@/inversify.config\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport Card from \"@/components/layout/Card.vue\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport SearchInput from \"@/components/layout/SearchInput.vue\";\nimport DataTable from \"@/components/layout/DataTable.vue\";\nimport BtnLink from \"@/components/layout/BtnLink.vue\";\nimport {Book} from \"@/types/entities\";\nimport {Guid} from \"@/types\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminBookIndex',\n setup(__props) {\n\nconst {t} = useI18n()\nconst bookService = useBookService()\n\nconst allBooks = ref([]);\nconst searchValue = ref(\"\");\nconst booksAreLoading = ref(false);\n\nconst tableBooks = computed(() => {\n let lang = i18n.getLocale()\n return allBooks.value.map((x: Book) => {\n return {\n id: x.id,\n name: (lang == 'fr' ? x.nameFr : x.nameEn) ?? '',\n isbn: x.isbn,\n author: x.author,\n editor: x.editor,\n actions: {\n update: {name: `admin.children.books.edit`, params: {id: x.id}},\n delete: true\n }\n }\n }).sort((a: any, b: any) => {\n if (a.name < b.name) {\n return -1;\n }\n if (a.name > b.name) {\n return 1;\n }\n return 0;\n }) as Book[];\n})\n\nonMounted(async () => {\n await loadAllBooks();\n});\n\nasync function loadAllBooks() {\n booksAreLoading.value = true;\n\n let books = await bookService.getAllBooks();\n if (books && books.length > 0) {\n allBooks.value = books;\n }\n booksAreLoading.value = false;\n}\n\nasync function deleteBook(book: any) {\n if (book?.id == null || !Guid.isValid(book.id ?? \"\"))\n return\n\n let confirmDelete = confirm(t(\"validation.book.delete.confirmation\"));\n if (!confirmDelete)\n return;\n\n let response = await bookService.deleteBook(book.id)\n if (response.succeeded) {\n allBooks.value = allBooks.value.filter(x => x.id !== book.id)\n notifySuccess(t('validation.book.delete.success'))\n } else {\n let errorMessages = response.getErrorMessages('validation.book.delete',\n 'validation.book.delete.errorOccured')\n notifyError(errorMessages[0])\n }\n}\n\nconst bookHeader = [\n {\n text: t(\"book.title\"),\n value: 'name',\n sortable: true,\n width: 300,\n },\n {\n text: t(\"book.isbn\"),\n value: \"isbn\",\n sortable: true,\n width: 150,\n },\n {\n text: t(\"book.author\"),\n value: \"author\",\n sortable: true,\n width: 125,\n },\n {\n text: t(\"book.editor\"),\n value: \"editor\",\n sortable: true,\n width: 125,\n },\n {\n text: t(\"global.table.actions\"),\n value: \"actions\",\n width: 75\n },\n];\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.books.name`)\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"h1\", _hoisted_3, _toDisplayString(_unref(t)(`routes.admin.children.books.name`)), 1),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(SearchInput, {\n modelValue: searchValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((searchValue).value = $event))\n }, null, 8, [\"modelValue\"])\n ])\n ]),\n _createVNode(Card, {\n title: _unref(t)('global.quickLinks'),\n class: \"card--row-content\"\n }, {\n default: _withCtx(() => [\n _createVNode(BtnLink, {\n name: _unref(t)('routes.admin.children.books.add.name'),\n path: { name: 'admin.children.books.add' }\n }, null, 8, [\"name\", \"path\"])\n ]),\n _: 1\n }, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(DataTable, {\n headers: bookHeader,\n \"is-loading\": booksAreLoading.value,\n items: tableBooks.value,\n \"search-value\": searchValue.value,\n onDelete: deleteBook\n }, null, 8, [\"is-loading\", \"items\", \"search-value\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./AdminBookIndex.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminBookIndex.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = {\n key: 0,\n class: \"form__submit btn btn--fullscreen\",\n type: \"submit\"\n}\nconst _hoisted_3 = {\n key: 1,\n class: \"form__submit btn btn--fullscreen\",\n type: \"submit\"\n}\n\nimport FormRow from \"@/components/forms/FormRow.vue\"\r\nimport FormInput from \"@/components/forms/FormInput.vue\"\r\nimport ProductBaseForm from \"@/components/products/ProductBaseForm.vue\"\r\nimport {ref} from \"vue\"\r\nimport {useI18n} from \"vue3-i18n\"\r\nimport {notifyError} from \"@/notify\"\r\nimport {Status} from \"@/validation\"\r\nimport {Book} from \"@/types/entities\"\r\n\r\n// eslint-disable-next-line no-undef\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BookForm',\n props: {\n book: {}\n },\n emits: [\"formSubmit\"],\n setup(__props: any, { emit: __emit }) {\n\r\nconst props = __props\r\n\r\n// eslint-disable-next-line\r\nconst emit = __emit\r\n\r\nconst { t } = useI18n()\r\n\r\nconst book = ref(props.book ?? {})\r\n\r\nconst formInputs = ref([])\r\nconst inputValidationStatuses:any = {}\r\n\r\nfunction addFormInputRef(ref: typeof FormInput) {\r\n if (!formInputs.value.includes(ref) && ref)\r\n formInputs.value.push(ref)\r\n}\r\n\r\nasync function handleValidation(name: string, validationStatus: Status) {\r\n inputValidationStatuses[name] = validationStatus.valid\r\n}\r\n\r\nasync function handleSubmit() {\r\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\r\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\r\n notifyError(t('global.formErrorNotification'))\r\n return\r\n }\r\n emit(\"formSubmit\", book.value)\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"form\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"]),\n enctype: \"multipart/form-data\"\n }, [\n _createVNode(ProductBaseForm, {\n product: book.value,\n title: _unref(t)('book.info'),\n \"name-fr-label\": \"book.titleFr\",\n \"name-en-label\": \"book.titleEn\",\n \"description-fr-label\": \"book.summaryFr\",\n \"description-en-label\": \"book.summaryEn\",\n onHandleValidation: handleValidation,\n onRegisterFormInputRef: addFormInputRef\n }, {\n \"before-prices\": _withCtx(() => [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n modelValue: book.value.author,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((book.value.author) = $event)),\n type: \"text\",\n name: \"author\",\n ref: addFormInputRef,\n label: _unref(t)('book.author'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n modelValue: book.value.editor,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((book.value.editor) = $event)),\n type: \"text\",\n name: \"editor\",\n ref: addFormInputRef,\n label: _unref(t)('book.editor'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n modelValue: book.value.isbn,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((book.value.isbn) = $event)),\n type: \"text\",\n name: \"isbn\",\n ref: addFormInputRef,\n label: _unref(t)('book.isbn'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"]),\n _createVNode(FormInput, {\n modelValue: book.value.yearOfPublication,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = ($event: any) => ((book.value.yearOfPublication) = $event)),\n type: \"number\",\n name: \"yearOfPublication\",\n ref: addFormInputRef,\n label: _unref(t)('book.yearOfPublication'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormInput, {\n modelValue: book.value.numberOfPages,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((book.value.numberOfPages) = $event)),\n type: \"number\",\n name: \"numberOfPages\",\n ref: addFormInputRef,\n label: _unref(t)('book.numberOfPages'),\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"product\", \"title\"]),\n (!props.book)\n ? (_openBlock(), _createElementBlock(\"button\", _hoisted_2, _toDisplayString(_unref(t)(\"global.add\")), 1))\n : (_openBlock(), _createElementBlock(\"button\", _hoisted_3, _toDisplayString(_unref(t)(\"global.save\")), 1))\n ], 40, _hoisted_1))\n}\n}\n\n})","\r\n\r\n","import script from \"./BookForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./BookForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\r\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\r\nimport BookForm from \"@/components/books/BookForm.vue\";\r\nimport Card from \"@/components/layout/Card.vue\";\r\nimport {useI18n} from \"vue3-i18n\";\r\nimport {Book} from \"@/types/entities\";\r\nimport {notifyError, notifySuccess} from \"@/notify\";\r\nimport {useBookService} from \"@/inversify.config\";\r\nimport {ICreateBookRequest} from \"@/types/requests/createBookRequest\";\r\nimport {useRouter} from \"vue-router\";\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminAddBookForm',\n setup(__props) {\n\r\nconst {t} = useI18n()\r\nconst router = useRouter();\r\nconst bookService = useBookService();\r\n\r\nasync function handleSubmit(book : Book) {\r\n let succeededOrNotResponse = await bookService.createBook(book as ICreateBookRequest)\r\n if (succeededOrNotResponse && succeededOrNotResponse.succeeded) {\r\n notifySuccess(t('validation.book.add.success'))\r\n setTimeout(() => {\r\n router.back();\r\n }, 1500);\r\n } else {\r\n let errorMessages = succeededOrNotResponse.getErrorMessages('validation.book.add');\r\n if (errorMessages.length == 0)\r\n notifyError(t('validation.book.add.errorOccured'))\r\n else\r\n notifyError(errorMessages[0])\r\n }\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.books.add.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.books.add.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(BookForm, { onFormSubmit: handleSubmit })\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\r\n\r\n\r\n","import script from \"./AdminAddBookForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminAddBookForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { withAsyncContext as _withAsyncContext, defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport {useI18n} from \"vue3-i18n\";\r\nimport {notifyError, notifySuccess} from \"@/notify\";\r\nimport {useBookService} from \"@/inversify.config\";\r\nimport {useRouter} from \"vue-router\";\r\nimport {Book} from \"@/types/entities\";\r\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\r\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\r\nimport BookForm from \"@/components/books/BookForm.vue\";\r\nimport Card from \"@/components/layout/Card.vue\";\r\nimport {ref} from \"vue\";\r\nimport {IEditBookRequest} from \"@/types/requests/editBookRequest\";\r\n\r\n// eslint-disable-next-line no-undef\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminEditBookForm',\n props: {\n id: {}\n },\n async setup(__props: any) {\n\nlet __temp: any, __restore: any\n\r\nconst props = __props;\r\n\r\nconst {t} = useI18n()\r\nconst router = useRouter();\r\nconst bookService = useBookService();\r\n\r\nconst book = ref((\n ([__temp,__restore] = _withAsyncContext(() => bookService.getBook(props.id))),\n __temp = await __temp,\n __restore(),\n __temp\n));\r\n\r\nasync function handleSubmit(book : Book) {\r\n let succeededOrNotResponse = await bookService.editBook(book as IEditBookRequest)\r\n if (succeededOrNotResponse && succeededOrNotResponse.succeeded) {\r\n notifySuccess(t('validation.book.edit.success'))\r\n setTimeout(() => {\r\n router.back();\r\n }, 1500);\r\n } else {\r\n let errorMessages = succeededOrNotResponse.getErrorMessages('validation.book.edit');\r\n if (errorMessages.length == 0)\r\n notifyError(t('validation.book.edit.errorOccured'))\r\n else\r\n notifyError(errorMessages[0])\r\n }\r\n}\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.admin.children.books.edit.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.admin.children.books.edit.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(BookForm, {\n book: book.value,\n onFormSubmit: handleSubmit\n }, null, 8, [\"book\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\r\n\r\n\r\n","import script from \"./AdminEditBookForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./AdminEditBookForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, createElementVNode as _createElementVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\nconst _hoisted_2 = { class: \"content-grid__header\" }\nconst _hoisted_3 = { class: \"content-grid__filters\" }\n\nimport Card from '@/components/layout/Card.vue';\nimport BackLinkTitle from '@/components/layout/BackLinkTitle.vue';\nimport Breadcrumbs from '@/components/layout/Breadcrumbs.vue';\nimport SearchInput from \"@/components/layout/SearchInput.vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {computed, onMounted, ref} from \"vue\";\nimport {DocumentCategoryHelper} from \"@/types\";\nimport DocumentsTable from '@/components/tables/DocumentsTable.vue';\nimport {Document} from \"@/types/entities/document\";\nimport {useDocumentService} from \"@/inversify.config\";\n\n// eslint-disable-next-line\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'DocumentCategory',\n props: {\n documentCategorySlug: {}\n },\n setup(__props: any) {\n\nconst props = __props\n\nconst {t} = useI18n();\n\nconst documentService = useDocumentService();\n\nconst searchValue = ref(\"\");\nconst documentsAreLoading = ref(false)\nconst documentsMatchingCategory = ref([]);\n\nconst documentCategory = computed(() => DocumentCategoryHelper.getCategoryNameFromSlug(props.documentCategorySlug))\nconst documentCategoryKey = computed(() => DocumentCategoryHelper.getCategoryValueOfKey(documentCategory.value))\n\nonMounted(async () => {\n await loadAllDocuments()\n})\n\nasync function loadAllDocuments() {\n documentsAreLoading.value = true;\n documentsMatchingCategory.value = [];\n\n let documents = await documentService.getAllDocuments();\n if (documents && documents.length > 0) {\n documentsMatchingCategory.value = documents.filter((x: Document) => x.category == documentCategoryKey.value)\n }\n documentsAreLoading.value = false;\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`document.categories.${documentCategory.value}.name`)\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`document.categories.${documentCategory.value}.name`)\n }, null, 8, [\"title\"]),\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(SearchInput, {\n modelValue: searchValue.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((searchValue).value = $event))\n }, null, 8, [\"modelValue\"])\n ])\n ]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(DocumentsTable, {\n documents: documentsMatchingCategory.value,\n \"is-loading\": documentsAreLoading.value,\n \"search-value\": searchValue.value,\n onDocumentsUpdated: loadAllDocuments\n }, null, 8, [\"documents\", \"is-loading\", \"search-value\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./DocumentCategory.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./DocumentCategory.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withModifiers as _withModifiers } from \"vue\"\n\nconst _hoisted_1 = [\"onSubmit\"]\nconst _hoisted_2 = { class: \"form__submit\" }\nconst _hoisted_3 = {\n class: \"btn btn--fullscreen\",\n type: \"submit\"\n}\n\nimport {useI18n} from \"vue3-i18n\";\nimport {computed, onMounted, ref} from \"vue\";\nimport FormRow from \"@/components/forms/FormRow.vue\";\nimport {Document, IAddDocumentsRequest} from \"@/types/entities/document\";\nimport {DocumentCategoryHelper, DocumentPolicy, Guid, Role} from \"@/types\";\nimport {DocumentPolicyHelper} from \"@/types/documentPolicy\";\nimport {useDocumentService} from \"@/inversify.config\";\nimport {notifyError, notifySuccess} from \"@/notify\";\nimport {useRouter} from \"vue-router\";\nimport {Status} from \"@/validation\";\nimport FormInput from \"@/components/forms/FormInput.vue\";\nimport FormRadios from \"@/components/forms/FormRadios.vue\";\nimport FormFiles from \"@/components/forms/FormFiles.vue\";\nimport FormSelect from \"@/components/forms/FormSelect.vue\";\nimport {SucceededOrNotResponse} from \"@/types/responses\";\nimport {useMemberStore} from \"@/stores/memberStore\";\n\n// eslint-disable-next-line no-undef\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'DocumentForm',\n props: {\n id: {}\n },\n setup(__props: any) {\n\nconst props = __props\n\nconst {t} = useI18n();\n\nconst router = useRouter();\nconst documentService = useDocumentService();\n\nconst memberStore = useMemberStore();\nconst canSeeAllPolicies = memberStore.hasOneOfTheseRoles([Role.Admin, Role.CorporateAdmin, Role.RegularSyndicateAdmin, Role.RegularSyndicateManager])\n\nconst isEditMode = Guid.isValid(props.id);\nconst document = ref() //useful for the edit state\nconst files = ref() //useful for the add state\nconst policy = ref(0)\nconst category = ref()\n\nonMounted(async () => {\n if (!isEditMode) return\n\n const doc = await documentService.getDocument(props.id);\n\n document.value = doc;\n files.value = doc.document;\n policy.value = doc.policy ?? DocumentPolicy.Private;\n category.value = doc.category;\n})\n\nconst documentPolicies = computed(() => {\n if (canSeeAllPolicies) return DocumentPolicyHelper.policiesValueAndNames()\n return [DocumentPolicyHelper.policiesValueAndNames()[0]]\n});\n\nfunction onPolicyChange(event: any) {\n if (isEditMode && document.value) document.value.policy = event.target.value;\n}\n\nconst documentCategories = computed(() =>\n DocumentCategoryHelper.categoriesNameAndLabel().sort((a, b) => a.label > b.label ? 1 : -1)\n);\n\nfunction onCategoryChange(event: any) {\n if (isEditMode && document.value) document.value.category = event.target.value;\n}\n\nfunction onFileChange(event: any) {\n if (isEditMode && document.value) document.value.document = event.target.files[0];\n}\n\n//Validation -------\nconst formInputs = ref<(typeof FormInput)[]>([]);\nconst inputValidationStatuses: any = {};\n\nfunction addFormInputRef(ref: typeof FormInput) {\n if (!formInputs.value.includes(ref)) formInputs.value.push(ref);\n}\n\nasync function handleValidation(name: string, validationStatus: Status) {\n inputValidationStatuses[name] = validationStatus.valid;\n}\n\n//Submit ------------\nasync function handleSubmit() {\n formInputs.value.forEach((x: typeof FormInput) => x.validateInput())\n if (Object.values(inputValidationStatuses).some(x => x === false)) {\n notifyError(t('global.formErrorNotification'))\n return\n } else {\n await save();\n }\n}\n\nasync function save() {\n let result: any;\n\n if (isEditMode) {\n result = await documentService.updateDocument(document.value as Document);\n } else {\n result = await documentService.addDocuments({\n policy: policy.value,\n category: category.value,\n // don't change Documents for documents, it makes model binding work in back-end\n Documents: files.value\n } as IAddDocumentsRequest);\n }\n\n if (result?.id || result[0]?.id) {\n notifySuccess(files.value?.length > 1\n ? t(\"document.saveMultipleSuccess\").replace(\"{length}\", files.value.length)\n : t(\"document.saveSuccess\")\n );\n setTimeout(() => {\n router.back();\n }, 1500);\n } else {\n notifyError(files.value?.length > 1\n ? t(\"document.saveMultipleError\")\n : t(\"document.saveError\")\n );\n }\n}\n\nasync function deleteDocument() {\n if (!Guid.isValid(props.id ?? \"\") || props.id == null) return;\n\n let confirmDelete = confirm(t(\"document.deleteConfirmation\"));\n\n if (!confirmDelete) return;\n\n let result: SucceededOrNotResponse = await documentService.deleteDocument(props.id);\n if (result?.succeeded) {\n notifySuccess(t('document.deleteSuccess'))\n router.back();\n } else {\n notifyError(t('document.deleteError'))\n }\n}\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"form\", {\n class: \"form\",\n enctype: \"multipart/form-data\",\n novalidate: \"\",\n onSubmit: _withModifiers(handleSubmit, [\"prevent\"])\n }, [\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormFiles, {\n ref: addFormInputRef,\n modelValue: files.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((files).value = $event)),\n \"default-selected-files\": document.value?.name != null ? [document.value.name] : [],\n \"is-multiple\": !_unref(isEditMode),\n label: _unref(t)('document.label'),\n min: 1,\n name: \"document\",\n onChange: onFileChange,\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"default-selected-files\", \"is-multiple\", \"label\"])\n ]),\n _: 1\n }),\n _createVNode(FormRow, null, {\n default: _withCtx(() => [\n _createVNode(FormSelect, {\n ref: addFormInputRef,\n modelValue: category.value,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((category).value = $event)),\n label: _unref(t)('document.category'),\n options: documentCategories.value,\n name: \"category\",\n onChange: onCategoryChange,\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"label\", \"options\"])\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", null, [\n _createVNode(FormRadios, {\n ref: addFormInputRef,\n modelValue: policy.value,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => ((policy).value = $event)),\n options: documentPolicies.value,\n title: _unref(t)('document.policy'),\n name: \"radios\",\n onChange: onPolicyChange,\n onValidated: handleValidation\n }, null, 8, [\"modelValue\", \"options\", \"title\"])\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", _hoisted_3, _toDisplayString(_unref(t)(\"global.save\")), 1),\n (_unref(isEditMode))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn--red btn--fullscreen\",\n type: \"button\",\n onClick: deleteDocument\n }, _toDisplayString(_unref(t)(\"global.delete\")), 1))\n : _createCommentVNode(\"\", true)\n ])\n ], 40, _hoisted_1))\n}\n}\n\n})","\n\n","import script from \"./DocumentForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./DocumentForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"content-grid content-grid--subpage\" }\n\nimport Card from \"@/components/layout/Card.vue\";\nimport BackLinkTitle from \"@/components/layout/BackLinkTitle.vue\";\nimport Breadcrumbs from \"@/components/layout/Breadcrumbs.vue\";\nimport {useI18n} from \"vue3-i18n\";\nimport {computed} from \"vue\";\nimport {Guid} from \"@/types\";\nimport {useRoute} from \"vue-router\";\nimport DocumentForm from \"@/components/forms/DocumentForm.vue\";\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'DocumentForm',\n setup(__props) {\n\nconst {t} = useI18n()\n\nconst route = useRoute()\n\nconst documentId = computed(() => {\n let id = \"\"\n if (typeof route.params.id === 'string')\n id = route.params.id\n\n return id\n})\nconst isEditMode = computed(() => Guid.isValid(documentId.value));\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(Breadcrumbs, {\n title: _unref(t)(`routes.coproperty.children.${!isEditMode.value ? 'add' : 'edit'}Document.name`)\n }, null, 8, [\"title\"]),\n _createVNode(BackLinkTitle, {\n title: _unref(t)(`routes.coproperty.children.${!isEditMode.value ? 'add' : 'edit'}Document.name`)\n }, null, 8, [\"title\"]),\n _createVNode(Card, null, {\n default: _withCtx(() => [\n _createVNode(DocumentForm, { id: documentId.value }, null, 8, [\"id\"])\n ]),\n _: 1\n })\n ]))\n}\n}\n\n})","\n\n\n","import script from \"./DocumentForm.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./DocumentForm.vue?vue&type=script&lang=ts&setup=true\"\n\nconst __exports__ = script;\n\nexport default __exports__","import i18n from \"@/i18n\";\nimport {Role} from \"@/types\";\nimport {useMemberStore} from \"@/stores/memberStore\";\nimport {createRouter, createWebHistory} from \"vue-router\";\n\nimport Account from \"../views/Account.vue\";\nimport Coproperty from \"../views/Coproperty.vue\";\nimport CopropertyIndex from \"../views/CopropertyIndex.vue\";\nimport Company from \"@/views/Company.vue\";\nimport Invoices from \"../views/Invoices.vue\";\nimport Membership from \"@/views/Membership.vue\";\nimport Syndicate from \"../views/Syndicate.vue\";\n\nimport Admin from \"../views/admin/Admin.vue\";\nimport AdminActivityForm from \"../views/admin/AdminActivityForm.vue\";\nimport AdminActivityOccurrenceIndex from \"../views/admin/AdminActivityOccurrenceIndex.vue\";\nimport AdminActivityOccurrenceParticipants from \"@/views/admin/AdminActivityOccurrenceParticipants.vue\";\nimport AdminActivityOccurrenceParticipantTransfer from \"@/views/admin/AdminActivityOccurrenceParticipantTransfer.vue\";\nimport AdminActivityOccurrenceRegistrations from \"@/views/admin/AdminActivityOccurrenceRegistrations.vue\";\nimport AdminOrganizationIndex from \"@/views/admin/AdminOrganizationIndex.vue\";\nimport AdminOrganizationForm from \"@/views/admin/AdminOrganizationForm.vue\";\n\nimport AdminMembershipsIndex from \"../views/admin/AdminMembershipsIndex.vue\";\n\nimport MemberActivitiesView from \"@/views/member/MemberActivitiesView.vue\";\nimport AddMemberForm from \"@/views/shared/AddMemberForm.vue\";\nimport AddContactForm from \"@/views/shared/AddContactForm.vue\";\nimport SyndicateIndex from \"@/views/SyndicateIndex.vue\";\nimport CompanyIndex from \"@/views/CompanyIndex.vue\";\nimport EditMemberForm from \"@/views/shared/EditMemberForm.vue\";\nimport EditContactForm from \"@/views/shared/EditContactForm.vue\";\nimport AdminBookIndex from \"@/views/admin/AdminBookIndex.vue\";\nimport AdminAddBookForm from \"@/views/admin/AdminAddBookForm.vue\";\nimport AdminEditBookForm from \"@/views/admin/AdminEditBookForm.vue\";\n\nimport DocumentCategory from \"@/views/DocumentCategory.vue\";\nimport DocumentForm from \"@/views/DocumentForm.vue\";\n\nconst router = createRouter({\n // eslint-disable-next-line\n scrollBehavior(to, from, savedPosition) {\n // always scroll to top\n return {top: 0};\n },\n history: createWebHistory(),\n routes: [\n {\n path: i18n.t(\"routes.account.path\"),\n name: \"account\",\n component: Account,\n },\n {\n path: i18n.t(\"routes.coproperty.path\"),\n name: \"coproperty\",\n component: Coproperty,\n children: [\n {\n path: \"\",\n name: \"coproperty.index\",\n component: CopropertyIndex,\n },\n {\n path: i18n.t(\"routes.coproperty.children.documentCategory.path\"),\n name: \"coproperty.children.documentCategory\",\n component: DocumentCategory,\n props: true\n },\n {\n path: i18n.t(\"routes.coproperty.children.addDocument.path\"),\n name: \"coproperty.children.addDocument\",\n component: DocumentForm,\n },\n {\n path: i18n.t(\"routes.coproperty.children.editDocument.path\"),\n name: \"coproperty.children.editDocument\",\n component: DocumentForm,\n }\n ],\n },\n {\n path: i18n.t(\"routes.syndicate.path\"),\n name: \"syndicate\",\n component: Syndicate,\n meta: {\n requiredRole: [Role.RegularSyndicateAdmin, Role.RegularSyndicateManager, Role.RegularSyndicateCoOwner],\n },\n children: [\n {\n path: \"\",\n name: \"syndicate.index\",\n component: SyndicateIndex,\n },\n {\n path: i18n.t(\"routes.syndicate.children.addMember.path\"),\n alias: i18n.t(\"routes.syndicate.children.addMember.path\"),\n name: \"syndicate.children.addMember\",\n component: AddMemberForm,\n meta: {\n requiredRole: [Role.RegularSyndicateAdmin, Role.RegularSyndicateManager],\n },\n // eslint-disable-next-line\n props: route => {\n const memberStore = useMemberStore();\n return ({organizationId: memberStore.getMember.organizationId})\n }\n },\n {\n path: i18n.t(\"routes.syndicate.children.editMember.path\"),\n alias: i18n.t(\"routes.syndicate.children.editMember.path\").replace(':memberId', ''),\n name: \"syndicate.children.editMember\",\n component: EditMemberForm,\n meta: {\n requiredRole: [Role.RegularSyndicateAdmin, Role.RegularSyndicateManager],\n },\n props: true\n }\n ],\n },\n {\n path: i18n.t(\"routes.company.path\"),\n name: \"company\",\n component: Company,\n meta: {\n requiredRole: Role.CorporateAdmin,\n },\n children: [\n {\n path: \"\",\n name: \"company.index\",\n component: CompanyIndex,\n },\n {\n path: i18n.t(\"routes.company.children.addContact.path\"),\n alias: i18n.t(\"routes.company.children.addContact.path\"),\n name: \"company.children.addContact\",\n component: AddContactForm,\n // eslint-disable-next-line\n props: route => {\n const memberStore = useMemberStore();\n return ({organizationId: memberStore.getMember.organizationId})\n }\n },\n {\n path: i18n.t(\"routes.company.children.editContact.path\"),\n alias: i18n.t(\"routes.company.children.editContact.path\").replace(':contactId', ''),\n name: \"company.children.editContact\",\n component: EditContactForm,\n props: true\n }\n ],\n },\n {\n path: i18n.t(\"routes.membership.path\"),\n name: \"membership\",\n component: Membership,\n meta: {\n requiredRole: Role.RegularIndividual,\n }\n },\n {\n path: i18n.t(\"routes.invoices.path\"),\n name: \"invoices\",\n component: Invoices,\n },\n {\n path: i18n.t(\"routes.activities.path\"),\n name: \"activities\",\n component: MemberActivitiesView,\n },\n {\n path: i18n.t(\"routes.admin.path\"),\n name: \"admin\",\n component: Admin,\n meta: {\n requiredRole: Role.Admin,\n noLinkInBreadcrumbs: true,\n },\n children: [\n {\n path: i18n.t(\"routes.admin.children.books.path\"),\n name: \"admin.children.books\",\n component: Admin,\n children: [\n {\n path: \"\",\n name: \"admin.children.books.index\",\n component: AdminBookIndex,\n },\n {\n path: i18n.t(\"routes.admin.children.books.add.path\"),\n name: \"admin.children.books.add\",\n component: AdminAddBookForm,\n },\n {\n path: i18n.t(\"routes.admin.children.books.edit.path\"),\n alias: i18n.t(\"routes.admin.children.books.edit.path\").replace(':id', ''),\n name: \"admin.children.books.edit\",\n component: AdminEditBookForm,\n props: true\n },\n ],\n },\n {\n path: i18n.t(\"routes.admin.children.organizations.path\"),\n name: \"admin.children.organizations\",\n component: Admin,\n children: [\n {\n path: \"\",\n name: \"admin.children.organizations.index\",\n component: AdminOrganizationIndex,\n },\n {\n path: i18n.t(\"routes.admin.children.organizations.view.path\"),\n alias: i18n.t(\"routes.admin.children.organizations.view.path\")\n .replace(':organizationId', ''),\n name: \"admin.children.organizations.view\",\n component: AdminOrganizationForm,\n props: true\n },\n {\n path: i18n.t(\"routes.admin.children.organizations.addMember.path\"),\n alias: i18n.t(\"routes.admin.children.organizations.addMember.path\")\n .replace(':organizationId', ''),\n name: \"admin.children.organizations.addMember\",\n component: AddMemberForm,\n props: true\n },\n {\n path: i18n.t(\"routes.admin.children.organizations.editMember.path\"),\n alias: i18n.t(\"routes.admin.children.organizations.editMember.path\")\n .replace(':organizationId', '')\n .replace(':memberId', ''),\n name: \"admin.children.organizations.editMember\",\n component: EditMemberForm,\n props: true\n },\n {\n path: i18n.t(\"routes.admin.children.organizations.addContact.path\"),\n alias: i18n.t(\"routes.admin.children.organizations.addContact.path\")\n .replace(':organizationId', ''),\n name: \"admin.children.organizations.addContact\",\n component: AddContactForm,\n props: true\n },\n {\n path: i18n.t(\"routes.admin.children.organizations.editContact.path\"),\n alias: i18n.t(\"routes.admin.children.organizations.editContact.path\")\n .replace(':organizationId', '')\n .replace(':contactId', ''),\n name: \"admin.children.organizations.editContact\",\n component: EditContactForm,\n props: true\n }\n ],\n },\n {\n path: i18n.t(\"routes.admin.children.memberships.path\"),\n name: \"admin.children.memberships\",\n component: AdminMembershipsIndex,\n },\n {\n path: i18n.t(\"routes.admin.children.activities.path\"),\n name: \"admin.children.activities\",\n component: Admin,\n children: [\n {\n path: \"\",\n name: \"admin.children.activities.index\",\n component: AdminActivityOccurrenceIndex,\n },\n {\n path: i18n.t(\"routes.admin.children.activities.add.path\"),\n name: \"admin.children.activities.add\",\n component: AdminActivityForm\n },\n {\n path: i18n.t(\"routes.admin.children.activities.update.path\"),\n alias: i18n.t(\"routes.admin.children.activities.participants.edit.path\")\n .replace(':id', ''),\n name: \"admin.children.activities.update\",\n component: AdminActivityForm,\n props: true\n },\n {\n path: i18n.t(\"routes.admin.children.activities.participants.edit.path\"),\n alias: i18n.t(\"routes.admin.children.activities.participants.edit.path\")\n .replace(':activityId', '')\n .replace(':activityOccurrenceId', ''),\n name: \"admin.children.activities.participants.edit\",\n component: AdminActivityOccurrenceParticipants,\n props: true\n },\n {\n path: i18n.t(\"routes.admin.children.activities.participants.add.path\"),\n alias: i18n.t(\"routes.admin.children.activities.participants.add.path\"),\n name: \"admin.children.activities.participants.add\",\n component: AdminActivityOccurrenceParticipants\n },\n {\n path: i18n.t(\"routes.admin.children.activities.registrations.edit.path\"),\n alias: i18n.t(\"routes.admin.children.activities.registrations.edit.path\").replace(':activityId', ''),\n name: \"admin.children.activities.registrations.edit\",\n component: AdminActivityOccurrenceRegistrations,\n props: true\n },\n {\n path: i18n.t(\"routes.admin.children.activities.registrations.add.path\"),\n alias: i18n.t(\"routes.admin.children.activities.registrations.add.path\"),\n name: \"admin.children.activities.registrations.add\",\n component: AdminActivityOccurrenceRegistrations\n },\n {\n path: i18n.t(\"routes.admin.children.activities.participantTransfer.path\"),\n alias: i18n.t(\"routes.admin.children.activities.participantTransfer.path\").replace(':activityOccurrenceId', '')\n .replace(':participantId', ''),\n name: \"admin.children.activities.participantTransfer\",\n component: AdminActivityOccurrenceParticipantTransfer,\n props: true\n },\n ],\n }\n ],\n }\n ],\n});\n\n// eslint-disable-next-line\nrouter.beforeEach(async (to, from) => {\n const memberStore = useMemberStore()\n if (!to.meta.requiredRole)\n return;\n const isRoleArray = Array.isArray(to.meta.requiredRole)\n const doesNotHaveGivenRole = !isRoleArray && !memberStore.hasRole(to.meta.requiredRole as Role);\n const hasNoRoleAmountRoleList = isRoleArray && !memberStore.hasOneOfTheseRoles(to.meta.requiredRole as Role[]);\n if (doesNotHaveGivenRole || hasNoRoleAmountRoleList) {\n return {\n name: \"account\",\n };\n }\n});\n\nexport const Router = router;","import { createApp } from \"vue\";\nimport App from \"./App.vue\";\nimport { pinia } from \"@/stores/pinia\";\nimport { Router } from \"./router\";\nimport i18n from \"@/i18n\";\nimport { VueWindowSizePlugin } from 'vue-window-size/plugin';\nimport Notifications from \"@kyvg/vue3-notification\";\nimport Vue3EasyDataTable from \"vue3-easy-data-table\";\nimport \"vue3-easy-data-table/dist/style.css\";\nimport VueTippy from 'vue-tippy'\n\ncreateApp(App)\n .use(i18n)\n .use(VueWindowSizePlugin)\n .use(Router)\n .use(pinia) // pinia store should be loaded after router to access (https://pinia.vuejs.org/core-concepts/outside-component-usage.html#single-page-applications)\n .use(Notifications)\n .component('EasyDataTable', Vue3EasyDataTable)\n .use(VueTippy, {\n defaultProps: {\n offset: [0, 12],\n zIndex: 30000,\n placement: \"bottom\",\n theme: \"custom-rgcq-app\",\n interactive: true\n },\n })\n .mount(\"#app\");\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"vue-app:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/vue/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkvue_app\"] = self[\"webpackChunkvue_app\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(6451); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["Object","defineProperty","Number","prototype","value","locale","Intl","NumberFormat","style","currency","minimumFractionDigits","maximumFractionDigits","format","this","writable","configurable","_hoisted_1","xmlns","fill","viewBox","_hoisted_2","_createElementVNode","d","_hoisted_3","render","_ctx","_cache","_openBlock","_createElementBlock","class","_hoisted_4","_defineComponent","__name","setup","__props","_component_notifications","_resolveComponent","_createVNode","position","body","_withCtx","props","_normalizeClass","item","type","_createBlock","_unref","IconSuccess","key","_createCommentVNode","IconWarning","innerHTML","text","_","__exports__","OrganizationType","Role","SubscriptionStatus","Guid","newGuid","replace","c","r","Math","random","v","toString","empty","isValid","str","validRegex","test","constructor","_defineProperty","toJSON","Locales","EN","FR","messages","en","fr","defaultLocale","getDefaultLocale","language","Cookies","get","undefined","length","toLowerCase","includes","i18n","createI18n","ActivityLocation","DocumentCategory","DocumentPolicy","Product","TinyActivity","args","Activity","Participant","DocumentCategoryHelper","values","keys","filter","isNaN","categoriesLabelAndSlug","map","documentCategory","label","t","makeFirstLetterLowercase","slug","categoriesNameAndLabel","name","getCategoryValueOfKey","getCategoryNameFromSlug","categorySlug","dict","getLocale","forEach","x","entries","find","k","toUpperCase","DocumentPolicyHelper","policiesValueAndNames","documentPolicy","useMemberStore","defineStore","state","member","roles","actions","setMember","hasRole","role","some","hasRoles","every","hasIndividualAndCoOwnerRoles","RegularIndividual","RegularSyndicateCoOwner","hasOneOfTheseRoles","getters","getMember","persist","storage","sessionStorage","getChildPath","parentKey","childKey","parameters","useI18n","route","useRoute","parentRoute","path","childRouteSegment","param","getAuthenticatedMemberOrganizationRoute","memberStore","CorporateAdmin","RegularSyndicateAdmin","RegularSyndicateManager","routeKey","_useCssVars","height","router","useRouter","directChildRoutes","computed","routes","getRoutes","children","isExpanded","ref","content","toggleExpansion","onMounted","scrollHeight","_component_RouterLink","onClick","_createTextVNode","_toDisplayString","IconChevron","_Transition","default","_withDirectives","ref_key","_Fragment","_renderList","child","to","_vShow","Subnav","TYPES","IApiService","Symbol","for","IAddressService","IUserService","IMemberService","IMembershipService","IContactService","IBookService","IActivityService","IActivityOccurrenceService","IOrganizationService","IInvoiceService","IDocumentService","IFavoriteDocumentService","AxiosInstance","Date","getTimestamp","round","getTime","hoursBetweenToday","endDate","startDate","timeDifference","ceil","formatToDateString","toLocaleDateString","timeZone","formatToTimeString","toLocaleTimeString","hour","minute","hour12","useApiStore","needToLogout","setNeedToLogout","getNeedToLogout","ApiService","httpClient","_httpClient","_accessToken","_accessTokenExpires","_tokenRequestedAt","interceptors","request","use","async","askUmbracoBackEndForNewTokens","config","error","Promise","reject","response","originalRequest","status","_retry","headersWithJsonContentType","headers","headersWithFormDataContentType","buildEmptyBody","retryRequest","axios","then","data","tokens","accessToken","logoutUserAndRedirectToHomePage","expiresIn","bearer","Authorization","defaults","common","apiStore","__decorate","injectable","__param","inject","_a","String","substring","toCamelCase","words","split","camelCasedWords","i","word","push","join","truncateString","maxLength","substr","extractFileName","regex","match","decodeURI","toLocalDateTimeString","localDateTime","time","SucceededOrNotResponse","succeeded","errors","getErrorMessages","translationLocation","fallbackKey","errorMessages","errorKey","errorType","errorMessage","ActivityOccurrenceService","getActivityOccurrence","id","catch","getFutureActivityOccurrences","getPastActivityOccurrences","createActivityOccurrence","activityId","dates","post","CreateActivityOccurrenceRequestBody","deleteActivityOccurrence","delete","getActivityOccurrenceParticipant","participantId","getActivityOccurrenceParticipants","activityOccurrenceId","addParticipantToActivityOccurrence","participant","getActivityOccurrenceRegistrations","deleteActivityRegistration","activityRegistrationId","transferActivityOccurrenceParticipant","ActivityService","getActivity","getAllActivities","createActivity","updateActivity","put","deleteActivity","AddressService","filterAddresses","params","street","getAddress","BookService","getAllBooks","getBook","bookId","deleteBook","createBook","succeededOrNotResponse","editBook","ContactService","getContact","organizationId","contactId","endpointUrl","Admin","addContact","updateContact","contact","deleteContact","DocumentService","addDocuments","updateDocument","document","getAllDocuments","sharedPolicy","getDocument","deleteDocument","FavoriteDocumentService","addToFavorite","removeFromFavorite","InvoiceService","getMyInvoices","MemberService","getCurrentMember","memberId","addMember","updateMember","updateAuthenticatedMember","deleteMember","getCurrentMemberActivityRegistrations","deleteCurrentMemberActivityRegistration","deleteCurrentMemberActivityRegistrationParticipant","MembershipService","getMemberships","updateMemberships","memberships","OrganizationService","getAllOrganizations","getOrganizationWithId","getMyOrganization","lang","getMySyndicate","editMyOrganization","editOrganizationWithId","UserService","changeEmail","changePassword","resetMemberPassword","resendInvite","userId","dependencyInjection","Container","useAddressService","useUserService","useMemberService","useContactService","useBookService","useActivityService","useActivityOccurrenceService","useMembershipService","useOrganizationService","useInvoiceService","useDocumentService","useFavoriteDocumentService","bind","toConstantValue","create","inSingletonScope","organizationService","organization","fullOrganization","subscription","isActive","syndicate","memberIsLoading","Boolean","currentRoute","rootRouteName","matched","$windowWidth","$router","AdminNavbarItems","CorporateMemberNavbarItems","SyndicateAdminMemberNavbarItems","IndividualAndSyndicateCoownerMemberNavbarItems","SyndicateCoownerMemberNavbarItems","IndividualMemberNavbarItems","radius","progress","stroke","normalizedRadius","circumference","PI","strokeDashoffset","dimension","styles","width","_normalizeStyle","cx","cy","_withScopeId","n","_pushScopeId","_popScopeId","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","watch","interval","setInterval","timeLeftBeforeReturnToHome","logoutAndRerouteHome","clearInterval","percentageLeftBeforeReturnHome","logoutButton","getElementById","click","setTimeout","window","location","onBeforeUnmount","ProgressRing","isInline","memberService","_component_RouterView","LogoutPopup","Navbar","Notifications","Component","_Suspense","fallback","Loader","_resolveDynamicComponent","p","createPinia","piniaPluginPersistedstate","pinia","minDate","min","result","valid","message","parseInt","required","requiredTextEditor","requiredBoolean","requiredArray","array","mustMatchZipCodeFormat","zipCodeRegex","RegExp","mustMatchPhoneNumberFormat","phoneNumberRegex","mustMatchEmailFormat","emailRegex","notifySuccess","notify","notifyError","href","_component_router_link","IconArrow","target","title","linkText","linkPath","downloadLabel","emits","emit","__emit","handleDownload","_renderSlot","$slots","BtnLink","$event","IconDownload","validate","rules","rule","validateBoolean","validateArray","modelValue","placeholder","tooltip","list","expose","__expose","validateInput","inputValue","isRequired","handleInput","reformatInput","handleBlur","validationRules","reformatPhoneNumber","reformatZipCode","trimmedPhoneNumber","onBlur","onInput","_vModelDynamic","centerFields","withThreeColumns","withFourColumns","display","classes","errorsList","IconHelp","userService","currentPassword","currentPasswordInput","newPassword","newPasswordInput","newPasswordConfirmation","newPasswordConfirmationInput","changePasswordResponse","errorsMessages","inputValidationStatuses","handleValidation","validationStatus","showErrorMessages","handleSubmit","Card","novalidate","onSubmit","_withModifiers","FormErrorsList","FormTooltip","FormInput","onValidated","newEmail","newEmailInput","currentEmail","email","changeEmailResponse","pageWidth","pageHeight","downloadMembershipCertificate","membershipCertificate","save","memberNumber","organizationName","replaceAll","pxToMm","val","pxToPt","getFinalYautoTable","doc","lastAutoTable","finalY","headerImg","logo","signaturePresident","signatureDirector","areImagesLoaded","colors","black","blue","white","pageXPadding","pageYPadding","largeYPadding","mediumYPadding","smallYPadding","yPosition","titleFontSize","subtitleFontSize","dynamicValueFontSize","signatureLabelFontSize","basicTableProperties","theme","margin","top","right","left","basicTextStylesProperties","font","textColor","cellPadding","halign","jsPDF","orientation","memberName","firstName","lastName","setProperties","author","creator","addPdfHeader","addTextToPdfBody","endAt","addPdfFooter","previewSrc","output","autoTable","didDrawCell","ratio","naturalHeight","naturalWidth","addImage","cell","y","isTitle","isSubtitle","spacing","startY","fontStyle","fontSize","cellStyles","cellWidth","isLogo","raw","isSignatureDirector","image","signatureCellWidth","imageWidth","imageHeight","lineYPosition","imageYPosition","imageXPosition","setLineWidth","setDrawColor","line","textYPosition","getLineWidth","setFontSize","maxWidth","onDownload","src","alt","onLoad","_isRef","options","noLabel","handleChange","newProps","onChange","option","selected","_vModelSelect","readonly","addressService","updateMemberResponse","addressOptions","rolesAllowedToEditJobTitle","rolesThatCanHaveAnyJobTitle","canEditJobTitle","canHaveAnyJobTitle","jobTitles","formInputs","addFormInputRef","selectedOptions","detailedAddress","city","zipCode","loadMatchingAddresses","addresses","matchingAddresses","FormRow","jobTitle","FormSelect","FormReadonlyField","apartment","address","phoneNumber","phoneExtension","MembershipCertificate","ChangePassword","ChangeEmail","rx","version","items","filterOptions","isLoading","searchValue","isSoloItem","handleDelete","handleEdit","resendUserInvite","handleAddFavorite","handleRemoveFavorite","_component_EasyDataTable","_directive_tippy","_resolveDirective","loading","alternating","view","IconView","download","favorite","isInIt","IconHeartFull","IconHeartEmpty","update","IconEdit","recurrences","IconCalendar","participants","IconParticipants","registrations","IconClipboard","edit","transfer","IconTransfer","bill","IconExternal","IconMail","IconDelete","documents","documentService","favoriteDocumentService","documentPolicies","category","policy","documentPath","favoriteDocumentId","canEditOrDeleteDocument","confirmDelete","confirm","documentId","favDocumentId","documentHeader","sortable","DataTable","onDelete","onAddFavorite","onRemoveFavorite","recentDocuments","favoriteDocuments","documentsAreLoading","documentCategoryLabelsAndSlugs","sort","a","b","loadAllDocuments","parse","creationDate","DocumentsTable","onDocumentsUpdated","invoices","formattedInvoices","createdAt","valueOf","description","accountingSoftwareNumber","total","toCurrency","isPaid","accountingSoftwareUrl","invoiceHeader","ProductCategory","getFileFromUrl","url","defaultType","fetch","blob","File","getValueForLocale","translatableString","invoiceService","invoicesAreLoading","loadInvoices","myInvoices","invoice","productCategory","MembershipPlan","productName","InvoiceTable","members","cardLinkPath","hideCardLink","canAddEditOrDeleteMember","cardLinkText","tableMembers","memberHeader","onResendUserInvite","contacts","contactService","canAddEditOrDeleteContact","tableContacts","contactHeader","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","max","isMultiple","possiblesTypes","defaultSelectedFiles","canDelete","minNbFiles","maxNbFiles","newValue","deep","immediate","files","filesInput","btnLabelKey","isReplacing","isPlural","removeFile","file","f","clearSavedFile","index","splice","hasChanged","e","inputEl","Array","from","updateStatus","s","accept","multiple","maxItems","popperOptions","modifiers","enabled","fn","popper","rects","reference","phase","requires","effect","elements","clientWidth","toggleOption","o","_component_tippy","arrow","interactive","offset","trigger","ActivityArea","sortByLabel","collator","Collator","compare","ActivityAreaHelper","translatedValues","activityAreaFormOptions","activityArea","getActivityAreaValueOfKey","convertActivityAreaKeysToFormOptions","activityAreas","getKeyOfActivityAreaValue","indexOf","quillEditor","selection","selectionHTML","selectionContainsImage","selectedText","link","getSelectionHtml","selectedContent","tempContainer","createElement","tempQuill","Quill","setContents","querySelector","addLinkToQuill","quill","getQuill","linkTag","getSelection","deleteText","clipboard","dangerouslyPasteHTML","setSelection","closePopup","getContents","getText","validateTextEditor","toolbarOptions","indent","header","color","align","modules","module","BlotFormatter","ImageDrop","MagicUrl","MarkdownShortcuts","contentModel","showQuillEditorLinkPopup","editor","toolbar","getModule","showLinkPopup","addHandler","FormTextEditorLinkPopup","onClosePopup","QuillEditor","validateCheckbox","checked","_vModelCheckbox","organizationType","onImageChange","event","onActivityAreaChange","newOptions","Corporate","FormFiles","crmId","chapter","startAt","enterpriseNumber","FormMultiSelect","onOnOptionChange","yearsOfExperience","website","numberOfUnits","FormCheckbox","hasContingencyFundCertification","FormTextEditor","descriptionFr","descriptionEn","organizationLogo","organizationIsLoading","addMemberPath","addContactPath","loadOrganization","OrganizationForm","RegularSyndicate","onOnImageChange","MemberTable","ContactTable","MemberOrganizationForm","goBack","back","IconBack","$route","meta","noLinkInBreadcrumbs","validateRadios","groupName","isChecked","product","nameFrLabel","nameEnLabel","descriptionFrLabel","descriptionEnLabel","cardImage","onSavedImageChange","savedCardImage","Fieldset","onOnDefaultSelectedFilesChange","nameFr","nameEn","memberPrice","modelModifiers","number","membersOnly","nonMemberPrice","maxParticipants","occupiedPlaces","occurrenceStartDate","occurrenceEndDate","deleteActivityRegistrationRow","ActivityOccurrence","activity","activityOccurrenceService","validateForm","activityOccurrences","addActivityOccurrenceRow","removeActivityOccurrenceRow","activityOccurrence","hasDuplicates","validateDuplicateActivityScheduleDates","otherActivity","otherIndex","ActivityScheduleForm","onHandleValidation","onRegisterFormInputRef","onRemoveActivityOccurrenceRow","__temp","__restore","activityService","isEditMode","_withAsyncContext","activityOccurenceForm","locationOptions","InPerson","Online","isOnline","pageImage","participantGuideUrl","activityPresentationUrl","savedPageImage","onActivityOccurrencesChange","validKeyNames","occurrence","JSON","stringify","displayErrors","enctype","ProductBaseForm","imageOverlayTextFr","imageOverlayTextEn","startsAt","endsAt","trainer","ActivityOccurrenceForm","onUpdatedActivityOccurrences","FormRadios","locationAddress","onlineUrl","onlinePhoneNumber","onlineWebinarNumber","surveyUrl","isPrivate","isPublished","activityRecordingUrl","Breadcrumbs","BackLinkTitle","ActivityForm","IconSearch","showPastActivities","activityOccurrencesAreLoading","loadFutureOrPastOccurrences","activityOccurrenceItems","activityOccurrencesHeader","SearchInput","isOnlineActivity","newParticipant","showAddParticipantPlusButton","addParticipant","emailAddress","allergies","reducedMobility","participantsAreLoading","participantsSearchValue","participantsItems","participantsHeaders","appUrl","URL","origin","URLSearchParams","search","onEdit","NewActivityParticipant","onNewParticipantAdded","selectedActivityId","activities","selectedActivity","findActivityWithId","givenActivityOccurrenceId","selectedActivityOccurrence","selectedActivityOccurrenceId","fetchActivityOccurrenceParticipants","disableDownloadButton","activitiesOptions","formOptions","activityOccurrencesOptions","newParticipantAdded","csvData","utf8BOM","Blob","createObjectURL","setAttribute","newId","disabled","ActivityParticipantTable","activityOccurenceService","getAllActivitiesExceptCurrent","getActivityOccurrencesExceptCurrent","fetchActivityOccurrenceParticipant","transferButtonIsDisabled","transferParticipant","ActivityParticipantTransferForm","registrationsAreLoading","registrationsSearchValue","registrationsItems","registration","billingAddress","participantsCount","isFree","activityRegistration","registrationsHeaders","fetchActivityRegistrations","ActivityRegistrationTable","onRegistrationDeleted","allOrganizations","organizationsAreLoading","organizationHeader","organizations","subscriptionStatus","loadAllOrganizations","organizationInvoices","getSubscriptionInvoices","lastModified","PlanType","plan","accountCode","accountingSoftwareProduct","itemCode","price","priceInputLabel","Syndicate","unitsMin","unitsMax","accountCodeInputLabel","newVal","membershipService","taxName","coOwnerPlans","CoOwner","corporatePlans","syndicatePlans","groupedByChapterSyndicatePlans","reduce","obj","updateMembership","membership","accountcode","updateAccountCodes","updateItemCodes","onBeforeMount","MembershipForm","onPlanUpdated","Legend","plans","MembershipsForm","isLessThanTwoDays","participantsHeader","activityRegistrations","fetchActivityRegistration","handleUpdateRedirect","now","activityName","activityNameFr","activityNameEn","occurrenceStartDateTime","activityOccurrenceStartDateAndTime","deletedActivityOccurrence","activityOccurrenceStartDate","activityOccurrenceStartTime","redirect","onUpdateRedirect","cardTitle","selectedActivityRegistration","deleteParticipant","MemberActivityParticipantTable","onDeleteParticipant","MemberActivityTable","onActivityRegistrationSelected","MemberActivities","isSyndicateOrganization","MemberForm","onFormSubmit","ContactForm","IndividualMemberSyndicateView","SyndicateCoownerOrganizationView","existingMember","isSyndicate","AdminResetMemberPassword","bookService","allBooks","booksAreLoading","tableBooks","isbn","loadAllBooks","books","book","bookHeader","yearOfPublication","numberOfPages","BookForm","documentCategorySlug","documentsMatchingCategory","documentCategoryKey","canSeeAllPolicies","Private","onPolicyChange","documentCategories","onCategoryChange","onFileChange","Documents","DocumentForm","createRouter","scrollBehavior","savedPosition","history","createWebHistory","component","Account","Coproperty","CopropertyIndex","requiredRole","SyndicateIndex","alias","AddMemberForm","EditMemberForm","Company","CompanyIndex","AddContactForm","EditContactForm","Membership","Invoices","MemberActivitiesView","AdminBookIndex","AdminAddBookForm","AdminEditBookForm","AdminOrganizationIndex","AdminOrganizationForm","AdminMembershipsIndex","AdminActivityOccurrenceIndex","AdminActivityForm","AdminActivityOccurrenceParticipants","AdminActivityOccurrenceRegistrations","AdminActivityOccurrenceParticipantTransfer","beforeEach","isRoleArray","isArray","doesNotHaveGivenRole","hasNoRoleAmountRoleList","Router","createApp","App","VueWindowSizePlugin","Vue3EasyDataTable","VueTippy","defaultProps","zIndex","placement","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","j","getter","__esModule","leafPrototypes","getProto","getPrototypeOf","__proto__","mode","ns","def","current","getOwnPropertyNames","definition","enumerable","chunkId","all","promises","u","miniCssF","g","globalThis","Function","prop","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","nc","onScriptComplete","prev","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","head","appendChild","toStringTag","nmd","paths","installedChunks","installedChunkData","promise","resolve","Error","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}