{"version":3,"sources":["webpack:///./src/providers/mail.js","webpack:///./src/components/Reservations/ModalCancelReservationDate.vue","webpack:///src/components/Reservations/ModalCancelReservationDate.vue","webpack:///./src/components/Reservations/ModalCancelReservationDate.vue?0edf","webpack:///./src/components/Reservations/ModalCancelReservationDate.vue?ed95","webpack:///./src/components/Reservations/ReservationComments.vue","webpack:///src/components/Reservations/ReservationComments.vue","webpack:///./src/components/Reservations/ReservationComments.vue?2fc1","webpack:///./src/components/Reservations/ReservationComments.vue?fa74","webpack:///./src/components/UI/Loader.vue","webpack:///src/components/UI/Loader.vue","webpack:///./src/components/UI/Loader.vue?6e56","webpack:///./src/components/UI/Loader.vue?9492","webpack:///./node_modules/core-js/internals/string-repeat.js","webpack:///./src/components/Reservations/ModalDeleteDate.vue","webpack:///src/components/Reservations/ModalDeleteDate.vue","webpack:///./src/components/Reservations/ModalDeleteDate.vue?5472","webpack:///./src/components/Reservations/ModalDeleteDate.vue?e116","webpack:///./src/eventbus/event-bus.js","webpack:///./node_modules/date-fns/esm/isAfter/index.js","webpack:///./src/components/UI/Form/BaseInputField.vue","webpack:///src/components/UI/Form/BaseInputField.vue","webpack:///./src/components/UI/Form/BaseInputField.vue?4903","webpack:///./src/components/UI/Form/BaseInputField.vue?440f","webpack:///./src/views/Reservations/ReservationDetail.vue","webpack:///./src/components/Reservations/ReservationProposal.vue","webpack:///./src/components/Proposals/Template/ProposalPreview.vue","webpack:///src/components/Proposals/Template/ProposalPreview.vue","webpack:///./src/components/Proposals/Template/ProposalPreview.vue?91a4","webpack:///./src/components/Proposals/Template/ProposalPreview.vue?9355","webpack:///./src/components/Hosts/HostCard.vue","webpack:///src/components/Hosts/HostCard.vue","webpack:///./src/components/Hosts/HostCard.vue?a5e2","webpack:///./src/components/Hosts/HostCard.vue?569e","webpack:///./src/components/Proposals/SwitchHost.vue","webpack:///src/components/Proposals/SwitchHost.vue","webpack:///./src/components/Proposals/SwitchHost.vue?4b8c","webpack:///./src/components/Proposals/SwitchHost.vue?c618","webpack:///src/components/Reservations/ReservationProposal.vue","webpack:///./src/components/Reservations/ReservationProposal.vue?9bfd","webpack:///./src/components/Reservations/ReservationProposal.vue?b365","webpack:///src/views/Reservations/ReservationDetail.vue","webpack:///./src/views/Reservations/ReservationDetail.vue?8f1d","webpack:///./src/views/Reservations/ReservationDetail.vue?c364","webpack:///./src/components/Reservations/ReservationRevisions.vue","webpack:///src/components/Reservations/ReservationRevisions.vue","webpack:///./src/components/Reservations/ReservationRevisions.vue?d2ff","webpack:///./src/components/Reservations/ReservationRevisions.vue?89d3","webpack:///./src/components/AccountControls/Login.vue","webpack:///src/components/AccountControls/Login.vue","webpack:///./src/components/AccountControls/Login.vue?4f29","webpack:///./src/components/AccountControls/Login.vue?04af","webpack:///./src/providers/company.js","webpack:///src/components/UI/TransitionExpand.vue","webpack:///./src/components/UI/TransitionExpand.vue","webpack:///./src/components/UI/TransitionExpand.vue?7c9b","webpack:///./src/components/Proposals/Template/TemplateParser.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Contact.vue","webpack:///src/components/Proposals/Template/TemplateItems/Contact.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Contact.vue?176e","webpack:///./src/components/Proposals/Template/TemplateItems/Contact.vue?7f8d","webpack:///./src/components/Proposals/Template/TemplateItems/Dates.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Date.vue","webpack:///src/components/Proposals/Template/TemplateItems/Date.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Date.vue?78d0","webpack:///./src/components/Proposals/Template/TemplateItems/Date.vue?2e02","webpack:///./src/components/Proposals/Template/TemplateItems/Images.vue","webpack:///src/components/Proposals/Template/TemplateItems/Images.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Images.vue?3500","webpack:///./src/components/Proposals/Template/TemplateItems/Images.vue?dc65","webpack:///./src/components/Proposals/Template/TemplateItems/Options.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionCard.vue","webpack:///src/components/Proposals/BookerPreview/ProposalOptionCard.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionCard.vue?793e","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionCard.vue?4eb3","webpack:///src/components/Proposals/Template/TemplateItems/Options.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Options.vue?602e","webpack:///./src/components/Proposals/Template/TemplateItems/Options.vue?7d03","webpack:///./src/components/Proposals/Template/TemplateItems/Program.vue","webpack:///src/components/Proposals/Template/TemplateItems/Program.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Program.vue?b8d7","webpack:///./src/components/Proposals/Template/TemplateItems/Program.vue?6dd2","webpack:///./src/components/Proposals/Template/TemplateItems/Spaces.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalSpaceCard.vue","webpack:///src/components/Proposals/BookerPreview/ProposalSpaceCard.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalSpaceCard.vue?04e1","webpack:///./src/components/Proposals/BookerPreview/ProposalSpaceCard.vue?e6e7","webpack:///src/components/Proposals/Template/TemplateItems/Spaces.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Spaces.vue?d60d","webpack:///./src/components/Proposals/Template/TemplateItems/Spaces.vue?2f15","webpack:///./src/components/Proposals/Template/TemplateItems/Summary.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionRow.vue","webpack:///src/components/Proposals/BookerPreview/ProposalOptionRow.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionRow.vue?f7e8","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionRow.vue?004f","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionCategoryRow.vue","webpack:///src/components/Proposals/BookerPreview/ProposalOptionCategoryRow.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionCategoryRow.vue?f875","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionCategoryRow.vue?29e0","webpack:///./src/components/Proposals/BookerPreview/ProposalPackageRow.vue","webpack:///src/components/Proposals/BookerPreview/ProposalPackageRow.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalPackageRow.vue?cfb0","webpack:///./src/components/Proposals/BookerPreview/ProposalPackageRow.vue?08e4","webpack:///./src/components/Proposals/BookerPreview/ProposalSpaceRow.vue","webpack:///src/components/Proposals/BookerPreview/ProposalSpaceRow.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalSpaceRow.vue?1162","webpack:///./src/components/Proposals/BookerPreview/ProposalSpaceRow.vue?f717","webpack:///src/components/Proposals/Template/TemplateItems/Summary.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Summary.vue?189f","webpack:///./src/components/Proposals/Template/TemplateItems/Summary.vue?4b38","webpack:///./src/components/Proposals/Template/TemplateItems/Text.vue","webpack:///src/components/Proposals/Template/TemplateItems/Text.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Text.vue?5548","webpack:///./src/components/Proposals/Template/TemplateItems/Text.vue?cbf5","webpack:///src/components/Proposals/Template/TemplateItems/Dates.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Dates.vue?cef2","webpack:///./src/components/Proposals/Template/TemplateItems/Dates.vue?559d","webpack:///./src/components/Proposals/Template/TemplateItems/Hero.vue","webpack:///src/components/Proposals/Template/TemplateItems/Hero.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Hero.vue?0437","webpack:///./src/components/Proposals/Template/TemplateItems/Hero.vue?d571","webpack:///./src/components/Proposals/Template/TemplateItems/Location.vue","webpack:///src/components/Proposals/Template/TemplateItems/Location.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Location.vue?faae","webpack:///./src/components/Proposals/Template/TemplateItems/Location.vue?243a","webpack:///./src/components/Proposals/Template/TemplateItems/Menu.vue","webpack:///src/components/Proposals/Template/TemplateItems/Menu.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Menu.vue?270f","webpack:///./src/components/Proposals/Template/TemplateItems/Menu.vue?ed74","webpack:///./src/components/Proposals/Template/TemplateItems/MixedContent.vue","webpack:///src/components/Proposals/Template/TemplateItems/MixedContent.vue","webpack:///./src/components/Proposals/Template/TemplateItems/MixedContent.vue?316e","webpack:///./src/components/Proposals/Template/TemplateItems/MixedContent.vue?0da1","webpack:///./src/components/Proposals/Template/TemplateItems/Terms.vue","webpack:///./src/components/Proposals/Template/TemplateItems/DrawerTerms.vue","webpack:///./src/components/UI/Components/DrawerV2.vue","webpack:///src/components/UI/Components/DrawerV2.vue","webpack:///./src/components/UI/Components/DrawerV2.vue?f6c9","webpack:///./src/components/UI/Components/DrawerV2.vue?e725","webpack:///src/components/Proposals/Template/TemplateItems/DrawerTerms.vue","webpack:///./src/components/Proposals/Template/TemplateItems/DrawerTerms.vue?d7ac","webpack:///./src/components/Proposals/Template/TemplateItems/DrawerTerms.vue?e8a7","webpack:///src/components/Proposals/Template/TemplateItems/Terms.vue","webpack:///./src/components/Proposals/Template/TemplateItems/Terms.vue?87d0","webpack:///./src/components/Proposals/Template/TemplateItems/Terms.vue?4548","webpack:///src/components/Proposals/Template/TemplateParser.vue","webpack:///./src/components/Proposals/Template/TemplateParser.vue?a15a","webpack:///./src/components/Proposals/Template/TemplateParser.vue?b7d4","webpack:///./src/components/Proposals/BookerPreview/ProposalOptionCard.vue?11ca","webpack:///./node_modules/core-js/modules/es.set.constructor.js","webpack:///./src/components/Reservations/ReservationTotals.vue","webpack:///src/components/Reservations/ReservationTotals.vue","webpack:///./src/components/Reservations/ReservationTotals.vue?871e","webpack:///./src/components/Reservations/ReservationTotals.vue?c5de","webpack:///./src/components/Reservations/ModalAddDate.vue","webpack:///src/components/Reservations/ModalAddDate.vue","webpack:///./src/components/Reservations/ModalAddDate.vue?25b1","webpack:///./src/components/Reservations/ModalAddDate.vue?04ec","webpack:///./node_modules/core-js/modules/es.set.symmetric-difference.v2.js","webpack:///./node_modules/core-js/modules/es.set.difference.v2.js","webpack:///./node_modules/core-js/modules/es.string.includes.js","webpack:///./src/components/Reservations/ReservationMeetingspaces.vue","webpack:///./src/components/Reservations/AddSpace.vue","webpack:///src/components/Reservations/AddSpace.vue","webpack:///./src/components/Reservations/AddSpace.vue?bb0e","webpack:///./src/components/Reservations/AddSpace.vue?4406","webpack:///./src/components/Reservations/EditSpace.vue","webpack:///src/components/Reservations/EditSpace.vue","webpack:///./src/components/Reservations/EditSpace.vue?e80b","webpack:///./src/components/Reservations/EditSpace.vue?064a","webpack:///src/components/Reservations/ReservationMeetingspaces.vue","webpack:///./src/components/Reservations/ReservationMeetingspaces.vue?4e9f","webpack:///./src/components/Reservations/ReservationMeetingspaces.vue?0e40","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./src/components/UI/AvatarImage.vue?75a7","webpack:///./src/components/Proposals/BookerPreview/ProposalSpaceCard.vue?5764","webpack:///./src/components/Reservations/ReservationTerms.vue","webpack:///src/components/Reservations/ReservationTerms.vue","webpack:///./src/components/Reservations/ReservationTerms.vue?9153","webpack:///./src/components/Reservations/ReservationTerms.vue?1343","webpack:///./src/components/Proposals/Template/TemplateItems/Contact.vue?7ae1","webpack:///./node_modules/core-js/modules/web.btoa.js","webpack:///./src/components/Reservations/ChangeDate.vue","webpack:///src/components/Reservations/ChangeDate.vue","webpack:///./src/components/Reservations/ChangeDate.vue?c65b","webpack:///./src/components/Reservations/ChangeDate.vue?497e","webpack:///./src/components/UI/AvatarImage.vue","webpack:///src/components/UI/AvatarImage.vue","webpack:///./src/components/UI/AvatarImage.vue?70b1","webpack:///./src/components/UI/AvatarImage.vue?2d28","webpack:///./src/components/AccountControls/SetPassword.vue","webpack:///src/components/AccountControls/SetPassword.vue","webpack:///./src/components/AccountControls/SetPassword.vue?5af7","webpack:///./src/components/AccountControls/SetPassword.vue?3df5","webpack:///./src/components/Reservations/ChangeDate.vue?c75b","webpack:///./src/components/Reservations/ReservationAcceptReject.vue","webpack:///src/components/Reservations/ReservationAcceptReject.vue","webpack:///./src/components/Reservations/ReservationAcceptReject.vue?5e57","webpack:///./src/components/Reservations/ReservationAcceptReject.vue?6402","webpack:///./node_modules/core-js/internals/set-iterate.js","webpack:///./node_modules/core-js/modules/es.string.repeat.js","webpack:///./src/providers/event.js","webpack:///./node_modules/core-js/internals/set-is-superset-of.js","webpack:///./src/components/Reservations/ReservationPayments.vue","webpack:///src/components/Reservations/ReservationPayments.vue","webpack:///./src/components/Reservations/ReservationPayments.vue?92b1","webpack:///./src/components/Reservations/ReservationPayments.vue?55c3","webpack:///./src/providers/channel.js","webpack:///./src/components/Proposals/Template/TemplateItems/Options.vue?c113","webpack:///./src/components/Comments/CommentItem.vue","webpack:///src/components/Comments/CommentItem.vue","webpack:///./src/components/Comments/CommentItem.vue?28b0","webpack:///./src/components/Comments/CommentItem.vue?725e","webpack:///./src/components/UI/ImageViewer.vue?41cd","webpack:///./src/components/Proposals/Template/TemplateItems/Images.vue?0dfe","webpack:///./src/providers/availability.js","webpack:///./src/providers/proposal.js","webpack:///./src/assets/images/spacer1_1.gif","webpack:///./src/components/Reservations/ReservationDetail.vue","webpack:///./src/providers/quote.js","webpack:///src/components/Reservations/ReservationDetail.vue","webpack:///./src/components/Reservations/ReservationDetail.vue?7c66","webpack:///./src/components/Reservations/ReservationDetail.vue?dc3d","webpack:///./node_modules/core-js/internals/set-method-get-keys-before-cloning-detection.js","webpack:///./node_modules/core-js/internals/iterate-simple.js","webpack:///./src/views/Reservations/ReservationDetail.vue?2054","webpack:///./src/components/Proposals/Template/TemplateParser.vue?ae89","webpack:///./src/providers/feeinvoice.js","webpack:///./src/components/Proposals/Template/TemplateItems/MoveItem.vue?6003","webpack:///./src/components/Reservations/ReservationProgram.vue","webpack:///src/components/Reservations/ReservationProgram.vue","webpack:///./src/components/Reservations/ReservationProgram.vue?2654","webpack:///./src/components/Reservations/ReservationProgram.vue?43f8","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./src/utils/channelHelper.js","webpack:///./src/components/Reservations/ReservationEvent.vue","webpack:///src/components/Reservations/ReservationEvent.vue","webpack:///./src/components/Reservations/ReservationEvent.vue?4f0d","webpack:///./src/components/Reservations/ReservationEvent.vue?71bb","webpack:///./src/components/Reservations/ReservationWorkspaces.vue","webpack:///src/components/Reservations/ReservationWorkspaces.vue","webpack:///./src/components/Reservations/ReservationWorkspaces.vue?8132","webpack:///./src/components/Reservations/ReservationWorkspaces.vue?ba13","webpack:///./node_modules/core-js/modules/es.set.js","webpack:///./src/providers/host.js","webpack:///./src/components/Invoices/InvoiceSummary.vue","webpack:///src/components/Invoices/InvoiceSummary.vue","webpack:///./src/components/Invoices/InvoiceSummary.vue?1e0e","webpack:///./src/components/Invoices/InvoiceSummary.vue?b696","webpack:///./src/components/UI/Components/SuccessAnimation.vue","webpack:///src/components/UI/Components/SuccessAnimation.vue","webpack:///./src/components/UI/Components/SuccessAnimation.vue?62aa","webpack:///./src/components/UI/Components/SuccessAnimation.vue?afbb","webpack:///./src/components/Reservations/ReservationSet.vue","webpack:///src/components/Reservations/ReservationSet.vue","webpack:///./src/components/Reservations/ReservationSet.vue?e29f","webpack:///./src/components/Reservations/ReservationSet.vue?3277","webpack:///./src/components/Reservations/ReservationMail.vue","webpack:///src/components/Reservations/ReservationMail.vue","webpack:///./src/components/Reservations/ReservationMail.vue?f89f","webpack:///./src/components/Reservations/ReservationMail.vue?23f1","webpack:///./src/components/Reservations/ReservationInvoice.vue","webpack:///src/components/Reservations/ReservationInvoice.vue","webpack:///./src/components/Reservations/ReservationInvoice.vue?661f","webpack:///./src/components/Reservations/ReservationInvoice.vue?0c86","webpack:///./node_modules/core-js/internals/set-is-subset-of.js","webpack:///./src/mixins/staggeredAnimation.js","webpack:///./src/components/Reservations/ReservationPackages.vue","webpack:///src/components/Reservations/ReservationPackages.vue","webpack:///./src/components/Reservations/ReservationPackages.vue?9e40","webpack:///./src/components/Reservations/ReservationPackages.vue?d54d","webpack:///./src/components/Reservations/ReservationProgram.vue?4e43","webpack:///./src/components/Proposals/ModalCancelProposal.vue?9671","webpack:///./src/components/Reservations/CopyDate.vue?f9c7","webpack:///./node_modules/core-js/modules/es.set.union.v2.js","webpack:///./src/components/UI/Components/Drawer.vue?d6c3","webpack:///./src/components/UI/Form/InputNumeric.vue","webpack:///src/components/UI/Form/InputNumeric.vue","webpack:///./src/components/UI/Form/InputNumeric.vue?eeb2","webpack:///./src/components/UI/Form/InputNumeric.vue?1eb8","webpack:///./src/components/UI/TransitionExpand.vue?08db","webpack:///./src/components/AccountControls/Register.vue","webpack:///./src/components/AccountControls/AuthPinValidationForm.vue","webpack:///src/components/AccountControls/AuthPinValidationForm.vue","webpack:///./src/components/AccountControls/AuthPinValidationForm.vue?2bd1","webpack:///./src/components/AccountControls/AuthPinValidationForm.vue?57ca","webpack:///src/components/AccountControls/Register.vue","webpack:///./src/components/AccountControls/Register.vue?8b55","webpack:///./src/components/AccountControls/Register.vue?3053","webpack:///./node_modules/core-js/modules/es.set.intersection.v2.js","webpack:///./src/components/Proposals/Template/TemplateItems/Terms.vue?6431","webpack:///./node_modules/core-js/internals/get-set-record.js","webpack:///./src/components/Reservations/ReservationCheckins.vue","webpack:///./src/components/Reservations/ReservationCheckins.vue?2523","webpack:///./src/components/Reservations/ReservationContacts.vue","webpack:///./src/components/Reservations/ModalAddContact.vue","webpack:///src/components/Reservations/ModalAddContact.vue","webpack:///./src/components/Reservations/ModalAddContact.vue?20be","webpack:///./src/components/Reservations/ModalAddContact.vue?fb76","webpack:///./src/components/Reservations/ModalEditContact.vue","webpack:///src/components/Reservations/ModalEditContact.vue","webpack:///./src/components/Reservations/ModalEditContact.vue?0e03","webpack:///./src/components/Reservations/ModalEditContact.vue?3f72","webpack:///./src/components/Reservations/ModalDeleteContact.vue","webpack:///src/components/Reservations/ModalDeleteContact.vue","webpack:///./src/components/Reservations/ModalDeleteContact.vue?cbff","webpack:///./src/components/Reservations/ModalDeleteContact.vue?d57a","webpack:///src/components/Reservations/ReservationContacts.vue","webpack:///./src/components/Reservations/ReservationContacts.vue?fc91","webpack:///./src/components/Reservations/ReservationContacts.vue?41b3","webpack:///./src/components/Reservations/ReservationOptions.vue","webpack:///src/components/Reservations/ReservationOptions.vue","webpack:///./src/components/Reservations/ReservationOptions.vue?0bff","webpack:///./src/components/Reservations/ReservationOptions.vue?d880","webpack:///./node_modules/core-js/internals/set-clone.js","webpack:///./src/components/AccountControls/ModalAuthentication.vue","webpack:///src/components/AccountControls/ModalAuthentication.vue","webpack:///./src/components/AccountControls/ModalAuthentication.vue?8373","webpack:///./src/components/AccountControls/ModalAuthentication.vue?3a1d","webpack:///./src/providers/crc.js","webpack:///./src/components/AccountControls/AuthController.vue","webpack:///./src/components/AccountControls/RequestNewPasswordFlow.vue","webpack:///src/components/AccountControls/RequestNewPasswordFlow.vue","webpack:///./src/components/AccountControls/RequestNewPasswordFlow.vue?f6bb","webpack:///./src/components/AccountControls/RequestNewPasswordFlow.vue?1069","webpack:///src/components/AccountControls/AuthController.vue","webpack:///./src/components/AccountControls/AuthController.vue?0399","webpack:///./src/components/AccountControls/AuthController.vue?d80e","webpack:///./src/components/Reservations/ReservationDetail.vue?26db","webpack:///./src/components/Proposals/Template/TemplateItems/Date.vue?0be9","webpack:///./src/components/UI/Components/DrawerV2.vue?ac39","webpack:///./src/components/AccountControls/SetPasswordConfirmation.vue","webpack:///src/components/AccountControls/SetPasswordConfirmation.vue","webpack:///./src/components/AccountControls/SetPasswordConfirmation.vue?3ca7","webpack:///./src/components/AccountControls/SetPasswordConfirmation.vue?b511","webpack:///./src/components/UI/Components/SuccessAnimation.vue?70f3","webpack:///./src/components/Location/ImageLibrary.vue?e31c","webpack:///./src/components/Proposals/BookerPreview/ProposalDetail.vue?06a7","webpack:///./src/providers/terms.js","webpack:///./src/providers/comment.js","webpack:///./src/components/Proposals/ProposalMail.vue","webpack:///src/components/Proposals/ProposalMail.vue","webpack:///./src/components/Proposals/ProposalMail.vue?d85b","webpack:///./src/components/Proposals/ProposalMail.vue?423e","webpack:///./node_modules/core-js/modules/es.string.ends-with.js","webpack:///./node_modules/core-js/modules/es.set.is-subset-of.v2.js","webpack:///./src/components/UI/ImageViewer.vue","webpack:///src/components/UI/ImageViewer.vue","webpack:///./src/components/UI/ImageViewer.vue?389e","webpack:///./src/components/UI/ImageViewer.vue?3c1b","webpack:///./node_modules/core-js/internals/set-size.js","webpack:///./src/components/UI/TextPlaceholder.vue","webpack:///src/components/UI/TextPlaceholder.vue","webpack:///./src/components/UI/TextPlaceholder.vue?c2b0","webpack:///./src/components/UI/TextPlaceholder.vue?2f3d","webpack:///./node_modules/core-js/internals/set-intersection.js","webpack:///./node_modules/core-js/internals/set-symmetric-difference.js","webpack:///./src/components/Reservations/ModalSetExpiration.vue","webpack:///src/components/Reservations/ModalSetExpiration.vue","webpack:///./src/components/Reservations/ModalSetExpiration.vue?f94b","webpack:///./src/components/Reservations/ModalSetExpiration.vue?19ca","webpack:///./src/components/Reservations/CopyReservation.vue","webpack:///src/components/Reservations/CopyReservation.vue","webpack:///./src/components/Reservations/CopyReservation.vue?9a24","webpack:///./src/components/Reservations/CopyReservation.vue?5731","webpack:///./src/components/Reservations/ReservationTags.vue","webpack:///src/components/Reservations/ReservationTags.vue","webpack:///./src/components/Reservations/ReservationTags.vue?d083","webpack:///./src/components/Reservations/ReservationTags.vue?3379","webpack:///./src/providers/pin.js","webpack:///./src/utils/domainHelper.js","webpack:///./src/providers/payment.js","webpack:///./node_modules/core-js/modules/es.set.is-superset-of.v2.js","webpack:///./node_modules/core-js/internals/set-difference.js","webpack:///./src/components/UI/Form/BaseCheckbox.vue?2b39","webpack:///./src/components/Proposals/Template/TemplateEditor.vue","webpack:///./src/components/Proposals/Template/TemplateItems/MoveItem.vue","webpack:///./src/components/Proposals/Template/TemplateItems/EditItem.vue","webpack:///./src/components/Location/ImageLibrary.vue","webpack:///src/components/Location/ImageLibrary.vue","webpack:///./src/components/Location/ImageLibrary.vue?ef90","webpack:///./src/components/Location/ImageLibrary.vue?245e","webpack:///src/components/Proposals/Template/TemplateItems/EditItem.vue","webpack:///./src/components/Proposals/Template/TemplateItems/EditItem.vue?550b","webpack:///./src/components/Proposals/Template/TemplateItems/EditItem.vue?eb30","webpack:///src/components/Proposals/Template/TemplateItems/MoveItem.vue","webpack:///./src/components/Proposals/Template/TemplateItems/MoveItem.vue?8f34","webpack:///./src/components/Proposals/Template/TemplateItems/MoveItem.vue?79ad","webpack:///src/components/Proposals/Template/TemplateEditor.vue","webpack:///./src/components/Proposals/Template/TemplateEditor.vue?d225","webpack:///./src/components/Proposals/Template/TemplateEditor.vue?481c","webpack:///./src/components/Reservations/EditSpace.vue?152d","webpack:///./src/components/AccountControls/ForgotPassword.vue","webpack:///src/components/AccountControls/ForgotPassword.vue","webpack:///./src/components/AccountControls/ForgotPassword.vue?e0b2","webpack:///./src/components/AccountControls/ForgotPassword.vue?e69e","webpack:///./src/components/UI/Form/BaseCheckbox.vue","webpack:///src/components/UI/Form/BaseCheckbox.vue","webpack:///./src/components/UI/Form/BaseCheckbox.vue?6365","webpack:///./src/components/UI/Form/BaseCheckbox.vue?1cd8","webpack:///./src/components/Comments/CommentItem.vue?e4f6","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./src/components/Proposals/BookerPreview/ProposalDetail.vue","webpack:///./src/components/Proposals/ModalChangeRequestProposal.vue","webpack:///src/components/Proposals/ModalChangeRequestProposal.vue","webpack:///./src/components/Proposals/ModalChangeRequestProposal.vue?4289","webpack:///./src/components/Proposals/ModalChangeRequestProposal.vue?87a7","webpack:///./src/components/Proposals/ModalCancelProposal.vue","webpack:///src/components/Proposals/ModalCancelProposal.vue","webpack:///./src/components/Proposals/ModalCancelProposal.vue?3856","webpack:///./src/components/Proposals/ModalCancelProposal.vue?72ba","webpack:///src/components/Proposals/BookerPreview/ProposalDetail.vue","webpack:///./src/components/Proposals/BookerPreview/ProposalDetail.vue?b69c","webpack:///./src/components/Proposals/BookerPreview/ProposalDetail.vue?22db","webpack:///./src/components/Reservations/ReservationInvoiceAddress.vue","webpack:///./src/components/Reservations/ModalEditInvoiceAddress.vue","webpack:///src/components/Reservations/ModalEditInvoiceAddress.vue","webpack:///./src/components/Reservations/ModalEditInvoiceAddress.vue?3199","webpack:///./src/components/Reservations/ModalEditInvoiceAddress.vue?ed0d","webpack:///src/components/Reservations/ReservationInvoiceAddress.vue","webpack:///./src/components/Reservations/ReservationInvoiceAddress.vue?542b","webpack:///./src/components/Reservations/ReservationInvoiceAddress.vue?9a98","webpack:///./src/components/UI/Form/BaseFieldTemplate.vue","webpack:///src/components/UI/Form/BaseFieldTemplate.vue","webpack:///./src/components/UI/Form/BaseFieldTemplate.vue?c7c7","webpack:///./src/components/UI/Form/BaseFieldTemplate.vue?884f","webpack:///./node_modules/core-js/internals/set-is-disjoint-from.js","webpack:///./src/providers/passkey.js","webpack:///./src/components/Reservations/ReservationMeetingspaces.vue?5972","webpack:///./src/components/Reservations/ReservationProposal.vue?2715","webpack:///./src/components/Reservations/ModalEditContact.vue?0fe4","webpack:///./src/components/Reservations/ReservationNotes.vue","webpack:///src/components/Reservations/ReservationNotes.vue","webpack:///./src/components/Reservations/ReservationNotes.vue?fa5a","webpack:///./src/components/Reservations/ReservationNotes.vue?0512","webpack:///./src/components/UI/Form/BaseInputFieldController.vue","webpack:///src/components/UI/Form/BaseInputFieldController.vue","webpack:///./src/components/UI/Form/BaseInputFieldController.vue?53c8","webpack:///./src/components/UI/TextPlaceholder.vue?c7c6","webpack:///./src/components/Reservations/ReservationRevisions.vue?84ce","webpack:///./node_modules/core-js/modules/es.set.is-disjoint-from.v2.js","webpack:///./src/components/Reservations/CopyReservation.vue?834f","webpack:///./node_modules/core-js/modules/web.self.js","webpack:///./src/components/UI/Form/InputNumeric.vue?1b68","webpack:///./src/components/Reservations/ModalSendMail.vue?9a6d","webpack:///./node_modules/core-js/internals/set-helpers.js","webpack:///./node_modules/core-js/modules/es.array.fill.js","webpack:///./src/components/UI/LinkPrint.vue","webpack:///src/components/UI/LinkPrint.vue","webpack:///./src/components/UI/LinkPrint.vue?d100","webpack:///./src/components/UI/LinkPrint.vue?068d","webpack:///./node_modules/date-fns/esm/isEqual/index.js","webpack:///./src/components/Mails/MailLog.vue","webpack:///src/components/Mails/MailLog.vue","webpack:///./src/components/Mails/MailLog.vue?63af","webpack:///./src/components/Mails/MailLog.vue?1908","webpack:///./src/components/Reservations/ModalSendMail.vue","webpack:///src/components/Reservations/ModalSendMail.vue","webpack:///./src/components/Reservations/ModalSendMail.vue?988e","webpack:///./src/components/Reservations/ModalSendMail.vue?c6d4","webpack:///./src/components/Pins/IsPinned.vue","webpack:///src/components/Pins/IsPinned.vue","webpack:///./src/components/Pins/IsPinned.vue?776b","webpack:///./src/components/Pins/IsPinned.vue?a503","webpack:///./src/components/Proposals/Template/TemplateItems/Hero.vue?9d7c","webpack:///./src/components/UI/Components/Drawer.vue","webpack:///src/components/UI/Components/Drawer.vue","webpack:///./src/components/UI/Components/Drawer.vue?bdbe","webpack:///./src/components/UI/Components/Drawer.vue?0991","webpack:///./src/components/Reservations/ReservationExternalLinks.vue","webpack:///src/components/Reservations/ReservationExternalLinks.vue","webpack:///./src/components/Reservations/ReservationExternalLinks.vue?48bf","webpack:///./src/components/Reservations/ReservationExternalLinks.vue?fc39","webpack:///./node_modules/core-js/internals/set-method-accept-set-like.js","webpack:///./src/components/Reservations/ReservationToDos.vue","webpack:///src/components/Reservations/ReservationToDos.vue","webpack:///./src/components/Reservations/ReservationToDos.vue?7d58","webpack:///./src/components/Reservations/ReservationToDos.vue?ea98","webpack:///./node_modules/core-js/internals/a-set.js","webpack:///./src/components/UI/Form/BaseFieldTemplate.vue?bcec","webpack:///./src/components/Terms/TermSummary.vue","webpack:///src/components/Terms/TermSummary.vue","webpack:///./src/components/Terms/TermSummary.vue?8764","webpack:///./src/components/Terms/TermSummary.vue?b6ab","webpack:///./src/components/Proposals/Template/TemplateItems/DrawerTerms.vue?13b4","webpack:///./src/components/Reservations/CopyDate.vue","webpack:///src/components/Reservations/CopyDate.vue","webpack:///./src/components/Reservations/CopyDate.vue?a0df","webpack:///./src/components/Reservations/CopyDate.vue?fc25","webpack:///./src/utils/webauthn.js","webpack:///./src/components/Proposals/Template/TemplateItems/EditItem.vue?df0f","webpack:///./node_modules/core-js/internals/number-is-finite.js","webpack:///./src/components/Reservations/ModalCreateInvoice.vue","webpack:///src/components/Reservations/ModalCreateInvoice.vue","webpack:///./src/components/Reservations/ModalCreateInvoice.vue?1bc5","webpack:///./src/components/Reservations/ModalCreateInvoice.vue?df72","webpack:///./node_modules/core-js/internals/set-union.js","webpack:///./src/components/UI/Form/BaseInputField.vue?26c0","webpack:///./src/components/Reservations/ModalCancelReservation.vue","webpack:///src/components/Reservations/ModalCancelReservation.vue","webpack:///./src/components/Reservations/ModalCancelReservation.vue?5613","webpack:///./src/components/Reservations/ModalCancelReservation.vue?8d4c","webpack:///./node_modules/uuid/dist/esm-browser/rng.js","webpack:///./node_modules/uuid/dist/esm-browser/regex.js","webpack:///./node_modules/uuid/dist/esm-browser/validate.js","webpack:///./node_modules/uuid/dist/esm-browser/stringify.js","webpack:///./node_modules/uuid/dist/esm-browser/v4.js","webpack:///./src/components/Reservations/ReservationFinalize.vue","webpack:///src/components/Reservations/ReservationFinalize.vue","webpack:///./src/components/Reservations/ReservationFinalize.vue?b757","webpack:///./src/components/Reservations/ReservationFinalize.vue?ae2c","webpack:///./src/components/Proposals/Template/TemplateItems/Program.vue?d85b","webpack:///./node_modules/core-js/modules/es.number.is-finite.js","webpack:///./src/components/UI/TransitionExpand.vue?cdc1","webpack:///./src/components/Settings/Reservations/ModalAddReservationMailText.vue","webpack:///src/components/Settings/Reservations/ModalAddReservationMailText.vue","webpack:///./src/components/Settings/Reservations/ModalAddReservationMailText.vue?521d","webpack:///./src/components/Settings/Reservations/ModalAddReservationMailText.vue?82f2","webpack:///./src/components/Reservations/ReservationBasicData.vue","webpack:///src/components/Reservations/ReservationBasicData.vue","webpack:///./src/components/Reservations/ReservationBasicData.vue?1e67","webpack:///./src/components/Reservations/ReservationBasicData.vue?b1cc","webpack:///./src/components/Proposals/Template/TemplateEditor.vue?0fb9","webpack:///./src/mixins/createId.js","webpack:///./src/components/Availability/AvailableLocation.vue","webpack:///src/components/Availability/AvailableLocation.vue","webpack:///./src/components/Availability/AvailableLocation.vue?5732","webpack:///./src/components/Availability/AvailableLocation.vue?50e3","webpack:///./src/components/UI/Message.vue","webpack:///src/components/UI/Message.vue","webpack:///./src/components/UI/Message.vue?5d20","webpack:///./src/components/UI/Message.vue?fb09"],"names":["apiUrl","process","apiToken","methods","getLocationReservationMailTexts","locationId","_asyncToGenerator","_regenerator","m","_callee","response","w","_context","n","axios","get","concat","headers","profileToken","store","getters","v","a","getReservationMailTexts","reservationKey","_arguments","arguments","_callee2","mailType","_context2","length","undefined","params","mailtype","getProposalMailTexts","proposalKey","_callee3","_context3","getRejectProposalMailText","requestId","_callee4","_context4","getLocationInvoiceMailTexts","_callee5","_context5","getLocationProposalMailTexts","_callee6","_context6","getInvoiceMailTextsByInvoiceId","invoiceId","_arguments2","_callee7","_context7","getInvoiceMailLog","_callee8","_context8","getReservationMailLog","reservationId","_callee9","_context9","getProposalMailLog","_callee0","_context0","getMailFailures","_arguments3","_callee1","_context1","saveLocationReservationMailTexts","mailTexts","_callee10","_context10","put","saveLocationInvoiceMailTexts","_callee11","_context11","saveLocationProposalMailTexts","_callee12","_context12","sendInvoiceMail","mail","_callee13","_context13","post","JSON","stringify","sendReservationMail","_callee14","_context14","sendProposalMail","_callee15","_context15","sendRequestMail","_callee16","_context16","render","_vm","this","_c","_self","attrs","$t","isSaving","isSavingError","onClickCancel","cancelReservationDate","showModal","on","scopedSlots","_u","key","fn","staticClass","_v","_s","proxy","slot","staticRenderFns","props","type","Boolean","default","reservationDate","Object","required","Function","isEmployee","isLocked","data","cancelruleId","changeAllInSet","applyCancelFee","cancelFeePercentage","isSavingSuccess","mReasonId","mReason","mReservation","predefinedReasons","computed","_objectSpread","mapState","mapGetters","terms","reservation","ReservationTerms","BookingTerm","cancelRule","_this","totalSeats","TotalSeats","hoursUntilStart","HoursUntilStart","CancelRules","cancelRules","filter","cr","MeetingtypeId","MinSeats","MaxSeats","maxValue","Math","min","apply","map","find","created","parse","push","Id","Name","$i18n","t","setApplyCancelFee","mapMutations","Percentage","_this2","reservationProvider","Key","Date","then","status","setReservation","EventBus","$emit","message","catch","error","finally","component","showModalCreateComment","hideModal","_e","staticStyle","setShowModalCreateComment","_l","filterComments","Comments","comment","components","CommentItem","Message","ModalCreateComment","comments","Array","mComments","mounted","$on","deletedReservationComment","beforeDestroy","$off","parentId","c","ParentId","IsDeleted","value","color","width","height","name","String","Number","toIntegerOrInfinity","toString","requireObjectCoercible","$RangeError","RangeError","module","exports","count","str","result","Infinity","isDeleting","isDeletingSuccess","isDeletingError","deleteselectedDate","disableSaveButton","model","isDeleteConfirmed","callback","$$v","expression","BaseCheckbox","selectedDate","self","criteria","$options","filters","dateObjectIsoDateString","deleteReservationDate","setReservationDate","Vue","isAfter","dirtyDate","dirtyDateToCompare","date","dateToCompare","getTime","class","labelForInput","showLabel","label","ref","iconLeft","iconRight","_t","isStatic","hasPassedValidation","hasError","editMode","inputCssClass","fieldType","maxLength","placeholder","disabledStatus","domProps","onBlur","onChange","$event","indexOf","_k","keyCode","onKeyUpEnter","onFocus","onInput","isArray","index","extends","BaseInputFieldController","percentage","pageLoadReady","pageTitle","pageSubTitle","_f","CreatedOn","locale","toLowerCase","ChannelName","CreatedByName","$router","go","isDraft","pageMenu","visiblePageComponent","viewPageComponents","detail","StatusId","LocationId","checkins","contacts","notes","todos","program","EndMinutes","StartMinutes","maillog","eventCalendar","revisions","payments","invoiceDetail","openInvoiceType","externalLinks","proposal","templateTimeStamp","showSetExpiration","Expiration","showSendProposal","ProposalKey","showSideDrawer","hideDrawer","drawerSize","showPreview","previewProposal","showSwitchHost","isLoading","hasProposal","showEditLayout","PublicationStatus","copyDirectLink","setShowEditLayout","setShowSendProposal","unpublishProposal","publishProposal","deleteProposal","Status","Type","setShowSetExpiration","IsExpired","deleteExpiration","Minutes","HasProposal","setShowSwitchHost","setShowPreview","clearTemplate","setShowTemplateSelection","IsSecondOption","toggleSecondOption","Version","RevisionId","syncProposal","changesMade","rejectProposal","acceptProposal","showTemplateSelection","templates","directives","rawName","selectedTemplate","$$selectedVal","prototype","call","target","options","o","selected","val","_value","multiple","template","hideTemplateSelection","selectTemplate","style","previewStyleProperties","cancelEditLayout","stopEditLayout","showCreateProposal","setShowCreateProposal","hosts","host","selectedHost","nativeOn","isCreatingProposal","createReservationProposal","timestamp","Language","TemplateParser","watch","Image","isSelected","JobTitle","Phone","Email","AvatarImage","closeDrawer","updateProposal","HostCard","activeHost","getHosts","Host","hostProvider","getLocationHosts","locationState","HostId","TemplateId","Template","proposalProvider","setProposal","ProposalPreview","ModalSendProposal","ModalSetExpiration","SwitchHost","originalProposal","showDeleteProposal","employee","LocationAccountRights","locked","isCreatingInvoice","HasInvoice","getProposal","getTemplates","window","removeEventListener","reCalculateScaling","mapActions","siteWidth","max","document","querySelector","offsetWidth","parent","$el","parnetComputedStyles","getComputedStyle","parentPadding","getPropertyValue","replace","parentWidth","scaleFactor","getProposalByKey","cleanSource","link","location","origin","navigator","clipboard","writeText","_this3","h","IsActiveManager","_this4","getLocationProposalTemplates","_this5","err","_this6","refreshReservation","_this7","_this8","_this9","_this0","_this1","_this10","_this11","deleteReservationExpiration","_this12","toggleProposalSecondOption","_this13","templateLanguage","Languages","l","proposalLanguage","templatePreview","removeXSS","ReservationInvoice","ReservationCheckins","ReservationDetail","ReservationComments","ReservationContacts","ReservationNotes","ReservationToDos","ReservationProgram","ReservationMail","ReservationEvent","ReservationRevisions","ReservationPayments","ReservationProposal","ReservationExternalLinks","TextPlaceholder","ReservationTags","$route","reservationRouteChanged","temp","LocationName","i","Dates","resDate","dateFormat","minutesToTime","previousInSet","SetId","setIndex","ReservationSet","findIndex","r","nextInSet","menuItems","nrOfInvoices","HasDepositInvoice","Link","hasProposalActivated","BadgeValue","Notes","ToDos","hasInvoiceActivated","deep","handler","IsDone","setPageView","setVisiblePageComponent","getReservationData","proposalMenuIndex","invoiceMenuIndex","showInvoice","getReservationByKey","updateReservationStore","getCommentsBatchNumber","counter","cancelReservation","updateReservation","item","functionMenuIndex","setSelectedMenuItemIndex","menuGroupIndex","selectedMenuItemIndex","invoice","IsDeposit","goToPreviousReservationInSet","previousReservation","goToReservation","goToNextReservationInSet","nextReservation","showModalRevertRevision","selectedRevision","reservationReverted","showCompare","_i","$$a","$$el","$$c","checked","$$i","slice","revision","selectedIndex","setSelectedRevision","CreatedBy","parseUTCDateToLocalDate","setShowModalRevertRevision","ViewType","NewData","_m","ReservationId","ModalRevertRevision","RevisionViewerClassic","RevisionViewerDates","hasLoaded","getReservationRevisions","unshift","dateObj","returnType","time","d","parseISO","output","convertDateTimeToTimeString","isLoggedIn","localeOverride","errorMessage","emailErrors","authorizeUser","$v","emailAddress","$touch","passwordErrors","password","showSpinner","$anyError","showPasskeyLogin","passkeyBusy","authorizeWithPasskey","actionForgotPassword","actionRegister","WeakMap","mixins","encryptString","linkActionForgotPassword","typeof","linkActionRegister","inject","failCode","passkeySupported","PublicKeyCredential","errors","$dirty","email","fieldLabel","validations","encryptedPassword","$invalid","encryptPassword","setAppStartupLoadReady","loginProvider","StatusCode","$store","dispatch","ProfileToken","channelId","optionsResponse","ceremonyId","publicKey","assertion","authResponse","p","resolveCurrentChannelId","isCyberdigmaDomain","passkeyProvider","getAuthenticationOptions","Error","CeremonyId","decodeRequestOptions","Options","credentials","authenticatePasskey","encodeAssertion","f","logOff","getLocationCompaniesToken","getCompaniesToken","getCompanyById","companyId","getProfileCompanies","profileId","getLocationCompanies","customerId","searchTerm","startDate","endDate","page","itemsPerPage","orderBy","sortDirection","cancel","CancelToken","source","cancelToken","token","q","getCompanies","trim","createCompany","company","updateCompany","deleteCompany","mergeTo","delete","createCompanyAddress","address","updateCompanyAddress","deleteCompanyAddress","CompanyId","setCompanyAddressAsDefault","functional","createElement","context","afterEnter","element","enter","_getComputedStyle","position","visibility","_getComputedStyle2","setTimeout","leave","_getComputedStyle3","children","showEdit","templateItems","stopEdit","cancelEdit","contentType","id","mProposal","setView","cssSectionClass","cssContainerClass","mItem","title","level","text","processTextForDisplay","allignementClass","showImage","showName","showJobTitle","showLocation","showEmail","showPhone","parentHasChilds","Location","alignment","align","_this$proposal","fillDynamically","dIndex","items","dItem","dsIndex","nextLevel","ProgramItems","dateString","Reservation","cssColumnsClasses","images","image","cssColumnClasses","backgroundImage","UrlLarge","optionItems","dates","oi","option","cssClasses","_vm$option$Image$UrlL","_vm$option$Image","isIncluded","includedLabel","description","ImageViewer","language","InPackage","IncludedWithSpace","IsPackage","Descriptions","Description","Texts","features","Features","ProposalOptionCard","Spaces","ShowProposalList","s","addEventListener","programItems","pi","Duration","AssignedSpaceName","IsPublic","sort","b","spaceItems","si","StartDate","space","mMeetingSpace","Images","swiperOptions","imageObj","UrlOriginal","meetingspaceName","maxSeats","feature","Body","includedOptionNames","SettingId","SvgSetting","SwiperCarousel","meetingtypeId","meetingspace","initialSlide","spaceBetween","slidesPerView","pagination","preloadImages","lazyLoading","watchSlidesProgress","lazy","loadPrevNext","checkInView","navigation","nextEl","prevEl","hasEndingParagraph","test","re","RegExp","fromCharCode","substr","_text","dateOption","SpaceId","OptionName","Seats","getImage","imageSrc","getLocationImage","ProposalSpaceCard","VoucherId","Voucher","voucher","Packages","path","pckg","ShowProposalSummary","categories","category","categoryId","categoryName","CategoryId","catOption","NoTax","TotalExclTax","TaxTotals","total","args","Total","TotalInclTax","taxTotals","Amount","getOptionName","note","SelectedTime","PriceTotal","NoteItem","colspan","headerName","getPackageName","PackageName","getSpaceName","ProposalOptionRow","ProposalOptionCategoryRow","ProposalPackageRow","ProposalSpaceRow","voucherName","_loop","j","TemplateDate","TemplateImages","TemplateOptions","TemplateProgram","Program","TemplateSpaces","TemplateSummary","Summary","TemplateText","Text","updateItem","locationLogo","heroImage","locationImages","imageItem","UrlMedium","proposalCustomerText","setImagesManually","fillItemImages","_this$proposal$Locati","_this$proposal2","Logo","_image","IsDefault","_this$host$Name","_this$host","CustomerName","phone","ExpirationDate","UrlSmall","showAddress","Address","Postalcode","City","CocNumber","locationDescription","des","LanguageId","a_tag","menuItem","tItem","itemId","TemplateContact","Contact","getImagesCssClass","showDrawer","seletedTermType","showDivider","term","setShowTermsDrawer","TermsType","getTermNameLabel","onClickClose","activeType","print","activeTerm","Terms","Changes","hasCancelRules","buildCancellationRulesText","close","unsetFillModeCssClass","animateClass","hideTitle","drawerTitle","slideDrawer","animateTimer","cls","charAt","toUpperCase","openDrawer","targetElement","clearTimeout","Drawer","Loader","DrawerV2","LinkPrint","ts","isTypeUnique","ChannelId","rules","_toConsumableArray","table","maxSeatsA","POSITIVE_INFINITY","maxSeatsB","forEach","rule","hoursToDay","hours","onlyDayFormat","$tc","floor","printWindow","open","termContent","innerHTML","write","focus","DrawerTerms","termsType","TemplateEditor","TemplateDates","TemplateHero","Hero","TemplateLocation","TemplateMenu","Menu","TemplateMixedContent","MixedContent","TemplateTerms","uuidv4","getElementById","scrollIntoView","behavior","block","inline","collection","collectionStrong","init","showDeleteCancelRule","titleText","totalExclTax","Settings","LanguageCulture","Currency","previewOnly","locationChannelSettings","SplitTaxDeductible","Deductible","totalInclTax","CancelRule","setShowDeleteCancelRule","Cancel","AmountToPay","TotalPaid","TotalOpen","ModalDeleteCancelRule","languageCulture","deafault","taxValues","settings","Channels","ls","_this$locationChannel","totals","roundToZero","num","round","roundToTwo","addCartDate","showDateAlreadyExistsWarning","openCalendarMonth","disabledDates","checkDate","use","VCalendar","month","getMonth","year","getFullYear","disabledDays","start","end","set","disabledDatesIndex","format","duplicateDateIndex","addReservationDate","$","symmetricDifference","setMethodGetKeysBeforeCloning","setMethodAcceptSetLike","FORCED","proto","real","forced","difference","fails","SET_LIKE_INCORRECT_BEHAVIOR","size","setLike","has","keys","next","done","baseSet","clear","Set","uncurryThis","notARegExp","correctIsRegExpLogic","stringIndexOf","includes","searchString","showAddSpace","parseIsoDateStringToDate","resStart","resEnd","showEditSpace","selectedSpace","Index","spaceEdited","showSpaceSummary","showDeleteSpace","setShowAddSpace","resSpaces","setMoveSpace","resMultiDate","UseInTotalSeats","SpaceName","setShowSpaceSummary","getVoucherName","getStartMinutes","getEndMinutes","PricePerSeat","CalculationType","TaxPercentage","overflow","setSpaceLock","IsLocked","setShowEditSpace","spacesInTotalSeatsCount","setShowDeleteSpace","showSpacesSubTotal","activeVouchers","selectedVoucherId","voucherId","spacesNeedingAttention","showDateInput","startMinutes","endMinutes","spaces","showSelectedSpaces","warnings","warning","$set","priceTypes","priceType","PriceType","removeSelectedSpace","PackageId","ShowTaxEditReservation","taxPercentages","taxPercentage","updateCrcValue","delay","_n","calculateTotalPrice","addReservationSpaces","CheckAvailability","InputNumeric","autoSearch","canChangeDate","countryId","seats","settingId","responseMessage","isSearching","vouchers","_this$reservation$Vou","ApplySeatRebate","pack","channelIndex","channel","PriceTypes","TaxPercentages","packageId","activeVoucher","addSpace","EndDate","PriceId","YieldSettingId","ms","timer","crcProvider","checkCrc","Crc","splice","showYieldSummary","linkedReservationOption","hasCalculationType","mSpace","modifiers","showSeatsZeroWarning","isValidating","validateAvailability","composing","$forceUpdate","setting","openinghours","MinMinutes","MaxMinutes","NrOfDays","showStartTimeAferEndTimeWarning","timeSlots","timeSlot","showNoPriceWarning","filteredRates","selectedRate","rate","getRateName","meetingspaceTotalPrice","disableUseTotalSeats","_defineProperty","setupDone","showLocationOpenWarning","nrOfWarnings","resetSpaceValue","ignoreWarning","showLocationOpeningHoursWarning","showUnitAvailableWarning","showMinimumHoursWarning","showSeatsSettingWarning","showMaxDaysOutWarning","saveSpace","handledWarnings","YieldSummary","onClickSave","check","isAvailable","priceUpdated","rates","showInActiveRates","showInternalOnlyRates","showEndTimeBeforeStartTimeWarning","showWarning","showPriceCalculation","SpacePrice","hasType","nrOfSpacesInTotalSeats","nrOfSpaces","disabled","warningCount","minutes","showNotAvailable","show","blockSaveButton","LinkedToOption","getLocationOpeninghours","getSpaceData","getLocationRates","showPriceCalculationInfo","openinghoursProvider","getOpeningHours","spaceProvider","getSpaceById","yieldProvider","getLocationYieldSettings","checkreservationSpaceAvailability","Warnings","PriceTotalignoreWarning","IsAvailable","warningIndex","cancelEditReservationSpace","isSaveing","updateReservationSpace","Value","setShowYieldSummary","yieldsettingId","ModalDeleteSpace","SpaceSummary","AddSpace","EditSpace","currentTotalSeats","showEditTotalSeats","resDates","minStartMinutes","tmp","lowest","maxEndMinutes","highest","NEGATIVE_INFINITY","spacesTotalSeats","nonPackageSpaces","activeDate","setHours","hour","minute","_this$reservation$Vou2","unlockReservationSpace","lockReservationSpace","setShowEditTotalSeats","_arrayWithoutHoles","arrayLikeToArray","_iterableToArray","Symbol","iterator","from","_nonIterableSpread","TypeError","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","showTermSummary","termId","showTerms","hasAgreedToTerms","finalizeReservation","reservationTerms","ItemName","Accepted","AcceptedByName","AcceptedOn","setShowTermSummary","TermSummary","TermsAgreement","HasAgreed","globalThis","getBuiltIn","validateArgumentsLength","i2c","$btoa","charCodeAt","BASIC","NO_ARG_RECEIVING_CHECK","WRONG_ARG_CONVERSION","WRONG_ARITY","global","bind","enumerable","btoa","charCode","string","changeData","_vm$availablity","selectedAccordion","showAllAccordions","setActiveAccordion","SourceDate","hideDatePicker","checkIfDateNotEqual","NewDate","showAlternatives","dataIsSetup","$screens","md","lg","searchAvailability","showDateAlreadySelectedWarning","isCheckingDate","skipSpace","showAlternativesLink","setShowAlternatives","wIndex","hideAlternatives","isLoadingAlternatives","availablity","Locations","enableSaveButton","saveReservation","AvailableLocation","ReservationSpaceCard","action","applyVoucher","back","isInitiated","meetingspaces","minDate","showInput","slideContentContainerHeight","modalBodySize","spaceChanged","isCheckingDateCounter","rd","fitereRes","cd","_d","ProposalStatus","allSpacesAvailable","allAvailable","checkCounter","errorCounter","hasChanges","allDatesChanged","setupChangeData","updateSelectedSpaceWithAlternative","newDate","isEqual","dateSpaces","firstDate","SpaceImage","NewPriceId","NewPricePerSeat","NewPriceTotal","NewCalculationType","changeDate","restoreDateSpaces","sourceDate","_sourceDate","getDisplayPrice","price","toCurrency","spaceIndex","dateIndex","restoredDateSpaces","checkAvailability","showSpaceAlternatives","sourceDateIso","newDateIso","copyReservationDateCheckAvailability","NewPrice","Hash","showPriceSuggestion","PriceHandled","checkString","checks","split","CheckString","checkIndex","join","getOriginalMeetingspace","orgMeetingspace","getOriginalOrUpdatedSpace","ignoreUpdatePrice","updatePrice","sIndex","NewCrc","MoveReservationDate","getAlternativeSpaces","_this$reservation","searchterm","availabilityProvider","getAvailability","processAvailabilty","selectedChangeData","availableSpace","some","existingSpace","newSpace","availability","setShowInput","backgroundColor","chosenRandomColor","mImageSrc","itemName","handleError","photoSize","fixedColorIndex","randomBgColor","getImageSource","generateAvatar","getHostImage","getProfileImage","getEventImage","performance","now","el","src","initialsArr","initials","canvas","ctx","getContext","beginPath","rect","closePath","fillStyle","fill","font","textAlign","fillText","toDataURL","ARR_COLORS","random","form","confirmPasswordErrors","confirmPassword","checkCodePart1","handleSubmit","checkCodePart2","checkCodePart3","errorCodeMessage","$error","isProcessing","code","passwordsNotEqual","minLength","sameAsPassword","sameAs","onCodeValidated","submitStatus","changePassword","confirmationToken","setConfirmationToken","e","$refs","codePart2","updateCode","codePart3","codePart1","isRejecting","isAccepting","rejectReservation","acceptReservation","iterateSimple","SetHelpers","SetPrototype","interruptible","repeat","getLocationEventsToken","getEvent","eventId","getEventByKey","getLocationEvents","showHistory","createEvent","eventName","tags","ItemId","IsActive","Url","Tags","Organizers","State","Country","createReservationEvent","reservationEvent","GroupId","updateEvent","eventData","deleteEvent","getReservationEvent","aSet","getSetRecord","iteratorClose","other","O","otherRec","getIterator","showAddPayment","addPayment","showDeletePayment","selectedPayment","deletePayment","showSendPaymentLink","paymentLink","goToPaymentLink","externalPaymentLink","deletePaymentLink","setShowSendPaymentLink","payment","Method","setShowDeletePayment","ExternalCode","refundPayment","cancelRefund","setShowAddPayment","ModalAddPayment","ModalDeletePayment","ReservationTotals","ModalSendMail","protocol","getReservationPayments","getPaymentLink","paymentProvider","paymentId","startPaymentRefund","cancelRefundRequest","paymentKey","setShowPayments","setVisibleItem","getChannelsToken","getChannelById","getChannelByUrl","url","getChannels","nonPublic","inActive","addLocationChannelSubscription","mComment","ProfileImage","ProfileId","require","ProfileName","stripHtml","showCommentInput","commentText","cancelShowCommentInput","isSavingReply","sendComment","profile","showReplyLink","setShowCommentInput","showDeleteLink","deleteComment","commentObj","$props","_commentText","replyToComment","getAvailabilityToken","getValidateAvailabilityToken","copyReservationCheckAvailabilityToken","startTime","endTime","spaceId","tenderId","widgetId","country","meetingtype","isBackend","tender","checkSpaceTimeAvailability","copyReservationCheckAvailability","selectSpace","searchId","hash","reservationType","getLocationProposalsToken","_response$data","proposalToken","getProposalPdf","getProfileProposalCount","showAll","getProfileProposals","direction","getLocationProposalCount","_arguments4","getLocationProposals","_arguments5","getLocationProposalsCsv","_arguments6","refuseProposalRequest","cancelReason","reason","CancelReason","Reason","retractProposal","proposalChangeRequest","Comment","getProposalSettings","_callee17","_context17","_callee18","_context18","getProposalToken","_callee19","_context19","saveProposalTemplate","_callee20","_context20","addProposalView","_callee21","_context21","saveProposalSettings","_callee22","_context22","_callee23","_context23","showAddDate","showDeleteDate","showModalCancelReservation","showCancelDate","showModalCreateInvoice","showSendMail","showInvoiceSummary","showProposalPreview","showChangeDate","drawerActionType","showCopyDate","showCopyReservation","showReservationSet","isLockedCancel","setShowCancelReservation","NoInvoice","disableCreateInvoice","setShowModalCreateInvoice","setShowChangeDate","isLockedCopyDate","setShowCopyReservation","PoRequired","toggleReservationPoRequired","toggleReservationNoTax","IsPrivate","toggleReservationIsPrivate","setShowReservationSet","setShowInvoiceSummary","setShowProposalPreview","emptyDates","showFinalizeReservation","reservationAccepted","reservationDenied","isSelectedDate","returnFormattedDate","setShowAddDate","setShowCopyDate","setShowCancelDate","reviveReservationDate","setShowDeleteDate","getLocationQuotesToken","getQuoteById","quoteId","getLocationQuotes","statusId","createQuoteFromReservation","ChangeDate","CopyReservation","ModalCancelReservation","ModalCancelReservationDate","ModalCreateInvoice","ReservationAcceptReject","ReservationFinalize","ReservationBasicData","ReservationInvoiceAddress","ReservationWorkspaces","ReservationMeetingspaces","ReservationOptions","ReservationPackages","IsPinned","InvoiceSummary","LinkDownload","ProposalDetail","ModalAddDate","CopyDate","ModalDeleteDate","isShownInDrawer","modalTitle","selectedOption","showAddCompany","showAddProfile","showCompanySummary","showAddPackage","selectedReservationDate","isBooker","booker","editDatePassed","BookerEditableUntil","IsBackend","InvoiceAddress","PoNumber","disable","newValue","oldValue","setShowSendMail","callbackInvoiceCreated","callbackInvoiceRejected","callbackInvoiceCredited","isDeposit","_locale","$dateTimeHelper","getDateFnsLocale","isDate","getLocationLanguageIds","locationProvider","languageIds","incomingReservationUpdate","incoming","getReservationPdf","resResponse","dataURItoBlob","dataURI","byteString","atob","mimeString","ab","ArrayBuffer","ia","Uint8Array","bb","Blob","setSelectedDate","setShowAddDeskspace","setVisibleSideBarItem","setShowAddPackage","setVisibleModalItem","goToProposal","proposalId","createQuote","quoteProvider","QuoteId","newInvoice","_drawerTitle","METHOD_NAME","defineProperty","add","values","record","ITERATOR_INSTEAD_OF_RECORD","step","getLocationFeeInvoices","getFeeInvoiceById","getFeeInvoicePdf","selectedView","showEditProgramItem","selectedProgramItem","scheduleTimeSlots","groups","group","preventDefault","onGroupDragEnter","onGroupDragOver","onGroupDrop","timeSlotHeight","onNewEventMouseDown","onNewEventMouseMove","onNewEventMouseUp","newEventDraft","getNewEventDraftStyle","events","event","getEventStyle","onEventDragStart","onEventDragEnd","showTooltip","moveTooltip","hideTooltip","onDeleteEvent","DynamicTime","DynamicItem","startDragTop","setShowEditProgramItem","AssignedSpace","tooltip","visible","startDragBottom","ModalEditProgramItem","_","isDraggingTop","isDraggingBottom","currentEvent","initialY","initialStartMinutes","initialDuration","top","left","$nextTick","arrangeGroupEvents","scheduleHeight","scheduleElement","resetDragState","mouseEvent","offsetX","offsetY","clientY","clientX","deleteReservationProgramItem","hrs","mins","active","ev","occupied","column","sameTime","findFreeColumn","usedCols","currentCols","totalColumns","isFinite","overlaps","aStart","aEnd","bStart","bEnd","cols","col","leftPercent","widthPercent","applyStylesToEvents","draggedEvent","dataTransfer","setData","currentTarget","classList","targetGroup","remove","copiedEvent","programItem","DynamicValue","LinkedEntity","LinkedItemId","saveReservationProgramItem","querySelectorAll","programEvent","onDragTop","stopDragTop","deltaY","deltaMinutes","newStartMinutes","newDuration","clearDragClasses","onDragBottom","stopDragBottom","closest","containerRect","getBoundingClientRect","relativeY","duration","draft","border","upsertReservationProgramItem","isRegExp","$TypeError","it","_resolveCurrentChannelId","fallbackId","candidates","_candidates","candidate","_args","hostname","channelProvider","showDeleteReservationEvent","setShowDeleteReservationEvent","isFinalizing","preventSave","finalizeEvent","filteredDates","ModalDeleteEvent","EventName","EventImage","EventDescription","EventLocation","EventDate","EventUrl","EventOrganizer","EventTags","setEventData","eventProvider","eventDate","publicationMessage","reservationToEvent","workspace","CurrencyIso","ModalEditSpace","setHostActive","hostId","createHost","updateHost","deleteHost","mInvoice","invoiceTitle","showSummary","setShowSummary","showMailLog","setShowMailLog","EmailsSent","goToInvoice","InvoiceDetail","InvoiceMail","Code","getInvoiceData","updateMailCount","callbackUpdatedInvoice","setInvoice","mailCount","invoiceProvider","getInvoiceById","showAllToggle","showRemoveConfirmation","reservations","res","setShowRemoveConfirmation","hideShowRemoveConfirmation","removeFromSet","BaseFieldTemplate","selectedReservation","deleteFromSet","mailLogs","ReservationMailLog","ProposalMail","mailProvider","invoiceType","showPoNumber","poNumber","blockOnPoNumber","saveReservationInvoice","showCreateInvoiceButton","createRegularInvoice","toggleReservationNoInvoice","createDepositInvoice","vm","selectedInvoiceId","saveReservationInvoiceAddress","createInvoice","createReservationInvoice","_error$response","iterate","beforeEnter","opacity","dataset","transition","afterLeave","parentNode","removeChild","PriceExclTax","locationLanguageCulture","deleteReservationPackage","AddPackage","_package","_ref","_package$Descriptions","_package$Descriptions2","_package$Descriptions3","dateIso","union","preventKeyPress","backPressEvent","keyup","blur","input","change","pasteEvent","isNumeric","allowNegativeValue","cursorStartPos","kCode","isNaN","substring","returnEvent","eventType","evt","which","cursorPos","getCursorPosition","startPos","priceLength","endPos","dotIndex","isRangeSelection","lastdigits","selectionStart","selectionEnd","registerSucceed","firstNameErrors","delayTouch","firstName","lastNameErrors","lastName","hidePhoneField","save","emailAlreadyExists","hidePasswordField","showBackButton","backFunc","isCheckinEmail","labelbuttonRegister","verificationKey","mVerificationKey","pinError","newCodeSent","showNewPinRequest","mEmail","requestNewPin","TransitionExpand","channelIdOverride","messageTimer","profileProvider","checkAuthPin","VerificationKey","Pin","verifiedSuccess","saveProfileToken","fetchProfile","FirstName","LastName","touchMap","BaseInputField","AuthPinValidationForm","registerType","typeId","profileCheckTimeout","sendConfirmMail","sendRegistrationMail","$reset","createProfile","Password","TermsId","RegisterType","TypeId","Profile","intersection","INCORRECT","aCallable","anObject","getIteratorDirect","INVALID_SIZE","SetRecord","intSize","obj","numSize","script","showAddContact","showEditContact","selectedContact","showDeleteContact","setShowAddContact","Contacts","contact","getContactTypeName","ReceiveEmail","setShowEditContact","setShowDeleteContact","isNameEmpty","addContact","newContact","hasBooker","contactTypes","contactType","ChangeAllInSet","bookerCount","addReservationContact","saveContact","mContact","updateReservationContact","contactIndex","deleteContact","deleteReservationContact","ModalAddContact","ModalEditContact","ModalDeleteContact","setupContactTypes","ct","showOptionSummary","showAddOption","showEditOption","showDeleteOption","showEditSortOrder","setShowAddOption","resOptions","setShowEditSortOrder","cat","cIndex","setShowOptionSummary","OptionId","showOptionVoucherAlert","TimeSelectable","UseManualDuration","BillableDuration","PricePerItem","RequiredItem","setEditOption","setDeleteOption","calculateCatTotal","AddOption","EditOption","ModalEditOptionSortOrder","ModalDeleteOption","ModalEditTotalSeats","OptionSummary","originalReservation","isAdmin","profileState","IsAdmin","showOptionsSubTotal","nonPackageOptinos","nrOfSeats","updateOptionTotals","inVoucher","showVoucherAlert","_this$reservation$Vou3","cancelEditOption","editSpace","IsPP","MaxTotal","optionId","modalSize","actionAfterLogin","AuthController","checkCrcCancel","Price","showSuccess","authFlowView","linkActionLogin","showSetNewPassword","showSetPasswordConfirmation","setShowForgotForm","setShowSetPasswordConfirmation","setShowSetNewPassword","ForgotPassword","SetPasswordConfirmation","SetPassword","Login","Register","SuccessAnimation","RequestNewPasswordFlow","tAfterLogin","handlerBackFunc","getTermsById","getLatestLicenseTerms","getLocationBookingTerms","createLocationBookingTerm","updateBookingTerm","deleteTerm","updateActivateTerm","agreeToTerms","getComments","getLocationComments","getLocationIncomingComments","commentId","addComment","addCartComment","addReservationComment","addReviewComment","markCommentAsHandled","mMailLogs","MailLog","RESPONSE","_this2$mMailLogs","_this3$mMailLogs","getOwnPropertyDescriptor","toLength","IS_PURE","CORRECT_IS_REGEXP_LOGIC","MDN_POLYFILL_BUG","descriptor","writable","endsWith","that","endPosition","len","search","isSubsetOf","imageSize","aspectRatio","immediate","getGroupImage","getArticleImage","wrapText","arrColors","x","y","maxWidth","lineHeight","words","line","testLine","metrics","measureText","testWidth","uncurryThisAccessor","numberOfItems","hasSpacing","getRandomInt","minLineWidth","maxLineWidth","placeholderItemHeight","fixSize","iterateSet","clone","keysIter","saveReservationExpiration","setDate","expirationDate","mExpirationDate","isoDate","upsertReservationExpiration","copyData","InSet","CreateProposal","CopyComments","CopyNotes","refInFor","disableDatesTillToday","ignoreNewSpacePrice","applyNewSpacePrice","CopyPackages","CopyOptions","OptionsOriginalPrice","showConfirmation","newReservation","enableCopyButton","copyReservation","createProposal","copyFinalized","fieldId","firstLoad","selectedAccordionDateIndex","dateChangeCounter","CopyVoucher","getVoucher","setupCopyData","IsValidated","parsedDate","copyDate","CopySpaces","removeFocusFromInput","elm","voucherProvider","getVoucherById","isBefore","_d$start","cancelCopy","buttonClickHandler","optionSet","setShowConfirmation","showEditTags","setShowEditTags","ModalEditTags","getLocationPins","checkIsPinned","pinItem","pin","deletePin","pinId","addInvoicePayment","paymentType","amount","InvoiceId","PaymentType","PaymentDate","addReservationPayment","getPaymentDetails","startPaymentProcess","returnUrl","isSupersetOf","cancelEditor","updateTemplate","isNewTemplate","pull","contentTypes","cloneItem","checkMove","drag","cItem","cssClassDraggable","styleDraggable","mItems","draggableLevel","itemDropped","selectedItem","setSelectedItem","deleteItem","_vm$selectedItem","_vm$selectedItem2","_vm$selectedItem3","_vm$selectedItem4","handleClassName","selectItem","removeItem","nextHandleClassName","nextDraggableLevel","showImageLibrary","setImage","showDynamicly","addManually","showGenericTitleTextInput","ckEditorStyle","setShowImageLibrary","heroNrOfPlaceholderLines","heroLineHeight","heroLineMinWidth","heroLineWidth","deleteImage","_vm$mItem$contentType","_vm$mItem","setContantTypeStructure","ctIndex","library","LocationImages","selectImage","SpaceImages","OptionImages","getLocationImages","getLocationImageLibrary","EditItem","ImageLibrary","parentContentType","activeImageIndex","_this$mItem","_this$mItem2","_this$mItem3","_this$mItem4","newVal","getItemTitle","screeResizeHanler","windowWidth","innerWidth","_mItem","_content","itemIndex","draggable","MoveItem","parentItem","updatedItem","templateId","columns","setTemplatePreview","newIndex","to","highlight","hideEditor","sendRequest","resetPassword","ConfirmationToken","classes","checkValue","cssClassLabel","wellKnownSymbol","MATCH","regexp","error1","error2","showModalAuthentication","modalTitleAuthentication","showChangeRequest","proposalUpdated","showReject","proposalCancelled","hideProposalActions","isAcceptingProposal","setShowChangeRequest","setShowReject","setShowModalAuthentication","previewMode","requestChange","notTheApplicant","cancelProposal","PhoneNumber","predefinedReason","languageId","previewedOnPage","ModalChangeRequestProposal","ModalCancelProposal","ModalAuthentication","hostTexts","hostTextAnimationInterval","hostTextAnimator","hostTextLoopAnimation","hostTextDisplayIndex","myDashboardUrl","resolve","href","showLogin","showReservationMade","modalAuthenticationTitle","_this$mProposal$Reser","provide","columnCssClass","getSpaceUsps","getRandomImages","arr","taken","setShowLogin","showEditInvoiceAddress","setShowEditInvoiceAddress","SendTo","showInvoiceData","showAddresses","Addresses","setInvoiceAddress","CompanyAddress","formFields","getCompany","companyProvider","ContactName","ContactEmail","ContactPhone","PostalCode","ModalEditInvoiceAddress","fieldClasses","getPasskeys","getRegistrationOptions","registerPasskey","attestation","Attestation","Assertion","MachineToken","getCookie","renamePasskey","revokePasskey","noteCreated","noteDeleted","noteEdited","newNote","deletedNote","noteIndex","editedNote","onKeyUp","labelId","uniqueId","inputId","for","uuid","matches","isDisjointFrom","defineBuiltInAccessor","DESCRIPTORS","INCORRECT_VALUE","configurable","simple","addToUnscopables","openInModal","openModal","closeModal","linkSource","pdfBlob","blobUrl","getInvoicePdf","feeinvoiceProvider","URL","createObjectURL","click","revokeObjectURL","dirtyLeftDate","dirtyRightDate","dateLeft","dateRight","selectedMailLog","showMailDetail","mailLog","From","To","Subject","setShowMailDetail","ModalMailDetail","statusIcon","validEmailSettings","deleteDraftAndCancel","sendMail","hasLoadedTexts","fromEmailErrors","FromEmail","mailAddresses","setMailInputEmpty","addMailAddress","deleteMailAddress","hasToAddressWarning","bccAddresses","addBCCAddress","deleteBCCAddress","setMailText","mailText","selectedMailText","MailType","subjectErrors","cke_chrome","hasBodyWarning","saveDraft","bodyErrors","MailInput","fromEmail","addressWarning","draftPresent","secondTimer","reservationSettings","output2","hasFromAddressWarning","hasSubjectWarning","getLocationReservationSettings","checkForDrafts","MailTexts","mailIndex","mt","getReservationSettings","DefaultSenderAddress","$localforge","SELECTVALUE","savingSpinner","emailError","addressIndex","ToEmail","CC","isPinned","setPinState","getPinType","getIsPinnedData","pinProvider","unpinItem","showAddModal","showDeleteModal","selectedExternalLink","externalLinkDeleted","showEditModal","externalLinkEdited","setShowAddModal","ExternalLinks","LinkType","setShowEditModal","setShowDeleteModal","ModalEditExternalLink","ModalDeleteExternalLink","ModalAddExternalLink","linktType","externalLink","linkIndex","updatedReservation","createSetLike","createSetLikeWithInfinitySize","selectedTabIndex","todoUpdated","todoCreated","todoDeleted","todo","todoIndex","newToDo","todoToDelete","mTerms","getTermsData","termsProvider","_vm$availability","dateChanged","copyOptions","optionsOriginalPrice","copyNotes","copyProgram","copySpaces","restoreSpaces","sourceDateISO","newDateISO","NewPricePriceTotal","CopyProgram","copyReservationDate","base64urlToArrayBuffer","padding","base64","raw","buffer","arrayBufferToBase64url","bytes","decodeCreationOptions","challenge","user","excludeCredentials","credential","encodeAttestation","rawId","extensions","getClientExtensionResults","attestationObject","clientDataJSON","allowCredentials","authenticatorData","signature","userHandle","globalIsFinite","canCreateInvoice","showInvoiceSettingsMessage","invoiceSettings","AllowSelfAuthorization","currencySymbol","CurrencySymbol","NoAuthorizationLowerThen","AutoEmailAfterAccept","gotoInvoiceSettings","hasZeroVatItems","hasZeroVat","spaceZeroVatItems","optionZeroVatItems","canCreate","PreventZeroVatOnInvoice","getLocationInvoiceSettings","getRandomValues","rnds8","rng","crypto","msCrypto","validate","byteToHex","offset","v4","buf","rnds","setShowBookingTermSummary","blockOnTerms","termsId","termsAccepted","numberIsFinite","stat","saveReservationMailText","newMailTexts","newMailText","baseInputField","mMailTexts","reservationMailTexts","setReservationMailTexts","showCustomerSummary","CustomerId","showVoucherSummary","showEditData","showReviveReservation","setShowEditData","ProposalPublicationStatus","ProposalSecondOption","TenderId","setShowCustomerSummary","setShowCompanySummary","CompanyName","LeadName","EventTypeName","reservationStatus","setShowReviveReservation","ReasonType","reservationVoucherApplied","setShowVoucherSummary","CheckVoucher","CompanySummary","CustomerSummary","ModalEditBasicData","ModalReviveReservation","VoucherSummary","availableLocation","sortedSpaces","viewType","deskspace","AvailableDeskspace","AvailableMeetingspace","AvailableWorkspace","selectedSpaceId","showUnavailable","staggeredAnimation","mShowUnavailable","IsEmployee","SpaceInternalName","getSpaceSettings","SpaceAvailable","M2","IncludedOptions","meetingspaceSettings","_loop2","_setting$SpacePrice$Y","_setting$SpacePrice","CurrencyId","TaxId","combindedClass"],"mappings":"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","file":"js/reservation-detail.js?id=46be669db8d9d4e52466","sourcesContent":["import axios from \"axios\";\nimport store from \"../store\";\n\nconst apiUrl = process.env.VUE_APP_API_BASE_URL + \"/api\";\nconst apiToken = process.env.VUE_APP_API_KEY;\n\nexport default {\n  methods: {\n    async getLocationReservationMailTexts(locationId) {\n      const response = await axios.get(\n        `${apiUrl}/v1/mail/text/location/${locationId}/reservation`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getReservationMailTexts(reservationKey, mailType = 'None') {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/reservation/${reservationKey}/mail/texts`,\n        {\n          params: {\n            mailtype: mailType\n          },\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getProposalMailTexts(proposalKey) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/mail/texts`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getRejectProposalMailText(requestId) {\n      const response = await axios.get(\n        `${apiUrl}/v1/mail/text/proposal/reject/${requestId}`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getLocationInvoiceMailTexts(locationId) {\n      const response = await axios.get(\n        `${apiUrl}/v1/mail/text/location/${locationId}/invoice`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getLocationProposalMailTexts(locationId) {\n      const response = await axios.get(\n        `${apiUrl}/v1/mail/text/location/${locationId}/proposal`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getInvoiceMailTextsByInvoiceId(invoiceId, mailType = 'None') {\n      const response = await axios.get(\n        `${apiUrl}/v1/mail/text/invoice/${invoiceId}`,\n        {\n          params: {\n            mailtype: mailType\n          },\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getInvoiceMailLog(invoiceId) {\n      const response = await axios.get(\n        `${apiUrl}/v1/mail/invoice/${invoiceId}/log`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getReservationMailLog(reservationId) {\n      const response = await axios.get(\n        `${apiUrl}/v1/mail/reservation/${reservationId}/log`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getProposalMailLog(proposalKey) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/mail/log`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getMailFailures(locationId, type = 'None') {\n      const response = await axios.get(\n        `${apiUrl}/v1/mail/failure/location/${locationId}`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async saveLocationReservationMailTexts(locationId, mailTexts) {\n      const response = await axios.put(\n        `${apiUrl}/v1/mail/text/location/${locationId}/reservation`,\n        mailTexts,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async saveLocationInvoiceMailTexts(locationId, mailTexts) {\n      const response = await axios.put(\n        `${apiUrl}/v1/mail/text/location/${locationId}/invoice`,\n        mailTexts,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async saveLocationProposalMailTexts(locationId, mailTexts) {\n      const response = await axios.put(\n        `${apiUrl}/v1/mail/text/location/${locationId}/proposal`,\n        mailTexts,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async sendInvoiceMail(\n      invoiceId,\n      mail\n    ) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/mail/invoice/${invoiceId}/send`,\n        JSON.stringify(mail),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async sendReservationMail(\n      reservationId,\n      mail\n    ) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/mail/reservation/${reservationId}/send`,\n        JSON.stringify(mail),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async sendProposalMail(\n      proposalKey,\n      mail\n    ) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/send`,\n        JSON.stringify(mail),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async sendRequestMail(\n      requestId,\n      mail\n    ) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/mail/request/${requestId}/send`,\n        JSON.stringify(mail),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    }\n  }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservation.ModalCancelReservationDate.Header_ModalHeader'),\"isSaving\":_vm.isSaving,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.cancelReservationDate,\"showModal\":_vm.showModal,\"buttonLabelConfirm\":_vm.$t('Components.Reservation.ModalCancelReservationDate.Label_Yes'),\"buttonLabelCancel\":_vm.$t('Components.Reservation.ModalCancelReservationDate.Label_No')},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',[_c('div',[_c('div',{staticClass:\"mx-4\"},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalCancelReservationDate.Text_ConfirmCancel' ))+\" \")])])])]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"\n      $t('Components.Reservation.ModalCancelReservationDate.Header_ModalHeader')\n    \"\n    :isSaving=\"isSaving\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"cancelReservationDate\"\n    :showModal=\"showModal\"\n    :buttonLabelConfirm=\"\n      $t('Components.Reservation.ModalCancelReservationDate.Label_Yes')\n    \"\n    :buttonLabelCancel=\"\n      $t('Components.Reservation.ModalCancelReservationDate.Label_No')\n    \"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div>\n        <div>\n          <div class=\"mx-4\">\n            {{\n              $t(\n                'Components.Reservation.ModalCancelReservationDate.Text_ConfirmCancel'\n              )\n            }}\n          </div>\n          <!-- <table class=\"table is-fullwidth\">\n            <tbody>\n              <tr v-if=\"terms\">\n                <td colspan=\"2\">\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservationDate.Label_TermsApply'\n                    )\n                  }}\n                  {{ terms.Version }}\n                </td>\n              </tr>\n              <tr>\n                <td>\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservationDate.Label_CancelReason'\n                    )\n                  }}\n                </td>\n                <td>\n                  <div class=\"select\">\n                    <select v-model=\"mReasonId\">\n                      <option\n                        v-for=\"predefinedReason in predefinedReasons\"\n                        :key=\"predefinedReason.Id\"\n                        :value=\"predefinedReason.Id\"\n                      >\n                        {{ predefinedReason.Name }}\n                      </option>\n                    </select>\n                  </div>\n                </td>\n              </tr>\n              <tr v-if=\"mReasonId === 6\">\n                <td>\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservationDate.Label_OtherReason'\n                    )\n                  }}\n                </td>\n                <td><input type=\"text\" v-model=\"mReason\" class=\"input\" /></td>\n              </tr>\n              <tr v-if=\"cancelRule\">\n                <td class=\"has-text-weight-bold\" colspan=\"2\">\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservationDate.Label_CancelRuleApplies'\n                    )\n                  }}\n                  {{ cancelRule.Percentage }}%\n                  {{\n                    $t('Components.Reservation.ModalCancelReservationDate.Label_Of')\n                  }}\n                  {{\n                    reservation.TotalInclTax\n                      | toCurrency(\n                        locationLanguageCulture,\n                        reservation.CurrencyIso\n                      )\n                  }}\n                </td>\n              </tr>\n              <tr v-if=\"isEmployee\">\n                <td>\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservationDate.Label_ApplyCancellationFees'\n                    )\n                  }}\n                </td>\n                <td class=\"has-text-right\">\n                  <div class=\"tabs is-toggle is-small\">\n                    <ul>\n                      <li :class=\"{ 'is-active': !applyCancelFee }\">\n                        <a @click=\"setApplyCancelFee(false)\">\n                          <span>{{ $t('General.No') }}</span>\n                        </a>\n                      </li>\n                      \n                      <li :class=\"{ 'is-active': applyCancelFee }\">\n                        <a @click=\"setApplyCancelFee(true)\">\n                          <span>{{ $t('General.Yes') }}</span>\n                        </a>\n                      </li>\n                      \n                    </ul>\n                  </div>\n                </td>\n              </tr>\n              <tr v-if=\"applyCancelFee && isEmployee\">\n                <td>Percentage</td>\n                <td>\n                  <div class=\"field has-addons\">\n                    <p class=\"control\">\n                      <input\n                        type=\"text\"\n                        class=\"input\"\n                        v-model.number=\"cancelFeePercentage\"\n                      />\n                    </p>\n                    <p class=\"control\">\n                      <a class=\"button is-static\">%</a>\n                    </p>\n                  </div>\n                </td>\n              </tr>\n            </tbody>\n          </table> -->\n        </div>\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { EventBus } from '@/eventbus/event-bus'\nimport { mapState, mapMutations, mapGetters } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    reservationDate: {\n      type: Object,\n      required: true,\n    },  \n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: false,\n      type: Boolean,\n    },\n  },\n\n  data() {\n    return {\n      cancelruleId: 0,\n      changeAllInSet: false,\n      applyCancelFee: false,\n      cancelFeePercentage: 0,\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      mReasonId: 0,\n      mReason: '',\n      mReservation: null,\n      predefinedReasons: [],\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n    ...mapGetters('locationStore', ['locationLanguageCulture']),\n\n    terms() {\n      let terms = null\n\n      if (\n        this.reservation &&\n        this.reservation.ReservationTerms &&\n        this.reservation.ReservationTerms.BookingTerm\n      ) {\n        terms = this.reservation.ReservationTerms.BookingTerm\n      }\n\n      return terms\n    },\n\n    cancelRule() {\n      let cancelRule = null\n      let totalSeats = this.reservation.TotalSeats\n      let hoursUntilStart = this.reservation.HoursUntilStart\n      if (hoursUntilStart < 0) {\n        hoursUntilStart = 0\n      }\n\n      if (this.terms && this.terms.CancelRules.length > 0) {\n        let cancelRules = this.terms.CancelRules.filter(\n          (cr) => cr.MeetingtypeId == this.reservation.MeetingtypeId\n        )\n\n        if (\n          cancelRules.filter((cr) => cr.MinSeats > -1 || cr.MaxSeats > -1)\n            .length > 0\n        ) {\n          cancelRules = cancelRules.filter((cr) => totalSeats <= cr.MaxSeats)\n        }\n\n        cancelRules = cancelRules.filter(\n          (cr) => cr.HoursUntilStart >= hoursUntilStart\n        )\n\n        let maxValue = Math.min.apply(\n          Math,\n          cancelRules.map(function (cr) {\n            return cr.HoursUntilStart\n          })\n        )\n        cancelRule = cancelRules.find(function (cr) {\n          return cr.HoursUntilStart == maxValue\n        })\n      }\n\n      return cancelRule\n    },\n  },\n\n  created() {\n    this.mReservation = JSON.parse(JSON.stringify(this.reservation))\n\n    this.predefinedReasons.push({\n      Id: 0,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservationDate.Reason_NoReasonSpecified'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 1,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservationDate.Reason_NoParticipants'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 2,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservationDate.Reason_FoundCheaperLocation'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 3,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservationDate.Reason_OtherRegion'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 4,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservationDate.Reason_MeetingIsCancelled'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 5,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservationDate.Reason_MeetingIsRescheduled'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 6,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservationDate.Reason_Other'\n      ),\n    })\n\n    if (!this.isEmployee) {\n      this.setApplyCancelFee(true)\n    }\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    setApplyCancelFee(apply) {\n      this.applyCancelFee = apply\n      this.cancelruleId = apply ? (this.cancelRule ? this.cancelRule.Id : 0) : 0\n      this.cancelFeePercentage = apply\n        ? this.cancelRule\n          ? this.cancelRule.Percentage\n          : 0\n        : 0\n    },\n\n    cancelReservationDate() {\n      // Do saving then close modal\n      if (!this.isSaving) {\n        this.isSaving = true\n\n        reservationProvider.methods\n          .cancelReservationDate(\n            this.mReservation.Key,\n            this.reservationDate.Date, \n            this.mReasonId,\n            this.mReason,\n            this.cancelruleId,\n            this.applyCancelFee,\n            this.cancelFeePercentage,\n          )\n          .then((response) => {\n            if (response.status === 200) {\n              this.isSavingSuccess = true\n\n              // Update reservation store\n              this.setReservation(response.data)\n\n              // Send message to display toast on screen\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservation.ModalCancelReservationDate.Toast_ReservationCancelled'\n                ),\n              })\n\n              this.onClickCancel();\n            }\n          })\n          .catch((error) => {\n            this.isSavingError = true\n          })\n          .finally(() => {\n            this.isSaving = false\n          })\n      }\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCancelReservationDate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCancelReservationDate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalCancelReservationDate.vue?vue&type=template&id=6295b72a\"\nimport script from \"./ModalCancelReservationDate.vue?vue&type=script&lang=js\"\nexport * from \"./ModalCancelReservationDate.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showModalCreateComment)?_c('ModalCreateComment',{attrs:{\"showModal\":_vm.showModalCreateComment,\"onClickCancel\":_vm.hideModal}}):_vm._e(),_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationComments.Main_Title')))]},proxy:true}])}),(_vm.isEmployee)?_c('div',{staticClass:\"mb-6\"},[_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationComments.Info_text')}})],1):_vm._e(),_c('div',{staticClass:\"actionBar has-padding mb-6\",staticStyle:{\"border-bottom\":\"1px solid #e5e5e5\"}},[_c('div',{staticClass:\"level\"},[_c('div',{staticClass:\"level-left\"}),_c('div',{staticClass:\"level-right\"},[_c('a',{attrs:{\"id\":\"id_button_add\"},on:{\"click\":_vm.setShowModalCreateComment}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'plus']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ReservationComments.Button_CreateComment' )))])])])])]),_vm._l((_vm.filterComments(_vm.reservation.Comments, 0)),function(comment){return _c('CommentItem',{key:comment.Id,attrs:{\"commentObj\":comment,\"comments\":_vm.reservation.Comments}})})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ModalCreateComment\n      v-if=\"showModalCreateComment\"\n      :showModal=\"showModalCreateComment\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ui-section-header>\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationComments.Main_Title')\n      }}</template>\n    </ui-section-header>\n\n    <div\n      v-if=\"isEmployee\"\n      class=\"mb-6\"\n    >\n      <Message :message=\"$t('Components.Reservation.ReservationComments.Info_text')\" />\n    </div>\n\n    <div\n      class=\"actionBar has-padding mb-6\"\n      style=\"border-bottom: 1px solid #e5e5e5\"\n    >\n      <div class=\"level\">\n        <div class=\"level-left\"></div>\n        <div class=\"level-right\">\n          <a\n            id=\"id_button_add\"\n            @click=\"setShowModalCreateComment\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon :icon=\"['fas', 'plus']\" />\n            </span>\n            <span>{{\n              $t(\n                'Components.Reservation.ReservationComments.Button_CreateComment'\n              )\n            }}</span>\n          </a>\n        </div>\n      </div>\n    </div>\n\n    <CommentItem\n      v-for=\"comment in filterComments(reservation.Comments, 0)\"\n      :key=\"comment.Id\"\n      :commentObj=\"comment\"\n      :comments=\"reservation.Comments\"\n    />\n  </div>\n</template>\n\n<script>\nimport { mapMutations, mapState } from 'vuex'\nimport EventBus from '../../eventbus/event-bus';\n\nexport default {\n  components: {\n    CommentItem: () => import('@/components/Comments/CommentItem'),\n    Message: () => import('@/components/UI/Message'),\n    ModalCreateComment: () =>\n      import('@/components/Reservations/ModalAddComment'),\n  },\n\n  props: {\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    comments: {\n      type: Array,\n      default: function() {\n        return []\n      },\n    },\n  },\n\n  data() {\n    return {\n      mComments: this.comments,\n      showModalCreateComment: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  mounted() {\n    EventBus.$on('commentDeleted', this.deletedReservationComment)\n  },\n\n  beforeDestroy() {\n    EventBus.$off('commentDeleted', this.deletedReservationComment)\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    filterComments(comments, parentId) {\n      return comments.filter((c) => c.ParentId === parentId && !c.IsDeleted)\n    },\n\n    deletedReservationComment(value) {\n      this.setReservation({\n        ...this.reservation,\n        Comments: this.reservation.Comments.map(c => ({\n          ...c,\n          IsDeleted: c.Id === value.Id ? true : c.IsDeleted\n        })),\n      })\n    },\n\n    setShowModalCreateComment() {\n      this.showModalCreateComment = true\n    },\n\n    hideModal() {\n      this.showModalCreateComment = false\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationComments.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationComments.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationComments.vue?vue&type=template&id=2bced1d5\"\nimport script from \"./ReservationComments.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationComments.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"has-padding has-text-centered\"},[_c('svg',{attrs:{\"viewBox\":\"0 0 120 30\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":_vm.color,\"width\":_vm.width,\"height\":_vm.height}},[_c('circle',{attrs:{\"cx\":\"15\",\"cy\":\"15\",\"r\":\"15\"}},[_c('animate',{attrs:{\"attributeName\":\"r\",\"from\":\"15\",\"to\":\"15\",\"begin\":\"0s\",\"dur\":\"0.8s\",\"values\":\"15;9;15\",\"calcMode\":\"linear\",\"repeatCount\":\"indefinite\"}}),_c('animate',{attrs:{\"attributeName\":\"fill-opacity\",\"from\":\"1\",\"to\":\"1\",\"begin\":\"0s\",\"dur\":\"0.8s\",\"values\":\"1;.5;1\",\"calcMode\":\"linear\",\"repeatCount\":\"indefinite\"}})]),_c('circle',{attrs:{\"cx\":\"60\",\"cy\":\"15\",\"r\":\"9\",\"fill-opacity\":\"0.3\"}},[_c('animate',{attrs:{\"attributeName\":\"r\",\"from\":\"9\",\"to\":\"9\",\"begin\":\"0s\",\"dur\":\"0.8s\",\"values\":\"9;15;9\",\"calcMode\":\"linear\",\"repeatCount\":\"indefinite\"}}),_c('animate',{attrs:{\"attributeName\":\"fill-opacity\",\"from\":\"0.5\",\"to\":\"0.5\",\"begin\":\"0s\",\"dur\":\"0.8s\",\"values\":\".5;1;.5\",\"calcMode\":\"linear\",\"repeatCount\":\"indefinite\"}})]),_c('circle',{attrs:{\"cx\":\"105\",\"cy\":\"15\",\"r\":\"15\"}},[_c('animate',{attrs:{\"attributeName\":\"r\",\"from\":\"15\",\"to\":\"15\",\"begin\":\"0s\",\"dur\":\"0.8s\",\"values\":\"15;9;15\",\"calcMode\":\"linear\",\"repeatCount\":\"indefinite\"}}),_c('animate',{attrs:{\"attributeName\":\"fill-opacity\",\"from\":\"1\",\"to\":\"1\",\"begin\":\"0s\",\"dur\":\"0.8s\",\"values\":\"1;.5;1\",\"calcMode\":\"linear\",\"repeatCount\":\"indefinite\"}})])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"has-padding has-text-centered\">\n    <svg\n      viewBox=\"0 0 120 30\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n      :fill=\"color\"\n      :width=\"width\"\n      :height=\"height\"\n    >\n      <circle cx=\"15\" cy=\"15\" r=\"15\">\n        <animate\n          attributeName=\"r\"\n          from=\"15\"\n          to=\"15\"\n          begin=\"0s\"\n          dur=\"0.8s\"\n          values=\"15;9;15\"\n          calcMode=\"linear\"\n          repeatCount=\"indefinite\"\n        />\n        <animate\n          attributeName=\"fill-opacity\"\n          from=\"1\"\n          to=\"1\"\n          begin=\"0s\"\n          dur=\"0.8s\"\n          values=\"1;.5;1\"\n          calcMode=\"linear\"\n          repeatCount=\"indefinite\"\n        />\n      </circle>\n      <circle cx=\"60\" cy=\"15\" r=\"9\" fill-opacity=\"0.3\">\n        <animate\n          attributeName=\"r\"\n          from=\"9\"\n          to=\"9\"\n          begin=\"0s\"\n          dur=\"0.8s\"\n          values=\"9;15;9\"\n          calcMode=\"linear\"\n          repeatCount=\"indefinite\"\n        />\n        <animate\n          attributeName=\"fill-opacity\"\n          from=\"0.5\"\n          to=\"0.5\"\n          begin=\"0s\"\n          dur=\"0.8s\"\n          values=\".5;1;.5\"\n          calcMode=\"linear\"\n          repeatCount=\"indefinite\"\n        />\n      </circle>\n      <circle cx=\"105\" cy=\"15\" r=\"15\">\n        <animate\n          attributeName=\"r\"\n          from=\"15\"\n          to=\"15\"\n          begin=\"0s\"\n          dur=\"0.8s\"\n          values=\"15;9;15\"\n          calcMode=\"linear\"\n          repeatCount=\"indefinite\"\n        />\n        <animate\n          attributeName=\"fill-opacity\"\n          from=\"1\"\n          to=\"1\"\n          begin=\"0s\"\n          dur=\"0.8s\"\n          values=\"1;.5;1\"\n          calcMode=\"linear\"\n          repeatCount=\"indefinite\"\n        />\n      </circle>\n    </svg>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: \"dots\",\n  props: {\n    color: {\n      type: String,\n      default: \"#000\"\n    },\n    height: {\n      type: Number,\n      default: 240\n    },\n    width: {\n      type: Number,\n      default: 60\n    }\n  }\n};\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=2e82bc9d\"\nimport script from \"./Loader.vue?vue&type=script&lang=js\"\nexport * from \"./Loader.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $RangeError = RangeError;\n\n// `String.prototype.repeat` method implementation\n// https://tc39.es/ecma262/#sec-string.prototype.repeat\nmodule.exports = function repeat(count) {\n  var str = toString(requireObjectCoercible(this));\n  var result = '';\n  var n = toIntegerOrInfinity(count);\n  if (n < 0 || n === Infinity) throw new $RangeError('Wrong number of repetitions');\n  for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str;\n  return result;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservation.ModalDeleteDate.title'),\"confirmButtonCssClass\":\"is-danger\",\"buttonLabelConfirm\":_vm.$t('Form.Control.Delete'),\"isSaving\":_vm.isDeleting,\"isSavingSuccess\":_vm.isDeletingSuccess,\"isSavingError\":_vm.isDeletingError,\"hideFooterButtons\":_vm.isDeletingError || _vm.isDeletingSuccess,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.deleteselectedDate,\"disableSaveButton\":_vm.disableSaveButton,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{staticClass:\"has-margin-bottom is-size-5 has-text-centered\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalDeleteDate.message'))+\" \")]),_c('div',{staticClass:\"has-text-centered\"},[_c('BaseCheckbox',{staticClass:\"has-text-left\",attrs:{\"label\":_vm.$t('Components.Reservation.ModalDeleteOption.Label_YesSure')},model:{value:(_vm.isDeleteConfirmed),callback:function ($$v) {_vm.isDeleteConfirmed=$$v},expression:\"isDeleteConfirmed\"}})],1)]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n  :modalTitle=\"$t('Components.Reservation.ModalDeleteDate.title')\"\n  confirmButtonCssClass=\"is-danger\"\n  :buttonLabelConfirm=\"$t('Form.Control.Delete')\"\n  :isSaving='isDeleting'\n  :isSavingSuccess='isDeletingSuccess'\n  :isSavingError='isDeletingError'\n  :hideFooterButtons='isDeletingError || isDeletingSuccess'\n  :onClickCancel='onClickCancel'\n  :onClickSave='deleteselectedDate'\n  :disableSaveButton=\"disableSaveButton\"\n  :showModal='showModal'\n  @closeModal='onClickCancel'\n>\n  <template slot='modalTitle'></template>\n  <template v-slot:content>\n    <div class=\"has-margin-bottom is-size-5 has-text-centered\">\n      {{ $t('Components.Reservation.ModalDeleteDate.message') }}\n    </div>\n\n    <div class=\"has-text-centered\">\n      <BaseCheckbox\n        v-model=\"isDeleteConfirmed\"\n        class=\"has-text-left\"\n        :label=\"$t('Components.Reservation.ModalDeleteOption.Label_YesSure')\"\n      />\n    </div>\n  </template>\n</ui-component-modal>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\ncomponents: {\n  BaseCheckbox: () => import('@/components/UI/Form/BaseCheckbox'),\n},\n\nprops: {\n  showModal: {\n    type: Boolean,\n    default: false\n  },\n\n  onClickCancel: {\n    type: Function,\n    required: true\n  },\n\n  selectedDate: {\n    type: Object,\n    default: null,\n    required: true\n  }\n},\n\ndata() {\n  return {\n    isDeleting: false,\n    isDeletingSuccess: false,\n    isDeletingError: false,\n    isDeleteConfirmed: false,\n  }\n},\n\ncomputed: {\n  ...mapState('reservationStore', ['reservation', 'reservationDate']),\n\n  disableSaveButton() {\n      return !this.isDeleteConfirmed || this.isDeleting\n    },\n},\n\ncreated() {},\n\nmethods: {\n  ...mapMutations('reservationStore', ['setReservation', 'setReservationDate']),\n\n  deleteselectedDate() {\n    let self = this\n\n    if (!self.isDeleting) {\n      self.isDeleting = true\n\n      let criteria = {\n        Date: this.$options.filters.dateObjectIsoDateString(this.selectedDate.Date)\n      }\n\n      reservationProvider.methods.deleteReservationDate(this.reservation.Key, criteria)\n      .then(response => {\n        if (response.status === 200) {\n            if (this.reservationDate !== null && this.selectedDate.Date === this.reservationDate.Date)\n            {\n              this.setReservationDate(null)\n            }\n\n            // Update reservation store\n            this.setReservation(response.data)\n\n            // Trigger success animation\n            this.isDeletingSuccess = true\n\n            EventBus.$emit('dateDeleted')\n\n            // Send message to be shown as toast on page \n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: 'Date deleted',\n            })\n\n            // Close modal\n            this.onClickCancel()\n          }\n      })\n      .finally(() => {\n        self.isDeleting = false\n      })\n    }\n  }\n}\n}\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalDeleteDate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalDeleteDate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalDeleteDate.vue?vue&type=template&id=4fd57a9b\"\nimport script from \"./ModalDeleteDate.vue?vue&type=script&lang=js\"\nexport * from \"./ModalDeleteDate.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import Vue from 'vue'\nexport const EventBus = new Vue()\n\nexport default EventBus\n","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isAfter\n * @category Common Helpers\n * @summary Is the first date after the second one?\n *\n * @description\n * Is the first date after the second one?\n *\n * @param {Date|Number} date - the date that should be after the other one to return true\n * @param {Date|Number} dateToCompare - the date to compare with\n * @returns {Boolean} the first date is after the second date\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Is 10 July 1989 after 11 February 1987?\n * const result = isAfter(new Date(1989, 6, 10), new Date(1987, 1, 11))\n * //=> true\n */\nexport default function isAfter(dirtyDate, dirtyDateToCompare) {\n  requiredArgs(2, arguments);\n  var date = toDate(dirtyDate);\n  var dateToCompare = toDate(dirtyDateToCompare);\n  return date.getTime() > dateToCompare.getTime();\n}","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"field\",class:{ 'is-horizontal': _vm.labelForInput, 'is-vertical': !_vm.labelForInput }},[(_vm.showLabel && _vm.label)?_c('div',{staticClass:\"field-label is-normal has-text-left\"},[_c('label',{ref:\"label\",staticClass:\"label\"},[_vm._v(\" \"+_vm._s(_vm.label)+\" \"),(_vm.required)?_c('span',{staticClass:\"has-text-danger\"},[_vm._v(\"*\")]):_vm._e()])]):_vm._e(),_c('div',{staticClass:\"field-body\"},[_c('div',{staticClass:\"field\"},[_c('div',{staticClass:\"control flex\",class:{ 'has-icons-left': _vm.iconLeft, 'has-icons-right': _vm.iconRight }},[_vm._t(\"symbol-before-input\"),_c('input',{staticClass:\"input\",class:[\n            {\n              'is-static': _vm.isStatic,\n              'is-success': _vm.hasPassedValidation,\n              'is-danger': _vm.hasError,\n              'is-borderless': !_vm.editMode,\n            },\n            _vm.inputCssClass,\n          ],attrs:{\"type\":_vm.fieldType,\"maxlength\":_vm.maxLength,\"placeholder\":_vm.placeholder,\"disabled\":_vm.disabledStatus,\"autocomplete\":\"none\"},domProps:{\"value\":_vm.value},on:{\"blur\":_vm.onBlur,\"keyup\":[_vm.onChange,function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.onKeyUpEnter.apply(null, arguments)}],\"focus\":_vm.onFocus,\"input\":_vm.onInput}}),_vm._t(\"symbol-after-input\")],2),(_vm.error)?_c('div',[(!Array.isArray(_vm.error))?_c('span',{staticClass:\"help is-danger\",domProps:{\"innerHTML\":_vm._s(_vm.error)}}):_c('div',{staticClass:\"help is-danger\"},_vm._l((_vm.error),function(message,index){return _c('div',{key:`e${index}`,domProps:{\"innerHTML\":_vm._s(message)}})}),0)]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    class=\"field\"\n    :class=\"{ 'is-horizontal': labelForInput, 'is-vertical': !labelForInput }\"\n  >\n    <div\n      v-if=\"showLabel && label\"\n      class=\"field-label is-normal has-text-left\"\n    >\n      <label\n        ref=\"label\"\n        class=\"label\"\n      >\n        {{ label }}\n        <span\n          class=\"has-text-danger\"\n          v-if=\"required\"\n        >*</span>\n      </label>\n    </div>\n    <div class=\"field-body\">\n      <div class=\"field\">\n        <div\n          class=\"control flex\"\n          :class=\"{ 'has-icons-left': iconLeft, 'has-icons-right': iconRight }\"\n        >\n          <slot name=\"symbol-before-input\"></slot>\n          <input\n            :value=\"value\"\n            :type=\"fieldType\"\n            :class=\"[\n              {\n                'is-static': isStatic,\n                'is-success': hasPassedValidation,\n                'is-danger': hasError,\n                'is-borderless': !editMode,\n              },\n              inputCssClass,\n            ]\"\n            :maxlength=\"maxLength\"\n            :placeholder=\"placeholder\"\n            :disabled=\"disabledStatus\"\n            class=\"input\"\n            autocomplete=\"none\"\n            @blur=\"onBlur\"\n            @keyup=\"onChange\"\n            @focus=\"onFocus\"\n            @input=\"onInput\"\n            @keyup.enter=\"onKeyUpEnter\"\n          />\n          <slot name=\"symbol-after-input\"></slot>\n        </div>\n        <div v-if=\"error\">\n          <span\n            v-if=\"!Array.isArray(error)\"\n            class=\"help is-danger\"\n            v-html=\"error\"\n          ></span>\n          <div\n            v-else\n            class=\"help is-danger\"\n          >\n            <div\n              v-for=\"(message, index) in error\"\n              :key=\"`e${index}`\"\n              v-html=\"message\"\n            ></div>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport BaseInputFieldController from '@/components/UI/Form/BaseInputFieldController'\nexport default {\n  extends: BaseInputFieldController,\n  props: {\n    editMode: {\n      type: Boolean,\n      default: true,\n    },\n    iconLeft: {\n      type: String,\n      default: '',\n    },\n    iconRight: {\n      type: String,\n      default: '',\n    },\n    showLabel: {\n      type: Boolean,\n      default: true,\n    },\n    labelForInput: {\n      type: Boolean,\n      default: true,\n    },\n    placeholder: {\n      type: String,\n      default: '',\n    },\n    percentage: {\n      type: Boolean,\n      default: false,\n    },\n    isStatic: {\n      type: Boolean,\n      default: false,\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.flex {\n  display: flex;\n  align-items: center;\n}\n.is-borderless {\n  padding-left: 0;\n  border-color: transparent;\n  &:hover {\n    border-color: transparent;\n  }\n}\n\n.field.is-vertical {\n  .label {\n    margin-bottom: 0.5em;\n  }\n}\n\n$threshold: $desktop - ($gap * 2);\n@media screen and (min-width: $threshold) {\n  .field.is-horizontal {\n    display: flex;\n    align-items: center;\n\n    .field-label {\n      padding-top: unset;\n      flex-basis: 150px;\n      flex-grow: 0;\n    }\n  }\n}\n@media screen and (max-width: $threshold) {\n  .field.is-horizontal {\n    display: block;\n\n    .field-label {\n      flex-basis: unset;\n      flex-grow: unset;\n      padding-top: 0.375em;\n      margin-bottom: 0.5rem;\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInputField.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInputField.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BaseInputField.vue?vue&type=template&id=56317757&scoped=true\"\nimport script from \"./BaseInputField.vue?vue&type=script&lang=js\"\nexport * from \"./BaseInputField.vue?vue&type=script&lang=js\"\nimport style0 from \"./BaseInputField.vue?vue&type=style&index=0&id=56317757&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"56317757\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',{staticClass:\"section\"},[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(!_vm.pageLoadReady)?_c('ui-loader',{key:\"loading\",staticClass:\"has-padding has-text-centered\"}):_c('layout-page-menu',{key:\"pagemenu\",attrs:{\"heroTitle\":_vm.pageTitle,\"heroSubTitle\":_vm.pageSubTitle,\"showPlaceholderText\":false,\"heroAdditionalSubTitleClass\":\"mb-0\"}},[_c('template',{slot:\"pageHeroSubSection\"},[(_vm.reservation)?[_c('span',{staticClass:\"is-size-7 has-text-weight-light is-italic has-text-grey\"},[_vm._v(_vm._s(_vm.$t('General.Created-on'))+\" \"+_vm._s(_vm._f(\"dateFormat\")(_vm.reservation.CreatedOn,_vm.$i18n.locale, 'longDateFormat'))+\" \"+_vm._s((_vm.$t('General.On') + ' ' + _vm.$t('General.Channel')).toLowerCase())+\" \"+_vm._s(_vm.reservation.ChannelName))]),(_vm.reservation.CreatedByName)?_c('span',{staticClass:\"is-size-7 has-text-weight-light is-italic has-text-grey\"},[_vm._v(\", \"+_vm._s(_vm.$t('General.By').toLowerCase())+\" \"+_vm._s(_vm.reservation.CreatedByName)+\" \")]):_vm._e()]:_vm._e(),(!_vm.reservation)?_c('text-placeholder',{staticClass:\"placeholderTermsLine\",attrs:{\"numberOfItems\":5,\"placeholderItemHeight\":\"12px\"}}):_vm._e(),_c('div',[_c('div',{staticClass:\"level\"},[_c('div',{staticClass:\"level-left\"},[_c('nav',{staticClass:\"navbar is-hidden-print\"},[_c('a',{staticClass:\"navbar-item\",on:{\"click\":function($event){return _vm.$router.go(-1)}}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Icon_Back')))])])])]),_c('div',{staticClass:\"level-right\"})])])],2),_c('template',{slot:\"pageMenu\"},[(_vm.reservation)?_c('ui-page-menu',{staticClass:\"mb-6\",class:{'greyed-out greyed-out-is-disabled': _vm.isDraft},attrs:{\"menuItems\":_vm.pageMenu}}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.detail)?_c('div',{staticClass:\"mb-6\",class:{'greyed-out greyed-out-is-disabled': _vm.isDraft}},[_c('ReservationTags',{attrs:{\"isEmployee\":_vm.isEmployee,\"isLocked\":false}})],1):_vm._e()],1),_c('template',{slot:\"pageContent\"},[_c('div',{staticClass:\"container\"},[(_vm.reservation)?_c('div',[(_vm.isDraft)?_c('Message',{staticClass:\"is-info has-text-pre-line\",attrs:{\"message\":_vm.$t('Views.Reservation.ReservationDetails.Message_IsDraft')}}):_vm._e(),(_vm.reservation.StatusId === 3)?_c('Message',{staticClass:\"is-warning\",attrs:{\"message\":_vm.$t(\n              'Views.Reservation.ReservationDetails.Message_ReservationCancelled'\n            )}}):_vm._e(),_c('transition-group',{class:{'is-unclickable': _vm.isDraft},attrs:{\"name\":\"component-fade\",\"mode\":\"out-in\",\"tag\":\"div\"}},[(_vm.visiblePageComponent === _vm.viewPageComponents.detail)?_c('ReservationDetail',{key:_vm.viewPageComponents.detail,attrs:{\"locationId\":_vm.reservation.LocationId,\"reservationKey\":_vm.reservation.Key}}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.checkins)?_c('ReservationCheckins',{key:_vm.viewPageComponents.checkins}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.comments)?_c('ReservationComments',{key:_vm.viewPageComponents.comments}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.contacts)?_c('ReservationContacts',{key:_vm.viewPageComponents.contacts}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.notes)?_c('ReservationNotes',{key:_vm.viewPageComponents.notes}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.todos)?_c('ReservationToDos',{key:_vm.viewPageComponents.todos}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.program)?_c('ReservationProgram',{key:_vm.viewPageComponents.program,attrs:{\"reservationId\":_vm.reservation.Id,\"endMinutes\":_vm.reservation.EndMinutes,\"startMinutes\":_vm.reservation.StartMinutes}}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.maillog)?_c('ReservationMail',{key:_vm.viewPageComponents.maillog}):_vm._e(),(\n                _vm.visiblePageComponent === _vm.viewPageComponents.eventCalendar\n              )?_c('ReservationEvent',{key:_vm.viewPageComponents.eventCalendar}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.revisions)?_c('ReservationRevisions',{key:_vm.viewPageComponents.revisions,attrs:{\"reservationId\":_vm.reservation.Id,\"currentReservation\":_vm.reservation}}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.payments)?_c('ReservationPayments',{key:_vm.viewPageComponents.payments,attrs:{\"reservationId\":_vm.reservation.Id}}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.invoiceDetail)?_c('ReservationInvoice',{key:_vm.viewPageComponents.invoiceDetail,attrs:{\"openInvoiceType\":_vm.openInvoiceType}}):_vm._e(),(_vm.visiblePageComponent === _vm.viewPageComponents.externalLinks)?_c('ReservationExternalLinks',{key:_vm.viewPageComponents.externalLinks}):_vm._e(),(\n                  _vm.visiblePageComponent === _vm.viewPageComponents.proposal\n                )?_c('ReservationProposal',{key:_vm.viewPageComponents.proposal}):_vm._e(),(\n                  _vm.visiblePageComponent === _vm.viewPageComponents.terms\n                )?_c('ReservationTerms',{key:_vm.viewPageComponents.terms}):_vm._e()],1)],1):_vm._e()])])],2)],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{key:'resprop-' + _vm.templateTimeStamp,attrs:{\"id\":\"reservationProposal\"}},[(_vm.showSetExpiration)?_c('ModalSetExpiration',{attrs:{\"showModal\":_vm.showSetExpiration,\"onClickCancel\":_vm.hideModal,\"expirationDate\":(_vm.reservation && _vm.reservation.Expiration) ? _vm.reservation.Expiration : null}}):_vm._e(),(_vm.showSendProposal)?_c('ModalSendProposal',{attrs:{\"showModal\":_vm.showSendProposal,\"onClickCancel\":_vm.hideModal,\"proposalKey\":_vm.reservation.ProposalKey,\"mailType\":_vm.mailType}}):_vm._e(),(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":'',\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":_vm.drawerSize},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showPreview)?_c('ProposalPreview',{key:'prvw-' + _vm.templateTimeStamp,attrs:{\"proposal\":_vm.previewProposal}}):_vm._e(),(_vm.showSwitchHost)?_c('SwitchHost',{on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e()]},proxy:true}],null,false,1175450157)}):_vm._e(),(!_vm.isLoading)?_c('div',{staticClass:\"container-reservationProposal\"},[(_vm.hasProposal)?_c('div',[(!_vm.showEditLayout)?[_c('div',{staticClass:\"field is-grouped is-grouped-right\"},[(_vm.proposal.PublicationStatus === 'Published')?_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":function($event){return _vm.copyDirectLink()}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_CopyLink')))])])]):_vm._e(),(_vm.proposal.PublicationStatus !== 'Published' && _vm.proposal.PublicationStatus !== 'Retracted')?_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.setShowEditLayout}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_EditLayout')))])])]):_vm._e(),(_vm.proposal.PublicationStatus === 'Published')?_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.setShowSendProposal}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'paper-plane']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_SendProposal')))])])]):_vm._e(),(_vm.proposal.PublicationStatus === 'Published' && _vm.proposal.PublicationStatus !== 'Retracted')?_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.unpublishProposal}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_UnPublish')))])])]):_vm._e(),(_vm.proposal.PublicationStatus !== 'Published' && _vm.proposal.PublicationStatus !== 'Retracted')?_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.publishProposal}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'upload']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_Publish')))])])]):_vm._e(),_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.deleteProposal}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_DeleteProposal')))])])])])]:_vm._e(),(_vm.showEditLayout)?[_c('div',{staticClass:\"title is-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_EditLayout'))+\" \")])]:_vm._e(),_c('hr'),_c('div',{},[_c('nav',{staticClass:\"navbar is-hidden-print\",attrs:{\"role\":\"navigation\",\"aria-label\":\"main navigation\"}},[_c('div',{staticClass:\"navbar-start\"},[_c('div',[((_vm.reservation.Status === 'Request' || \n                          _vm.reservation.Status === 'Draft' || \n                          _vm.reservation.Type === 'Proposal') && !_vm.reservation.Expiration)?_c('div',[_c('div',[_c('a',{on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_SetExpiration')))])])])]):_vm._e(),(_vm.reservation.Expiration && !_vm.showEditLayout)?_c('div',[(_vm.reservation.Expiration.IsExpired)?_c('div',[_c('span',{staticClass:\"tag icon-text is-danger\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_' + _vm.reservation.Type))+\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_HasExpired')))])]),_c('div',[_c('a',{staticClass:\"ml-2 is-szize-7\",on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Edit')))])]),_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.deleteExpiration}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Delete')))])])])]):_vm._e(),(!_vm.reservation.Expiration.IsExpired)?_c('div',[_c('div',[_c('span',{staticClass:\"tag icon-text is-warning\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_' + _vm.reservation.Type))+\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ExpiresOn'))+\" \"),_c('span',{staticClass:\"has-text-weight-bold\"},[_vm._v(_vm._s(_vm.reservation.Expiration.Date)+\" @ \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.reservation.Expiration.Minutes)))])])]),_c('div',[_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Edit')))])]),_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.deleteExpiration}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_DeleteExpiration')))])])])])]):_vm._e()]):_vm._e()])]),(_vm.reservation.HasProposal > 0)?_c('div',{staticClass:\"navbar-end\"},[_c('div',{staticClass:\"field is-grouped\"},[_c('p',{staticClass:\"control\"},[(_vm.showEditLayout)?_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.setShowSwitchHost}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'address-card']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_ChangeHost')))])]):_vm._e()]),_c('p',{staticClass:\"control\"},[(_vm.showEditLayout)?_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.setShowPreview}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'external-link']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('General.Preview')))])]):_vm._e()]),_c('p',{staticClass:\"control\"},[(_vm.showEditLayout)?_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.clearTemplate}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'empty-set']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_ClearTemplate')))])]):_vm._e()]),_c('p',{staticClass:\"control\"},[(_vm.showEditLayout)?_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.setShowTemplateSelection}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'repeat']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_SwapTemplate')))])]):_vm._e()]),_c('p',{staticClass:\"control\"},[(_vm.proposal.Status === 'RequiresChanges')?_c('span',{staticClass:\"tag icon-text is-warning\"},[_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_' + _vm.reservation.Type))+\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_RequiresChanges')))])]):_vm._e()]),_c('p',{staticClass:\"control\"},[_c('button',{staticClass:\"button is-info is-light is-small ml-2\",class:{ 'is-warning is-light': _vm.proposal.IsSecondOption },attrs:{\"title\":_vm.proposal.IsSecondOption ? _vm.$t('Components.Reservation.ReservationProposal.Label_DeactivateSecondOption') : _vm.$t('Components.Reservation.ReservationProposal.Label_ActivateSecondOption'),\"aria-label\":_vm.proposal.IsSecondOption ? _vm.$t('Components.Reservation.ReservationProposal.Label_DeactivateSecondOption') : _vm.$t('Components.Reservation.ReservationProposal.Label_ActivateSecondOption')},on:{\"click\":_vm.toggleSecondOption}},[_c('span',{staticClass:\"icon\"},[(_vm.proposal.IsSecondOption)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}}):_vm._e(),(!_vm.proposal.IsSecondOption)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'plus']}}):_vm._e()],1),(_vm.proposal.IsSecondOption)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_DeactivateSecondOption')))]):_vm._e(),(!_vm.proposal.IsSecondOption)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_ActivateSecondOption')))]):_vm._e()])]),(!_vm.showEditLayout)?_c('p',{staticClass:\"control\"},[_c('span',[_vm._v(\"#\"+_vm._s(_vm.reservation.HasProposal)+\".V\"+_vm._s(_vm.proposal.Version))])]):_vm._e()])]):_vm._e()])]),(_vm.reservation.RevisionId > _vm.proposal.RevisionId && !_vm.showEditLayout && _vm.proposal.PublicationStatus !== 'Retracted')?_c('div',{staticClass:\"has-background-white-ter p-4 has-margin-bottom has-text-centered\"},[_c('div',{staticClass:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.header_OutOfSync'))+\" \")]),_c('div',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.message_ProposalOutOfSync')))]),_c('a',{staticClass:\"button is-primary\",on:{\"click\":_vm.syncProposal}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.link_Sync')))])]):_vm._e(),(_vm.proposal.Status === 'RequiresChanges')?_c('div',{staticClass:\"has-background-white-ter p-4 has-margin-bottom has-text-centered\"},[_c('div',{staticClass:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.header_ChangeRequested'))+\" \")]),_c('div',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.message_CustomerRequestedChanges')))]),_c('a',{staticClass:\"button is-primary\",on:{\"click\":_vm.changesMade}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.button_ChangesMade')))])]):_vm._e(),(_vm.proposal.Status === 'AwaitingApprovalCustomer')?_c('div',{staticClass:\"has-background-white-ter p-4 has-margin-bottom has-text-centered\"},[_c('div',{staticClass:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.header_AcceptProposal'))+\" \")]),_c('a',{staticClass:\"button is-danger is-light\",on:{\"click\":_vm.rejectProposal}},[_vm._v(_vm._s(_vm.$t('GeneralActions.Reject')))]),_c('a',{staticClass:\"ml-2 button is-primary\",on:{\"click\":_vm.acceptProposal}},[_vm._v(_vm._s(_vm.$t('GeneralActions.Accept')))])]):_vm._e(),(_vm.showTemplateSelection)?_c('div',{staticClass:\"has-background-white-ter p-4 has-margin-bottom has-text-centered\"},[(_vm.templates && _vm.templates.length > 0)?_c('div',{staticClass:\"select mb-4\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedTemplate),expression:\"selectedTemplate\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selectedTemplate=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{domProps:{\"value\":null}},[_vm._v(\"Select template\")]),_vm._l((_vm.templates),function(template){return _c('option',{key:'tmpl-' + template.Id,domProps:{\"value\":template,\"selected\":_vm.selectedTemplate === template}},[_vm._v(_vm._s(template.Name))])})],2)]):_vm._e(),_c('div',[_c('a',{staticClass:\"button is-text\",on:{\"click\":_vm.hideTemplateSelection}},[_vm._v(_vm._s(_vm.$t('GeneralActions.Cancel')))]),_c('a',{staticClass:\"ml-2 button is-primary\",class:[_vm.selectedTemplate ? 'is-primary' : '', {'is-disabled' : !_vm.selectedTemplate}],attrs:{\"disabled\":!_vm.selectedTemplate},on:{\"click\":_vm.selectTemplate}},[_vm._v(_vm._s(_vm.$t('GeneralActions.Select')))])])]):_vm._e(),(!_vm.showTemplateSelection)?_c('div',{staticClass:\"previewProposalWrapper\"},[(_vm.reservation && _vm.proposal)?_c('TemplateParser',{key:'template' + _vm.templateTimeStamp,staticClass:\"previewProposal\",style:(_vm.previewStyleProperties),attrs:{\"showEdit\":_vm.showEditLayout},on:{\"cancelEdit\":_vm.cancelEditLayout,\"stopEdit\":_vm.stopEditLayout}}):_vm._e()],1):_vm._e()],2):_vm._e(),(_vm.reservation.HasProposal === 0)?_c('div',[(!_vm.showCreateProposal)?_c('div',[_c('div',{staticClass:\"mb-6\"},[_c('p',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.header_CreateProposal')))]),_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationProposal.message_CreateProposal'),\"type\":'is-info'}})],1),(_vm.reservation.Status === 'Final')?_c('div',{staticClass:\"mb-6\"},[_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationProposal.message_StatusFinal'),\"type\":'is-warning'}})],1):_vm._e(),_c('div',{staticClass:\"has-text-centered\"},[_c('a',{staticClass:\"button is-primary is-large\",on:{\"click\":_vm.setShowCreateProposal}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.button_CreateProposal')))])])]):_vm._e(),(_vm.showCreateProposal)?_c('div',[_c('div',{staticClass:\"mb-6\"},[_c('p',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.header_CreateStep1')))]),_c('div',{staticClass:\"columns is-multiline is-mobile is-centered my-4\"},_vm._l((_vm.templates),function(template){return _c('div',{key:'tmpl-' + template.Id,staticClass:\"card column is-one-quarter mr-4 mb-4\",on:{\"click\":function($event){_vm.selectedTemplate = template}}},[_c('div',{staticClass:\"card-content\"},[_c('div',{staticClass:\"media header-height\"},[_c('div',{staticClass:\"media-content\"},[_c('div',{staticClass:\"is-pulled-right\"},[_c('div',[(_vm.selectedTemplate === template)?_c('span',{staticClass:\"tag is-primary is-light\"},[_vm._v(\"Selected\")]):_vm._e()])]),_c('div',[_c('strong',[_vm._v(_vm._s(template.Name))])])])]),_c('div',{staticClass:\"content\"})])])}),0)]),_c('div',{staticClass:\"mb-6\"},[_c('p',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.header_CreateStep2')))]),_c('div',{staticClass:\"columns is-multiline is-mobile is-centered my-4\"},_vm._l((_vm.hosts),function(host,index){return _c('HostCard',{key:'host-' + index,staticClass:\"column is-half-mobile is-one-third-tablet mr-4 mb-4\",attrs:{\"host\":host,\"isSelected\":_vm.selectedHost && _vm.selectedHost.Id === host.Id},nativeOn:{\"click\":function($event){_vm.selectedHost = host}}})}),1)]),_c('div',{staticClass:\"has-text-centered\"},[_c('a',{staticClass:\"button is-large\",class:[\n             !_vm.isCreatingProposal && _vm.selectedTemplate !== null ? 'is-primary' : '', \n            { \n              'is-loading': _vm.isCreatingProposal,\n              'is-disabled': !_vm.selectedTemplate\n            }],attrs:{\"disabled\":_vm.selectedTemplate === null},on:{\"click\":_vm.createReservationProposal}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.button_CreateProposal')))])])]):_vm._e()]):_vm._e()]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.proposal)?_c('div',[_c('TemplateParser',{key:'prsr-' + _vm.proposal.timestamp,attrs:{\"previewProposal\":_vm.proposal,\"proposalLanguage\":_vm.proposal.Language}})],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"proposal\">\n   <TemplateParser \n      :previewProposal=\"proposal\"\n      :proposalLanguage=\"proposal.Language\"\n      :key=\"'prsr-' + proposal.timestamp\"\n    />\n  </div>\n</template>\n\n<script>\nimport TemplateParser from '@/components/Proposals/Template/TemplateParser';\n\nexport default {\n  name: 'ProposalPreview',\n  \n  components: {\n    TemplateParser\n  },\n\n  props: {\n    proposal: {\n      type: Object,\n      required: true\n    }\n  },\n\n  data () {\n    return {\n    }\n  },\n\n  mounted () {\n  },\n\n  created () {\n  },\n\n  computed: {},\n\n  methods: {\n\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalPreview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalPreview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalPreview.vue?vue&type=template&id=3ff1e4d3&scoped=true\"\nimport script from \"./ProposalPreview.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalPreview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"3ff1e4d3\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"card\"},[_c('div',{staticClass:\"card-content\"},[_c('div',{staticClass:\"media header-height\"},[_c('div',{staticClass:\"media-left\"},[_c('AvatarImage',{key:'h'+_vm.host.Image,staticClass:\"ml-0 mr-3 84x84\",attrs:{\"imageSrc\":_vm.host.Image,\"itemId\":_vm.host.LocationId,\"itemName\":_vm.host.Name,\"photoSize\":80,\"type\":\"host\"}})],1),_c('div',{staticClass:\"media-content\"},[_c('div',{staticClass:\"is-pulled-right\"},[_c('div',[(_vm.isSelected)?_c('span',{staticClass:\"tag is-primary is-light\"},[_vm._v(\"Selected\")]):_vm._e()])]),_c('div',[_c('strong',[_vm._v(_vm._s(_vm.host.Name))]),_c('div',[_c('span',{staticClass:\"outlined-label\"},[_vm._v(_vm._s(_vm.$t('Views.Settings.Hosts.Label_JobTitle')))]),_vm._v(\" \"+_vm._s(_vm.host.JobTitle)+\" \")]),_c('div',[_c('span',{staticClass:\"outlined-label\"},[_vm._v(_vm._s(_vm.$t('Views.Settings.Hosts.Label_Phone')))]),_vm._v(\" \"+_vm._s(_vm.host.Phone)+\" \")]),_c('div',[_c('span',{staticClass:\"outlined-label\"},[_vm._v(_vm._s(_vm.$t('Views.Settings.Hosts.Label_Email')))]),_vm._v(\" \"+_vm._s(_vm.host.Email)+\" \")])])])]),_c('div',{staticClass:\"content\"})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"card\">\n    <div class=\"card-content\">\n      <div class=\"media header-height\">\n        <div class=\"media-left\">\n          <AvatarImage\n            :key=\"'h'+host.Image\"\n            class=\"ml-0 mr-3 84x84\"\n            :imageSrc=\"host.Image\"\n            :itemId=\"host.LocationId\"\n            :itemName=\"host.Name\"\n            :photoSize=\"80\"\n            type=\"host\"\n          />\n        </div>\n        <div class=\"media-content\">\n          <div class=\"is-pulled-right\">\n            <div>\n              <span v-if=\"isSelected\" class=\"tag is-primary is-light\">Selected</span>\n            </div>\n          </div>\n          <div>\n            <strong>{{ host.Name }}</strong>\n            <div>\n              <span class=\"outlined-label\">{{$t('Views.Settings.Hosts.Label_JobTitle')}}</span>\n              {{ host.JobTitle }}\n            </div>\n            <div>\n              <span class=\"outlined-label\">{{$t('Views.Settings.Hosts.Label_Phone')}}</span>\n              {{host.Phone}}\n            </div>\n            <div>\n              <span class=\"outlined-label\">{{$t('Views.Settings.Hosts.Label_Email')}}</span>\n              {{host.Email}}\n            </div>\n          </div>\n        </div>\n      </div>\n      <div class=\"content\">\n        \n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport AvatarImage from '../UI/AvatarImage.vue';\n\nexport default {\n  components: {\n    AvatarImage,\n  },\n\n  props: {\n    host: {\n      type: Object,\n      default: null,\n    },\n\n    isSelected: {\n      type: Boolean,\n      default: false,\n    },\n  },\n\n  data () {\n    return {\n      \n    }\n  },\n\n  mounted () {\n  },\n\n  created () {\n  },\n\n  computed: {\n  },\n\n  methods: {\n\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HostCard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HostCard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./HostCard.vue?vue&type=template&id=6d640249&scoped=true\"\nimport script from \"./HostCard.vue?vue&type=script&lang=js\"\nexport * from \"./HostCard.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6d640249\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.hosts && _vm.hosts.length > 0)?_c('div',_vm._l((_vm.hosts),function(host,index){return _c('HostCard',{key:'host-' + index,staticClass:\"mb-4\",attrs:{\"host\":host,\"isSelected\":_vm.selectedHost && _vm.selectedHost.Id === host.Id},nativeOn:{\"click\":function($event){_vm.selectedHost = host}}})}),1):_vm._e(),_c('div',{staticClass:\"buttons is-right mt-6\"},[(!_vm.isSaving)?_c('a',{staticClass:\"button is-ghost has-margin-right\",attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.closeDrawer}},[_vm._v(_vm._s(_vm.$t('Form.Control.Cancel')))]):_vm._e(),_c('a',{staticClass:\"button is-large\",class:[\n      !_vm.isSaving ? 'is-primary' : '',\n      {\n        'is-loading': _vm.isSaving,\n        'is-disabled': _vm.isSaving\n      },\n    ],attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.updateProposal}},[_vm._v(\" \"+_vm._s(_vm.$t('Form.Control.Save'))+\" \")])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <div v-if=\"hosts && hosts.length > 0\">\n      <HostCard\n        v-for=\"(host, index) in hosts\"\n        :key=\"'host-' + index\"\n        :host=\"host\"\n        :isSelected=\"selectedHost && selectedHost.Id === host.Id\"\n        @click.native=\"selectedHost = host\"\n        class=\"mb-4\"\n      />\n    </div>\n\n    <div class=\"buttons is-right mt-6\">\n      <a v-if=\"!isSaving\" @click=\"closeDrawer\" class=\"button is-ghost has-margin-right\" :disabled=\"isSaving\">{{\n        $t('Form.Control.Cancel') }}</a>\n      <a @click=\"updateProposal\" class=\"button is-large\" :class=\"[\n        !isSaving ? 'is-primary' : '',\n        {\n          'is-loading': isSaving,\n          'is-disabled': isSaving\n        },\n      ]\" :disabled=\"isSaving\">\n        {{ $t('Form.Control.Save') }}\n      </a>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport hostProvider from '@/providers/host'\nimport proposalProvider from '@/providers/proposal'\n\nimport HostCard from '@/components/Hosts/HostCard';\n\nexport default {\n  components: {\n    HostCard\n  },\n\n  props: {\n    \n  },\n\n  data () {\n    return {\n      hosts: [],\n      isSaving: false,\n      selectedHost: null\n    }\n  },\n\n  mounted () {\n    this.selectedHost = this.activeHost;\n  },\n\n  created () {\n    this.getHosts();\n    \n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('proposalStore', ['proposal']),\n\n    activeHost(){\n      let host = null;\n\n      if (this.proposal && this.proposal.Host) {\n        host = this.proposal.Host;\n      }\n\n      return host;\n    }\n  },\n\n  methods: {\n    ...mapMutations('proposalStore', ['setProposal']),\n\n    getHosts() {\n      hostProvider.methods\n        .getLocationHosts(this.locationState.Id)\n        .then(response => {\n          if (response.status === 200) {\n            this.hosts = response.data;\n          }\n        })\n    },\n\n    updateProposal() {\n      if (this.isSaving) {\n        return;\n      }\n\n      this.isSaving = true;\n\n      let data = {\n        HostId: this.selectedHost.Id,\n        TemplateId: this.proposal.TemplateId,\n        Template: this.proposal.Template\n      }\n\n      proposalProvider.methods\n        .updateProposal(this.proposal.Key, data)\n        .then(response => {\n          if (response.status === 200) {\n            this.setProposal(response.data);\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t('Components.Reservation.ReservationProposal.message_HostUpdated'),\n            });\n\n            // Close \n            this.closeDrawer();\n          }\n        })\n        .finally(() => {\n          this.isSaving = false;\n        });\n    },\n\n    closeDrawer() {\n      // Close \n      this.$emit('hideDrawer');\n    }\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SwitchHost.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SwitchHost.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SwitchHost.vue?vue&type=template&id=12000fe4&scoped=true\"\nimport script from \"./SwitchHost.vue?vue&type=script&lang=js\"\nexport * from \"./SwitchHost.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"12000fe4\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div\n    :key=\"'resprop-' + templateTimeStamp\"\n    id=\"reservationProposal\"\n  >\n    <ModalSetExpiration\n      v-if=\"showSetExpiration\"\n      :showModal=\"showSetExpiration\"\n      :onClickCancel=\"hideModal\"\n      :expirationDate=\"(reservation && reservation.Expiration) ? reservation.Expiration : null\"\n    />\n\n    <ModalSendProposal\n      v-if=\"showSendProposal\"\n      :showModal=\"showSendProposal\"\n      :onClickCancel=\"hideModal\"\n      :proposalKey=\"reservation.ProposalKey\"\n      :mailType=\"mailType\"\n    />\n\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"''\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      :drawerSize=\"drawerSize\"\n    >\n      <template v-slot:content>\n        <ProposalPreview\n          v-if=\"showPreview\"\n          :proposal=\"previewProposal\"\n          :key=\"'prvw-' + templateTimeStamp\"\n        />\n\n        <SwitchHost\n          v-if=\"showSwitchHost\"\n          @hideDrawer=\"hideDrawer\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <div v-if=\"!isLoading\" class=\"container-reservationProposal\">\n      <div v-if=\"hasProposal\">\n        <template v-if=\"!showEditLayout\">\n          <div class=\"field is-grouped is-grouped-right\">\n            <p\n              v-if=\"proposal.PublicationStatus === 'Published'\"\n              class=\"control\"\n            >\n              <a\n                @click=\"copyDirectLink()\"\n                class=\"icon-text has-text-link \"\n              >\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'copy']\" />\n                </span>\n                <span>{{ $t('Components.Reservation.ReservationProposal.link_CopyLink') }}</span>\n              </a>\n            </p>\n            <p\n              v-if=\"proposal.PublicationStatus !== 'Published' && proposal.PublicationStatus !== 'Retracted'\"\n              class=\"control\"\n            >\n              <a\n                @click=\"setShowEditLayout\"\n                class=\"icon-text has-text-link\"\n              >\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'file-alt']\" />\n                </span>\n                <span>{{ $t('Components.Reservation.ReservationProposal.link_EditLayout') }}</span>\n              </a>\n            </p>\n            <p\n              v-if=\"proposal.PublicationStatus === 'Published'\"\n              class=\"control\"\n            >\n              <a\n                @click=\"setShowSendProposal\"\n                class=\"icon-text has-text-link \"\n              >\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'paper-plane']\" />\n                </span>\n                <span>{{ $t('Components.Reservation.ReservationProposal.link_SendProposal') }}</span>\n              </a>\n            </p>\n            <p\n              v-if=\"proposal.PublicationStatus === 'Published' && proposal.PublicationStatus !== 'Retracted'\"\n              class=\"control\"\n            >\n              <a\n                @click=\"unpublishProposal\"\n                class=\"icon-text has-text-link \"\n              >\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'ban']\" />\n                </span>\n                <span>{{ $t('Components.Reservation.ReservationProposal.link_UnPublish') }}</span>\n              </a>\n            </p>\n            <p\n              v-if=\"proposal.PublicationStatus !== 'Published' && proposal.PublicationStatus !== 'Retracted'\"\n              class=\"control\"\n            >\n              <a\n                @click=\"publishProposal\"\n                class=\"icon-text has-text-link\"\n              >\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'upload']\" />\n                </span>\n                <span>{{ $t('Components.Reservation.ReservationProposal.link_Publish') }}</span>\n              </a>\n            </p>\n            <p class=\"control\">\n              <a\n                @click=\"deleteProposal\"\n                class=\"icon-text has-text-link\"\n              >\n                <span class=\"icon has-text-danger\">\n                  <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                </span>\n                <span>{{ $t('Components.Reservation.ReservationProposal.link_DeleteProposal') }}</span>\n              </a>\n            </p>\n          </div>\n        </template>\n        <template v-if=\"showEditLayout\">\n          <div class=\"title is-3\">\n            {{ $t('Components.Reservation.ReservationProposal.link_EditLayout') }}\n          </div>\n        </template>\n        <hr />\n        <div class=\"\">\n          <nav\n            class=\"navbar is-hidden-print\"\n            role=\"navigation\"\n            aria-label=\"main navigation\"\n          >\n            <div class=\"navbar-start\">\n              <div>\n                <div v-if=\"(reservation.Status === 'Request' || \n                            reservation.Status === 'Draft' || \n                            reservation.Type === 'Proposal') && !reservation.Expiration\">\n                  <div>\n                    <a @click=\"setShowSetExpiration\">\n                      <span class=\"icon\">\n                        <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                      </span>\n                      <span>{{ $t('Components.Reservation.ReservationProposal.link_SetExpiration') }}</span>\n                    </a>\n                  </div>\n                </div>\n\n                <div v-if=\"reservation.Expiration && !showEditLayout\">\n                  <div v-if=\"reservation.Expiration.IsExpired\">\n                    <span class=\"tag icon-text is-danger\">\n                      <span class=\"icon\">\n                        <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                      </span>\n                      <span>{{ $t('Components.Reservation.ReservationDetail.Label_ReservationType_' + reservation.Type) }} {{ $t('Components.Reservation.ReservationDetail.Label_HasExpired') }}</span>\n                    </span>\n\n                    <div>\n                      <a\n                        @click=\"setShowSetExpiration\"\n                        class=\"ml-2 is-szize-7\"\n                      >\n                        <span class=\"icon\">\n                          <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                        </span>\n                        <span>{{ $t('Form.Control.Edit') }}</span>\n                      </a>\n\n                      <a\n                        @click=\"deleteExpiration\"\n                        class=\"ml-2 is-size-7\"\n                      >\n                        <span class=\"icon has-text-danger\">\n                          <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                        </span>\n                        <span>{{ $t('Form.Control.Delete') }}</span>\n                      </a>\n                    </div>\n                  </div>\n                  <div v-if=\"!reservation.Expiration.IsExpired\">\n                    <div>\n                      <span class=\"tag icon-text is-warning\">\n                        <span class=\"icon\">\n                          <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                        </span>\n                        <span>{{ $t('Components.Reservation.ReservationDetail.Label_ReservationType_' + reservation.Type) }} {{ $t('Components.Reservation.ReservationDetail.Label_ExpiresOn') }} <span class=\"has-text-weight-bold\">{{ reservation.Expiration.Date }} @ {{ reservation.Expiration.Minutes | minutesToTime }}</span></span>\n                      </span>\n\n                      <div>\n                        <a\n                          @click=\"setShowSetExpiration\"\n                          class=\"ml-2 is-size-7\"\n                        >\n                          <span class=\"icon\">\n                            <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                          </span>\n                          <span>{{ $t('Form.Control.Edit') }}</span>\n                        </a>\n\n                        <a\n                          @click=\"deleteExpiration\"\n                          class=\"ml-2 is-size-7\"\n                        >\n                          <span class=\"icon has-text-danger\">\n                            <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                          </span>\n                          <span>{{ $t('Components.Reservation.ReservationProposal.link_DeleteExpiration') }}</span>\n                        </a>\n                      </div>\n                    </div>\n                  </div>\n                </div>\n              </div>\n            </div>\n\n            <div\n              v-if=\"reservation.HasProposal > 0\"\n              class=\"navbar-end\"\n            >\n              <div class=\"field is-grouped\">\n                <p class=\"control\">\n                  <a\n                    v-if=\"showEditLayout\"\n                    @click=\"setShowSwitchHost\"\n                    class=\"icon-text has-text-link\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'address-card']\" />\n                    </span>\n                    <span>{{ $t('Components.Reservation.ReservationProposal.link_ChangeHost') }}</span>\n                  </a>\n                </p>\n                <p class=\"control\">\n                  <a\n                    v-if=\"showEditLayout\"\n                    @click=\"setShowPreview\"\n                    class=\"icon-text has-text-link\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'external-link']\" />\n                    </span>\n                    <span>{{ $t('General.Preview') }}</span>\n                  </a>\n                </p>\n                <p class=\"control\">\n                  <a\n                    v-if=\"showEditLayout\"\n                    @click=\"clearTemplate\"\n                    class=\"icon-text has-text-link\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['far', 'empty-set']\" />\n                    </span>\n                    <span>{{ $t('Components.Reservation.ReservationProposal.link_ClearTemplate') }}</span>\n                  </a>\n                </p>\n                <p class=\"control\">\n                  <a\n                    v-if=\"showEditLayout\"\n                    @click=\"setShowTemplateSelection\"\n                    class=\"icon-text has-text-link\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['far', 'repeat']\" />\n                    </span>\n                    <span>{{ $t('Components.Reservation.ReservationProposal.link_SwapTemplate') }}</span>\n                  </a>\n                </p>\n\n                <p class=\"control\">\n                  <span\n                    v-if=\"proposal.Status === 'RequiresChanges'\"\n                    class=\"tag icon-text is-warning\"\n                  >\n                    <span>{{ $t('Components.Reservation.ReservationDetail.Label_ReservationType_' + reservation.Type) }} {{ $t('Components.Reservation.ReservationDetail.Label_RequiresChanges') }}</span>\n                  </span>\n                </p>\n\n                <p class=\"control\">\n                  <button\n                    class=\"button is-info is-light is-small ml-2\"\n                    @click=\"toggleSecondOption\"\n                    :class=\"{ 'is-warning is-light': proposal.IsSecondOption }\"\n                    :title=\"proposal.IsSecondOption ? $t('Components.Reservation.ReservationProposal.Label_DeactivateSecondOption') : $t('Components.Reservation.ReservationProposal.Label_ActivateSecondOption')\"\n                    :aria-label=\"proposal.IsSecondOption ? $t('Components.Reservation.ReservationProposal.Label_DeactivateSecondOption') : $t('Components.Reservation.ReservationProposal.Label_ActivateSecondOption')\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon\n                        v-if=\"proposal.IsSecondOption\"\n                        :icon=\"['fas', 'times']\"\n                      />\n                      <font-awesome-icon\n                        v-if=\"!proposal.IsSecondOption\"\n                        :icon=\"['fas', 'plus']\"\n                      />\n                    </span>\n                    <span v-if=\"proposal.IsSecondOption\">{{ $t('Components.Reservation.ReservationProposal.Label_DeactivateSecondOption') }}</span>\n                    <span v-if=\"!proposal.IsSecondOption\">{{ $t('Components.Reservation.ReservationProposal.Label_ActivateSecondOption') }}</span>\n                  </button>\n                  \n                </p>\n\n                <p\n                  v-if=\"!showEditLayout\"\n                  class=\"control\"\n                >\n                  <span>#{{ reservation.HasProposal }}.V{{ proposal.Version }}</span>\n                  <!-- <span>Reservation revision{{ reservation.RevisionId }} - Proposal revision {{ proposal.RevisionId }}</span> -->\n                </p>\n              </div>\n            </div>\n          </nav>\n        </div>\n\n        <!-- Show Proposal out of sync bar-->\n        <div\n          v-if=\"reservation.RevisionId > proposal.RevisionId && !showEditLayout && proposal.PublicationStatus !== 'Retracted'\"\n          class=\"has-background-white-ter p-4 has-margin-bottom has-text-centered\"\n        >\n          <div class=\"title\">\n            {{ $t('Components.Reservation.ReservationProposal.header_OutOfSync') }}\n          </div>\n\n          <div class=\"mb-4\">{{ $t('Components.Reservation.ReservationProposal.message_ProposalOutOfSync') }}</div>\n\n          <a\n            @click=\"syncProposal\"\n            class=\"button is-primary\"\n          >{{ $t('Components.Reservation.ReservationProposal.link_Sync') }}</a>\n        </div>\n\n        <!-- Show changes requested bar-->\n        <div\n          v-if=\"proposal.Status === 'RequiresChanges'\"\n          class=\"has-background-white-ter p-4 has-margin-bottom has-text-centered\"\n        >\n          <div class=\"title\">\n            {{ $t('Components.Reservation.ReservationProposal.header_ChangeRequested') }}\n          </div>\n\n          <div class=\"mb-4\">{{ $t('Components.Reservation.ReservationProposal.message_CustomerRequestedChanges') }}</div>\n\n          <a\n            @click=\"changesMade\"\n            class=\"button is-primary\"\n          >{{ $t('Components.Reservation.ReservationProposal.button_ChangesMade') }}</a>\n        </div>\n\n        <!-- Show accept/reject proposal bar-->\n        <div\n          v-if=\"proposal.Status === 'AwaitingApprovalCustomer'\"\n          class=\"has-background-white-ter p-4 has-margin-bottom has-text-centered\"\n        >\n          <div class=\"title\">\n            {{ $t('Components.Reservation.ReservationProposal.header_AcceptProposal') }}\n          </div>\n\n          <a\n            @click=\"rejectProposal\"\n            class=\"button is-danger is-light\"\n          >{{ $t('GeneralActions.Reject') }}</a>\n          <a\n            @click=\"acceptProposal\"\n            class=\"ml-2 button is-primary\"\n          >{{ $t('GeneralActions.Accept') }}</a>\n        </div>\n\n        <div\n          v-if=\"showTemplateSelection\"\n          class=\"has-background-white-ter p-4 has-margin-bottom has-text-centered\"\n        >\n          <div\n            v-if=\"templates && templates.length > 0\"\n            class=\"select mb-4\"\n          >\n            <select v-model=\"selectedTemplate\">\n              <option :value=\"null\">Select template</option>\n              <option\n                v-for=\"template in templates\"\n                :key=\"'tmpl-' + template.Id\"\n                :value=\"template\"\n                :selected=\"selectedTemplate === template\"\n              >{{ template.Name }}</option>\n            </select>\n          </div>\n\n          <div>\n            <a\n              @click=\"hideTemplateSelection\"\n              class=\"button is-text\"\n            >{{ $t('GeneralActions.Cancel') }}</a>\n            <a\n              @click=\"selectTemplate\"\n              class=\"ml-2 button is-primary\"\n              :disabled=\"!selectedTemplate\"\n              :class=\"[selectedTemplate ? 'is-primary' : '', {'is-disabled' : !selectedTemplate}]\"\n            >{{ $t('GeneralActions.Select') }}</a>\n          </div>\n        </div>\n\n        <div\n          class=\"previewProposalWrapper\"\n          v-if=\"!showTemplateSelection\"\n        >\n          <TemplateParser\n            v-if=\"reservation && proposal\"\n            :showEdit=\"showEditLayout\"\n            @cancelEdit=\"cancelEditLayout\"\n            @stopEdit=\"stopEditLayout\"\n            :key=\"'template' + templateTimeStamp\"\n            class=\"previewProposal\"\n            :style=\"previewStyleProperties\"\n          />\n        </div>\n      </div>\n\n      <div v-if=\"reservation.HasProposal === 0\">\n        <!-- Show create proposal button -->\n        <div v-if=\"!showCreateProposal\">\n          <div class=\"mb-6\">\n            <p class=\"title\">{{ $t('Components.Reservation.ReservationProposal.header_CreateProposal') }}</p>\n            <!-- <ul>\n              <li>Nice proposal for customer</li>\n              <li>Customer can digitally accept</li>\n              <li>Progress tracking</li>\n            </ul> -->\n\n            <Message\n              :message=\"$t('Components.Reservation.ReservationProposal.message_CreateProposal')\"\n              :type=\"'is-info'\"\n            />\n          </div>\n\n          <div\n            v-if=\"reservation.Status === 'Final'\"\n            class=\"mb-6\"\n          >\n            <Message\n              :message=\"$t('Components.Reservation.ReservationProposal.message_StatusFinal')\"\n              :type=\"'is-warning'\"\n            />\n          </div>\n\n          <div class=\"has-text-centered\">\n            <a\n              @click=\"setShowCreateProposal\"\n              class=\"button is-primary is-large\"\n            >{{ $t('Components.Reservation.ReservationProposal.button_CreateProposal') }}</a>\n          </div>\n        </div>\n\n        <!-- Show create proposal wizard -->\n        <div v-if=\"showCreateProposal\">\n          <div class=\"mb-6\">\n            <p class=\"title\">{{ $t('Components.Reservation.ReservationProposal.header_CreateStep1') }}</p>\n\n            <div class=\"columns is-multiline is-mobile is-centered my-4\">\n              <div class=\"card column is-one-quarter mr-4 mb-4\"  v-for=\"template in templates\" :key=\"'tmpl-' + template.Id\"  @click=\"selectedTemplate = template\">\n                <div class=\"card-content\">\n                  <div class=\"media header-height\">\n                    <div class=\"media-content\">\n                      <div class=\"is-pulled-right\">\n                        <div>\n                          <span v-if=\"selectedTemplate === template\" class=\"tag is-primary is-light\">Selected</span>\n                        </div>\n                      </div>\n                      <div>\n                        <strong>{{ template.Name }}</strong>\n                      </div>\n                    </div>\n                  </div>\n                  <div class=\"content\">\n                    \n                  </div>\n                </div>\n              </div>\n            </div>\n\n          </div>\n\n          <div class=\"mb-6\">\n            <p class=\"title\">{{ $t('Components.Reservation.ReservationProposal.header_CreateStep2') }}</p>\n\n            <div class=\"columns is-multiline is-mobile is-centered my-4\">\n              <HostCard\n                v-for=\"(host, index) in hosts\"\n                :key=\"'host-' + index\"\n                :host=\"host\"\n                :isSelected=\"selectedHost && selectedHost.Id === host.Id\"\n                @click.native=\"selectedHost = host\"\n                class=\"column is-half-mobile is-one-third-tablet mr-4 mb-4\"\n              />\n            </div>\n          </div>\n\n          <div class=\"has-text-centered\">\n            <a\n              @click=\"createReservationProposal\"\n              class=\"button is-large\"\n              :class=\"[\n               !isCreatingProposal && selectedTemplate !== null ? 'is-primary' : '', \n              { \n                'is-loading': isCreatingProposal,\n                'is-disabled': !selectedTemplate\n              }]\"\n              :disabled=\"selectedTemplate === null\"\n            >{{ $t('Components.Reservation.ReservationProposal.button_CreateProposal') }}</a>\n          </div>\n        </div>\n      </div>\n\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapGetters, mapState, mapActions, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport { cleanSource } from '@/utils/objectHelper'\nimport hostProvider from '@/providers/host'\nimport proposalProvider from '@/providers/proposal'\nimport reservationProvider from '@/providers/reservation'\n\n\n//import LinkPrint from '@/components/UI/LinkPrint.vue';\nimport ProposalPreview from '@/components/Proposals/Template/ProposalPreview.vue';\nimport TemplateParser from '@/components/Proposals/Template/TemplateParser';\nimport HostCard from '@/components/Hosts/HostCard';\nimport SwitchHost from '@/components/Proposals/SwitchHost.vue';\nimport proposal from '../../providers/proposal'\nimport Message from '../UI/Message.vue'\n\nexport default {\n  components: {\n    HostCard,\n    ProposalPreview,\n    //LinkDownload: () => import('@/components/UI/LinkDownload'),\n    //LinkPrint,\n    ModalSendProposal: () => import('@/components/Proposals/ModalSendProposal.vue'),\n    ModalSetExpiration: () => import('@/components/Reservations/ModalSetExpiration'),\n    Message: () => import('@/components/UI/Message'),\n    SwitchHost,\n    TemplateParser\n  },\n\n  props: {},\n\n  data() {\n    return {\n      drawerSize: 'extra-large',\n      hosts: [],\n      isCreatingProposal: false,\n      isLoading: false,\n      originalProposal: null,\n      selectedHost: null,\n      selectedTemplate: null,\n      templates: [],\n      showCreateProposal: false,\n      showDeleteProposal: false,\n      showEditLayout: false,\n      showSetExpiration: false,\n      showSendProposal: false,\n      showSideDrawer: false,\n      showPreview: false,\n      showTemplateSelection: false,\n      showSwitchHost: false,\n      templateTimeStamp: new Date().getTime(),\n      previewProposal: null,\n      previewStyleProperties: null,\n      mailType: ''\n    }\n  },\n\n  computed: {\n    ...mapGetters('profileStore', ['isAdmin']),\n    ...mapState('reservationStore', ['reservation']),\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('proposalStore', ['proposal', 'templatePreview']),\n\n    hasProposal() {\n      return this.reservation && this.proposal && this.reservation.HasProposal > 0\n    },\n\n    isEmployee() {\n      let employee = false\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true\n      }\n\n      return employee\n    },\n\n    isLocked() {\n      let self = this\n      let locked = false\n\n      if (this.locationId > 0) {\n        if (\n          self.isCreatingInvoice ||\n          self.reservation.HasInvoice > 0 ||\n          self.reservation.StatusId === 3\n        ) {\n          locked = true\n        }\n      }\n\n      if (this.locationId === 0) {\n        if (\n          self.reservation &&\n          (self.reservation.HasInvoice > 0 ||\n            self.reservation.StatusId === 3 ||\n            self.reservation.HoursUntilStart <= 24 ||\n            (self.reservation.Expiration && self.reservation.Expiration.IsExpired))\n        ) {\n          return true\n        }\n      }\n\n      return locked\n    },\n  },\n\n  created() {\n    if (this.reservation.ProposalKey.length > 0) {\n      this.getProposal();\n      this.getTemplates();\n    }\n  },\n\n  beforeDestroy() {\n    this.setProposal(null);\n    window.removeEventListener('resize', this.reCalculateScaling)\n  },\n\n  methods: {\n    ...mapActions('reservationStore', ['refreshReservation']),\n    ...mapMutations('proposalStore', ['setTemplatePreview']),\n    ...mapMutations('reservationStore', ['setReservation']),\n    ...mapMutations('proposalStore', ['setProposal']),\n\n\n    reCalculateScaling() {\n      const siteWidth = Math.max(document.querySelector('.site-wrapper').offsetWidth || 0);\n      this.previewStyleProperties = `--containerWidth: ${siteWidth}px;`\n\n      const parent = this.$el\n      const parnetComputedStyles = window.getComputedStyle(parent)\n\n      const parentPadding = Number(parnetComputedStyles.getPropertyValue('padding-right').replace('px', '')) + Number(parnetComputedStyles.getPropertyValue('padding-left').replace('px', ''))\n      const parentWidth = parent.offsetWidth - parentPadding\n      const scaleFactor = parentWidth / siteWidth;\n      this.previewStyleProperties += `--previewScale: ${scaleFactor};`\n    },\n\n    /**\n     * Get proposal data\n     */\n    async getProposal() {\n      if (this.isLoading) {\n        return;\n      }\n\n      this.isLoading = true\n\n      await proposalProvider.methods\n        .getProposalByKey(this.reservation.ProposalKey)\n        .then((response) => {\n          if (response.status === 200) {\n            this.originalProposal = cleanSource(response.data);\n            this.setProposal(cleanSource(response.data));\n          }\n        })\n        .finally(() => {\n          this.isLoading = false;\n        })\n    },\n\n    copyDirectLink() {\n      const link = `${window.location.origin}/proposals/${this.proposal.Key}`\n\n      navigator.clipboard.writeText(link).then(() => {\n        // Send message to display toast on screen\n        EventBus.$emit('showToast', {\n          type: 'info',\n          message: this.$t('Components.Reservation.ReservationProposal.message_CopiedLinkToClipboard'),\n        });\n      })\n    },\n\n    getHosts() {\n      hostProvider.methods\n        .getLocationHosts(this.locationState.Id)\n        .then(response => {\n          if (response.status === 200) {\n            this.hosts = response.data\n            this.selectedHost = this.hosts.find(h => h.IsActiveManager) || null;\n          }\n        })\n    },\n\n    getTemplates() {\n      proposalProvider.methods\n        .getLocationProposalTemplates(this.locationState.Id)\n        .then(response => {\n          if (response.status === 200) {\n            this.templates = response.data\n\n            this.selectedTemplate = this.templates[0];\n          }\n        })\n    },\n\n    createReservationProposal() {\n      if (this.isCreatingProposal) {\n        return;\n      }\n\n      this.isCreatingProposal = true;\n\n      let data = {\n        HostId: this.selectedHost ? this.selectedHost.Id : 0,\n        TemplateId: this.selectedTemplate ? this.selectedTemplate.Id : 0\n      }\n\n      reservationProvider.methods\n        .createReservationProposal(this.reservation.Key, data)\n        .then((response) => {\n          if (response.status === 200) {\n            this.setReservation(response.data);\n            this.showCreateProposal = false;\n            this.getProposal();\n          }\n        })\n        .catch((err) => { })\n        .finally(() => {\n          this.isCreatingProposal = false;\n        })\n    },\n\n    setShowEditLayout() {\n      this.showEditLayout = true;\n    },\n\n    unpublishProposal() {\n      proposalProvider.methods\n        .unpublishProposal(this.reservation.ProposalKey)\n        .then(response => {\n          if (response.status === 200) {\n            this.setProposal(response.data);\n            this.templateTimeStamp = new Date().getTime();\n\n            this.refreshReservation();\n          }\n        })\n    },\n\n    publishProposal() {\n      proposalProvider.methods\n        .publishProposal(this.reservation.ProposalKey)\n        .then(response => {\n          if (response.status === 200) {\n            this.setProposal(response.data);\n            this.templateTimeStamp = new Date().getTime();\n\n            this.refreshReservation();\n          }\n        })\n    },\n\n    acceptProposal() {\n      proposalProvider.methods\n        .acceptProposal(this.reservation.ProposalKey)\n        .then(response => {\n          if (response.status === 200) {\n            this.setProposal(response.data);\n            this.templateTimeStamp = new Date().getTime();\n\n            this.refreshReservation();\n          }\n        })\n    },\n\n    rejectProposal() {\n      proposalProvider.methods\n        .rejectProposal(this.reservation.ProposalKey)\n        .then(response => {\n          if (response.status === 200) {\n            this.setProposal(response.data);\n            this.templateTimeStamp = new Date().getTime();\n\n            this.setShowSendProposal('LocationProposalLocationRejected');\n\n            this.refreshReservation();\n          }\n        })\n    },\n\n    changesMade() {\n      proposalProvider.methods\n        .changesMade(this.reservation.ProposalKey)\n        .then(response => {\n          if (response.status === 200) {\n            this.setProposal(response.data);\n            this.templateTimeStamp = new Date().getTime();\n          }\n        })\n    },\n\n    syncProposal() {\n      proposalProvider.methods\n        .syncProposal(this.reservation.ProposalKey)\n        .then(response => {\n          if (response.status === 200) {\n            this.setProposal(response.data);\n            this.templateTimeStamp = new Date().getTime();\n          }\n        })\n    },\n\n    deleteProposal() {\n      proposalProvider.methods\n        .deleteProposal(this.reservation.ProposalKey)\n        .then(response => {\n          if (response.status === 200) {\n            this.setReservation(response.data);\n            this.setProposal(null);\n            this.templateTimeStamp = new Date().getTime();\n          }\n        })\n    },\n\n    deleteExpiration() {\n      reservationProvider.methods\n        .deleteReservationExpiration(this.reservation.Key)\n        .then(response => {\n          if (response.status === 200) {\n            this.setReservation(response.data)\n            this.templateTimeStamp = new Date().getTime();\n          }\n        })\n    },\n\n    toggleSecondOption() {\n      proposalProvider.methods\n        .toggleProposalSecondOption(this.reservation.ProposalKey)\n        .then(response => {\n          if (response.status === 200) {\n            this.setProposal(response.data);\n            this.templateTimeStamp = new Date().getTime();\n          }\n        })\n    },\n\n    setShowCreateProposal() {\n      this.showCreateProposal = true;\n      this.getHosts();\n      this.getTemplates();\n    },\n\n    setShowSetExpiration() {\n      this.showSetExpiration = true;\n    },\n\n    setShowSendProposal(mailType) {\n      this.showSendProposal = true;\n      this.mailType = mailType;\n    },\n\n    hideModal() {\n      this.showSetExpiration = false;\n      this.showSendProposal = false;\n    },\n\n    setShowTemplateSelection() {\n      this.showTemplateSelection = true;\n    },\n\n    hideTemplateSelection() {\n      this.showTemplateSelection = false;\n    },\n\n    selectTemplate() {\n      if (!this.selectedTemplate) {\n        return;\n      }\n\n      let templateLanguage = this.selectedTemplate.Languages.find(l => l.Language === this.proposalLanguage);\n      if (!templateLanguage) {\n        templateLanguage = this.selectedTemplate.Languages.find(l => l.Language === 'en');\n      }\n\n      if (templateLanguage) {\n        this.proposal.TemplateId = this.selectedTemplate.Id;\n        this.proposal.Template = templateLanguage.Template;\n        this.templateTimeStamp = new Date().getTime();\n        this.showTemplateSelection = false;\n      }\n    },\n\n    clearTemplate() {\n      this.proposal.Template = JSON.stringify([]);\n      this.templateTimeStamp = new Date().getTime();\n    },\n\n    setShowPreview() {\n      this.previewProposal = cleanSource(this.proposal);\n      if (this.previewProposal && this.templatePreview) {\n        this.previewProposal.Template = this.$options.filters.removeXSS(JSON.stringify(this.templatePreview));\n        this.previewProposal.timestamp = new Date().getTime();\n      }\n\n      this.showSideDrawer = true;\n      this.showPreview = true;\n    },\n\n    setShowSwitchHost() {\n      this.drawerSize = 'large';\n      this.showSideDrawer = true;\n      this.showSwitchHost = true;\n    },\n\n    hideDrawer() {\n      this.showSideDrawer = false;\n      this.showSwitchHost = false;\n      this.showPreview = false;\n      this.drawerSize = 'extra-large';\n    },\n\n    cancelEditLayout() {\n      this.proposal.Template = this.originalProposal.Template;\n      this.setProposal(this.proposal);\n      this.templateTimeStamp = new Date().getTime();\n      this.showEditLayout = false;\n    },\n\n    stopEditLayout() {\n      this.showEditLayout = false;\n      this.templateTimeStamp = new Date().getTime();\n    }\n  }\n}\n</script>\n\n<style lang=\"sass\" scoped>\n:deep(.section), :deep(.container)\n  padding-inline: 0\n\n.previewProposalWrapper\n  max-width: 100%\n\n.container-reservationProposal\n  container-type: inline-size\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationProposal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationProposal.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationProposal.vue?vue&type=template&id=16a50090&scoped=true\"\nimport script from \"./ReservationProposal.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationProposal.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReservationProposal.vue?vue&type=style&index=0&id=16a50090&prod&lang=sass&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"16a50090\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div\n    v-if=\"reservation\"\n    class=\"section\"\n  >\n    <transition\n      name=\"fade\"\n      mode=\"out-in\"\n    >\n      <ui-loader\n        v-if=\"!pageLoadReady\"\n        key=\"loading\"\n        class=\"has-padding has-text-centered\"\n      />\n\n      <layout-page-menu\n        v-else\n        :heroTitle=\"pageTitle\"\n        :heroSubTitle=\"pageSubTitle\"\n        :showPlaceholderText=\"false\"\n        heroAdditionalSubTitleClass=\"mb-0\"\n        key=\"pagemenu\"\n      >\n        <template slot=\"pageHeroSubSection\">\n          <template v-if=\"reservation\">\n            <span class=\"is-size-7 has-text-weight-light is-italic has-text-grey\">{{\n              $t('General.Created-on') }}\n              {{\n                reservation.CreatedOn\n                | dateFormat($i18n.locale, 'longDateFormat')\n              }}\n              {{\n                ($t('General.On') + ' ' + $t('General.Channel')).toLowerCase()\n              }}\n              {{ reservation.ChannelName }}</span>\n\n            <span\n              v-if=\"reservation.CreatedByName\"\n              class=\"is-size-7 has-text-weight-light is-italic has-text-grey\"\n            >, {{\n              $t('General.By').toLowerCase() }}\n              {{ reservation.CreatedByName }}\n            </span>\n          </template>\n          <text-placeholder\n            v-if=\"!reservation\"\n            :numberOfItems=\"5\"\n            placeholderItemHeight=\"12px\"\n            class=\"placeholderTermsLine\"\n          />\n          <div>\n            <div class=\"level\">\n              <div class=\"level-left\">\n                <nav class=\"navbar is-hidden-print\">\n                  <a\n                    @click=\"$router.go(-1)\"\n                    class=\"navbar-item\"\n                  >\n                    <span class=\"icon is-small\">\n                      <font-awesome-icon :icon=\"['fas', 'chevron-left']\" />\n                    </span>\n                    <span>{{\n                      $t('Components.Reservation.ReservationMailLog.Icon_Back')\n                    }}</span>\n                  </a>\n                </nav>\n              </div>\n              <div class=\"level-right\"></div>\n            </div>\n          </div>\n        </template>\n        <template slot=\"pageMenu\">\n          <ui-page-menu\n            v-if=\"reservation\"\n            :menuItems=\"pageMenu\"\n            :class=\"{'greyed-out greyed-out-is-disabled': isDraft}\"\n            class=\"mb-6\"\n          />\n\n          <div\n            v-if=\"visiblePageComponent === viewPageComponents.detail\"\n            :class=\"{'greyed-out greyed-out-is-disabled': isDraft}\"\n            class=\"mb-6\"\n          >\n            <ReservationTags\n              :isEmployee=\"isEmployee\"\n              :isLocked=\"false\"\n            />\n          </div>\n        </template>\n        <template slot=\"pageContent\">\n          <div class=\"container\">\n            <div v-if=\"reservation\">\n              <Message\n                v-if=\"isDraft\"\n                class=\"is-info has-text-pre-line\"\n                :message=\"$t('Views.Reservation.ReservationDetails.Message_IsDraft')\"\n              />\n              <Message\n                v-if=\"reservation.StatusId === 3\"\n                class=\"is-warning\"\n                :message=\"$t(\n                'Views.Reservation.ReservationDetails.Message_ReservationCancelled'\n              )\n                \"\n              />\n\n              <transition-group\n                name=\"component-fade\"\n                mode=\"out-in\"\n                tag=\"div\"\n                :class=\"{'is-unclickable': isDraft}\"\n              >\n                <ReservationDetail\n                  v-if=\"visiblePageComponent === viewPageComponents.detail\"\n                  :locationId=\"reservation.LocationId\"\n                  :reservationKey=\"reservation.Key\"\n                  :key=\"viewPageComponents.detail\"\n                />\n\n                <ReservationCheckins\n                  v-if=\"visiblePageComponent === viewPageComponents.checkins\"\n                  :key=\"viewPageComponents.checkins\"\n                />\n                <ReservationComments\n                  v-if=\"visiblePageComponent === viewPageComponents.comments\"\n                  :key=\"viewPageComponents.comments\"\n                />\n                <ReservationContacts\n                  v-if=\"visiblePageComponent === viewPageComponents.contacts\"\n                  :key=\"viewPageComponents.contacts\"\n                />\n                <ReservationNotes\n                  v-if=\"visiblePageComponent === viewPageComponents.notes\"\n                  :key=\"viewPageComponents.notes\"\n                />\n                <ReservationToDos\n                  v-if=\"visiblePageComponent === viewPageComponents.todos\"\n                  :key=\"viewPageComponents.todos\"\n                />\n                <ReservationProgram\n                  v-if=\"visiblePageComponent === viewPageComponents.program\"\n                  :key=\"viewPageComponents.program\"\n                  :reservationId=\"reservation.Id\"\n                  :endMinutes=\"reservation.EndMinutes\"\n                  :startMinutes=\"reservation.StartMinutes\"\n                />\n\n                <ReservationMail\n                  v-if=\"visiblePageComponent === viewPageComponents.maillog\"\n                  :key=\"viewPageComponents.maillog\"\n                />\n                <ReservationEvent\n                  v-if=\"\n                  visiblePageComponent === viewPageComponents.eventCalendar\n                \"\n                  :key=\"viewPageComponents.eventCalendar\"\n                />\n                <ReservationRevisions\n                  v-if=\"visiblePageComponent === viewPageComponents.revisions\"\n                  :reservationId=\"reservation.Id\"\n                  :currentReservation=\"reservation\"\n                  :key=\"viewPageComponents.revisions\"\n                />\n                <ReservationPayments\n                  v-if=\"visiblePageComponent === viewPageComponents.payments\"\n                  :reservationId=\"reservation.Id\"\n                  :key=\"viewPageComponents.payments\"\n                />\n\n                <ReservationInvoice\n                  v-if=\"visiblePageComponent === viewPageComponents.invoiceDetail\"\n                  :key=\"viewPageComponents.invoiceDetail\"\n                  :openInvoiceType=\"openInvoiceType\"\n                />\n\n                <ReservationExternalLinks\n                  :key=\"viewPageComponents.externalLinks\"\n                  v-if=\"visiblePageComponent === viewPageComponents.externalLinks\"\n                />\n\n                <ReservationProposal\n                  :key=\"viewPageComponents.proposal\"\n                  v-if=\"\n                    visiblePageComponent === viewPageComponents.proposal\n                  \"\n                />\n\n                <ReservationTerms\n                  :key=\"viewPageComponents.terms\"\n                  v-if=\"\n                    visiblePageComponent === viewPageComponents.terms\n                  \"\n                />\n              </transition-group>\n            </div>\n          </div>\n        </template>\n      </layout-page-menu>\n    </transition>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations, mapGetters } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\nimport EventBus from '@/eventbus/event-bus'\n\nimport ReservationProposal from '@/components/Reservations/ReservationProposal'\n\nexport default {\n  components: {\n    ReservationInvoice: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationInvoice'),\n    ReservationCheckins: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationCheckins'),\n    ReservationDetail: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationDetail'),\n    ReservationComments: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationComments'),\n    ReservationContacts: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationContacts'),\n    ReservationNotes: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationNotes'),\n    ReservationToDos: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationToDos'),\n    ReservationProgram: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationProgram'),\n    ReservationMail: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationMail'),\n    ReservationEvent: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationEvent'),\n    ReservationRevisions: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationRevisions'),\n    ReservationPayments: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationPayments'),\n    ReservationProposal,\n    ReservationExternalLinks: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationExternalLinks'),\n    TextPlaceholder: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/UI/TextPlaceholder'),\n    Message: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/UI/Message'),\n\n    ReservationTags: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationTags'),\n    ReservationTerms: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationTerms'),\n  },\n\n  data() {\n    return {\n      pageLoadReady: false,\n      locationId: Number(this.$route.params.locationId),\n      reservationKey: this.$route.params.reservationKey,\n      openInvoiceType: '',\n      viewPageComponents: {\n        detail: 'detail',\n        comments: 'comments',\n        contacts: 'contacts',\n        notes: 'notes',\n        todos: 'todos',\n        program: 'program',\n        checkins: 'checkins',\n        maillog: 'maillog',\n        eventCalendar: 'eventCalendar',\n        revisions: 'revisions',\n        payments: 'payments',\n        invoiceDetail: 'invoiceDetail',\n        externalLinks: 'externalLinks',\n        proposal: 'proposal',\n        terms: 'terms'\n      }\n    }\n  },\n\n  computed: {\n    ...mapGetters('menuStore', ['hasEventActivated', 'hasInvoiceActivated', 'hasProposalActivated']),\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('menuStore', ['menu', 'visiblePageComponent']),\n    ...mapState('reservationStore', ['reservation']),\n    ...mapGetters('reservationStore', ['isDraft']),\n    ...mapState('profileStore', ['profile', 'profileState']),\n\n    reservationRouteChanged() {\n      let result = false\n\n      let reservationKey = this.$route.params.reservationKey\n\n      if (this.reservation && reservationKey !== this.reservation.Key) {\n        result = true\n      }\n\n      return result\n    },\n\n    pageTitle() {\n      let temp = this.$t('ReservationType.type_' + this.reservation.Type);\n\n      temp += `; ${this.reservation.LocationName}`;\n      return temp;\n    },\n\n    pageSubTitle() {\n      let temp = ''\n      if (this.reservation) {\n        temp += `#${this.reservation.Id} - `;\n\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let resDate = this.reservation.Dates[i]\n\n          temp += `${this.$options.filters.dateFormat(\n            resDate.Date,\n            this.$i18n.locale,\n            'longDateFormat'\n          )}`\n          temp += `, ${this.$options.filters.minutesToTime(\n            resDate.StartMinutes\n          )} - ${this.$options.filters.minutesToTime(\n            resDate.EndMinutes\n          )}`\n\n          if (this.reservation.Dates.length > 1 && i < (this.reservation.Dates.length - 1)) {\n            temp += ' | '\n          }\n        }\n      }\n      return temp\n    },\n\n    isEmployee() {\n      let employee = false\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true\n      }\n\n      return employee\n    },\n\n    previousInSet() {\n      let result = -1\n\n      if (this.reservation && this.reservation.SetId > 0) {\n        let setIndex = this.reservation.ReservationSet.findIndex(\n          (r) => r.Id === this.reservation.Id\n        )\n        if (setIndex > 0) {\n          result = this.reservation.ReservationSet[setIndex].Key\n        }\n      }\n\n      return result\n    },\n\n    nextInSet() {\n      let result = -1\n\n      if (\n        this.reservation &&\n        this.reservation.SetId > 0 &&\n        this.reservation.ReservationSet.length > 0\n      ) {\n        let setIndex = this.reservation.ReservationSet.findIndex(\n          (r) => r.Id === this.reservation.Id\n        )\n        if (setIndex > -1) {\n          if (setIndex < this.reservation.ReservationSet.length - 1) {\n            result = this.reservation.ReservationSet[setIndex].Key\n          }\n        }\n      }\n      return result\n    },\n\n    pageMenu() {\n      let menuItems = [];\n      let nrOfInvoices = 0;\n      if (this.reservation && this.reservation.HasInvoice) {\n        nrOfInvoices++;\n      }\n      if (this.reservation && this.reservation.HasDepositInvoice) {\n        nrOfInvoices++;\n      }\n\n      menuItems.push({\n        Name: this.$t(\n          'Views.Reservation.ReservationDetails.Submenu_Reservation'\n        ),\n        Link: this.viewPageComponents.detail,\n      })\n\n      if (this.reservation && this.reservation.Type !== 'Request' && this.reservation.MeetingtypeId === 1 && this.hasProposalActivated) {\n        menuItems.push({\n          Name: this.$t(\n            'Views.Reservation.ReservationDetails.Submenu_Proposal'\n          ),\n          Link: this.viewPageComponents.proposal,\n        })\n      }\n\n      menuItems.push({\n        Name: this.$t(\n          'Views.Reservation.ReservationDetails.Submenu_Comments'\n        ),\n        Link: this.viewPageComponents.comments,\n        BadgeValue: this.reservation ? this.reservation.Comments.length : 0,\n      });\n      menuItems.push({\n        Name: this.$t(\n          'Views.Reservation.ReservationDetails.Submenu_Contacts'\n        ),\n        Link: this.viewPageComponents.contacts,\n      });\n      menuItems.push({\n        Name: this.$t('Views.Reservation.ReservationDetails.Submenu_Notes'),\n        Link: this.viewPageComponents.notes,\n        BadgeValue: this.reservation ? this.reservation.Notes.length : 0,\n      });\n      menuItems.push({\n        Name: this.$t('Views.Reservation.ReservationDetails.Submenu_ToDos'),\n        Link: this.viewPageComponents.todos,\n        BadgeValue: this.reservation ? this.reservation.ToDos.length : 0,\n      });\n      if (this.reservation && this.reservation.Type !== 'Request') {\n        menuItems.push({\n          Name: this.$t('Views.Reservation.ReservationDetails.Submenu_Program'),\n          Link: this.viewPageComponents.program,\n        });\n      }\n      menuItems.push({\n        Name: this.$t('Views.Reservation.ReservationDetails.Submenu_Maillog'),\n        Link: this.viewPageComponents.maillog,\n      });\n      // if (this.reservation && this.reservation.Type !== 'Request' && this.reservation.MeetingtypeId === 1 && this.hasEventActivated) {\n      //   menuItems.push({\n      //     Name: this.$t(\n      //       'Views.Reservation.ReservationDetails.Submenu_EventCalendar'\n      //     ),\n      //     Link: this.viewPageComponents.eventCalendar,\n      //   });\n      // }\n\n      menuItems.push({\n        Name: this.$t(\n          'Views.Reservation.ReservationDetails.Submenu_Revisions'\n        ),\n        Link: this.viewPageComponents.revisions,\n      });\n      menuItems.push({\n        Name: this.$t(\n          'Views.Reservation.ReservationDetails.Submenu_Payments'\n        ),\n        Link: this.viewPageComponents.payments,\n      });\n\n      if (this.reservation && this.reservation.Type !== 'Request' && this.hasInvoiceActivated) {\n        menuItems.push({\n          Name: this.$t('Views.Reservation.ReservationDetails.Submenu_Invoice'),\n          Link: this.viewPageComponents.invoiceDetail,\n          BadgeValue: nrOfInvoices,\n        });\n      }\n\n      menuItems.push({\n        Name: this.$t(\n          'Views.Reservation.ReservationDetails.Submenu_ExternalLinks'\n        ),\n        Link: this.viewPageComponents.externalLinks,\n      })\n\n      menuItems.push({\n        Name: 'Terms',\n        Link: this.viewPageComponents.terms,\n      })\n\n      return menuItems\n    },\n  },\n\n  watch: {\n    reservation: {\n      deep: true,\n      handler: function(reservation) {\n        if (reservation) {\n          this.pageMenu[2].BadgeValue = reservation.Comments.filter(c => !c.IsDeleted).length\n          this.pageMenu[4].BadgeValue = reservation.Notes.length\n          this.pageMenu[5].BadgeValue = reservation.ToDos.filter(\n            (t) => !t.IsDone\n          ).length\n        }\n      },\n    },\n\n    reservationRouteChanged(val) {\n      if (val) {\n        // Clear current reservation data\n        this.setReservation(null)\n\n        // Set page menu to details view\n        this.setPageView(null, 0)\n        this.setVisiblePageComponent(this.viewPageComponents.detail)\n\n        // Set reservation route with new reservation Id\n        // this.goToReservation(reservationId)\n\n        // Get new reservation Id from route params and update reservationId variable\n        this.reservationKey = this.$route.params.reservationKey\n\n        // Load new resevation data\n        this.getReservationData()\n      }\n    },\n  },\n\n  created() {\n    this.setVisiblePageComponent(this.viewPageComponents.detail);\n    this.getReservationData();\n  },\n\n  mounted() {\n    EventBus.$on('showReservationProposal', () => {\n      let proposalMenuIndex = this.pageMenu.findIndex(\n        (m) => m.Link === this.viewPageComponents.proposal\n      )\n      if (proposalMenuIndex === -1) {\n        return\n      }\n      this.setPageView(null, proposalMenuIndex);\n      this.setVisiblePageComponent(this.viewPageComponents.proposal);\n    });\n    EventBus.$on('showReservationInvoice', () => {\n      let invoiceMenuIndex = this.pageMenu.findIndex(\n        (m) => m.Link === this.viewPageComponents.invoiceDetail\n      )\n      if (invoiceMenuIndex === -1) {\n        return\n      }\n      this.setPageView(null, invoiceMenuIndex);\n      this.setVisiblePageComponent(this.viewPageComponents.invoiceDetail);\n    });\n    EventBus.$on('newInvoiceCreated', this.showInvoice);\n  },\n\n  beforeDestroy() {\n    // Log off event bus\n    EventBus.$off('showReservationProposal');\n    EventBus.$off('showreservationInvoice');\n    EventBus.$off('newInvoiceCreated', this.showInvoice)\n\n    // Clear store\n    this.setReservation(null)\n    this.setPageView(null, 0)\n  },\n\n  methods: {\n    ...mapMutations('menuStore', [\n      'setSelectedMenuItemIndex',\n      'setVisiblePageComponent',\n    ]),\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    /**\n     * Get reservation data call\n     */\n    getReservationData() {\n      let self = this\n\n      reservationProvider.methods\n        .getReservationByKey(this.reservationKey)\n        .then((response) => {\n          if (response.status === 200) {\n            if (this.locationId === response.data.LocationId) {\n              // Update store\n              self.updateReservationStore(response.data)\n            }\n          }\n        })\n        .finally(() => {\n          self.pageLoadReady = true\n        })\n    },\n\n    getCommentsBatchNumber() {\n      if (!this.reservation) { return 0 }\n      let counter = this.reservation.Comments.filter(c => !c.IsDeleted).length\n      return counter\n    },\n\n    cancelReservation(reservation) {\n      this.reservation.StatusId = 3\n\n      // Update store\n      this.updateReservationStore(this.reservation)\n    },\n\n    // Update reservation\n    updateReservation(reservation) {\n      this.reservation.HasDepositInvoice = reservation.HasDepositInvoice\n      this.reservation.HasInvoice = reservation.HasInvoice\n\n      // Update store\n      this.updateReservationStore(this.reservation)\n    },\n\n    // Set page view control\n    setPageView(item, functionMenuIndex) {\n      this.setSelectedMenuItemIndex({\n        menuGroupIndex: 2,\n        selectedMenuItemIndex: Number(functionMenuIndex),\n      })\n    },\n\n    showInvoice(invoice) {\n      this.openInvoiceType = ''\n      this.viewPageComponents.invoiceDetail\n      if (invoice.IsDeposit) {\n        this.openInvoiceType = 'deposit'\n      }\n      // const invoiceViewLink = !invoice.IsDeposit\n      //   ? this.viewPageComponents.invoiceDetail\n      //   : this.viewPageComponents.invoiceDeposit\n      let invoiceMenuIndex = this.pageMenu.findIndex(\n        (m) => m.Link === this.viewPageComponents.invoiceDetail\n      )\n      if (invoiceMenuIndex === -1) {\n        return\n      }\n      this.setPageView(null, invoiceMenuIndex)\n      this.setVisiblePageComponent(this.viewPageComponents.invoiceDetail)\n    },\n\n    /**\n     * Update reservation state and original reservation\n     */\n    updateReservationStore(data) {\n      this.setReservation(data)\n    },\n\n    goToPreviousReservationInSet() {\n      let setIndex = this.reservation.ReservationSet.findIndex(\n        (r) => r.Id === this.reservation.Id\n      )\n      let previousReservation = this.reservation.ReservationSet[setIndex - 1]\n      this.goToReservation(previousReservation.Id)\n    },\n\n    goToNextReservationInSet() {\n      let setIndex = this.reservation.ReservationSet.findIndex(\n        (r) => r.Id === this.reservation.Id\n      )\n      let nextReservation = this.reservation.ReservationSet[setIndex + 1]\n      this.goToReservation(nextReservation.Id)\n    },\n\n    goToReservation(reservationId) {\n      // Update route\n      this.$router\n        .push({\n          name: `reservations-list-detail`,\n          params: { reservationId: reservationId },\n        })\n        .catch((err) => { })\n    }\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.placeholderTermsLine {\n  margin-top: 3px;\n}\n\n.component-fade-enter-active,\n.component-fade-leave-active {\n  transition: opacity 0.3s ease;\n}\n.component-fade-enter, .component-fade-leave-to\n  /* .component-fade-leave-active below version 2.1.8 */ {\n  opacity: 0;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationDetail.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationDetail.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationDetail.vue?vue&type=template&id=1ae120c5&scoped=true\"\nimport script from \"./ReservationDetail.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationDetail.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReservationDetail.vue?vue&type=style&index=0&id=1ae120c5&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"1ae120c5\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showModalRevertRevision)?_c('ModalRevertRevision',{attrs:{\"showModal\":_vm.showModalRevertRevision,\"revision\":_vm.selectedRevision,\"onClickCancel\":_vm.hideModal},on:{\"reservationReverted\":_vm.reservationReverted}}):_vm._e(),_c('p',{staticClass:\"title is-4\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationRevisions.Main_Title'))+\" \")]),_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column is-one-fifth\"},[_c('div',{staticClass:\"menu\"},[_c('div',{staticClass:\"box checkboxStyle\"},[_c('a',[_c('label',{staticClass:\"checkbox\"},[_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column is-1\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.showCompare),expression:\"showCompare\"}],staticClass:\"mt-1\",attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.showCompare)?_vm._i(_vm.showCompare,null)>-1:(_vm.showCompare)},on:{\"change\":function($event){var $$a=_vm.showCompare,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.showCompare=$$a.concat([$$v]))}else{$$i>-1&&(_vm.showCompare=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.showCompare=$$c}}}})]),_c('div',{staticClass:\"column\"},[_c('span',{staticClass:\"is-size-7\"},[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ReservationRevisions.Checkbox_CompareTo' )))])])])])])]),_c('ul',{staticClass:\"menu-list\"},_vm._l((_vm.revisions),function(revision,index){return _c('li',{key:(revision.Id  * (_vm.revisions.length * index * 0.123))},[_c('a',{class:{ 'is-active': _vm.selectedIndex === index },on:{\"click\":function($event){return _vm.setSelectedRevision(revision, index)}}},[_c('table',[_c('tbody',[_c('tr',[_c('td',{staticClass:\"has-text-weight-bold\",attrs:{\"width\":\"50\"}},[_vm._v(\" #\"+_vm._s(_vm.revisions.length - index)+\" \")]),_c('td',{staticClass:\"is-size-7\"},[_vm._v(_vm._s(revision.CreatedBy))])]),_c('tr',[_c('td',[_vm._v(\" \")]),_c('td',{staticClass:\"is-size-7 has-text-grey\"},[_vm._v(\" \"+_vm._s(_vm.parseUTCDateToLocalDate(revision.CreatedOn))+\" \")])])])])])])}),0)])]),_c('div',{staticClass:\"column\"},[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.isLoading)?_c('div',[_c('ui-loader')],1):_vm._e()]),(_vm.selectedRevision)?_c('div',[_c('transition',{attrs:{\"name\":\"slide-fade\",\"mode\":\"out-in\"}},[_c('div',{key:_vm.selectedRevision.Id},[_c('ui-section-header',{attrs:{\"showEdit\":false,\"editFunction\":_vm.setShowModalRevertRevision,\"editLabel\":_vm.$t('Components.Reservation.ReservationRevisions.Icon_Revert')},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ReservationRevisions.Subtitle_Revision' ))+\" #\"+_vm._s(_vm.revisions.length - _vm.selectedIndex))]},proxy:true}],null,false,2187511069)}),_c('div',[_c('div',[_vm._v(_vm._s(_vm.selectedRevision.CreatedBy))]),_c('div',{staticClass:\"is-size-7\"},[_vm._v(\" \"+_vm._s(_vm.parseUTCDateToLocalDate(_vm.selectedRevision.CreatedOn))+\" \")])]),_c('div',{staticClass:\"has-margin-top\"},[(_vm.selectedRevision && _vm.selectedRevision.ViewType === 'Classic')?_c('RevisionViewerClassic',{key:_vm.selectedRevision.Id + '-classic',attrs:{\"reservationId\":_vm.reservation.Id,\"reservation\":JSON.parse(_vm.selectedRevision.NewData),\"showTabs\":false,\"showSubTotals\":true}}):_vm._e(),(_vm.selectedRevision && _vm.selectedRevision.ViewType === 'Dates')?_c('RevisionViewerDates',{key:_vm.selectedRevision.Id+ '-dates',attrs:{\"reservationId\":_vm.reservation.Id,\"reservation\":JSON.parse(_vm.selectedRevision.NewData),\"showTabs\":false,\"showSubTotals\":true}}):_vm._e()],1)],1)])],1):_vm._e()],1),(_vm.reservation && _vm.showCompare)?_c('div',{staticClass:\"column has-background-light\"},[(_vm.selectedRevision)?_c('div',[_c('p',{staticClass:\"title is-3\"},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ReservationRevisions.Subtitle_CurrentStatus' ))+\" \")]),_vm._m(0),_c('p',[_vm._v(\" \")]),(_vm.selectedRevision && _vm.selectedRevision.ViewType === 'Classic')?_c('RevisionViewerClassic',{key:_vm.reservation.Id,attrs:{\"reservationId\":_vm.reservation.ReservationId,\"reservation\":_vm.reservation,\"showTabs\":false,\"showSubTotals\":true}}):_vm._e(),(_vm.selectedRevision && _vm.selectedRevision.ViewType === 'Dates')?_c('RevisionViewerDates',{key:_vm.reservation.Id,attrs:{\"reservationId\":_vm.reservation.ReservationId,\"reservation\":_vm.reservation,\"showTabs\":false,\"showSubTotals\":true}}):_vm._e()],1):_vm._e()]):_vm._e()])],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',[_vm._v(\" \")]),_c('div',{staticClass:\"is-size-7\"},[_vm._v(\"   \")])])\n}]\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ModalRevertRevision\n      v-if=\"showModalRevertRevision\"\n      :showModal=\"showModalRevertRevision\"\n      :revision=\"selectedRevision\"\n      :onClickCancel=\"hideModal\"\n      @reservationReverted=\"reservationReverted\"\n    />\n\n    <p class=\"title is-4\">\n      {{ $t('Components.Reservation.ReservationRevisions.Main_Title') }}\n    </p>\n\n    <div class=\"columns\">\n      <div class=\"column is-one-fifth\">\n        <div class=\"menu\">\n          <div class=\"box checkboxStyle\">\n            <a>\n              <label class=\"checkbox\">\n                <div class=\"columns\">\n                  <div class=\"column is-1\">\n                    <input\n                      type=\"checkbox\"\n                      class=\"mt-1\"\n                      v-model=\"showCompare\"\n                    />\n                  </div>\n                  <div class=\"column\">\n                    <span class=\"is-size-7\">{{\n                      $t(\n                        'Components.Reservation.ReservationRevisions.Checkbox_CompareTo'\n                      )\n                    }}</span>\n                  </div>\n                </div>\n              </label>\n            </a>\n          </div>\n\n          <ul class=\"menu-list\">\n            <li\n              v-for=\"(revision, index) in revisions\"\n              :key=\"(revision.Id  * (revisions.length * index * 0.123))\"\n            >\n              <a\n                @click=\"setSelectedRevision(revision, index)\"\n                :class=\"{ 'is-active': selectedIndex === index }\"\n              >\n                <table>\n                  <tbody>\n                    <tr>\n                      <td\n                        class=\"has-text-weight-bold\"\n                        width=\"50\"\n                      >\n                        #{{ revisions.length - index }}\n                      </td>\n                      <td class=\"is-size-7\">{{ revision.CreatedBy }}</td>\n                    </tr>\n                    <tr>\n                      <td>&nbsp;</td>\n                      <td class=\"is-size-7 has-text-grey\">\n                        {{\n                          parseUTCDateToLocalDate(revision.CreatedOn)\n                        }}\n                      </td>\n                    </tr>\n                  </tbody>\n                </table>\n              </a>\n            </li>\n          </ul>\n        </div>\n      </div>\n      <div class=\"column\">\n        <transition name=\"fade\" mode=\"out-in\">\n          <div v-if=\"isLoading\">\n            <ui-loader />\n          </div>\n        </transition>\n\n        <div v-if=\"selectedRevision\">\n          <transition\n            name=\"slide-fade\"\n            mode=\"out-in\"\n          >\n            <div :key=\"selectedRevision.Id\">\n              <ui-section-header\n                :showEdit=\"false\"\n                :editFunction=\"setShowModalRevertRevision\"\n                :editLabel=\"\n                  $t('Components.Reservation.ReservationRevisions.Icon_Revert')\n                \"\n              >\n                <template v-slot:title>{{\n                    $t(\n                      'Components.Reservation.ReservationRevisions.Subtitle_Revision'\n                    )\n                  }}\n                  #{{ revisions.length - selectedIndex }}</template>\n              </ui-section-header>\n\n              <div>\n                <div>{{ selectedRevision.CreatedBy }}</div>\n                <div class=\"is-size-7\">\n                  {{ parseUTCDateToLocalDate(selectedRevision.CreatedOn) }}\n                </div>\n              </div>\n\n              <div class=\"has-margin-top\">\n                <RevisionViewerClassic\n                  v-if=\"selectedRevision && selectedRevision.ViewType === 'Classic'\"\n                  :reservationId=\"reservation.Id\"\n                  :reservation=\"JSON.parse(selectedRevision.NewData)\"\n                  :showTabs=\"false\"\n                  :showSubTotals=\"true\"\n                  :key=\"selectedRevision.Id + '-classic'\"\n                />\n\n                <RevisionViewerDates\n                  v-if=\"selectedRevision && selectedRevision.ViewType === 'Dates'\"\n                  :reservationId=\"reservation.Id\"\n                  :reservation=\"JSON.parse(selectedRevision.NewData)\"\n                  :showTabs=\"false\"\n                  :showSubTotals=\"true\"\n                  :key=\"selectedRevision.Id+ '-dates'\"\n                />\n              </div>\n            </div>\n          </transition>\n        </div>\n      </div>\n\n      <div\n        v-if=\"reservation && showCompare\"\n        class=\"column has-background-light\"\n      >\n        <div v-if=\"selectedRevision\">\n          <p class=\"title is-3\">\n            {{\n              $t(\n                'Components.Reservation.ReservationRevisions.Subtitle_CurrentStatus'\n              )\n            }}\n          </p>\n          <div>\n            <div>&nbsp;</div>\n            <div class=\"is-size-7\">\n              &nbsp;\n            </div>\n          </div>\n          <p>&nbsp;</p>\n          <RevisionViewerClassic\n            v-if=\"selectedRevision && selectedRevision.ViewType === 'Classic'\"\n            :reservationId=\"reservation.ReservationId\"\n            :reservation=\"reservation\"\n            :showTabs=\"false\"\n            :showSubTotals=\"true\"\n            :key=\"reservation.Id\"\n          />\n\n          <RevisionViewerDates\n            v-if=\"selectedRevision && selectedRevision.ViewType === 'Dates'\"\n            :reservationId=\"reservation.ReservationId\"\n            :reservation=\"reservation\"\n            :showTabs=\"false\"\n            :showSubTotals=\"true\"\n            :key=\"reservation.Id\"\n          />\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapMutations, mapState } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\nimport { parseISO } from 'date-fns'\n\nconst ModalRevertRevision = () =>\n  import('@/components/Reservations/ModalRevertRevision')\n\nexport default {\n  components: {\n    ModalRevertRevision,\n    RevisionViewerClassic: () => import('@/components/Reservations/RevisionViewer'),\n    RevisionViewerDates: () => import('@/components/Reservations/RevisionViewerV2'),\n  },\n\n  props: {\n    reservationId: {\n      default: 0,\n      type: Number,\n    },\n  },\n\n  data() {\n    return {\n      hasLoaded: false,\n      isLoading: false,\n      isSaving: false,\n      revisions: [],\n      selectedIndex: -1,\n      selectedRevision: null,\n      showCompare: false,\n      showModalRevertRevision: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  created() {\n    this.getReservationRevisions()\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    getReservationRevisions() {\n      if (!this.isLoading)\n      {\n        this.isLoading = true;\n\n        reservationProvider.methods\n          .getReservationRevisions(this.reservation.Key)\n          .then((response) => {\n            if (response.status === 200) {\n              this.revisions = response.data\n            }\n          })\n          .finally(() => {\n            this.isLoading = false\n            this.hasLoaded = true\n            this.setSelectedRevision(this.revisions[0], 0)\n          })\n      }\n    },\n\n    reservationReverted(revision) {\n      this.revisions.unshift(revision)\n      this.selectedIndex = 0\n    },\n\n    setSelectedRevision(revision, index) {\n      this.selectedIndex = index\n      this.selectedRevision = revision\n    },\n\n    setShowModalRevertRevision() {\n      this.showModalRevertRevision = true\n    },\n\n    hideModal() {\n      this.showModalRevertRevision = false\n    },\n\n    parseUTCDateToLocalDate(dateObj, returnType = { date: true, time: true }) {\n      let d = parseISO(dateObj + '.000Z')\n      let output = returnType.date ? this.$options.filters.dateFormat(d, this.$i18n.locale, 'dateFormat') : ''\n      output += output && returnType.time ? ', ' : ''\n      output += returnType.time ? this.$options.filters.convertDateTimeToTimeString(d) : ''\n\n      return output\n    }\n  },\n}\n</script>\n<style lang=\"scss\" scoped>\n.checkboxStyle {\n  vertical-align: middle !important;\n  text-align: center;\n  justify-items: center;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationRevisions.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationRevisions.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationRevisions.vue?vue&type=template&id=5e064f77&scoped=true\"\nimport script from \"./ReservationRevisions.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationRevisions.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReservationRevisions.vue?vue&type=style&index=0&id=5e064f77&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5e064f77\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(!_vm.isLoggedIn)?_c('div',[_c('p',{staticClass:\"title is-4\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.Login.Main_Title', _vm.localeOverride))+\" \")]),(_vm.errorMessage)?_c('Message',{staticClass:\"is-danger\",attrs:{\"message\":_vm.errorMessage}}):_vm._e(),_c('ui-base-input-field',{attrs:{\"labelForInput\":false,\"error\":_vm.emailErrors,\"label\":_vm.$t('Components.AccountControls.Login.Label_Email', _vm.localeOverride),\"onKeyUpEnter\":_vm.authorizeUser},on:{\"input\":function($event){return _vm.$v.emailAddress.$touch()},\"blur\":function($event){return _vm.$v.emailAddress.$touch()}},model:{value:(_vm.emailAddress),callback:function ($$v) {_vm.emailAddress=$$v},expression:\"emailAddress\"}}),_c('ui-base-input-field',{attrs:{\"fieldType\":\"password\",\"labelForInput\":false,\"error\":_vm.passwordErrors,\"label\":_vm.$t('Components.AccountControls.Login.Label_Password', _vm.localeOverride),\"onKeyUpEnter\":_vm.authorizeUser},on:{\"input\":function($event){return _vm.$v.password.$touch()},\"blur\":function($event){return _vm.$v.password.$touch()}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),_c('div',{staticClass:\"has-text-right has-padding-top\"},[_c('button',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.showSpinner },attrs:{\"disabled\":Boolean(_vm.$v.$anyError) || _vm.showSpinner,\"aria-label\":\"login\"},on:{\"click\":_vm.authorizeUser}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.Login.Button_Login', _vm.localeOverride))+\" \")])]),(_vm.showPasskeyLogin)?_c('div',{staticClass:\"has-padding-top\"},[_c('p',{staticClass:\"has-text-centered has-text-grey\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.Login.Text_Or', _vm.localeOverride))+\" \")]),_c('button',{staticClass:\"button is-fullwidth\",class:{ 'is-loading': _vm.passkeyBusy },attrs:{\"disabled\":_vm.passkeyBusy,\"aria-label\":\"login-passkey\"},on:{\"click\":_vm.authorizeWithPasskey}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'key']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.AccountControls.Login.Button_Passkey', _vm.localeOverride)))])])]):_vm._e(),_c('div',[_c('hr'),_c('div',{staticClass:\"has-margin-bottom\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.Login.Text_ForgotPassword', _vm.localeOverride))+\" \"),_c('a',{on:{\"click\":function($event){return _vm.actionForgotPassword()}}},[_vm._v(_vm._s(_vm.$t('Components.AccountControls.Login.Link_ForgotPassword', _vm.localeOverride)))])]),_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.Login.Text_NoAccount', _vm.localeOverride))+\" \"),_c('a',{on:{\"click\":function($event){return _vm.actionRegister()}}},[_vm._v(_vm._s(_vm.$t('Components.AccountControls.Login.Link_NoAccount', _vm.localeOverride)))])])])],1):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <div v-if=\"!isLoggedIn\">\n      <p class=\"title is-4\">\n        {{ $t('Components.AccountControls.Login.Main_Title', localeOverride) }}\n      </p>\n\n      <Message\n        v-if=\"errorMessage\"\n        :message=\"errorMessage\"\n        class=\"is-danger\"\n      />\n\n      <ui-base-input-field\n        v-model=\"emailAddress\"\n        :labelForInput=\"false\"\n        :error=\"emailErrors\"\n        :label=\"$t('Components.AccountControls.Login.Label_Email', localeOverride)\"\n        :onKeyUpEnter=\"authorizeUser\"\n        @input=\"$v.emailAddress.$touch()\"\n        @blur=\"$v.emailAddress.$touch()\"\n      />\n\n      <ui-base-input-field\n        v-model=\"password\"\n        fieldType=\"password\"\n        :labelForInput=\"false\"\n        :error=\"passwordErrors\"\n        :label=\"$t('Components.AccountControls.Login.Label_Password', localeOverride)\"\n        :onKeyUpEnter=\"authorizeUser\"\n        @input=\"$v.password.$touch()\"\n        @blur=\"$v.password.$touch()\"\n      />\n      <div class=\"has-text-right has-padding-top\">\n        <button\n          @click=\"authorizeUser\"\n          class=\"button is-primary\"\n          :class=\"{ 'is-loading': showSpinner }\"\n          :disabled=\"Boolean($v.$anyError) || showSpinner\"\n          aria-label=\"login\"\n        >\n          {{ $t('Components.AccountControls.Login.Button_Login', localeOverride) }}\n        </button>\n      </div>\n\n      <div\n        v-if=\"showPasskeyLogin\"\n        class=\"has-padding-top\"\n      >\n        <p class=\"has-text-centered has-text-grey\">\n          {{ $t('Components.AccountControls.Login.Text_Or', localeOverride) }}\n        </p>\n        <button\n          @click=\"authorizeWithPasskey\"\n          class=\"button is-fullwidth\"\n          :class=\"{ 'is-loading': passkeyBusy }\"\n          :disabled=\"passkeyBusy\"\n          aria-label=\"login-passkey\"\n        >\n          <span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'key']\" />\n          </span>\n          <span>{{ $t('Components.AccountControls.Login.Button_Passkey', localeOverride) }}</span>\n        </button>\n      </div>\n\n      <div>\n        <hr />\n        <div class=\"has-margin-bottom\">\n          {{ $t('Components.AccountControls.Login.Text_ForgotPassword', localeOverride) }}\n          <a @click=\"actionForgotPassword()\">{{\n            $t('Components.AccountControls.Login.Link_ForgotPassword', localeOverride)\n          }}</a>\n        </div>\n        <div>\n          {{ $t('Components.AccountControls.Login.Text_NoAccount', localeOverride) }}\n          <a @click=\"actionRegister()\">{{\n            $t('Components.AccountControls.Login.Link_NoAccount', localeOverride)\n          }}</a>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport loginProvider from '@/providers/login'\nimport passkeyProvider from '@/providers/passkey'\nimport { decodeRequestOptions, encodeAssertion } from '@/utils/webauthn'\nimport { resolveCurrentChannelId } from '@/utils/channelHelper'\nimport { isCyberdigmaDomain } from '@/utils/domainHelper'\nimport encryptString from '@/mixins/encryptString'\nimport { required, email } from 'vuelidate/lib/validators'\nconst touchMap = new WeakMap()\n\nimport { mapGetters, mapMutations } from 'vuex'\n\nexport default {\n  name: 'component-login',\n  mixins: [encryptString],\n\n  components: {\n    Message: () => import(/* webpackChunkName: \"component-account-controls-login\" */ '@/components/UI/Message'),\n  },\n\n  props: {\n    linkActionForgotPassword: {\n      typeof: Function,\n      default: false,\n    },\n\n    linkActionRegister: {\n      typeof: Function,\n      default: false,\n    },\n  },\n\n  inject: {\n    localeOverride: {\n      type: String,\n      default: function() {\n        return this.$i18n.locale\n      }\n    }\n  },\n\n  data() {\n    return {\n      emailAddress: '',\n      password: '',\n      showSpinner: false,\n      failCode: false,\n      passkeySupported: typeof window !== 'undefined' && !!window.PublicKeyCredential,\n      passkeyBusy: false,\n    }\n  },\n\n  computed: {\n    ...mapGetters({\n      isLoggedIn: 'profileStore/getIsLoggedIn',\n    }),\n\n    // Offer passkeys whenever the browser supports them; the channel/RP is resolved from the URL.\n    showPasskeyLogin() {\n      return this.passkeySupported\n    },\n\n    emailErrors() {\n      const errors = []\n      if (!this.$v.emailAddress.$dirty) return errors\n      if (!this.$v.emailAddress.required) {\n        errors.push(\n          this.$t('Form.InputErrors.RequiredField', {\n            fieldLabel: this.$t('Components.AccountControls.Login.Label_Email', this.localeOverride),\n          })\n        )\n      } else if (!this.$v.emailAddress.email) {\n        errors.push(this.$t('Form.InputErrors.InvalidEmail', this.localeOverride))\n      }\n      return errors\n    },\n\n    passwordErrors() {\n      const errors = []\n      if (!this.$v.password.$dirty) return errors\n      if (!this.$v.password.required) {\n        errors.push(\n          this.$t('Form.InputErrors.RequiredField', {\n            fieldLabel: this.$t(\n              'Components.AccountControls.Login.Label_Password'\n            ),\n          })\n        )\n      }\n      return errors\n    },\n\n    errorMessage() {\n      if (this.failCode === 404) {\n        return this.$t('Components.AccountControls.Login.Message_Error404', this.localeOverride)\n      } else if (this.failCode === 403) {\n        return this.$t('Components.AccountControls.Login.Message_Error403', this.localeOverride)\n      } else if (this.failCode === 'passkey') {\n        return this.$t('Components.AccountControls.Login.Message_ErrorPasskey', this.localeOverride)\n      } else if (this.failCode === 'passkeyUnavailable') {\n        return this.$t('Components.AccountControls.Login.Message_PasskeyUnavailable', this.localeOverride)\n      } else if (this.failCode) {\n        return this.$t('Components.AccountControls.Login.Message_ErrorUnknown', this.localeOverride)\n      }\n      return ''\n    },\n  },\n\n  /**\n   * Form validation rules\n   */\n  validations: {\n    emailAddress: {\n      required,\n      email,\n    },\n    password: {\n      required,\n    },\n  },\n\n  methods: {\n    ...mapMutations(['setAppStartupLoadReady']),\n\n    actionForgotPassword() {\n      if (!this.linkActionForgotPassword) {\n        this.$router.push({ name: 'my-account-forgotpassword' })\n        return\n      }\n      this.linkActionForgotPassword()\n    },\n    actionRegister() {\n      if (!this.linkActionRegister) {\n        this.$router.push({ name: 'my-account-register' })\n        return\n      }\n      this.linkActionRegister()\n    },\n\n    async authorizeUser() {\n      let self = this\n      if (!this.showSpinner) {\n        this.showSpinner = true\n        this.failCode = false\n        this.$v.$touch()\n        if (this.$v.$invalid) {\n          // 'ERROR'\n          this.showSpinner = false\n        } else {\n          let encryptedPassword = self.encryptPassword(self.password)\n\n          // 'PENDING'\n          self.setAppStartupLoadReady(false)\n          await loginProvider.methods\n            .authorizeUser(self.emailAddress, encryptedPassword)\n            .then((response) => {\n              if (response.status === 200 && response.data.StatusCode === 1) {\n                self.$store.dispatch(\n                  'profileStore/saveProfileToken',\n                  response.data.ProfileToken\n                )\n                this.$emit('actionAfterLogin')\n              } else {\n                if (\n                  response.data.StatusCode === -1 ||\n                  response.data.StatusCode === -3\n                ) {\n                  this.failCode = 404\n                }\n\n                // Not yet activated\n                else if (response.data.StatusCode === -2) {\n                  this.failCode = 403\n                }\n              }\n            })\n            .catch(() => {\n              // console.log(err)\n              // Ensure the failcode is not false at this point\n              if (this.failCode === false) {\n                this.failCode = true\n              }\n            })\n            .finally(() => {\n              self.showSpinner = false\n              self = null\n            })\n        }\n      }\n    },\n\n    async authorizeWithPasskey() {\n      if (this.passkeyBusy || !this.passkeySupported) {\n        return\n      }\n      this.passkeyBusy = true\n      this.failCode = false\n\n      try {\n        // Resolve the channel from the current URL so the API derives the right RP id for this domain.\n        const channelId = await resolveCurrentChannelId(this.$store.getters['brandChannelId'])\n\n        // No channel mapped for this (non-cyberdigma) domain yet — passkeys can't be used here.\n        if (channelId === 0 && !isCyberdigmaDomain()) {\n          this.failCode = 'passkeyUnavailable'\n          return\n        }\n\n        // 1. Get a challenge from the server (usernameless / discoverable).\n        const optionsResponse = await passkeyProvider.methods.getAuthenticationOptions(channelId)\n        if (!optionsResponse || optionsResponse.status !== 200) {\n          throw new Error('options')\n        }\n\n        const ceremonyId = optionsResponse.data.CeremonyId\n        const publicKey = decodeRequestOptions(optionsResponse.data.Options)\n\n        // 2. Let the authenticator sign it (passkey picker / biometric prompt).\n        const assertion = await navigator.credentials.get({ publicKey })\n\n        // 3. Send it back; on success we get a ProfileToken, exactly like password login.\n        this.setAppStartupLoadReady(false)\n        const authResponse = await passkeyProvider.methods.authenticatePasskey(ceremonyId, encodeAssertion(assertion), channelId)\n\n        if (authResponse && authResponse.status === 200 && authResponse.data.StatusCode === 1) {\n          this.$store.dispatch('profileStore/saveProfileToken', authResponse.data.ProfileToken)\n          this.$emit('actionAfterLogin')\n        } else {\n          this.failCode = 'passkey'\n        }\n      } catch (error) {\n        // Dismissing the native prompt throws NotAllowedError/AbortError — treat that as a soft cancel.\n        if (!error || (error.name !== 'NotAllowedError' && error.name !== 'AbortError')) {\n          this.failCode = 'passkey'\n        }\n      } finally {\n        this.passkeyBusy = false\n      }\n    },\n\n    logOff() {\n      this.$store.dispatch('profileStore/logoff')\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=6a7c8a36\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import axios from 'axios'\nimport store from '@/store'\n\nlet getLocationCompaniesToken = null\nlet getCompaniesToken = null\n\nexport default {\n  methods: {\n    async getCompanyById(companyId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company/${companyId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getProfileCompanies(profileId, locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/company/profile/${profileId}`,\n        {\n          params: {\n            locationId: locationId\n          },\n\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getLocationCompanies(\n      locationId,\n      customerId = 0,\n      searchTerm = '',\n      startDate = '1900-01-01',\n      endDate = '1900-01-01',\n      page = 1,\n      itemsPerPage = 25,\n      orderBy = 2,\n      sortDirection = 'DESC',\n    ) {\n      getLocationCompaniesToken && getLocationCompaniesToken.cancel()\n      getLocationCompaniesToken = axios.CancelToken.source()\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company/location/${locationId}`,\n        {\n          cancelToken: getLocationCompaniesToken.token,\n\n          params: {\n            q: searchTerm,\n            customerId: customerId,\n            startDate: startDate,\n            endDate: endDate,\n            page: page,\n            itemsPerPage: itemsPerPage,\n            orderBy: orderBy,\n            sortDirection: sortDirection\n          },\n\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getCompanies(searchTerm, locationId, page, itemsPerPage, startDate, endDate) {\n      getCompaniesToken && getCompaniesToken.cancel()\n      getCompaniesToken = axios.CancelToken.source()\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company/location/${locationId}`,\n        {\n          cancelToken: getCompaniesToken.token,\n          params: {\n            q: searchTerm.trim(),\n            page: page,\n            itemsPerPage: itemsPerPage,\n            startDate: startDate,\n            endDate: endDate\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async createCompany(company) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company`,\n        company,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async updateCompany(company) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company`,\n        company,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async deleteCompany(companyId, mergeTo) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company/${companyId}`,\n        {\n          params: {\n            mergeTo: mergeTo\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async createCompanyAddress(address) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company/address`,\n        address,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async updateCompanyAddress(address) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company/address`,\n        address,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async deleteCompanyAddress(address) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company/${address.CompanyId}/address/${address.Id}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async setCompanyAddressAsDefault(address) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/company/address/${address.Id}/default`,\n        null,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n  }\n}\n","<script>\nexport default {\n  name: `TransitionExpand`,\n  functional: true,\n  render(createElement, context) {\n    const data = {\n      props: {\n        name: `expand`\n      },\n      on: {\n        afterEnter(element) {\n          // eslint-disable-next-line no-param-reassign\n          element.style.height = `auto`\n        },\n        enter(element) {\n          const { width } = getComputedStyle(element)\n          /* eslint-disable no-param-reassign */\n          element.style.width = width\n          element.style.position = `absolute`\n          element.style.visibility = `hidden`\n          element.style.height = `auto`\n          /* eslint-enable */\n          const { height } = getComputedStyle(element)\n          /* eslint-disable no-param-reassign */\n          element.style.width = null\n          element.style.position = null\n          element.style.visibility = null\n          element.style.height = 0\n          /* eslint-enable */\n          // Force repaint to make sure the\n          // animation is triggered correctly.\n          // eslint-disable-next-line no-unused-expressions\n          getComputedStyle(element).height\n          setTimeout(() => {\n            // eslint-disable-next-line no-param-reassign\n            element.style.height = height\n          })\n        },\n        leave(element) {\n          const { height } = getComputedStyle(element)\n          // eslint-disable-next-line no-param-reassign\n          element.style.height = height\n          // Force repaint to make sure the\n          // animation is triggered correctly.\n          // eslint-disable-next-line no-unused-expressions\n          getComputedStyle(element).height\n          setTimeout(() => {\n            // eslint-disable-next-line no-param-reassign\n            element.style.height = 0\n          })\n        }\n      }\n    }\n    return createElement(`transition`, data, context.children)\n  }\n}\n</script>\n\n<style scoped>\n* {\n  will-change: height;\n  transform: translateZ(0);\n  backface-visibility: hidden;\n  perspective: 1000px;\n}\n</style>\n\n<style>\n.expand-enter-active,\n.expand-leave-active {\n  transition: height 0.3s ease-in-out;\n  overflow: hidden;\n}\n.expand-enter,\n.expand-leave-to {\n  height: 0;\n}\n</style>\n","var render, staticRenderFns\nimport script from \"./TransitionExpand.vue?vue&type=script&lang=js\"\nexport * from \"./TransitionExpand.vue?vue&type=script&lang=js\"\nimport style0 from \"./TransitionExpand.vue?vue&type=style&index=0&id=3deb10ec&prod&scoped=true&lang=css\"\nimport style1 from \"./TransitionExpand.vue?vue&type=style&index=1&id=3deb10ec&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"3deb10ec\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TransitionExpand.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TransitionExpand.vue?vue&type=script&lang=js\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.isSaving)?_c('Loader',{key:\"isSaving\",attrs:{\"height\":100}}):_vm._e(),(!_vm.isSaving)?_c('div',[(!_vm.showEdit)?_vm._l((_vm.templateItems),function(item,index){return _c('div',{key:'ti-' + index},[(item.contentType === 'contact')?_c('TemplateContact',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'dates')?_c('TemplateDates',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'hero')?_c('TemplateHero',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'images')?_c('TemplateImages',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'location')?_c('TemplateLocation',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'menu')?_c('TemplateMenu',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id},on:{\"changePageview\":_vm.setView}}):_vm._e(),(item.contentType === 'mixed')?_c('TemplateMixedContent',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'options')?_c('TemplateOptions',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'program')?_c('TemplateProgram',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'spaces')?_c('TemplateSpaces',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'summary')?_c('TemplateSummary',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'terms')?_c('TemplateTerms',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e(),(item.contentType === 'text')?_c('TemplateText',{key:item.id,attrs:{\"item\":item,\"proposal\":_vm.mProposal,\"id\":item.id}}):_vm._e()],1)}):_c('TemplateEditor',{attrs:{\"templateItems\":_vm.templateItems,\"proposalLanguage\":_vm.proposalLanguage},on:{\"templateUpdated\":_vm.updateProposal,\"hideEditor\":_vm.stopEdit,\"cancelEditor\":_vm.cancelEdit}})],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.host)?_c('div',{class:_vm.cssSectionClass},[_c('div',{class:_vm.cssContainerClass},[(_vm.mItem.title)?_c('h2',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_vm._v(\" \"+_vm._s(_vm.mItem.title)+\" \")]):_vm._e(),(_vm.mItem.text)?_c('div',{staticClass:\"mb-6 content\",domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.mItem.text))}}):_vm._e(),_c('div',{staticClass:\"content\",class:_vm.allignementClass},[_c('div',{staticClass:\"is-inline-block has-text-left\"},[(_vm.mItem.showImage && _vm.host.Image)?_c('div',[_c('AvatarImage',{key:'h'+_vm.host.Image,staticClass:\"ml-0 mb-2 is-84x84\",attrs:{\"imageSrc\":_vm.host.Image,\"itemId\":_vm.location.Id,\"itemName\":_vm.host.Name,\"photoSize\":80,\"type\":\"host\"}})],1):_vm._e(),(_vm.mItem.showName && _vm.host.Name)?_c('div',[_c('strong',[_vm._v(_vm._s(_vm.host.Name))])]):_vm._e(),(_vm.mItem.showJobTitle && _vm.host.JobTitle)?_c('div',[_vm._v(\" \"+_vm._s(_vm.host.JobTitle)+\" \")]):_vm._e(),(_vm.mItem.showLocation && _vm.location)?_c('div',[_vm._v(\" \"+_vm._s(_vm.location.Name)+\" \")]):_vm._e(),(_vm.mItem.showEmail && _vm.host.Email)?_c('div',[_vm._v(\" \"+_vm._s(_vm.host.Email)+\" \")]):_vm._e(),(_vm.mItem.showPhone && _vm.host.Phone)?_c('div',[_vm._v(\" \"+_vm._s(_vm.host.Phone)+\" \")]):_vm._e()])])])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    v-if=\"host\"\n    :class=\"cssSectionClass\"\n  >\n    <div :class=\"cssContainerClass\">\n      <h2\n        v-if=\"mItem.title\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >\n        {{ mItem.title }}\n      </h2>\n      <div\n        v-if=\"mItem.text\"\n        v-html=\"$options.filters.processTextForDisplay(mItem.text)\"\n        class=\"mb-6 content\"\n      ></div>\n\n      <div\n        class=\"content\"\n        :class=\"allignementClass\"\n      >\n        <div class=\"is-inline-block has-text-left\">\n          <div v-if=\"mItem.showImage && host.Image\">\n            <AvatarImage\n              :key=\"'h'+host.Image\"\n              class=\"ml-0 mb-2 is-84x84\"\n              :imageSrc=\"host.Image\"\n              :itemId=\"location.Id\"\n              :itemName=\"host.Name\"\n              :photoSize=\"80\"\n              type=\"host\"\n            />\n          </div>\n\n          <div v-if=\"mItem.showName && host.Name\">\n            <strong>{{ host.Name }}</strong>\n          </div>\n          <div v-if=\"mItem.showJobTitle && host.JobTitle\">\n            {{ host.JobTitle }}\n          </div>\n          <div v-if=\"mItem.showLocation && location\">\n            {{ location.Name }}\n          </div>\n          <div v-if=\"mItem.showEmail && host.Email\">\n            {{ host.Email }}\n          </div>\n          <div v-if=\"mItem.showPhone && host.Phone\">\n            {{ host.Phone }}\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nimport AvatarImage from '@/components/UI/AvatarImage.vue'\n\nexport default {\n  components: {\n    AvatarImage\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n    proposal: {\n      type: Object,\n      default: null,\n    },\n    parentHasChilds: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  computed: {\n    cssSectionClass() {\n      return [{\n        'section': this.level === 0,\n        'child-section': this.level !== 0,\n        // 'is-align-items-center': !this.mItem.title && !this.mItem.text,\n        'top-bottom-borders': this.parentHasChilds\n      }]\n    },\n\n    cssContainerClass() {\n      return [{\n        'container': this.level === 0\n      }]\n    },\n\n    host() {\n      let host = null\n\n      if (this.proposal && this.proposal.Host) {\n        host = this.proposal.Host\n      }\n\n      return host\n    },\n\n    location() {\n      let location = null\n\n      if (this.proposal && this.proposal.Location) {\n        location = this.proposal.Location\n      }\n\n      return location\n    },\n\n    allignementClass() {\n      let alignment = 'has-text-left';\n\n      if (this.mItem.align === 'left') {\n        alignment = 'has-text-left';\n      }\n      else if (this.mItem.align === 'center') {\n        alignment = 'has-text-centered';\n      }\n      else if (this.mItem.align === 'right') {\n        alignment = 'has-text-right';\n      }\n\n      return alignment;\n    },\n\n    proposalLanguage() {\n      return this.proposal?.Language || 'en';\n    },\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n\n    this.mItem.title = this.mItem.fillDynamically ? '' : this.mItem.title;\n    this.mItem.text = this.mItem.fillDynamically ? '' : this.mItem.text;\n  },\n}\n</script>\n\n<style scoped lang=\"scss\">\n.child-section {\n  height: 100%;\n  &.top-bottom-borders {\n    display: flex;\n    justify-content: center;\n    flex-direction: column;\n    padding-block: $gap;\n    border-block: 1px solid;\n  }\n}\n</style>\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Contact.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Contact.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Contact.vue?vue&type=template&id=15de2dec&scoped=true\"\nimport script from \"./Contact.vue?vue&type=script&lang=js\"\nexport * from \"./Contact.vue?vue&type=script&lang=js\"\nimport style0 from \"./Contact.vue?vue&type=style&index=0&id=15de2dec&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"15de2dec\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[(_vm.mItem.title)?_c('h2',{staticClass:\"title is-2\"},[_vm._v(\" \"+_vm._s(_vm.mItem.title)+\" \")]):_vm._e(),(_vm.mItem.text)?_c('div',{staticClass:\"content\",class:{'mb-6': _vm.reservation.Dates.length},domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.mItem.text))}}):_vm._e(),_vm._l((_vm.reservation.Dates),function(date,dIndex){return _c('div',{key:date.Date,class:{'mt-6': dIndex !== 0 },attrs:{\"id\":'date-' + date.Date}},_vm._l((_vm.mItem.items),function(dItem,dsIndex){return _c('div',{key:'di-' + dsIndex},[(dItem.contentType === 'date')?_c('TemplateDate',{class:{'mb-6': dsIndex < _vm.mItem.items.length },attrs:{\"item\":dItem,\"proposal\":_vm.proposal,\"reservationDate\":date,\"level\":_vm.nextLevel}}):_vm._e(),(dItem.contentType === 'images')?_c('TemplateImages',{class:{'mb-6': dsIndex < _vm.mItem.items.length },attrs:{\"item\":dItem,\"proposal\":_vm.proposal,\"level\":_vm.nextLevel}}):_vm._e(),(dItem.contentType === 'summary')?_c('TemplateSummary',{class:{'mb-6': dsIndex < _vm.mItem.items.length },attrs:{\"item\":dItem,\"proposal\":_vm.proposal,\"level\":_vm.nextLevel}}):_vm._e(),(dItem.contentType === 'options')?_c('TemplateOptions',{class:{'mb-6': dsIndex < _vm.mItem.items.length },attrs:{\"item\":dItem,\"proposal\":_vm.proposal,\"reservationDate\":date,\"level\":_vm.nextLevel}}):_vm._e(),(dItem.contentType === 'program' && date.ProgramItems.length)?_c('TemplateProgram',{class:{'mb-6': dsIndex < _vm.mItem.items.length },attrs:{\"item\":dItem,\"proposal\":_vm.proposal,\"reservationDate\":date,\"level\":_vm.nextLevel}}):_vm._e(),(dItem.contentType === 'spaces')?_c('TemplateSpaces',{class:{'mb-6': dsIndex < _vm.mItem.items.length },attrs:{\"item\":dItem,\"proposal\":_vm.proposal,\"reservationDate\":date,\"level\":_vm.nextLevel}}):_vm._e(),(dItem.contentType === 'text')?_c('TemplateText',{class:{'mb-6': dsIndex < _vm.mItem.items.length },attrs:{\"item\":dItem,\"proposal\":_vm.proposal,\"level\":_vm.nextLevel}}):_vm._e()],1)}),0)})],2)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.mItem)?_c('div',{staticClass:\"mb-4\"},[(_vm.mItem.title)?_c('h2',{staticClass:\"title is-2 has-background-white-bis\"},[_vm._v(\" \"+_vm._s(_vm.mItem.title)+\" \")]):_vm._e(),(_vm.mItem.text)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.mItem.text))}}):_vm._e()]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    v-if=\"mItem\"\n    class=\"mb-4\"\n  >\n    <h2\n      v-if=\"mItem.title\"\n      class=\"title is-2 has-background-white-bis\"\n    >\n      {{ mItem.title }}\n    </h2>\n    <div\n      v-if=\"mItem.text\"\n      v-html=\"$options.filters.processTextForDisplay(mItem.text)\"\n    ></div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nexport default {\n  components: {\n  },\n\n  props: {\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    let dateString = this.$options.filters.dateFormat(this.reservationDate.Date, this.proposalLanguage, 'longDateFormat');\n\n    this.mItem = cleanSource(this.item);\n    this.mItem.title = this.mItem.fillDynamically ? dateString : this.mItem.title.replace('{date}', dateString);\n  },\n\n  computed: {\n    proposalLanguage() {\n      return this.proposal?.Language || 'en';\n    },\n\n    reservation() {\n      let reservation = null;\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation;\n      }\n\n      return reservation;\n    },\n  },\n\n  methods: {\n\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"sass\">\n.title\n  padding: 7px\n  margin-inline: -7px\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Date.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Date.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Date.vue?vue&type=template&id=3e4126e1&scoped=true\"\nimport script from \"./Date.vue?vue&type=script&lang=js\"\nexport * from \"./Date.vue?vue&type=script&lang=js\"\nimport style0 from \"./Date.vue?vue&type=style&index=0&id=3e4126e1&prod&scoped=true&lang=sass\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"3e4126e1\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[(_vm.mItem.title)?_c('h2',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_c('div',[_vm._v(_vm._s(_vm.mItem.title))])]):_vm._e(),(_vm.mItem.text)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.mItem.text))}}):_vm._e(),_c('div',{staticClass:\"columns is-mobile is-multiline is-centered\",class:_vm.cssColumnsClasses},_vm._l((_vm.mItem.images),function(image,index){return _c('div',{key:'col-' + index,staticClass:\"column\",class:_vm.cssColumnClasses},[_c('figure',{staticClass:\"box is-shadowless image is-3by2 has-background-white-bis\"},[_c('img',{style:({ backgroundImage: `url('${image.UrlLarge}')` }),attrs:{\"src\":\"/images/spacer1_1.gif\",\"alt\":\"\",\"itemprop\":\"photo\"}})])])}),0)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"level === 0 ? 'section' : 'child-section'\">\n    <div :class=\"{'container': level === 0 }\">\n      <h2\n        v-if=\"mItem.title\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >\n        <div>{{ mItem.title }}</div>\n      </h2>\n      <div\n        v-if=\"mItem.text\"\n        v-html=\"$options.filters.processTextForDisplay(mItem.text)\"\n      ></div>\n\n      <div\n        :class=\"cssColumnsClasses\"\n        class=\"columns is-mobile is-multiline is-centered\"\n      >\n        <div\n          v-for=\"(image, index) in mItem.images\"\n          :key=\"'col-' + index\"\n          class=\"column\"\n          :class=\"cssColumnClasses\"\n        >\n          <figure class=\"box is-shadowless image is-3by2 has-background-white-bis\">\n            <img\n              src=\"/images/spacer1_1.gif\"\n              alt=\"\"\n              :style=\"{ backgroundImage: `url('${image.UrlLarge}')` }\"\n              itemprop=\"photo\"\n            />\n          </figure>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nexport default {\n  components: {\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n    parentHasChilds: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  computed: {\n    cssColumnsClasses() {\n      return [{\n        'is-fullwidth': !this.parentHasChilds\n      }]\n    },\n\n    cssColumnClasses() {\n      return [\n        // { 'is-half-tablet': this.parentHasChilds && this.mItem.images.length },\n        { 'is-half-mobile is-one-quarter-desktop': !this.parentHasChilds && this.mItem.images.length > 2 },\n        { 'is-half-mobile is-one-third-tablet': !this.parentHasChilds && this.mItem.images.length < 4 }\n      ]\n    }\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n  },\n}\n</script>\n\n<style scoped lang=\"scss\">\n.columns {\n  container-type: inline-size;\n\n  &:not(.is-fullwidth) {\n    > .column {\n      flex: none;\n      width: 50%;\n\n      @container (width < 420px) {\n        flex: none;\n        width: 100%;\n      }\n    }\n  }\n}\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Images.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Images.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Images.vue?vue&type=template&id=326b7365&scoped=true\"\nimport script from \"./Images.vue?vue&type=script&lang=js\"\nexport * from \"./Images.vue?vue&type=script&lang=js\"\nimport style0 from \"./Images.vue?vue&type=style&index=0&id=326b7365&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"326b7365\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[(_vm.mItem.title && _vm.optionItems.length > 0)?_c('h1',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_vm._v(\" \"+_vm._s(_vm.mItem.title)+\" \")]):_vm._e(),(_vm.mItem.text)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.mItem.text)}}):_vm._e(),_vm._l((_vm.dates),function(date,index){return _c('div',{key:'date-' + index,staticClass:\"mb-4\"},[(!_vm.reservationDate)?_c('div',{staticClass:\"subtitle is-6 has-text-weight-semibold mt-4 mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$options.filters.dateFormat(date.Date, _vm.proposalLanguage, 'longDateFormat'))+\" \")]):_vm._e(),_c('div',{staticClass:\"columns-options columns is-multiline is-mobile is-centered\"},_vm._l((_vm.optionItems.filter(oi => oi.Date === date.Date)),function(option,index){return _c('ProposalOptionCard',{key:index,staticClass:\"column\",class:_vm.cssClasses,attrs:{\"locationId\":_vm.reservation.LocationId,\"language\":_vm.proposalLanguage,\"option\":option}})}),1)])})],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"optionBox\"},[_c('div',{staticClass:\"box is-relative\"},[(_vm.isIncluded && _vm.includedLabel)?_c('span',{staticClass:\"tag is-success is-light\"},[_vm._v(_vm._s(_vm.includedLabel))]):_vm._e(),_c('ImageViewer',{staticClass:\"is-4by3\",attrs:{\"aspectRatio\":4 / 3,\"itemName\":_vm.name,\"imageSrc\":_vm.option.Image?.UrlLarge ?? ''}}),_c('div',{staticClass:\"mt-5\"},[_c('div',{staticClass:\"content\"},[_c('h2',{staticClass:\"title is-5\"},[_vm._v(_vm._s(_vm.name))]),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.description)}})])])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"optionBox\">\n    <div class=\"box is-relative\">\n      <span\n        v-if=\"isIncluded && includedLabel\"\n        class=\"tag is-success is-light\"\n      >{{ includedLabel }}</span>\n      <ImageViewer\n        :aspectRatio=\"4 / 3\"\n        :itemName=\"name\"\n        :imageSrc=\"option.Image?.UrlLarge ?? ''\"\n        class=\"is-4by3\"\n      />\n      <div class=\"mt-5\">\n        <div class=\"content\">\n          <h2 class=\"title is-5\">{{ name }}</h2>\n          <span v-html=\"description\"></span>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport ImageViewer from '@/components/UI/ImageViewer.vue'\nimport { mapState } from 'vuex'\n\nexport default {\n  components: {\n    ImageViewer\n  },\n\n  props: {\n    locationId: {\n      type: Number,\n      default: 0,\n    },\n\n    language: {\n      type: String,\n      default: 'en',\n      required: true,\n    },\n\n    option: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {}\n  },\n\n  computed: {\n    ...mapState('proposalStore', ['proposalLanguage']),\n\n    proposalLanguage() {\n      return this.proposal?.Language || 'en'\n    },\n\n    isIncluded() {\n      return this.option.InPackage || this.option.IncludedWithSpace\n    },\n\n    includedLabel() {\n      if (this.option.IsPackage && !this.option.IncludedWithSpace) {\n        return this.$t('Components.Proposals.Proposal.Label_IncludedInPackage', this.language)\n      }\n\n      if ((!this.option.IsPackage && this.option.IncludedWithSpace) || this.option.IsPackage && this.option.IncludedWithSpace) {\n        return this.$t('Components.Proposals.Proposal.Label_IncludedInSpace', this.language)\n      }\n\n      return ''\n    },\n\n    name() {\n      let name = ''\n\n      if (this.option && this.option.Descriptions && this.option.Descriptions.length > 0) {\n        let text = this.option.Descriptions.find((t) => t.Language === this.language)\n\n        if (text) {\n          name = text.Name\n        } else {\n          text = this.option.Descriptions.find((t) => t.Language === 'en')\n\n          if (text) {\n            name = text.Name\n          }\n        }\n      }\n\n      return name\n    },\n\n    description() {\n      let description = ''\n\n      if (this.option && this.option.Descriptions && this.option.Descriptions.length > 0) {\n        let text = this.option.Descriptions.find((t) => t.Language === this.language)\n\n        if (text) {\n          description = text.Description\n        } else {\n          text = this.option.Texts.Descriptions.find((d) => d.Language === 'en')\n\n          if (text) {\n            description = text.Description\n          }\n        }\n      }\n\n      return description\n    },\n\n    features() {\n      let features = []\n\n      if (\n        this.option &&\n        this.option.Features &&\n        this.option.Features.length > 0\n      ) {\n        features = this.option.Features.filter(\n          (f) => f.Language === this.proposalLanguage\n        )\n\n        if (features.length === 0) {\n          features = this.option.Features.filter((f) => f.Language === 'en')\n        }\n      }\n\n      return features\n    },\n  },\n}\n</script>\n\n<style lang=\"sass\" scoped>\n.tag\n  position: absolute\n  top: 10px\n  right: 10px\n  z-index: 1\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalOptionCard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalOptionCard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalOptionCard.vue?vue&type=template&id=3c0c6bf4&scoped=true\"\nimport script from \"./ProposalOptionCard.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalOptionCard.vue?vue&type=script&lang=js\"\nimport style0 from \"./ProposalOptionCard.vue?vue&type=style&index=0&id=3c0c6bf4&prod&lang=sass&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"3c0c6bf4\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div :class=\"level === 0 ? 'section' : 'child-section'\">\n    <div :class=\"{'container': level === 0 }\">\n      <h1\n        v-if=\"mItem.title && optionItems.length > 0\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >\n        {{ mItem.title }}\n      </h1>\n      <div\n        v-if=\"mItem.text\"\n        v-html=\"mItem.text\"\n      ></div>\n\n      <div\n        v-for=\"(date, index) in dates\"\n        :key=\"'date-' + index\"\n        class=\"mb-4\"\n      >\n        <div\n          v-if=\"!reservationDate\"\n          class=\"subtitle is-6 has-text-weight-semibold mt-4 mb-2\"\n        >\n          {{ $options.filters.dateFormat(date.Date, proposalLanguage, 'longDateFormat') }}\n        </div>\n\n        <div class=\"columns-options columns is-multiline is-mobile is-centered\">\n          <ProposalOptionCard\n            v-for=\"(option, index) in optionItems.filter(oi => oi.Date === date.Date)\"\n            :key=\"index\"\n            :locationId=\"reservation.LocationId\"\n            :language=\"proposalLanguage\"\n            :option=\"option\"\n            class=\"column\"\n            :class=\"cssClasses\"\n          />\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nimport ProposalOptionCard from '@/components/Proposals/BookerPreview/ProposalOptionCard';\n\nexport default {\n  components: {\n    ProposalOptionCard\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null,\n      parentWidth: 0\n    }\n  },\n\n  computed: {\n    proposalLanguage() {\n      return this.proposal?.Language || 'en';\n    },\n\n    reservation() {\n      let reservation = null;\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation;\n      }\n\n      return reservation;\n    },\n\n    dates() {\n      let dates = [];\n\n      if (this.proposal && this.reservation) {\n        dates = this.reservation.Dates;\n      }\n\n      if (this.reservationDate) {\n        dates = dates.filter(d => d.Date === this.reservationDate.Date);\n      }\n\n      return dates;\n    },\n\n    optionItems() {\n      let items = [];\n\n      if (this.proposal && this.reservation) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let date = this.reservation.Dates[i];\n\n          if (date.Spaces) {\n            items = items.concat(date.Options.filter(o => o.ShowProposalList));\n          }\n        }\n      }\n\n      if (this.reservationDate) {\n        items = items.filter(s => s.Date === this.reservationDate.Date);\n      }\n\n      return items;\n    },\n\n    cssClasses() {\n      return [\n        'is-half-mobile is-one-third-tablet',\n        { 'is-full': this.parentWidth < 560 },\n        { 'is-one-quarter-fullhd': this.parentWidth === 0 || this.parentWidth >= 1408 }\n      ]\n    }\n  },\n\n  mounted() {\n    window.addEventListener('resize', this.reCalculateScaling)\n    this.reCalculateScaling()\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n\n    this.mItem.title = this.mItem.fillDynamically ? this.$t('Components.Proposals.Proposal.Title_Amenities', this.proposalLanguage) : this.mItem.title;\n    this.mItem.text = this.mItem.fillDynamically ? '' : this.mItem.text;\n  },\n\n  beforeDestroy() {\n    window.removeEventListener('resize', this.reCalculateScaling)\n  },\n\n  methods: {\n    reCalculateScaling() {\n      this.parentWidth = Math.max(this.$el.offsetWidth, 0)\n    }\n  }\n}\n</script>\n\n<style lang=\"sass\" scoped>\n.columns-options\n  :deep(.optionBox)\n    .box\n      height: 100%\n      border-radius: $radius\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Options.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Options.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Options.vue?vue&type=template&id=21d1c0c8&scoped=true\"\nimport script from \"./Options.vue?vue&type=script&lang=js\"\nexport * from \"./Options.vue?vue&type=script&lang=js\"\nimport style0 from \"./Options.vue?vue&type=style&index=0&id=21d1c0c8&prod&lang=sass&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"21d1c0c8\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.mItem && _vm.programItems.length > 0)?_c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[(_vm.mItem.title)?_c('h1',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_vm._v(_vm._s(_vm.mItem.title))]):_vm._e(),(_vm.mItem.text)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.mItem.text)}}):_vm._e(),_vm._l((_vm.dates),function(date,index){return _c('div',{key:'date-' + index,staticClass:\"mb-4\"},[(!_vm.reservationDate)?_c('div',{staticClass:\"subtitle is-6 has-text-weight-semibold mt-4 mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$options.filters.dateFormat(date.Date, _vm.proposalLanguage, 'longDateFormat'))+\" \")]):_vm._e(),_c('table',{staticClass:\"table-propgram table is-fullwidth\"},[_c('tbody',_vm._l((_vm.programItems.filter(pi => pi.Date === date.Date)),function(item,index){return _c('tr',{key:'pi-' + index},[_c('td',[_c('span',[_vm._v(_vm._s(_vm._f(\"minutesToTime\")(item.StartMinutes)))]),(item.Duration > 0)?_c('span',[_vm._v(\" - \"+_vm._s(_vm._f(\"minutesToTime\")((item.StartMinutes + item.Duration))))]):_vm._e()]),_c('td',[_c('span',[_vm._v(_vm._s(item.AssignedSpaceName))])]),_c('td',[_vm._v(_vm._s(item.Description))])])}),0)])])})],2)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    v-if=\"mItem && programItems.length > 0\"\n    :class=\"level === 0 ? 'section' : 'child-section'\"\n  >\n    <div :class=\"{'container': level === 0 }\">\n      <h1\n        v-if=\"mItem.title\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >{{ mItem.title }}</h1>\n      <div\n        v-if=\"mItem.text\"\n        v-html=\"mItem.text\"\n      ></div>\n\n      <div\n        v-for=\"(date, index) in dates\"\n        :key=\"'date-' + index\"\n        class=\"mb-4\"\n      >\n        <div\n          v-if=\"!reservationDate\"\n          class=\"subtitle is-6 has-text-weight-semibold mt-4 mb-2\"\n        >\n          {{ $options.filters.dateFormat(date.Date, proposalLanguage, 'longDateFormat') }}\n        </div>\n\n        <table class=\"table-propgram table is-fullwidth\">\n          <tbody>\n            <tr\n              v-for=\"(item, index) in programItems.filter(pi => pi.Date === date.Date)\"\n              :key=\"'pi-' + index\"\n            >\n              <td>\n                <span>{{ item.StartMinutes | minutesToTime }}</span>\n                <span v-if=\"item.Duration > 0\"> - {{ (item.StartMinutes + item.Duration) | minutesToTime }}</span>\n              </td>\n              <td><span>{{ item.AssignedSpaceName }}</span></td>\n              <td>{{ item.Description }}</td>\n            </tr>\n          </tbody>\n        </table>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nexport default {\n  components: {\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n\n    let dateString = '';\n    if (this.reservationDate && this.reservationDate.Date) {\n      dateString = this.$options.filters.dateFormat(this.reservationDate.Date, this.proposalLanguage, 'longDateFormat');\n    }\n\n    this.mItem.title = this.mItem.fillDynamically ? this.$t('Components.Proposals.Proposal.Title_Program', this.proposalLanguage) : this.mItem.title.replace('{date}', dateString);\n    this.mItem.text = this.mItem.fillDynamically ? '' : this.mItem.text;\n  },\n\n  computed: {\n    proposalLanguage() {\n      return this.proposal?.Language || 'en';\n    },\n\n    reservation() {\n      let reservation = null;\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation;\n      }\n\n      return reservation;\n    },\n\n    dates() {\n      let dates = [];\n\n      if (this.proposal && this.reservation) {\n        dates = this.reservation.Dates;\n      }\n\n      if (this.reservationDate) {\n        dates = dates.filter(d => d.Date === this.reservationDate.Date);\n      }\n\n      return dates;\n    },\n\n    programItems() {\n      let items = [];\n\n      if (this.proposal && this.reservation) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let date = this.reservation.Dates[i];\n\n          if (date.ProgramItems) {\n            items = items.concat(date.ProgramItems);\n          }\n        }\n      }\n\n      if (this.reservationDate) {\n        items = items.filter(pi => pi.Date === this.reservationDate.Date);\n      }\n\n      items = items.filter(pi => pi.IsPublic).sort((a, b) => a.StartMinutes - b.StartMinutes);\n\n      return items;\n    }\n  },\n\n  methods: {\n\n  }\n}\n</script>\n\n<style scoped lang=\"sass\">\n.table-propgram\n  td\n    &:nth-child(1)\n      width: 125px\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Program.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Program.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Program.vue?vue&type=template&id=ba52476a&scoped=true\"\nimport script from \"./Program.vue?vue&type=script&lang=js\"\nexport * from \"./Program.vue?vue&type=script&lang=js\"\nimport style0 from \"./Program.vue?vue&type=style&index=0&id=ba52476a&prod&scoped=true&lang=sass\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"ba52476a\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[(_vm.mItem.title && _vm.spaceItems.length > 0)?_c('h2',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_vm._v(\" \"+_vm._s(_vm.mItem.title)+\" \")]):_vm._e(),(_vm.mItem.text)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.mItem.text)}}):_vm._e(),_vm._l((_vm.dates),function(date,index){return _c('div',{key:'date-' + index,staticClass:\"mb-4\"},[(!_vm.reservationDate)?_c('div',{staticClass:\"subtitle is-6 has-text-weight-semibold mt-4 mb-2\"},[_vm._v(\" \"+_vm._s(_vm.$options.filters.dateFormat(date.Date, _vm.proposalLanguage, 'longDateFormat'))+\" \")]):_vm._e(),_vm._l((_vm.spaceItems.filter(si => si.StartDate === date.Date)),function(space,index){return _c('div',{key:index},[_c('ProposalSpaceCard',{key:'psc-' + index,class:{'mt-6': index !== 0},attrs:{\"meetingspace\":space,\"language\":_vm.proposalLanguage,\"proposal\":_vm.reservation,\"reservationDate\":date}})],1)})],2)})],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"itemscope\":\"\",\"itemtype\":\"https://schema.org/MeetingRoom\"}},[(_vm.mMeetingSpace)?_c('div',{staticClass:\"columns is-multiline\"},[_c('div',{staticClass:\"column-presentation column is-half is-two-fifths-fullhd\"},[(_vm.mMeetingSpace.Images.length)?_c('SwiperCarousel',{staticClass:\"card-image\",attrs:{\"swiperOptions\":_vm.swiperOptions},scopedSlots:_vm._u([{key:\"slides\",fn:function(){return _vm._l((_vm.mMeetingSpace.Images),function(imageObj){return _c('div',{key:'li' + _vm.mMeetingSpace.Id + '-' + imageObj.Id,staticClass:\"swiper-slide slide-image\"},[_c('figure',{staticClass:\"image is-4by3\"},[_c('img',{staticClass:\"swiper-lazy has-background-grey-lighter\",style:({\n                  backgroundImage: `url('${imageObj.UrlOriginal}')`,\n                }),attrs:{\"src\":\"/images/spacer4_3.gif\",\"data-background\":imageObj.UrlOriginal}})]),_c('div',{staticClass:\"swiper-lazy-preloader\"})])})},proxy:true},{key:\"navigation\",fn:function(){return [_c('span',{staticClass:\"swiper-custom-button swiper-custom-button-next is-rounded has-background-grey-light icon has-text-primary-dark\",staticStyle:{\"--swiper-navigation-size\":\"24px\",\"--border-radius\":\"50%\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left'],\"flip\":\"horizontal\"}})],1),_c('span',{staticClass:\"swiper-custom-button swiper-custom-button-prev is-rounded has-background-grey-light icon has-text-primary-dark\",staticStyle:{\"--swiper-navigation-size\":\"24px\",\"--border-radius\":\"50%\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left']}})],1)]},proxy:true}],null,false,1040129134)}):_vm._e(),_c('div',{staticClass:\"mt-6 is-hidden-tablet\"},[_c('div',{staticClass:\"title is-5\"},[_c('span',{attrs:{\"itemprop\":\"name\"}},[_vm._v(_vm._s(_vm.meetingspaceName))]),_c('meta',{attrs:{\"itemprop\":\"maximumAttendeeCapacity\",\"content\":_vm.maxSeats}})])])],1),_c('div',{staticClass:\"column-info column is-flex is-flex-direction-column\"},[_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"mb-3 is-hidden-mobile\"},[_c('div',{staticClass:\"title is-4\"},[_c('span',[_vm._v(_vm._s(_vm.meetingspaceName))])])]),_c('div',{staticClass:\"content mb-6 is-hidden-mobile\",attrs:{\"itemprop\":\"description\"},domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.removeXSS(_vm.description))}}),(_vm.features.length)?_c('div',{staticClass:\"content mb-6\"},[_c('ul',_vm._l((_vm.features),function(feature,index){return _c('li',{key:index},[(feature.Body)?_c('span',[_vm._v(_vm._s(feature.Body))]):_vm._e()])}),0)]):_vm._e(),_c('div',{staticClass:\"columns-extra-info columns is-mobile is-multiline\"},[(_vm.includedOptionNames.length)?_c('div',{staticClass:\"column\"},[_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"title is-5\"},[_vm._v(_vm._s(_vm.$t('General.Included', _vm.language))+\":\")]),_c('ul',_vm._l((_vm.includedOptionNames),function(name,index){return _c('li',{key:'included_option_' + index},[_vm._v(\" \"+_vm._s(name)+\" \")])}),0)])]):_vm._e(),(_vm.mMeetingSpace.SettingId)?_c('div',{staticClass:\"column\"},[_c('div',{staticClass:\"container-settings\"},[_c('div',{staticClass:\"title is-5 mb-0\"},[_vm._v(_vm._s(_vm.$t('Components.Proposals.Proposal.Text_AvailableSettings', _vm.language))+\":\")]),_c('div',{staticClass:\"wrapper-settings\"},[_c('div',{staticClass:\"tile-setting\"},[_c('SvgSetting',{staticClass:\"space-setting has-text-primary\",attrs:{\"aria-hidden\":\"true\",\"settingId\":_vm.mMeetingSpace.SettingId,\"size\":\"is-large\"}}),_c('div',{staticClass:\"has-text-weight-bold\"},[_vm._v(\" \"+_vm._s(_vm._f(\"getSettingName\")(_vm.mMeetingSpace.SettingId,_vm.proposalLanguage))+\" \")])],1)])])]):_vm._e()])])])]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    class=\"\"\n    itemscope\n    itemtype=\"https://schema.org/MeetingRoom\"\n  >\n    <div\n      class=\"columns is-multiline\"\n      v-if=\"mMeetingSpace\"\n    >\n      <div class=\"column-presentation column is-half is-two-fifths-fullhd\">\n        <SwiperCarousel\n          v-if=\"mMeetingSpace.Images.length\"\n          class=\"card-image\"\n          :swiperOptions=\"swiperOptions\"\n        >\n          <template #slides>\n            <div\n              class=\"swiper-slide slide-image\" \n              v-for=\"imageObj in mMeetingSpace.Images\"\n              :key=\"'li' + mMeetingSpace.Id + '-' + imageObj.Id\"\n            >\n              <figure class=\"image is-4by3\">\n                <img\n                  class=\"swiper-lazy has-background-grey-lighter\"\n                  src=\"/images/spacer4_3.gif\"\n                  :data-background=\"imageObj.UrlOriginal\"\n                  :style=\"{\n                    backgroundImage: `url('${imageObj.UrlOriginal}')`,\n                  }\"\n                />\n              </figure>\n              <div class=\"swiper-lazy-preloader\"></div>\n            </div>\n          </template>\n          <template #navigation>\n            <span\n              class=\"swiper-custom-button swiper-custom-button-next is-rounded has-background-grey-light icon has-text-primary-dark\"\n              style=\"--swiper-navigation-size: 24px; --border-radius: 50%\"\n            >\n              <font-awesome-icon\n                :icon=\"['fas', 'chevron-left']\"\n                flip=\"horizontal\"\n              />\n            </span>\n            <span\n              class=\"swiper-custom-button swiper-custom-button-prev is-rounded has-background-grey-light icon has-text-primary-dark\"\n              style=\"--swiper-navigation-size: 24px; --border-radius: 50%\"\n            >\n              <font-awesome-icon :icon=\"['fas', 'chevron-left']\" />\n            </span>\n          </template>\n        </SwiperCarousel>\n\n        <div class=\"mt-6 is-hidden-tablet\">\n          <div class=\"title is-5\">\n            <span itemprop=\"name\">{{ meetingspaceName }}</span>\n            <meta\n              itemprop=\"maximumAttendeeCapacity\"\n              :content=\"maxSeats\"\n            />\n          </div>\n        </div>\n      </div>\n      <div class=\"column-info column is-flex is-flex-direction-column\">\n        <div class=\"content\">\n          <div class=\"mb-3 is-hidden-mobile\">\n            <div class=\"title is-4\">\n              <span>{{ meetingspaceName }}</span>\n            </div>\n          </div>\n\n          <div\n            class=\"content mb-6 is-hidden-mobile\"\n            itemprop=\"description\"\n            v-html=\"$options.filters.removeXSS(description)\"\n          ></div>\n\n          <div\n            v-if=\"features.length\"\n            class=\"content mb-6\"\n          >\n            <ul>\n              <li\n                v-for=\"(feature, index) in features\"\n                :key=\"index\"\n              >\n                <span v-if=\"feature.Body\">{{ feature.Body }}</span>\n              </li>\n            </ul>\n          </div>\n\n          <div class=\"columns-extra-info columns is-mobile is-multiline\">\n            <div\n              v-if=\"includedOptionNames.length\"\n              class=\"column\"\n            >\n              <div class=\"content\">\n                <div class=\"title is-5\">{{ $t('General.Included', language) }}:</div>\n                <ul>\n                  <li\n                    v-for=\"(name, index) in includedOptionNames\"\n                    :key=\"'included_option_' + index\"\n                  >\n                    {{ name }}\n                  </li>\n                </ul>\n              </div>\n            </div>\n            <div\n              v-if=\"mMeetingSpace.SettingId\"\n              class=\"column\"\n            >\n              <div class=\"container-settings\">\n                <div\n                  class=\"title is-5 mb-0\"\n                >{{$t('Components.Proposals.Proposal.Text_AvailableSettings', language)}}:</div>\n                <div class=\"wrapper-settings\">\n                  <div class=\"tile-setting\">\n                        <SvgSetting\n                          class=\"space-setting has-text-primary\"\n                          aria-hidden=\"true\"\n                          :settingId=\"mMeetingSpace.SettingId\"\n                          size=\"is-large\"\n                        />\n                      <div class=\"has-text-weight-bold\">\n                        {{ mMeetingSpace.SettingId | getSettingName(proposalLanguage) }}\n                      </div>\n                  </div>\n                </div>\n              </div>\n            </div>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\nimport { mapState } from 'vuex'\n\nexport default {\n  name: 'MeetingSpaceCard',\n\n  components: {\n    SvgSetting: () => import('@/components/UI/SvgSetting.vue'),\n    SwiperCarousel: () => import('@/components/UI/SwiperCarousel.vue'),\n  },\n\n  props: {\n    language: {\n      type: String,\n      default: 'en',\n      required: true,\n    },\n\n    meetingtypeId: {\n      type: Number,\n      default: 1\n    },\n\n    meetingspace: {\n      type: Object,\n      required: true,\n    },\n\n    proposal: {\n      type: Object,\n      required: true,\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      swiperOptions: {\n        initialSlide: 0,\n        spaceBetween: 2,\n        slidesPerView: 1,\n        pagination: false,\n        preloadImages: true,\n        lazyLoading: true,\n        watchSlidesProgress: false,\n        lazy: {\n          loadPrevNext: false,\n          checkInView: true,\n        },\n        navigation: {\n          nextEl: '.swiper-custom-button-next',\n          prevEl: '.swiper-custom-button-prev',\n        },\n      },\n      mMeetingSpace: null,\n    }\n  },\n\n  computed: {\n    ...mapState('proposalStore', ['proposalLanguage']),\n\n    proposalLanguage() {\n      return this.proposal?.Language || 'en'\n    },\n\n    description() {\n      let output = ''\n\n      this.mMeetingSpace.Descriptions.map((t) => {\n        (t.Language === this.language && t.MeetingtypeId === this.meetingtypeId) ? (output = t.Description.trim()) : ''\n      })\n\n      // Check if string ends with </p> tag\n      let hasEndingParagraph = /<\\/p>$/.test(output)\n\n      // Replace &nbsp; with a space caracter\n      var re = new RegExp(String.fromCharCode(160), 'g')\n      output = output.replace(re, ' ')\n\n      // Remove empty paragraphs from string\n      /* eslint-disable */\n      output = output\n        .replace(/<p><br[\\/]?><[\\/]?p>/g, '') // Removes all paragraghs with only BR tag as child\n        .replace(/<p>​<\\/p>/gi, '') // filters out empty paragraph tags\n        .replace(/<p>\\s*<\\/p>/gi, '') // filters out empty paragraph tags\n      /* eslint-enable */\n\n      /**\n       * Remove all br tags at ending of string\n       * First remove last ending paragraph tag if exists\n       */\n      if (hasEndingParagraph) {\n        output = output.substr(0, output.length - 4)\n      }\n\n      // Filters out last br tags from string\n      output = output.replace(/(<br\\s*[\\/]?>\\s*)+$/gi, '')\n\n      // Add ending paragraph tag\n      if (hasEndingParagraph) {\n        output += '</p>'\n      }\n\n      return output\n    },\n\n    meetingspaceName() {\n      let text = ''\n\n      if (this.mMeetingSpace) {\n        text = this.mMeetingSpace.Descriptions.find(\n          (t) => t.Language === this.language && t.MeetingtypeId === this.meetingtypeId\n        )\n      }\n\n      return text?.Name || ''\n    },\n\n    features() {\n      let features = []\n\n      // if (this.mMeetingSpace && this.mMeetingSpace.Features.length > 0) {\n      //   features = this.mMeetingSpace.Features.filter(\n      //     (f) => f.Language === this.language\n      //   )\n      // }\n\n      return features\n    },\n\n    includedOptionNames() {\n      let output = []\n\n      output = this.reservationDate.Options.filter(dateOption => dateOption.SpaceId === this.meetingspace.SpaceId && dateOption.IncludedWithSpace)\n        .map(o => o.OptionName)\n\n      return output\n    },\n\n    maxSeats() {\n      let maxSeats = 0\n\n      if (this.mMeetingSpace && this.mMeetingSpace.Seats) {\n        if (this.mMeetingSpace.Seats > maxSeats) {\n          maxSeats = this.mMeetingSpace.Seats\n        }\n      }\n\n      return maxSeats\n    },\n  },\n\n  async created() {\n    this.mMeetingSpace = cleanSource(this.meetingspace)\n  },\n\n  methods: {\n    getImage(imageSrc) {\n      return this.$options.filters.getLocationImage(\n        imageSrc.Image,\n        this.proposal.Location.Id,\n        '640'\n      )\n    },\n  },\n}\n</script>\n\n<style lang=\"sass\" scoped>\n.box\n  .column-presentation\n    // laat items wat in de components zit beinvloeden\n    ::v-deep .wrapper-carousel\n      margin-bottom: $gap\n    .card-image\n      z-index: 0\n\n  .column-info\n    .content\n      flex-grow: 1\n      .wrapper-settings\n        overflow: hidden\n        display: flex\n        flex-wrap: wrap\n        gap: 10px\n\n\n.columns-extra-info\n  container-type: inline-size\n  .column\n    width: 50%\n    @container (width < 560px)\n      flex-basis: 100%\n\n  .tile-setting\n    display: inline-flex\n    gap: 10px\n    align-items: center\n    .space-setting\n      width: 5rem\n      height: 5rem\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalSpaceCard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalSpaceCard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalSpaceCard.vue?vue&type=template&id=546b327b&scoped=true\"\nimport script from \"./ProposalSpaceCard.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalSpaceCard.vue?vue&type=script&lang=js\"\nimport style0 from \"./ProposalSpaceCard.vue?vue&type=style&index=0&id=546b327b&prod&lang=sass&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"546b327b\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div :class=\"level === 0 ? 'section' : 'child-section'\">\n    <div :class=\"{'container': level === 0 }\">\n      <h2\n        v-if=\"mItem.title && spaceItems.length > 0\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >\n        {{ mItem.title }}\n      </h2>\n      <div\n        v-if=\"mItem.text\"\n        v-html=\"mItem.text\"\n      ></div>\n\n      <div\n        v-for=\"(date, index) in dates\"\n        :key=\"'date-' + index\"\n        class=\"mb-4\"\n      >\n        <div\n          v-if=\"!reservationDate\"\n          class=\"subtitle is-6 has-text-weight-semibold mt-4 mb-2\"\n        >\n          {{ $options.filters.dateFormat(date.Date, proposalLanguage, 'longDateFormat') }}\n        </div>\n\n        <div\n          v-for=\"(space, index) in spaceItems.filter(si => si.StartDate === date.Date)\"\n          :key=\"index\"\n        >\n          <ProposalSpaceCard\n            :meetingspace=\"space\"\n            :language=\"proposalLanguage\"\n            :key=\"'psc-' + index\"\n            :proposal=\"reservation\"\n            :reservationDate=\"date\"\n            :class=\"{'mt-6': index !== 0}\"\n          />\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\nimport ProposalSpaceCard from '@/components/Proposals/BookerPreview/ProposalSpaceCard';\n\nexport default {\n  components: {\n    ProposalSpaceCard\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n\n    this.mItem.title = this.mItem.fillDynamically ? this.$t('Components.Proposals.Proposal.Title_Spaces', this.proposalLanguage) : this.mItem.title;\n    this.mItem.text = this.mItem.fillDynamically ? '' : this.mItem.text;\n  },\n\n  computed: {\n    proposalLanguage() {\n      return this.proposal?.Language || 'en';\n    },\n\n    reservation() {\n      let reservation = null;\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation;\n      }\n\n      return reservation;\n    },\n\n    dates() {\n      let dates = [];\n\n      if (this.proposal && this.reservation) {\n        dates = this.reservation.Dates;\n      }\n\n      if (this.reservationDate) {\n        dates = dates.filter(d => d.Date === this.reservationDate.Date);\n      }\n\n      return dates;\n    },\n\n    spaceItems() {\n      let items = [];\n\n      if (this.proposal && this.reservation) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let date = this.reservation.Dates[i];\n\n          if (date.Spaces) {\n            items = items.concat(date.Spaces.filter(s => s.ShowProposalList));\n          }\n        }\n      }\n\n      if (this.reservationDate) {\n        items = items.filter(s => s.StartDate === this.reservationDate.Date);\n      }\n\n      return items;\n    }\n  },\n\n  methods: {\n\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spaces.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spaces.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Spaces.vue?vue&type=template&id=180e3466&scoped=true\"\nimport script from \"./Spaces.vue?vue&type=script&lang=js\"\nexport * from \"./Spaces.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"180e3466\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[(_vm.reservation.VoucherId > 0 && _vm.reservation.Voucher)?_c('Message',{staticClass:\"mt-4\",attrs:{\"message\":_vm.$t('Components.Proposals.Proposal.Message_VoucherApplied', { voucher: _vm.reservation.Voucher.Name })}}):_vm._e(),(_vm.mItem.title)?_c('h1',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_vm._v(\" \"+_vm._s(_vm.mItem.title)+\" \")]):_vm._e(),(_vm.mItem.text)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.mItem.text)}}):_vm._e(),_vm._l((_vm.dates),function(date,index){return _c('div',{key:index,staticClass:\"mt-6\"},[_c('p',{staticClass:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$options.filters.dateFormat( date.Date, _vm.proposalLanguage, 'longDateFormat' ))+\" \")]),(date.Packages.length > 0)?_c('table',{staticClass:\"table is-fullwidth\"},[_c('thead',[_c('tr',[_c('th',{directives:[{name:\"t\",rawName:\"v-t\",value:({\n                path: 'Components.Proposals.Proposal.Title_Packages',\n                locale: _vm.reservation.Language,\n              }),expression:\"{\\n                path: 'Components.Proposals.Proposal.Title_Packages',\\n                locale: reservation.Language,\\n              }\"}],attrs:{\"colspan\":\"5\"}})])]),_c('tbody',[_vm._l((date.Packages),function(pckg){return [_c('ProposalPackageRow',{key:'pckg_' + pckg.Id,attrs:{\"language\":_vm.reservation.Language,\"pckg\":pckg}})]})],2)]):_vm._e(),_c('table',{staticClass:\"table is-fullwidth\"},[_c('thead',[_c('tr',[_c('th',{directives:[{name:\"t\",rawName:\"v-t\",value:({\n                path: 'Components.Proposals.Proposal.Title_Spaces',\n                locale: _vm.reservation.Language,\n              }),expression:\"{\\n                path: 'Components.Proposals.Proposal.Title_Spaces',\\n                locale: reservation.Language,\\n              }\"}],attrs:{\"colspan\":\"5\"}})])]),_c('tbody',[_vm._l((date.Spaces.filter(s => s.ShowProposalSummary)),function(space){return [_c('ProposalSpaceRow',{key:'space_' + space.Id,attrs:{\"language\":_vm.reservation.Language,\"space\":space}})]})],2)]),_c('table',{staticClass:\"table is-fullwidth\"},[_c('thead',[_c('tr',[_c('th',{directives:[{name:\"t\",rawName:\"v-t\",value:({\n                path: 'Components.Proposals.Proposal.Title_Amenities',\n                locale: _vm.reservation.Language,\n              }),expression:\"{\\n                path: 'Components.Proposals.Proposal.Title_Amenities',\\n                locale: reservation.Language,\\n              }\"}],attrs:{\"colspan\":\"5\"}})])]),_c('tbody',[_vm._l((_vm.categories),function(category){return [_c('ProposalOptionCategoryRow',{key:'category_' + category.categoryId,attrs:{\"colspan\":5,\"language\":_vm.reservation.Language,\"headerName\":category.categoryName}}),_vm._l((date.Options.filter(\n                (o) => o.CategoryId === category.categoryId && o.ShowProposalSummary\n              )),function(catOption){return [_c('ProposalOptionRow',{key:'option' + catOption.Id,attrs:{\"language\":_vm.reservation.Language,\"catOption\":catOption}})]})]})],2)]),_c('table',{staticClass:\"table is-fullwidth\"},[_c('tbody',[_c('tr',{staticClass:\"has-text-weight-bold\"},[_c('td',[(_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Proposals.Proposal.Text_Total')))]):_vm._e(),(!_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Proposals.Proposal.Text_TotalExclVAT')))]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(date.TotalExclTax))+\" \")])]),_vm._l((date.TaxTotals),function(total,index){return _c('tr',{key:index},[_c('td',{directives:[{name:\"t\",rawName:\"v-t\",value:({\n                path: 'Components.Proposals.Proposal.Label_VAT',\n                locale: _vm.reservation.Language,\n                args: {\n                  percentage: total.Percentage,\n                },\n              }),expression:\"{\\n                path: 'Components.Proposals.Proposal.Label_VAT',\\n                locale: reservation.Language,\\n                args: {\\n                  percentage: total.Percentage,\\n                },\\n              }\"}]}),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\"}},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(total.Total))+\" \")])])})],2),(!_vm.reservation.NoTax)?_c('tfoot',[_c('tr',{staticClass:\"has-text-weight-bold\"},[_c('td',{directives:[{name:\"t\",rawName:\"v-t\",value:({\n                path: 'Components.Proposals.Proposal.Text_TotalInclVAT',\n                locale: _vm.reservation.Language,\n              }),expression:\"{\\n                path: 'Components.Proposals.Proposal.Text_TotalInclVAT',\\n                locale: reservation.Language,\\n              }\"}]}),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(date.TotalInclTax))+\" \")])])]):_vm._e()])])}),(_vm.reservation.Dates.length > 1)?_c('table',{staticClass:\"table is-fullwidth mt-6\"},[_c('tbody',[_c('tr',{staticClass:\"has-text-weight-bold\"},[_c('td',[(_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Proposals.Proposal.Text_Total')))]):_vm._e(),(!_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Proposals.Proposal.Text_TotalExclVAT')))]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.reservation.TotalExclTax))+\" \")])]),_vm._l((_vm.taxTotals),function(total,index){return _c('tr',{key:index},[_c('td',{directives:[{name:\"t\",rawName:\"v-t\",value:({\n              path: 'Components.Proposals.Proposal.Label_VAT',\n              locale: _vm.reservation.Language,\n              args: {\n                percentage: total.Percentage,\n              },\n            }),expression:\"{\\n              path: 'Components.Proposals.Proposal.Label_VAT',\\n              locale: reservation.Language,\\n              args: {\\n                percentage: total.Percentage,\\n              },\\n            }\"}]}),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\"}},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(total.Total))+\" \")])])})],2),(!_vm.reservation.NoTax)?_c('tfoot',[_c('tr',{staticClass:\"has-text-weight-bold\"},[_c('td',{directives:[{name:\"t\",rawName:\"v-t\",value:({\n              path: 'Components.Proposals.Proposal.Text_TotalInclVAT',\n              locale: _vm.reservation.Language,\n            }),expression:\"{\\n              path: 'Components.Proposals.Proposal.Text_TotalInclVAT',\\n              locale: reservation.Language,\\n            }\"}]}),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.reservation.TotalInclTax))+\" \")])])]):_vm._e()]):_vm._e()],2)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('tr',[_c('td',{attrs:{\"width\":\"75px\"}},[_vm._v(_vm._s(_vm.catOption.Amount)+\"x\")]),_c('td',[_c('div',[_vm._v(_vm._s(_vm.getOptionName(_vm.catOption)))]),_vm._l((_vm.catOption.Notes.filter(n => n.IsPublic)),function(note,index){return [_c('NoteItem',{key:'on' + index,staticClass:\"mb-2\",attrs:{\"note\":note,\"viewType\":'minimal'}})]})],2),_c('td',{attrs:{\"width\":\"250px\"}},[_vm._v(\" \")]),_c('td',{attrs:{\"width\":\"250px\"}},[(_vm.catOption.SelectedTime > -1)?_c('span',[_vm._v(_vm._s(_vm._f(\"minutesToTime\")(_vm.catOption.SelectedTime)))]):_vm._e()]),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"150px\"}},[(!_vm.isIncluded)?_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.catOption.PriceTotal)))]):_vm._e(),(_vm.isIncluded)?_c('span',[_vm._v(_vm._s(_vm.includedLabel))]):_vm._e()])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <tr>\n    <td width=\"75px\">{{ catOption.Amount }}x</td>\n    <td>\n      <div>{{ getOptionName(catOption) }}</div>\n      <template v-for=\"(note, index) in catOption.Notes.filter(n => n.IsPublic)\">\n        <NoteItem\n          :note=\"note\"\n          :viewType=\"'minimal'\"\n          :key=\"'on' + index\"\n          class=\"mb-2\"\n        />\n      </template>\n    </td>\n    <td width=\"250px\">&nbsp;</td>\n    <td width=\"250px\">\n      <span v-if=\"catOption.SelectedTime > -1\">{{ catOption.SelectedTime | minutesToTime }}</span>\n    </td>\n    <td  width=\"150px\"\n      class=\"has-text-right\"\n    >\n      <span v-if=\"!isIncluded\">{{ catOption.PriceTotal | toCurrency }}</span>\n      <span v-if=\"isIncluded\">{{ includedLabel }}</span>\n    </td>\n  </tr>\n</template>\n\n<script>\nexport default {\n  components: {\n    NoteItem: () => import('@/components/Notes/NoteItem'),\n  },\n\n  props: {\n    language: {\n      type: String,\n      default: 'en',\n    },\n\n    catOption: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {}\n  },\n\n  computed: {\n    isIncluded() {\n      return this.catOption.InPackage || this.catOption.IncludedWithSpace\n    },\n\n    includedLabel() {\n      if (this.catOption.InPackage && !this.catOption.IncludedWithSpace) {\n        return this.$t('Components.Proposals.Proposal.Label_IncludedInPackage', this.language)\n      }\n\n      if ((!this.catOption.InPackage && this.catOption.IncludedWithSpace) || this.catOption.InPackage && this.catOption.IncludedWithSpace) {\n        return this.$t('Components.Proposals.Proposal.Label_IncludedInSpace', this.language)\n      }\n\n      return ''\n    }\n  },\n\n  created() { },\n\n  methods: {\n    getOptionName(option) {\n      let name = ''\n\n      if (option && option.Descriptions && option.Descriptions.length > 0) {\n        let text = option.Descriptions.find(\n          (t) =>\n            t.Language ===\n            (typeof this.language !== 'undefined' ? this.language : 'en')\n        )\n\n        if (text) {\n          name = text.Name\n        } else {\n          text = option.Descriptions.find((d) => d.Language === 'en')\n\n          if (text) {\n            name = text.Name\n          }\n        }\n      }\n\n      return name\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalOptionRow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalOptionRow.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalOptionRow.vue?vue&type=template&id=3c01aa2e\"\nimport script from \"./ProposalOptionRow.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalOptionRow.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('tr',[_c('td',{staticClass:\"has-text-weight-bold\",attrs:{\"colspan\":_vm.colspan},domProps:{\"innerHTML\":_vm._s(_vm.headerName)}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <tr>\n    <td\n      :colspan=\"colspan\"\n      class=\"has-text-weight-bold\"\n      v-html=\"headerName\"\n    ></td>\n  </tr>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\n\nexport default {\n  components: {},\n\n  props: {\n    colspan: {\n      type: Number,\n      default: 0,\n    },\n\n    headerName: {\n      type: String,\n      default: '',\n    },\n  },\n\n  data() {\n    return {}\n  },\n\n  computed: {},\n\n  created() {},\n\n  methods: {},\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalOptionCategoryRow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalOptionCategoryRow.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalOptionCategoryRow.vue?vue&type=template&id=0f5b044f\"\nimport script from \"./ProposalOptionCategoryRow.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalOptionCategoryRow.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('tr',[_c('td',{attrs:{\"width\":\"76\"}},[_vm._v(_vm._s(_vm.pckg.Amount)+\"x\")]),_c('td',[_c('div',[_vm._v(_vm._s(_vm.getPackageName(_vm.pckg)))])]),_c('td'),_c('td'),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"160\"}},[_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.pckg.TotalExclTax)))])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <tr>\n    <td width=\"76\">{{ pckg.Amount }}x</td>\n    <td>\n      <div>{{ getPackageName(pckg) }}</div>\n    </td>\n    <td></td>\n    <td></td>\n\n    <td\n      width=\"160\"\n      class=\"has-text-right\"\n    >\n      <span>{{ pckg.TotalExclTax | toCurrency }}</span>\n    </td>\n  </tr>\n</template>\n\n<script>\nexport default {\n  components: {\n  },\n\n  props: {\n    language: {\n      type: String,\n      default: 'en',\n    },\n\n    pckg: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {}\n  },\n\n  computed: {},\n\n  created() { },\n\n  methods: {\n    getPackageName(pckg) {\n      let name = pckg.PackageName\n\n      if (pckg && pckg.Descriptions && pckg.Descriptions.length > 0) {\n        let text = pckg.Descriptions.find(\n          (t) =>\n            t.Language ===\n            (typeof this.language !== 'undefined' ? this.language : 'en')\n        )\n\n        if (text) {\n          name = text.Name\n        } else {\n          text = pckg.Descriptions.find((d) => d.Language === 'en')\n\n          if (text) {\n            name = text.Name\n          }\n        }\n      }\n\n      return name\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalPackageRow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalPackageRow.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalPackageRow.vue?vue&type=template&id=7e57ada8\"\nimport script from \"./ProposalPackageRow.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalPackageRow.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('tr',[_c('td',{attrs:{\"width\":\"75px\"}},[_vm._v(\"1x\")]),_c('td',[_c('div',[_vm._v(_vm._s(_vm.getSpaceName(_vm.space)))]),_vm._l((_vm.space.Notes.filter(n => n.IsPublic)),function(note,index){return [_c('NoteItem',{key:'sn' + index,staticClass:\"mb-2\",attrs:{\"note\":note,\"viewType\":'minimal'}})]})],2),_c('td',{attrs:{\"width\":\"250px\"}},[_vm._v(_vm._s(_vm.space.Seats)+\"x \"+_vm._s(_vm._f(\"getSettingName\")(_vm.space.SettingId)))]),_c('td',{attrs:{\"width\":\"250px\"}},[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.space.StartMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.space.EndMinutes))+\" \")]),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"150px\"}},[(!_vm.space.InPackage)?_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.space.PriceTotal)))]):_vm._e()])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <tr>\n    <td width=\"75px\">1x</td>\n    <td>\n      <div>{{ getSpaceName(space) }}</div>\n      <template v-for=\"(note, index) in space.Notes.filter(n => n.IsPublic)\">\n        <NoteItem\n          :note=\"note\"\n          :viewType=\"'minimal'\"\n          :key=\"'sn' + index\"\n          class=\"mb-2\"\n        />\n      </template>\n    </td>\n    <td width=\"250px\">{{ space.Seats }}x {{ space.SettingId | getSettingName }}</td>\n    <td width=\"250px\">\n      {{ space.StartMinutes | minutesToTime }} -\n      {{ space.EndMinutes | minutesToTime }}\n    </td>\n\n    <td width=\"150px\"\n      class=\"has-text-right\"\n    >\n      <span v-if=\"!space.InPackage\">{{ space.PriceTotal | toCurrency }}</span>\n    </td>\n  </tr>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\n\nexport default {\n  components: {\n    NoteItem: () => import('@/components/Notes/NoteItem'),\n  },\n\n  props: {\n    language: {\n      type: String,\n      default: 'en',\n    },\n\n    space: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {}\n  },\n\n  computed: {},\n\n  created() { },\n\n  methods: {\n    getSpaceName(space) {\n      let name = ''\n\n      if (space && space.Descriptions && space.Descriptions.length > 0) {\n        let text = space.Descriptions.find(\n          (t) =>\n            t.Language ===\n            (typeof this.language !== 'undefined' ? this.language : 'en')\n        )\n\n        if (text) {\n          name = text.Name\n        } else {\n          text = space.Descriptions.find((d) => d.Language === 'en')\n\n          if (text) {\n            name = text.Name\n          }\n        }\n      }\n\n      return name\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalSpaceRow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalSpaceRow.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalSpaceRow.vue?vue&type=template&id=16e7bcb4\"\nimport script from \"./ProposalSpaceRow.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalSpaceRow.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div\n    v-if=\"reservation\"\n    :class=\"level === 0 ? 'section' : 'child-section'\"\n  >\n    <div :class=\"{'container': level === 0 }\">\n      <Message\n        v-if=\"reservation.VoucherId > 0 && reservation.Voucher\"\n        :message=\"$t('Components.Proposals.Proposal.Message_VoucherApplied', { voucher: reservation.Voucher.Name })\"\n        class=\"mt-4\"\n      />\n\n      <h1\n        v-if=\"mItem.title\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >\n        {{ mItem.title }}\n      </h1>\n      <div\n        v-if=\"mItem.text\"\n        v-html=\"mItem.text\"\n      ></div>\n\n      <div\n        v-for=\"(date, index) in dates\"\n        :key=\"index\"\n        class=\"mt-6\"\n      >\n        <p class=\"title\">\n          {{ $options.filters.dateFormat(\n              date.Date,\n              proposalLanguage,\n              'longDateFormat'\n            ) }}\n        </p>\n\n        <table\n          v-if=\"date.Packages.length > 0\"\n          class=\"table is-fullwidth\"\n        >\n          <thead>\n            <tr>\n              <th\n                v-t=\"{\n                  path: 'Components.Proposals.Proposal.Title_Packages',\n                  locale: reservation.Language,\n                }\"\n                colspan=\"5\"\n              ></th>\n            </tr>\n          </thead>\n          <tbody>\n            <template v-for=\"pckg in date.Packages\">\n              <ProposalPackageRow\n                :language=\"reservation.Language\"\n                :pckg=\"pckg\"\n                :key=\"'pckg_' + pckg.Id\"\n              />\n            </template>\n          </tbody>\n        </table>\n\n        <table class=\"table is-fullwidth\">\n          <thead>\n            <tr>\n              <th\n                v-t=\"{\n                  path: 'Components.Proposals.Proposal.Title_Spaces',\n                  locale: reservation.Language,\n                }\"\n                colspan=\"5\"\n              ></th>\n            </tr>\n          </thead>\n          <tbody>\n            <template v-for=\"space in date.Spaces.filter(s => s.ShowProposalSummary)\">\n              <ProposalSpaceRow\n                :language=\"reservation.Language\"\n                :space=\"space\"\n                :key=\"'space_' + space.Id\"\n              />\n            </template>\n          </tbody>\n        </table>\n\n        <table class=\"table is-fullwidth\">\n          <thead>\n            <tr>\n              <th\n                v-t=\"{\n                  path: 'Components.Proposals.Proposal.Title_Amenities',\n                  locale: reservation.Language,\n                }\"\n                colspan=\"5\"\n              ></th>\n            </tr>\n          </thead>\n          <tbody>\n            <template v-for=\"category in categories\">\n              <ProposalOptionCategoryRow\n                :colspan=\"5\"\n                :language=\"reservation.Language\"\n                :headerName=\"category.categoryName\"\n                :key=\"'category_' + category.categoryId\"\n              />\n              <template v-for=\"catOption in date.Options.filter(\n                  (o) => o.CategoryId === category.categoryId && o.ShowProposalSummary\n                )\">\n                <ProposalOptionRow\n                  :language=\"reservation.Language\"\n                  :catOption=\"catOption\"\n                  :key=\"'option' + catOption.Id\"\n                />\n              </template>\n            </template>\n          </tbody>\n        </table>\n\n        <table class=\"table is-fullwidth\">\n          <tbody>\n            <tr class=\"has-text-weight-bold\">\n              <td>\n                <span v-if=\"reservation.NoTax\">{{ $t('Components.Proposals.Proposal.Text_Total') }}</span>  \n                <span v-if=\"!reservation.NoTax\">{{ $t('Components.Proposals.Proposal.Text_TotalExclVAT') }}</span>\n              </td>\n              <td class=\"has-text-right\">\n                {{ date.TotalExclTax | toCurrency }}\n              </td>\n            </tr>\n            <tr\n              v-for=\"(total, index) in date.TaxTotals\"\n              :key=\"index\"\n            >\n              <td v-t=\"{\n                  path: 'Components.Proposals.Proposal.Label_VAT',\n                  locale: reservation.Language,\n                  args: {\n                    percentage: total.Percentage,\n                  },\n                }\"></td>\n              <td\n                width=\"100\"\n                class=\"has-text-right\"\n              >\n                {{ total.Total | toCurrency }}\n              </td>\n            </tr>\n          </tbody>\n          <tfoot v-if=\"!reservation.NoTax\">\n            <tr class=\"has-text-weight-bold\">\n              <td v-t=\"{\n                  path: 'Components.Proposals.Proposal.Text_TotalInclVAT',\n                  locale: reservation.Language,\n                }\"></td>\n              <td class=\"has-text-right\">\n                {{ date.TotalInclTax | toCurrency }}\n              </td>\n            </tr>\n          </tfoot>\n        </table>\n      </div>\n\n      <table\n        v-if=\"reservation.Dates.length > 1\"\n        class=\"table is-fullwidth mt-6\"\n      >\n        <tbody>\n          <tr class=\"has-text-weight-bold\">\n            <td>\n              <span v-if=\"reservation.NoTax\">{{ $t('Components.Proposals.Proposal.Text_Total') }}</span>  \n              <span v-if=\"!reservation.NoTax\">{{ $t('Components.Proposals.Proposal.Text_TotalExclVAT') }}</span>  \n            </td>\n            <td class=\"has-text-right\">\n              {{ reservation.TotalExclTax | toCurrency }}\n            </td>\n          </tr>\n          <tr\n            v-for=\"(total, index) in taxTotals\"\n            :key=\"index\"\n          >\n            <td v-t=\"{\n                path: 'Components.Proposals.Proposal.Label_VAT',\n                locale: reservation.Language,\n                args: {\n                  percentage: total.Percentage,\n                },\n              }\"></td>\n            <td\n              width=\"100\"\n              class=\"has-text-right\"\n            >\n              {{ total.Total | toCurrency }}\n            </td>\n          </tr>\n        </tbody>\n        <tfoot v-if=\"!reservation.NoTax\">\n          <tr class=\"has-text-weight-bold\">\n            <td v-t=\"{\n                path: 'Components.Proposals.Proposal.Text_TotalInclVAT',\n                locale: reservation.Language,\n              }\"></td>\n            <td class=\"has-text-right\">\n              {{ reservation.TotalInclTax | toCurrency }}\n            </td>\n          </tr>\n        </tfoot>\n      </table>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nimport Message from '@/components/UI/Message.vue';\nimport ProposalOptionRow from '@/components/Proposals/BookerPreview/ProposalOptionRow';\nimport ProposalOptionCategoryRow from '@/components/Proposals/BookerPreview/ProposalOptionCategoryRow';\nimport ProposalPackageRow from '@/components/Proposals/BookerPreview/ProposalPackageRow';\nimport ProposalSpaceRow from '@/components/Proposals/BookerPreview/ProposalSpaceRow';\n\nexport default {\n  components: {\n    Message,\n    ProposalOptionRow,\n    ProposalOptionCategoryRow,\n    ProposalPackageRow,\n    ProposalSpaceRow\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n  },\n\n  computed: {\n    proposalLanguage() {\n      return this.proposal?.Language || 'en';\n    },\n\n    reservation() {\n      let reservation = null;\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation;\n      }\n\n      return reservation;\n    },\n\n    dates() {\n      let dates = [];\n\n      if (this.proposal && this.reservation) {\n        dates = this.reservation.Dates;\n      }\n\n      if (this.reservationDate) {\n        dates = dates.filter(d => d.Date === this.reservationDate.Date);\n      }\n\n      return dates;\n    },\n\n    voucherName() {\n      let name = '';\n\n      if (this.reservation && this.reservation.Voucher) {\n        name = this.reservation.Voucher.Name;\n\n        if (this.reservation.Voucher.Descriptions.length > 0) {\n          let index = this.reservation.Voucher.Descriptions.findIndex(d => d.Language === this.proposal.Language);\n          if (index > -1) {\n            name = this.reservation.Voucher.Descriptions[index].Name;\n          }\n        }\n      }\n\n      return name;\n    },\n\n    categories() {\n      let categories = []\n\n      if (this.reservation) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let date = this.reservation.Dates[i];\n\n          for (let j = 0; j < date.Options.length; j++) {\n            let option = date.Options[j]\n\n            if (categories.findIndex((c) => c.categoryId === option.CategoryId) === -1) {\n              categories.push({\n                categoryId: option.CategoryId,\n                categoryName: this.$t(\n                  'Components.Reservation.ReservationOptions.Category_' +\n                  option.CategoryId,\n                  this.reservation.Language\n                ),\n              })\n            }\n          }\n        }\n      }\n\n      return categories\n    },\n\n    taxTotals() {\n      return this.reservation.TaxTotals;\n    }\n  },\n\n  methods: {\n\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Summary.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Summary.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Summary.vue?vue&type=template&id=4f247daa&scoped=true\"\nimport script from \"./Summary.vue?vue&type=script&lang=js\"\nexport * from \"./Summary.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4f247daa\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[(_vm.mItem.title)?_c('h2',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_c('div',[_vm._v(_vm._s(_vm.mItem.title))])]):_vm._e(),(_vm.mItem.text)?_c('div',{staticClass:\"content\",domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.mItem.text))}}):_vm._e()])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"level === 0 ? 'section' : 'child-section'\">\n    <div :class=\"{'container': level === 0 }\">\n      <h2\n        v-if=\"mItem.title\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >\n        <div>{{ mItem.title }}</div>\n      </h2>\n      <div\n        v-if=\"mItem.text\"\n        class=\"content\"\n        v-html=\"$options.filters.processTextForDisplay(mItem.text)\"\n      ></div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nexport default {\n  components: {\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n  },\n\n  methods: {\n  },\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Text.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Text.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Text.vue?vue&type=template&id=b141d89a&scoped=true\"\nimport script from \"./Text.vue?vue&type=script&lang=js\"\nexport * from \"./Text.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"b141d89a\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div\n    v-if=\"reservation\"\n    :class=\"level === 0 ? 'section' : 'child-section'\"\n  >\n    <div :class=\"{'container': level === 0 }\">\n      <h2\n        v-if=\"mItem.title\"\n        class=\"title is-2\"\n      >\n        {{ mItem.title }}\n      </h2>\n      <div\n        v-if=\"mItem.text\"\n        class=\"content\"\n        :class=\"{'mb-6': reservation.Dates.length}\"\n        v-html=\"$options.filters.processTextForDisplay(mItem.text)\"\n      ></div>\n\n      <div\n        v-for=\"(date, dIndex) in reservation.Dates\"\n        :key=\"date.Date\"\n        :id=\"'date-' + date.Date\"\n        :class=\"{'mt-6': dIndex !== 0 }\"\n      >\n\n        <div\n          v-for=\"(dItem, dsIndex) in mItem.items\"\n          :key=\"'di-' + dsIndex\"\n        >\n          <TemplateDate\n            v-if=\"dItem.contentType === 'date'\"\n            :item=\"dItem\"\n            :proposal=\"proposal\"\n            :reservationDate=\"date\"\n            :level=\"nextLevel\"\n            :class=\"{'mb-6': dsIndex < mItem.items.length }\"\n          />\n          <TemplateImages\n            v-if=\"dItem.contentType === 'images'\"\n            :item=\"dItem\"\n            :proposal=\"proposal\"\n            :level=\"nextLevel\"\n            :class=\"{'mb-6': dsIndex < mItem.items.length }\"\n          />\n          <TemplateSummary\n            v-if=\"dItem.contentType === 'summary'\"\n            :item=\"dItem\"\n            :proposal=\"proposal\"\n            :level=\"nextLevel\"\n            :class=\"{'mb-6': dsIndex < mItem.items.length }\"\n          />\n          <TemplateOptions\n            v-if=\"dItem.contentType === 'options'\"\n            :item=\"dItem\"\n            :proposal=\"proposal\"\n            :reservationDate=\"date\"\n            :level=\"nextLevel\"\n            :class=\"{'mb-6': dsIndex < mItem.items.length }\"\n          />\n          <TemplateProgram\n            v-if=\"dItem.contentType === 'program' && date.ProgramItems.length\"\n            :item=\"dItem\"\n            :proposal=\"proposal\"\n            :reservationDate=\"date\"\n            :level=\"nextLevel\"\n            :class=\"{'mb-6': dsIndex < mItem.items.length }\"\n          />\n          <TemplateSpaces\n            v-if=\"dItem.contentType === 'spaces'\"\n            :item=\"dItem\"\n            :proposal=\"proposal\"\n            :reservationDate=\"date\"\n            :level=\"nextLevel\"\n            :class=\"{'mb-6': dsIndex < mItem.items.length }\"\n          />\n          <TemplateText\n            v-if=\"dItem.contentType === 'text'\"\n            :item=\"dItem\"\n            :proposal=\"proposal\"\n            :level=\"nextLevel\"\n            :class=\"{'mb-6': dsIndex < mItem.items.length }\"\n          />\n        </div>\n      </div>\n\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nimport Date from './Date.vue';\nimport Images from './Images.vue';\nimport Options from './Options.vue';\nimport Program from './Program.vue';\nimport Spaces from './Spaces.vue';\nimport Summary from './Summary.vue';\nimport Text from './Text.vue';\n\nexport default {\n  components: {\n    TemplateDate: Date,\n    TemplateImages: Images,\n    TemplateOptions: Options,\n    TemplateProgram: Program,\n    TemplateSpaces: Spaces,\n    TemplateSummary: Summary,\n    TemplateText: Text\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    }\n  },\n\n  data() {\n    const nextLevel = (this.level + 1)\n    return {\n      mItem: null,\n      showEdit: false,\n      nextLevel\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n  },\n\n  computed: {\n    proposalLanguage() {\n      return this.proposal?.Language || 'en';\n    },\n\n    reservation() {\n      let reservation = null;\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation;\n      }\n\n      return reservation;\n    },\n  },\n\n  methods: {\n    updateItem() {\n      this.$emit('update-item', this.mItem);\n      this.showEdit = false;\n    }\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dates.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Dates.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Dates.vue?vue&type=template&id=6a829943&scoped=true\"\nimport script from \"./Dates.vue?vue&type=script&lang=js\"\nexport * from \"./Dates.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6a829943\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.mItem)?_c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[_c('div',{staticClass:\"proposal-title-wrapper mb-6\"},[_c('div',[_c('div',{staticClass:\"subtitle is-size-5-mobile is-size-4-touch is-size-3-desktop is-inline-block mb-0 mr-4\",domProps:{\"innerHTML\":_vm._s(\n            _vm.$t(\n              'Components.Proposals.Proposal.HeroTitle_Proposal',\n              _vm.proposalLanguage\n            )\n          )}}),_c('div',{staticClass:\"header-proposalName mb-2\"},[_c('h1',{staticClass:\"title is-size-4-mobile is-size-3-touch is-size-2-desktop is-inline-block mb-0 mr-4\",attrs:{\"itemprop\":\"name\"},domProps:{\"innerHTML\":_vm._s(_vm.mItem.title)}})]),_c('h2',{staticClass:\"subtitle is-6\"},_vm._l((_vm.reservation.Dates),function(date,index){return _c('div',{key:index},[_c('span',{staticClass:\"icon-text mr-5 has-text-weight-bold\"},[_c('span',{staticClass:\"icon mr-1\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'calendar-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$options.filters.dateFormat( date.Date, _vm.proposalLanguage, 'longDateFormat' )))])]),_c('span',{staticClass:\"icon-text has-text-weight-bold\"},[_c('span',{staticClass:\"icon mr-1\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'clock']}})],1),_c('span',[_vm._v(\" \"+_vm._s(_vm.$options.filters.minutesToTime(date.StartMinutes))+\" - \"+_vm._s(_vm.$options.filters.minutesToTime(date.EndMinutes))+\" \")])])])}),0)]),(_vm.locationLogo)?_c('div',[_c('img',{staticClass:\"logo\",attrs:{\"src\":_vm.locationLogo,\"alt\":`logo ${_vm.location.Name}`}})]):_vm._e()]),[_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column is-half\"},[_c('figure',{staticClass:\"box is-shadowless image is-3by2 has-background-white-bis\"},[_c('img',{style:({ backgroundImage: `url('${_vm.heroImage}')` }),attrs:{\"src\":\"/images/spacer1_1.gif\",\"alt\":_vm.proposal.Location.Name,\"itemprop\":\"image\"}})])]),_c('div',{staticClass:\"column\"},[_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"impressions-column column is-hidden-touch is-hidden-desktop-only is-one-third is-flex is-flex-direction-column\"},_vm._l((_vm.locationImages),function(imageItem,index){return _c('figure',{key:'li' + index,staticClass:\"box is-flex is-shadowless image is-3by2 has-background-grey-lighter\"},[_c('img',{style:({\n                    backgroundImage: `url('${imageItem.UrlMedium}')`,\n                  }),attrs:{\"src\":\"/images/spacer1_1.gif\",\"alt\":\"\",\"itemprop\":\"photo\"}})])}),0),_c('div',{staticClass:\"column\"},[_c('div',{staticClass:\"box-welcome-text box px-3 mb-0 is-flex is-flex-direction-column\"},[_c('div',{staticClass:\"is-flex is-flex-grow-1\"},[_c('div',{staticClass:\"content text\",domProps:{\"innerHTML\":_vm._s(_vm.proposalCustomerText)}})])])])])])])]],2)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    v-if=\"mItem\"\n    :class=\"level === 0 ? 'section' : 'child-section'\"\n  >\n    <div :class=\"{'container': level === 0 }\">\n      <div class=\"proposal-title-wrapper mb-6\">\n        <div>\n          <div\n            class=\"subtitle is-size-5-mobile is-size-4-touch is-size-3-desktop is-inline-block mb-0 mr-4\"\n            v-html=\"\n              $t(\n                'Components.Proposals.Proposal.HeroTitle_Proposal',\n                proposalLanguage\n              )\n            \"\n          ></div>\n          <div class=\"header-proposalName mb-2\">\n            <h1\n              class=\"title is-size-4-mobile is-size-3-touch is-size-2-desktop is-inline-block mb-0 mr-4\"\n              itemprop=\"name\"\n              v-html=\"mItem.title\"\n            ></h1>\n          </div>\n          <h2 class=\"subtitle is-6\">\n            <div\n              v-for=\"(date, index) in reservation.Dates\"\n              :key=\"index\"\n            >\n              <span class=\"icon-text mr-5 has-text-weight-bold\">\n                <span class=\"icon mr-1\">\n                  <font-awesome-icon :icon=\"['fas', 'calendar-alt']\" />\n                </span>\n                <span>{{ $options.filters.dateFormat(\n                  date.Date,\n                  proposalLanguage,\n                  'longDateFormat'\n                ) }}</span>\n              </span>\n\n              <span class=\"icon-text has-text-weight-bold\">\n                <span class=\"icon mr-1\">\n                  <font-awesome-icon :icon=\"['fas', 'clock']\" />\n                </span>\n                <span>\n                  {{ $options.filters.minutesToTime(date.StartMinutes) }}\n                  -\n                  {{ $options.filters.minutesToTime(date.EndMinutes) }}\n                </span>\n              </span>\n            </div>\n          </h2>\n        </div>\n        <div v-if=\"locationLogo\">\n          <img\n            class=\"logo\"\n            :src=\"locationLogo\"\n            :alt=\"`logo ${location.Name}`\"\n          />\n        </div>\n      </div>\n\n      <template>\n        <div class=\"columns\">\n          <div class=\"column is-half\">\n            <figure class=\"box is-shadowless image is-3by2 has-background-white-bis\">\n              <img\n                src=\"/images/spacer1_1.gif\"\n                :alt=\"proposal.Location.Name\"\n                :style=\"{ backgroundImage: `url('${heroImage}')` }\"\n                itemprop=\"image\"\n              />\n            </figure>\n          </div>\n          <div class=\"column\">\n            <div class=\"columns\">\n              <div class=\"impressions-column column is-hidden-touch is-hidden-desktop-only is-one-third is-flex is-flex-direction-column\">\n                <figure\n                  v-for=\"(imageItem, index) in locationImages\"\n                  :key=\"'li' + index\"\n                  class=\"box is-flex is-shadowless image is-3by2 has-background-grey-lighter\"\n                >\n                  <img\n                    src=\"/images/spacer1_1.gif\"\n                    alt=\"\"\n                    :style=\"{\n                      backgroundImage: `url('${imageItem.UrlMedium}')`,\n                    }\"\n                    itemprop=\"photo\"\n                  />\n                </figure>\n              </div>\n              <div class=\"column\">\n                <div class=\"box-welcome-text box px-3 mb-0 is-flex is-flex-direction-column\">\n                  <div class=\"is-flex is-flex-grow-1\">\n                    <div\n                      class=\"content text\"\n                      v-html=\"proposalCustomerText\"\n                    >\n                    </div>\n                  </div>\n                </div>\n              </div>\n            </div>\n          </div>\n        </div>\n      </template>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nexport default {\n  components: {\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n    this.mItem.title = this.mItem.fillDynamically ? this.proposal.Reservation.Name : this.mItem.title;\n\n    if (!this.mItem.setImagesManually || this.mItem.images.length === 0) {\n      this.fillItemImages();\n    }\n  },\n\n  computed: {\n    host() {\n      let host = null\n\n      if (this.proposal && this.proposal.Host) {\n        host = this.proposal.Host\n      }\n\n      return host\n    },\n\n    reservation() {\n      let reservation = null\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation\n      }\n\n      return reservation\n    },\n\n    proposalLanguage() {\n      return this.proposal?.Language || 'en'\n    },\n\n    location() {\n      let location = null\n\n      if (this.proposal && this.proposal.Location) {\n        location = this.proposal.Location\n      }\n\n      return location\n    },\n\n    locationLogo() {\n      const location = this.proposal?.Location ?? null\n      if (!location || !this.proposal.Location.Logo) { return '' }\n      return this.proposal.Location.Logo.UrlMedium\n\n      // let logo = ''\n      // if (this.location && this.location.Images) {\n      //   let logoImage = this.location.Images.find(l => l.IsLogo);\n\n      //   if (logoImage) {\n      //     logo = this.$options.filters.getLocationImage(\n      //       logoImage.UrlMedium,\n      //       this.location.Id,\n      //       '320'\n      //     )\n      //   }\n      // }\n      // return logo;\n    },\n\n    heroImage() {\n      let _image = {}\n\n      if (this.mItem && this.mItem.images) {\n        _image = this.mItem.images.find((i) => i.IsDefault)\n\n        if (typeof _image === 'undefined') {\n          _image = this.mItem.images[0]\n        }\n      } else {\n        _image.UrlOriginal = '/img/noImage.png'\n      }\n\n      return _image.UrlOriginal\n    },\n\n    locationImages() {\n      return this.mItem.images.filter((i) => !i.IsDefault)\n    },\n\n    proposalCustomerText() {\n      if (!this.mItem.fillDynamically) {\n        return this.$options.filters.processTextForDisplay(this.mItem.text)\n      }\n\n      let output = this.$t('Components.Proposals.Proposal.Text_HostWelcome', this.proposalLanguage, {\n        name: this.proposal.CustomerName,\n        phone: this.location.Phone\n      })\n\n      if (this.proposal.ExpirationDate) {\n        output += this.$t('Components.Proposals.Proposal.Text_HostWelcome_expireDate', this.proposalLanguage, {\n          date: this.$options.filters.dateFormat(this.proposal.ExpirationDate.Date, this.proposalLanguage, 'longDateFormat') + ', ' + this.$options.filters.minutesToTime(this.proposal.ExpirationDate.Minutes)\n        })\n      }\n\n      if (this.proposal.Status === 'RequiresChanges') {\n        output = this.$t('Components.Proposals.Proposal.Text_HostChangeRequest', this.proposalLanguage, {\n          name: this.proposal.CustomerName,\n          phone: this.location.Phone\n        })\n      }\n\n      output += this.$t('Components.Proposals.Proposal.Text_HostGreet', this.proposalLanguage, {\n        host: this.host?.Name ?? ''\n      })\n\n      return this.$options.filters.removeXSS(output)\n    },\n\n  },\n\n  methods: {\n    fillItemImages() {\n      let images = this.location.Images;\n      this.mItem.images = [];\n\n      // find the hero image\n      let heroImage = images.find((i) => i.IsDefault);\n      if (heroImage) {\n        this.mItem.images.push(heroImage);\n      }\n\n      let source = images.filter((i) => !i.IsDefault)\n        //.sort(() => Math.random() - 0.5)\n        .slice(0, 3);\n\n      //in case location has less than 3 pictures\n      for (let i = source.length; i < 3; i++) {\n        source.push({\n          Image: '',\n          UrlLarge: '',\n          UrlMedium: '',\n          UrlOriginal: '',\n          UrlSmall: '',\n          IsDefault: false\n        });\n      }\n\n      // Add images to the item\n      this.mItem.images = this.mItem.images.concat(source);\n    }\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"sass\">\n.proposal-title-wrapper\n  display: flex\n  align-items: center\n  margin-bottom: $gap\n  div:nth-child(1)\n    flex-grow: 1\n  div:nth-child(2)\n    flex-basis: 200px\n    flex-shrink: 1\n\n    // Override the global grey image placeholder (Manage.scss) so transparent logos stay transparent\n    .logo\n      width: auto\n      height: auto\n      max-height: 120px\n      background-color: transparent !important\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Hero.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Hero.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Hero.vue?vue&type=template&id=27192a82&scoped=true\"\nimport script from \"./Hero.vue?vue&type=script&lang=js\"\nexport * from \"./Hero.vue?vue&type=script&lang=js\"\nimport style0 from \"./Hero.vue?vue&type=style&index=0&id=27192a82&prod&scoped=true&lang=sass\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"27192a82\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[_c('div',{staticClass:\"columns is-multiline\"},[_c('div',{staticClass:\"column\",class:{ 'is-two-thirds' : _vm.mItem.showAddress, 'is-full': !_vm.mItem.showAddress }},[_c('h2',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_vm._v(\" \"+_vm._s(_vm.mItem.title)+\" \")]),(_vm.mItem.text)?_c('div',{staticClass:\"content\",domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.mItem.text))}}):_vm._e()]),(_vm.mItem.showAddress)?_c('div',{staticClass:\"column is-one-third\"},[_c('div',{staticClass:\"box px-3\"},[_c('div',{staticClass:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Proposals.Proposal.Title_Address', _vm.proposalLanguage ))+\" \")]),_c('div',{staticClass:\"is-size-6\"},[_c('span',{staticClass:\"icon-text mr-5\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'map-marker']}})],1),_c('span',[_c('span',[_vm._v(_vm._s(_vm.location.Name))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.location.Address))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.location.Postalcode)+\", \"+_vm._s(_vm.location.City))])])])]),_c('br'),_c('div',{staticClass:\"is-size-6\"},[_c('span',{staticClass:\"icon-text mr-5\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'envelope']}})],1),_c('span',{attrs:{\"itemprop\":\"email\"},domProps:{\"textContent\":_vm._s(_vm.location.Email)}})])]),_c('div',{staticClass:\"is-size-6\"},[_c('span',{staticClass:\"icon-text mr-5\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'phone-alt']}})],1),_c('span',{attrs:{\"itemprop\":\"telephone\"},domProps:{\"textContent\":_vm._s(_vm.location.Phone)}})])]),_c('br'),_c('div',{staticClass:\"is-size-6\"},[_c('span',{staticClass:\"icon-text mr-5\"},[_c('span',{staticClass:\"icon has-text-primary-dark\"}),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Proposals.Proposal.Label_CoC', _vm.proposalLanguage )))]),_c('span',[_vm._v(_vm._s(_vm.location.CocNumber))])])])])]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"level === 0 ? 'section' : 'child-section'\">\n    <div :class=\"{'container': level === 0 }\">\n      <div class=\"columns is-multiline\">\n        <div\n          class=\"column\"\n          :class=\"{ 'is-two-thirds' : mItem.showAddress, 'is-full': !mItem.showAddress }\"\n        >\n          <h2\n            class=\"title\"\n            :class=\"level === 0 ? 'is-2' : 'is-3'\"\n          >\n            {{ mItem.title }}\n          </h2>\n          <div\n            v-if=\"mItem.text\"\n            class=\"content\"\n            v-html=\"$options.filters.processTextForDisplay(mItem.text)\"\n          ></div>\n        </div>\n        <div\n          v-if=\"mItem.showAddress\"\n          class=\"column is-one-third\"\n        >\n          <div class=\"box px-3\">\n            <div class=\"subtitle\">\n              {{\n              $t(\n                'Components.Proposals.Proposal.Title_Address',\n                proposalLanguage\n              )\n            }}\n            </div>\n\n            <div class=\"is-size-6\">\n              <span class=\"icon-text mr-5\">\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'map-marker']\" />\n                </span>\n                <span>\n                  <span>{{ location.Name }}</span><br />\n                  <span>{{ location.Address }}</span><br />\n                  <span>{{ location.Postalcode }}, {{ location.City }}</span>\n                </span>\n              </span>\n            </div>\n\n            <br />\n            <div class=\"is-size-6\">\n              <span class=\"icon-text mr-5\">\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'envelope']\" />\n                </span>\n                <span\n                  v-text=\"location.Email\"\n                  itemprop=\"email\"\n                ></span>\n              </span>\n            </div>\n            <div class=\"is-size-6\">\n              <span class=\"icon-text mr-5\">\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'phone-alt']\" />\n                </span>\n                <span\n                  v-text=\"location.Phone\"\n                  itemprop=\"telephone\"\n                ></span>\n              </span>\n            </div>\n            <br />\n            <!-- <div>{{ location.CoCName }}</div> -->\n            <div class=\"is-size-6\">\n              <span class=\"icon-text mr-5\">\n                <span class=\"icon has-text-primary-dark\">\n                  <!-- <font-awesome-icon :icon=\"['fas', 'envelope']\" /> -->\n                </span>\n                <span>{{\n                $t(\n                  'Components.Proposals.Proposal.Label_CoC',\n                  proposalLanguage\n                )\n              }}</span>\n                <span>{{ location.CocNumber }}</span>\n              </span>\n            </div>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nexport default {\n  components: {\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n    this.mItem.title = this.mItem.fillDynamically ? this.$t('Components.Proposals.Proposal.Title_Proposal', this.proposalLanguage) : this.mItem.title;\n    this.mItem.text = this.mItem.fillDynamically ? this.locationDescription : this.mItem.text;\n  },\n\n  computed: {\n    proposalLanguage() {\n      return this.proposal?.Language || 'en'\n    },\n\n    location() {\n      if (this.proposal && this.proposal.Location) {\n        return this.proposal.Location\n      }\n      return null\n    },\n\n    locationDescription() {\n      let description = ''\n\n      if (\n        this.location &&\n        this.location.Descriptions &&\n        this.location.Descriptions.length > 0\n      ) {\n        let des = this.location.Descriptions.find(\n          (d) => d.Language === this.proposal.Language\n        )\n\n        if (des) {\n          description = des.Description\n        } else {\n          des = this.location.Descriptions.find(\n            (d) => d.LanguageId === 65\n          )\n\n          if (des) {\n            description = des.Description\n          }\n        }\n      }\n\n      let a_tag = /<a (.*?)>/g\n      return description.replace(a_tag, '<a target=\"_blank\" $1>')\n    },\n  },\n\n  methods: {\n  },\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Location.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Location.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Location.vue?vue&type=template&id=5a728c58&scoped=true\"\nimport script from \"./Location.vue?vue&type=script&lang=js\"\nexport * from \"./Location.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5a728c58\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[_c('hr',{staticClass:\"mt-0 mb-2\"}),_c('nav',{staticClass:\"navbar-custom-menu\",attrs:{\"role\":\"navigation\",\"aria-label\":\"event navigation\"}},[_c('div',{staticClass:\"navbar-start\"},_vm._l((_vm.menuItems),function(menuItem,index){return _c('div',{key:'lm' + index,staticClass:\"navbar-item\",on:{\"click\":function($event){return _vm.setView(menuItem.id)}}},[_c('a',{staticClass:\"navbar-link is-arrowless has-text-weight-bold\"},[_c('span',[_vm._v(_vm._s(_vm.$t('ProposalContentType.type_' + menuItem.contentType))+\" \")])])])}),0)]),_c('hr',{staticClass:\"mt-2 mb-0\"})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"level === 0 ? 'section' : 'child-section'\">\n    <div :class=\"{'container': level === 0 }\">\n      <hr class=\"mt-0 mb-2\" />\n      <nav\n        class=\"navbar-custom-menu\"\n        role=\"navigation\"\n        aria-label=\"event navigation\"\n      >\n        <div class=\"navbar-start\">\n          <div\n            v-for=\"(menuItem, index) in menuItems\"\n            :key=\"'lm' + index\"\n            class=\"navbar-item\"\n            @click=\"setView(menuItem.id)\"\n          >\n            <a class=\"navbar-link is-arrowless has-text-weight-bold\">\n              <span>{{ $t('ProposalContentType.type_' + menuItem.contentType) }} </span>\n            </a>\n          </div>\n        </div>\n      </nav>\n      <hr class=\"mt-2 mb-0\" />\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nexport default {\n  components: {\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n  },\n\n  computed: {\n    menuItems() {\n      let items = [];\n\n      if (this.templateItems.length > 0) {\n        for (let i = 0; i < this.templateItems.length; i++) {\n          let tItem = this.templateItems[i];\n          if (tItem.contentType === 'location' ||\n            tItem.contentType === 'program' ||\n            tItem.contentType === 'options' ||\n            tItem.contentType === 'spaces' ||\n            tItem.contentType === 'summary') {\n            items.push(tItem);\n          }\n        }\n      }\n\n      return items;\n    },\n\n    templateItems() {\n      let items = [];\n\n      if (this.proposal && this.proposal.Template) {\n        items = JSON.parse(this.proposal.Template);\n      }\n\n      return items;\n    }\n  },\n\n  methods: {\n    setView(itemId) {\n      this.$emit('changePageview', itemId);\n    },\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Menu.vue?vue&type=template&id=670ce1b5&scoped=true\"\nimport script from \"./Menu.vue?vue&type=script&lang=js\"\nexport * from \"./Menu.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"670ce1b5\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:{'container': _vm.level === 0 }},[(_vm.mItem.title)?_c('h1',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_c('div',[_vm._v(_vm._s(_vm.mItem.title))])]):_vm._e(),(_vm.mItem.text)?_c('div',{class:{'mb-6': _vm.mItem.items},domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.mItem.text))}}):_vm._e(),_c('div',{staticClass:\"columns is-multiline\"},_vm._l((_vm.mItem.items),function(item,index){return _c('div',{key:'ti-' + index,staticClass:\"column\",class:{'is-full-touch': index === 0}},[(item.contentType === 'contact')?_c('TemplateContact',{attrs:{\"item\":item,\"level\":_vm.nextLevel,\"proposal\":_vm.proposal,\"parentHasChilds\":_vm.mItem.items.length > 1}}):_vm._e(),(item.contentType === 'images')?_c('TemplateImages',{attrs:{\"item\":item,\"level\":_vm.nextLevel,\"parentHasChilds\":_vm.mItem.items.length > 1}}):_vm._e(),(item.contentType === 'program')?_c('TemplateProgram',{attrs:{\"item\":item,\"proposal\":_vm.proposal,\"level\":_vm.nextLevel}}):_vm._e(),(item.contentType === 'text')?_c('TemplateText',{attrs:{\"item\":item,\"level\":_vm.nextLevel}}):_vm._e()],1)}),0)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div :class=\"level === 0 ? 'section' : 'child-section'\">\n    <div :class=\"{'container': level === 0 }\">\n      <h1\n        v-if=\"mItem.title\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >\n        <div>{{ mItem.title }}</div>\n      </h1>\n      <div\n        v-if=\"mItem.text\"\n        v-html=\"$options.filters.processTextForDisplay(mItem.text)\"\n        :class=\"{'mb-6': mItem.items}\"\n      ></div>\n\n      <div class=\"columns is-multiline\">\n        <div\n          v-for=\"(item, index) in mItem.items\"\n          :key=\"'ti-' + index\"\n          :class=\"{'is-full-touch': index === 0}\"\n          class=\"column\"\n        >\n          <TemplateContact\n            v-if=\"item.contentType === 'contact'\"\n            :item=\"item\"\n            :level=\"nextLevel\"\n            :proposal=\"proposal\"\n            :parentHasChilds=\"mItem.items.length > 1\"\n          />\n          <TemplateImages\n            v-if=\"item.contentType === 'images'\"\n            :item=\"item\"\n            :level=\"nextLevel\"\n            :parentHasChilds=\"mItem.items.length > 1\"\n          />\n          <TemplateProgram\n            v-if=\"item.contentType === 'program'\"\n            :item=\"item\"\n            :proposal=\"proposal\"\n            :level=\"nextLevel\"\n          />\n          <TemplateText\n            v-if=\"item.contentType === 'text'\"\n            :item=\"item\"\n            :level=\"nextLevel\"\n          />\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport Contact from './Contact.vue';\nimport Images from './Images.vue';\nimport Program from './Program.vue';\nimport Text from './Text.vue';\n\nimport { cleanSource } from '@/utils/objectHelper'\n\nexport default {\n  name: 'MixedContent',\n\n  components: {\n    TemplateContact: Contact,\n    TemplateImages: Images,\n    TemplateProgram: Program,\n    TemplateText: Text\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    const nextLevel = (this.level + 1)\n    return {\n      mItem: null,\n      nextLevel\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = {\n      ...cleanSource(this.item),\n      items: (this.item.items || []).filter(i => i.contentType !== 'none')\n    }\n  },\n\n  methods: {\n    getImagesCssClass(item) {\n      return [\n        { 'is-two-fifths-fullhd': this.mItem.items.length > 1 && item.images.length === 1 },\n        { 'is-half': this.mItem.items.length > 1 && item.images.length > 1 }\n      ]\n    }\n  },\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MixedContent.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MixedContent.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MixedContent.vue?vue&type=template&id=52406254&scoped=true\"\nimport script from \"./MixedContent.vue?vue&type=script&lang=js\"\nexport * from \"./MixedContent.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"52406254\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.level === 0 ? 'section' : 'child-section'},[_c('div',{class:_vm.cssContainerClass},[(_vm.showDrawer)?_c('DrawerTerms',{attrs:{\"show-drawer\":_vm.showDrawer,\"seletedTermType\":_vm.seletedTermType,\"onClickClose\":_vm.hideDrawer,\"terms\":_vm.terms}}):_vm._e(),(_vm.showDivider)?_c('hr',{staticClass:\"mt-0\"}):_vm._e(),(_vm.mItem.title)?_c('h2',{staticClass:\"title\",class:_vm.level === 0 ? 'is-2' : 'is-3'},[_vm._v(\" \"+_vm._s(_vm.mItem.title)+\" \")]):_vm._e(),(_vm.mItem.text)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.mItem.text)}}):_vm._e(),_c('div',{staticClass:\"termsbar is-flex\"},_vm._l((_vm.terms),function(term,index){return _c('div',{key:'t-'+ index},[_c('a',{on:{\"click\":function($event){return _vm.setShowTermsDrawer(term.TermsType)}}},[_vm._v(\" \"+_vm._s(_vm.getTermNameLabel(term))+\" \")])])}),0)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('drawer-v-2',{attrs:{\"drawer-title\":'',\"drawer-size\":\"extra-large\",\"show-drawer\":_vm.showDrawer,\"onClickClose\":_vm.onClickClose},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{staticClass:\"terms-presentation\"},[_c('div',{staticClass:\"menu-wrapper is-hidden-touch\"},[_c('div',{staticClass:\"menu\"},[_c('ul',{staticClass:\"menu-list\"},_vm._l((_vm.terms),function(term,index){return _c('li',{key:'t-'+ index},[_c('a',{class:{'is-active': _vm.activeType === term.TermsType},on:{\"click\":function($event){_vm.activeType = term.TermsType}}},[_vm._v(_vm._s(_vm.getTermNameLabel(term)))])])}),0)])]),_c('div',{staticClass:\"term-wrapper\"},[_c('div',{staticClass:\"tabs is-boxed is-hidden-desktop\"},[_c('ul',_vm._l((_vm.terms),function(term,index){return _c('li',{key:'t-'+ index},[_c('a',{class:{'is-active': _vm.activeType === term.TermsType},on:{\"click\":function($event){_vm.activeType = term.TermsType}}},[_vm._v(_vm._s(_vm.getTermNameLabel(term)))])])}),0)]),_c('div',{staticClass:\"pt-2 field is-grouped is-grouped-right\"},[_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"has-icon has-text-link\",on:{\"click\":function($event){return _vm.print()}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'print']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Form.Control.Print'))}})])])]),_c('hr'),_c('div',{staticClass:\"print-term-content\"},[_c('div',{staticClass:\"title is-2\"},[_vm._v(\" \"+_vm._s(_vm.getTermNameLabel())+\" \"+_vm._s(_vm.$options.filters.removeXSS(_vm.activeTerm.Terms.Version))+\" \")]),(_vm.activeTerm.Terms.Changes)?_c('div',[_c('div',{staticClass:\"title is-3\"},[_vm._v(\"What is changes compare to previous terms\")]),_c('div',{staticClass:\"content\",domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.activeTerm.Terms.Changes))}}),_c('hr')]):_vm._e(),_c('div',{staticClass:\"content\",domProps:{\"innerHTML\":_vm._s(_vm.$options.filters.processTextForDisplay(_vm.activeTerm.Terms.Text))}}),(_vm.hasCancelRules)?_c('div',[_c('hr'),_c('div',{staticClass:\"content\",domProps:{\"innerHTML\":_vm._s(_vm.buildCancellationRulesText())}})]):_vm._e()])])])]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.showDrawer)?_c('div',{key:'showDrawer' + Number(_vm.showDrawer),staticClass:\"ui-drawer-component\"},[_c('div',{staticClass:\"ui-drawer-background\",class:{ 'is-active': _vm.showDrawer },on:{\"click\":function($event){return _vm.close()}}}),_c('div',{staticClass:\"drawer\",class:[_vm.position, _vm.unsetFillModeCssClass, _vm.animateClass, _vm.drawerSize]},[_c('header',{staticClass:\"drawer-head has-padding\"},[(!_vm.hideTitle)?_c('p',{staticClass:\"drawer-title\"},[_vm._v(\" \"+_vm._s(_vm.drawerTitle)+\" \")]):_vm._e(),_c('button',{staticClass:\"delete\",attrs:{\"aria-label\":\"close\"},on:{\"click\":function($event){return _vm.close()}}})]),_c('section',{staticClass:\"drawer-body has-padding has-custom-scrollbar\"},[_vm._t(\"content\")],2)])]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <transition\n    name=\"fade\"\n    mode=\"out-in\"\n  >\n    <div\n      v-if=\"showDrawer\"\n      :key=\"'showDrawer' + Number(showDrawer)\"\n      class=\"ui-drawer-component\"\n    >\n      <div\n        class=\"ui-drawer-background\"\n        :class=\"{ 'is-active': showDrawer }\"\n        @click=\"close()\"\n      ></div>\n      <div\n        class=\"drawer\"\n        :class=\"[position, unsetFillModeCssClass, animateClass, drawerSize]\"\n      >\n        <header class=\"drawer-head has-padding\">\n          <p\n            v-if=\"!hideTitle\"\n            class=\"drawer-title\"\n          >\n            {{ drawerTitle }}\n          </p>\n          <button\n            @click=\"close()\"\n            class=\"delete\"\n            aria-label=\"close\"\n          ></button>\n        </header>\n        <section class=\"drawer-body has-padding has-custom-scrollbar\">\n          <slot name=\"content\"></slot>\n        </section>\n\n      </div>\n    </div>\n  </transition>\n</template>\n\n<script>\nimport { mapActions } from 'vuex';\n\nexport default {\n  name: 'DrawerV2',\n  props: {\n    drawerTitle: {\n      type: String,\n      default: '',\n    },\n    hideTitle: {\n      type: Boolean,\n      default: false,\n    },\n    onClickClose: {\n      type: Function,\n      default: function() { },\n      required: false,\n    },\n    position: {\n      type: String,\n      default: 'right',\n    },\n    showDrawer: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * Sizes are:\n     * - normal (420)\n     * - large (800)\n     * - extra-large (1100)\n     */\n    drawerSize: {\n      type: String,\n      default: 'normal',\n    },\n  },\n\n  data() {\n    return {\n      slideDrawer: false,\n      animateTimer: null,\n      unsetFillModeCssClass: 'unset-fill-mode',\n    }\n  },\n\n  computed: {\n    animateClass() {\n      let cls = 'animated slide'\n      cls = cls + (this.slideDrawer ? 'In' : 'Out')\n      cls = cls + this.position.charAt(0).toUpperCase() + this.position.slice(1)\n      return cls\n    },\n  },\n\n  mounted() {\n    this.openDrawer({ targetElement: this.$el })\n    this.slideDrawer = this.showDrawer\n  },\n\n  beforeDestroy() {\n    /**\n     * Destroy timer\n     */\n    if (this.animateTimer) {\n      clearTimeout(this.animateTimer)\n    }\n    this.closeDrawer(this.$el)\n  },\n\n  methods: {\n    ...mapActions('drawerStore', ['openDrawer', 'closeDrawer']),\n\n    close() {\n      this.slideDrawer = false\n      this.unsetFillModeCssClass = ''\n      this.animateTimer = setTimeout(this.onClickClose, 0)\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n$widthNormal: 420px;\n$widthLarge: 800px;\n$widthExtraLarge: 1100px;\n$widthExtraExtraLarge: 1400px;\n\n.ui-drawer-component {\n  bottom: 0;\n  left: 0;\n  position: fixed;\n  right: 0;\n  top: 0;\n  z-index: 99989;\n\n  .ui-drawer-background {\n    bottom: 0;\n    left: 0;\n    position: absolute;\n    right: 0;\n    top: 0;\n    background: rgba($black, 0.86);\n    transition: opacity 1s ease-in-out;\n\n    &.is-active {\n      opacity: 1;\n    }\n  }\n\n  .drawer {\n    display: flex;\n    flex-direction: column;\n    width: 0;\n    /* 0 width - change this with JavaScript */\n    position: fixed;\n    /* Stay in place */\n    top: 0;\n    /* Stay at the top */\n    left: auto;\n    right: auto;\n    background-color: white;\n    height: 100vh;\n    max-width: 420px;\n\n    &.large {\n      max-width: $widthLarge;\n    }\n\n    &.extra-large {\n      max-width: $widthExtraLarge;\n    }\n    &.extra-extra-large {\n      max-width: $widthExtraExtraLarge;\n    }\n    transition: 0.75s;\n    animation-duration: 0.5s;\n    @include box-shadow();\n\n    // This is needed for showing elements outside the drawer\n    &.unset-fill-mode {\n      animation-fill-mode: unset;\n    }\n\n    &.left {\n      left: 0;\n      width: 100%;\n    }\n\n    &.right {\n      right: 0;\n      width: 100%;\n    }\n\n    &-minimal {\n      width: auto;\n    }\n\n    .drawer-head {\n      align-items: center;\n      background-color: var(--drawer-head-background, #eeeeee);\n      display: flex;\n      flex-shrink: 0;\n      justify-content: flex-start;\n      padding: 15px;\n      position: relative;\n\n      .drawer-title {\n        flex-grow: 1;\n        flex-shrink: 0;\n        font-size: $size-4;\n      }\n    }\n\n    .drawer-body {\n      overflow: auto;\n      height: 100%;\n      max-height: 100%;\n      // overflow-x: hidden;\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DrawerV2.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DrawerV2.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DrawerV2.vue?vue&type=template&id=232e94f4&scoped=true\"\nimport script from \"./DrawerV2.vue?vue&type=script&lang=js\"\nexport * from \"./DrawerV2.vue?vue&type=script&lang=js\"\nimport style0 from \"./DrawerV2.vue?vue&type=style&index=0&id=232e94f4&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"232e94f4\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <drawer-v-2\n    :drawer-title=\"''\"\n    drawer-size=\"extra-large\"\n    :show-drawer=\"showDrawer\"\n    :onClickClose=\"onClickClose\"\n  >\n    <template #content>\n      <div class=\"terms-presentation\">\n        <div class=\"menu-wrapper is-hidden-touch\">\n          <div class=\"menu\">\n            <ul class=\"menu-list\">\n              <li\n                v-for=\"(term, index) in terms\"\n                :key=\"'t-'+ index\"\n              >\n                <a\n                  @click=\"activeType = term.TermsType\"\n                  :class=\"{'is-active': activeType === term.TermsType}\"\n                >{{ getTermNameLabel(term) }}</a>\n              </li>\n            </ul>\n          </div>\n        </div>\n        <div class=\"term-wrapper\">\n          <div class=\"tabs is-boxed is-hidden-desktop\">\n            <ul>\n              <li\n                v-for=\"(term, index) in terms\"\n                :key=\"'t-'+ index\"\n              >\n                <a\n                  @click=\"activeType = term.TermsType\"\n                  :class=\"{'is-active': activeType === term.TermsType}\"\n                >{{ getTermNameLabel(term) }}</a>\n              </li>\n            </ul>\n          </div>\n          <div class=\"pt-2 field is-grouped is-grouped-right\">\n            <p class=\"control\">\n              <a\n                class=\"has-icon has-text-link\"\n                @click=\"print()\"\n              >\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['far', 'print']\" />\n                </span>\n                <span v-text=\"$t('Form.Control.Print')\"></span>\n              </a>\n            </p>\n          </div>\n          <hr>\n          <div class=\"print-term-content\">\n            <div class=\"title is-2\">\n              {{ getTermNameLabel() }} {{ $options.filters.removeXSS(activeTerm.Terms.Version) }}\n            </div>\n            <div v-if=\"activeTerm.Terms.Changes\">\n              <div class=\"title is-3\">What is changes compare to previous terms</div>\n              <div\n                class=\"content\"\n                v-html=\"$options.filters.processTextForDisplay(activeTerm.Terms.Changes)\"\n              ></div>\n              <hr />\n            </div>\n            <div\n              class=\"content\"\n              v-html=\"$options.filters.processTextForDisplay(activeTerm.Terms.Text)\"\n            ></div>\n            <div v-if=\"hasCancelRules\">\n              <hr />\n              <div\n                class=\"content\"\n                v-html=\"buildCancellationRulesText()\"\n              ></div>\n            </div>\n          </div>\n        </div>\n      </div>\n    </template>\n  </drawer-v-2>\n</template>\n\n<script>\nimport Drawer from '../../../UI/Components/Drawer.vue'\nimport DrawerV2 from '../../../UI/Components/DrawerV2.vue'\nimport LinkPrint from '../../../UI/LinkPrint.vue'\nimport Loader from '../../../UI/Loader.vue'\nexport default {\n  name: 'DrawerTerms',\n\n  components: { Drawer, Loader, DrawerV2, LinkPrint },\n\n  props: {\n    showDrawer: {\n      type: Boolean,\n      default: false\n    },\n    terms: {\n      type: Array,\n      required: true\n    },\n    seletedTermType: {\n      type: String,\n      default: ''\n    },\n    onClickClose: {\n      type: Function,\n      required: true\n    },\n\n    language: {\n      type: String,\n      default: function() {\n        return this.$i18n.locale\n      }\n    }\n  },\n\n  data() {\n    const activeType = this.seletedTermType\n    return {\n      activeType\n    }\n  },\n\n  computed: {\n    activeTerm() {\n      return this.terms.find(ts => ts.TermsType === this.activeType)\n    },\n\n    hasCancelRules() {\n      return this.activeTerm.Terms.CancelRules.length\n    },\n  },\n\n  created() {\n\n  },\n\n  methods: {\n    close() {\n      this.onClickClose()\n    },\n\n    getTermNameLabel() {\n      let output = this.$t('TermsType.type_' + this.activeTerm.TermsType, this.language)\n\n      const isTypeUnique = this.terms.filter(t => t.TermsType === this.activeTerm.TermsType).length === 1;\n\n      // Only add additional when type is not unique\n      if (!isTypeUnique && this.activeTerm.ChannelId !== 0 && this.activeTerm.Terms.LocationId === 0) {\n        output = this.$t('TermsType.type_Channel_' + this.activeTerm.TermsType, this.language)\n      }\n      if (!isTypeUnique && this.activeTerm.ChannelId !== 0 && this.activeTerm.Terms.LocationId !== 0) {\n        output = this.$t('TermsType.type_Location_' + this.activeTerm.TermsType, this.language)\n      }\n\n      return output\n    },\n\n    buildCancellationRulesText() {\n      let rules = [...this.activeTerm.Terms.CancelRules]\n      let output = `<div class=\"title is-3\">${this.$t('Components.Terms.ModalEditCancelRules.Header_Cancellation', this.language)}</div>`\n      let table = `<table class=\"table is-fullwidth is-bordered\">\n        <thead>\n          <tr>\n            <th class=\"has-text-centered\">${this.$t('Components.Terms.ModalEditCancelRules.TableHeader_DaysTillBooking', this.language)}</th>\n            <th class=\"has-text-centered\">${this.$t('Components.Terms.ModalEditCancelRules.TableHeader_GroupSize', this.language)}</th>\n            <th class=\"has-text-centered\">${this.$t('Components.Terms.ModalEditCancelRules.TableHeader_Percentage', this.language)}</th>\n          </tr>\n        </thead>\n        <tbody>`\n      rules = rules.sort((a, b) => {\n        // Sort by HoursUntilStart first\n        if (a.HoursUntilStart !== b.HoursUntilStart) {\n          return a.HoursUntilStart - b.HoursUntilStart;\n        }\n        // Then sort by MaxSeats, treating -1 as the largest value\n        const maxSeatsA = a.MaxSeats === -1 ? Number.POSITIVE_INFINITY : a.MaxSeats;\n        const maxSeatsB = b.MaxSeats === -1 ? Number.POSITIVE_INFINITY : b.MaxSeats;\n        return maxSeatsA - maxSeatsB;\n      })\n      rules.forEach(rule => {\n        table += `<tr>\n          <td class=\"has-text-centered\">${this.hoursToDay(rule.HoursUntilStart, false)}</td>\n          <td class=\"has-text-centered\">${rule.MinSeats} - ${rule.MaxSeats}</td>\n          <td class=\"has-text-centered\">${rule.Percentage}%</td>\n        </tr>`\n      });\n      table += '</tbody></table>'\n      output += table\n      return output\n    },\n\n    hoursToDay(hours, onlyDayFormat = false) {\n      // return hours\n      if (hours <= 48 && !onlyDayFormat) {\n        // return in hours\n        return this.$tc('Components.Terms.ModalEditCancelRules.Label_Hour', hours, this.language)\n      }\n      return this.$tc('Components.Terms.ModalEditCancelRules.Label_Days', Math.floor(hours / 24), this.language)\n    },\n\n    print() {\n      // Use browser's native print dialog to save as PDF\n      // Create a new window with just the term content\n      const printWindow = window.open('', '_blank');\n      const termContent = this.$el.querySelector('.print-term-content').innerHTML;\n\n      printWindow.document.write(`\n        <!DOCTYPE html>\n        <html>\n          <head>\n            <title>${this.getTermNameLabel()} ${this.$options.filters.removeXSS(this.activeTerm.Terms.Version)}</title>\n            <style>\n              body { \n                font-family: Arial, sans-serif; \n                padding: 60px 30px; \n                max-width: 1100px; \n                margin-inner: auto \n              }\n              h1, .title.is-1 { \n                display: block;\n                font-size: 2em;\n                margin-block-start: 0.67em;\n                margin-block-end: 0.67em;\n                margin-inline-start: 0px;\n                margin-inline-end: 0px;\n                font-weight: bold;\n                unicode-bidi: isolate;\n              }\n              h2, .title.is-2 { \n                display: block;\n                font-size: 1.5em;\n                margin-block-start: 0.83em;\n                margin-block-end: 0.83em;\n                margin-inline-start: 0px;\n                margin-inline-end: 0px;\n                font-weight: bold;\n                unicode-bidi: isolate; \n              }\n              h3, .title.is-3 { \n                display: block;\n                font-size: 1.17em;\n                margin-block-start: 1em;\n                margin-block-end: 1em;\n                margin-inline-start: 0px;\n                margin-inline-end: 0px;\n                font-weight: bold;\n                unicode-bidi: isolate;\n              }\n              h4, .title.is-4 { \n                display: block;\n                margin-block-start: 1.33em;\n                margin-block-end: 1.33em;\n                margin-inline-start: 0px;\n                margin-inline-end: 0px;\n                font-weight: bold;\n                unicode-bidi: isolate;\n              }\n              .content { line-height: 1.6; }\n              table { border-collapse: collapse; width: 100%; margin: 20px 0; }\n              th, td { border: 1px solid #ddd; padding: 4px; vertical-align: top; }\n              th { background-color: #f2f2f2; }\n              @media print {\n                body {\n                  padding: 0; \n                  max-width: none;\n                }\n              }\n            </style>\n          </head>\n          <body>${termContent}</body>\n        </html>\n      `);\n\n      printWindow.document.close();\n      printWindow.focus();\n\n      // Wait for content to load, then trigger print dialog\n      let t = setTimeout(() => {\n        printWindow.print();\n        // Optionally close the window after printing\n        // printWindow.close();\n        clearTimeout(t)\n      }, 250);\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.terms-presentation {\n  display: flex;\n  gap: $gap;\n}\n\n.menu-wrapper {\n  min-width: 180px;\n}\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DrawerTerms.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DrawerTerms.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DrawerTerms.vue?vue&type=template&id=91bcb310&scoped=true\"\nimport script from \"./DrawerTerms.vue?vue&type=script&lang=js\"\nexport * from \"./DrawerTerms.vue?vue&type=script&lang=js\"\nimport style0 from \"./DrawerTerms.vue?vue&type=style&index=0&id=91bcb310&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"91bcb310\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div :class=\"level === 0 ? 'section' : 'child-section'\">\n    <div :class=\"cssContainerClass\">\n      <DrawerTerms\n        v-if=\"showDrawer\"\n        :show-drawer=\"showDrawer\"\n        :seletedTermType=\"seletedTermType\"\n        :onClickClose=\"hideDrawer\"\n        :terms=\"terms\"\n      />\n\n      <hr\n        v-if=\"showDivider\"\n        class=\"mt-0\"\n      />\n      <h2\n        v-if=\"mItem.title\"\n        class=\"title\"\n        :class=\"level === 0 ? 'is-2' : 'is-3'\"\n      >\n        {{ mItem.title }}\n      </h2>\n      <div\n        v-if=\"mItem.text\"\n        v-html=\"mItem.text\"\n      ></div>\n\n      <div class=\"termsbar is-flex\">\n        <div\n          v-for=\"(term, index) in terms\"\n          :key=\"'t-'+ index\"\n        >\n          <a @click=\"setShowTermsDrawer(term.TermsType)\">\n            {{ getTermNameLabel(term) }}\n          </a>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\nimport DrawerTerms from './DrawerTerms.vue';\n\nexport default {\n  components: {\n    DrawerTerms\n  },\n\n  props: {\n    level: {\n      type: Number,\n      default: 0\n    },\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mItem: null,\n      seletedTermType: '',\n      showDrawer: false\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n\n    this.mItem.title = this.mItem.fillDynamically ? '' : this.mItem.title;\n    this.mItem.text = this.mItem.fillDynamically ? '' : this.mItem.text;\n  },\n\n  computed: {\n    proposalLanguage() {\n      return this.proposal?.Language || 'en'\n    },\n\n    cssContainerClass() {\n      return [{\n        'container': this.level === 0\n      }]\n    },\n\n    showDivider() {\n      return this.mItem.fillDynamically\n    },\n\n    reservation() {\n      let reservation = null;\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation;\n      }\n\n      return reservation;\n    },\n\n    terms() {\n      let terms = [];\n\n      if (this.proposal && this.proposal.Terms && this.proposal.Terms.length > 0) {\n        terms = this.proposal.Terms;\n      }\n\n      return terms;\n    },\n  },\n\n  methods: {\n    getTermNameLabel(term) {\n      let output = this.$t('TermsType.type_' + term.TermsType, this.language)\n\n      const isTypeUnique = this.terms.filter(t => t.TermsType === term.TermsType).length === 1;\n\n      // Only add additional when type is not unique\n      if (!isTypeUnique && term.ChannelId !== 0 && term.Terms.LocationId === 0) {\n        output = this.$t('TermsType.type_Channel_' + term.TermsType, this.language)\n      }\n      if (!isTypeUnique && term.ChannelId !== 0 && term.Terms.LocationId !== 0) {\n        output = this.$t('TermsType.type_Location_' + term.TermsType, this.language)\n      }\n\n      return output\n    },\n\n    setShowTermsDrawer(termsType) {\n      this.showDrawer = true\n      this.seletedTermType = termsType\n    },\n\n    hideDrawer() {\n      this.showDrawer = false\n      this.seletedTermType = ''\n    },\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.termsbar {\n  gap: 10px $gap;\n}\n</style>\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Terms.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Terms.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Terms.vue?vue&type=template&id=62804aa0&scoped=true\"\nimport script from \"./Terms.vue?vue&type=script&lang=js\"\nexport * from \"./Terms.vue?vue&type=script&lang=js\"\nimport style0 from \"./Terms.vue?vue&type=style&index=0&id=62804aa0&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"62804aa0\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div>\n    <Loader\n      key=\"isSaving\"\n      v-if=\"isSaving\"\n      :height=\"100\"\n    />\n\n    <div v-if=\"!isSaving\">\n      <template v-if=\"!showEdit\">\n        <div\n          v-for=\"(item, index) in templateItems\"\n          :key=\"'ti-' + index\"\n        >\n          <TemplateContact\n            v-if=\"item.contentType === 'contact'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateDates\n            v-if=\"item.contentType === 'dates'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateHero\n            v-if=\"item.contentType === 'hero'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateImages\n            v-if=\"item.contentType === 'images'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateLocation\n            v-if=\"item.contentType === 'location'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateMenu\n            v-if=\"item.contentType === 'menu'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            @changePageview=\"setView\"\n            :id=\"item.id\"\n          />\n          <TemplateMixedContent\n            v-if=\"item.contentType === 'mixed'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateOptions\n            v-if=\"item.contentType === 'options'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateProgram\n            v-if=\"item.contentType === 'program'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateSpaces\n            v-if=\"item.contentType === 'spaces'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateSummary\n            v-if=\"item.contentType === 'summary'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateTerms\n            v-if=\"item.contentType === 'terms'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n          <TemplateText\n            v-if=\"item.contentType === 'text'\"\n            :item=\"item\"\n            :proposal=\"mProposal\"\n            :key=\"item.id\"\n            :id=\"item.id\"\n          />\n\n        </div>\n      </template>\n\n      <TemplateEditor\n        v-else\n        :templateItems=\"templateItems\"\n        :proposalLanguage=\"proposalLanguage\"\n        @templateUpdated=\"updateProposal\"\n        @hideEditor=\"stopEdit\"\n        @cancelEditor=\"cancelEdit\"\n      />\n    </div>\n\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport proposalProvider from '@/providers/proposal'\nimport { cleanSource } from '@/utils/objectHelper'\nimport uuidv4 from '@/mixins/createId'\n\n\nimport Contact from './TemplateItems/Contact.vue';\nimport Dates from './TemplateItems/Dates.vue';\nimport Hero from './TemplateItems/Hero.vue';\nimport Images from './TemplateItems/Images.vue';\nimport Location from './TemplateItems/Location.vue';\nimport Menu from './TemplateItems/Menu.vue';\nimport MixedContent from './TemplateItems/MixedContent.vue';\nimport Options from './TemplateItems/Options.vue';\nimport Program from './TemplateItems/Program.vue';\nimport Spaces from './TemplateItems/Spaces.vue';\nimport Summary from './TemplateItems/Summary.vue';\nimport Terms from './TemplateItems/Terms.vue';\nimport Text from './TemplateItems/Text.vue';\nimport TemplateEditor from './TemplateEditor.vue';\nimport Loader from '@/components/UI/Loader';\n\nexport default {\n  name: 'TemplateParser',\n\n  components: {\n    TemplateEditor,\n    TemplateContact: Contact,\n    TemplateDates: Dates,\n    TemplateHero: Hero,\n    TemplateImages: Images,\n    TemplateLocation: Location,\n    TemplateMenu: Menu,\n    TemplateMixedContent: MixedContent,\n    TemplateOptions: Options,\n    TemplateProgram: Program,\n    TemplateSpaces: Spaces,\n    TemplateSummary: Summary,\n    TemplateTerms: Terms,\n    TemplateText: Text,\n    Loader\n  },\n\n  mixins: [uuidv4],\n\n  props: {\n    showEdit: {\n      type: Boolean,\n      default: false,\n    },\n\n    previewProposal: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      isSaving: false,\n      mProposal: null,\n    }\n  },\n\n  computed: {\n    ...mapState('proposalStore', ['proposal']),\n\n    proposalLanguage() {\n      return this.proposal?.Language || 'en'\n    },\n\n    templateItems() {\n      let items = [];\n\n      if (this.mProposal && this.mProposal.Template) {\n        items = JSON.parse(this.mProposal.Template);\n      }\n\n      return items;\n    }\n  },\n\n  created() {\n    if (this.previewProposal) {\n      this.mProposal = cleanSource(this.previewProposal);\n    } else {\n      this.mProposal = cleanSource(this.proposal);\n    }\n  },\n\n  methods: {\n    ...mapMutations('proposalStore', ['setProposal']),\n\n    cancelEdit() {\n      this.mProposal = cleanSource(this.proposal);\n\n      this.setView('reservationProposal')\n\n      this.$emit('cancelEdit');\n    },\n\n    stopEdit() {\n      this.$emit('stopEdit');\n    },\n\n    updateProposal(template) {\n      if (this.isSaving) {\n        return;\n      }\n\n      this.isSaving = true;\n\n      let data = {\n        HostId: this.mProposal.Host.Id,\n        TemplateId: this.mProposal.TemplateId,\n        Template: this.$options.filters.removeXSS(JSON.stringify(template)),\n      }\n\n      proposalProvider.methods\n        .updateProposal(this.mProposal.Key, data)\n        .then(response => {\n          if (response.status === 200) {\n            let proposal = cleanSource(response.data);\n            this.setProposal(proposal);\n            this.mProposal = proposal;\n\n            let t = setTimeout(function() {\n              this.setView('reservationProposal')\n              clearTimeout(t)\n            }, 0)\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t('Components.Reservation.ReservationProposal.message_TemplateUpdated'),\n            });\n          }\n        })\n        .finally(() => {\n          this.isSaving = false;\n          this.stopEdit();\n        });\n    },\n\n    setView(itemId) {\n      if (document.getElementById(itemId)) {\n        document.getElementById(itemId).scrollIntoView({\n          behavior: 'smooth',\n          block: 'start',\n          inline: 'nearest',\n        })\n      }\n    },\n  },\n}\n</script>\n\n<style scoped lang=\"scss\">\n:deep(.container) {\n  max-width: 1500px !important;\n}\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateParser.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateParser.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TemplateParser.vue?vue&type=template&id=0f7c2cc6&scoped=true\"\nimport script from \"./TemplateParser.vue?vue&type=script&lang=js\"\nexport * from \"./TemplateParser.vue?vue&type=script&lang=js\"\nimport style0 from \"./TemplateParser.vue?vue&type=style&index=0&id=0f7c2cc6&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"0f7c2cc6\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalOptionCard.vue?vue&type=style&index=0&id=3c0c6bf4&prod&lang=sass&scoped=true\"","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Set` constructor\n// https://tc39.es/ecma262/#sec-set-objects\ncollection('Set', function (init) {\n  return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[(_vm.showDeleteCancelRule)?_c('ModalDeleteCancelRule',{attrs:{\"showModal\":_vm.showDeleteCancelRule,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.titleText)?_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.titleText)+\" \")]},proxy:true}],null,false,2533243878)}):_vm._e(),_c('table',{staticClass:\"table is-fullwidth is-narrow\"},[_c('tbody',[_c('tr',[_c('td',{attrs:{\"scope\":\"row\"}},[(_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_Total')))]):_vm._e(),(!_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_TotalExclTax')))]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.totalExclTax, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency ))+\" \")]),(!_vm.previewOnly)?_c('td',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[_vm._v(\" \")]):_vm._e()]),_vm._l((_vm.taxTotals),function(total,index){return [(total.Total !== 0)?_c('tr',{key:index},[_c('td',{class:{\n              'has-text-warning has-text-weight-bold': total.Percentage === 0,\n            },attrs:{\"scope\":\"row\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_TotalVat'))+\" \"),_c('span',{class:{\n                'has-text-warning has-text-weight-bold':\n                  total.Percentage === 0,\n              }},[_vm._v(_vm._s(total.Percentage)+\"% \")]),(_vm.locationChannelSettings.SplitTaxDeductible && total.Deductible)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_Deductible')))]):_vm._e(),(_vm.locationChannelSettings.SplitTaxDeductible && !total.Deductible)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_NonDeductible')))]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(total.Total, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency ))+\" \")]),(!_vm.previewOnly)?_c('td',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[_vm._v(\" \")]):_vm._e()]):_vm._e()]})],2),(!_vm.reservation.NoTax)?_c('tfoot',[_c('tr',[_c('td',{attrs:{\"scope\":\"row\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_TotalInclTax'))+\" \")]),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\"}},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.totalInclTax, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency ))+\" \")]),(!_vm.previewOnly)?_c('td',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[_vm._v(\" \")]):_vm._e()]),(_vm.reservation.CancelRule)?_c('tr',[_c('td',{staticClass:\"has-text-weight-bold\",attrs:{\"scope\":\"row\"}},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ReservationTotals.Label_CancelRuleApplies' ))+\" \"+_vm._s(_vm.reservation.CancelRule.Percentage)+\"% \"+_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_Of'))+\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.totalInclTax, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency ))+\" \")]),_c('td',{staticClass:\"has-text-left\",attrs:{\"width\":\"100\"}},[_vm._v(\" \")]),(!_vm.previewOnly)?_c('td',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[_c('a',{staticClass:\"is-small\",on:{\"click\":_vm.setShowDeleteCancelRule}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])]):_vm._e()]):_vm._e(),(_vm.reservation.Cancel && _vm.reservation.Cancel.Percentage > 0)?_c('tr',[_c('td',{staticClass:\"has-text-weight-bold\",attrs:{\"scope\":\"row\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_AmountToPay'))+\" \")]),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\"}},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.reservation.AmountToPay, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency ))+\" \")]),(!_vm.previewOnly)?_c('td',{attrs:{\"width\":\"85\"}},[_vm._v(\" \")]):_vm._e()]):_vm._e(),(_vm.reservation.Cancel && _vm.reservation.Cancel.Percentage > 0)?_c('tr',[_c('td',{attrs:{\"colspan\":!_vm.previewOnly ? 2 : 3,\"scope\":\"row\"}},[_c('Message',{attrs:{\"message\":_vm.$t(\n                'Components.Reservation.ReservationTotals.Label_CancelRuleApplies',\n                {\n                  percentage: _vm.reservation.Cancel.Percentage,\n                }\n              ),\"type\":'is-danger'}})],1)]):_vm._e(),(_vm.reservation.TotalPaid > 0)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_TotalPaid'))+\" \")]),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\"}},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.reservation.TotalPaid, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency ))+\" \")]),_c('td',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[_vm._v(\" \")])]):_vm._e(),(_vm.reservation.TotalPaid > 0)?_c('tr',[_c('td',{staticClass:\"has-text-weight-bold\",attrs:{\"scope\":\"row\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationTotals.Label_AmountOpen'))+\" \")]),_c('td',{staticClass:\"has-text-right has-text-weight-bold\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.reservation.TotalOpen, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency ))+\" \")]),(!_vm.previewOnly)?_c('td',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[_vm._v(\" \")]):_vm._e()]):_vm._e()]):_vm._e()])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <ModalDeleteCancelRule\n      v-if=\"showDeleteCancelRule\"\n      :showModal=\"showDeleteCancelRule\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ui-section-header v-if=\"titleText\">\n      <template v-slot:title>{{ titleText }}\n      </template>\n    </ui-section-header>\n\n    <table class=\"table is-fullwidth is-narrow\">\n      <tbody>\n        <tr>\n          <td scope=\"row\">\n            <span v-if=\"reservation.NoTax\">{{ $t('Components.Reservation.ReservationTotals.Label_Total') }}</span>\n            <span v-if=\"!reservation.NoTax\">{{ $t('Components.Reservation.ReservationTotals.Label_TotalExclTax') }}</span>\n          </td>\n          <td class=\"has-text-right\">\n            {{\n              totalExclTax\n                | toCurrency(\n                  locationState.Settings.LanguageCulture,\n                  reservation.Currency\n                )\n            }}\n          </td>\n          <td\n            v-if=\"!previewOnly\"\n            width=\"85\"\n            class=\"is-hidden-print\"\n          >&nbsp;</td>\n        </tr>\n        <template v-for=\"(total, index) in taxTotals\">\n          <tr\n            :key=\"index\"\n            v-if=\"total.Total !== 0\"\n          >\n            <td\n              :class=\"{\n                'has-text-warning has-text-weight-bold': total.Percentage === 0,\n              }\"\n              scope=\"row\"\n            >\n              {{\n                $t('Components.Reservation.ReservationTotals.Label_TotalVat')\n              }}\n              <span :class=\"{\n                  'has-text-warning has-text-weight-bold':\n                    total.Percentage === 0,\n                }\">{{ total.Percentage }}%\n              </span>\n              <span v-if=\"locationChannelSettings.SplitTaxDeductible && total.Deductible\">{{ $t('Components.Reservation.ReservationTotals.Label_Deductible') }}</span>\n              <span v-if=\"locationChannelSettings.SplitTaxDeductible && !total.Deductible\">{{ $t('Components.Reservation.ReservationTotals.Label_NonDeductible') }}</span>\n            </td>\n            <td class=\"has-text-right\">\n              {{\n                total.Total\n                  | toCurrency(\n                    locationState.Settings.LanguageCulture,\n                    reservation.Currency\n                  )\n              }}\n            </td>\n            <td\n              v-if=\"!previewOnly\"\n              width=\"85\"\n              class=\"is-hidden-print\"\n            >&nbsp;</td>\n          </tr>\n        </template>\n      </tbody>\n      <tfoot v-if=\"!reservation.NoTax\">\n        <tr>\n          <td scope=\"row\">\n            {{\n              $t('Components.Reservation.ReservationTotals.Label_TotalInclTax')\n            }}\n          </td>\n          <td\n            width=\"100\"\n            class=\"has-text-right\"\n          >\n            {{\n              totalInclTax\n                | toCurrency(\n                  locationState.Settings.LanguageCulture,\n                  reservation.Currency\n                )\n            }}\n          </td>\n          <td\n            v-if=\"!previewOnly\"\n            width=\"85\"\n            class=\"is-hidden-print\"\n          >&nbsp;</td>\n        </tr>\n\n        <tr v-if=\"reservation.CancelRule\">\n          <td\n            class=\"has-text-weight-bold\"\n            scope=\"row\"\n          >\n            {{\n              $t(\n                'Components.Reservation.ReservationTotals.Label_CancelRuleApplies'\n              )\n            }}\n            {{ reservation.CancelRule.Percentage }}%\n            {{ $t('Components.Reservation.ReservationTotals.Label_Of') }}\n            {{\n              totalInclTax\n                | toCurrency(\n                  locationState.Settings.LanguageCulture,\n                  reservation.Currency\n                )\n            }}\n          </td>\n          <td\n            width=\"100\"\n            class=\"has-text-left\"\n          >&nbsp;</td>\n          <td\n            v-if=\"!previewOnly\"\n            width=\"85\"\n            class=\"is-hidden-print\"\n          >\n            <a\n              @click=\"setShowDeleteCancelRule\"\n              class=\"is-small\"\n            >\n              <span class=\"icon has-text-danger\">\n                <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n              </span>\n            </a>\n          </td>\n        </tr>\n        <tr v-if=\"reservation.Cancel && reservation.Cancel.Percentage > 0\">\n          <td\n            class=\"has-text-weight-bold\"\n            scope=\"row\"\n          >\n            {{\n              $t('Components.Reservation.ReservationTotals.Label_AmountToPay')\n            }}\n          </td>\n          <td\n            width=\"100\"\n            class=\"has-text-right\"\n          >\n            {{\n              reservation.AmountToPay\n                | toCurrency(\n                  locationState.Settings.LanguageCulture,\n                  reservation.Currency\n                )\n            }}\n          </td>\n          <td\n            v-if=\"!previewOnly\"\n            width=\"85\"\n          >&nbsp;</td>\n        </tr>\n        <tr v-if=\"reservation.Cancel && reservation.Cancel.Percentage > 0\">\n          <td\n            :colspan=\"!previewOnly ? 2 : 3\"\n            scope=\"row\"\n          >\n            <Message\n              :message=\"\n                $t(\n                  'Components.Reservation.ReservationTotals.Label_CancelRuleApplies',\n                  {\n                    percentage: reservation.Cancel.Percentage,\n                  }\n                )\n              \"\n              :type=\"'is-danger'\"\n            />\n          </td>\n        </tr>\n\n        <tr v-if=\"reservation.TotalPaid > 0\">\n          <td>\n            {{ $t('Components.Reservation.ReservationTotals.Label_TotalPaid') }}\n          </td>\n          <td\n            width=\"100\"\n            class=\"has-text-right\"\n          >\n            {{\n              reservation.TotalPaid\n                | toCurrency(\n                  locationState.Settings.LanguageCulture,\n                  reservation.Currency\n                )\n            }}\n          </td>\n          <td\n            width=\"85\"\n            class=\"is-hidden-print\"\n          >&nbsp;</td>\n        </tr>\n\n        <tr v-if=\"reservation.TotalPaid > 0\">\n          <td\n            class=\"has-text-weight-bold\"\n            scope=\"row\"\n          >\n            {{\n              $t('Components.Reservation.ReservationTotals.Label_AmountOpen')\n            }}\n          </td>\n          <td class=\"has-text-right has-text-weight-bold\">\n            {{\n              reservation.TotalOpen\n                | toCurrency(\n                  locationState.Settings.LanguageCulture,\n                  reservation.Currency\n                )\n            }}\n          </td>\n          <td\n            v-if=\"!previewOnly\"\n            width=\"85\"\n            class=\"is-hidden-print\"\n          >&nbsp;</td>\n        </tr>\n      </tfoot>\n    </table>\n  </div>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\n\nconst Message = () => import('@/components/UI/Message')\nconst ModalDeleteCancelRule = () =>\n  import('@/components/Reservations/ModalDeleteCancelRule')\n\nexport default {\n  components: {\n    Message,\n    ModalDeleteCancelRule,\n  },\n\n  props: {\n    previewOnly: {\n      default: false,\n      type: Boolean,\n    },\n\n    languageCulture: {\n      type: String,\n      default: 'nl-NL',\n    },\n\n    titleText: {\n      type: String,\n      default: ''\n    },\n\n    reservation: {\n      type: Object,\n      deafault: null\n    },\n\n    reservationDate: {\n      type: Object,\n      deafault: null\n    }\n  },\n\n  data() {\n    return {\n      showDeleteCancelRule: false,\n      taxValues: [],\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    //...mapState('reservationStore', ['reservation']),\n\n    locationChannelSettings() {\n      let settings = null\n\n      if (this.locationState && this.locationState.Channels.length > 0) {\n        settings = this.locationState.Channels.find(ls => ls.ChannelId === this.reservation.ChannelId)\n      }\n\n      return settings\n    },\n\n    totalExclTax() {\n      let total = this.reservation.TotalExclTax\n\n      if (this.reservationDate) {\n        total = this.reservationDate.TotalExclTax\n      }\n\n      return total\n    },\n\n    totalInclTax() {\n      let total = this.reservation.TotalInclTax\n\n      if (this.reservationDate) {\n        total = this.reservationDate.TotalInclTax\n      }\n\n      return total\n    },\n\n    taxTotals() {\n      let totals = this.reservation.TaxTotals\n\n      if (!this.locationChannelSettings?.SplitTaxDeductible) {\n\n      }\n\n      if (this.reservationDate) {\n        totals = this.reservationDate.TaxTotals\n      }\n\n      return totals\n    }\n  },\n\n  methods: {\n    roundToZero(num) {\n      let self = this\n      return +(Math.round(self.roundToTwo(num) + 'e+0') + 'e-0')\n    },\n\n    roundToTwo(num) {\n      return +(Math.round(num + 'e+2') + 'e-2')\n    },\n\n    setShowDeleteCancelRule() {\n      this.showDeleteCancelRule = true\n    },\n\n    hideModal() {\n      this.showDeleteCancelRule = false\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationTotals.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationTotals.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationTotals.vue?vue&type=template&id=ed89518a\"\nimport script from \"./ReservationTotals.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationTotals.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":\"\",\"isSaving\":_vm.isSaving,\"isSavingSuccess\":_vm.isSavingSuccess,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError || _vm.isSavingSuccess,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.addCartDate,\"showModal\":_vm.showModal,\"disableSaveButton\":_vm.showDateAlreadyExistsWarning,\"modalSize\":'large'},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{staticClass:\"field-date field has-text-centered\"},[_c('v-date-picker',{attrs:{\"mode\":\"single\",\"from-page\":_vm.openCalendarMonth,\"columns\":3,\"is-inline\":true,\"is-required\":true,\"disabled-dates\":_vm.disabledDates},on:{\"dayclick\":_vm.checkDate},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}})],1),(_vm.showDateAlreadyExistsWarning)?_c('div',[_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.CopyDate.warning_DuplicateDate'),\"type\":\"is-danger\"}})],1):_vm._e()]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    modalTitle=''\n    :isSaving='isSaving'\n    :isSavingSuccess='isSavingSuccess'\n    :isSavingError='isSavingError'\n    :hideFooterButtons='isSavingError || isSavingSuccess'\n    :onClickCancel='onClickCancel'\n    :onClickSave='addCartDate'\n    :showModal='showModal'\n    :disableSaveButton=\"showDateAlreadyExistsWarning\"\n    :modalSize=\"'large'\"\n    @closeModal='onClickCancel'\n  >\n    <template slot='modalTitle'></template>\n    <template v-slot:content>\n      <div class=\"field-date field has-text-centered\">\n        <v-date-picker\n          mode=\"single\"\n          v-model=\"date\"\n          :from-page=\"openCalendarMonth\"\n          :columns=\"3\"\n          :is-inline=\"true\"\n          :is-required=\"true\"\n          :disabled-dates=\"disabledDates\"\n          @dayclick=\"checkDate\"\n        >\n        </v-date-picker>\n      </div>\n\n      <div v-if=\"showDateAlreadyExistsWarning\">\n        <Message\n          :message=\"$t('Components.Reservation.CopyDate.warning_DuplicateDate')\"\n          type=\"is-danger\"\n        />\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\nimport { format, parseISO } from 'date-fns'\n\nimport VCalendar from 'v-calendar'\nVue.use(VCalendar, {})\n\nexport default {\n  components: {\n    Message: () => import('@/components/UI/Message')\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true\n    },\n\n    reservationDate: {\n      default: null,\n      type: Object,\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      date: new Date(),\n      showDateAlreadyExistsWarning: false,\n      openCalendarMonth: { month: new Date().getMonth(), year: new Date().getFullYear() },\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n\n    disabledDays() {\n      let dates = []\n\n      if (this.reservation && this.reservation.Dates) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let resDate = this.reservation.Dates[i]\n\n          dates.push(parseISO(resDate.Date))\n        }\n      }\n\n      return dates\n    },\n\n    disabledDates() {\n      let dates = []\n\n      if (this.reservation && this.reservation.Dates) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let resDate = this.reservation.Dates[i]\n\n          dates.push({\n            start: parseISO(resDate.Date),\n            end: parseISO(resDate.Date)\n          })\n        }\n      }\n\n      if (this.reservation.SetId > 0) {\n        for (let i = 0; i < this.reservation.ReservationSet.filter(r => r.Status !== 'Cancelled').length; i++) {\n          let set = this.reservation.ReservationSet[i]\n\n          dates.push({\n            start: parseISO(set.Date),\n            end: parseISO(set.Date)\n          })\n        }\n      }\n\n      return dates\n    },\n  },\n\n  created() {\n    let firstDate = this.reservation.Dates[0];\n\n    this.date = parseISO(this.reservationDate.Date);\n    this.openCalendarMonth.month = this.date.getMonth();\n    this.openCalendarMonth.year = this.date.getFullYear();\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    checkDate(val) {\n      this.showDateAlreadyExistsWarning = false;\n\n      let disabledDatesIndex = this.disabledDates.findIndex((d) => {\n        return format(d.start, 'yyyy-MM-dd') === format(val.date, 'yyyy-MM-dd')\n      })\n      if (disabledDatesIndex > -1) {\n        this.showDateAlreadyExistsWarning = true;\n        return;\n      }\n\n      let duplicateDateIndex = this.disabledDays.findIndex(item => { return this.$options.filters.dateObjectIsoDateString(item) === this.$options.filters.dateObjectIsoDateString(val.date) });\n      if (duplicateDateIndex > -1) {\n        this.showDateAlreadyExistsWarning = true;\n      }\n    },\n\n    addCartDate() {\n      if (!this.isSaving) {\n        this.isSaving = true\n\n        let criteria = {\n          Date: this.$options.filters.dateObjectIsoDateString(this.date),\n          TotalSeats: 0\n        }\n\n        reservationProvider.methods\n          .addReservationDate(this.reservation.Key, criteria)\n          .then(response => {\n            if (response.status === 200) {\n              // Update reservation store\n              this.setReservation(response.data)\n\n              // Trigger success animation\n              this.isSavingSuccess = true\n\n              // Send message to be shown as toast on page\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: 'Date added',\n              })\n\n              // Set timer to self close the modal after 1.5 seconds\n              this.onClickCancel()\n            }\n          })\n          .finally(() => {\n\n          })\n      }\n    }\n  }\n}\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalAddDate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalAddDate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalAddDate.vue?vue&type=template&id=738817d6\"\nimport script from \"./ModalAddDate.vue?vue&type=script&lang=js\"\nexport * from \"./ModalAddDate.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar $ = require('../internals/export');\nvar symmetricDifference = require('../internals/set-symmetric-difference');\nvar setMethodGetKeysBeforeCloning = require('../internals/set-method-get-keys-before-cloning-detection');\nvar setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');\n\nvar FORCED = !setMethodAcceptSetLike('symmetricDifference') || !setMethodGetKeysBeforeCloning('symmetricDifference');\n\n// `Set.prototype.symmetricDifference` method\n// https://tc39.es/ecma262/#sec-set.prototype.symmetricdifference\n$({ target: 'Set', proto: true, real: true, forced: FORCED }, {\n  symmetricDifference: symmetricDifference\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar difference = require('../internals/set-difference');\nvar fails = require('../internals/fails');\nvar setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');\n\nvar SET_LIKE_INCORRECT_BEHAVIOR = !setMethodAcceptSetLike('difference', function (result) {\n  return result.size === 0;\n});\n\nvar FORCED = SET_LIKE_INCORRECT_BEHAVIOR || fails(function () {\n  // https://bugs.webkit.org/show_bug.cgi?id=288595\n  var setLike = {\n    size: 1,\n    has: function () { return true; },\n    keys: function () {\n      var index = 0;\n      return {\n        next: function () {\n          var done = index++ > 1;\n          if (baseSet.has(1)) baseSet.clear();\n          return { done: done, value: 2 };\n        }\n      };\n    }\n  };\n  // eslint-disable-next-line es/no-set -- testing\n  var baseSet = new Set([1, 2, 3, 4]);\n  // eslint-disable-next-line es/no-set-prototype-difference -- testing\n  return baseSet.difference(setLike).size !== 3;\n});\n\n// `Set.prototype.difference` method\n// https://tc39.es/ecma262/#sec-set.prototype.difference\n$({ target: 'Set', proto: true, real: true, forced: FORCED }, {\n  difference: difference\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\nvar stringIndexOf = uncurryThis(''.indexOf);\n\n// `String.prototype.includes` method\n// https://tc39.es/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n  includes: function includes(searchString /* , position = 0 */) {\n    return !!~stringIndexOf(\n      toString(requireObjectCoercible(this)),\n      toString(notARegExp(searchString)),\n      arguments.length > 1 ? arguments[1] : undefined\n    );\n  }\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation && _vm.reservationDate)?_c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"showDrawer\":_vm.showSideDrawer,\"drawerTitle\":_vm.drawerTitle,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":_vm.drawerSize},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showAddSpace)?_c('AddSpace',{attrs:{\"showModal\":_vm.showAddSpace,\"channelId\":_vm.reservation.ChannelId,\"locationId\":_vm.reservation.LocationId,\"showDateInput\":false,\"startDate\":_vm.$options.filters.parseIsoDateStringToDate(_vm.reservationDate.Date),\"startMinutes\":_vm.resStart,\"endDate\":_vm.$options.filters.parseIsoDateStringToDate(_vm.reservationDate.Date),\"endMinutes\":_vm.resEnd,\"seats\":Number(_vm.reservation.TotalSeats),\"voucherId\":_vm.reservation.VoucherId},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showEditSpace)?_c('EditSpace',{attrs:{\"showModal\":_vm.showEditSpace,\"onClickCancel\":_vm.hideModal,\"channelId\":_vm.reservation.ChannelId,\"isEmployee\":_vm.isEmployee,\"locationId\":_vm.reservation.LocationId,\"meetingtypeId\":_vm.reservation.MeetingtypeId,\"space\":_vm.selectedSpace,\"index\":_vm.selectedSpace.Index},on:{\"spaceEdited\":_vm.spaceEdited,\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showSpaceSummary)?_c('SpaceSummary',{attrs:{\"spaceId\":_vm.selectedSpace.SpaceId,\"meetingtypeId\":_vm.reservation.MeetingtypeId}}):_vm._e()]},proxy:true}],null,false,1710099828)}):_vm._e(),(_vm.showDeleteSpace)?_c('ModalDeleteSpace',{attrs:{\"showModal\":_vm.showDeleteSpace,\"space\":_vm.selectedSpace,\"onClickCancel\":_vm.hideModal,\"reservationDate\":_vm.reservationDate}}):_vm._e(),_c('ui-section-header',{attrs:{\"showAdd\":!_vm.isLocked && _vm.reservation.MeetingtypeId === 1,\"addFunction\":_vm.setShowAddSpace,\"addLabel\":_vm.$t('Components.Reservation.ReservationMeetingspace.Icon_AddMeetingspace'),\"showEdit\":!_vm.isLocked && _vm.reservation.MeetingtypeId === 1 && _vm.resSpaces.length > 0,\"editFunction\":_vm.setMoveSpace,\"editLabel\":_vm.$t('Components.Reservation.ReservationMeetingspace.Icon_ChangeSpace')},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationMeetingspace.Subtitle_Spaces')))]},proxy:true}],null,false,3101529922)}),(_vm.resSpaces.length === 0)?_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationMeetingspace.Text_NoSpacesAdded')}}):_vm._e(),(_vm.resSpaces.length > 0)?_c('div',[_c('table',{staticClass:\"table is-fullwidth is-narrow\",class:{'is-hoverable': !_vm.previewOnly}},[_c('thead',[_c('tr',[_c('th',{staticClass:\"has-text-left\",attrs:{\"width\":\"75\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Quantity'))+\" \")]),_c('th',{attrs:{\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationMeetingspace.Table_Name'))+\" \")]),_c('th',{attrs:{\"width\":\"250px\"}},[_vm._v(\" \")]),_c('th',{attrs:{\"width\":\"150\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ReservationMeetingspace.Table_Setting' ))+\" \")]),(_vm.resMultiDate)?_c('th',{attrs:{\"width\":\"100\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Date'))+\" \")]):_vm._e(),_c('th',{attrs:{\"width\":\"100\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Time'))+\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"100px\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Price'))+\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"100px\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Total'))+\" \")]),(!_vm.previewOnly)?_c('th',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85px\"}},[_vm._v(\" \")]):_vm._e()])]),_c('tbody',_vm._l((_vm.resSpaces),function(meetingspace,index){return _c('tr',{key:'sId' + meetingspace.Id + '_' + index,class:{\n            'has-background-success-light': !_vm.previewOnly && meetingspace.UseInTotalSeats\n          }},[_c('td',{staticClass:\"has-text-left\"},[_vm._v(\"1x\")]),_c('td',{attrs:{\"scope\":\"row\"}},[(!_vm.previewOnly)?_c('span',{staticClass:\"icon-text\"},[_c('span',[_vm._v(_vm._s(meetingspace.SpaceName))]),(!_vm.isDraft)?_c('a',{staticClass:\"is-hidden-print\",on:{\"click\":function($event){return _vm.setShowSpaceSummary(meetingspace)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1)]):_vm._e()]):_c('span',[_vm._v(_vm._s(meetingspace.SpaceName))]),(meetingspace.Id > 0 && !_vm.isDraft)?_c('div',[_c('Notes',{attrs:{\"locationId\":_vm.reservation.LocationId,\"typeId\":'ReservationSpace',\"itemId\":meetingspace.Id,\"notes\":meetingspace.Notes,\"showNoNotesMessage\":false,\"showAddLinkLeft\":true,\"showShareLink\":false,\"showNoteVisibility\":true,\"linkTypeId\":'Reservation',\"linkItemId\":_vm.reservation.Id,\"getFresh\":false,\"viewType\":_vm.isEmployee ? 'small' : 'minimal'}})],1):_vm._e()]),_c('td',[_vm._v(_vm._s(_vm.getVoucherName(meetingspace)))]),(_vm.reservation.MeetingtypeId === 1)?_c('td',[_vm._v(\" \"+_vm._s(meetingspace.Seats)+\"x \"+_vm._s(_vm._f(\"getSettingName\")(meetingspace.SettingId))+\" \")]):_vm._e(),(_vm.resMultiDate)?_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"dateFormat\")(_vm._f(\"parseIsoDateStringToDate\")(meetingspace.StartDate),_vm.$i18n.locale))+\" \")]):_vm._e(),_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.getStartMinutes(meetingspace)))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.getEndMinutes(meetingspace)))+\" \")]),_c('td',{staticClass:\"has-text-right\"},[(!meetingspace.InPackage)?_c('span',{staticClass:\"icon-text\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(meetingspace.PricePerSeat,_vm.$i18n.locale, _vm.reservation.Currency)))]),(meetingspace.CalculationType === 'Unknown')?_c('span',{staticClass:\"icon has-text-danger\",attrs:{\"title\":_vm.$t('Prices.NoPrice')}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1):_vm._e()]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[(!meetingspace.InPackage)?_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(meetingspace.PriceTotal, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency )))]):_vm._e(),(!meetingspace.InPackage)?_c('div',{staticClass:\"is-size-7 is-italic\",class:{\n                'has-text-danger has-text-weight-bold':\n                  meetingspace.TaxPercentage === 0,\n              }},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Tax'))+\" \"+_vm._s(meetingspace.TaxPercentage)+\"%\")]):_vm._e()]),(!_vm.previewOnly)?_c('td',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"75\"}},[_c('div',{staticClass:\"field is-grouped is-grouped-right\"},[(!_vm.isLocked)?_c('p',{staticClass:\"control\"},[(_vm.isEmployee && _vm.reservation.MeetingtypeId === 1)?_c('a',{staticClass:\"has-tooltip-arrow has-tooltip-multiline has-tooltip-left\",style:({ overflow: 'visible' }),attrs:{\"data-tooltip\":_vm.$t(\n                      'Components.Reservation.ReservationMeetingspace.Tooltip_Lock'\n                    )},on:{\"click\":function($event){return _vm.setSpaceLock(meetingspace)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":[\n                        'fas',\n                        meetingspace.IsLocked ? 'lock' : 'lock-open',\n                      ]}})],1)]):_vm._e()]):_vm._e(),(!_vm.isLocked)?_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.setShowEditSpace(meetingspace, index)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)])]):_vm._e(),(!_vm.isLocked && !meetingspace.IsLocked && _vm.resSpaces.length !== 1 && (!meetingspace.UseInTotalSeats || _vm.spacesInTotalSeatsCount > 1))?_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.setShowDeleteSpace(meetingspace, index)}}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])]):_vm._e()])]):_vm._e()])}),0),(_vm.showSpacesSubTotal)?_c('tfoot',[_c('tr',[_c('td',{staticClass:\"has-text-right\",attrs:{\"colspan\":_vm.resMultiDate ? 7 : 6},domProps:{\"textContent\":_vm._s(\n              _vm.$t(\n                'Components.Reservation.ReservationMeetingspace.Table_Subtotal'\n              )\n            )}}),_c('td',{staticClass:\"has-text-right\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.total, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency )))])]),(!_vm.previewOnly)?_c('td',[_vm._v(\" \")]):_vm._e()])]):_vm._e()])]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[(_vm.activeVouchers.length > 0)?_c('div',{staticClass:\"mb-4\"},[_vm._v(\" Currency \"),_c('div',{staticClass:\"select mb-4\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedVoucherId),expression:\"selectedVoucherId\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selectedVoucherId=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{domProps:{\"value\":0}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalAddSpace.Label_NoVoucherPackage')))]),_vm._l((_vm.activeVouchers),function(voucher,index){return _c('option',{key:index,domProps:{\"value\":voucher.voucherId}},[_vm._v(\"[\"+_vm._s(voucher.type)+\"] \"+_vm._s(voucher.name))])})],2)])]):_vm._e(),(!_vm.spacesNeedingAttention)?_c('CheckAvailability',{attrs:{\"isEmployee\":_vm.isEmployee,\"channelId\":_vm.channelId,\"locationId\":_vm.locationId,\"meetingtypeId\":_vm.meetingtypeId,\"showDateInput\":_vm.showDateInput,\"startDate\":_vm.startDate,\"endDate\":_vm.endDate,\"startTime\":_vm.startMinutes,\"endTime\":_vm.endMinutes,\"voucherId\":_vm.selectedVoucherId,\"selectedSpaces\":_vm.spaces},on:{\"callbackShowSelectedSpaces\":(val) => (_vm.showSelectedSpaces = val)}}):_vm._e(),(_vm.warnings.length > 0)?_c('div',_vm._l((_vm.warnings),function(warning,index){return _c('Message',{key:index,attrs:{\"type\":'is-warning',\"message\":warning}})}),1):_vm._e(),(_vm.spacesNeedingAttention)?_c('article',{staticClass:\"message is-danger\"},[_c('div',{staticClass:\"message-body\"},[_c('div',{staticClass:\"mb-3\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalAddSpace.Warning_NoPriceDate')))]),_c('table',{staticClass:\"table is-fullwidth is-narrow has-background-danger-light\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalAddSpace.Table_Name')))]),_c('th',{attrs:{\"width\":\"125\"}}),_c('th',{attrs:{\"width\":\"25\"}},[_vm._v(\" \")])])]),_c('tbody',_vm._l((_vm.spaces.filter(s => s.CalculationType === 'Unknown')),function(space,index){return _c('tr',{key:index},[_c('td',[_vm._v(_vm._s(space.SpaceName))]),_c('td',[_c('div',{staticClass:\"select is-small\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(space.CalculationType),expression:\"space.CalculationType\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(space, \"CalculationType\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option',{domProps:{\"value\":'Unknown'}},[_vm._v(_vm._s(_vm.$t('Prices.SelectPriceType')))]),_vm._l((_vm.priceTypes),function(priceType){return _c('option',{key:priceType.Id,domProps:{\"value\":priceType.PriceType}},[_vm._v(_vm._s(_vm.$t('Prices.' + priceType.PriceType)))])})],2)])]),_c('td',{staticClass:\"has-text-right\"},[_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.removeSelectedSpace(index)}}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])])])}),0)])])]):_vm._e(),(_vm.meetingtypeId === 1 && _vm.spaces.length > 0 && _vm.showSelectedSpaces && !_vm.spacesNeedingAttention)?_c('table',{staticClass:\"table is-fullwidth is-striped is-small is-hoverable\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddSpace.Table_SpaceSettings'))+\" \")]),_c('th',{attrs:{\"width\":\"125px\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddSpace.Table_Time'))+\" \")]),_c('th',{attrs:{\"width\":\"200px\"}},[_vm._v(\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"75px\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddSpace.Table_Tax'))+\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"125\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddSpace.Table_Price'))+\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"125\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddSpace.Table_Total'))+\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"150\"}},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalAddSpace.Table_UpdateTotalSeats' ))+\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"25\"}},[_vm._v(\" \")])])]),_c('tbody',_vm._l((_vm.spaces),function(space,index){return _c('tr',{key:index,staticClass:\"has-text-vertical-middle\"},[_c('td',[_vm._v(\" \"+_vm._s(space.SpaceName)),_c('br'),_c('span',{staticClass:\"has-text-grey\"},[_vm._v(_vm._s(space.Seats)+\"x \"+_vm._s(_vm._f(\"getSettingName\")(space.SettingId)))])]),_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(space.StartMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(space.EndMinutes))+\" \")]),_c('td',[(space.PackageId > 0 || space.VoucherId > 0)?_c('div',[(space.PackageId > 0)?_c('span',[_vm._v(_vm._s(_vm.getVoucherName(space.PackageId)))]):_vm._e(),(space.VoucherId > 0)?_c('span',[_vm._v(_vm._s(_vm.getVoucherName(space.VoucherId)))]):_vm._e()]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[(!_vm.locationState.Settings.ShowTaxEditReservation)?_c('div',[_vm._v(\" \"+_vm._s(space.TaxPercentage)+\"% \")]):_vm._e(),(_vm.locationState.Settings.ShowTaxEditReservation)?_c('div',{staticClass:\"select is-small\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(space.TaxPercentage),expression:\"space.TaxPercentage\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(space, \"TaxPercentage\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},_vm._l((_vm.taxPercentages),function(taxPercentage){return _c('option',{key:taxPercentage,domProps:{\"value\":taxPercentage,\"selected\":taxPercentage === space.TaxPercentage}},[_vm._v(\" \"+_vm._s(taxPercentage)+\"% \")])}),0)]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[(_vm.isEmployee && space.PackageId === 0)?_c('div',{staticClass:\"field has-addons is-small\"},[_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"button is-static is-small\"},[_vm._v(_vm._s(_vm._f(\"currencySymbol\")(space.Currency,_vm.$i18n.locale)))])]),_c('p',{staticClass:\"control\"},[_c('InputNumeric',{staticClass:\"is-small\",class:{\n                  'is-danger': String(space.PricePerSeat).length === 0,\n                },on:{\"change\":function($event){return _vm.updateCrcValue(space)},\"keyup\":function($event){_vm.delay(_vm.updateCrcValue(space), 200)}},model:{value:(space.PricePerSeat),callback:function ($$v) {_vm.$set(space, \"PricePerSeat\", _vm._n($$v))},expression:\"space.PricePerSeat\"}})],1)]):_vm._e(),(!_vm.isEmployee && space.PackageId === 0)?_c('div',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(space.PricePerSeat, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency ))+\" \")]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.calculateTotalPrice(space), _vm.locationState.Settings.LanguageCulture, space.Currency ))+\" \")]),_c('td',{staticClass:\"has-text-right\"},[_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(space.UseInTotalSeats),expression:\"space.UseInTotalSeats\"}],class:{ 'is-disabled' : space.PackageId > 0 },attrs:{\"type\":\"checkbox\",\"disabled\":space.PackageId > 0},domProps:{\"checked\":Array.isArray(space.UseInTotalSeats)?_vm._i(space.UseInTotalSeats,null)>-1:(space.UseInTotalSeats)},on:{\"change\":function($event){var $$a=space.UseInTotalSeats,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(space, \"UseInTotalSeats\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(space, \"UseInTotalSeats\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(space, \"UseInTotalSeats\", $$c)}}}})])]),_c('td',[_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.removeSelectedSpace(index)}}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])])])}),0)]):_vm._e(),(_vm.showSelectedSpaces && !_vm.spacesNeedingAttention)?_c('div',{staticClass:\"buttons is-right mt-6\"},[(!_vm.isSaving)?_c('a',{staticClass:\"button is-ghost has-margin-right\",attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.closeDrawer}},[_vm._v(_vm._s(_vm.$t('Form.Control.Cancel')))]):_vm._e(),_c('a',{staticClass:\"button is-large\",class:[\n      !_vm.isSaving && !_vm.disableSaveButton ? 'is-primary' : '',\n      {\n        'is-loading': _vm.isSaving,\n        'is-disabled': _vm.isSaving || _vm.disableSaveButton,\n      },\n    ],attrs:{\"disabled\":_vm.isSaving || _vm.disableSaveButton},on:{\"click\":_vm.addReservationSpaces}},[_vm._v(\" \"+_vm._s(_vm.$t('Form.Control.Save'))+\" \")])]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <div v-if=\"activeVouchers.length > 0\" class=\"mb-4\">\n      Currency\n    \n      <div class=\"select mb-4\">\n        <select v-model=\"selectedVoucherId\">\n          <option :value=\"0\">{{ $t('Components.Reservation.ModalAddSpace.Label_NoVoucherPackage') }}</option>\n          <option v-for=\"(voucher, index) in activeVouchers\" :key=\"index\" :value=\"voucher.voucherId\">[{{ voucher.type }}] {{ voucher.name }}</option>\n        </select>\n      </div>\n    </div>\n\n    <CheckAvailability \n      :isEmployee=\"isEmployee\" \n      :channelId=\"channelId\" \n      :locationId=\"locationId\"\n      :meetingtypeId=\"meetingtypeId\" \n      :showDateInput=\"showDateInput\" \n      :startDate=\"startDate\" \n      :endDate=\"endDate\"\n      :startTime=\"startMinutes\" \n      :endTime=\"endMinutes\" \n      :voucherId=\"selectedVoucherId\" \n      :selectedSpaces=\"spaces\"\n      @callbackShowSelectedSpaces=\"(val) => (showSelectedSpaces = val)\" v-if=\"!spacesNeedingAttention\" />\n\n    <div v-if=\"warnings.length > 0\">\n      <Message v-for=\"(warning, index) in warnings\" :key=\"index\" :type=\"'is-warning'\" :message=\"warning\" />\n    </div>\n\n    <article v-if=\"spacesNeedingAttention\" class=\"message is-danger\">\n      <div class=\"message-body\">\n        <div class=\"mb-3\">{{ $t('Components.Reservation.ModalAddSpace.Warning_NoPriceDate') }}</div>\n\n        <table class=\"table is-fullwidth is-narrow has-background-danger-light\">\n          <thead>\n            <tr>\n              <th>{{ $t('Components.Reservation.ModalAddSpace.Table_Name') }}</th>\n              <th width=\"125\"></th>\n              <th width=\"25\">&nbsp;</th>\n            </tr>\n          </thead>\n          <tbody>\n            <tr v-for=\"(space, index) in spaces.filter(s => s.CalculationType === 'Unknown')\" :key=\"index\">\n              <td>{{ space.SpaceName }}</td>\n              <td>\n                <div class=\"select is-small\">\n                  <select v-model=\"space.CalculationType\">\n                    <option :value=\"'Unknown'\">{{ $t('Prices.SelectPriceType') }}</option>\n                    <option v-for=\"priceType in priceTypes\" :key=\"priceType.Id\" :value=\"priceType.PriceType\">{{\n                      $t('Prices.' + priceType.PriceType) }}</option>\n                  </select>\n                </div>\n              </td>\n              <td class=\"has-text-right\">\n                <p class=\"control\">\n                  <a @click=\"removeSelectedSpace(index)\">\n                    <span class=\"icon has-text-danger\">\n                      <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                    </span>\n                  </a>\n                </p>\n              </td>\n            </tr>\n          </tbody>\n        </table>\n      </div>\n    </article>\n\n    <table v-if=\"meetingtypeId === 1 && spaces.length > 0 && showSelectedSpaces && !spacesNeedingAttention\"\n      class=\"table is-fullwidth is-striped is-small is-hoverable\">\n      <thead>\n        <tr>\n          <th>\n            {{\n              $t('Components.Reservation.ModalAddSpace.Table_SpaceSettings')\n            }}\n          </th>\n          <th width=\"125px\">\n            {{ $t('Components.Reservation.ModalAddSpace.Table_Time') }}\n          </th>\n          <th width=\"200px\">&nbsp;</th>\n          <th width=\"75px\" class=\"has-text-right\">\n            {{ $t('Components.Reservation.ModalAddSpace.Table_Tax') }}\n          </th>\n          <th width=\"125\" class=\"has-text-right\">\n            {{ $t('Components.Reservation.ModalAddSpace.Table_Price') }}\n          </th>\n          <th width=\"125\" class=\"has-text-right\">\n            {{ $t('Components.Reservation.ModalAddSpace.Table_Total') }}\n          </th>\n          <th width=\"150\" class=\"has-text-right\">\n            {{\n              $t(\n                'Components.Reservation.ModalAddSpace.Table_UpdateTotalSeats'\n              )\n            }}\n          </th>\n          <th width=\"25\" class=\"has-text-right\">&nbsp;</th>\n        </tr>\n      </thead>\n      <tbody>\n        <tr v-for=\"(space, index) in spaces\" :key=\"index\" class=\"has-text-vertical-middle\">\n          <td>\n            {{ space.SpaceName }}<br />\n            <span class=\"has-text-grey\">{{ space.Seats }}x {{ space.SettingId | getSettingName }}</span>\n          </td>\n          <td>\n            {{ space.StartMinutes | minutesToTime }} -\n            {{ space.EndMinutes | minutesToTime }}\n          </td>\n\n          <td>\n            <div v-if=\"space.PackageId > 0 || space.VoucherId > 0\">\n              <span v-if=\"space.PackageId > 0\">{{ getVoucherName(space.PackageId) }}</span>\n              <span v-if=\"space.VoucherId > 0\">{{ getVoucherName(space.VoucherId) }}</span>\n            </div>\n          </td>\n\n          <td class=\"has-text-right\">\n            <div v-if=\"!locationState.Settings.ShowTaxEditReservation\">\n              {{ space.TaxPercentage }}%\n            </div>\n            <div class=\"select is-small\" v-if=\"locationState.Settings.ShowTaxEditReservation\">\n              <select v-model=\"space.TaxPercentage\">\n                <option v-for=\"taxPercentage in taxPercentages\" :key=\"taxPercentage\" :value=\"taxPercentage\"\n                  :selected=\"taxPercentage === space.TaxPercentage\">\n                  {{ taxPercentage }}%\n                </option>\n              </select>\n            </div>\n          </td>\n\n          <td class=\"has-text-right\">\n            <div v-if=\"isEmployee && space.PackageId === 0\" class=\"field has-addons is-small\">\n              <p class=\"control\">\n                <a class=\"button is-static is-small\">{{ space.Currency | currencySymbol($i18n.locale) }}</a>\n              </p>\n              <p class=\"control\">\n                <InputNumeric v-model.number=\"space.PricePerSeat\" @change=\"updateCrcValue(space)\"\n                  @keyup=\"delay(updateCrcValue(space), 200)\" class=\"is-small\" :class=\"{\n                    'is-danger': String(space.PricePerSeat).length === 0,\n                  }\" />\n              </p>\n            </div>\n            <div v-if=\"!isEmployee && space.PackageId === 0\">\n              {{\n                space.PricePerSeat\n                | toCurrency(\n                  locationState.Settings.LanguageCulture,\n                  reservation.Currency\n                )\n              }}\n            </div>\n          </td>\n          <td class=\"has-text-right\">\n            {{\n              calculateTotalPrice(space)\n              | toCurrency(\n                locationState.Settings.LanguageCulture,\n                space.Currency\n              )\n            }}\n          </td>\n          <td class=\"has-text-right\">\n            <label>\n              <input type=\"checkbox\" v-model=\"space.UseInTotalSeats\" :class=\"{ 'is-disabled' : space.PackageId > 0 }\" :disabled=\"space.PackageId > 0\" /> <!-- :disabled=\"space.PackageId > 0\" -->\n            </label>\n          </td>\n          <td>\n            <p class=\"control\">\n              <a @click=\"removeSelectedSpace(index)\">\n                <span class=\"icon has-text-danger\">\n                  <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                </span>\n              </a>\n            </p>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n\n    <div v-if=\"showSelectedSpaces && !spacesNeedingAttention\" class=\"buttons is-right mt-6\">\n      <a v-if=\"!isSaving\" @click=\"closeDrawer\" class=\"button is-ghost has-margin-right\" :disabled=\"isSaving\">{{\n        $t('Form.Control.Cancel') }}</a>\n      <a @click=\"addReservationSpaces\" class=\"button is-large\" :class=\"[\n        !isSaving && !disableSaveButton ? 'is-primary' : '',\n        {\n          'is-loading': isSaving,\n          'is-disabled': isSaving || disableSaveButton,\n        },\n      ]\" :disabled=\"isSaving || disableSaveButton\">\n        {{ $t('Form.Control.Save') }}\n      </a>\n    </div>\n\n  </div>\n</template>\n\n<script>\nimport { EventBus } from '@/eventbus/event-bus'\nimport { mapState, mapMutations } from 'vuex'\nimport crcProvider from '@/providers/crc'\nimport reservationProvider from '@/providers/reservation'\nimport InputNumeric from '../UI/Form/InputNumeric'\nimport { format, parseISO } from 'date-fns'\nimport ModalAddReservationMailText from '../Settings/Reservations/ModalAddReservationMailText.vue'\n\nconst CheckAvailability = () =>\n  import('@/components/Availability/CheckAvailability')\n\nexport default {\n  components: {\n    CheckAvailability,\n    InputNumeric,\n  },\n\n  props: {\n    autoSearch: {\n      default: false,\n      type: Boolean,\n    },\n    canChangeDate: {\n      default: false,\n      type: Boolean,\n    },\n    channelId: {\n      default: 0,\n      type: Number,\n    },\n    countryId: {\n      default: 0,\n      type: Number,\n    },\n    endDate: {\n      default: function () {\n        return new Date()\n      },\n      type: Date,\n    },\n    endMinutes: {\n      default: 1020,\n      type: Number,\n    },\n    locationId: {\n      default: 0,\n      type: Number,\n    },\n    meetingtypeId: {\n      default: 1,\n      type: Number,\n    },\n    seats: {\n      default: 1,\n      type: Number,\n    },\n    voucherId: {\n      default: 0,\n      type: Number,\n    },\n    settingId: {\n      default: 0,\n      type: Number,\n    },\n    showDateInput: {\n      default: false,\n      type: Boolean,\n    },\n    startDate: {\n      default: function () {\n        return new Date()\n      },\n      type: Date,\n    },\n    startMinutes: {\n      default: 540,\n      type: Number,\n    }\n  },\n\n  data() {\n    return {\n      isSaving: false,\n      isSavingError: false,\n      showSelectedSpaces: false,\n      responseMessage: '',\n      selectedVoucherId: 0,\n      spaces: [],\n      warnings: []\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('profileStore', ['profileState']),\n    ...mapState('reservationStore', ['reservation']),\n\n    isEmployee() {\n      let employee = false;\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true;\n      }\n\n      return employee;\n    },\n\n    disableSaveButton() {\n      return (this.spaces.length === 0 || this.isSearching);\n    },\n\n    activeVouchers() {\n      let vouchers = [];\n\n      let voucher = this.reservation.Voucher;\n\n      if (this.reservation) {\n        if (voucher && voucher.ApplySeatRebate) {\n          vouchers.push({\n            voucherId: this.reservation.VoucherId,\n            name: this.reservation.Voucher?.Name,\n            type: 'Voucher'\n          })\n        }\n\n        let resDate = this.reservation.Dates.find(d => d.Date === format(this.startDate, 'yyyy-MM-dd'));\n        if (resDate) {\n          for (let i = 0; i < resDate.Packages.length; i++) {\n            let pack = resDate.Packages[i];\n            vouchers.push({\n              voucherId: pack.PackageId,\n              name: pack.PackageName,\n              type: 'Package'\n            })\n          }\n        }\n      }\n\n      return vouchers;\n    },\n\n    spacesNeedingAttention() {\n      return this.spaces.filter(s => s.CalculationType === 'Unknown').length > 0\n    },\n\n    priceTypes() {\n      let priceTypes = []\n\n      if (this.reservation && this.locationState && this.locationState.Channels) {\n        let channelIndex = this.locationState.Channels.findIndex(c => c.ChannelId === this.reservation.ChannelId)\n\n        if (channelIndex > -1) {\n          let channel = this.locationState.Channels[channelIndex]\n\n          if (channel) {\n            priceTypes = channel.PriceTypes\n          }\n        }\n      }\n\n      return priceTypes\n    },\n\n    taxPercentages() {\n      let result = []\n\n      if (this.locationState) {\n        result = this.locationState.TaxPercentages.map((t) => t.TaxPercentage)\n      }\n\n      return result\n    },\n\n    reservationDate() {\n      return this.reservation.Dates.find(d => d.Date === format(this.startDate, 'yyyy-MM-dd'));\n    }\n  },\n\n  watch: {},\n\n  created() {\n    let self = this\n\n    if (this.selectedVoucherId === 0 && this.activeVouchers.length > 0) {\n      this.selectedVoucherId = this.activeVouchers[0].voucherId;\n    }\n\n    EventBus.$on('spaceSelected', (space) => {\n      let packageId = 0;\n      let voucherId = 0;\n      let activeVoucher = this.activeVouchers.find(v => v.voucherId === this.selectedVoucherId);\n      if (activeVoucher) {\n        packageId = activeVoucher.type === 'Package' ? activeVoucher.voucherId : 0;\n        voucherId = activeVoucher.type === 'Voucher' ? activeVoucher.voucherId : 0;\n      }\n\n      space.ReservationId = self.reservation.Id;\n      space.UseInTotalSeats = packageId > 0 ? true : false;\n      space.PackageId = packageId;\n      space.VoucherId = voucherId;\n\n      this.addSpace(space);\n      this.showSelectedSpaces = true;\n    })\n  },\n\n  beforeDestroy() {\n    EventBus.$off('spaceSelected')\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    getVoucherName(voucherId) {\n      let voucher = this.activeVouchers.find(v => v.voucherId === voucherId);\n      return voucher ? voucher.name : '';\n    },\n\n    addSpace(space) {\n\n      space.StartDate = this.$options.filters.dateObjectIsoDateString(this.$options.filters.parseIsoDateStringToDate(space.StartDate))\n      space.EndDate = this.$options.filters.dateObjectIsoDateString(this.$options.filters.parseIsoDateStringToDate(space.EndDate))\n      //space.UseInTotalSeats = this.spaces.length === 0 ? true : false;\n      space.PriceId = space.YieldSettingId || 0;\n\n      // let packageId = 0;\n      // let voucherId = 0;\n      // let activeVoucher = this.activeVouchers.find(v => v.voucherId === self.selectedVoucherId);\n      // if (activeVoucher) {\n      //   packageId = activeVoucher.type === 'Package' ? activeVoucher.voucherId : 0;\n      //   voucherId = activeVoucher.type === 'Voucher' ? activeVoucher.voucherId : 0;\n      // }\n\n      // space.PackageId = packageId;\n      // space.VoucherId = voucherId;\n\n      this.spaces.push(space)\n    },\n\n    delay(callback, ms) {\n      let self = this\n      if (this.timer) {\n        clearTimeout(this.timer)\n      }\n      this.timer = setTimeout(() => {\n        callback.apply(self)\n        clearTimeout(self.timer)\n      }, ms || 0)\n    },\n\n    updateCrcValue(space) {\n      crcProvider.methods\n        .checkCrc(space.SpaceId, space.PricePerSeat)\n        .then((response) => {\n          if (response.status === 200) {\n            space.Crc = response.data\n            space.PriceTotal = this.calculateTotalPrice(space)\n          }\n        })\n        .catch((error) => { })\n    },\n\n    calculateTotalPrice(space) {\n      let total = 0.0\n\n      if (space) {\n        if (space.CalculationType === 'PerDayPartOnly') {\n          total = Number(space.PricePerSeat)\n        } else {\n          total =\n            Math.round(Number(space.Seats) * Number(space.PricePerSeat) * 100) /\n            100\n        }\n      }\n\n      return total\n    },\n\n    addReservationSpaces() {\n      if (this.disableSaveButton || this.isSaving) {\n        return;\n      }\n\n      this.isSaving = true\n\n      reservationProvider.methods\n        .addReservationSpaces(this.reservation.Key, this.spaces)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update reservation store\n            this.setReservation(response.data)\n\n            // Send message to display toast on screen\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t('Components.Reservation.ModalAddSpace.Toast_SpacesAdded'),\n            })\n\n            // Close \n            this.closeDrawer();\n          }\n        })\n        .catch((error) => {\n          this.isSavingError = true;\n          this.responseMessage = error.response.data;\n        })\n        .finally(() => {\n          this.isSaving = false;\n        })\n    },\n\n    removeSelectedSpace(index) {\n      this.spaces.splice(index, 1);\n\n      if (this.spaces.length === 0) {\n        this.showSelectedSpaces = false;\n      }\n    },\n\n    closeDrawer() {\n      // Close \n      this.$emit('hideDrawer');\n    }\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddSpace.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddSpace.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AddSpace.vue?vue&type=template&id=29556ed6\"\nimport script from \"./AddSpace.vue?vue&type=script&lang=js\"\nexport * from \"./AddSpace.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"drawerSize\":_vm.drawerSize,\"position\":\"right\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showYieldSummary)?_c('YieldSummary',{attrs:{\"yieldsettingId\":_vm.itemId}}):_vm._e()]},proxy:true}],null,false,1079457487)}):_vm._e(),(_vm.linkedReservationOption)?_c('article',{staticClass:\"message is-info\"},[_c('div',{staticClass:\"message-body\"},[_vm._v(\" \"+_vm._s(_vm.$t('General.LinkedTo'))+\" \"+_vm._s(_vm.linkedReservationOption.OptionName)+\" \")])]):_vm._e(),(!_vm.hasCalculationType)?_c('article',{staticClass:\"message is-danger\"},[_c('div',{staticClass:\"message-body is-flex is-align-items-baseline\"},[_c('span',{staticClass:\"mr-2\"},[_vm._v(_vm._s(_vm.$t('Prices.NoPrice')))]),_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mSpace.CalculationType),expression:\"mSpace.CalculationType\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mSpace, \"CalculationType\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option',{domProps:{\"value\":'Unknown'}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_SelectCalculationType')))]),_vm._l((_vm.priceTypes),function(priceType){return _c('option',{key:priceType.Id,domProps:{\"value\":priceType.PriceType}},[_vm._v(_vm._s(_vm.$t('Prices.' + priceType.PriceType)))])})],2)])])]):_vm._e(),_c('table',{staticClass:\"table is-fullwidth\"},[_c('tbody',[_c('tr',[_c('td',{attrs:{\"width\":\"30%\"}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_Pax')))]),_c('td',{},[_c('div',{staticClass:\"field has-addons\"},[_c('p',{staticClass:\"control\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.mSpace.Seats),expression:\"mSpace.Seats\",modifiers:{\"number\":true}}],staticClass:\"input\",class:{ 'is-danger': _vm.showSeatsZeroWarning },attrs:{\"type\":\"text\",\"readonly\":_vm.reservation.MeetingtypeId !== 1,\"disabled\":_vm.reservation.MeetingtypeId !== 1 || _vm.isValidating > 0},domProps:{\"value\":(_vm.mSpace.Seats)},on:{\"keyup\":function($event){return _vm.delay(_vm.validateAvailability, 200)},\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mSpace, \"Seats\", _vm._n($event.target.value))},\"blur\":function($event){return _vm.$forceUpdate()}}})]),_vm._m(0)])])]),(_vm.reservation.MeetingtypeId === 1)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_Configuration')))]),_c('td',{},[_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mSpace.SettingId),expression:\"mSpace.SettingId\"}],attrs:{\"disabled\":_vm.isValidating > 0},on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mSpace, \"SettingId\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])},_vm.validateAvailability]}},[_c('option',{domProps:{\"value\":0,\"selected\":_vm.space.SettingId === 0}},[_vm._v(\" Select a configuration \")]),_vm._l((_vm.settings),function(setting,index){return _c('option',{key:index,domProps:{\"value\":setting.SettingId,\"selected\":setting.SettingId === _vm.space.SettingId}},[_vm._v(\" \"+_vm._s(_vm._f(\"getSettingName\")(setting.SettingId))+\" (\"+_vm._s(setting.MinSeats)+\" - \"+_vm._s(setting.MaxSeats)+\") \")])})],2)])])]):_vm._e(),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_StartTime'))+\" & \"+_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_EndTime'))+\" \")]),_c('td',{},[(_vm.openinghours)?_c('div',{staticClass:\"has-background-white-ter has-padding has-margin-bottom\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_OpeningHours'))+\" \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.openinghours.MinMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.openinghours.MaxMinutes))+\" \")]):_vm._e(),_c('div',{staticClass:\"is-flex is-align-items-center\"},[(_vm.mSpace.NrOfDays > 1)?_c('div',{staticClass:\"mr-2\"},[_vm._v(_vm._s(_vm.mSpace.StartDate))]):_vm._e(),_c('div',{staticClass:\"select\",class:{ 'is-danger': _vm.showStartTimeAferEndTimeWarning }},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mSpace.StartMinutes),expression:\"mSpace.StartMinutes\"}],attrs:{\"disabled\":_vm.isValidating > 0},on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mSpace, \"StartMinutes\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])},_vm.validateAvailability]}},_vm._l((_vm.timeSlots),function(timeSlot,index){return _c('option',{key:index,domProps:{\"value\":timeSlot,\"selected\":_vm.mSpace.StartMinutes === timeSlot}},[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(timeSlot))+\" \")])}),0)]),_c('div',{staticClass:\"mx-2\"},[_vm._v(\"-\")]),(_vm.mSpace.NrOfDays > 1)?_c('div',{staticClass:\"mr-2\"},[_vm._v(_vm._s(_vm.mSpace.EndDate))]):_vm._e(),_c('div',{staticClass:\"select\",class:{ 'is-danger': _vm.showStartTimeAferEndTimeWarning }},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mSpace.EndMinutes),expression:\"mSpace.EndMinutes\"}],attrs:{\"disabled\":_vm.isValidating > 0},on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mSpace, \"EndMinutes\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])},_vm.validateAvailability]}},_vm._l((_vm.timeSlots),function(timeSlot,index){return _c('option',{key:index,domProps:{\"value\":timeSlot,\"selected\":_vm.mSpace.EndMinutes === timeSlot}},[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(timeSlot))+\" \")])}),0)])])])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_Tax')))]),_c('td',{},[(\n              !_vm.isEmployee ||\n              !_vm.locationState.Settings.ShowTaxEditReservation\n            )?_c('div',[_vm._v(\" \"+_vm._s(_vm.mSpace.TaxPercentage)+\"% \")]):_vm._e(),(\n              _vm.isEmployee &&\n              _vm.locationState.Settings.ShowTaxEditReservation\n            )?_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mSpace.TaxPercentage),expression:\"mSpace.TaxPercentage\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mSpace, \"TaxPercentage\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},_vm._l((_vm.taxPercentages),function(taxPercentage){return _c('option',{key:taxPercentage,domProps:{\"value\":taxPercentage,\"selected\":taxPercentage === _vm.mSpace.TaxPercentage}},[_vm._v(\" \"+_vm._s(taxPercentage)+\"% \")])}),0)]):_vm._e()])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_Price')))]),_c('td',{},[(!_vm.space.InPackage)?_c('div',[(!_vm.isEmployee)?_c('div',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.mSpace.PricePerSeat,_vm.locationState.Settings.LanguageCulture, _vm.mSpace.Currency)))]):_vm._e(),(_vm.isEmployee)?_c('div',{},[_c('p',{staticClass:\"control\"},[_c('InputNumeric',{class:{ 'is-danger': _vm.showNoPriceWarning, 'is-loading': _vm.isValidating > 0 },attrs:{\"disabled\":_vm.isValidating > 0},on:{\"change\":_vm.updateCrcValue,\"keyup\":function($event){return _vm.delay(_vm.updateCrcValue, 200)}},model:{value:(_vm.mSpace.PricePerSeat),callback:function ($$v) {_vm.$set(_vm.mSpace, \"PricePerSeat\", _vm._n($$v))},expression:\"mSpace.PricePerSeat\"}})],1),(!_vm.space.InPackage && _vm.filteredRates.length > 0)?_c('div',{staticClass:\"select mt-2\",class:{ 'is-loading': _vm.isValidating > 0 }},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedRate),expression:\"selectedRate\"}],on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selectedRate=$event.target.multiple ? $$selectedVal : $$selectedVal[0]},_vm.validateAvailability]}},[_c('option',{domProps:{\"value\":0,\"selected\":_vm.selectedRate === 0}},[_vm._v(_vm._s(_vm.$t('Prices.UnknownRate')))]),_vm._l((_vm.filteredRates),function(rate,index){return _c('option',{key:index,domProps:{\"value\":rate.Id,\"selected\":rate.Id === _vm.selectedRate}},[_vm._v(\" \"+_vm._s(_vm.getRateName(rate))+\" \")])})],2)]):_vm._e()]):_vm._e()]):_vm._e()])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_Total')))]),_c('td',{},[(!_vm.space.InPackage)?_c('div',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.meetingspaceTotalPrice,_vm.locationState.Settings.LanguageCulture, _vm.mSpace.Currency)))]):_vm._e()])]),_c('tr',[_c('td',[_vm._v(\" \")]),_c('td',{},[(_vm.isEmployee && _vm.meetingtypeId === 1 && !_vm.space.InPackage)?_c('div',[_c('div',{staticClass:\"icon-text is-flex-wrap-nowrap\"},[_c('span',{staticClass:\"icon is-hidden-print has-text-info\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1),_c('div',[_c('div',{staticClass:\"mb-5\"},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Message_UsedTotalSeatCalculation' ))+\" \")]),_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mSpace.UseInTotalSeats),expression:\"mSpace.UseInTotalSeats\"}],attrs:{\"type\":\"checkbox\",\"disabled\":_vm.disableUseTotalSeats},domProps:{\"checked\":Array.isArray(_vm.mSpace.UseInTotalSeats)?_vm._i(_vm.mSpace.UseInTotalSeats,null)>-1:(_vm.mSpace.UseInTotalSeats)},on:{\"change\":function($event){var $$a=_vm.mSpace.UseInTotalSeats,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mSpace, \"UseInTotalSeats\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mSpace, \"UseInTotalSeats\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mSpace, \"UseInTotalSeats\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Label_UsedTotalSeatCalculation'))+\" \")]),(_vm.disableUseTotalSeats)?_c('div',[_c('span',{staticClass:\"is-size-7 is-italic has-text-danger\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Warning_UsedTotalSeatCalculation')))])]):_vm._e()])])]):_vm._e()])]),(_vm.reservation.HasProposal > 0)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_ShowProposalList')))]),_c('td',{staticClass:\"has-text-right\"},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mSpace.ShowProposalList),expression:\"mSpace.ShowProposalList\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mSpace.ShowProposalList,\"checked\":Array.isArray(_vm.mSpace.ShowProposalList)?_vm._i(_vm.mSpace.ShowProposalList,null)>-1:(_vm.mSpace.ShowProposalList)},on:{\"change\":function($event){var $$a=_vm.mSpace.ShowProposalList,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mSpace, \"ShowProposalList\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mSpace, \"ShowProposalList\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mSpace, \"ShowProposalList\", $$c)}}}})])])]):_vm._e(),(_vm.reservation.HasProposal > 0)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditOption.Label_ShowProposalSummary')))]),_c('td',{staticClass:\"has-text-right\"},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mSpace.ShowProposalSummary),expression:\"mSpace.ShowProposalSummary\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mSpace.ShowProposalSummary,\"checked\":Array.isArray(_vm.mSpace.ShowProposalSummary)?_vm._i(_vm.mSpace.ShowProposalSummary,null)>-1:(_vm.mSpace.ShowProposalSummary)},on:{\"change\":function($event){var $$a=_vm.mSpace.ShowProposalSummary,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mSpace, \"ShowProposalSummary\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mSpace, \"ShowProposalSummary\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mSpace, \"ShowProposalSummary\", $$c)}}}})])])]):_vm._e()])]),(_vm.setupDone && _vm.meetingtypeId < 3)?_c('div',[(_vm.warnings.length > 0 && _vm.isValidating === 0)?_c('article',{staticClass:\"message is-warning\"},[_c('div',{staticClass:\"message-body\"},[_c('ul',[(_vm.showLocationOpenWarning)?_c('li',{class:{ 'has-margin-bottom': _vm.nrOfWarnings > 1 }},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Warning_LocationIsClosedOnDate' ))+\" \"),_c('div',[_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":_vm.resetSpaceValue}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'history']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Button_Undo')))])]),(_vm.isEmployee)?_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":function($event){return _vm.ignoreWarning('LocationClosed')}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Button_IgnoreWarning' )))])]):_vm._e()])]):_vm._e(),(_vm.showLocationOpeningHoursWarning)?_c('li',{class:{ 'has-margin-bottom': _vm.nrOfWarnings > 1 }},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Warning_LocationIsClosed' ))+\" \"),_c('div',[_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":_vm.resetSpaceValue}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'history']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Button_Undo')))])]),(_vm.isEmployee)?_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":function($event){return _vm.ignoreWarning('OpeningHours')}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Button_IgnoreWarning' )))])]):_vm._e()])]):_vm._e(),(_vm.showUnitAvailableWarning)?_c('li',{class:{ 'has-margin-bottom': _vm.nrOfWarnings > 1 }},[_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Warning_SpaceNotAvailable' )))]),_c('div',[_c('span',[_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":_vm.resetSpaceValue}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'history']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Button_Undo')))])])]),_c('span',[(_vm.isEmployee)?_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":function($event){return _vm.ignoreWarning('SpaceNotAvailable')}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Button_IgnoreWarning' )))])]):_vm._e()])])]):_vm._e(),(_vm.showMinimumHoursWarning)?_c('li',{class:{ 'has-margin-bottom': _vm.nrOfWarnings > 1 }},[_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Warning_MinimumHours' )))]),_c('div',[_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":_vm.resetSpaceValue}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'history']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Button_Undo')))])]),(_vm.isEmployee)?_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":function($event){return _vm.ignoreWarning('MinimumDuration')}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Button_IgnoreWarning' )))])]):_vm._e()])]):_vm._e(),(_vm.showSeatsSettingWarning)?_c('li',{class:{ 'has-margin-bottom': _vm.nrOfWarnings > 1 }},[_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Warning_NumberOfSeats' )))]),_c('div',[_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":_vm.resetSpaceValue}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'history']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Button_Undo')))])]),(_vm.isEmployee)?_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":function($event){return _vm.ignoreWarning('SeatsConfigurationMismatch')}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Button_IgnoreWarning' )))])]):_vm._e()])]):_vm._e(),(_vm.showMaxDaysOutWarning)?_c('li',{class:{ 'has-margin-bottom': _vm.nrOfWarnings > 1 }},[_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Warning_MaxDaysOut' )))]),_c('div',[_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":_vm.resetSpaceValue}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'history']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Button_Undo')))])]),(_vm.isEmployee)?_c('a',{staticClass:\"has-margin-right is-link icon-text\",on:{\"click\":function($event){return _vm.ignoreWarning('MaxDaysOut')}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditSpace.Button_IgnoreWarning' )))])]):_vm._e()])]):_vm._e()])])]):_vm._e(),_c('div',{staticClass:\"mt-6\"},[_c('ui-submit-form-controls',{staticClass:\"has-margin-bottom\",attrs:{\"onClickSave\":_vm.saveSpace,\"onClickCancel\":_vm.closeDrawer,\"isSaving\":_vm.isSaving,\"disableSaveButton\":_vm.disableSaveButton}})],1)]):_vm._e()],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"button is-static\"},[_vm._v(\"X\")])])\n}]\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      :drawerSize=\"drawerSize\"\n      position=\"right\"\n    >\n      <template v-slot:content>\n        <YieldSummary\n          v-if=\"showYieldSummary\"\n          :yieldsettingId=\"itemId\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <article\n      v-if=\"linkedReservationOption\"\n      class=\"message is-info\"\n    >\n      <div class=\"message-body\">\n        {{ $t('General.LinkedTo') }} {{ linkedReservationOption.OptionName }}\n      </div>\n    </article>\n\n    <article\n      v-if=\"!hasCalculationType\"\n      class=\"message is-danger\"\n    >\n      <div class=\"message-body is-flex is-align-items-baseline\">\n        <span class=\"mr-2\">{{ $t('Prices.NoPrice') }}</span>\n\n        <div class=\"select\">\n          <select v-model=\"mSpace.CalculationType\">\n            <option :value=\"'Unknown'\">{{ $t('Components.Reservation.ModalEditSpace.Label_SelectCalculationType')}}</option>\n            <option\n              v-for=\"priceType in priceTypes\"\n              :key=\"priceType.Id\"\n              :value=\"priceType.PriceType\"\n            >{{ $t('Prices.' + priceType.PriceType) }}</option>\n          </select>\n        </div>\n      </div>\n    </article>\n\n    <table class=\"table is-fullwidth\">\n      <tbody>\n        <tr>\n          <td width=\"30%\">{{ $t('Components.Reservation.ModalEditSpace.Label_Pax') }}</td>\n          <td class=\"\">\n            <div class=\"field has-addons\">\n              <p class=\"control\">\n                <input\n                  type=\"text\"\n                  @keyup=\"delay(validateAvailability, 200)\"\n                  v-model.number=\"mSpace.Seats\"\n                  class=\"input\"\n                  :class=\"{ 'is-danger': showSeatsZeroWarning }\"\n                  :readonly=\"reservation.MeetingtypeId !== 1\"\n                  :disabled=\"reservation.MeetingtypeId !== 1 || isValidating > 0\"\n                />\n              </p>\n              <p class=\"control\">\n                <a class=\"button is-static\">X</a>\n              </p>\n            </div>\n          </td>\n        </tr>\n\n        <tr v-if=\"reservation.MeetingtypeId === 1\">\n          <td>{{ $t('Components.Reservation.ModalEditSpace.Label_Configuration') }}</td>\n          <td class=\"\">\n            <div class=\"select\">\n              <select\n                @change=\"validateAvailability\"\n                v-model=\"mSpace.SettingId\"\n                :disabled=\"isValidating > 0\"\n              >\n                <option\n                  :value=\"0\"\n                  :selected=\"space.SettingId === 0\"\n                >\n                  Select a configuration\n                </option>\n                <option\n                  v-for=\"(setting, index) in settings\"\n                  :key=\"index\"\n                  :value=\"setting.SettingId\"\n                  :selected=\"setting.SettingId === space.SettingId\"\n                >\n                  {{ setting.SettingId | getSettingName }} ({{\n                    setting.MinSeats\n                  }}\n                  - {{ setting.MaxSeats }})\n                </option>\n              </select>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.ModalEditSpace.Label_StartTime') }} & {{ $t('Components.Reservation.ModalEditSpace.Label_EndTime') }}\n          </td>\n          <td class=\"\">\n            <div\n              v-if=\"openinghours\"\n              class=\"has-background-white-ter has-padding has-margin-bottom\"\n            >\n              {{ $t('Components.Reservation.ModalEditSpace.Label_OpeningHours') }}\n              {{ openinghours.MinMinutes | minutesToTime }} -\n              {{ openinghours.MaxMinutes | minutesToTime }}\n            </div>\n\n            <div class=\"is-flex is-align-items-center\">\n              <div v-if=\"mSpace.NrOfDays > 1\" class=\"mr-2\">{{ mSpace.StartDate }}</div>\n              <div\n                class=\"select\"\n                :class=\"{ 'is-danger': showStartTimeAferEndTimeWarning }\"\n              >\n                <select\n                  @change=\"validateAvailability\"\n                  v-model=\"mSpace.StartMinutes\"\n                  :disabled=\"isValidating > 0\"\n                >\n                  <option\n                    v-for=\"(timeSlot, index) in timeSlots\"\n                    :key=\"index\"\n                    :value=\"timeSlot\"\n                    :selected=\"mSpace.StartMinutes === timeSlot\"\n                  >\n                    {{ timeSlot | minutesToTime }}\n                  </option>\n                </select>\n              </div>\n\n              <div class=\"mx-2\">-</div>\n\n              <div v-if=\"mSpace.NrOfDays > 1\" class=\"mr-2\">{{ mSpace.EndDate }}</div>\n              <div\n                class=\"select\"\n                :class=\"{ 'is-danger': showStartTimeAferEndTimeWarning }\"\n              >\n              \n                <select\n                  @change=\"validateAvailability\"\n                  v-model=\"mSpace.EndMinutes\"\n                  :disabled=\"isValidating > 0\"\n                >\n                  <option\n                    v-for=\"(timeSlot, index) in timeSlots\"\n                    :key=\"index\"\n                    :value=\"timeSlot\"\n                    :selected=\"mSpace.EndMinutes === timeSlot\"\n                  >\n                    {{ timeSlot | minutesToTime }}\n                  </option>\n                </select>\n              </div>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditSpace.Label_Tax') }}</td>\n          <td class=\"\">\n            <div v-if=\"\n                !isEmployee ||\n                !locationState.Settings.ShowTaxEditReservation\n              \">\n              {{ mSpace.TaxPercentage }}%\n            </div>\n            <div\n              v-if=\"\n                isEmployee &&\n                locationState.Settings.ShowTaxEditReservation\n              \"\n              class=\"select\"\n            >\n              <select v-model=\"mSpace.TaxPercentage\">\n                <option\n                  v-for=\"taxPercentage in taxPercentages\"\n                  :key=\"taxPercentage\"\n                  :value=\"taxPercentage\"\n                  :selected=\"taxPercentage === mSpace.TaxPercentage\"\n                >\n                  {{ taxPercentage }}%\n                </option>\n              </select>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditSpace.Label_Price') }}</td>\n          <td class=\"\">\n            <div v-if=\"!space.InPackage\">\n              <div v-if=\"!isEmployee\">{{ mSpace.PricePerSeat | toCurrency(locationState.Settings.LanguageCulture, mSpace.Currency) }}</div>\n\n              <div\n                v-if=\"isEmployee\"\n                class=\"\"\n              >\n                <p class=\"control\">\n                  <InputNumeric\n                    v-model.number=\"mSpace.PricePerSeat\"\n                    @change=\"updateCrcValue\"\n                    @keyup=\"delay(updateCrcValue, 200)\"\n                    :class=\"{ 'is-danger': showNoPriceWarning, 'is-loading': isValidating > 0 }\"\n                    :disabled=\"isValidating > 0\"\n                  />\n                </p>\n\n                <!-- PRICE UPDATED INFO -->\n                <!-- <div\n                  v-if=\"priceUpdated && check && check.SpacePrice\"  \n                  @click=\"showPriceCalculationInfo()\"\n                  :class=\"{'is-clickable': check.SpacePrice && check.SpacePrice.YieldSettingId > 0 }\"\n                >\n                  <span class=\"icon is-hidden-print has-text-danger\">\n                    <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                    <span\n                      v-if=\"check.SpacePrice && check.SpacePrice.YieldSettingId > 0\"\n                      class=\"icon has-text-info\"\n                    >\n                      <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                    </span>\n                  </span>\n                  <span class=\"has-icon ml-2\">\n                    <span>{{ $t('Prices.PriceUpdated') }}</span>\n                  </span>\n                </div>\n\n                <div v-if=\"!check.SpacePrice || check.SpacePrice.YieldSettingId === 0\">\n                  <span class=\"has-text-danger has-text-weight-bold icon-text\">\n                    <span class=\"icon ml-2\">\n                      <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                    </span>\n                    <span>{{ $t('Prices.NoPrice') }}</span>\n                  </span>\n                </div> -->\n\n                <!-- RATE SELECTION -->\n                <div\n                  v-if=\"!space.InPackage && filteredRates.length > 0\"\n                  class=\"select mt-2\"\n                  :class=\"{ 'is-loading': isValidating > 0 }\"\n                >\n                  <select\n                    @change=\"validateAvailability\"\n                    v-model=\"selectedRate\"\n                  >\n                    <option\n                      :value=\"0\"\n                      :selected=\"selectedRate === 0\"\n                    >{{ $t('Prices.UnknownRate') }}</option>\n                    <option\n                      v-for=\"(rate, index) in filteredRates\"\n                      :key=\"index\"\n                      :value=\"rate.Id\"\n                      :selected=\"rate.Id === selectedRate\"\n                    >\n                      {{ getRateName(rate)}}\n                    </option>\n\n                  </select>\n                </div>\n              </div>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.ModalEditSpace.Label_Total') }}</td>\n          <td class=\"\">\n            <div v-if=\"!space.InPackage\">{{ meetingspaceTotalPrice | toCurrency(locationState.Settings.LanguageCulture, mSpace.Currency)}}</div>\n          </td>\n        </tr>\n        <tr>\n          <td>&nbsp;</td>\n          <td class=\"\">\n            <div v-if=\"isEmployee && meetingtypeId === 1 && !space.InPackage\">\n              <div class=\"icon-text is-flex-wrap-nowrap\">\n                <span class=\"icon is-hidden-print has-text-info\">\n                  <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                </span>\n                <div>\n                  <div class=\"mb-5\">\n                    {{\n                      $t(\n                        'Components.Reservation.ModalEditSpace.Message_UsedTotalSeatCalculation'\n                      )\n                    }}\n                  </div>\n                  <label class=\"checkbox\">\n                    <input\n                      type=\"checkbox\"\n                      v-model=\"mSpace.UseInTotalSeats\"\n                      :disabled=\"disableUseTotalSeats\"\n                    />\n                    {{ $t('Components.Reservation.ModalEditSpace.Label_UsedTotalSeatCalculation') }}\n                  </label>\n                  <div v-if=\"disableUseTotalSeats\">\n                    <span class=\"is-size-7 is-italic has-text-danger\">{{ $t('Components.Reservation.ModalEditSpace.Warning_UsedTotalSeatCalculation') }}</span>\n                  </div>\n                </div>\n              </div>\n            </div>\n          </td>\n        </tr>\n\n        <tr v-if=\"reservation.HasProposal > 0\">\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_ShowProposalList') }}</td>\n          <td class=\"has-text-right\">\n            <label class=\"checkbox\">\n              <input\n                type=\"checkbox\"\n                v-model=\"mSpace.ShowProposalList\"\n                :checked=\"mSpace.ShowProposalList\"\n              />\n            </label>\n          </td>\n        </tr>\n        <tr v-if=\"reservation.HasProposal > 0\">\n          <td>{{ $t('Components.Reservation.ModalEditOption.Label_ShowProposalSummary') }}</td>\n          <td class=\"has-text-right\">\n            <label class=\"checkbox\">\n              <input\n                type=\"checkbox\"\n                v-model=\"mSpace.ShowProposalSummary\"\n                :checked=\"mSpace.ShowProposalSummary\"\n              />\n            </label>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n\n    <div v-if=\"setupDone && meetingtypeId < 3\">\n      <article\n        v-if=\"warnings.length > 0 && isValidating === 0\"\n        class=\"message is-warning\"\n      >\n        <div class=\"message-body\">\n          <ul>\n            <li\n              v-if=\"showLocationOpenWarning\"\n              :class=\"{ 'has-margin-bottom': nrOfWarnings > 1 }\"\n            >\n              {{\n                $t(\n                  'Components.Reservation.ModalEditSpace.Warning_LocationIsClosedOnDate'\n                )\n              }}\n              <div>\n                <a\n                  @click=\"resetSpaceValue\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'history']\" />\n                  </span>\n                  <span>{{\n                    $t('Components.Reservation.ModalEditSpace.Button_Undo')\n                  }}</span>\n                </a>\n                <a\n                  v-if=\"isEmployee\"\n                  @click=\"ignoreWarning('LocationClosed')\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'ban']\" />\n                  </span>\n                  <span>{{\n                    $t(\n                      'Components.Reservation.ModalEditSpace.Button_IgnoreWarning'\n                    )\n                  }}</span>\n                </a>\n              </div>\n            </li>\n            <li\n              v-if=\"showLocationOpeningHoursWarning\"\n              :class=\"{ 'has-margin-bottom': nrOfWarnings > 1 }\"\n            >\n              {{\n                $t(\n                  'Components.Reservation.ModalEditSpace.Warning_LocationIsClosed'\n                )\n              }}\n              <div>\n                <a\n                  @click=\"resetSpaceValue\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'history']\" />\n                  </span>\n                  <span>{{\n                    $t('Components.Reservation.ModalEditSpace.Button_Undo')\n                  }}</span>\n                </a>\n                <a\n                  v-if=\"isEmployee\"\n                  @click=\"ignoreWarning('OpeningHours')\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'ban']\" />\n                  </span>\n                  <span>{{\n                    $t(\n                      'Components.Reservation.ModalEditSpace.Button_IgnoreWarning'\n                    )\n                  }}</span>\n                </a>\n              </div>\n            </li>\n            <li\n              v-if=\"showUnitAvailableWarning\"\n              :class=\"{ 'has-margin-bottom': nrOfWarnings > 1 }\"\n            >\n              <span>{{\n                $t(\n                  'Components.Reservation.ModalEditSpace.Warning_SpaceNotAvailable'\n                )\n              }}</span>\n              <div>\n                <span>\n                  <a\n                    @click=\"resetSpaceValue\"\n                    class=\"has-margin-right is-link icon-text\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'history']\" />\n                    </span>\n                    <span>{{\n                      $t('Components.Reservation.ModalEditSpace.Button_Undo')\n                    }}</span>\n                  </a>\n                </span>\n                <span>\n                  <a\n                    v-if=\"isEmployee\"\n                    @click=\"ignoreWarning('SpaceNotAvailable')\"\n                    class=\"has-margin-right is-link icon-text\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'ban']\" />\n                    </span>\n                    <span>{{\n                      $t(\n                        'Components.Reservation.ModalEditSpace.Button_IgnoreWarning'\n                      )\n                    }}</span>\n                  </a>\n                </span>\n              </div>\n            </li>\n            <li\n              v-if=\"showMinimumHoursWarning\"\n              :class=\"{ 'has-margin-bottom': nrOfWarnings > 1 }\"\n            >\n              <span>{{\n                $t(\n                  'Components.Reservation.ModalEditSpace.Warning_MinimumHours'\n                )\n              }}</span>\n              <div>\n                <a\n                  @click=\"resetSpaceValue\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'history']\" />\n                  </span>\n                  <span>{{\n                    $t('Components.Reservation.ModalEditSpace.Button_Undo')\n                  }}</span>\n                </a>\n                <a\n                  v-if=\"isEmployee\"\n                  @click=\"ignoreWarning('MinimumDuration')\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'ban']\" />\n                  </span>\n                  <span>{{\n                    $t(\n                      'Components.Reservation.ModalEditSpace.Button_IgnoreWarning'\n                    )\n                  }}</span>\n                </a>\n              </div>\n            </li>\n            <li\n              v-if=\"showSeatsSettingWarning\"\n              :class=\"{ 'has-margin-bottom': nrOfWarnings > 1 }\"\n            >\n              <span>{{\n                $t(\n                  'Components.Reservation.ModalEditSpace.Warning_NumberOfSeats'\n                )\n              }}</span>\n              <div>\n                <a\n                  @click=\"resetSpaceValue\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'history']\" />\n                  </span>\n                  <span>{{\n                    $t('Components.Reservation.ModalEditSpace.Button_Undo')\n                  }}</span>\n                </a>\n                <a\n                  v-if=\"isEmployee\"\n                  @click=\"ignoreWarning('SeatsConfigurationMismatch')\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'ban']\" />\n                  </span>\n                  <span>{{\n                    $t(\n                      'Components.Reservation.ModalEditSpace.Button_IgnoreWarning'\n                    )\n                  }}</span>\n                </a>\n              </div>\n            </li>\n            <li\n              v-if=\"showMaxDaysOutWarning\"\n              :class=\"{ 'has-margin-bottom': nrOfWarnings > 1 }\"\n            >\n              <span>{{\n                $t(\n                  'Components.Reservation.ModalEditSpace.Warning_MaxDaysOut'\n                )\n              }}</span>\n              <div>\n                <a\n                  @click=\"resetSpaceValue\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'history']\" />\n                  </span>\n                  <span>{{\n                    $t('Components.Reservation.ModalEditSpace.Button_Undo')\n                  }}</span>\n                </a>\n                <a\n                  v-if=\"isEmployee\"\n                  @click=\"ignoreWarning('MaxDaysOut')\"\n                  class=\"has-margin-right is-link icon-text\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'ban']\" />\n                  </span>\n                  <span>{{\n                    $t(\n                      'Components.Reservation.ModalEditSpace.Button_IgnoreWarning'\n                    )\n                  }}</span>\n                </a>\n              </div>\n            </li>\n          </ul>\n        </div>\n      </article>\n\n      <div class=\"mt-6\">\n        <ui-submit-form-controls\n          :onClickSave=\"saveSpace\"\n          :onClickCancel=\"closeDrawer\"\n          :isSaving=\"isSaving\"\n          :disableSaveButton=\"disableSaveButton\"\n          class=\"has-margin-bottom\"\n        />\n      </div>\n    </div>\n\n  </div>\n</template>\n\n<script>\nimport { mapMutations, mapState } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport crcProvider from '@/providers/crc'\nimport openinghoursProvider from '@/providers/openinghours'\nimport reservationProvider from '@/providers/reservation'\nimport yieldProvider from '@/providers/yield'\nimport spaceProvider from '@/providers/space'\nimport { cleanSource } from '@/utils/objectHelper'\n\n// Warning codes the template has a message for\nconst handledWarnings = ['LocationClosed', 'OpeningHours', 'SpaceNotAvailable', 'MinimumDuration', 'SeatsConfigurationMismatch', 'MaxDaysOut']\n\nexport default {\n  components: {\n    InputNumeric: () => import('@/components/UI/Form/InputNumeric'),\n    YieldSummary: () => import('@/components/Settings/Yield/YieldSummary')\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n    onClickSave: {\n      type: Function,\n      required: false,\n    },\n    channelId: {\n      default: 0,\n      type: Number,\n    },\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n    locationId: {\n      default: 0,\n      type: Number,\n    },\n    meetingtypeId: {\n      default: 0,\n      type: Number,\n    },\n    space: null,\n  },\n\n  data() {\n    return {\n      timer: null,\n      check: null,\n      warnings: [],\n      isAvailable: true,\n      isSaving: false,\n      isSavingError: false,\n      isValidating: 0,\n      mSpace: null,\n      openinghours: null,\n      priceUpdated: false,\n      responseMessage: '',\n      settings: [],\n      setupDone: false,\n\n      rates: [],\n      showInActiveRates: true,\n      // CTP-1633: offer public (default) rates too, not only internal-only ones\n      showInternalOnlyRates: false,\n      selectedRate: 0,\n\n      showSideDrawer: false,\n      showYieldSummary: false,\n      drawerTitle: '',\n      drawerSize: 'large',\n      itemId: 0\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n    ...mapState('locationStore', ['locationState']),\n\n    disableSaveButton() {\n      return this.isSaving ||\n        this.isValidating > 0 ||\n        this.warnings.length > 0 ||\n        this.showSeatsZeroWarning ||\n        this.showNoPriceWarning ||\n        this.showStartTimeAferEndTimeWarning ||\n        this.showEndTimeBeforeStartTimeWarning ||\n        !this.hasCalculationType\n    },\n\n    showLocationOpenWarning() {\n      let showWarning = false;\n\n      if (this.warnings && this.warnings.length > 0) {\n        showWarning = this.warnings.findIndex(w => w === 'LocationClosed') > -1\n      }\n\n      return showWarning;\n    },\n\n    showLocationOpeningHoursWarning() {\n      let showWarning = false;\n\n      if (this.warnings && this.warnings.length > 0) {\n        showWarning = this.warnings.findIndex(w => w === 'OpeningHours') > -1\n      }\n\n      return showWarning;\n    },\n    showMinimumHoursWarning() {\n      let showWarning = false;\n\n      if (this.warnings && this.warnings.length > 0) {\n        showWarning = this.warnings.findIndex(w => w === 'MinimumDuration') > -1\n      }\n\n      return showWarning;\n    },\n    showSeatsSettingWarning() {\n      let showWarning = false;\n\n      if (this.warnings && this.warnings.length > 0) {\n        showWarning = this.warnings.findIndex(w => w === 'SeatsConfigurationMismatch') > -1\n      }\n\n      return showWarning\n    },\n    showUnitAvailableWarning() {\n      let showWarning = false;\n\n      if (this.warnings && this.warnings.length > 0) {\n        showWarning = this.warnings.findIndex(w => w === 'SpaceNotAvailable') > -1\n      }\n\n      return showWarning;\n    },\n    showMaxDaysOutWarning() {\n      let showWarning = false;\n\n      if (this.warnings && this.warnings.length > 0) {\n        showWarning = this.warnings.findIndex(w => w === 'MaxDaysOut') > -1\n      }\n\n      return showWarning;\n    },\n    showPriceCalculation() {\n      let showWarning = false;\n\n      if (this.check && this.check.SpacePrice && this.check.SpacePrice.YieldSettingId > 0) {\n        showWarning = true\n      }\n\n      return showWarning;\n    },\n\n    hasCalculationType() {\n      let hasType = false\n\n      if (this.mSpace) {\n        hasType = cleanSource(this.mSpace).CalculationType !== 'Unknown'\n      }\n\n      return hasType\n    },\n\n    nrOfSpacesInTotalSeats() {\n      let nrOfSpaces = 0;\n\n      if (this.reservation && this.reservation.Dates) {\n        // Get the date\n        let resDate = this.reservation.Dates.find(d => d.Date === this.mSpace.StartDate);\n        if (resDate) {\n          nrOfSpaces = resDate.Spaces.filter(s => s.UseInTotalSeats && s.Id !== this.space.Id).length;\n          if (this.mSpace.UseInTotalSeats) {\n            nrOfSpaces++;\n          }\n        }\n      }\n\n      return nrOfSpaces\n    },\n\n    disableUseTotalSeats() {\n      let disabled = false;\n      let count = this.nrOfSpacesInTotalSeats;\n      if (count <= 1 && this.mSpace.UseInTotalSeats) {\n        disabled = true;\n      }\n\n      return disabled;\n    },\n\n    nrOfWarnings() {\n      let warningCount = 0\n\n      if (this.warnings) {\n        warningCount = (this.warnings.length - 1)\n      }\n\n      return warningCount\n    },\n\n    priceTypes() {\n      let priceTypes = []\n\n      if (this.reservation && this.locationState && this.locationState.Channels) {\n        let channelIndex = this.locationState.Channels.findIndex(c => c.ChannelId === this.reservation.ChannelId)\n\n        if (channelIndex > -1) {\n          let channel = this.locationState.Channels[channelIndex]\n\n          if (channel) {\n            priceTypes = channel.PriceTypes\n          }\n        }\n      }\n\n      return priceTypes\n    },\n\n    timeSlots() {\n      let timeSlots = []\n      let min = 0\n      let max = 1440\n      let minutes = 30\n\n      let i = min\n      while (i <= max) {\n        timeSlots.push(i)\n        i = i + minutes\n      }\n      return timeSlots\n    },\n\n    meetingspaceTotalPrice() {\n      let total = 0.0\n\n      if (this.mSpace) {\n        if (this.mSpace.CalculationType === 'PerDayPartOnly') {\n          total = Number(this.mSpace.PricePerSeat)\n        } else {\n          total =\n            Math.round(\n              Number(this.mSpace.Seats) * Number(this.mSpace.PricePerSeat) * 100\n            ) / 100\n        }\n      }\n\n      return total\n    },\n\n    taxPercentages() {\n      let result = []\n\n      if (this.locationState) {\n        result = this.locationState.TaxPercentages.map((t) => t.TaxPercentage)\n      }\n\n      return result\n    },\n\n    showNotAvailable() {\n      let show = false\n\n      if (this.warnings && this.warnings.length > 0) {\n        show = true;\n      }\n\n      return show\n    },\n\n    showSeatsZeroWarning() {\n      return this.mSpace.Seats === 0\n    },\n\n    blockSaveButton() {\n      return (\n        this.showNotAvailable ||\n        this.showNoPriceWarning ||\n        this.showStartTimeAferEndTimeWarning ||\n        this.showEndTimeBeforeStartTimeWarning ||\n        !this.hasCalculationType ||\n        this.showSeatsZeroWarning\n      )\n    },\n\n    showNoPriceWarning() {\n      return String(this.mSpace.PricePerSeat).length === 0\n    },\n\n    showStartTimeAferEndTimeWarning() {\n      if (this.mSpace.NrOfDays === 1) {\n        return this.mSpace.StartMinutes >= this.mSpace.EndMinutes\n      }\n      return false;\n    },\n\n    showEndTimeBeforeStartTimeWarning() {\n      if (this.mSpace.NrOfDays === 1) {\n        return this.mSpace.EndMinutes <= this.mSpace.StartMinutes;\n      }\n      return false;\n    },\n\n    filteredRates() {\n      let rates = [];\n\n      if (this.rates && this.rates.length > 0) {\n        rates = this.rates.filter(r => r.VoucherId === 0);\n      }\n\n      if (rates.length > 0 && !this.showInActiveRates) {\n        rates = rates.filter(r => r.Status === 'Approved');\n      }\n\n      if (rates.length > 0 && this.showInternalOnlyRates) {\n        rates = rates.filter(r => !r.IsDefault || r.Id == this.mSpace.PriceId);\n      }\n\n      return rates;\n    },\n\n    linkedReservationOption() {\n      let option = null;\n\n      if (this.space && this.space.LinkedToOption > 0) {\n        let reservationDate = this.reservation.Dates.find(d => d.Date === this.space.StartDate);\n        if (reservationDate) {\n          option = reservationDate.Options.find(o => o.Id === this.space.LinkedToOption);\n        }\n      }\n\n      return option;\n    }\n  },\n\n  created() {\n    this.mSpace = cleanSource(this.space);\n    this.selectedRate = this.mSpace.PriceId || 0;\n\n    this.getLocationOpeninghours();\n    this.getSpaceData();\n    this.getLocationRates();\n\n    this.selectedRate = this.mSpace.PriceId || 0;\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    getRateName(rate) {\n      let name = '';\n\n      if (rate && rate.Name) {\n        name = rate.Name;\n        return name;\n      }\n\n      if (rate.SpaceId === 0) {\n        name += `${this.$t('Prices.GeneralRate')} - `\n      }\n\n      if (rate.IsDefault) {\n        name += `${this.$t('Prices.DefaultRate')}`;\n      }\n\n      if (!rate.IsDefault) {\n        name += `${this.$t('Prices.InternalOnlyRate')} - `;\n      }\n\n      if (rate.SpaceId > 0) {\n        name += rate.SpaceName;\n      }\n\n      return name;\n    },\n\n    showPriceCalculationInfo() {\n      if (this.check.SpacePrice && this.check.SpacePrice.YieldSettingId > 0) {\n        this.showPriceCalculation = !this.showPriceCalculation\n      }\n    },\n\n    getLocationOpeninghours() {\n      openinghoursProvider.methods\n        .getOpeningHours(\n          this.space.StartDate,\n          0,\n          this.locationId,\n          this.meetingtypeId\n        )\n        .then((response) => {\n          if (response.status === 200) {\n            this.openinghours = response.data\n          }\n        })\n        .then(() => {\n          this.setupDone = true\n        })\n        .catch((err) => { })\n    },\n\n    getSpaceData() {\n      spaceProvider.methods\n        .getSpaceById(this.space.SpaceId)\n        .then((response) => {\n          if (response.status === 200) {\n            this.settings = response.data.Settings\n          }\n        })\n        .catch((err) => { })\n    },\n\n    getLocationRates() {\n      yieldProvider.methods\n        .getLocationYieldSettings(\n          this.locationId,\n          this.reservation.ChannelId,\n          0,\n          0,\n          this.reservation.MeetingtypeId\n        )\n        .then((response) => {\n          if (response.status === 200) {\n            this.rates = response.data;\n          }\n        })\n    },\n\n    delay(callback, ms) {\n      let self = this\n      if (this.timer) {\n        clearTimeout(this.timer)\n      }\n      this.timer = setTimeout(() => {\n        callback.apply(self)\n        clearTimeout(self.timer)\n      }, ms || 0)\n    },\n\n    validateAvailability() {\n      if (Number(this.mSpace.Seats) > 0) {\n        this.priceUpdated = false\n\n        this.isValidating++\n\n        reservationProvider.methods.checkreservationSpaceAvailability(this.reservation.Key, this.mSpace.Id, this.mSpace.Seats, this.mSpace.SettingId, this.mSpace.StartMinutes, this.mSpace.EndMinutes, this.selectedRate)\n          .then((response) => {\n            this.check = response.data\n            // CTP-1633: an unhandled warning code rendered an empty warning box and blocked saving\n            this.warnings = (this.check.Warnings || []).filter(w => handledWarnings.includes(w))\n            this.mSpace.CalculationType = this.check.SpacePrice.CalculationType\n            this.mSpace.TaxPercentage = this.check.SpacePrice.CalculationType !== 'Unknown' ? this.check.TaxPercentage : 0\n\n            if (this.check && this.check.SpacePrice && this.check.SpacePrice.PriceId > 0) {\n              if (this.mSpace.PricePerSeat !== this.check.PricePerSeat) {\n                this.priceUpdated = true\n              }\n\n              this.mSpace.PricePerSeat = this.check.PricePerSeat\n              this.mSpace.PriceTotal = this.check.PriceTotalignoreWarning\n              this.mSpace.Crc = this.check.Crc\n            }\n\n            this.isAvailable = this.check.IsAvailable\n          })\n          .finally(() => {\n            --this.isValidating\n          })\n      }\n    },\n\n    ignoreWarning(warning) {\n      let warningIndex = this.warnings.findIndex(w => w === warning);\n      if (warningIndex > -1) {\n        this.warnings.splice(warningIndex, 1);\n      }\n    },\n\n    cancelEditReservationSpace() {\n      this.$emit('cancelEditSpace')\n    },\n\n    resetSpaceValue() {\n      this.priceUpdated = false;\n      this.isAvailable = true;\n      this.warnings = [];\n      this.mSpace = cleanSource(this.space);\n      this.selectedRate = this.mSpace.PriceId || 0;\n    },\n\n    updateCrcValue() {\n      this.priceUpdated = false\n\n      crcProvider.methods\n        .checkCrc(this.mSpace.SpaceId, this.mSpace.PricePerSeat)\n        .then((response) => {\n          if (response.status === 200) {\n            this.mSpace.Crc = response.data\n          }\n        })\n    },\n\n    saveSpace() {\n      if (this.blockSaveButton || this.isSaveing) {\n        return;\n      }\n\n      this.mSpace.PriceTotal = this.meetingspaceTotalPrice;\n      this.mSpace.PriceId = this.selectedRate;\n\n      this.isSaving = true;\n\n      reservationProvider.methods\n        .updateReservationSpace(this.reservation.Key, this.mSpace)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update reservation store\n            this.setReservation(response.data);\n            this.$emit('spaceEdited', this.mSpace);\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t('General.Toast_ReservationUpdated'),\n            });\n\n            this.closeDrawer();\n          }\n        })\n        .catch((error) => {\n          this.isSavingError = true;\n          this.responseMessage = error.response.data.Value;\n        })\n        .finally(() => {\n          this.isSaving = false;\n        })\n    },\n\n    setShowYieldSummary(yieldsettingId) {\n      this.itemId = yieldsettingId\n      this.showSideDrawer = true\n      this.showYieldSummary = true\n\n    },\n\n    hideDrawer() {\n      this.itemId = 0;\n      this.showSideDrawer = false;\n      this.showYieldSummary = false;\n    },\n\n    closeDrawer() {\n      // Close \n      this.$emit('hideDrawer');\n    }\n  },\n}\n</script>\n<style lang=\"scss\" scoped>\n.table {\n  td {\n    vertical-align: middle !important;\n  }\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditSpace.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditSpace.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EditSpace.vue?vue&type=template&id=f19e9f3e&scoped=true\"\nimport script from \"./EditSpace.vue?vue&type=script&lang=js\"\nexport * from \"./EditSpace.vue?vue&type=script&lang=js\"\nimport style0 from \"./EditSpace.vue?vue&type=style&index=0&id=f19e9f3e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"f19e9f3e\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div v-if=\"reservation && reservationDate\">\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :showDrawer=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      :drawerSize=\"drawerSize\"\n    >\n      <template v-slot:content>\n        <AddSpace\n          v-if=\"showAddSpace\"\n          :showModal=\"showAddSpace\"\n          :channelId=\"reservation.ChannelId\"\n          :locationId=\"reservation.LocationId\"\n          :showDateInput=\"false\"\n          :startDate=\"$options.filters.parseIsoDateStringToDate(reservationDate.Date)\"\n          :startMinutes=\"resStart\"\n          :endDate=\"$options.filters.parseIsoDateStringToDate(reservationDate.Date)\"\n          :endMinutes=\"resEnd\"\n          :seats=\"Number(reservation.TotalSeats)\"\n          :voucherId=\"reservation.VoucherId\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <EditSpace\n          v-if=\"showEditSpace\"\n          :showModal=\"showEditSpace\"\n          :onClickCancel=\"hideModal\"\n          :channelId=\"reservation.ChannelId\"\n          :isEmployee=\"isEmployee\"\n          :locationId=\"reservation.LocationId\"\n          :meetingtypeId=\"reservation.MeetingtypeId\"\n          :space=\"selectedSpace\"\n          :index=\"selectedSpace.Index\"\n          @spaceEdited=\"spaceEdited\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <SpaceSummary\n          v-if=\"showSpaceSummary\"\n          :spaceId=\"selectedSpace.SpaceId\"\n          :meetingtypeId=\"reservation.MeetingtypeId\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <ModalDeleteSpace\n      v-if=\"showDeleteSpace\"\n      :showModal=\"showDeleteSpace\"\n      :space=\"selectedSpace\"\n      :onClickCancel=\"hideModal\"\n      :reservationDate=\"reservationDate\"\n    />\n\n    <ui-section-header\n      :showAdd=\"!isLocked && reservation.MeetingtypeId === 1\"\n      :addFunction=\"setShowAddSpace\"\n      :addLabel=\"$t('Components.Reservation.ReservationMeetingspace.Icon_AddMeetingspace')\"\n      :showEdit=\"!isLocked && reservation.MeetingtypeId === 1 && resSpaces.length > 0\"\n      :editFunction=\"setMoveSpace\"\n      :editLabel=\"$t('Components.Reservation.ReservationMeetingspace.Icon_ChangeSpace')\"\n    >\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationMeetingspace.Subtitle_Spaces')\n      }}</template>\n    </ui-section-header>\n\n    <Message\n      v-if=\"resSpaces.length === 0\"\n      :message=\"\n        $t('Components.Reservation.ReservationMeetingspace.Text_NoSpacesAdded')\n      \"\n    />\n\n    <div v-if=\"resSpaces.length > 0\">\n      <table\n        class=\"table is-fullwidth is-narrow\"\n        :class=\"{'is-hoverable': !previewOnly}\"\n      >\n        <thead>\n          <tr>\n            <th\n              width=\"75\"\n              class=\"has-text-left\"\n              scope=\"col\"\n            >\n              {{\n                $t('Components.Reservation.ReservationDetail.Table_Quantity')\n              }}\n            </th>\n            <th scope=\"col\">\n              {{\n                $t('Components.Reservation.ReservationMeetingspace.Table_Name')\n              }}\n            </th>\n            <th width=\"250px\">&nbsp;</th>\n            <th\n              width=\"150\"\n              scope=\"col\"\n            >\n              {{\n                $t(\n                  'Components.Reservation.ReservationMeetingspace.Table_Setting'\n                )\n              }}\n            </th>\n            <th\n              v-if=\"resMultiDate\"\n              width=\"100\"\n              scope=\"col\"\n            >\n              {{ $t('Components.Reservation.ReservationDetail.Table_Date') }}\n            </th>\n            <th\n              width=\"100\"\n              scope=\"col\"\n            >\n              {{ $t('Components.Reservation.ReservationDetail.Table_Time') }}\n            </th>\n            <th\n              width=\"100px\"\n              class=\"has-text-right\"\n              scope=\"col\"\n            >\n              {{ $t('Components.Reservation.ReservationDetail.Table_Price') }}\n            </th>\n            <th\n              width=\"100px\"\n              class=\"has-text-right\"\n              scope=\"col\"\n            >\n              {{ $t('Components.Reservation.ReservationDetail.Table_Total') }}\n            </th>\n            <th\n              v-if=\"!previewOnly\"\n              width=\"85px\"\n              class=\"is-hidden-print\"\n            >&nbsp;</th>\n          </tr>\n        </thead>\n        <tbody>\n          <tr\n            v-for=\"(meetingspace, index) in resSpaces\"\n            :key=\"'sId' + meetingspace.Id + '_' + index\"\n            :class=\"{\n              'has-background-success-light': !previewOnly && meetingspace.UseInTotalSeats\n            }\"\n          >\n            <td class=\"has-text-left\">1x</td>\n\n            <td scope=\"row\">\n              <span\n                v-if=\"!previewOnly\"\n                class=\"icon-text\"\n              >\n                <span>{{ meetingspace.SpaceName }}</span>\n                <a\n                  v-if=\"!isDraft\"\n                  @click=\"setShowSpaceSummary(meetingspace)\"\n                  class=\"is-hidden-print\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                  </span>\n                </a>\n              </span>\n              <span v-else>{{ meetingspace.SpaceName }}</span>\n\n              <div v-if=\"meetingspace.Id > 0 && !isDraft\">\n                <Notes\n                  :locationId=\"reservation.LocationId\"\n                  :typeId=\"'ReservationSpace'\"\n                  :itemId=\"meetingspace.Id\"\n                  :notes=\"meetingspace.Notes\"\n                  :showNoNotesMessage=\"false\"\n                  :showAddLinkLeft=\"true\"\n                  :showShareLink=\"false\"\n                  :showNoteVisibility=\"true\"\n                  :linkTypeId=\"'Reservation'\"\n                  :linkItemId=\"reservation.Id\"\n                  :getFresh=\"false\"\n                  :viewType=\"isEmployee ? 'small' : 'minimal'\"\n                />\n              </div>\n            </td>\n            <td>{{ getVoucherName(meetingspace) }}</td>\n            <td v-if=\"reservation.MeetingtypeId === 1\">\n              {{ meetingspace.Seats }}x {{ meetingspace.SettingId | getSettingName }}\n            </td>\n            <td v-if=\"resMultiDate\">\n              {{ meetingspace.StartDate | parseIsoDateStringToDate | dateFormat($i18n.locale) }}\n            </td>\n            <td>\n              {{ getStartMinutes(meetingspace) | minutesToTime }} -\n              {{ getEndMinutes(meetingspace) | minutesToTime }}\n            </td>\n            <td class=\"has-text-right\">\n              <span\n                v-if=\"!meetingspace.InPackage\"\n                class=\"icon-text\"\n              >\n                <span>{{ meetingspace.PricePerSeat | toCurrency($i18n.locale, reservation.Currency) }}</span>\n                <span\n                  v-if=\"meetingspace.CalculationType === 'Unknown'\"\n                  class=\"icon has-text-danger\"\n                  :title=\"$t('Prices.NoPrice')\"\n                >\n                  <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                </span>\n              </span>\n            </td>\n            <td class=\"has-text-right\">\n              <span v-if=\"!meetingspace.InPackage\">{{\n                meetingspace.PriceTotal\n                  | toCurrency(\n                    locationState.Settings.LanguageCulture,\n                    reservation.Currency\n                  )\n              }}</span>\n              <div\n                v-if=\"!meetingspace.InPackage\"\n                class=\"is-size-7 is-italic\"\n                :class=\"{\n                  'has-text-danger has-text-weight-bold':\n                    meetingspace.TaxPercentage === 0,\n                }\"\n              >{{ $t('Components.Reservation.ReservationDetail.Table_Tax') }} {{ meetingspace.TaxPercentage }}%</div>\n              <!-- <div class=\"is-size-7 is-italic\">{{ meetingspace.Deductible }}</div> -->\n            </td>\n            <td\n              width=\"75\"\n              v-if=\"!previewOnly\"\n              class=\"is-hidden-print\"\n            >\n              <div class=\"field is-grouped is-grouped-right\">\n                <p v-if=\"!isLocked\" class=\"control\">\n                  <a\n                    v-if=\"isEmployee && reservation.MeetingtypeId === 1\"\n                    @click=\"setSpaceLock(meetingspace)\"\n                    :style=\"{ overflow: 'visible' }\"\n                    class=\"has-tooltip-arrow has-tooltip-multiline has-tooltip-left\"\n                    :data-tooltip=\"\n                      $t(\n                        'Components.Reservation.ReservationMeetingspace.Tooltip_Lock'\n                      )\n                    \"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"[\n                          'fas',\n                          meetingspace.IsLocked ? 'lock' : 'lock-open',\n                        ]\" />\n                    </span>\n                  </a>\n                </p>\n\n                <p\n                  v-if=\"!isLocked\"\n                  class=\"control\"\n                >\n                  <a @click=\"setShowEditSpace(meetingspace, index)\">\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                    </span>\n                  </a>\n                </p>\n\n                <p\n                  v-if=\"!isLocked && !meetingspace.IsLocked && resSpaces.length !== 1 && (!meetingspace.UseInTotalSeats || spacesInTotalSeatsCount > 1)\"\n                  class=\"control\"\n                >\n                  <a @click=\"setShowDeleteSpace(meetingspace, index)\">\n                    <span class=\"icon has-text-danger\">\n                      <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                    </span>\n                  </a>\n                </p>\n              </div>\n            </td>\n          </tr>\n        </tbody>\n        <tfoot v-if=\"showSpacesSubTotal\">\n          <tr>\n            <td\n              :colspan=\"resMultiDate ? 7 : 6\"\n              class=\"has-text-right\"\n              v-text=\"\n                $t(\n                  'Components.Reservation.ReservationMeetingspace.Table_Subtotal'\n                )\n              \"\n            ></td>\n            <td class=\"has-text-right\">\n              <span>{{\n                total\n                  | toCurrency(\n                    locationState.Settings.LanguageCulture,\n                    reservation.Currency\n                  )\n              }}</span>\n            </td>\n            <td v-if=\"!previewOnly\">&nbsp;</td>\n          </tr>\n        </tfoot>\n      </table>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations, mapGetters } from 'vuex'\nimport { cleanSource } from '@/utils/objectHelper'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\n\nimport AddSpace from '@/components/Reservations/AddSpace'\nimport EditSpace from '@/components/Reservations/EditSpace'\nimport Message from '@/components/UI/Message'\n\nconst ModalDeleteSpace = () =>\n  import('@/components/Reservations/ModalDeleteSpace')\nconst Notes = () => import('@/components/Notes/Notes')\nconst SpaceSummary = () => import('@/components/Spaces/SpaceSummary')\n\nexport default {\n  components: {\n    AddSpace,\n    EditSpace,\n    Message,\n    ModalDeleteSpace,\n    Notes,\n    SpaceSummary,\n  },\n\n  props: {\n    previewOnly: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: false,\n      type: Boolean,\n    },\n\n    reservation: {\n      type: Object,\n      deafault: null\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      currentTotalSeats: 0,\n      drawerTitle: '',\n      drawerSize: 'large',\n      selectedSpace: null,\n      showAddSpace: false,\n      showEditSpace: false,\n      showEditTotalSeats: false,\n      showDeleteSpace: false,\n      showSideDrawer: false,\n      showSpaceSummary: false,\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapGetters('reservationStore', ['isDraft']),\n\n    isEmployee() {\n      let employee = false;\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true;\n      }\n\n      return employee;\n    },\n\n    resDates() {\n      return this.reservation ? this.reservation.Dates : []\n    },\n\n    resMultiDate() {\n      return this.resDates.length > 1\n    },\n\n    resSpaces() {\n      return this.reservationDate.Spaces\n    },\n\n    resStart() {\n      let minStartMinutes = 0\n      if (this.reservation && this.resSpaces.length > 0) {\n        var lowest = Number.POSITIVE_INFINITY\n        var tmp\n        for (var i = this.resSpaces.length - 1; i >= 0; i--) {\n          tmp = this.resSpaces[i].StartMinutes\n          if (tmp < lowest) {\n            lowest = tmp\n          }\n        }\n        minStartMinutes = lowest\n      }\n\n      if (minStartMinutes === 0) {\n        minStartMinutes = 540\n      }\n\n      return minStartMinutes\n    },\n\n    resEnd() {\n      let maxEndMinutes = 0\n      if (this.reservation && this.resSpaces.length > 0) {\n        var highest = Number.NEGATIVE_INFINITY\n        var tmp\n        for (var i = this.resSpaces.length - 1; i >= 0; i--) {\n          tmp = this.resSpaces[i].EndMinutes\n          if (tmp > highest) {\n            highest = tmp\n          }\n        }\n        maxEndMinutes = highest\n      }\n\n      if (maxEndMinutes === 0) {\n        maxEndMinutes = 1020\n      }\n\n      return maxEndMinutes\n    },\n\n    spacesTotalSeats() {\n      let total = 0\n\n      if (this.resSpaces.length > 0) {\n        for (let i = 0; i < this.resSpaces.length; i++) {\n          let space = this.resSpaces[i]\n\n          total += space.Seats\n        }\n      }\n\n      return total\n    },\n\n    spacesInTotalSeatsCount() {\n      let total = 0;\n\n      if (this.resSpaces.length > 0) {\n        total = this.resSpaces.filter(s => s.UseInTotalSeats).length;\n      }\n\n      return total;\n    },\n\n    showSpacesSubTotal() {\n      return this.resSpaces.filter(s => !s.InPackage).length > 0\n    },\n\n    total() {\n      let total = 0.0\n\n      if (this.reservation && this.resSpaces.length > 0) {\n        let nonPackageSpaces = this.resSpaces.filter(s => !s.InPackage)\n        for (let i = 0; i <= nonPackageSpaces.length; i++) {\n          let meetingspace = nonPackageSpaces[i]\n\n          if (meetingspace) {\n            total = total + meetingspace.PriceTotal\n          }\n        }\n      }\n\n      return total\n    },\n  },\n\n  created() {\n    this.currentTotalSeats = this.reservation.TotalSeats;\n\n    EventBus.$on('spacesAdded', () => {\n      this.hideDrawer();\n    });\n  },\n\n  beforeDestroy() {\n    EventBus.$off('spacesAdded');\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    getStartMinutes(meetingspace) {\n      let activeDate = new Date(this.reservationDate.Date).setHours(0, 0, 0, 0);\n      let startDate = new Date(meetingspace.StartDate).setHours(0, 0, 0, 0);\n      let endDate = new Date(meetingspace.EndDate).setHours(0, 0, 0, 0);\n\n      if (activeDate === startDate)\n      {\n        return meetingspace.StartMinutes;\n      }\n\n      if (activeDate === startDate && activeDate === endDate) {\n        return meetingspace.StartMinutes;\n      }\n\n      if (activeDate === startDate) {\n        return meetingspace.StartMinutes;\n      }\n\n      if (activeDate === endDate) {\n        return 0;\n      }\n\n      // Middle day\n      if (activeDate > startDate && activeDate < endDate) {\n        return 0;\n      }\n\n      return null; // Not part of reservation\n    },\n\n    getEndMinutes(meetingspace) {\n      let activeDate = new Date(this.reservationDate.Date).setHours(0, 0, 0, 0);\n      let startDate = new Date(meetingspace.StartDate).setHours(0, 0, 0, 0);\n      let endDate = new Date(meetingspace.EndDate).setHours(0, 0, 0, 0);\n      \n      if (activeDate === startDate && activeDate === endDate) {\n        return meetingspace.EndMinutes;\n      }\n\n      if (activeDate === startDate) {\n        return 1440;\n      }\n\n      if (activeDate === endDate) {\n        return meetingspace.EndMinutes;\n      }\n\n      // Middle day\n      if (activeDate > startDate && activeDate < endDate) {\n        return 1440;\n      }\n\n      return null; // Not part of reservation\n    },\n\n    minutesToTime(minutes) {\n      let hour = Number(Math.floor(minutes / 60))\n      let minute = Number(minutes - hour * 60)\n\n      return (\n        (hour < 10 ? '0' : '') + hour + ':' + (minute < 10 ? '0' : '') + minute\n      )\n    },\n\n    setMoveSpace() {\n      EventBus.$emit('showMoveSpace')\n    },\n\n    getVoucherName(meetingspace) {\n      let name = '';\n\n      if (meetingspace.VoucherId > 0) {\n        name = this.reservation.Voucher?.Name;\n\n        if (this.reservation.Voucher?.Descriptions.length> 0) {\n          name = this.reservation.Voucher.Descriptions.find(d => d.Language === this.reservation.Language).Name;\n        }\n      }\n\n      if (meetingspace.PackageId > 0) {\n        let date = this.reservation.Dates.find(d => d.Date === meetingspace.StartDate);\n        if (date != null) {\n          let pckg = date.Packages.find(p => p.PackageId === meetingspace.PackageId);\n          if (pckg != null) {\n            name = pckg.PackageName;\n\n            if (pckg.Descriptions.length > 0) {\n              name = pckg.Descriptions.find(d => d.Language === this.reservation.Language).Name;\n            }\n          }\n        }\n      }\n\n      return name;\n    },\n\n    setSpaceLock(space) {\n      if (!space.IsLocked) {\n        reservationProvider.methods\n          .lockReservationSpace(this.reservation.Key, space.Id)\n          .then((response) => {\n            if (response.status === 200) {\n              this.setReservation(response.data)\n\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservation.ReservationMeetingspace.Toast_Locked'\n                ),\n              })\n            }\n          })\n          .catch((error) => { })\n      } else {\n        reservationProvider.methods\n          .unlockReservationSpace(this.reservation.Key, space.Id)\n          .then((response) => {\n            if (response.status === 200) {\n              this.setReservation(response.data)\n\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservation.ReservationMeetingspace.Toast_Unlocked'\n                ),\n              })\n            }\n          })\n          .catch((error) => { })\n      }\n    },\n\n    spaceEdited(space) {\n      this.currentTotalSeats = this.spacesTotalSeats\n    },\n\n    setShowSpaceSummary(space) {\n      this.drawerTitle = this.$t('Components.Reservation.ReservationMeetingspace.Title_SpaceDetail');\n      this.showSideDrawer = true;\n      this.showSpaceSummary = true;\n      this.selectedSpace = cleanSource(space);\n    },\n\n    setShowAddSpace() {\n      this.drawerTitle = this.$t('Components.Reservation.ReservationMeetingspace.Title_AddSpace');\n      this.drawerSize = 'extra-large';\n      this.showSideDrawer = true;\n      this.showAddSpace = true;\n    },\n\n    setShowEditSpace(space, index) {\n      this.drawerTitle = this.$t('Components.Reservation.ReservationMeetingspace.Title_EditSpace', { name: space.SpaceName });\n      this.drawerSize = 'extra-large';\n      this.showSideDrawer = true;\n      this.selectedSpace = cleanSource(space);\n      this.selectedSpace.Index = index;\n      this.showEditSpace = true;\n    },\n\n    setShowDeleteSpace(space, index) {\n      this.selectedSpace = cleanSource(space);\n      this.selectedSpace.Index = index;\n      this.showDeleteSpace = true;\n    },\n\n    setShowEditTotalSeats() {\n      this.showEditTotalSeats = true;\n    },\n\n    hideModal() {\n      this.showEditSpace = false;\n      this.showEditTotalSeats = false;\n      this.showDeleteSpace = false;\n\n      this.selectedSpace = null;\n    },\n\n    hideDrawer() {\n      this.drawerTitle = '';\n      this.drawerSize = 'large';\n      this.selectedSpace = null;\n      this.showSpaceSummary = false;\n      this.showSideDrawer = false;\n      this.showAddSpace = false;\n      this.showEditSpace = false;\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.edit-space {\n  backface-visibility: hidden;\n}\n\n.zoom-fade-enter,\n.zoom-fade-leave-active {\n  opacity: 0;\n  //transform: scale(0);\n}\n\n.zoom-fade-enter-active,\n.zoom-fade-leave-active {\n  transition: opacity 0.5s ease;\n  //transform: scale(1) 1.5s ease;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationMeetingspaces.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationMeetingspaces.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationMeetingspaces.vue?vue&type=template&id=8fe4a4c8&scoped=true\"\nimport script from \"./ReservationMeetingspaces.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationMeetingspaces.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReservationMeetingspaces.vue?vue&type=style&index=0&id=8fe4a4c8&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"8fe4a4c8\",\n  null\n  \n)\n\nexport default component.exports","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n  if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _iterableToArray(r) {\n  if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n  throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n  return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvatarImage.vue?vue&type=style&index=0&id=79776e08&prod&lang=sass&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalSpaceCard.vue?vue&type=style&index=0&id=546b327b&prod&lang=sass&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":\"extra-large\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showTermSummary)?_c('TermSummary',{attrs:{\"termId\":_vm.termId,\"terms\":_vm.terms}}):_vm._e()]},proxy:true}],null,false,2929936871)}):_vm._e(),_c('p',{staticClass:\"title\"},[_vm._v(\"Terms\")]),(_vm.showTerms)?_c('div',{staticClass:\"actionBar has-background-white-ter p-4 has-margin-bottom has-text-centered\"},[_c('div',{staticClass:\"mb-2\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationFinalize.label_NotYetAgreedToTerms')))]),_c('div',{staticClass:\"mb-2\"},[_c('BaseCheckbox',{staticClass:\"has-text-left\",attrs:{\"label\":_vm.$t('Components.Reservation.ReservationFinalize.label_AgreeToTerms')},model:{value:(_vm.hasAgreedToTerms),callback:function ($$v) {_vm.hasAgreedToTerms=$$v},expression:\"hasAgreedToTerms\"}})],1),_c('div',[_c('a',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.isSaving },attrs:{\"disabled\":!_vm.hasAgreedToTerms|| _vm.isSaving},on:{\"click\":_vm.finalizeReservation}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationFinalize.button_ConfirmReservation')))])])]):_vm._e(),_c('table',{staticClass:\"table is-fullwidth\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTerms.header_TermsType')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTerms.header_CreatedBy')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTerms.header_Version')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTerms.header_Accepted')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTerms.header_AcceptedBy')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationTerms.header_AcceptedOn')))]),_c('th',[_vm._v(\" \")])])]),_c('tbody',_vm._l((_vm.reservationTerms),function(terms,index){return _c('tr',{key:'t-'+ index},[_c('td',[_vm._v(_vm._s(_vm.$t('TermsType.type_' + terms.TermsType)))]),_c('td',[(terms.Terms.ChannelId > 0 && terms.Terms.LocationId === 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Entity.entity_Channel')))]):_vm._e(),(terms.Terms.ChannelId > 0 && terms.Terms.LocationId > 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Entity.entity_Location')))]):_vm._e(),_c('span',{staticClass:\"ml-2\"},[_vm._v(_vm._s(terms.Terms.ItemName))])]),_c('td',[_vm._v(_vm._s(terms.Terms.Version))]),_c('td',[(!terms.Accepted)?_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1):_vm._e(),(terms.Accepted)?_c('span',{staticClass:\"icon has-text-success\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'check']}})],1):_vm._e()]),_c('td',[(terms.Accepted)?_c('span',[_vm._v(_vm._s(terms.AcceptedByName))]):_vm._e()]),_c('td',[(terms.Accepted)?_c('span',[_vm._v(_vm._s(terms.AcceptedOn))]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[_c('a',{on:{\"click\":function($event){return _vm.setShowTermSummary(terms)}}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'share']}})],1)])])])}),0)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      drawerSize=\"extra-large\"\n    >\n      <template v-slot:content>\n        <TermSummary\n          v-if=\"showTermSummary\"\n          :termId=\"termId\"\n          :terms=\"terms\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <p class=\"title\">Terms</p>\n\n    <div\n      v-if=\"showTerms\"\n      class=\"actionBar has-background-white-ter p-4 has-margin-bottom has-text-centered\"\n    >\n      <div class=\"mb-2\">{{ $t('Components.Reservation.ReservationFinalize.label_NotYetAgreedToTerms') }}</div>\n\n      <div class=\"mb-2\">\n        <BaseCheckbox\n          v-model=\"hasAgreedToTerms\"\n          class=\"has-text-left\"\n          :label=\"$t('Components.Reservation.ReservationFinalize.label_AgreeToTerms')\"\n        />\n      </div>\n\n      <div>\n        <a\n          @click=\"finalizeReservation\"\n          class=\"button is-primary\"\n          :class=\"{ 'is-loading': isSaving }\"\n          :disabled=\"!hasAgreedToTerms|| isSaving\"\n        >{{ $t('Components.Reservation.ReservationFinalize.button_ConfirmReservation') }}</a>\n      </div>\n    </div>\n\n    <table class=\"table is-fullwidth\">\n      <thead>\n        <tr>\n          <th>{{ $t('Components.Reservation.ReservationTerms.header_TermsType') }}</th>\n          <th>{{ $t('Components.Reservation.ReservationTerms.header_CreatedBy') }}</th>\n          <th>{{ $t('Components.Reservation.ReservationTerms.header_Version') }}</th>\n          <th>{{ $t('Components.Reservation.ReservationTerms.header_Accepted') }}</th>\n          <th>{{ $t('Components.Reservation.ReservationTerms.header_AcceptedBy') }}</th>\n          <th>{{ $t('Components.Reservation.ReservationTerms.header_AcceptedOn') }}</th>\n          <th>&nbsp;</th>\n        </tr>\n      </thead>\n      <tbody>\n        <tr\n          v-for=\"(terms, index) in reservationTerms\"\n          :key=\"'t-'+ index\"\n        >\n          <td>{{ $t('TermsType.type_' + terms.TermsType) }}</td>\n          <td>\n            <span v-if=\"terms.Terms.ChannelId > 0 && terms.Terms.LocationId === 0\">{{ $t('Entity.entity_Channel') }}</span>\n            <span v-if=\"terms.Terms.ChannelId > 0 && terms.Terms.LocationId > 0\">{{ $t('Entity.entity_Location') }}</span>\n            <span class=\"ml-2\">{{ terms.Terms.ItemName }}</span>\n          </td>\n          <td>{{ terms.Terms.Version }}</td>\n          <td>\n            <span\n              v-if=\"!terms.Accepted\"\n              class=\"icon has-text-danger\"\n            >\n              <font-awesome-icon :icon=\"['fas', 'times']\" />\n            </span>\n            <span\n              v-if=\"terms.Accepted\"\n              class=\"icon has-text-success\"\n            >\n              <font-awesome-icon :icon=\"['fas', 'check']\" />\n            </span>\n          </td>\n          <td>\n            <span v-if=\"terms.Accepted\">{{ terms.AcceptedByName }}</span>\n          </td>\n          <td>\n            <span v-if=\"terms.Accepted\">{{ terms.AcceptedOn }}</span>\n          </td>\n          <td class=\"has-text-right\">\n            <a @click=\"setShowTermSummary(terms)\">\n              <span class=\"icon is-small\">\n                <font-awesome-icon :icon=\"['fas', 'share']\" />\n              </span>\n            </a>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\n\nimport BaseCheckbox from '@/components/UI/Form/BaseCheckbox.vue'\nimport TermSummary from '@/components/Terms/TermSummary.vue'\n\nexport default {\n  components: {\n    BaseCheckbox,\n    TermSummary\n  },\n\n  props: {\n\n  },\n\n  data() {\n    return {\n      hasAgreedToTerms: false,\n      isSaving: false,\n      showSideDrawer: false,\n      drawerTitle: '',\n      termId: 0,\n      terms: null\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n\n    showTerms() {\n      let block = false;\n\n      for (let i = 0; i < this.reservationTerms.length; i++) {\n        if (!this.reservationTerms[i].Accepted) {\n          block = true;\n          break;\n        }\n      }\n\n      return block;\n    },\n\n    reservationTerms() {\n      let terms = [];\n\n      if (this.reservation && this.reservation.ReservationTerms && this.reservation.ReservationTerms.length > 0) {\n        terms = this.reservation.ReservationTerms;\n      }\n\n      return terms;\n    },\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    finalizeReservation() {\n      if (this.isSaving) {\n        return;\n      }\n\n      this.isSaving = true;\n\n      let data = {\n        TermsAgreement: {\n          HasAgreed: this.hasAgreedToTerms\n        }\n      };\n\n      reservationProvider.methods.finalizeReservation(this.reservation.Key, data)\n        .then((response) => {\n          if (response.status === 200) {\n            this.setReservation(response.data);\n          }\n          this.$emit('reservationFinalized')\n        })\n        .finally(() => {\n          this.isSaving = false;\n        })\n    },\n\n    setShowTermSummary(terms) {\n      this.drawerTitle = '';\n      this.showSideDrawer = true;\n      this.showTermSummary = true;\n\n      this.termId = terms != null ? terms.Id : 0;\n      this.terms = terms.Terms;\n    },\n\n    hideDrawer() {\n      this.termId = 0;\n      this.terms = null;\n      this.drawerTitle = '';\n      this.showSideDrawer = false;\n\n      this.showTermSummary = false;\n    },\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationTerms.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationTerms.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationTerms.vue?vue&type=template&id=0ac87bfc&scoped=true\"\nimport script from \"./ReservationTerms.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationTerms.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"0ac87bfc\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Contact.vue?vue&type=style&index=0&id=15de2dec&prod&scoped=true&lang=scss\"","'use strict';\nvar $ = require('../internals/export');\nvar globalThis = require('../internals/global-this');\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar toString = require('../internals/to-string');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar i2c = require('../internals/base64-map').i2c;\n\nvar $btoa = getBuiltIn('btoa');\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\n\nvar BASIC = !!$btoa && !fails(function () {\n  return $btoa('hi') !== 'aGk=';\n});\n\nvar NO_ARG_RECEIVING_CHECK = BASIC && !fails(function () {\n  $btoa();\n});\n\nvar WRONG_ARG_CONVERSION = BASIC && fails(function () {\n  return $btoa(null) !== 'bnVsbA==';\n});\n\nvar WRONG_ARITY = BASIC && $btoa.length !== 1;\n\n// `btoa` method\n// https://html.spec.whatwg.org/multipage/webappapis.html#dom-btoa\n$({ global: true, bind: true, enumerable: true, forced: !BASIC || NO_ARG_RECEIVING_CHECK || WRONG_ARG_CONVERSION || WRONG_ARITY }, {\n  btoa: function btoa(data) {\n    validateArgumentsLength(arguments.length, 1);\n    // `webpack` dev server bug on IE global methods - use call(fn, global, ...)\n    if (BASIC) return call($btoa, globalThis, toString(data));\n    var string = toString(data);\n    var output = '';\n    var position = 0;\n    var map = i2c;\n    var block, charCode;\n    while (charAt(string, position) || (map = '=', position % 1)) {\n      charCode = charCodeAt(string, position += 3 / 4);\n      if (charCode > 0xFF) {\n        throw new (getBuiltIn('DOMException'))('The string contains characters outside of the Latin1 range', 'InvalidCharacterError');\n      }\n      block = block << 8 | charCode;\n      output += charAt(map, 63 & block >> 8 - position % 1 * 8);\n    } return output;\n  }\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[_c('div',{staticClass:\"accordions\"},_vm._l((_vm.changeData.Dates),function(date,index){return _c('article',{key:index,staticClass:\"accordion has-background-white-bis\",class:{'is-active': _vm.selectedAccordion === index || _vm.showAllAccordions}},[_c('div',{staticClass:\"accordion-header toggle\",on:{\"click\":function($event){return _vm.setActiveAccordion(index)}}},[_c('div',[_c('span',[_vm._v(_vm._s(_vm._f(\"dateFormat\")(date.SourceDate,_vm.$i18n.locale)))]),(date.SourceDate && !_vm.hideDatePicker)?_c('span',[_c('span',{staticClass:\"mx-4\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'arrow-right']}})],1),(_vm.checkIfDateNotEqual(date.SourceDate, date.NewDate))?_c('span',[_vm._v(_vm._s(_vm._f(\"dateFormat\")(date.NewDate,_vm.$i18n.locale)))]):_vm._e()]):_vm._e()]),_c('button',{staticClass:\"toggle\",attrs:{\"aria-label\":\"toggle\"},on:{\"click\":function($event){return _vm.setActiveAccordion(index)}}})]),_c('div',{staticClass:\"accordion-body\"},[_c('div',{staticClass:\"accordion-content\"},[_c('div',{staticClass:\"slider-wrapper\"},[_c('transition-group',{attrs:{\"name\":!_vm.showAlternatives ? 'slideback' : 'slide',\"tag\":\"div\"}},[(!_vm.showAlternatives)?_c('div',{key:1,staticClass:\"slideContent slideContent-dateSelector\"},[(_vm.dataIsSetup)?_c('div',[_c('div',[(!_vm.hideDatePicker)?_c('div',{staticClass:\"wrapper-dateSelector mb-4\"},[_c('div',{staticClass:\"field-date field\"},[_c('v-date-picker',{attrs:{\"mode\":\"single\",\"id\":index,\"value\":date.NewDate,\"from-page\":_vm.openCalendarMonth,\"columns\":_vm.$screens({ default: 1, md: 2, lg: 3 }),\"is-expanded\":_vm.$screens({ default: true, lg: true }),\"is-inline\":true,\"is-required\":true,\"disabled-dates\":_vm.disabledDates},on:{\"dayclick\":function($event){return _vm.searchAvailability($event, index)}}})],1)]):_vm._e(),_c('div',{staticClass:\"mb-4\"},[(_vm.showDateAlreadyExistsWarning || _vm.showDateAlreadySelectedWarning)?_c('div',[_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.CopyDate.warning_DuplicateDate'),\"type\":\"is-danger\"}})],1):_vm._e(),(!_vm.showDateAlreadyExistsWarning && !_vm.showDateAlreadySelectedWarning)?_c('table',{staticClass:\"table is-fullwidth\"},[_c('thead',[_c('tr',[_c('th',{attrs:{\"width\":\"200\"}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_Space')))]),_c('th',{attrs:{\"width\":\"200\"}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_SeatsConfiguration')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_Price')))]),_c('th',{staticClass:\"has-text-left\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_Available')))]),_c('th',{staticClass:\"has-text-right\"},[_vm._v(\" \")])])]),_c('tbody',_vm._l((date.Spaces),function(space){return _c('tr',{key:space.Id},[_c('td',[_vm._v(_vm._s(space.SpaceName))]),_c('td',[_vm._v(_vm._s(space.Seats)+\"x \"+_vm._s(_vm._f(\"getSettingName\")(space.SettingId)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(space.PricePerSeat,_vm.locationState.Settings.LanguageCulture, space.Currency)))]),_c('td',{staticClass:\"has-text-left\"},[(_vm.isCheckingDate)?_c('span',{staticClass:\"is-size-5\",class:{ 'is-loading': _vm.isCheckingDate }},[_vm._v(\" \")]):_vm._e(),(!_vm.isCheckingDate)?_c('span',[(space.Warnings.length === 0)?_c('span',{staticClass:\"icon is-success has-text-success is-size-5\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'check']}})],1):_vm._e(),(space.Warnings.length > 0)?_c('span',{staticClass:\"icon is-danger has-text-danger is-size-5\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1):_vm._e()]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[_c('div',{staticClass:\"field is-grouped is-pulled-right\"},[(_vm.isEmployee && space.Warnings.length)?_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":function($event){return _vm.skipSpace(space)}}},[_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Ignore')))])])]):_vm._e(),(_vm.showAlternativesLink(space))?_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":function($event){return _vm.setShowAlternatives(space, index)}}},[_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_ShowAlternatives')))]),_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-right']}})],1)])]):_vm._e()]),(space.Warnings.length)?_c('div',{staticClass:\"tags\"},_vm._l((space.Warnings),function(warning,wIndex){return _c('span',{key:wIndex,staticClass:\"tag is-danger\"},[_vm._v(\" \"+_vm._s(warning)+\" \"),(_vm.isEmployee)?_c('button',{staticClass:\"delete is-small\",attrs:{\"label\":\"Ignore\"},on:{\"click\":function($event){space.Warnings.splice(space.Warnings.findIndex(w => w === warning), 1)}}}):_vm._e()])}),0):_vm._e()])])}),0)]):_vm._e()])])]):_vm._e()]):_vm._e(),(_vm.showAlternatives)?_c('div',{key:\"2\",staticClass:\"slideContent-alternatives slideContent\"},[_c('div',{staticClass:\"backbar\"},[_c('div',{staticClass:\"button-back-container\"},[_c('a',{staticClass:\"button is-outlined\",on:{\"click\":_vm.hideAlternatives}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Form.Control.Back'))}})])]),_c('div',{staticClass:\"box-currentSpace box\"},[_c('div',{staticClass:\"has-text-grey is-size-7\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyDate.label_CurrentSpace'))+\":\")]),_c('div',{staticClass:\"title is-4 mb-0\"},[_vm._v(\" \"+_vm._s(_vm.selectedSpace.SpaceName)+\" \")]),_c('div',[_c('div',[_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"dateFormat\")(_vm.selectedSpace.StartDate,_vm.$i18n.locale, 'longDateFormat'))+\", \"),_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.selectedSpace.StartMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.selectedSpace.EndMinutes))+\" \")])]),_c('span',[_vm._v(\"| \"+_vm._s(_vm.$tc('Components.Reservation.ModalChangeDate.Text_Seats', _vm.selectedSpace.Seats)))]),_c('span',[_vm._v(\"| \"+_vm._s(_vm._f(\"toCurrency\")(_vm.selectedSpace.PricePerSeat,_vm.$i18n.locale, _vm.selectedSpace.Currency)))])])])])]),_c('hr'),(_vm.isLoadingAlternatives)?_c('ui-loader'):_c('div',{staticClass:\"columns-alternatives\"},_vm._l((_vm.availablity?.Locations),function(location){return _c('div',{key:'las' + location.Id},[_c('AvailableLocation',{key:location.Id,staticClass:\"list-availableSpaces\",attrs:{\"availableLocation\":location,\"meetingtypeId\":_vm.reservation.MeetingtypeId,\"showUnavailable\":_vm.isEmployee,\"viewType\":\"list-row\"}})],1)}),0)],1):_vm._e()])],1)])])])}),0),_c('div',{staticClass:\"buttons is-right mt-6\"},[(!_vm.isSaving)?_c('a',{staticClass:\"button is-ghost has-margin-right\",attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.closeDrawer}},[_vm._v(_vm._s(_vm.$t('Form.Control.Cancel')))]):_vm._e(),_c('a',{staticClass:\"button is-large\",class:[\n        !_vm.isSaving && _vm.enableSaveButton ? 'is-primary' : '',\n        {\n          'is-loading': _vm.isSaving,\n          'is-disabled': _vm.isSaving || !_vm.enableSaveButton,\n        },\n      ],attrs:{\"disabled\":!_vm.enableSaveButton},on:{\"click\":_vm.saveReservation}},[_vm._v(\" \"+_vm._s(_vm.$t('Form.Control.Save'))+\" \")])])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <div class=\"accordions\">\n      <article\n        v-for=\"(date, index) in changeData.Dates\"\n        :key=\"index\"\n        class=\"accordion has-background-white-bis\"\n        :class=\"{'is-active': selectedAccordion === index || showAllAccordions}\"\n      >\n        <div\n          @click=\"setActiveAccordion(index)\"\n          class=\"accordion-header toggle\"\n        >\n          <div>\n            <span>{{ date.SourceDate | dateFormat($i18n.locale) }}</span>\n            <span v-if=\"date.SourceDate && !hideDatePicker\">\n              <span class=\"mx-4\">\n                <font-awesome-icon :icon=\"['fas', 'arrow-right']\" />\n              </span>\n              <span v-if=\"checkIfDateNotEqual(date.SourceDate, date.NewDate)\">{{ date.NewDate | dateFormat($i18n.locale) }}</span>\n            </span>\n          </div>\n          <button\n            @click=\"setActiveAccordion(index)\"\n            class=\"toggle\"\n            aria-label=\"toggle\"\n          ></button>\n        </div>\n        <div class=\"accordion-body\">\n          <div class=\"accordion-content\">\n            <div class=\"slider-wrapper\">\n              <transition-group\n                :name=\"!showAlternatives ? 'slideback' : 'slide'\"\n                tag=\"div\"\n              >\n                <div\n                  v-if=\"!showAlternatives\"\n                  :key=\"1\"\n                  class=\"slideContent slideContent-dateSelector\"\n                >\n                  <div v-if=\"dataIsSetup\">\n                    <div>\n                      <div\n                        v-if=\"!hideDatePicker\"\n                        class=\"wrapper-dateSelector mb-4\"\n                      >\n                        <div class=\"field-date field\">\n                          <v-date-picker\n                            mode=\"single\"\n                            :id=\"index\"\n                            :value=\"date.NewDate\"\n                            :from-page=\"openCalendarMonth\"\n                            :columns=\"$screens({ default: 1, md: 2, lg: 3 })\"\n                            :is-expanded=\"$screens({ default: true, lg: true })\"\n                            :is-inline=\"true\"\n                            :is-required=\"true\"\n                            :disabled-dates=\"disabledDates\"\n                            @dayclick=\"searchAvailability($event, index)\"\n                          >\n                          </v-date-picker>\n                        </div>\n                      </div>\n\n                      <div class=\"mb-4\">\n                        <div v-if=\"showDateAlreadyExistsWarning || showDateAlreadySelectedWarning\">\n                          <Message\n                            :message=\"$t('Components.Reservation.CopyDate.warning_DuplicateDate')\"\n                            type=\"is-danger\"\n                          />\n                        </div>\n\n                        <table\n                          v-if=\"!showDateAlreadyExistsWarning && !showDateAlreadySelectedWarning\"\n                          class=\"table is-fullwidth\"\n                        >\n                          <thead>\n                            <tr>\n                              <th width=\"200\">{{ $t('Components.Reservation.CopyReservation.header_Space') }}</th>\n                              <th width=\"200\">{{ $t('Components.Reservation.CopyReservation.header_SeatsConfiguration') }}</th>\n                              <th>{{ $t('Components.Reservation.CopyReservation.header_Price') }}</th>\n                              <th class=\"has-text-left\">{{ $t('Components.Reservation.CopyReservation.header_Available') }}</th>\n                              <th class=\"has-text-right\">&nbsp;</th>\n                            </tr>\n                          </thead>\n                          <tbody>\n                            <tr\n                              v-for=\"space in date.Spaces\"\n                              :key=\"space.Id\"\n                            >\n                              <td>{{ space.SpaceName }}</td>\n                              <td>{{ space.Seats }}x {{ space.SettingId | getSettingName }}</td>\n                              <td>{{ space.PricePerSeat | toCurrency(locationState.Settings.LanguageCulture, space.Currency) }}</td>\n                              <td class=\"has-text-left\">\n                                <span\n                                  v-if=\"isCheckingDate\"\n                                  class=\"is-size-5\"\n                                  :class=\"{ 'is-loading': isCheckingDate }\"\n                                >&nbsp;</span>\n                                <span v-if=\"!isCheckingDate\">\n                                  <span\n                                    v-if=\"space.Warnings.length === 0\"\n                                    class=\"icon is-success has-text-success is-size-5\"\n                                  >\n                                    <font-awesome-icon :icon=\"['fas', 'check']\" />\n                                  </span>\n                                  <span\n                                    v-if=\"space.Warnings.length > 0\"\n                                    class=\"icon is-danger has-text-danger is-size-5\"\n                                  >\n                                    <font-awesome-icon :icon=\"['fas', 'times']\" />\n                                  </span>\n                                </span>\n                              </td>\n                              <td class=\"has-text-right\">\n                                <div class=\"field is-grouped is-pulled-right\">\n                                  <p\n                                    v-if=\"isEmployee && space.Warnings.length\"\n                                    class=\"control\"\n                                  >\n                                    <a\n                                      @click=\"skipSpace(space)\"\n                                      class=\"icon-text has-text-link\"\n                                    >\n                                      <span>{{$t('Form.Control.Ignore')}}</span>\n                                    </a>\n                                  </p>\n                                  <p\n                                    v-if=\"showAlternativesLink(space)\"\n                                    class=\"control\"\n                                  >\n                                    <a\n                                      @click=\"setShowAlternatives(space, index)\"\n                                      class=\"icon-text has-text-link\"\n                                    >\n                                      <span>{{ $t('Components.Reservation.CopyReservation.label_ShowAlternatives') }}</span>\n                                      <span class=\"icon\"><font-awesome-icon :icon=\"['fas', 'chevron-right']\" /></span>\n                                    </a>\n                                  </p>\n                                </div>\n                                <div\n                                  v-if=\"space.Warnings.length\"\n                                  class=\"tags\"\n                                >\n                                  <span\n                                    v-for=\"(warning, wIndex) in space.Warnings\"\n                                    :key=\"wIndex\"\n                                    class=\"tag is-danger\"\n                                  >\n                                    {{ warning }}\n                                    <button\n                                      v-if=\"isEmployee\"\n                                      @click=\"space.Warnings.splice(space.Warnings.findIndex(w => w === warning), 1)\"\n                                      class=\"delete is-small\"\n                                      label=\"Ignore\"\n                                    ></button>\n                                  </span>\n                                </div>\n                              </td>\n                            </tr>\n                          </tbody>\n                        </table>\n                      </div>\n                    </div>\n                  </div>\n                </div>\n\n                <!-- Show alternatives -->\n                <div\n                  v-if=\"showAlternatives\"\n                  key=\"2\"\n                  class=\"slideContent-alternatives slideContent\"\n                >\n                  <div class=\"backbar\">\n                    <div class=\"button-back-container\">\n                      <a\n                        @click=\"hideAlternatives\"\n                        class=\"button is-outlined\"\n                      >\n                        <span class=\"icon is-small\">\n                          <font-awesome-icon :icon=\"['fas', 'chevron-left']\" />\n                        </span>\n                        <span v-text=\"$t('Form.Control.Back')\"></span>\n                      </a>\n                    </div>\n                    <div class=\"box-currentSpace box\">\n                      <div class=\"has-text-grey is-size-7\">{{ $t('Components.Reservation.CopyDate.label_CurrentSpace') }}:</div>\n                      <div class=\"title is-4 mb-0\">\n                        {{ selectedSpace.SpaceName }}\n                      </div>\n                      <div>\n                        <div>\n                          <span>\n                            {{ selectedSpace.StartDate | dateFormat($i18n.locale, 'longDateFormat') }},\n                            <span>\n                              {{ selectedSpace.StartMinutes | minutesToTime }} -\n                              {{ selectedSpace.EndMinutes | minutesToTime }}\n                            </span>\n                          </span>\n                          <span>| {{ $tc('Components.Reservation.ModalChangeDate.Text_Seats', selectedSpace.Seats) }}</span>\n                          <span>| {{selectedSpace.PricePerSeat | toCurrency($i18n.locale, selectedSpace.Currency) }}</span>\n                        </div>\n                      </div>\n                    </div>\n                  </div>\n                  <hr />\n\n                  <ui-loader v-if=\"isLoadingAlternatives\" />\n                  <div\n                    v-else\n                    class=\"columns-alternatives\"\n                  >\n                    <div\n                      v-for=\"location in availablity?.Locations\"\n                      :key=\"'las' + location.Id\"\n                    >\n                      <AvailableLocation\n                        :key=\"location.Id\"\n                        :availableLocation=\"location\"\n                        :meetingtypeId=\"reservation.MeetingtypeId\"\n                        :showUnavailable=\"isEmployee\"\n                        viewType=\"list-row\"\n                        class=\"list-availableSpaces\"\n                      />\n                    </div>\n                  </div>\n                </div>\n              </transition-group>\n            </div>\n          </div>\n        </div>\n      </article>\n    </div>\n\n    <div class=\"buttons is-right mt-6\">\n      <a\n        v-if=\"!isSaving\"\n        @click=\"closeDrawer\"\n        class=\"button is-ghost has-margin-right\"\n        :disabled=\"isSaving\"\n      >{{ $t('Form.Control.Cancel') }}</a>\n      <a\n        @click=\"saveReservation\"\n        class=\"button is-large\"\n        :class=\"[\n          !isSaving && enableSaveButton ? 'is-primary' : '',\n          {\n            'is-loading': isSaving,\n            'is-disabled': isSaving || !enableSaveButton,\n          },\n        ]\"\n        :disabled=\"!enableSaveButton\"\n      >\n        {{ $t('Form.Control.Save') }}\n      </a>\n    </div>\n  </div>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport availabilityProvider from '@/providers/availability'\nimport reservationProvider from '@/providers/reservation'\nimport { format, isEqual, parseISO } from 'date-fns'\nimport { cleanSource } from '../../utils/objectHelper'\n\nexport default {\n  name: 'change-date',\n\n  components: {\n    AvailableLocation: () => import('@/components/Availability/AvailableLocation'),\n    ReservationSpaceCard: () => import('@/components/Schedule/ReservationSpaceCard'),\n    Message: () => import('@/components/UI/Message')\n  },\n\n  props: {\n    showAllAccordions: {\n      type: Boolean,\n      default: false,\n    },\n    hideDatePicker: {\n      type: Boolean,\n      default: false\n    },\n    action: {\n      type: String,\n      default: '', // changeDate, changeSpace\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      applyVoucher: false,\n      back: false,\n      availablity: {},\n      // isCheckingDate: false,\n      isInitiated: false,\n      isLoading: false,\n      isSaving: false,\n      isSavingError: false,\n      isLoadingAlternatives: false,\n      meetingspaces: [],\n      minDate: new Date(),\n      dataIsSetup: false,\n      selectedAccordion: 0,\n      responseMessage: '',\n      selectedSpace: null,\n      showAlternatives: false,\n      showInput: true,\n      slideContentContainerHeight: '',\n      modalBodySize: {\n        width: 0,\n        height: 0,\n      },\n      changeData: {\n        Dates: []\n      },\n\n      showDateAlreadyExistsWarning: false,\n      showDateAlreadySelectedWarning: false,\n      spaceChanged: false,\n      isCheckingDateCounter: 0,\n\n      openCalendarMonth: { month: new Date().getMonth(), year: new Date().getFullYear() },\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('reservationStore', ['reservation']),\n\n    isCheckingDate() {\n      return this.isCheckingDateCounter > 0\n    },\n\n    isEmployee() {\n      let employee = false\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true\n      }\n\n      return employee\n    },\n\n    disabledDays() {\n      let dates = []\n\n      if (this.reservation && this.reservation.Dates) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let resDate = this.reservation.Dates[i]\n\n          dates.push(this.$options.filters.parseIsoDateStringToDate(resDate.Date))\n        }\n      }\n\n      return dates\n    },\n\n    disabledDates() {\n      let dates = []\n\n      if (this.reservation && this.reservation.Dates) {\n        if (this.reservation.Status !== 'Cancelled') {\n          for (let i = 0; i < this.reservation.Dates.filter(rd => rd.Status !== 'Cancelled').length; i++) {\n            let resDate = this.reservation.Dates[i]\n\n            dates.push({\n              start: this.$options.filters.parseIsoDateStringToDate(resDate.Date),\n              end: this.$options.filters.parseIsoDateStringToDate(resDate.Date)\n            })\n          }\n        }\n\n        if (this.reservation.SetId > 0) {\n          let fitereRes = this.reservation.ReservationSet.filter((r) => r.Status !== 'Cancelled');\n\n          for (let j = 0; j < fitereRes.length; j++) {\n            let set = fitereRes[j];\n\n            dates.push({\n              start: parseISO(set.Date),\n              end: parseISO(set.Date)\n            });\n          }\n        }\n\n        this.changeData.Dates.forEach(cd => {\n          if (cd.NewDate !== null && this.$options.filters.dateObjectIsoDateString(cd.SourceDate, 'yyyy-MM-dd') !== this.$options.filters.dateObjectIsoDateString(cd.NewDate, 'yyyy-MM-dd')) {\n            const _d = typeof cd.NewDate === 'string' ? parseISO(cd.NewDate) : cd.NewDate\n            dates.push({\n              start: _d,\n              end: _d\n            })\n          }\n        })\n      }\n\n      return dates\n    },\n\n    isLocked() {\n      let self = this\n      let locked = false\n\n      if (this.locationId > 0) {\n        if (\n          self.isCreatingInvoice ||\n          self.reservation.HasInvoice > 0 ||\n          self.reservation.StatusId === 3 ||\n          (self.reservation.HasProposal > 0\n            && self.reservation.ProposalStatus === 'WaitingForApproval')\n        ) {\n          locked = true\n        }\n      }\n\n      if (this.locationId === 0) {\n        if (\n          self.reservation &&\n          (self.reservation.HasInvoice > 0 ||\n            self.reservation.StatusId === 3 ||\n            self.reservation.HoursUntilStart <= 24 ||\n            (self.reservation.Expiration && self.reservation.Expiration.IsExpired) ||\n            (self.reservation.HasProposal > 0\n              && self.reservation.ProposalStatus === 'WaitingForApproval'))\n        ) {\n          return true\n        }\n      }\n\n      return locked\n    },\n\n    allSpacesAvailable() {\n      let allAvailable = false;\n      let checkCounter = 0;\n      let errorCounter = 0;\n\n      for (let i = 0; i < this.changeData.Dates.length; i++) {\n        let date = this.changeData.Dates[i];\n\n        for (let j = 0; j < date.Spaces.length; j++) {\n          let space = date.Spaces[j];\n          if (space.Warnings.length > 0) {\n            errorCounter++;\n          }\n\n          checkCounter++;\n        }\n      }\n\n      if (checkCounter > 0 && errorCounter === 0) {\n        allAvailable = true\n      }\n\n      return allAvailable\n    },\n\n    hasChanges() {\n      if (this.isSaving) { return true }\n      let allDatesChanged = this.changeData.Dates.filter(cd => cd.NewDate !== null && this.$options.filters.dateObjectIsoDateString(cd.SourceDate, 'yyyy-MM-dd') !== this.$options.filters.dateObjectIsoDateString(cd.NewDate, 'yyyy-MM-dd')).length > 0\n      return allDatesChanged || this.spaceChanged\n    },\n\n    enableSaveButton() {\n      return this.allSpacesAvailable && !this.isCheckingDate && this.hasChanges\n    },\n  },\n\n  created() {\n    if (this.reservation.VoucherId > 0) {\n      this.applyVoucher = true;\n    }\n\n    this.setupChangeData();\n\n    EventBus.$on('spaceSelected', (space) => {\n      this.updateSelectedSpaceWithAlternative(space)\n    })\n  },\n\n  beforeDestroy() {\n    EventBus.$off('spaceSelected')\n  },\n\n  mounted() {\n    this.isInitiated = true\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    checkIfDateNotEqual(SourceDate, newDate) {\n      return !isEqual(SourceDate, newDate)\n    },\n\n    setActiveAccordion(index) {\n      this.selectedAccordion = index\n\n      this.showAlternatives = false;\n      this.selectedSpace = null;\n    },\n\n    setupChangeData() {\n      for (let i = 0; i < this.reservation.Dates.length; i++) {\n        let resDate = cleanSource(this.reservation.Dates[i]);\n        let dateSpaces = [];\n\n        let firstDate = this.reservation.Dates[0];\n        this.openCalendarMonth.month = parseISO(firstDate.Date).getMonth();\n        this.openCalendarMonth.year = parseISO(firstDate.Date).getFullYear();\n\n\n        for (let j = 0; j < resDate.Spaces.length; j++) {\n          let space = cleanSource(resDate.Spaces[j]);\n\n          dateSpaces.push({\n            Id: space.Id,\n            LocationId: this.locationState.Id,\n            ReservationId: space.ReservationId,\n            SpaceId: space.SpaceId,\n            SpaceName: space.SpaceName,\n            SpaceImage: space.SpaceImage,\n            StartDate: space.StartDate,\n            StartMinutes: space.StartMinutes,\n            EndDate: space.EndDate,\n            EndMinutes: space.EndMinutes,\n            Seats: space.Seats,\n            SettingId: space.SettingId,\n            PriceId: space.PriceId,\n            Currency: space.Currency,\n            PricePerSeat: space.PricePerSeat,\n            CalculationType: space.CalculationType,\n            TaxPercentage: space.TaxPercentage,\n            Deductible: space.Deductible,\n            UseInTotalSeats: space.UseInTotalSeats,\n            IsAvailable: false,\n            Warnings: [],\n            NewPriceId: 0,\n            NewPricePerSeat: 0,\n            NewPriceTotal: 0,\n            NewCalculationType: ''\n          });\n        }\n\n        let changeDate = {\n          SourceDate: parseISO(resDate.Date),\n          NewDate: parseISO(resDate.Date),\n          Spaces: dateSpaces\n        }\n        this.changeData.Dates.push(changeDate)\n      }\n      this.dataIsSetup = true\n    },\n\n    restoreDateSpaces(sourceDate) {\n      let _sourceDate = format(sourceDate, 'yyyy-MM-dd')\n      let resDate = cleanSource(this.reservation.Dates).find(rd => rd.Date === _sourceDate)\n      let dateSpaces = [];\n\n      for (let j = 0; j < resDate.Spaces.length; j++) {\n        let space = cleanSource(resDate.Spaces[j]);\n\n        dateSpaces.push({\n          Id: space.Id,\n          LocationId: this.locationState.Id,\n          ReservationId: space.ReservationId,\n          SpaceId: space.SpaceId,\n          SpaceName: space.SpaceName,\n          SpaceImage: space.SpaceImage,\n          StartDate: space.StartDate,\n          StartMinutes: space.StartMinutes,\n          EndDate: space.EndDate,\n          EndMinutes: space.EndMinutes,\n          Seats: space.Seats,\n          SettingId: space.SettingId,\n          PriceId: space.PriceId,\n          Currency: space.Currency,\n          PricePerSeat: space.PricePerSeat,\n          CalculationType: space.CalculationType,\n          TaxPercentage: space.TaxPercentage,\n          Deductible: space.Deductible,\n          UseInTotalSeats: space.UseInTotalSeats,\n          IsAvailable: false,\n          Warnings: [],\n          NewPriceId: 0,\n          NewPricePerSeat: 0,\n          NewPriceTotal: 0,\n          NewCalculationType: ''\n        });\n      }\n\n      let index = this.changeData.Dates.findIndex(cd => format(cd.SourceDate, 'yyyy-MM-dd') === _sourceDate)\n      if (index === -1) {\n        return -1\n      }\n      this.changeData.Dates[index].Spaces = dateSpaces\n      return this.changeData.Dates[index]\n    },\n\n    getDisplayPrice(price) {\n      return this.$options.filters.toCurrency(\n        price,\n        this.reservation.Currency\n      )\n    },\n\n    skipSpace(space) {\n      let spaceIndex = this.changeData.Dates[this.selectedAccordion].Spaces.findIndex((m) => m.Id === space.Id)\n\n      if (spaceIndex > -1) {\n        this.changeData.Dates[this.selectedAccordion].Spaces[spaceIndex].IsAvailable = true;\n        this.changeData.Dates[this.selectedAccordion].Spaces[spaceIndex].Warnings = [];\n      }\n    },\n\n\n    searchAvailability(val, index) {\n      this.showDateAlreadySelectedWarning = false;\n      let disabledDatesIndex = this.disabledDates.findIndex((d) => {\n        return format(d.start, 'yyyy-MM-dd') === format(val.date, 'yyyy-MM-dd')\n      })\n      if (disabledDatesIndex > -1) {\n        this.showDateAlreadySelectedWarning = true;\n        return;\n      }\n\n      let dates = this.changeData.Dates.filter(d => d.NewDate);\n\n      let dateIndex = dates.findIndex(item => { return format(item.NewDate, 'yyyy-MM-dd') === format(val.date, 'yyyy-MM-dd') });\n      if (dateIndex > -1) {\n        this.showDateAlreadySelectedWarning = true;\n        return;\n      }\n\n      let changeDate = this.changeData.Dates[index];\n      if (changeDate) {\n        const restoredDateSpaces = this.restoreDateSpaces(changeDate.SourceDate)\n        if (restoredDateSpaces !== -1) {\n          changeDate.Spaces = restoredDateSpaces.Spaces\n        }\n        changeDate.NewDate = val.date;\n        this.checkAvailability(changeDate);\n      }\n    },\n\n    checkAvailability(changeDate) {\n      this.showDateAlreadyExistsWarning = false;\n\n\n      let duplicateDateIndex = this.disabledDays.findIndex(item => { return format(item, 'yyyy-MM-dd') === format(changeDate.NewDate, 'yyyy-MM-dd') });\n      if (duplicateDateIndex > -1) {\n        this.showDateAlreadyExistsWarning = true;\n        return;\n      }\n\n      // if (!this.isCheckingDate) {\n      this.isCheckingDateCounter++\n      this.showSpaceAlternatives = false;\n\n      let sourceDateIso = format(changeDate.SourceDate, 'yyyy-MM-dd');\n      let newDateIso = format(changeDate.NewDate, 'yyyy-MM-dd');\n\n      reservationProvider.methods\n        .copyReservationDateCheckAvailability(\n          this.reservation.Key,\n          sourceDateIso,\n          newDateIso,\n          this.applyVoucher\n        )\n        .then((response) => {\n          let meetingspaces = response.data\n\n          for (let i = 0; i < meetingspaces.length; i++) {\n            let m = cleanSource(meetingspaces[i])\n\n            m.NewPrice = m.PricePerSeat\n            m.NewPriceTotal = m.PriceTotal\n\n            let spaceIndex = changeDate.Spaces.findIndex((s) => s.SpaceId === m.SpaceId)\n            if (changeDate.Spaces[spaceIndex]) {\n              if(!this.isEmployee) {\n                changeDate.Spaces[spaceIndex].PriceId = m.SpacePrice.PriceId\n                changeDate.Spaces[spaceIndex].PricePerSeat = m.PricePerSeat\n                changeDate.Spaces[spaceIndex].CalculationType = m.SpacePrice.CalculationType\n              }\n              \n              changeDate.Spaces[spaceIndex].IsAvailable = m.IsAvailable;\n              changeDate.Spaces[spaceIndex].Warnings = m.Warnings;\n              changeDate.Spaces[spaceIndex].NewPriceId = m.SpacePrice.PriceId;\n              changeDate.Spaces[spaceIndex].NewPricePerSeat = m.PricePerSeat;\n              changeDate.Spaces[spaceIndex].NewPriceTotal = m.PriceTotal;\n              changeDate.Spaces[spaceIndex].NewCalculationType = m.SpacePrice.CalculationType;\n\n              changeDate.Spaces[spaceIndex].Crc = m.Crc\n              changeDate.Spaces[spaceIndex].Hash = m.Hash\n            }\n          }\n        })\n        .finally(() => {\n          this.isCheckingDateCounter = Math.max(--this.isCheckingDateCounter, 0)\n        })\n      // }\n    },\n\n    showAlternativesLink(space) {\n      return this.action === 'changeDate' && space.Warnings.length\n        || this.action === 'changeSpace'\n    },\n\n    showPriceSuggestion(meetingspace) {\n      return meetingspace.IsAvailable && !meetingspace.PriceHandled\n    },\n\n    showWarning(checkString, index) {\n      let checks = checkString.split('#')\n\n      return Number(checks[index]) === 0\n    },\n\n    ignoreWarning(meetingspace, index) {\n      let checks = meetingspace.CheckString.split('#')\n      checks[index] = 1\n\n      let checkIndex = checks.findIndex((c) => Number(c) === 0)\n\n      if (checkIndex === -1) {\n        meetingspace.IsAvailable = true\n      }\n\n      meetingspace.CheckString = checks.join('#')\n    },\n\n    getOriginalMeetingspace(meetingspace) {\n      let orgMeetingspace = this.reservation.Spaces.find(\n        (s) => s.Id === Number(meetingspace.Id)\n      )\n\n      orgMeetingspace.LocationId = this.reservation.LocationId\n      return orgMeetingspace\n    },\n\n    getOriginalOrUpdatedSpace(meetingspace) {\n      if (!meetingspace.PriceHandled) {\n        let orgMeetingspace = this.reservation.Spaces.find(\n          (s) => s.Id === Number(meetingspace.Id)\n        )\n\n        orgMeetingspace.LocationId = this.reservation.LocationId\n        return orgMeetingspace\n      }\n      return meetingspace\n    },\n\n    ignoreUpdatePrice(index) {\n      let meetingspace = this.meetingspaces[index]\n      let orgMeetingspace = this.getOriginalMeetingspace(meetingspace)\n\n      this.meetingspaces[index].PricePerSeat = orgMeetingspace.PricePerSeat\n      this.meetingspaces[index].PriceTotal = orgMeetingspace.PriceTotal\n      this.meetingspaces[index].Crc = orgMeetingspace.Crc\n      this.meetingspaces[index].PriceHandled = true\n      Vue.set(this.meetingspaces, index, this.meetingspaces[index])\n    },\n\n    updatePrice(space) {\n      let sIndex = this.meetingspaces.findIndex((m) => m.Id === space.Id)\n\n      if (sIndex > -1) {\n        this.meetingspaces[sIndex].PricePerSeat = this.meetingspaces[\n          sIndex\n        ].NewPrice\n        this.meetingspaces[sIndex].PriceTotal = this.meetingspaces[\n          sIndex\n        ].NewPriceTotal\n        this.meetingspaces[sIndex].Crc = space.NewCrc\n        this.meetingspaces[sIndex].PriceHandled = true\n\n        Vue.set(this.meetingspaces, sIndex, this.meetingspaces[sIndex])\n      }\n    },\n\n    saveReservation() {\n      let self = this\n\n      if (!this.enableSaveButton || this.isSaving) {\n        return;\n      }\n\n      self.isSaving = true\n      let meetingspaces = [];\n\n      let changeData = cleanSource(this.changeData);\n\n      for (let i = 0; i < changeData.Dates.length; i++) {\n        let sourceDateIso = format(this.changeData.Dates[i].SourceDate, 'yyyy-MM-dd');\n        let newDateIso = this.changeData.Dates[i].NewDate ? format(this.changeData.Dates[i].NewDate, 'yyyy-MM-dd') : format(this.changeData.Dates[i].SourceDate, 'yyyy-MM-dd');\n\n        changeData.Dates[i].SourceDate = sourceDateIso;\n        changeData.Dates[i].NewDate = newDateIso;\n\n        for (let j = 0; j < changeData.Dates[i].Spaces.length; j++) {\n          changeData.Dates[i].Spaces[j].StartDate = newDateIso;\n          changeData.Dates[i].Spaces[j].EndDate = newDateIso;\n\n          meetingspaces.push(changeData.Dates[i].Spaces[j]);\n        }\n      }\n\n      reservationProvider.methods\n        .MoveReservationDate(self.reservation.Key, changeData.Dates)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update reservation store\n            this.setReservation(response.data)\n\n            // Send message to display toast on screen\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t('Components.Reservation.ModalChangeDate.Toast_ReservationUpdated'),\n            })\n\n            // Close \n            EventBus.$emit('reloadSchedule');\n            EventBus.$emit('reservationMoved');\n          }\n        })\n        .catch((error) => {\n          self.isSavingError = true\n          self.responseMessage = error.response.data.Value\n        })\n        .finally(() => {\n          self.isSaving = false\n        })\n\n    },\n\n    getAlternativeSpaces(space) {\n      let self = this\n\n      if (!self.isLoadingAlternatives) {\n        self.availablity = {}\n        self.isLoadingAlternatives = true\n\n        self.back = false\n\n        self.selectedSpace = space\n\n        let countryId = 0;\n        let channelId = this.reservation.ChannelId;\n        let locationId = this.reservation.LocationId;\n        let meetingtypeId = this.reservation.MeetingtypeId;\n        let voucherId = this.reservation?.VoucherId ?? 0;\n        //let voucherId = this.reservation.VoucherId;\n        let searchterm = '';\n        let settingId = 0;\n\n        availabilityProvider.methods\n          .getAvailability(\n            space.StartDate,\n            space.EndDate,\n            channelId,\n            countryId,\n            locationId,\n            searchterm,\n            meetingtypeId,\n            space.Seats,\n            space.StartMinutes,\n            space.EndMinutes,\n            settingId,\n            0,\n            voucherId,\n            0,\n            -100,\n            this.$i18n.locale,\n            this.isEmployee\n          )\n          .then((response) => {\n            self.processAvailabilty(response.data)\n          })\n          .finally(() => {\n            self.isLoadingAlternatives = false\n          })\n      }\n    },\n\n    processAvailabilty(data) {\n      let selectedChangeData = this.changeData.Dates[this.selectedAccordion]\n\n      this.availablity = {\n        ...data,\n        ...{\n          Locations: data.Locations.map(location => {\n            return {\n              ...location,\n              Spaces: location.Spaces.filter(availableSpace => {\n                return !selectedChangeData.Spaces.some(existingSpace => {\n                  return existingSpace.SpaceId === availableSpace.SpaceId\n                })\n              })\n            }\n          })\n        }\n      }\n    },\n\n    updateSelectedSpaceWithAlternative(space) {\n      // Find space index in changeData.Dates\n      this.spaceChanged = true\n      let spaceIndex = this.changeData.Dates[this.selectedAccordion].Spaces.findIndex(\n        (m) => m.Id === this.selectedSpace.Id\n      );\n\n      if (spaceIndex > -1) {\n        let newSpace = this.changeData.Dates[this.selectedAccordion].Spaces[spaceIndex]\n\n        newSpace.SpaceId = space.SpaceId\n        newSpace.SpaceName = space.SpaceName\n        newSpace.SpaceImage = space.SpaceImage\n        newSpace.StartDate = space.StartDate\n        newSpace.StartMinutes = space.StartMinutes\n        newSpace.EndDate = space.EndDate\n        newSpace.EndMinutes = space.EndMinutes\n        newSpace.SettingId = space.SettingId\n        newSpace.NewPrice = space.PricePerSeat\n        newSpace.NewPricePerSeat = space.PricePerSeat\n        newSpace.NewPriceTotal = space.PriceTotal\n        newSpace.PriceId = space.YieldSettingId\n        newSpace.PricePerSeat = space.PricePerSeat\n        newSpace.PriceTotal = space.PriceTotal\n        newSpace.CalculationType = space.CalculationType\n        newSpace.Crc = space.Crc\n        newSpace.Hash = space.Hash\n        newSpace.Warnings = []\n        newSpace.IsAvailable = true\n\n        Vue.set(this.changeData.Dates[this.selectedAccordion].Spaces, spaceIndex, newSpace);\n        this.hideAlternatives()\n      }\n    },\n\n    setShowAlternatives(space, index) {\n      let changeDate = this.changeData.Dates[index]\n      if (changeDate) {\n        space.StartDate = changeDate.NewDate ? format(changeDate.NewDate, 'yyyy-MM-dd') : format(changeDate.SourceDate, 'yyyy-MM-dd');\n        space.EndDate = changeDate.NewDate ? format(changeDate.NewDate, 'yyyy-MM-dd') : format(changeDate.SourceDate, 'yyyy-MM-dd');\n\n        this.showAlternatives = true;\n        this.selectedSpace = space;\n\n        this.getAlternativeSpaces(space);\n      }\n    },\n\n    hideAlternatives() {\n      this.showAlternatives = false\n      this.selectedSpace = null;\n      this.availability = {};\n    },\n\n    setShowInput() {\n      this.back = true\n      this.showInput = true\n      this.showSpaceAlternatives = false\n      this.availablity = {}\n      this.selectedSpace = null\n    },\n\n    closeDrawer() {\n      // Close \n      this.$emit('hideDrawer');\n    }\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.accordion-content {\n  overflow-x: hidden;\n  overflow-y: auto;\n}\n.slider-wrapper {\n  height: 80vh;\n  max-height: 600px;\n\n  .slider-group {\n    display: grid;\n    grid-template-columns: 1fr;\n    grid-template-rows: 1fr;\n    grid-column-gap: 0px;\n    grid-row-gap: 0px;\n    height: 100%;\n  }\n}\n\n.slideContent {\n  height: 100%;\n  // overflow: hidden;\n  grid-area: 1/1/2/2;\n\n  .transferDate-columns {\n    height: 100%;\n\n    .column {\n      .not-available {\n        opacity: 0.5;\n      }\n    }\n\n    .wrapper-spaces {\n      overflow: auto;\n      overflow-x: hidden;\n      height: 100%;\n\n      ::v-deep .message.is-warning {\n        margin-top: 5px;\n        margin-bottom: 0;\n        &:first-child {\n          margin-top: 0;\n        }\n        .message-body {\n          padding: 8px;\n          .wrapper {\n            display: flex;\n            align-items: center;\n            span {\n              &:first-child {\n                flex-grow: 1;\n                flex-shrink: 1;\n              }\n            }\n          }\n        }\n      }\n    }\n  }\n\n  &.slideContent-alternatives {\n    display: flex;\n    flex-direction: column;\n    height: 100%;\n    overflow: hidden;\n    .backbar {\n      display: flex;\n      flex-grow: 0;\n      flex-shrink: 0;\n      gap: $gap;\n\n      .box-currentSpace {\n        flex-grow: 1;\n        margin: 0;\n      }\n    }\n    .columns-alternatives {\n      // height: 100%;\n      // overflow: hidden;\n\n      // .column-current-space {\n      //   overflow: auto;\n      //   height: 100%;\n      //   flex: auto;\n      //   width: 25%;\n      // }\n\n      // .column-alternatives {\n      //   overflow: auto;\n      //   height: inherit;\n      //   flex: auto;\n      //   width: 40%;\n      // }\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangeDate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangeDate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ChangeDate.vue?vue&type=template&id=72b2f4b5&scoped=true\"\nimport script from \"./ChangeDate.vue?vue&type=script&lang=js\"\nexport * from \"./ChangeDate.vue?vue&type=script&lang=js\"\nimport style0 from \"./ChangeDate.vue?vue&type=style&index=0&id=72b2f4b5&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"72b2f4b5\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('figure',{staticClass:\"image\"},[_c('img',{staticClass:\"is-rounded has-shadow\",style:({\n      backgroundColor: _vm.chosenRandomColor\n    }),attrs:{\"src\":_vm.mImageSrc,\"loading\":\"lazy\",\"alt\":_vm.itemName},on:{\"error\":_vm.handleError}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <figure class=\"image\">\n    <img\n      :src=\"mImageSrc\"\n      class=\"is-rounded has-shadow\"\n      loading=\"lazy\"\n      :style=\"{\n        backgroundColor: chosenRandomColor\n      }\"\n      :alt=\"itemName\"\n      @error=\"handleError\"\n    />\n  </figure>\n</template>\n\n<script>\nexport default {\n  name: 'AvatarImage',\n\n  props: {\n    type: {\n      type: String,\n      default: 'profile'\n    },\n    imageSrc: {\n      type: String,\n      default: ''\n    },\n    itemName: {\n      type: String,\n      required: true\n    },\n    itemId: {\n      type: Number,\n      default: 0\n    },\n    photoSize: {\n      type: Number,\n      default: 84\n    },\n    fixedColorIndex: {\n      type: [Boolean, Number],\n      default: 0\n    }\n  },\n\n  data() {\n    return {\n      mImageSrc: '',\n      chosenRandomColor: this.randomBgColor()\n    }\n  },\n\n  mounted() {\n    this.mImageSrc = this.getImageSource()\n  },\n\n  methods: {\n    getImageSource() {\n      if (!this.imageSrc) { return this.generateAvatar() }\n      let source = ''\n      switch (this.type) {\n        case 'host':\n          source = this.$options.filters.getHostImage(\n            this.imageSrc,\n            this.itemId,\n            this.photoSize\n          )\n          break\n\n        case 'profile':\n          source = this.$options.filters.getProfileImage(\n            this.imageSrc,\n            this.itemId,\n            this.photoSize\n          )\n          break\n\n        case 'event':\n          source = this.$options.filters.getEventImage(\n            this.imageSrc,\n            this.photoSize\n          )\n          break\n      }\n\n      return source + '?v=' + performance.now()\n    },\n\n    handleError(el) {\n      el.target.src = this.generateAvatar()\n    },\n\n    generateAvatar() {\n      var initialsArr = this.itemName.split(' ')\n      var initials = initialsArr[0].charAt(0).toUpperCase()\n      initials += initialsArr.length > 1 ? initialsArr[initialsArr.length - 1].charAt(0).toUpperCase() : ''\n\n      var canvas = document.createElement('canvas');\n      canvas.width = this.photoSize;\n      canvas.height = this.photoSize;\n\n      // Get the drawing context\n      var ctx = canvas.getContext('2d');\n      ctx.beginPath();\n      ctx.rect(0, 0, this.photoSize, this.photoSize)\n      ctx.closePath();\n      ctx.fillStyle = this.chosenRandomColor\n      ctx.fill();\n      ctx.fillStyle = \"white\";\n      ctx.font = \"bold 30px Arial\";\n      ctx.textAlign = 'center';\n      ctx.fillText(initials, this.photoSize / 2, this.photoSize / 2 + 13);\n      return canvas.toDataURL();\n    },\n\n    randomBgColor() {\n      const ARR_COLORS = ['#C4C3C3', '#4C9B9B', '#0B757A', '#CFE4E5', '#78FFDA', '#95c11e', '#fec632', '#fec632', '#00baff', '#ff6600']\n      if (this.fixedColorIndex !== false && Number(this.fixedColorIndex) <= ARR_COLORS.length - 1) {\n        return ARR_COLORS[this.fixedColorIndex]\n      }\n      return ARR_COLORS[Math.floor(Math.random() * ARR_COLORS.length)]\n    },\n  }\n}\n</script>\n\n<style lang=\"sass\" scoped>\n.image\n  position: relative\n  aspect-ratio: 1\n\n  img\n    aspect-ratio: 1\n    object-fit: cover\n\n  &.is-64by64, &.is-64x64\n    width: 64px\n    height: 64px\n\n  &.is-84by84, &.is-84x84\n    width: 84px\n    height: 84px\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvatarImage.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvatarImage.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AvatarImage.vue?vue&type=template&id=79776e08&scoped=true\"\nimport script from \"./AvatarImage.vue?vue&type=script&lang=js\"\nexport * from \"./AvatarImage.vue?vue&type=script&lang=js\"\nimport style0 from \"./AvatarImage.vue?vue&type=style&index=0&id=79776e08&prod&lang=sass&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"79776e08\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"title is-4\",domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.SetPassword.Mail_Title', _vm.localeOverride))}}),(_vm.errorMessage)?_c('Message',{staticClass:\"is-danger\",attrs:{\"message\":_vm.errorMessage}}):_vm._e(),_c('div',{staticClass:\"content\"},[_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.SetPassword.Text_Notification', _vm.localeOverride))}})]),_c('div',[_c('ui-base-input-field',{attrs:{\"labelForInput\":false,\"error\":_vm.passwordErrors,\"label\":_vm.$t('Components.AccountControls.SetPassword.Label_Password', _vm.localeOverride),\"fieldType\":\"password\",\"required\":\"\"},on:{\"input\":function($event){return _vm.$v.form.password.$touch()},\"blur\":function($event){return _vm.$v.form.password.$touch()}},model:{value:(_vm.form.password),callback:function ($$v) {_vm.$set(_vm.form, \"password\", $$v)},expression:\"form.password\"}}),_c('ui-base-input-field',{attrs:{\"labelForInput\":false,\"error\":_vm.confirmPasswordErrors,\"fieldType\":\"password\",\"label\":_vm.$t('Components.AccountControls.SetPassword.Label_RepeatPassword', _vm.localeOverride),\"required\":\"\"},on:{\"input\":function($event){return _vm.$v.form.confirmPassword.$touch()},\"blur\":function($event){return _vm.$v.form.confirmPassword.$touch()}},model:{value:(_vm.form.confirmPassword),callback:function ($$v) {_vm.$set(_vm.form, \"confirmPassword\", $$v)},expression:\"form.confirmPassword\"}}),_c('ui-base-field-template',{attrs:{\"labelForInput\":false,\"label\":_vm.$t('Components.AccountControls.SetPassword.Label_ConfirmationCode', _vm.localeOverride),\"required\":true},scopedSlots:_vm._u([{key:\"fields\",fn:function(){return [_c('div',{staticClass:\"level is-inline-flex input-codes is-mobile\"},[_c('div',{staticClass:\"level-item\"},[_c('input',{ref:\"codePart1\",staticClass:\"input has-text-centered\",class:[{ 'is-danger': _vm.failCode === -1 || _vm.failCode === 400 }],attrs:{\"type\":\"text\",\"size\":\"2\",\"max\":\"2\",\"maxlength\":\"2\",\"name\":\"codePart1\"},on:{\"keyup\":[_vm.checkCodePart1,function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.handleSubmit.apply(null, arguments)}]}})]),_c('div',{staticClass:\"level-item\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'minus']}})],1),_c('div',{staticClass:\"level-item\"},[_c('input',{ref:\"codePart2\",staticClass:\"input has-text-centered\",class:[{ 'is-danger': _vm.failCode === -1 || _vm.failCode === 400 }],attrs:{\"type\":\"text\",\"size\":\"2\",\"max\":\"2\",\"maxlength\":\"2\",\"name\":\"codePart2\"},on:{\"keyup\":[_vm.checkCodePart2,function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.handleSubmit.apply(null, arguments)}]}})]),_c('div',{staticClass:\"level-item\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'minus']}})],1),_c('div',{staticClass:\"level-item\"},[_c('input',{ref:\"codePart3\",staticClass:\"input has-text-centered\",class:[{ 'is-danger': _vm.failCode === -1 || _vm.failCode === 400 }],attrs:{\"type\":\"text\",\"size\":\"2\",\"max\":\"2\",\"maxlength\":\"2\",\"name\":\"codePart3\"},on:{\"keyup\":[_vm.checkCodePart3,function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.handleSubmit.apply(null, arguments)}]}})])]),(_vm.errorCodeMessage)?_c('p',[_c('span',{staticClass:\"help is-danger\"},[_vm._v(\" \"+_vm._s(_vm.errorCodeMessage)+\" \")])]):_vm._e()]},proxy:true}])}),_c('div',{staticClass:\"has-text-right has-padding-top\"},[_c('button',{staticClass:\"button is-primary\",class:[\n          {\n            'is-disabled': Boolean(_vm.$v.$error) || _vm.isProcessing,\n            'is-loading': _vm.isProcessing,\n          },\n        ],attrs:{\"disabled\":Boolean(_vm.$v.$error) || _vm.isProcessing},on:{\"click\":_vm.handleSubmit}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.SetPassword.Button_Save', _vm.localeOverride))}})])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <div\n      class=\"title is-4\"\n      v-html=\"$t('Components.AccountControls.SetPassword.Mail_Title', localeOverride)\"\n    ></div>\n    <Message\n      class=\"is-danger\"\n      v-if=\"errorMessage\"\n      :message=\"errorMessage\"\n    >\n    </Message>\n    <div class=\"content\">\n      <p v-html=\"$t('Components.AccountControls.SetPassword.Text_Notification', localeOverride)\"></p>\n    </div>\n    <div>\n      <ui-base-input-field\n        v-model=\"form.password\"\n        :labelForInput=\"false\"\n        :error=\"passwordErrors\"\n        :label=\"$t('Components.AccountControls.SetPassword.Label_Password', localeOverride)\"\n        fieldType=\"password\"\n        @input=\"$v.form.password.$touch()\"\n        @blur=\"$v.form.password.$touch()\"\n        required\n      />\n      <ui-base-input-field\n        v-model=\"form.confirmPassword\"\n        :labelForInput=\"false\"\n        :error=\"confirmPasswordErrors\"\n        fieldType=\"password\"\n        :label=\"\n          $t('Components.AccountControls.SetPassword.Label_RepeatPassword', localeOverride)\n        \"\n        @input=\"$v.form.confirmPassword.$touch()\"\n        @blur=\"$v.form.confirmPassword.$touch()\"\n        required\n      />\n      <ui-base-field-template\n        :labelForInput=\"false\"\n        :label=\"\n          $t('Components.AccountControls.SetPassword.Label_ConfirmationCode', localeOverride)\n        \"\n        :required=\"true\"\n      >\n        <template v-slot:fields>\n          <div class=\"level is-inline-flex input-codes is-mobile\">\n            <div class=\"level-item\">\n              <input\n                type=\"text\"\n                ref=\"codePart1\"\n                @keyup=\"checkCodePart1\"\n                size=\"2\"\n                max=\"2\"\n                maxlength=\"2\"\n                name=\"codePart1\"\n                class=\"input has-text-centered\"\n                :class=\"[{ 'is-danger': failCode === -1 || failCode === 400 }]\"\n                @keyup.enter=\"handleSubmit\"\n              />\n            </div>\n            <div class=\"level-item\">\n              <font-awesome-icon :icon=\"['far', 'minus']\" />\n            </div>\n            <div class=\"level-item\">\n              <input\n                type=\"text\"\n                ref=\"codePart2\"\n                @keyup=\"checkCodePart2\"\n                size=\"2\"\n                max=\"2\"\n                maxlength=\"2\"\n                name=\"codePart2\"\n                class=\"input has-text-centered\"\n                :class=\"[{ 'is-danger': failCode === -1 || failCode === 400 }]\"\n                @keyup.enter=\"handleSubmit\"\n              />\n            </div>\n            <div class=\"level-item\">\n              <font-awesome-icon :icon=\"['far', 'minus']\" />\n            </div>\n            <div class=\"level-item\">\n              <input\n                type=\"text\"\n                ref=\"codePart3\"\n                @keyup=\"checkCodePart3\"\n                size=\"2\"\n                max=\"2\"\n                maxlength=\"2\"\n                name=\"codePart3\"\n                class=\"input has-text-centered\"\n                :class=\"[{ 'is-danger': failCode === -1 || failCode === 400 }]\"\n                @keyup.enter=\"handleSubmit\"\n              />\n            </div>\n          </div>\n          <p v-if=\"errorCodeMessage\">\n            <span class=\"help is-danger\">\n              {{ errorCodeMessage }}\n            </span>\n          </p>\n        </template>\n      </ui-base-field-template>\n\n      <div class=\"has-text-right has-padding-top\">\n        <button\n          @click=\"handleSubmit\"\n          :disabled=\"Boolean($v.$error) || isProcessing\"\n          class=\"button is-primary\"\n          :class=\"[\n            {\n              'is-disabled': Boolean($v.$error) || isProcessing,\n              'is-loading': isProcessing,\n            },\n          ]\"\n        >\n          <span v-html=\"$t('Components.AccountControls.SetPassword.Button_Save', localeOverride)\"></span>\n        </button>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport loginProvider from '@/providers/login'\nimport { required, minLength, sameAs } from 'vuelidate/lib/validators'\nimport encryptString from '@/mixins/encryptString'\n\nconst touchMap = new WeakMap()\n\nexport default {\n  name: 'components-set-password',\n\n  components: {\n    Message: () =>\n      import(\n        /* webpackChunkName: \"component-account-controls-setpassword\" */ '@/components/UI/Message'\n      ),\n  },\n\n  mixins: [encryptString],\n\n  inject: {\n    localeOverride: {\n      type: String,\n      default: function() {\n        return this.$i18n.locale\n      }\n    }\n  },\n\n  data() {\n    return {\n      form: {\n        password: '',\n        confirmPassword: '',\n        code: '',\n      },\n      failCode: 0,\n      passwordsNotEqual: false,\n      isProcessing: false,\n      errorCodeMessage: '',\n    }\n  },\n\n  computed: {\n    ...mapState('accountStore', ['confirmationToken']),\n\n    errorMessage() {\n      if (\n        this.failCode === -1 ||\n        this.failCode === -3 ||\n        this.failCode === -4\n      ) {\n        return this.$t(\n          'Components.AccountControls.SetPassword.Message_ErrorCode-1'\n        )\n      } else if (this.failCode === -2) {\n        return this.$t(\n          'Components.AccountControls.SetPassword.Message_ErrorCode-2'\n        )\n      } else if (this.failCode === 400) {\n        return this.$t(\n          'Components.AccountControls.SetPassword.Message_ErrorCode400'\n        )\n      } else if (this.failCode === 429) {\n        return this.$t(\n          'Components.AccountControls.SetPassword.Message_ErrorCode429'\n        )\n      } else if (this.failCode === 500) {\n        return this.$t(\n          'Components.AccountControls.SetPassword.Message_ErrorCode500'\n        )\n      } else if (this.failCode === 501) {\n        return this.$t(\n          'Components.AccountControls.SetPassword.Message_ErrorCode501'\n        )\n      }\n      return ''\n    },\n\n    passwordErrors() {\n      const errors = []\n      if (!this.$v.form.password.$dirty) return errors\n      if (!this.$v.form.password.required) {\n        errors.push(\n          this.$t('Form.InputErrors.RequiredField', {\n            fieldLabel: this.$t(\n              'Components.AccountControls.SetPassword.Label_Password'\n            ),\n          })\n        )\n      }\n      if (!this.$v.form.password.minLength) {\n        errors.push(this.$t('Form.InputErrors.minLength', { minLength: 6 }))\n      }\n      if (!/(?=.*[a-z])/.test(this.form.password)) {\n        errors.push(this.$t('Form.InputErrors.lowercaseCharacter', this.localeOverride))\n      }\n      if (!/(?=.*[A-Z])/.test(this.form.password)) {\n        errors.push(this.$t('Form.InputErrors.uppercaseCharacter', this.localeOverride))\n      }\n      if (!/(?=.*\\d)/.test(this.form.password)) {\n        errors.push(this.$t('Form.InputErrors.numberCharacter', this.localeOverride))\n      }\n      return errors\n    },\n\n    confirmPasswordErrors() {\n      const errors = []\n      if (!this.$v.form.confirmPassword.$dirty) {\n        return errors\n      }\n      if (!this.$v.form.confirmPassword.required) {\n        errors.push(\n          this.$t('Form.InputErrors.Required', this.localeOverride)\n        )\n      } else if (!this.$v.form.confirmPassword.sameAsPassword) {\n        errors.push(this.$t('Form.InputErrors.NotSamePasswords', this.localeOverride))\n      }\n      return errors\n    },\n  },\n\n  /**\n   * Form validation rules\n   */\n  validations: {\n    form: {\n      password: {\n        required,\n        minLength: minLength(8),\n      },\n      confirmPassword: {\n        required,\n        sameAsPassword: sameAs('password'),\n      },\n    },\n  },\n\n  methods: {\n    ...mapMutations('accountStore', ['setConfirmationToken']),\n\n    onCodeValidated() {\n      this.errorCodeMessage = ''\n      if (this.form.code === '') {\n        this.errorCodeMessage = this.$t('Form.InputErrors.RequiredField', {\n          fieldLabel: this.$t(\n            'Components.AccountControls.SetPassword.Label_ConfirmationCode', this.localeOverride\n          ),\n        })\n      } else if (this.failCode === -1) {\n        this.errorCodeMessage = this.$t(\n          'Components.AccountControls.SetPassword.Message_ErrorConfirmationCode', this.localeOverride\n        )\n      }\n    },\n\n    async handleSubmit() {\n      let self = this\n      if (!this.isProcessing) {\n        this.failCode = 0\n        this.isProcessing = true\n        this.$v.$touch()\n        if (this.$v.$invalid) {\n          this.submitStatus = 'ERROR'\n          // console.info(e)\n          this.isProcessing = false\n        } else {\n          // do your submit logic here\n          this.submitStatus = 'PENDING'\n        }\n\n        let encryptedPassword = self.encryptPassword(this.form.confirmPassword)\n\n        // Send request e-mail\n        await loginProvider.methods\n          .changePassword(this.confirmationToken, this.form.code, encryptedPassword)\n          .then((response) => {\n            this.failCode = response.data\n            if (this.failCode > 0) {\n              self.$emit('nextAction')\n\n              this.setConfirmationToken('')\n            } else {\n              this.isProcessing = false\n            }\n          })\n          .catch((e) => {\n            this.failCode = e.response.status\n            this.isProcessing = false\n          })\n          .finally(() => {\n            self = null\n          })\n      }\n    },\n\n    checkCodePart1(e) {\n      if (e.target.value.trim() !== '' && e.target.value.length === 2) {\n        this.$refs.codePart2.focus()\n      }\n      this.updateCode()\n    },\n\n    checkCodePart2(e) {\n      if (e.target.value.trim() !== '' && e.target.value.length === 2) {\n        this.$refs.codePart3.focus()\n      }\n      this.updateCode()\n    },\n\n    checkCodePart3() {\n      this.updateCode()\n    },\n    updateCode() {\n      let output = ''\n      output += this.$refs.codePart1 ? this.$refs.codePart1.value.trim() : ''\n      output += this.$refs.codePart2 ? this.$refs.codePart2.value.trim() : ''\n      output += this.$refs.codePart3 ? this.$refs.codePart3.value.trim() : ''\n      this.form.code = output\n      this.onCodeValidated()\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetPassword.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetPassword.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SetPassword.vue?vue&type=template&id=75738a98&scoped=true\"\nimport script from \"./SetPassword.vue?vue&type=script&lang=js\"\nexport * from \"./SetPassword.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"75738a98\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangeDate.vue?vue&type=style&index=0&id=72b2f4b5&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation.StatusId === 6)?_c('div',[_c('message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationAcceptReject.Message_MustConfirm')}}),_c('div',{staticClass:\"actionBar has-background-white-ter p-4 has-margin-bottom has-text-centered\"},[_c('a',{staticClass:\"button\",class:{ 'is-loading': _vm.isRejecting },attrs:{\"disabled\":_vm.isRejecting || _vm.isAccepting},on:{\"click\":_vm.rejectReservation}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationAcceptReject.Button_Reject')))]),_c('a',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.isAccepting },attrs:{\"disabled\":_vm.isRejecting || _vm.isAccepting},on:{\"click\":_vm.acceptReservation}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationAcceptReject.Button_Accept')))])])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation.StatusId === 6\">\n    <message :message=\"$t('Components.Reservation.ReservationAcceptReject.Message_MustConfirm')\" />\n    <div class=\"actionBar has-background-white-ter p-4 has-margin-bottom has-text-centered\">\n      <a\n        @click=\"rejectReservation\"\n        class=\"button\"\n        :class=\"{ 'is-loading': isRejecting }\"\n        :disabled=\"isRejecting || isAccepting\"\n      >{{ $t('Components.Reservation.ReservationAcceptReject.Button_Reject') }}</a>\n      <a\n        @click=\"acceptReservation\"\n        class=\"button is-primary\"\n        :class=\"{ 'is-loading': isAccepting }\"\n        :disabled=\"isRejecting || isAccepting\"\n      >{{ $t('Components.Reservation.ReservationAcceptReject.Button_Accept') }}</a>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\n\nconst Message = () => import('@/components/UI/Message')\n\nexport default {\n  components: {\n    message: Message,\n  },\n\n  props: {},\n\n  data() {\n    return {\n      isAccepting: false,\n      isRejecting: false,\n      mReservation: null,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  created() {\n    this.mReservation = JSON.parse(JSON.stringify(this.reservation))\n\n    EventBus.$on('reservationAcceptedRejected', (reservation) => {\n      if (this.mReservation.Id === reservation.Id) {\n        this.mReservation.StatusId = reservation.StatusId\n      }\n    })\n  },\n\n  beforeDestroy() {\n    EventBus.$off('reservationAcceptedRejected')\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    acceptReservation() {\n      let self = this\n\n      if (!self.isAccepting && !self.isRejecting) {\n        self.isAccepting = true\n        reservationProvider.methods\n          .acceptReservation(self.reservation.Key)\n          .then((response) => {\n            if (response.status === 200) {\n              this.setReservation(response.data)\n              this.$emit('accepted', response.data)\n              EventBus.$emit('reservationAcceptedRejected', response.data)\n              EventBus.$emit('reservationUpdated', response.data)\n            }\n          })\n          .finally(() => {\n            self.isAccepting = false\n          })\n      }\n    },\n\n    rejectReservation() {\n      let self = this\n\n      if (!self.isAccepting && !self.isRejecting) {\n        self.isRejecting = true\n        reservationProvider.methods\n          .rejectReservation(self.reservation.Key)\n          .then((response) => {\n            if (response.status === 200) {\n              this.mReservation.StatusId = response.data.StatusId\n              this.$emit('denied', this.mReservation)\n              EventBus.$emit('reservationAcceptedRejected', this.mReservation)\n              EventBus.$emit('reservationUpdated', this.mReservation)\n\n              this.setReservation(this.mReservation)\n            }\n          })\n          .finally(() => {\n            self.isRejecting = false\n          })\n      }\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationAcceptReject.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationAcceptReject.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationAcceptReject.vue?vue&type=template&id=af32c1a4\"\nimport script from \"./ReservationAcceptReject.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationAcceptReject.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar iterateSimple = require('../internals/iterate-simple');\nvar SetHelpers = require('../internals/set-helpers');\n\nvar Set = SetHelpers.Set;\nvar SetPrototype = SetHelpers.proto;\nvar forEach = uncurryThis(SetPrototype.forEach);\nvar keys = uncurryThis(SetPrototype.keys);\nvar next = keys(new Set()).next;\n\nmodule.exports = function (set, fn, interruptible) {\n  return interruptible ? iterateSimple({ iterator: keys(set), next: next }, fn) : forEach(set, fn);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar repeat = require('../internals/string-repeat');\n\n// `String.prototype.repeat` method\n// https://tc39.es/ecma262/#sec-string.prototype.repeat\n$({ target: 'String', proto: true }, {\n  repeat: repeat\n});\n","import axios from 'axios'\nimport store from '../store'\nimport Vue from 'vue'\nimport '@/filters/dateTimeFilters.js'\n\nlet getLocationEventsToken = null\n\nexport default {\n  methods: {\n    /**\n     * GET Get event by ID\n     * @param {Number} eventId\n     */\n    async getEvent(eventId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/event/${eventId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n\n      return response\n    },\n\n    /**\n     * GET Get event by Key\n     * @param {String} key\n     */\n    async getEventByKey(key) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/event/${key}/detail`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n\n      return response\n    },\n\n    /**\n     * GET Get events of a specific location\n     * @param {Number} locationId\n     * @param {String} q\n     * @param {Number} page\n     * @param {Number} itemsPerPage\n     * @param {Number} showHistory\n     */\n    async getLocationEvents(\n      locationId = 0,\n      q = '',\n      page = 1,\n      itemsPerPage = 25,\n      showHistory = false\n    ) {\n      if (getLocationEventsToken) {\n        getLocationEventsToken.cancel()\n      }\n      getLocationEventsToken = axios.CancelToken.source()\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/event/location/${locationId}`,\n        {\n          cancelToken: getLocationEventsToken.token,\n\n          params: {\n            q: q,\n            page: page,\n            itemsPerPage: itemsPerPage,\n            showHistory: showHistory,\n          },\n\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n    /**\n     * POST Create event\n     * @param {Number} locationId\n     * @param {String} eventName\n     */\n    async createEvent(\n      locationId = 0,\n      eventName = '',\n      startDate = Vue.options.filters.dateObjectIsoDateString(new Date()) +\n        'T13:00:00',\n      endDate = Vue.options.filters.dateObjectIsoDateString(new Date()) +\n        'T13:00:00',\n      startMinutes = 540,\n      endMinutes = 1020,\n      tags = '',\n      reservationId = 0\n    ) {\n      let criteria = {\n        Type: 'Location',\n        ItemId: locationId,\n        Name: eventName,\n        LocationId: locationId,\n        IsActive: 0,\n        IsPublic: 0,\n        StartDate: startDate,\n        StartMinutes: startMinutes,\n        EndDate: endDate,\n        EndMinutes: endMinutes,\n        Description: '',\n        Image: '',\n        Url: '',\n        Tags: tags,\n        ProgramItems: [],\n        Organizers: [],\n        LocationName: '',\n        Address: '',\n        Postalcode: '',\n        City: '',\n        State: '',\n        Country: '',\n        ReservationId: reservationId\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/event`,\n        criteria,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n    /**\n * POST Create event\n * @param {Number} locationId\n * @param {String} eventName\n */\n    async createReservationEvent(\n      reservationEvent\n    ) {\n      let criteria = {\n        Id: reservationEvent.Id,\n        Name: reservationEvent.Name,\n        LocationId: reservationEvent.locationId,\n        IsActive: reservationEvent.IsActive,\n        StartDate: reservationEvent.StartDate,\n        StartMinutes: reservationEvent.StartMinutes,\n        EndDate: reservationEvent.EndDate,\n        EndMinutes: reservationEvent.EndMinutes,\n        Description: reservationEvent.Description,\n        Image: reservationEvent.Image,\n        Url: reservationEvent.Url,\n        Tags: reservationEvent.Tags,\n        ProgramItems: reservationEvent.ProgramItems,\n        Organizers: reservationEvent.Organizers,\n        LocationName: reservationEvent.LocationName,\n        Address: reservationEvent.Address,\n        Postalcode: reservationEvent.Postalcode,\n        City: reservationEvent.City,\n        State: reservationEvent.State,\n        Country: reservationEvent.Country,\n        ReservationId: reservationEvent.ReservationId,\n        GroupId: reservationEvent.GroupId\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/event`,\n        criteria,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n    /**\n     * PUT save event\n     */\n    async updateEvent(eventData) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/event/${eventData.Id}`,\n        eventData,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n    /**\n     * Delete event\n     * @param {Number} eventId\n     */\n    async deleteEvent(eventId) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/event/${eventId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n    async getReservationEvent(reservationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/event/reservation/${reservationId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n\n  },\n}\n","'use strict';\nvar aSet = require('../internals/a-set');\nvar has = require('../internals/set-helpers').has;\nvar size = require('../internals/set-size');\nvar getSetRecord = require('../internals/get-set-record');\nvar iterateSimple = require('../internals/iterate-simple');\nvar iteratorClose = require('../internals/iterator-close');\n\n// `Set.prototype.isSupersetOf` method\n// https://tc39.es/ecma262/#sec-set.prototype.issupersetof\nmodule.exports = function isSupersetOf(other) {\n  var O = aSet(this);\n  var otherRec = getSetRecord(other);\n  if (size(O) < otherRec.size) return false;\n  var iterator = otherRec.getIterator();\n  return iterateSimple(iterator, function (e) {\n    if (!has(O, e)) return iteratorClose(iterator, 'normal', false);\n  }) !== false;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showAddPayment)?_c('ModalAddPayment',{attrs:{\"showModal\":_vm.showAddPayment,\"onClickCancel\":_vm.hideModal},on:{\"paymentAdd\":_vm.addPayment}}):_vm._e(),(_vm.showDeletePayment)?_c('ModalDeletePayment',{attrs:{\"showModal\":_vm.showDeletePayment,\"payment\":_vm.selectedPayment,\"onClickCancel\":_vm.hideModal},on:{\"paymentDeleted\":_vm.deletePayment}}):_vm._e(),(_vm.showSendPaymentLink)?_c('ModalSendMail',{attrs:{\"showModal\":_vm.showSendPaymentLink,\"onClickCancel\":_vm.hideModal,\"mailType\":'LocationClient_ReservationPayRequest'}}):_vm._e(),_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservations.ReservationPayments.Main_Title')))]},proxy:true}])}),_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column\"},[_c('div',{staticClass:\"box\"},[_c('ReservationTotals',{attrs:{\"reservation\":_vm.reservation,\"showAmountOpen\":true}})],1),(_vm.paymentLink && _vm.paymentLink.Amount > 0)?_c('div',{staticClass:\"box has-margin-top\"},[_c('p',{staticClass:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservations.ReservationPayments.Title_PaymentLink' ))+\" \")]),_c('table',{staticClass:\"table is-fullwidth\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Link\")]),_c('th',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservations.ReservationPayments.TableHeader_Amount' ))+\" \")]),_c('th',[_vm._v(\" \")])])]),_c('tbody',[_c('tr',[_c('td',[_c('a',{on:{\"click\":function($event){return _vm.goToPaymentLink(_vm.paymentLink.Key)}}},[_vm._v(_vm._s(_vm.externalPaymentLink))])]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.paymentLink.Amount,_vm.$i18n.locale, _vm.paymentLink.Currency))+\" \")]),_c('td',{staticClass:\"has-text-right\",attrs:{\"width\":\"85\"}},[_c('div',{staticClass:\"field is-grouped\"},[_c('p',{staticClass:\"control\"},[_c('a',{attrs:{\"title\":\"Generate new link\"},on:{\"click\":function($event){return _vm.deletePaymentLink()}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'sync']}})],1)])]),_c('p',{staticClass:\"control\"},[_c('a',{attrs:{\"title\":\"Send mail\"},on:{\"click\":function($event){return _vm.setShowSendPaymentLink()}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'paper-plane']}})],1)])])])])])])])]):_vm._e()]),_c('div',{staticClass:\"column\"},[(_vm.payments.length === 0)?_c('Message',{staticClass:\"has-margin-top\",attrs:{\"message\":_vm.$t(\n            'Components.Reservations.ReservationPayments.Message_NoPaymentsFound'\n          )}}):_vm._e(),(_vm.payments.length > 0)?_c('table',{staticClass:\"table is-fullwidth is-striped is-narrow has-margin-top\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservations.ReservationPayments.TableHeader_Amount' ))+\" \")]),_c('th',[_vm._v(\"Type\")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservations.ReservationPayments.TableHeader_Date' ))+\" \")]),_c('th',[_vm._v(\"Status\")]),_c('th',[_vm._v(\" \")])])]),_c('tbody',_vm._l((_vm.payments),function(payment){return _c('tr',{key:payment.Id},[_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(payment.Amount, _vm.locationState.Settings.LanguageCulture, payment.Currency ))+\" \")]),_c('td',[_vm._v(_vm._s(payment.Status))]),_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"dateFormat\")(payment.CreatedOn,_vm.$i18n.locale, 'longDateFormat'))+\" \")]),_c('td',[_vm._v(_vm._s(payment.Method))]),_c('td',[_c('div',{staticClass:\"field is-grouped\"},[(payment.Method !== 'Online')?_c('p',{staticClass:\"control\"},[_c('a',{attrs:{\"title\":\"Delete payment\"},on:{\"click\":function($event){return _vm.setShowDeletePayment(payment)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{staticStyle:{\"color\":\"red\"},attrs:{\"icon\":['fas', 'trash-alt']}})],1)])]):_vm._e(),(\n                    payment.Method === 'Online' &&\n                    payment.ExternalCode &&\n                    payment.Status === 'Paid'\n                  )?_c('p',{staticClass:\"control\"},[_c('a',{attrs:{\"title\":\"Refund\"},on:{\"click\":function($event){return _vm.refundPayment(payment.Id)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{staticStyle:{\"color\":\"red\"},attrs:{\"icon\":['fas', 'exchange-alt']}})],1)])]):_vm._e(),(\n                    payment.Method === 'Online' &&\n                    payment.ExternalCode &&\n                    payment.Status === 'RefundPending'\n                  )?_c('p',{staticClass:\"control\"},[_c('a',{attrs:{\"title\":\"Cancel refund\"},on:{\"click\":function($event){return _vm.cancelRefund(payment.Id)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{staticStyle:{\"color\":\"red\"},attrs:{\"icon\":['fas', 'ban']}})],1)])]):_vm._e()])])])}),0)]):_vm._e(),_c('div',{staticClass:\"has-text-right\"},[_c('a',{staticClass:\"button is-primary\",on:{\"click\":_vm.setShowAddPayment}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'plus']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservations.ReservationPayments.Button_AddPayment' )))])])])],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ModalAddPayment\n      v-if=\"showAddPayment\"\n      :showModal=\"showAddPayment\"\n      :onClickCancel=\"hideModal\"\n      @paymentAdd=\"addPayment\"\n    />\n\n    <ModalDeletePayment\n      v-if=\"showDeletePayment\"\n      :showModal=\"showDeletePayment\"\n      :payment=\"selectedPayment\"\n      :onClickCancel=\"hideModal\"\n      @paymentDeleted=\"deletePayment\"\n    />\n\n    <ModalSendMail\n      v-if=\"showSendPaymentLink\"\n      :showModal=\"showSendPaymentLink\"\n      :onClickCancel=\"hideModal\"\n      :mailType=\"'LocationClient_ReservationPayRequest'\"\n    />\n\n    <ui-section-header>\n      <template v-slot:title>{{\n        $t('Components.Reservations.ReservationPayments.Main_Title')\n      }}</template>\n    </ui-section-header>\n\n    <div class=\"columns\">\n      <div class=\"column\">\n        <div class=\"box\">\n          <ReservationTotals :reservation=\"reservation\" :showAmountOpen=\"true\" />\n        </div>\n\n        <div\n          v-if=\"paymentLink && paymentLink.Amount > 0\"\n          class=\"box has-margin-top\"\n        >\n          <p class=\"subtitle\">\n            {{\n              $t(\n                'Components.Reservations.ReservationPayments.Title_PaymentLink'\n              )\n            }}\n          </p>\n          <table class=\"table is-fullwidth\">\n            <thead>\n              <tr>\n                <th>Link</th>\n                <th class=\"has-text-right\">\n                  {{\n                    $t(\n                      'Components.Reservations.ReservationPayments.TableHeader_Amount'\n                    )\n                  }}\n                </th>\n                <th>&nbsp;</th>\n              </tr>\n            </thead>\n            <tbody>\n              <tr>\n                <td>\n                  <a @click=\"goToPaymentLink(paymentLink.Key)\">{{\n                    externalPaymentLink\n                  }}</a>\n                </td>\n                <td class=\"has-text-right\">\n                  {{\n                    paymentLink.Amount\n                      | toCurrency($i18n.locale, paymentLink.Currency)\n                  }}\n                </td>\n                <td width=\"85\" class=\"has-text-right\">\n                  <div class=\"field is-grouped\">\n                    <p class=\"control\">\n                      <a @click=\"deletePaymentLink()\" title=\"Generate new link\">\n                        <span class=\"icon\">\n                          <font-awesome-icon :icon=\"['fas', 'sync']\" />\n                        </span>\n                      </a>\n                    </p>\n\n                    <p class=\"control\">\n                      <a @click=\"setShowSendPaymentLink()\" title=\"Send mail\">\n                        <span class=\"icon\">\n                          <font-awesome-icon :icon=\"['fas', 'paper-plane']\" />\n                        </span>\n                      </a>\n                    </p>\n                  </div>\n                </td>\n              </tr>\n            </tbody>\n          </table>\n        </div>\n      </div>\n      <div class=\"column\">\n        <Message\n          v-if=\"payments.length === 0\"\n          :message=\"\n            $t(\n              'Components.Reservations.ReservationPayments.Message_NoPaymentsFound'\n            )\n          \"\n          class=\"has-margin-top\"\n        />\n\n        <table\n          v-if=\"payments.length > 0\"\n          class=\"table is-fullwidth is-striped is-narrow has-margin-top\"\n        >\n          <thead>\n            <tr>\n              <th>\n                {{\n                  $t(\n                    'Components.Reservations.ReservationPayments.TableHeader_Amount'\n                  )\n                }}\n              </th>\n              <th>Type</th>\n              <th>\n                {{\n                  $t(\n                    'Components.Reservations.ReservationPayments.TableHeader_Date'\n                  )\n                }}\n              </th>\n              <th>Status</th>\n              <th>&nbsp;</th>\n            </tr>\n          </thead>\n          <tbody>\n            <tr v-for=\"payment in payments\" :key=\"payment.Id\">\n              <td>\n                {{\n                  payment.Amount\n                    | toCurrency(\n                      locationState.Settings.LanguageCulture,\n                      payment.Currency\n                    )\n                }}\n              </td>\n              <td>{{ payment.Status }}</td>\n\n              <td>\n                {{\n                  payment.CreatedOn | dateFormat($i18n.locale, 'longDateFormat')\n                }}\n              </td>\n              <td>{{ payment.Method }}</td>\n              <td>\n                <div class=\"field is-grouped\">\n                  <p v-if=\"payment.Method !== 'Online'\" class=\"control\">\n                    <a\n                      @click=\"setShowDeletePayment(payment)\"\n                      title=\"Delete payment\"\n                    >\n                      <span class=\"icon\">\n                        <font-awesome-icon\n                          :icon=\"['fas', 'trash-alt']\"\n                          style=\"color: red\"\n                        />\n                      </span>\n                    </a>\n                  </p>\n\n                  <p\n                    v-if=\"\n                      payment.Method === 'Online' &&\n                      payment.ExternalCode &&\n                      payment.Status === 'Paid'\n                    \"\n                    class=\"control\"\n                  >\n                    <a @click=\"refundPayment(payment.Id)\" title=\"Refund\">\n                      <span class=\"icon\">\n                        <font-awesome-icon\n                          :icon=\"['fas', 'exchange-alt']\"\n                          style=\"color: red\"\n                        />\n                      </span>\n                    </a>\n                  </p>\n\n                  <p\n                    v-if=\"\n                      payment.Method === 'Online' &&\n                      payment.ExternalCode &&\n                      payment.Status === 'RefundPending'\n                    \"\n                    class=\"control\"\n                  >\n                    <a @click=\"cancelRefund(payment.Id)\" title=\"Cancel refund\">\n                      <span class=\"icon\">\n                        <font-awesome-icon\n                          :icon=\"['fas', 'ban']\"\n                          style=\"color: red\"\n                        />\n                      </span>\n                    </a>\n                  </p>\n                </div>\n              </td>\n            </tr>\n          </tbody>\n        </table>\n\n        <div class=\"has-text-right\">\n          <a @click=\"setShowAddPayment\" class=\"button is-primary\">\n            <span class=\"icon\">\n              <font-awesome-icon :icon=\"['fas', 'plus']\" />\n            </span>\n            <span>{{\n              $t(\n                'Components.Reservations.ReservationPayments.Button_AddPayment'\n              )\n            }}</span></a\n          >\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState } from 'vuex'\nimport paymentProvider from '@/providers/payment'\n\nexport default {\n  components: {\n    Message: () => import('@/components/UI/Message'),\n    ModalAddPayment: () => import('@/components/Reservations/ModalAddPayment'),\n    ModalDeletePayment: () =>\n      import('@/components/Reservations/ModalDeletePayment'),\n    ReservationTotals: () =>\n      import('@/components/Reservations/ReservationTotals'),\n    ModalSendMail: () => import('@/components/Reservations/ModalSendMail'),\n  },\n\n  props: {},\n\n  data() {\n    return {\n      selectedPayment: null,\n      isLoading: true,\n      payments: [],\n      showAddPayment: false,\n      showDeletePayment: false,\n      showSendPaymentLink: false,\n      paymentLink: null,\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('reservationStore', ['reservation']),\n\n    externalPaymentLink() {\n      let link = ''\n\n      if (this.paymentLink) {\n        link =\n          window.location.protocol +\n          '//' +\n          window.location.host +\n          '/pay/' +\n          this.paymentLink.Key\n      }\n\n      return link\n    },\n  },\n\n  created() {\n    this.getReservationPayments()\n    this.getPaymentLink()\n  },\n\n  methods: {\n    getPaymentLink() {\n      paymentProvider.methods\n        .getPaymentLink('Reservation', this.reservation.Id)\n        .then((response) => {\n          if (response.status === 200) {\n            this.paymentLink = response.data\n          }\n        })\n        .catch((err) => {})\n    },\n\n    deletePayment(payment) {\n      let index = this.payments.findIndex((p) => p.Id === payment.Id)\n      if (index > -1) {\n        this.payments.splice(index, 1)\n\n        this.deletePaymentLink()\n      }\n    },\n\n    addPayment(payment) {\n      let self = this\n      self.payments.push(payment)\n\n      this.deletePaymentLink()\n    },\n\n    getReservationPayments() {\n      let self = this\n      paymentProvider.methods\n        .getReservationPayments(this.reservation.Id)\n        .then((response) => {\n          self.payments = response.data\n        })\n        .catch((e) => {})\n        .finally(() => {\n          self.isLoading = false\n        })\n    },\n\n    deletePaymentLink() {\n      paymentProvider.methods\n        .deletePaymentLink(this.paymentLink.Key)\n        .then((response) => {\n          if (response.status === 204) {\n            this.paymentLink = null\n\n            this.getPaymentLink()\n          }\n        })\n        .catch((err) => {})\n    },\n\n    refundPayment(paymentId) {\n      paymentProvider.methods\n        .startPaymentRefund(paymentId)\n        .then((response) => {\n          if (response.status === 200) {\n            let index = this.payments.findIndex((p) => p.Id === paymentId)\n            if (index > -1) {\n              Vue.set(this.payments, index, response.data)\n            }\n          }\n        })\n        .catch((err) => {})\n    },\n\n    cancelRefund(paymentId) {\n      paymentProvider.methods\n        .cancelRefundRequest(paymentId)\n        .then((response) => {\n          if (response.status === 200) {\n            let index = this.payments.findIndex((p) => p.Id === paymentId)\n            if (index > -1) {\n              Vue.set(this.payments, index, response.data)\n            }\n          }\n        })\n        .catch((err) => {})\n    },\n\n    goToPaymentLink(paymentKey) {\n      window.open(\n        window.location.protocol +\n          '//' +\n          window.location.host +\n          '/pay/' +\n          paymentKey,\n        '_blank'\n      )\n    },\n\n    setShowPayments() {\n      this.setVisibleItem('payments')\n    },\n\n    setShowAddPayment() {\n      this.showAddPayment = true\n    },\n\n    setShowDeletePayment(payment) {\n      this.selectedPayment = payment\n      this.showDeletePayment = true\n    },\n\n    setShowSendPaymentLink() {\n      this.showSendPaymentLink = true\n    },\n\n    hideModal() {\n      this.showAddPayment = false\n      this.showDeletePayment = false\n      this.showSendPaymentLink = false\n\n      this.selectedPayment = null\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationPayments.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationPayments.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationPayments.vue?vue&type=template&id=539eebd6\"\nimport script from \"./ReservationPayments.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationPayments.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import axios from 'axios'\nimport store from '../store'\n\nlet getChannelsToken = null\n\nconst apiUrl = process.env.VUE_APP_API_BASE_URL + '/api'\nconst apiToken = process.env.VUE_APP_API_KEY\n\nexport default {\n  methods: {\n    async getChannelById(channelId) {\n      const response = await axios.get(`${apiUrl}/v1/channel/${channelId}`, {\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: apiToken,\n          profileToken: store.getters['profileStore/getProfileToken']\n        }\n      })\n      return response\n    },\n\n    async getChannelByUrl(url) {\n      const response = await axios.get(`${apiUrl}/v1/channel/url`, {\n        params: {\n          url: url\n        },\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: apiToken,\n          profileToken: store.getters['profileStore/getProfileToken']\n        }\n      })\n      return response\n    },\n\n    async getChannels(nonPublic = false, inActive = false) {\n      getChannelsToken && getChannelsToken.cancel()\n      getChannelsToken = axios.CancelToken.source()\n\n      const response = await axios.get(`${apiUrl}/v1/channel`, {\n        cancelToken: getChannelsToken.token,\n\n        params: {\n          nonPublic: nonPublic,\n          inActive: inActive\n        },\n\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: apiToken,\n          profileToken: store.getters['profileStore/getProfileToken']\n        }\n      })\n      return response\n    },\n\n    async addLocationChannelSubscription(locationId, channelId, packageId, language) {\n      let criteria = {\n        LocationId: locationId,\n        ChannelId: channelId,\n        PackageId: packageId,\n        Language: language\n      }\n\n      const response = await axios.post(`${apiUrl}/v1/channel/location/channelSubscription`,\n        criteria,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: apiToken,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        })\n      return response\n    }\n  }\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Options.vue?vue&type=style&index=0&id=21d1c0c8&prod&lang=sass&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('article',{staticClass:\"media media-comments commentsSection\",class:{ 'gray-out': _vm.isDeleting }},[_c('div',{staticClass:\"media-left\"},[_c('p',{staticClass:\"image is-32x32\"},[_c('img',{staticClass:\"is-round has-shadow\",style:({\n        backgroundImage: `url(${_vm.$options.filters.getProfileImage(\n          _vm.mComment.ProfileImage,\n          _vm.mComment.ProfileId,\n          38\n        )})`,\n        }),attrs:{\"src\":require(\"@/assets/images/spacer1_1.gif\")}})])]),_c('div',{staticClass:\"media-content\"},[_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"has-text-grey postDetailBar is-size-7\"},[_vm._v(\" \"+_vm._s(_vm._f(\"longDateFormat\")(_vm._f(\"dateTimeStampToDate\")(_vm.mComment.CreatedOn),_vm.$i18n.locale))+\" - \"+_vm._s(_vm._f(\"timeFromDateTimeStamp\")(_vm.mComment.CreatedOn))+\" \")]),_c('div',{staticClass:\"is-size-7 enable-line-break\"},[_c('strong',[_vm._v(_vm._s(_vm.mComment.ProfileName)+\", \")]),_c('span',{class:{ 'is-deleted': _vm.mComment.IsDeleted }},[_vm._v(_vm._s(_vm.$options.filters.stripHtml(_vm.mComment.Text)))])]),_c('div',{staticClass:\"has-margin-top\"},[(_vm.showCommentInput)?_c('div',[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.commentText),expression:\"commentText\"}],staticClass:\"textarea has-margin-bottom\",domProps:{\"value\":(_vm.commentText)},on:{\"input\":function($event){if($event.target.composing)return;_vm.commentText=$event.target.value}}}),_vm._v(\" \"),_c('a',{staticClass:\"has-margin-right\",on:{\"click\":_vm.cancelShowCommentInput}},[_vm._v(_vm._s(_vm.$t('Components.Comments.CommentItem.Button_Cancel')))]),_c('a',{staticClass:\"button is-primary is-small\",class:{'is-loading': _vm.isSavingReply},attrs:{\"disabled\":_vm.isSavingReply},on:{\"click\":function($event){return _vm.sendComment(_vm.mComment)}}},[_vm._v(_vm._s(_vm.$t('Components.Comments.CommentItem.Button_Send')))])]):_vm._e()]),_c('nav',{staticClass:\"level is-mobile\"},[_c('div',{staticClass:\"level-left\"},[(\n            _vm.isLoggedIn &&\n            !_vm.showCommentInput &&\n            _vm.mComment.CreatedBy !== _vm.profile.Id &&\n            _vm.showReplyLink\n            )?_c('a',{staticClass:\"is-size-7\",on:{\"click\":function($event){return _vm.setShowCommentInput()}}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'reply']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Comments.CommentItem.Button_Reply')))])]):_vm._e()])]),_vm._l((_vm.filterComments(_vm.mComment.Id)),function(comment){return _c('CommentItem',{key:comment.Id,attrs:{\"commentObj\":comment,\"comments\":_vm.mComments,\"showReplyLink\":comment.ParentId === 0}})})],2)]),_c('div',{staticClass:\"media-right\"},[(\n      !_vm.mComment.IsDeleted &&\n      _vm.mComment.CreatedBy === _vm.profile.Id &&\n      _vm.showDeleteLink\n    )?_c('a',{staticClass:\"has-text-danger\",on:{\"click\":function($event){return _vm.deleteComment(_vm.mComment)}}},[_c('span',{staticClass:\"icon\",class:{ 'is-loading': _vm.isDeleting }},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)]):_vm._e()])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <article\n    class=\"media media-comments commentsSection\"\n    :class=\"{ 'gray-out': isDeleting }\"\n  >\n    <div class=\"media-left\">\n      <p class=\"image is-32x32\">\n        <img\n          src=\"@/assets/images/spacer1_1.gif\"\n          class=\"is-round has-shadow\"\n          :style=\"{\n          backgroundImage: `url(${$options.filters.getProfileImage(\n            mComment.ProfileImage,\n            mComment.ProfileId,\n            38\n          )})`,\n          }\"\n        />\n      </p>\n    </div>\n    <div class=\"media-content\">\n      <div class=\"content\">\n        <div class=\"has-text-grey postDetailBar is-size-7\">\n          {{\n            mComment.CreatedOn\n            | dateTimeStampToDate\n            | longDateFormat($i18n.locale)\n          }}\n          -\n          {{ mComment.CreatedOn | timeFromDateTimeStamp }}\n        </div>\n        <div class=\"is-size-7 enable-line-break\">\n          <strong>{{ mComment.ProfileName }}, </strong>\n          <span :class=\"{ 'is-deleted': mComment.IsDeleted }\">{{\n            $options.filters.stripHtml(mComment.Text)\n            }}</span>\n        </div>\n\n        <div class=\"has-margin-top\">\n          <div v-if=\"showCommentInput\">\n            <textarea\n              class=\"textarea has-margin-bottom\"\n              v-model=\"commentText\"\n            />\n            <a\n              @click=\"cancelShowCommentInput\"\n              class=\"has-margin-right\"\n            >{{\n              $t('Components.Comments.CommentItem.Button_Cancel')\n              }}</a>\n            <a\n              @click=\"sendComment(mComment)\"\n              :disabled=\"isSavingReply\"\n              :class=\"{'is-loading': isSavingReply}\"\n              class=\"button is-primary is-small\"\n            >{{ $t('Components.Comments.CommentItem.Button_Send') }}</a>\n          </div>\n        </div>\n\n        <nav class=\"level is-mobile\">\n          <div class=\"level-left\">\n            <a\n              v-if=\"\n              isLoggedIn &&\n              !showCommentInput &&\n              mComment.CreatedBy !== profile.Id &&\n              showReplyLink\n              \"\n              @click=\"setShowCommentInput()\"\n              class=\"is-size-7\"\n            >\n              <span class=\"icon is-small\">\n                <font-awesome-icon :icon=\"['fas', 'reply']\" />\n              </span>\n              <span>{{\n                $t('Components.Comments.CommentItem.Button_Reply')\n                }}</span>\n            </a>\n          </div>\n        </nav>\n\n        <CommentItem\n          v-for=\"comment in filterComments(mComment.Id)\"\n          :key=\"comment.Id\"\n          :commentObj=\"comment\"\n          :comments=\"mComments\"\n          :showReplyLink=\"comment.ParentId === 0\"\n        />\n      </div>\n    </div>\n    <div class=\"media-right\">\n      <a\n        @click=\"deleteComment(mComment)\"\n        class=\"has-text-danger\"\n        v-if=\"\n        !mComment.IsDeleted &&\n        mComment.CreatedBy === profile.Id &&\n        showDeleteLink\n      \"\n      >\n        <span\n          class=\"icon\"\n          :class=\"{ 'is-loading': isDeleting }\"\n        >\n          <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n        </span>\n      </a>\n    </div>\n  </article>\n</template>\n\n<script>\nimport { mapGetters, mapMutations, mapState } from 'vuex'\nimport comment from '@/providers/comment'\nimport { EventBus } from '@/eventbus/event-bus'\n\nexport default {\n  components: {\n    CommentItem: () => import('@/components/Comments/CommentItem'),\n  },\n\n  props: {\n    commentObj: null,\n\n    comments: {\n      type: Array,\n      default: function() {\n        return []\n      },\n    },\n\n    showDeleteLink: {\n      type: Boolean,\n      default: true,\n    },\n\n    showReplyLink: {\n      type: Boolean,\n      default: true,\n    },\n  },\n\n  data() {\n    return {\n      commentText: '',\n      mComment: this.$props.commentObj,\n      mComments: this.$props.comments,\n      showCommentInput: false,\n      isDeleting: false,\n      isSavingReply: false\n    }\n  },\n\n  computed: {\n    ...mapGetters({\n      isLoggedIn: 'profileStore/getIsLoggedIn',\n      profile: 'profileStore/getProfile',\n    })\n  },\n\n  methods: {\n    // NOTE: Add link in name to commentitem to show that user's profile drawer.\n    // showProfileDetail(profileId) {\n    //   this.$store.commit('setSelectedPublicProfile', profileId)\n    // },\n\n    filterComments(parentId) {\n      return this.mComments.filter(\n        (c) => c.ParentId === parentId && !c.IsDeleted\n      )\n    },\n\n    setShowCommentInput(comment) {\n      this.showCommentInput = true\n    },\n\n    cancelShowCommentInput(comment) {\n      if (this.isSavingReply) { return }\n      this.showCommentInput = false\n    },\n\n    sendComment(value) {\n      const _commentText = this.$options.filters.stripHtml(this.commentText)\n\n      if (!_commentText || this.isSavingReply) { return }\n\n      this.isSavingReply = true\n\n      comment.methods\n        .replyToComment(value.Id, _commentText)\n        .then((response) => {\n          this.mComments.push(response.data)\n          this.commentText = ''\n          this.showCommentInput = false\n        })\n        .catch((err) => { })\n        .finally(() => { this.isSavingReply = false })\n    },\n\n    deleteComment(value) {\n      if (this.isDeleting) { return }\n      this.isDeleting = true\n      comment.methods\n        .deleteComment(value.Id)\n        .then((response) => {\n          EventBus.$emit('showToast', {\n            type: 'info',\n            message: this.$t('General.DeletedSuccesfully')\n          })\n          EventBus.$emit('commentDeleted', value)\n        })\n        .catch((err) => {\n          this.isDeleting = false\n          EventBus.$emit('showToast', {\n            type: 'info',\n            message: this.$t(\n              'General.DeletingError'\n            ),\n          })\n        })\n        .finally(() => {\n        })\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.is-deleted {\n  text-decoration: line-through;\n}\n\n.enable-line-break {\n  white-space: pre-wrap;\n}\n\n.gray-out {\n  opacity: 0.7;\n}\n\n.commentsSection {\n  border-radius: 8px;\n  // align-items: center;\n  padding: 5px;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommentItem.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommentItem.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CommentItem.vue?vue&type=template&id=bf6e0d8c&scoped=true\"\nimport script from \"./CommentItem.vue?vue&type=script&lang=js\"\nexport * from \"./CommentItem.vue?vue&type=script&lang=js\"\nimport style0 from \"./CommentItem.vue?vue&type=style&index=0&id=bf6e0d8c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"bf6e0d8c\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageViewer.vue?vue&type=style&index=0&id=0581e4ae&prod&lang=sass&scoped=true\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Images.vue?vue&type=style&index=0&id=326b7365&prod&scoped=true&lang=scss\"","import axios from 'axios'\nimport store from '../store'\n\nlet getAvailabilityToken = null\nlet getValidateAvailabilityToken = null\nlet copyReservationCheckAvailabilityToken = null\n\nexport default {\n  methods: {\n    async getAvailability(\n      startDate,\n      endDate,\n      channelId,\n      countryId,\n      LocationId,\n      searchTerm,\n      meetingtypeId,\n      seats,\n      startTime,\n      endTime,\n      settingId = 0,\n      spaceId = 0,\n      voucherId = 0,\n      tenderId = 0,\n      widgetId = -100,\n      language = 'en',\n      isEmployee = false\n    ) {\n      if (getAvailabilityToken) {\n        getAvailabilityToken.cancel('Canceled by new request.')\n      }\n      getAvailabilityToken = axios.CancelToken.source()\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/availability`,\n        {\n          cancelToken: getAvailabilityToken.token,\n          params: {\n            q: searchTerm,\n            channel: channelId,\n            country: countryId,\n            location: LocationId,\n            meetingtype: meetingtypeId,\n            seats: seats,\n            startDate: startDate,\n            startTime: startTime,\n            endDate: endDate,\n            endTime: endTime,\n            setting: settingId,\n            space: spaceId,\n            isBackend: isEmployee,\n            voucher: voucherId,\n            tender: tenderId,\n            widgetId: widgetId,\n            language: language,\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n    async checkSpaceTimeAvailability(space) {\n      if (getValidateAvailabilityToken) {\n        getValidateAvailabilityToken.cancel()\n      }\n      getValidateAvailabilityToken = axios.CancelToken.source()\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/availability/time/check`,\n        JSON.stringify(space),\n        {\n          cancelToken: getValidateAvailabilityToken.token,\n\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n\n    async copyReservationCheckAvailability(reservationId, startDate, endDate) {\n      if (copyReservationCheckAvailabilityToken) {\n        copyReservationCheckAvailabilityToken.cancel('Canceled by new request.')\n      }\n      copyReservationCheckAvailabilityToken = axios.CancelToken.source()\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/availability/copy/check`,\n        {\n          cancelToken: copyReservationCheckAvailabilityToken.token,\n          params: {\n            endDate: endDate,\n            reservationId: reservationId,\n            startDate: startDate,\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n    async selectSpace(searchId, locationId, hash, reservationType = 'Draft') {\n      let criteria = {\n        searchId,\n        locationId,\n        reservationType,\n        hash,\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/reservation/availability/select`,\n        criteria,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n  },\n}\n","import axios from \"axios\";\nimport store from \"@/store\";\nimport { removeXSS } from '../utils/stringHelper';\n\nlet getLocationProposalsToken = null;\nlet getLocationProposalRequestsToken = null;\n\nexport default {\n  methods: {\n    async getProposalByKey(proposalKey, proposalToken = '') {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n            proposalToken: proposalToken\n          }\n        }\n      );\n\n      if (response.data?.Template) {\n        response.data.Template = removeXSS(response.data.Template);\n      }\n      return response;\n    },\n\n    async getProposalPdf(proposalKey) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/pdf`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getProfileProposalCount(locationId, startDate, endDate, searchTerm, showAll, filter = 'create') {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/profile/count`,\n        {\n          params: {\n            locationId,\n            startDate,\n            endDate,\n            q: searchTerm,\n            showAll,\n            filter\n          },\n\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getProfileProposals(locationId, searchTerm, dateOption, status = 'AwaitingApprovalCustomer', startDate, endDate, page, orderBy, direction, filter = 'create') {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/booker`,\n        {\n          params: {\n            locationId,\n            startDate,\n            endDate,\n            q: searchTerm,\n            status,\n            dateOption,\n            orderBy,\n            direction,\n            page,\n            filter\n          },\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getLocationProposalCount(locationId, startDate, endDate, searchTerm, showAll, customerId = 0, companyId = 0, filter = 'create') {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/location/${locationId}/count`,\n        {\n          params: {\n            startDate,\n            endDate,\n            q: searchTerm,\n            showAll,\n            customerId,\n            companyId,\n            filter\n          },\n\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getLocationProposals(\n      locationId, searchTerm, dateOption, status = 'Draft', customerId = 0, companyId = 0, startDate, endDate, page, orderBy, direction, filter = 'create', showAll = false\n    ) {\n      if (getLocationProposalsToken) {\n        getLocationProposalsToken.cancel();\n      }\n      getLocationProposalsToken = axios.CancelToken.source();\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/location/${locationId}`,\n        {\n          cancelToken: getLocationProposalsToken.token,\n          params: {\n            startDate: startDate,\n            endDate: endDate,\n            q: searchTerm,\n            status: status,\n            customerId,\n            companyId,\n            dateOption: dateOption,\n            orderBy: orderBy,\n            direction: direction,\n            page,\n            filter,\n            showAll\n          },\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getLocationProposalsCsv(\n      locationId, searchTerm, status, customerId = 0, companyId = 0, startDate, endDate, orderBy, direction, showAll = false, filter='create'\n    ) {\n      if (getLocationProposalsToken) {\n        getLocationProposalsToken.cancel();\n      }\n      getLocationProposalsToken = axios.CancelToken.source();\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/location/${locationId}/csv`,\n        {\n          cancelToken: getLocationProposalsToken.token,\n          params: {\n            startDate,\n            endDate,\n            q: searchTerm,\n            status,\n            customerId,\n            companyId,\n            orderBy,\n            direction,\n            showAll,\n            filter\n          },\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async refuseProposalRequest(requestId) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v2/proposal/${requestId}/refuse`,\n        null,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async unpublishProposal(proposalKey) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/unpublish`,\n        null,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async publishProposal(proposalKey) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/publish`,\n        null,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async changesMade(proposalKey) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/change/done`,\n        null,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async acceptProposal(proposalKey) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/accept`,\n        null,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async rejectProposal(proposalKey, cancelReason, reason) {\n      let criteria = {\n        CancelReason: cancelReason,\n        Reason: reason\n      }\n\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/reject`,\n        criteria,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async retractProposal(proposalKey, cancelReason, reason) {\n      let criteria = {\n        CancelReason: cancelReason,\n        Reason: reason\n      }\n\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/reject`,\n        criteria,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async syncProposal(proposalKey) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/reservation/sync`,\n        null,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async deleteProposal(proposalKey) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async proposalChangeRequest(proposalKey, comment) {\n      let criteria = {\n        Comment: comment\n      }\n\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/change`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getProposalSettings(locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/settings`,\n        {\n          params: {\n            locationId: locationId\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken'],\n          },\n        }\n      )\n      return response\n    },\n\n    async getLocationProposalTemplates(locationId) {\n      if (getLocationProposalsToken) {\n        getLocationProposalsToken.cancel();\n      }\n      getLocationProposalsToken = axios.CancelToken.source();\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/location/${locationId}/templates`,\n        {\n          cancelToken: getLocationProposalsToken.token,\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async updateProposal(proposalKey, data) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}`,\n        data,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async getProposalToken(proposalKey, data) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/auth`,\n        data,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async saveProposalTemplate(data) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/template`,\n        data,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async addProposalView(proposalKey) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/view`,\n        null,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async saveProposalSettings(data) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/settings`,\n        data,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n\n    async toggleProposalSecondOption(proposalKey) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_RESERVATION_URL}/api/proposal/${proposalKey}/secondoption`,\n        null,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n\n      return response;\n    },\n  }\n};\n","module.exports = \"data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (\n    _vm.reservation && (_vm.locationId === 0 || _vm.reservation.LocationId === _vm.locationId)\n  )?_c('div',[(_vm.showAddDate)?_c('ModalAddDate',{attrs:{\"showModal\":_vm.showAddDate,\"onClickCancel\":_vm.hideModal,\"reservationDate\":_vm.selectedDate}}):_vm._e(),(_vm.showDeleteDate)?_c('ModalDeleteDate',{attrs:{\"showModal\":_vm.showDeleteDate,\"onClickCancel\":_vm.hideModal,\"selectedDate\":_vm.selectedDate}}):_vm._e(),(_vm.showModalCancelReservation)?_c('ModalCancelReservation',{attrs:{\"showModal\":_vm.showModalCancelReservation,\"isEmployee\":_vm.isEmployee,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showCancelDate)?_c('ModalCancelReservationDate',{attrs:{\"showModal\":_vm.showCancelDate,\"reservationDate\":_vm.selectedDate,\"isEmployee\":_vm.isEmployee,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showModalCreateInvoice)?_c('ModalCreateInvoice',{attrs:{\"showModal\":_vm.showModalCreateInvoice,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showSetExpiration)?_c('ModalSetExpiration',{attrs:{\"showModal\":_vm.showSetExpiration,\"onClickCancel\":_vm.hideModal,\"expirationDate\":(_vm.reservation && _vm.reservation.Expiration) ? _vm.reservation.Expiration : null}}):_vm._e(),(_vm.showSendMail)?_c('ModalSendMail',{attrs:{\"showModal\":_vm.showSendMail,\"onClickCancel\":_vm.hideModal,\"mailType\":_vm.mailType}}):_vm._e(),(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":\"extra-large\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showInvoiceSummary)?_c('InvoiceSummary',{attrs:{\"invoiceId\":_vm.itemId,\"locationId\":_vm.locationId}}):_vm._e(),(_vm.showProposalPreview)?_c('ProposalDetail',{staticClass:\"proposalDetail\",attrs:{\"proposalKey\":_vm.reservation.ProposalKey,\"language\":_vm.reservation.Language,\"languageId\":_vm.reservation.LanguageId,\"isEmployee\":true}}):_vm._e(),(_vm.showChangeDate)?_c('ChangeDate',{attrs:{\"hideDatePicker\":_vm.hideDatePicker,\"action\":_vm.drawerActionType},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showCopyDate)?_c('CopyDate',{attrs:{\"reservationDate\":_vm.selectedDate},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showCopyReservation)?_c('CopyReservation',{attrs:{\"showAllAccordions\":_vm.reservation.Dates.length === 1},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showReservationSet)?_c('ReservationSet',{attrs:{\"showModal\":_vm.showReservationSet},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e()]},proxy:true}],null,false,2787675933)}):_vm._e(),(!_vm.isDraft)?_c('div',{staticClass:\"is-hidden-print actionBar has-padding has-text-right mb-5\",staticStyle:{\"border-bottom\":\"1px solid #cccccc\"}},[(_vm.isEmployee)?_c('IsPinned',{staticClass:\"ml-2\",attrs:{\"locationId\":_vm.reservation.LocationId,\"type\":'reservation',\"itemId\":_vm.reservation.Id}}):_vm._e(),_c('LinkPrint',{staticClass:\"ml-2\",attrs:{\"type\":\"reservation\",\"id\":String(_vm.reservation.Id)}}),(_vm.isEmployee)?_c('a',{staticClass:\"has-icon ml-2\",on:{\"click\":function($event){_vm.showSendMail = true}}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'paper-plane']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Icon_SendMail'))}})]):_vm._e(),_c('LinkDownload',{staticClass:\"ml-2\",attrs:{\"type\":\"reservation\",\"id\":String(_vm.reservation.Id),\"fileName\":_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_Reservation') + '-' + _vm.reservation.Id}}),(!_vm.isDraft)?[_c('a',{staticClass:\"has-icon has-text-link ml-2\",class:{\n          'has-text-grey is-disabled': _vm.isLockedCancel || _vm.reservation.StatusId === 3,\n        },on:{\"click\":_vm.setShowCancelReservation}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_CancelReservation')))])]),(_vm.isEmployee && !_vm.reservation.NoInvoice && _vm.hasInvoiceActivated)?_c('a',{staticClass:\"has-icon has-text-link ml-2\",class:{\n          'has-text-grey is-disabled': _vm.disableCreateInvoice,\n        },on:{\"click\":_vm.setShowModalCreateInvoice}},[_c('span',{staticClass:\"icon\",class:{ 'is-loading': _vm.isCreatingInvoice }},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-invoice']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_CreateInvoice')))])]):_vm._e(),_c('a',{staticClass:\"has-icon has-text-link ml-2\",class:{ 'has-text-grey is-disabled': _vm.isLocked },attrs:{\"disabled\":_vm.isSaving || _vm.isLocked},on:{\"click\":function($event){return _vm.setShowChangeDate(false, 'changeDate')}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'calendar-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_ChangeDate')))])]),_c('a',{staticClass:\"has-icon has-text-link ml-2\",class:{ 'has-text-grey is-disabled': _vm.isLockedCopyDate },attrs:{\"disabled\":_vm.isSaving || _vm.isDraft},on:{\"click\":_vm.setShowCopyReservation}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_CopyReservation')))])])]:_vm._e()],2):_vm._e(),_c('div',{staticClass:\"mb-6\"},[_c('nav',{staticClass:\"navbar is-hidden-print\",attrs:{\"role\":\"navigation\",\"aria-label\":\"main navigation\"}},[_c('div',{staticClass:\"navbar-start\"},[_c('div',[((_vm.reservation.Status === 'Request' || \n                      _vm.reservation.Status === 'Draft' || \n                      _vm.reservation.Status === 'AwaitingPoNumber' || \n                      _vm.reservation.Type === 'Proposal') && !_vm.reservation.Expiration)?_c('div',[_c('div',[_c('a',{on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_SetExpiration')))])])])]):_vm._e(),(_vm.reservation.Expiration)?_c('div',[(_vm.reservation.Expiration.IsExpired)?_c('div',[_c('span',{staticClass:\"tag icon-text is-danger\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_' + _vm.reservation.Type))+\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_HasExpired')))])]),_c('div',[(!_vm.isLocked)?_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Edit')))])]):_vm._e(),(!_vm.isLocked)?_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.deleteExpiration}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Delete')))])]):_vm._e()])]):_vm._e(),(!_vm.reservation.Expiration.IsExpired)?_c('div',[_c('div',[_c('span',{staticClass:\"tag icon-text is-warning\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_' + _vm.reservation.Type))+\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ExpiresOn'))+\" \"),_c('span',{staticClass:\"has-text-weight-bold\"},[_vm._v(_vm._s(_vm.reservation.Expiration.Date)+\" @ \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.reservation.Expiration.Minutes)))])])]),_c('div',[(!_vm.isLocked)?_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Edit')))])]):_vm._e(),(!_vm.isLocked)?_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.deleteExpiration}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Delete')))])]):_vm._e()])])]):_vm._e()]):_vm._e()])]),(!_vm.isDraft)?_c('div',{staticClass:\"navbar-end\"},[(_vm.isEmployee)?_c('button',{staticClass:\"button is-info is-light is-small ml-2\",class:{ 'is-warning is-light': _vm.reservation.PoRequired },attrs:{\"title\":_vm.$t('Components.Reservation.ReservationDetail.Label_PoRequired'),\"aria-label\":_vm.$t('Components.Reservation.ReservationDetail.Label_PoRequired'),\"disabled\":_vm.isLocked},on:{\"click\":_vm.toggleReservationPoRequired}},[_c('span',{staticClass:\"icon\"},[(_vm.reservation.PoRequired)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}}):_vm._e(),(!_vm.reservation.PoRequired)?_c('font-awesome-icon',{attrs:{\"icon\":['far', 'tag']}}):_vm._e()],1),(_vm.reservation.PoRequired)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_PoRequired')))]):_vm._e(),(!_vm.reservation.PoRequired)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_PoOptional')))]):_vm._e()]):_vm._e(),(_vm.isEmployee)?_c('button',{staticClass:\"button is-info is-light is-small ml-2\",class:{ 'is-warning is-light': _vm.reservation.NoTax },attrs:{\"title\":_vm.$t('Components.Reservation.ReservationDetail.Label_Taxable'),\"aria-label\":_vm.$t('Components.Reservation.ReservationDetail.Label_Taxable'),\"disabled\":_vm.isLocked},on:{\"click\":_vm.toggleReservationNoTax}},[_c('span',{staticClass:\"icon\"},[(_vm.reservation.NoTax)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}}):_vm._e(),(!_vm.reservation.NoTax)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'coins']}}):_vm._e()],1),(_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_NonTaxable')))]):_vm._e(),(!_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_Taxable')))]):_vm._e()]):_vm._e(),_c('button',{staticClass:\"button is-info is-light is-small ml-2\",class:{ 'is-warning is-light': _vm.reservation.IsPrivate },attrs:{\"title\":_vm.$t('Components.Reservation.ReservationDetail.Label_Private'),\"aria-label\":_vm.$t('Components.Reservation.ReservationDetail.Label_Private')},on:{\"click\":_vm.toggleReservationIsPrivate}},[_c('span',{staticClass:\"icon\"},[(_vm.reservation.IsPrivate)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'eye-slash']}}):_vm._e(),(!_vm.reservation.IsPrivate)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'eye']}}):_vm._e()],1),(_vm.reservation.IsPrivate)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_IsPrivate')))]):_vm._e(),(!_vm.reservation.IsPrivate)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_IsPublic')))]):_vm._e()]),(_vm.reservation.ReservationSet.length > 0)?_c('button',{staticClass:\"button is-info is-light is-small ml-2\",on:{\"click\":_vm.setShowReservationSet}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'clone']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_PartOfSet')))])]):_vm._e(),(_vm.hasInvoiceActivated)?[_c('button',{staticClass:\"button is-info is-light is-small ml-2\",on:{\"click\":function($event){return _vm.setShowInvoiceSummary()}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-invoice']}})],1),(_vm.reservation.HasInvoice > 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_InvoiceCreated')))]):_vm._e(),(_vm.reservation.HasInvoice === 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_NoInvoice')))]):_vm._e()])]:_vm._e(),(_vm.reservation.MeetingtypeId === 1 && _vm.hasProposalActivated)?[_c('button',{staticClass:\"button is-info is-light is-small ml-2\",on:{\"click\":_vm.setShowProposalPreview}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-invoice']}})],1),(_vm.reservation.HasProposal > 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_Proposal'))+\" #\"+_vm._s(_vm.reservation.HasProposal))]):_vm._e(),(_vm.reservation.HasProposal === 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_NoProposal')))]):_vm._e()])]:_vm._e()],2):_vm._e()]),(_vm.emptyDates.length > 0)?_c('div',[_c('Message',{staticClass:\"is-warning\",attrs:{\"message\":'Empty dates are found in reservation'}})],1):_vm._e(),(_vm.showFinalizeReservation)?_c('ReservationFinalize',{staticClass:\"has-margin-top\"}):_vm._e(),(_vm.isEmployee && !_vm.isLocked)?_c('ReservationAcceptReject',{staticClass:\"has-margin-top\",on:{\"accepted\":_vm.reservationAccepted,\"denied\":_vm.reservationDenied}}):_vm._e(),_c('div',{staticClass:\"columns has-margin-top\"},[_c('div',{staticClass:\"column\"},[_c('ReservationBasicData',{attrs:{\"isLocked\":_vm.isLocked,\"isEmployee\":_vm.isEmployee}})],1),_c('div',{staticClass:\"column\"},[_c('ReservationInvoiceAddress',{attrs:{\"isLocked\":_vm.isLocked,\"isEmployee\":_vm.isEmployee}})],1)])],1),_c('div',{staticClass:\"mb-4\"},[(_vm.reservation.Dates.length > 0)?_c('div',{staticClass:\"tabs is-boxed has-background-white-bis has-custom-scrollbar\"},[_c('ul',[(_vm.reservation.Dates.length > 1)?[_c('li',{class:{ 'is-active' : !_vm.reservationDate }},[_c('a',{on:{\"click\":function($event){return _vm.setReservationDate(null)}}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_AllDates')))])]),_vm._l((_vm.reservation.Dates),function(date,index){return _c('li',{key:index,class:{ 'is-active' : _vm.isSelectedDate(date) }},[_c('a',{on:{\"click\":function($event){return _vm.setReservationDate(date)}}},[_vm._v(_vm._s(_vm.returnFormattedDate(date.Date)))])])})]:_vm._e(),(_vm.isEmployee && !_vm.isLocked)?_c('li',[_c('a',{staticClass:\"has-icon has-text-link\",on:{\"click\":function($event){return _vm.setShowAddDate(null)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fa', 'plus']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_AddDay')))])])]):_vm._e()],2)]):_vm._e()]),_vm._l((_vm.resDates),function(date,index){return _c('div',{key:index+'_'+date.Date,class:{'mt-6': index !== 0 }},[_c('div',{staticClass:\"mb-6\"},[_c('div',{staticClass:\"mb-2\"},[_c('strong',{staticClass:\"mr-3 is-size-3 title-date\"},[_c('span',[_vm._v(_vm._s(_vm.returnFormattedDate(date.Date)))]),(date.Status === 'Cancelled')?_c('span',{staticClass:\"ml-2\"},[_vm._v(\"[\"+_vm._s(_vm.$t('ReservationStatus.status_' + date.Status))+\"]\")]):_vm._e()]),(_vm.isEmployee && !_vm.isLocked)?[(_vm.reservation.MeetingtypeId === 1)?_c('a',{staticClass:\"ml-4 has-icon is-size-6\",class:{ 'has-text-grey is-disabled': _vm.isLocked },on:{\"click\":function($event){return _vm.setShowCopyDate(date)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_CopyDate')))])]):_vm._e(),(date.Status !== 'Cancelled' && _vm.reservation.Dates.length > 1)?_c('a',{staticClass:\"ml-4 has-icon is-size-6\",class:{ 'has-text-grey is-disabled': _vm.isLocked },on:{\"click\":function($event){return _vm.setShowCancelDate(date)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_CancelDate')))])]):_vm._e(),(date.Status === 'Cancelled' && _vm.reservation.Dates.length > 1)?_c('a',{staticClass:\"ml-4 has-icon is-size-6\",class:{ 'has-text-grey is-disabled': _vm.isLocked },on:{\"click\":function($event){return _vm.reviveReservationDate(date)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'heartbeat']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_ReviveDate')))])]):_vm._e(),(_vm.reservation.MeetingtypeId === 1 && _vm.reservation.Dates.length > 1)?_c('a',{staticClass:\"ml-4 has-icon is-size-6\",class:{ 'has-text-grey is-disabled': _vm.reservation.Dates.length === 1 || _vm.isLocked },on:{\"click\":function($event){return _vm.setShowDeleteDate(date)}}},[_c('span',{staticClass:\"icon\",class:{ 'has-text-danger': !_vm.isLocked && _vm.reservation.Dates.length > 1 }},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_DeleteDate')))])]):_vm._e()]:_vm._e()],2),_c('div',{staticClass:\"is-size-6 has-text-weight-normal\"},[_vm._v(_vm._s(_vm._f(\"minutesToTime\")(date.StartMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(date.EndMinutes)))])]),(_vm.reservation.MeetingtypeId === 1)?_c('div',{staticClass:\"mb-6\"},[_c('ReservationPackages',{attrs:{\"reservationDate\":date,\"reservation\":_vm.reservation,\"isEmployee\":_vm.isEmployee,\"isLocked\":_vm.isLocked}})],1):_vm._e(),(_vm.reservation.MeetingtypeId === 1)?_c('div',{staticClass:\"mb-6\"},[_c('ReservationMeetingspaces',{attrs:{\"reservationDate\":date,\"reservation\":_vm.reservation,\"isLocked\":_vm.isLocked}})],1):_vm._e(),(_vm.reservation.MeetingtypeId === 2)?_c('div',{staticClass:\"mb-6\"},[_c('ReservationWorkspaces',{attrs:{\"reservationDate\":date,\"reservation\":_vm.reservation,\"isEmployee\":_vm.isEmployee,\"isLocked\":_vm.isLocked}})],1):_vm._e(),_c('div',{staticClass:\"mb-6\"},[_c('ReservationOptions',{attrs:{\"reservationDate\":date,\"reservation\":_vm.reservation,\"isLocked\":_vm.isLocked}})],1),(_vm.reservation.Dates.length > 1)?_c('div',{staticClass:\"mb-6\"},[_c('ReservationTotals',{attrs:{\"reservation\":_vm.reservation,\"languageCulture\":_vm.locationState.Settings.LanguageCulture,\"reservationDate\":date,\"titleText\":_vm.$t('Components.Reservation.ReservationDetail.Title_DateSubtotal')}})],1):_vm._e(),(_vm.reservation.Dates.length > 1)?_c('hr'):_vm._e()])}),(!_vm.reservationDate)?_c('ReservationTotals',{attrs:{\"reservation\":_vm.reservation,\"languageCulture\":_vm.locationState.Settings.LanguageCulture,\"titleText\":_vm.$t('Components.Reservation.ReservationDetail.Title_ReservationTotal')}}):_vm._e()],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import axios from \"axios\";\nimport store from \"@/store\";\n\nlet getLocationQuotesToken = null;\n\nexport default {\n  methods: {\n    async getQuoteById(quoteId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/quote/${quoteId}`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getLocationQuotes(\n      locationId,\n      searchTerm = \"\",\n      companyId = 0,\n      profileId = 0,\n      statusId = 0,\n      page = 1,\n      itemsPerPage = 25\n    ) {\n      if (getLocationQuotesToken) {\n        getLocationQuotesToken.cancel();\n      }\n      getLocationQuotesToken = axios.CancelToken.source();\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/quote/location/${locationId}`,\n        {\n          cancelToken: getLocationQuotesToken.token,\n\n          params: {\n            q: searchTerm,\n            companyId: companyId,\n            profileId: profileId,\n            statusId: statusId,\n            page: page,\n            itemsPerPage: itemsPerPage\n          },\n\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async createQuoteFromReservation(reservationId) {\n      let criteria = {\n        ReservationId: reservationId\n      };\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/quote/reservation/${reservationId}`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    }\n  }\n};\n","<template>\n  <div v-if=\"\n      reservation && (locationId === 0 || reservation.LocationId === locationId)\n    \">\n        \n    <ModalAddDate\n      v-if=\"showAddDate\"\n      :showModal=\"showAddDate\"\n      :onClickCancel=\"hideModal\"\n      :reservationDate=\"selectedDate\"\n    />\n\n    <ModalDeleteDate\n      v-if=\"showDeleteDate\"\n      :showModal=\"showDeleteDate\"\n      :onClickCancel=\"hideModal\"\n      :selectedDate=\"selectedDate\"\n    />\n\n    <ModalCancelReservation\n      v-if=\"showModalCancelReservation\"\n      :showModal=\"showModalCancelReservation\"\n      :isEmployee=\"isEmployee\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ModalCancelReservationDate\n      v-if=\"showCancelDate\"\n      :showModal=\"showCancelDate\"\n      :reservationDate=\"selectedDate\"\n      :isEmployee=\"isEmployee\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ModalCreateInvoice\n      v-if=\"showModalCreateInvoice\"\n      :showModal=\"showModalCreateInvoice\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ModalSetExpiration\n      v-if=\"showSetExpiration\"\n      :showModal=\"showSetExpiration\"\n      :onClickCancel=\"hideModal\"\n      :expirationDate=\"(reservation && reservation.Expiration) ? reservation.Expiration : null\"\n    />\n\n    <ModalSendMail\n      v-if=\"showSendMail\"\n      :showModal=\"showSendMail\"\n      :onClickCancel=\"hideModal\"\n      :mailType=\"mailType\"\n    />\n\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      drawerSize=\"extra-large\"\n    >\n      <template v-slot:content>\n        <InvoiceSummary\n          v-if=\"showInvoiceSummary\"\n          :invoiceId=\"itemId\"\n          :locationId=\"locationId\"\n        />\n\n        <ProposalDetail\n          v-if=\"showProposalPreview\"\n          :proposalKey=\"reservation.ProposalKey\"\n          :language=\"reservation.Language\"\n          :languageId=\"reservation.LanguageId\"\n          :isEmployee=\"true\"\n          class=\"proposalDetail\"\n        />\n\n        <ChangeDate\n          v-if=\"showChangeDate\"\n          :hideDatePicker=\"hideDatePicker\"\n          :action=\"drawerActionType\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <CopyDate\n          v-if=\"showCopyDate\"\n          :reservationDate=\"selectedDate\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <CopyReservation\n          v-if=\"showCopyReservation\"\n          :showAllAccordions=\"reservation.Dates.length === 1\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <ReservationSet\n          v-if=\"showReservationSet\"\n          :showModal=\"showReservationSet\"\n          @hideDrawer=\"hideDrawer\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <div\n      v-if=\"!isDraft\"\n      class=\"is-hidden-print actionBar has-padding has-text-right mb-5\"\n      style=\"border-bottom:  1px solid #cccccc;\"\n    >\n      <IsPinned\n        v-if=\"isEmployee\"\n        :locationId=\"reservation.LocationId\"\n        :type=\"'reservation'\"\n        :itemId=\"reservation.Id\"\n        class=\"ml-2\"\n      />\n\n      <LinkPrint\n        type=\"reservation\"\n        :id=\"String(reservation.Id)\"\n        class=\"ml-2\"\n      />\n\n      <a\n        v-if=\"isEmployee\"\n        @click=\"showSendMail = true\"\n        class=\"has-icon ml-2\"\n      >\n        <span class=\"icon is-small\">\n          <font-awesome-icon :icon=\"['fas', 'paper-plane']\" />\n        </span>\n        <span v-text=\"$t('Components.Reservation.ReservationMailLog.Icon_SendMail')\"></span>\n      </a>\n\n      <LinkDownload\n        type=\"reservation\"\n        :id=\"String(reservation.Id)\"\n        :fileName=\"$t('Components.Reservation.ReservationDetail.Label_ReservationType_Reservation') + '-' + reservation.Id\"\n        class=\"ml-2\"\n      />\n\n      <template v-if=\"!isDraft\">\n        <a\n          @click=\"setShowCancelReservation\"\n          class=\"has-icon has-text-link ml-2\"\n          :class=\"{\n            'has-text-grey is-disabled': isLockedCancel || reservation.StatusId === 3,\n          }\"\n        >\n          <span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'ban']\" />\n          </span>\n          <span>{{\n            $t('Components.Reservation.ReservationDetail.Icon_CancelReservation')\n          }}</span>\n        </a>\n\n        <a\n          v-if=\"isEmployee && !reservation.NoInvoice && hasInvoiceActivated\"\n          @click=\"setShowModalCreateInvoice\"\n          class=\"has-icon has-text-link ml-2\"\n          :class=\"{\n            'has-text-grey is-disabled': disableCreateInvoice,\n          }\"\n        ><span\n            class=\"icon\"\n            :class=\"{ 'is-loading': isCreatingInvoice }\"\n          >\n            <font-awesome-icon :icon=\"['fas', 'file-invoice']\" />\n          </span>\n          <span>{{\n            $t('Components.Reservation.ReservationDetail.Icon_CreateInvoice')\n          }}</span></a>\n\n        <a\n          @click=\"setShowChangeDate(false, 'changeDate')\"\n          :disabled=\"isSaving || isLocked\"\n          class=\"has-icon has-text-link ml-2\"\n          :class=\"{ 'has-text-grey is-disabled': isLocked }\"\n        ><span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'calendar-alt']\" />\n          </span>\n          <span>{{\n            $t('Components.Reservation.ReservationDetail.Icon_ChangeDate')\n          }}</span></a>\n        <a\n          @click=\"setShowCopyReservation\"\n          :disabled=\"isSaving || isDraft\"\n          :class=\"{ 'has-text-grey is-disabled': isLockedCopyDate }\"\n          class=\"has-icon has-text-link ml-2\"\n        ><span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'copy']\" />\n          </span>\n          <span>{{\n            $t('Components.Reservation.ReservationDetail.Icon_CopyReservation')\n          }}</span></a>\n      </template>\n    </div>\n\n    <div class=\"mb-6\">\n      <nav\n        class=\"navbar is-hidden-print\"\n        role=\"navigation\"\n        aria-label=\"main navigation\"\n      >\n        <div class=\"navbar-start\">\n          <div>\n            <div v-if=\"(reservation.Status === 'Request' || \n                        reservation.Status === 'Draft' || \n                        reservation.Status === 'AwaitingPoNumber' || \n                        reservation.Type === 'Proposal') && !reservation.Expiration\">\n              <div>\n                <a @click=\"setShowSetExpiration\">\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                  </span>\n                  <span>{{ $t('Components.Reservation.ReservationDetail.Label_SetExpiration') }}</span>\n                </a>\n              </div>\n\n            </div>\n\n            <div v-if=\"reservation.Expiration\">\n              <div v-if=\"reservation.Expiration.IsExpired\">\n                <span class=\"tag icon-text is-danger\">\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                  </span>\n                  <span>{{ $t('Components.Reservation.ReservationDetail.Label_ReservationType_' + reservation.Type) }} {{ $t('Components.Reservation.ReservationDetail.Label_HasExpired') }}</span>\n                </span>\n\n                <div>\n                  <a\n                    @click=\"setShowSetExpiration\"\n                    class=\"ml-2 is-size-7\"\n                    v-if=\"!isLocked\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                    </span>\n                    <span>{{ $t('Form.Control.Edit') }}</span>\n                  </a>\n\n                  <a\n                    @click=\"deleteExpiration\"\n                    class=\"ml-2 is-size-7\"\n                    v-if=\"!isLocked\"\n                  >\n                    <span class=\"icon has-text-danger\">\n                      <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                    </span>\n                    <span>{{ $t('Form.Control.Delete') }}</span>\n                  </a>\n                </div>\n              </div>\n              <div v-if=\"!reservation.Expiration.IsExpired\">\n                <div>\n                  <span class=\"tag icon-text is-warning\">\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                    </span>\n                    <span>{{ $t('Components.Reservation.ReservationDetail.Label_ReservationType_' + reservation.Type) }} {{ $t('Components.Reservation.ReservationDetail.Label_ExpiresOn') }} <span class=\"has-text-weight-bold\">{{ reservation.Expiration.Date }} @ {{ reservation.Expiration.Minutes | minutesToTime }}</span></span>\n                  </span>\n\n                  <div>\n                    <a\n                      @click=\"setShowSetExpiration\"\n                      class=\"ml-2 is-size-7\"\n                      v-if=\"!isLocked\"\n                    >\n                      <span class=\"icon\">\n                        <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                      </span>\n                      <span>{{ $t('Form.Control.Edit') }}</span>\n                    </a>\n                    <a\n                      @click=\"deleteExpiration\"\n                      class=\"ml-2 is-size-7\"\n                      v-if=\"!isLocked\"\n                    >\n                      <span class=\"icon has-text-danger\">\n                        <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                      </span>\n                      <span>{{ $t('Form.Control.Delete') }}</span>\n                    </a>\n                  </div>\n                </div>\n              </div>\n            </div>\n          </div>\n        </div>\n        <div v-if=\"!isDraft\" class=\"navbar-end\">\n          <!-- Reservation PO required tag -->\n          <button\n            v-if=\"isEmployee\"\n            class=\"button is-info is-light is-small ml-2\"\n            @click=\"toggleReservationPoRequired\"\n            :class=\"{ 'is-warning is-light': reservation.PoRequired }\"\n            :title=\"$t('Components.Reservation.ReservationDetail.Label_PoRequired')\"\n            :aria-label=\"$t('Components.Reservation.ReservationDetail.Label_PoRequired')\"\n            :disabled=\"isLocked\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"reservation.PoRequired\"\n                :icon=\"['fas', 'times']\"\n              />\n              <font-awesome-icon\n                v-if=\"!reservation.PoRequired\"\n                :icon=\"['far', 'tag']\"\n              />\n            </span>\n            <span v-if=\"reservation.PoRequired\">{{ $t('Components.Reservation.ReservationDetail.Icon_PoRequired') }}</span>\n            <span v-if=\"!reservation.PoRequired\">{{ $t('Components.Reservation.ReservationDetail.Icon_PoOptional') }}</span>\n          </button>\n\n          <!-- Reservation is taxable tag -->\n          <button\n            v-if=\"isEmployee\"\n            class=\"button is-info is-light is-small ml-2\"\n            @click=\"toggleReservationNoTax\"\n            :class=\"{ 'is-warning is-light': reservation.NoTax }\"\n            :title=\"$t('Components.Reservation.ReservationDetail.Label_Taxable')\"\n            :aria-label=\"$t('Components.Reservation.ReservationDetail.Label_Taxable')\"\n            :disabled=\"isLocked\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"reservation.NoTax\"\n                :icon=\"['fas', 'times']\"\n              />\n              <font-awesome-icon\n                v-if=\"!reservation.NoTax\"\n                :icon=\"['fas', 'coins']\"\n              />\n            </span>\n            <span v-if=\"reservation.NoTax\">{{ $t('Components.Reservation.ReservationDetail.Icon_NonTaxable') }}</span>\n            <span v-if=\"!reservation.NoTax\">{{ $t('Components.Reservation.ReservationDetail.Icon_Taxable') }}</span>\n          </button>\n\n          <!-- Reservation private tag -->\n          <button\n            class=\"button is-info is-light is-small ml-2\"\n            @click=\"toggleReservationIsPrivate\"\n            :class=\"{ 'is-warning is-light': reservation.IsPrivate }\"\n            :title=\"$t('Components.Reservation.ReservationDetail.Label_Private')\"\n            :aria-label=\"$t('Components.Reservation.ReservationDetail.Label_Private')\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"reservation.IsPrivate\"\n                :icon=\"['fas', 'eye-slash']\"\n              />\n              <font-awesome-icon\n                v-if=\"!reservation.IsPrivate\"\n                :icon=\"['fas', 'eye']\"\n              />\n            </span>\n            <span v-if=\"reservation.IsPrivate\">{{ $t('Components.Reservation.ReservationDetail.Icon_IsPrivate') }}</span>\n            <span v-if=\"!reservation.IsPrivate\">{{ $t('Components.Reservation.ReservationDetail.Icon_IsPublic') }}</span>\n          </button>\n\n          <!-- Reservation set tag -->\n          <button\n            v-if=\"reservation.ReservationSet.length > 0\"\n            class=\"button is-info is-light is-small ml-2\"\n            @click=\"setShowReservationSet\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon :icon=\"['fas', 'clone']\" />\n            </span>\n            <span>{{ $t('Components.Reservation.ReservationDetail.Icon_PartOfSet') }}</span>\n          </button>\n\n          <!-- Reservation Invoice Tag -->\n          <template v-if=\"hasInvoiceActivated\">\n            <button\n              class=\"button is-info is-light is-small ml-2\"\n              @click=\"setShowInvoiceSummary()\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'file-invoice']\" />\n              </span>\n              <span v-if=\"reservation.HasInvoice > 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_InvoiceCreated') }}</span>\n              <span v-if=\"reservation.HasInvoice === 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_NoInvoice') }}</span>\n            </button>\n          </template>\n\n          <!-- Reservation proposal tag -->\n          <template v-if=\"reservation.MeetingtypeId === 1 && hasProposalActivated\">\n            <button\n              class=\"button is-info is-light is-small ml-2\"\n              @click=\"setShowProposalPreview\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'file-invoice']\" />\n              </span>\n              <span v-if=\"reservation.HasProposal > 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_Proposal') }} #{{ reservation.HasProposal }}</span>\n              <span v-if=\"reservation.HasProposal === 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_NoProposal') }}</span>\n            </button>\n          </template>\n        </div>\n      </nav>\n\n      <div v-if=\"emptyDates.length > 0\">\n        <Message :message=\"'Empty dates are found in reservation'\" class=\"is-warning\" />\n      </div>\n\n      <ReservationFinalize\n        class=\"has-margin-top\"\n        v-if=\"showFinalizeReservation\"\n      />\n\n      <ReservationAcceptReject\n        class=\"has-margin-top\"\n        v-if=\"isEmployee && !isLocked\"\n        @accepted=\"reservationAccepted\"\n        @denied=\"reservationDenied\"\n      />\n\n      <div class=\"columns has-margin-top\">\n        <div class=\"column\">\n          <ReservationBasicData\n            :isLocked=\"isLocked\"\n            :isEmployee=\"isEmployee\"\n          />\n        </div>\n        <div class=\"column\">\n          <ReservationInvoiceAddress\n            :isLocked=\"isLocked\"\n            :isEmployee=\"isEmployee\"\n          />\n        </div>\n      </div>\n    </div>\n\n    <div class=\"mb-4\">\n      <div\n        v-if=\"reservation.Dates.length > 0\"\n        class=\"tabs is-boxed has-background-white-bis has-custom-scrollbar\"\n      >\n        <ul>\n          <template v-if=\"reservation.Dates.length > 1\">\n            <li :class=\"{ 'is-active' : !reservationDate }\">\n              <a\n                @click=\"setReservationDate(null)\"\n                class=\"\"\n              >{{ $t('Components.Reservation.ReservationDates.label_AllDates') }}</a>\n            </li>\n            <li\n              v-for=\"(date, index) in reservation.Dates\"\n              :key=\"index\"\n              :class=\"{ 'is-active' : isSelectedDate(date) }\"\n            >\n              <a @click=\"setReservationDate(date)\">{{ returnFormattedDate(date.Date) }}</a>\n            </li>\n          </template>\n          <li v-if=\"isEmployee && !isLocked\">\n            <a\n              @click=\"setShowAddDate(null)\"\n              class=\"has-icon has-text-link\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fa', 'plus']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_AddDay') }}</span>\n            </a>\n          </li>\n        </ul>\n      </div>\n    </div>\n\n    <div\n      v-for=\"(date, index) in resDates\"\n      :key=\"index+'_'+date.Date\"\n      :class=\"{'mt-6': index !== 0 }\"\n    >\n      <div class=\"mb-6\">\n        <div class=\"mb-2\">\n          <strong class=\"mr-3 is-size-3 title-date\">\n            <span>{{ returnFormattedDate(date.Date) }}</span>\n            <span\n              v-if=\"date.Status === 'Cancelled'\"\n              class=\"ml-2\"\n            >[{{ $t('ReservationStatus.status_' + date.Status) }}]</span>\n          </strong>\n          <template v-if=\"isEmployee && !isLocked\">\n            <!-- COPY DATE -->\n            <a\n              v-if=\"reservation.MeetingtypeId === 1\"\n              @click=\"setShowCopyDate(date)\"\n              class=\"ml-4 has-icon is-size-6\"\n              :class=\"{ 'has-text-grey is-disabled': isLocked }\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'copy']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_CopyDate') }}</span>\n            </a>\n            <!-- CANCEL DATE -->\n            <a\n              v-if=\"date.Status !== 'Cancelled' && reservation.Dates.length > 1\"\n              @click=\"setShowCancelDate(date)\"\n              class=\"ml-4 has-icon is-size-6\"\n              :class=\"{ 'has-text-grey is-disabled': isLocked }\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'copy']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_CancelDate') }}</span>\n            </a>\n            <!-- REVIVE DATE -->\n            <a\n              v-if=\"date.Status === 'Cancelled' && reservation.Dates.length > 1\"\n              @click=\"reviveReservationDate(date)\"\n              class=\"ml-4 has-icon is-size-6\"\n              :class=\"{ 'has-text-grey is-disabled': isLocked }\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'heartbeat']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_ReviveDate') }}</span>\n            </a>\n            <!-- DELETE DATE -->\n            <a\n              v-if=\"reservation.MeetingtypeId === 1 && reservation.Dates.length > 1\"\n              @click=\"setShowDeleteDate(date)\"\n              class=\"ml-4 has-icon is-size-6\"\n              :class=\"{ 'has-text-grey is-disabled': reservation.Dates.length === 1 || isLocked }\"\n            >\n              <span\n                class=\"icon\"\n                :class=\"{ 'has-text-danger': !isLocked && reservation.Dates.length > 1 }\"\n              >\n                <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_DeleteDate') }}</span>\n            </a>\n          </template>\n        </div>\n        <div class=\"is-size-6 has-text-weight-normal\">{{ date.StartMinutes | minutesToTime }} - {{ date.EndMinutes | minutesToTime }}</div>\n      </div>\n\n      <div\n        class=\"mb-6\"\n        v-if=\"reservation.MeetingtypeId === 1\"\n      >\n        <ReservationPackages\n          :reservationDate=\"date\"\n          :reservation=\"reservation\"\n          :isEmployee=\"isEmployee\"\n          :isLocked=\"isLocked\"\n        />\n      </div>\n\n      <div\n        class=\"mb-6\"\n        v-if=\"reservation.MeetingtypeId === 1\"\n      >\n        <ReservationMeetingspaces\n          :reservationDate=\"date\"\n          :reservation=\"reservation\"\n          :isLocked=\"isLocked\"\n        />\n      </div>\n\n      <div\n        class=\"mb-6\"\n        v-if=\"reservation.MeetingtypeId === 2\"\n      >\n        <ReservationWorkspaces\n          :reservationDate=\"date\"\n          :reservation=\"reservation\"\n          :isEmployee=\"isEmployee\"\n          :isLocked=\"isLocked\"\n        />\n      </div>\n\n      <div class=\"mb-6\">\n        <ReservationOptions\n          :reservationDate=\"date\"\n          :reservation=\"reservation\"\n          :isLocked=\"isLocked\"\n        />\n      </div>\n\n      <div\n        v-if=\"reservation.Dates.length > 1\"\n        class=\"mb-6\"\n      >\n        <ReservationTotals\n          :reservation=\"reservation\"\n          :languageCulture=\"locationState.Settings.LanguageCulture\"\n          :reservationDate=\"date\"\n          :titleText=\"$t('Components.Reservation.ReservationDetail.Title_DateSubtotal')\"\n        />\n      </div>\n\n      <hr v-if=\"reservation.Dates.length > 1\" />\n    </div>\n\n    <ReservationTotals\n      v-if=\"!reservationDate\"\n      :reservation=\"reservation\"\n      :languageCulture=\"locationState.Settings.LanguageCulture\"\n      :titleText=\"$t('Components.Reservation.ReservationDetail.Title_ReservationTotal')\"\n    />\n  </div>\n</template>\n\n<script>\nimport { mapGetters, mapState, mapMutations, mapActions } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport locationProvider from '@/providers/location'\nimport quoteProvider from '@/providers/quote'\nimport reservationProvider from '@/providers/reservation'\nimport { format, isAfter, parseISO } from 'date-fns'\nimport Message from '../UI/Message.vue'\n\nexport default {\n  name: 'reservationDetailComponent',\n\n  components: {\n    ChangeDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ChangeDate'),\n    CopyReservation: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/CopyReservation'),\n    Message: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/UI/Message'),\n    ModalCancelReservation: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalCancelReservation'\n      ),\n    ModalCancelReservationDate: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalCancelReservationDate'\n      ),\n    ModalCreateInvoice: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalCreateInvoice'),\n    ReservationSet: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationSet'),\n    ReservationAcceptReject: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationAcceptReject'),\n    ReservationFinalize: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationFinalize'),\n    ReservationBasicData: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationBasicData'),\n    ReservationInvoiceAddress: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationInvoiceAddress'),\n    ReservationWorkspaces: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationWorkspaces'),\n    ReservationMeetingspaces: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationMeetingspaces'),\n    ReservationOptions: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationOptions'),\n    ReservationPackages: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationPackages'),\n    ReservationTotals: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationTotals'),\n    IsPinned: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Pins/IsPinned'),\n    LinkPrint: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/UI/LinkPrint'\n      ),\n    ModalSendMail: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalSendMail'\n      ),\n    InvoiceSummary: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/Invoices/InvoiceSummary'\n      ),\n    LinkDownload: () => import('@/components/UI/LinkDownload'),\n    ProposalDetail: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Proposals/BookerPreview/ProposalDetail.vue'),\n\n    ModalAddDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalAddDate'),\n    CopyDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/CopyDate'),\n    //ModalCopyDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalCopyDate'),\n    ModalDeleteDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalDeleteDate'),\n    ModalSetExpiration: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalSetExpiration')\n  },\n\n  props: {\n    locationId: {\n      default: 0,\n      type: Number,\n    },\n\n    reservationKey: {\n      default: '',\n      type: String,\n    },\n\n    isShownInDrawer: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  data() {\n    return {\n      drawerTitle: '',\n      hideDatePicker: false,\n      isCreatingInvoice: false,\n      //isEmployee: true,\n      isSaving: false,\n      itemId: 0,\n      mailType: '',\n      modalTitle: '',\n      selectedOption: null,\n      selectedSpace: null,\n      selectedDate: null,\n      showAddCompany: false,\n      showAddProfile: false,\n      showCompanySummary: false,\n      showModal: false,\n      showModalCancelReservation: false,\n      showModalCreateInvoice: false,\n      showReservationSet: false,\n      showSendMail: false,\n      showInvoiceSummary: false,\n      showSideDrawer: false,\n      showAddPackage: false,\n      showAddDate: false,\n      showCopyDate: false,\n      showCopyReservation: false,\n      showChangeDate: false,\n      showCancelDate: false,\n      showDeleteDate: false,\n      showSetExpiration: false,\n\n      selectedReservationDate: null,\n\n      showProposalPreview: false,\n      drawerActionType: ''\n    }\n  },\n\n  computed: {\n    ...mapGetters('menuStore', ['hasEventActivated', 'hasInvoiceActivated', 'hasProposalActivated']),\n    ...mapState('reservationStore', ['reservation', 'reservationDate']),\n    ...mapGetters('reservationStore', ['isDraft']),\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('profileStore', ['profile']),\n\n    isBooker() {\n      let booker = false;\n\n      if (this.reservation && this.profile && this.reservation.ProfileId === this.profile.Id) {\n        booker = true;\n      }\n\n      return booker;\n    },\n\n    isEmployee() {\n      let employee = false;\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true;\n      }\n\n      return employee;\n    },\n\n    isLocked() {\n      let locked = false;\n\n      if (this.locationId > 0) {\n        if (\n          this.isCreatingInvoice ||\n          this.reservation.Type === 'Draft' ||\n          this.reservation.HasInvoice > 0 ||\n          this.reservation.StatusId === 3 ||\n          (this.reservation.HasProposal > 0\n            && this.reservation.ProposalStatus === 'WaitingForApproval')\n        ) {\n          locked = true\n        }\n      }\n\n      const editDatePassed = isAfter(new Date(), parseISO(this.reservation.BookerEditableUntil));\n\n      if (this.locationId === 0) {\n        if (\n          this.reservation &&\n          (this.reservation.HasInvoice > 0 ||\n            this.reservation.Type === 'Draft' ||\n            this.reservation.StatusId === 3 ||\n            editDatePassed ||\n            (this.reservation.Expiration && this.reservation.Expiration.IsExpired) ||\n            (this.reservation.HasProposal > 0\n              && this.reservation.ProposalStatus === 'WaitingForApproval'))\n        ) {\n          return true\n        }\n      }\n\n      return locked\n    },\n\n    isLockedCancel() {\n      let isLocked = false;\n\n      if (this.locationId > 0) {\n        if (\n          this.isCreatingInvoice ||\n          this.reservation.Type === 'Draft' ||\n          this.reservation.HasInvoice > 0 ||\n          this.reservation.StatusId === 3 ||\n          (this.reservation.HasProposal > 0\n            && this.reservation.ProposalStatus === 'WaitingForApproval') ||\n          (this.reservation.ChannelId === 1009 // THIS IS A FUCKIGN UGLY HACK TO LOCK CANCEL FOR MS RFP RESERVATIONS\n            && this.reservation.IsBackend) // AS LONG AS MS DOES NOT ALLOW CANCELLATION OF RFP RESERVATIONS, WE LOCK IT FOR NOW\n\n        ) {\n          isLocked = true;\n        }\n      }\n\n      const editDatePassed = isAfter(new Date(), parseISO(this.reservation.BookerEditableUntil));\n\n      if (this.locationId === 0) {\n        if (\n          this.reservation &&\n          (this.reservation.HasInvoice > 0 ||\n            this.reservation.Type === 'Draft' ||\n            this.reservation.StatusId === 3 ||\n            editDatePassed ||\n            (this.reservation.Expiration && this.reservation.Expiration.IsExpired) ||\n            (this.reservation.HasProposal > 0\n              && this.reservation.ProposalStatus === 'WaitingForApproval'))\n        ) {\n          return true;\n        }\n      }\n\n      return isLocked;\n    },\n\n    isLockedCopyDate() {\n      return (!this.isEmployee && this.reservation.MeetingtypeId !== 1) ||\n        this.reservation.Type === 'Draft' ||\n        this.reservation.Type === 'Request' ||\n        this.reservation.Status === 'Cancelled' ||\n        (this.reservation.Expiration && this.reservation.Expiration.IsExpired) ||\n        (this.reservation.HasProposal > 0 && this.reservation.ProposalStatus === 'WaitingForApproval')\n    },\n\n    showFinalizeReservation() {\n      let show = false;\n\n      if (this.reservation &&\n        this.reservation.Type === 'Reservation' &&\n        this.reservation.Status === 'Optional' ||\n        this.reservation.Status === 'AwaitingPoNumber' ||\n        (this.reservation.PoRequired && this.reservation.InvoiceAddress.PoNumber.length === 0) &&\n        !this.isLocked) {\n        show = true;\n      }\n\n      return show;\n    },\n\n    disableCreateInvoice() {\n      let disable = false\n\n      if (this.isCreatingInvoice ||\n        this.NoInvoice ||\n        this.reservation.HasInvoice > 0 ||\n        this.reservation.Status === 'Option' ||\n        this.reservation.Status === 'AwaitingPoNumber' ||\n        (this.reservation.PoRequired && this.reservation.InvoiceAddress.PoNumber.length === 0) ||\n        this.reservation.Type === 'Draft') {\n        disable = true;\n      }\n\n      return disable\n    },\n\n    resDates() {\n      let dates = [];\n\n      if (this.reservation.Dates) {\n        dates = this.reservation.Dates;\n      }\n\n      if (this.reservationDate) {\n        dates = dates.filter(d => d.Date === this.reservationDate.Date)\n      }\n\n      return dates;\n    },\n\n    emptyDates() {\n      let dates = [];\n\n      for (let i = 0; i < this.reservation.Dates.length; i++) {\n        let resDate = this.reservation.Dates[i];\n\n        if (resDate.Spaces.length === 0 &&\n          resDate.Options.length === 0 &&\n          resDate.Packages.length === 0) {\n          dates.push(resDate)\n        }\n      }\n\n      return dates;\n    },\n\n    spacesTotalSeats() {\n      let self = this\n      let total = 0\n\n      if (self.reservation && self.reservation !== null) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let resDate = this.reservation.Dates[i];\n\n          for (let j = 0; j < resDate.Spaces.length; j++) {\n            total = total + Number(resDate.Spaces[j].Seats)\n          }\n        }\n      }\n      return total\n    }\n  },\n\n  watch: {\n    spacesTotalSeats: function(newValue, oldValue) {\n      let self = this\n\n      if (self.reservation && self.reservation !== null) {\n        if (self.reservation.TotalSeats === oldValue) {\n          self.reservation.TotalSeats = Number(newValue)\n        }\n      }\n    },\n  },\n\n  created() {\n    if (!this.reservation || this.reservation.Key !== this.reservationKey) {\n      this.getReservationData();\n    }\n\n    EventBus.$on('dateDeleted', () => {\n      this.selectedDate = null\n    });\n\n    EventBus.$on('addToSet', (set) => {\n      this.reservation.ReservationSet.push(set)\n      this.updateReservationStore(this.reservation)\n    });\n\n    EventBus.$on('cancelled', (reservation) => {\n      let t = setTimeout(() => {\n\n        if (this.isEmployee) {\n          this.setShowSendMail('LocationClient_ReservationCancel');\n        }\n        clearTimeout(t);\n      }, 500);\n    });\n\n    EventBus.$on('showMoveSpace', () => {\n      this.setShowChangeDate(true, 'changeSpace');\n    });\n\n    EventBus.$on('reservationMoved', () => {\n      this.hideDrawer();\n    });\n\n    EventBus.$on('dateCopied', () => {\n      this.hideDrawer();\n    });\n\n\n    EventBus.$on('newInvoiceCreated', this.callbackInvoiceCreated)\n    EventBus.$on('invoiceRejected', this.callbackInvoiceRejected)\n    EventBus.$on('invoiceCredited', this.callbackInvoiceCredited)\n  },\n\n  beforeDestroy() {\n    this.selectedDate = null;\n    this.setReservationDate(null);\n\n    EventBus.$off('showMoveSpace');\n    EventBus.$off('dateDeleted');\n    EventBus.$off('addToSet');\n    EventBus.$off('cancelled');\n    EventBus.$off('reservationMoved');\n    EventBus.$off('dateCopied');\n    EventBus.$off('newInvoiceCreated', this.callbackInvoiceCreated)\n    EventBus.$off('invoiceRejected', this.callbackInvoiceRejected);\n    EventBus.$off('invoiceCredited', this.callbackInvoiceCredited);\n  },\n\n  methods: {\n    ...mapActions('reservationStore', ['refreshReservation']),\n    ...mapMutations('reservationStore', ['setReservation', 'setReservationDate']),\n\n    callbackInvoiceCreated(invoice) {\n      if (this.isShownInDrawer) {\n        let t = setTimeout(() => {\n          this.setShowInvoiceSummary(invoice)\n          clearTimeout(t)\n        }, 200)\n      }\n    },\n\n    callbackInvoiceRejected(invoice) {\n      if (invoice.isDeposit) {\n        this.reservation.HasDepositInvoice = 0\n      }\n\n      if (!invoice.isDeposit) {\n        this.reservation.HasInvoice = 0\n      }\n\n      // Update store\n      this.setReservation(this.reservation)\n      this.hideDrawer()\n    },\n\n    callbackInvoiceCredited(invoice) {\n      if (invoice.isDeposit) {\n        this.reservation.HasDepositInvoice = 0\n      }\n\n      if (!invoice.isDeposit) {\n        this.reservation.HasInvoice = 0\n      }\n      this.hideDrawer()\n    },\n\n    returnFormattedDate(dateString) {\n      if (!dateString) return '';\n\n      let _locale = this.$dateTimeHelper.getDateFnsLocale(this.$i18n.locale);\n      const date = parseISO(dateString);\n      return format(parseISO(dateString), 'eeee dd MMMM yyyy', {\n        locale: _locale\n      });\n    },\n\n    isSelectedDate(date) {\n      let isDate = false;\n\n      if (this.reservationDate) {\n        isDate = this.reservationDate.Date === date.Date\n      }\n\n      return isDate\n    },\n\n    getReservationData() {\n      let self = this\n\n      reservationProvider.methods\n        .getReservationByKey(self.reservationKey)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.updateReservationStore(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => {\n          self.pageLoadReady = true\n        })\n    },\n\n    getLocationLanguageIds() {\n      locationProvider.methods\n        .getLocationLanguageIds(this.reservation.LocationId)\n        .then((response) => {\n          if (response.status === 200) {\n            this.languageIds = response.data\n          }\n        })\n        .catch((err) => { })\n    },\n\n    reviveReservationDate(date) {\n      if (!this.isSaving) {\n        this.isSaving = true;\n\n        reservationProvider.methods\n          .reviveReservationDate(this.reservation.Key, date.Date)\n          .then((response) => {\n            if (response.status === 200) {\n              // Update reservation store\n              this.setReservation(response.data)\n\n              // Send message to be shown as toast on page\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t('General.Toast_ReservationUpdated'),\n              })\n            }\n          })\n          .catch((error) => {\n            this.isSavingError = true\n          })\n          .finally(() => {\n            this.isSaving = false\n          })\n      }\n    },\n\n    setShowAddDate(resDate) {\n      if (this.isLocked) {\n        return;\n      }\n\n      if (resDate === null) {\n        resDate = this.reservation.Dates[this.reservation.Dates.length - 1]\n      }\n      this.showAddDate = true;\n      this.selectedDate = resDate;\n    },\n\n    setShowDeleteDate(resDate) {\n      if (this.reservation.Dates.length === 1 || this.isLocked) {\n        return;\n      }\n\n      this.showDeleteDate = true\n      this.selectedDate = resDate\n    },\n\n\n    incomingReservationUpdate(incoming) {\n      let self = this\n\n      self.reservation.HasDepositInvoice = incoming.HasDepositInvoice\n      self.reservation.HasInvoice = incoming.HasInvoice\n\n      // Update store\n      self.updateReservationStore(self.reservation)\n    },\n\n    deleteExpiration() {\n      reservationProvider.methods\n        .deleteReservationExpiration(this.reservation.Key)\n        .then(response => {\n          if (response.status === 200) {\n            this.setReservation(response.data)\n          }\n        })\n    },\n\n    async getReservationPdf() {\n      const resResponse = await reservationProvider.methods\n        .getReservationPdf(this.reservation.Id)\n        .catch((err) => { })\n      return resResponse\n    },\n\n    toggleReservationIsPrivate() {\n      let self = this\n\n      reservationProvider.methods\n        .toggleReservationIsPrivate(this.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.updateReservationStore(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => { })\n    },\n\n    toggleReservationNoTax() {\n      let self = this\n\n      reservationProvider.methods\n        .toggleReservationNoTax(this.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.updateReservationStore(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => { })\n    },\n\n    toggleReservationPoRequired() {\n      let self = this\n\n      reservationProvider.methods\n        .toggleReservationPoRequired(this.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.updateReservationStore(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => { })\n    },\n\n    dataURItoBlob(dataURI) {\n      const byteString = atob(dataURI.split(',')[1])\n      const mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0]\n\n      // write the bytes of the string to an ArrayBuffer\n      const ab = new ArrayBuffer(byteString.length)\n      const ia = new Uint8Array(ab)\n      for (let i = 0; i < byteString.length; i++) {\n        ia[i] = byteString.charCodeAt(i)\n      }\n\n      // write the ArrayBuffer to a blob, and you're done\n      const bb = new Blob([ab], { type: mimeString })\n      return bb\n    },\n\n    reservationAccepted() {\n      this.setShowSendMail('LocationClient_ReservationAccepted')\n    },\n\n    reservationDenied() {\n      this.setShowSendMail('LocationClient_ReservationDenied')\n    },\n\n    setSelectedDate(date) {\n      this.selectedDate = date\n    },\n\n    setShowAddDeskspace() {\n      this.modalTitle = 'Add deskspace'\n      this.setVisibleSideBarItem('addDeskspace')\n    },\n\n    setShowModalCreateInvoice() {\n      if (!this.disableCreateInvoice) {\n        this.showModalCreateInvoice = true\n      }\n    },\n\n    setShowCancelReservation() {\n      if (!this.isLockedCancel && this.reservation.StatusId !== 3) {\n        this.showModalCancelReservation = true;\n      }\n    },\n\n    setShowAddPackage() {\n      this.showAddPackage = true\n    },\n\n\n    setShowSetExpiration() {\n      this.showSetExpiration = true\n    },\n\n    setVisibleModalItem(item) {\n      this.showModal = item.length > 0\n    },\n\n    setShowSendMail(mailType) {\n      this.showSendMail = true\n      this.mailType = mailType\n    },\n\n    setShowCancelDate(resDate) {\n      if (this.isLocked) {\n        return;\n      }\n\n      this.showCancelDate = true;\n      //this.showSideDrawer = true;\n      this.selectedDate = resDate;\n    },\n\n    hideModal() {\n      this.showModalCancelReservation = false;\n      this.showModalCreateInvoice = false;\n      this.showSetExpiration = false;\n      this.showSendMail = false;\n      this.showAddPackage = false;\n      this.showAddDate = false;\n      this.showDeleteDate = false;\n      this.showCancelDate = false;\n\n      this.itemId = 0\n      this.drawerTitle = ''\n      this.mailType = ''\n      this.resDate = null;\n      this.selectedDate = null;\n\n      this.setVisibleModalItem('')\n    },\n\n    roundToZero(num) {\n      let self = this\n      return +(Math.round(self.roundToTwo(num) + 'e+0') + 'e-0')\n    },\n\n    roundToTwo(num) {\n      return +(Math.round(num + 'e+2') + 'e-2')\n    },\n\n    goToProposal(quoteId) {\n      this.$router.push({\n        name: `proposals-detail`,\n        params: { proposalId: quoteId },\n      })\n    },\n\n    createQuote() {\n      let self = this\n      quoteProvider.methods\n        .createQuoteFromReservation(self.reservation.Id)\n        .then((response) => {\n          if (response.status === 200) {\n            // self.reservation.QuoteId = response.data.Id\n            self.reservation.QuoteId = response.data.Id\n\n            // Update store\n            self.updateReservationStore(self.reservation)\n          }\n        })\n        .catch((err) => { })\n    },\n\n    /**\n     * Update reservation state and original reservation\n     */\n    updateReservationStore(data) {\n      this.setReservation(data);\n    },\n\n    setShowInvoiceSummary(newInvoice = null) {\n      if (newInvoice) {\n        this.itemId = newInvoice.Id\n        this.drawerTitle = this.$t(\n          'Components.Invoices.InvoiceList.DrawerTitle_InvoiceDetail'\n        );\n        this.showSideDrawer = true;\n        this.showInvoiceSummary = true;\n        return\n      }\n\n      if (this.reservation.HasInvoice === 0) {\n        EventBus.$emit('showReservationInvoice');\n        return\n      }\n\n      this.itemId = this.reservation.HasInvoice;\n      this.drawerTitle = this.$t(\n        'Components.Invoices.InvoiceList.DrawerTitle_InvoiceDetail'\n      );\n      this.showSideDrawer = true;\n      this.showInvoiceSummary = true;\n    },\n\n    setShowProposalPreview() {\n      if (this.reservation.HasProposal === 0) {\n        EventBus.$emit('showReservationProposal');\n      }\n      else {\n        this.showSideDrawer = true;\n        this.showProposalPreview = true;\n      }\n    },\n\n    setShowChangeDate(hideDatePicker, action = '') {\n      if (this.isLocked) {\n        return;\n      }\n\n      let _drawerTitle = ''\n      if (action === 'changeSpace' && this.reservation.MeetingtypeId === 1) {\n        _drawerTitle = this.$t('Components.Reservation.ModalChangeDate.Main_Title_ChangeSpace')\n      }\n      if (action === 'changeSpace' && this.reservation.MeetingtypeId === 2) {\n        _drawerTitle = this.$t('Components.Reservation.ModalChangeDate.Main_Title_ChangeWorkspace')\n      }\n\n      if (action === 'changeDate') {\n        _drawerTitle = this.$t('Components.Reservation.ModalChangeDate.Main_Title')\n      }\n\n      this.drawerActionType = action\n      this.drawerTitle = _drawerTitle\n      this.hideDatePicker = hideDatePicker;\n      this.showChangeDate = true;\n      this.showSideDrawer = true;\n    },\n\n    setShowCopyDate(resDate) {\n      if (this.isLocked) {\n        return;\n      }\n\n      this.drawerTitle = this.$t('Components.Reservation.CopyDate.title_CopyDay')\n      this.showCopyDate = true;\n      this.showSideDrawer = true;\n      this.selectedDate = resDate;\n    },\n\n    setShowCopyReservation() {\n      if(this.isLockedCopyDate) {\n        return\n      }\n      \n      this.drawerTitle = this.$t('Components.Reservation.CopyReservation.title')\n      this.showCopyReservation = true;\n      this.showSideDrawer = true;\n    },\n\n    setShowReservationSet() {\n      this.showReservationSet = true;\n      this.showSideDrawer = true;\n    },\n\n    hideDrawer() {\n      this.itemId = 0;\n      this.drawerTitle = '';\n      this.showSideDrawer = false;\n      this.showInvoiceSummary = false;\n      this.showProposalPreview = false;\n      this.showChangeDate = false;\n      this.showCopyDate = false;\n      this.showCopyReservation = false;\n      this.showReservationSet = false;\n      this.drawerActionType = ''\n    },\n  },\n}\n</script>\n\n<style lang=\"sass\" scoped>\n.proposalDetail\n  :deep(.section)\n    padding-inline: 0 !important\n\n.title-date\n  &:first-letter\n    text-transform: uppercase\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationDetail.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationDetail.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationDetail.vue?vue&type=template&id=63f5b5ed&scoped=true\"\nimport script from \"./ReservationDetail.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationDetail.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReservationDetail.vue?vue&type=style&index=0&id=63f5b5ed&prod&lang=sass&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"63f5b5ed\",\n  null\n  \n)\n\nexport default component.exports","'use strict';\n// Should get iterator record of a set-like object before cloning this\n// https://bugs.webkit.org/show_bug.cgi?id=289430\nmodule.exports = function (METHOD_NAME) {\n  try {\n    // eslint-disable-next-line es/no-set -- needed for test\n    var baseSet = new Set();\n    var setLike = {\n      size: 0,\n      has: function () { return true; },\n      keys: function () {\n        // eslint-disable-next-line es/no-object-defineproperty -- needed for test\n        return Object.defineProperty({}, 'next', {\n          get: function () {\n            baseSet.clear();\n            baseSet.add(4);\n            return function () {\n              return { done: true };\n            };\n          }\n        });\n      }\n    };\n    var result = baseSet[METHOD_NAME](setLike);\n\n    return result.size === 1 && result.values().next().value === 4;\n  } catch (error) {\n    return false;\n  }\n};\n","'use strict';\nvar call = require('../internals/function-call');\n\nmodule.exports = function (record, fn, ITERATOR_INSTEAD_OF_RECORD) {\n  var iterator = ITERATOR_INSTEAD_OF_RECORD ? record : record.iterator;\n  var next = record.next;\n  var step, result;\n  while (!(step = call(next, iterator)).done) {\n    result = fn(step.value);\n    if (result !== undefined) return result;\n  }\n};\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationDetail.vue?vue&type=style&index=0&id=1ae120c5&prod&lang=scss&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateParser.vue?vue&type=style&index=0&id=0f7c2cc6&prod&scoped=true&lang=scss\"","import axios from 'axios'\nimport store from '../store'\n\nexport default {\n  methods: {\n    async getLocationFeeInvoices(locationId, month = 0, year = 0, searchTerm = '') {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/feeinvoice/location/${locationId}`,\n        {\n          params: {\n            month: month,\n            year: year,\n            q: searchTerm\n          },\n\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getFeeInvoiceById(invoiceId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/feeinvoice/${invoiceId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getFeeInvoicePdf(invoiceId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/feeinvoice/${invoiceId}/pdf`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n  }\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MoveItem.vue?vue&type=style&index=0&id=7f49d1b4&prod&scoped=true&lang=sass\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"tabs is-boxed\"},[_c('ul',[_c('li',{class:{ 'is-active' : _vm.selectedView === 'both' }},[_c('a',{on:{\"click\":function($event){_vm.selectedView = 'both'}}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProgram.Label_Both')))])]),_c('li',{class:{ 'is-active' : _vm.selectedView === 'external' }},[_c('a',{on:{\"click\":function($event){_vm.selectedView = 'external'}}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProgram.Label_External')))])]),_c('li',{class:{ 'is-active' : _vm.selectedView === 'internal' }},[_c('a',{on:{\"click\":function($event){_vm.selectedView = 'internal'}}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProgram.Label_Internal')))])])])]),_c('div',{staticClass:\"schedule\"},[(_vm.showEditProgramItem)?_c('ModalEditProgramItem',{attrs:{\"showModal\":_vm.showEditProgramItem,\"programItem\":_vm.selectedProgramItem,\"onClickCancel\":_vm.hideModal}}):_vm._e(),_c('div',{staticClass:\"timeline\"},[_c('ul',[_c('li',{staticClass:\"group-header\"},[_vm._v(\" \")]),_vm._l((_vm.scheduleTimeSlots),function(time){return _c('li',{key:'p-' + time,staticClass:\"time-slot\"},[_c('span',[_vm._v(_vm._s(_vm.minutesToTime(time)))])])})],2)]),(_vm.groups && _vm.groups.length > 0)?_c('div',{staticClass:\"events\"},_vm._l((_vm.groups),function(group){return _c('div',{key:group.date,staticClass:\"group\",on:{\"dragenter\":function($event){$event.preventDefault();return _vm.onGroupDragEnter($event, group)},\"dragover\":function($event){$event.preventDefault();return _vm.onGroupDragOver($event, group)},\"drop\":function($event){$event.preventDefault();return _vm.onGroupDrop($event, group)}}},[_c('div',{staticClass:\"group-header\"},[_c('span',[_vm._v(_vm._s(group.date))])]),_c('div',{staticClass:\"group-events\",style:({ height: (24 * _vm.timeSlotHeight) + 'px' }),on:{\"mousedown\":function($event){return _vm.onNewEventMouseDown($event, group)},\"mousemove\":function($event){return _vm.onNewEventMouseMove($event)},\"mouseup\":function($event){return _vm.onNewEventMouseUp($event)}}},[(_vm.newEventDraft && _vm.newEventDraft.group.date === group.date)?_c('div',{staticClass:\"new-event-draft\",style:(_vm.getNewEventDraftStyle(_vm.newEventDraft))}):_vm._e(),_c('ul',_vm._l((group.events),function(event){return _c('li',{key:event.Id,staticClass:\"event\"},[_c('div',{staticClass:\"event-container\",class:{'public-event': event.IsPublic, 'private-event': !event.IsPublic, 'short-event': event.Duration < 60},style:(_vm.getEventStyle(event)),attrs:{\"draggable\":\"true\"},on:{\"dragstart\":function($event){return _vm.onEventDragStart($event, event)},\"dragend\":function($event){return _vm.onEventDragEnd($event, event)},\"mouseenter\":function($event){return _vm.showTooltip(event, $event)},\"mousemove\":function($event){return _vm.moveTooltip($event)},\"mouseleave\":_vm.hideTooltip}},[_c('div',{staticClass:\"delete-btn\",on:{\"click\":function($event){$event.preventDefault();return _vm.onDeleteEvent(event, group)}}},[_vm._v(\" × \")]),(!event.DynamicTime || event.DynamicItem === 'end')?_c('div',{staticClass:\"drag-handle-top\",on:{\"mousedown\":function($event){$event.preventDefault();return _vm.startDragTop($event, event)}}}):_vm._e(),(event.Duration >= 75)?_c('div',{staticClass:\"time-display\"},[_c('span',{staticClass:\"time-start\"},[_vm._v(\" \"+_vm._s(_vm.minutesToTime(event.StartMinutes))+\" \")]),_vm._v(\" - \"),_c('span',{staticClass:\"time-end\"},[_vm._v(\" \"+_vm._s(_vm.minutesToTime(event.StartMinutes + event.Duration))+\" \")])]):_vm._e(),_c('div',{staticClass:\"clickable-name\"},[_c('a',{on:{\"click\":function($event){$event.preventDefault();return _vm.setShowEditProgramItem(event)}}},[_vm._v(\" \"+_vm._s(event.Description)+\" \")]),(event.AssignedSpace > 0)?_c('span',{staticClass:\"space-name ml-2\"},[_vm._v(\"@ \"+_vm._s(event.AssignedSpaceName))]):_vm._e()]),(_vm.tooltip.visible)?_c('div',{staticClass:\"tooltip\",style:(_vm.tooltip.style)},[_vm._v(\" \"+_vm._s(_vm.tooltip.event.Description)+\" \"),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ProgramItem.label_StartTime'))+\": \"+_vm._s(_vm.minutesToTime(_vm.tooltip.event.StartMinutes))+\" \"),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ProgramItem.label_EndTime'))+\": \"+_vm._s(_vm.minutesToTime(_vm.tooltip.event.StartMinutes + _vm.tooltip.event.Duration))+\" \")]):_vm._e(),(!event.DynamicTime || event.DynamicItem === 'start')?_c('div',{staticClass:\"drag-handle-bottom\",on:{\"mousedown\":function($event){$event.preventDefault();return _vm.startDragBottom($event, event)}}}):_vm._e()])])}),0)])])}),0):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n\n    <div class=\"tabs is-boxed\">\n      <ul>\n        <li :class=\"{ 'is-active' : selectedView === 'both' }\"><a @click=\"selectedView = 'both'\">{{ $t('Components.Reservation.ReservationProgram.Label_Both') }}</a></li>\n        <li :class=\"{ 'is-active' : selectedView === 'external' }\"><a @click=\"selectedView = 'external'\">{{ $t('Components.Reservation.ReservationProgram.Label_External') }}</a></li>\n        <li :class=\"{ 'is-active' : selectedView === 'internal' }\"><a @click=\"selectedView = 'internal'\">{{ $t('Components.Reservation.ReservationProgram.Label_Internal') }}</a></li>\n      </ul>\n    </div>\n  \n    <div class=\"schedule\">\n      <ModalEditProgramItem\n        v-if=\"showEditProgramItem\"\n        :showModal=\"showEditProgramItem\"\n        :programItem=\"selectedProgramItem\"\n        :onClickCancel=\"hideModal\"\n      />\n\n      <!-- Timeline (left column) -->\n      <div class=\"timeline\">\n        <ul>\n          <li class=\"group-header\">&nbsp;</li>\n          <li\n            v-for=\"time in scheduleTimeSlots\"\n            :key=\"'p-' + time\"\n            class=\"time-slot\"\n          >\n            <span>{{ minutesToTime(time) }}</span>\n          </li>\n        </ul>\n      </div>\n\n      <!-- Events Container (groups displayed as columns) -->\n      <div v-if=\"groups && groups.length > 0\" class=\"events\">\n        <!-- Each group will be shown as a vertical column -->\n        <div class=\"group\" v-for=\"group in groups\" :key=\"group.date\"  \n          @dragenter.prevent=\"onGroupDragEnter($event, group)\"\n          @dragover.prevent=\"onGroupDragOver($event, group)\"\n          @drop.prevent=\"onGroupDrop($event, group)\"\n        >\n          <div class=\"group-header\">\n            <span>{{ group.date }}</span>\n          </div>\n\n          <!-- This container is positioned relatively so events can use absolute positioning -->\n          <div class=\"group-events\" \n            @mousedown=\"onNewEventMouseDown($event, group)\"\n            @mousemove=\"onNewEventMouseMove($event)\"\n            @mouseup=\"onNewEventMouseUp($event)\"\n            :style=\"{ height: (24 * timeSlotHeight) + 'px' }\"\n          >\n            <!-- New Event Preview (if one is being created in this group) -->\n            <div\n              v-if=\"newEventDraft && newEventDraft.group.date === group.date\"\n              class=\"new-event-draft\"\n              :style=\"getNewEventDraftStyle(newEventDraft)\"\n            ></div>\n\n            <ul>\n              <li v-for=\"event in group.events\" :key=\"event.Id\" class=\"event\">\n                <div \n                  :style=\"getEventStyle(event)\" \n                  class=\"event-container\"\n                  :class=\"{'public-event': event.IsPublic, 'private-event': !event.IsPublic, 'short-event': event.Duration < 60}\"\n                  draggable=\"true\"\n                  @dragstart=\"onEventDragStart($event, event)\"\n                  @dragend=\"onEventDragEnd($event, event)\"\n                  @mouseenter=\"showTooltip(event, $event)\"\n                  @mousemove=\"moveTooltip($event)\"\n                  @mouseleave=\"hideTooltip\"\n                >             \n                  <!-- Delete button in the top-right corner -->\n                  <div class=\"delete-btn\" @click.prevent=\"onDeleteEvent(event, group)\">\n                    &times;\n                  </div>\n\n                  \n                  <!-- Top Drag Handle (for adjusting start time) -->\n                  <div\n                    v-if=\"!event.DynamicTime || event.DynamicItem === 'end'\"  \n                    class=\"drag-handle-top\"\n                    @mousedown.prevent=\"startDragTop($event, event)\"\n                  ></div>\n                  \n                  <!-- Time display (non-clickable) -->\n                  <div v-if=\"event.Duration >= 75\" class=\"time-display\">\n                    <span class=\"time-start\">\n                      {{ minutesToTime(event.StartMinutes) }}\n                    </span>\n                    -\n                    <span class=\"time-end\">\n                      {{ minutesToTime(event.StartMinutes + event.Duration) }}\n                    </span>\n                  </div>\n                  \n                  <!-- Clickable Event Name -->\n                  <div class=\"clickable-name\">\n                    <a @click.prevent=\"setShowEditProgramItem(event)\">\n                      {{ event.Description }}\n                    </a>\n                    <span v-if=\"event.AssignedSpace > 0\" class=\"space-name ml-2\">@ {{ event.AssignedSpaceName }}</span>\n                  </div>\n\n                  <!-- Tooltip Element -->\n                  <div v-if=\"tooltip.visible\" class=\"tooltip\" :style=\"tooltip.style\">\n                    {{ tooltip.event.Description }}\n                    <br />\n                    {{ $t('Components.Reservation.ProgramItem.label_StartTime') }}: {{ minutesToTime(tooltip.event.StartMinutes) }}\n                    <br />\n                    {{ $t('Components.Reservation.ProgramItem.label_EndTime') }}: {{ minutesToTime(tooltip.event.StartMinutes + tooltip.event.Duration) }}\n                  </div>\n\n                  \n                  <!-- Bottom Drag Handle (for adjusting duration) -->\n                  <div\n                    v-if=\"!event.DynamicTime || event.DynamicItem === 'start'\"  \n                    class=\"drag-handle-bottom\"\n                    @mousedown.prevent=\"startDragBottom($event, event)\"\n                  ></div>\n                </div>\n\n              </li>\n            </ul>\n          </div>\n        </div>\n      </div>\n\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex';\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\nimport { cleanSource } from '@/utils/objectHelper';\n\nexport default {\n  components: {\n    ModalEditProgramItem: () => import('./ModalEditProgramItem')\n  },\n  \n  data() {\n    return {\n      timeSlotHeight: 40, // Height of each time slot in pixels\n\n      // Time slots (minutes since midnight)\n      scheduleTimeSlots: Array.from({ length: 24 }, (_, i) => i * 60),\n\n      // New event draft used when creating a new event via drag\n      newEventDraft: null,\n      // For dragging of existing events (handles)\n\n      isDraggingTop: false,\n      isDraggingBottom: false,\n      currentEvent: null,\n      initialY: 0,\n      initialStartMinutes: 0,\n      initialDuration: 0,\n      selectedView: 'both', // 'both', 'external', 'internal'\n\n      tooltip: {\n        visible: false,\n        event: null,\n        style: {\n          top: \"0px\",\n          left: \"0px\"\n        }\n      },\n      isSaving: false,\n      showEditProgramItem: false,\n      selectedProgramItem: null,\n      timestamp: new Date().getTime(),\n    };\n  },\n\n  watch: {\n    groups: {\n      handler() {\n        this.$nextTick(() => {\n          this.arrangeGroupEvents();\n        });\n      },\n      deep: true\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n\n    // Calculate the height dynamically\n    scheduleHeight() {\n      return `${(this.scheduleTimeSlots.length * this.timeSlotHeight) + this.timeSlotHeight}px`;\n    },\n\n    groups() {\n      let groups = [];\n\n      if (this.reservation && this.reservation.Dates) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let date = this.reservation.Dates[i];\n          let programItems = date.ProgramItems || [];\n\n          if (this.selectedView === 'external') {\n            programItems = programItems.filter(item => item.IsPublic);\n          } else if (this.selectedView === 'internal') {\n            programItems = programItems.filter(item => !item.IsPublic);\n          }\n\n          groups.push({\n            date: date.Date,\n            events: programItems\n          });\n        }\n      }\n\n      return groups;\n    },\n  },\n\n  created() {\n    // Compute overlapping layout as early as possible so that events\n    // already have their `column` and `totalColumns` values.\n    this.arrangeGroupEvents();\n  },\n\n  mounted() {\n    // Ensure layout is calculated after the DOM is fully rendered\n    this.$nextTick(() => {\n      // this.arrangeGroupEvents();\n      // this.applyStylesToEvents();\n      this.$forceUpdate();\n\n      const scheduleElement = document.querySelector(\".schedule\");\n      if (scheduleElement) {\n        scheduleElement.style.height = this.scheduleHeight;\n      }\n\n    });\n\n    window.addEventListener(\"mouseup\", this.resetDragState);\n\n  },\n\n  beforeDestroy() {\n    window.removeEventListener(\"mouseup\", this.resetDragState);\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    // Show the tooltip on hover\n    showTooltip(event, mouseEvent) {\n      this.tooltip.event = event;\n      this.tooltip.visible = true;\n      this.moveTooltip(mouseEvent); // Position it dynamically\n    },\n    // Move the tooltip with the mouse\n    moveTooltip(mouseEvent) {\n      const offsetX = 10; // Tooltip offset from the cursor\n      const offsetY = 10;\n      this.tooltip.style = {\n        top: `${mouseEvent.clientY + offsetY}px`,\n        left: `${mouseEvent.clientX + offsetX}px`\n      };\n    },\n    // Hide the tooltip when the mouse leaves\n    hideTooltip() {\n      this.tooltip.visible = false;\n      this.tooltip.event = null;\n    },\n\n    // New method: Delete an event from its group's events array.\n    onDeleteEvent(event, group) {\n      const index = group.events.indexOf(event);\n      if (index > -1) {\n        this.deleteReservationProgramItem(event);\n        \n        group.events.splice(index, 1);\n        this.arrangeGroupEvents();\n      }\n\n      this.tooltip.visible = false;\n      this.tooltip.event = null;\n    },\n    \n    // Convert minutes (number) to \"HH:mm\" string\n    minutesToTime(minutes) {\n      const hrs = Math.floor(minutes / 60);\n      const mins = minutes % 60;\n      return `${hrs}:${mins < 10 ? \"0\" + mins : mins}`;\n    },\n\n    // Calculate overlapping layout within each group\n    arrangeGroupEvents() {\n      this.groups.forEach(group => {\n        const events = group.events.slice().sort((a, b) => a.StartMinutes - b.StartMinutes);\n\n        let active = [];\n\n        events.forEach(ev => {\n          // retire finished\n          active = active.filter(a => a.end > ev.StartMinutes);\n\n          const occupied = new Set(active.map(a => a.ev.column));\n\n          // If another active event has identical start/end, force a new column\n          const sameTime = active.find(a =>\n            a.ev.StartMinutes === ev.StartMinutes &&\n            a.ev.Duration === ev.Duration\n          );\n\n          if (sameTime) {\n            ev.column = this.findFreeColumn(occupied);\n          } else if (ev.column !== undefined && !occupied.has(ev.column)) {\n            // reuse existing\n          } else {\n            ev.column = this.findFreeColumn(occupied);\n          }\n\n          active.push({ ev, end: ev.StartMinutes + ev.Duration });\n\n          const usedCols = new Set(active.map(a => a.ev.column));\n          const currentCols = Math.max(1, usedCols.size);\n          active.forEach(a => a.ev.totalColumns = currentCols);\n        });\n\n        group.events.forEach(e => {\n          if (!Number.isFinite(e.column)) e.column = 0;\n          if (!Number.isFinite(e.totalColumns)) e.totalColumns = 1;\n        });\n      });\n\n    },\n\n    overlaps(a, b) {\n      const aStart = a.StartMinutes;\n      const aEnd = a.StartMinutes + a.Duration;\n      const bStart = b.StartMinutes;\n      const bEnd = b.StartMinutes + b.Duration;\n\n      // Normal overlap\n      if (aStart < bEnd && aEnd > bStart) return true;\n\n      // Special case: exact same start and end\n      if (aStart === bStart && aEnd === bEnd) return true;\n\n      return false;\n    },\n\n    findFreeColumn(occupied) {\n      let c = 0;\n      while (occupied.has(c)) c++;\n      return c;\n    },\n\n    // Style calculation for events\n    getEventStyle(event) {\n      const top = (event.StartMinutes / 60) * this.timeSlotHeight;\n      const height = (event.Duration / 60) * this.timeSlotHeight;\n\n      const cols = Math.max(1, event.totalColumns);\n      const col = Math.max(0, event.column);\n\n      const leftPercent = (col * 100) / cols;\n      const widthPercent = 100 / cols;\n\n      return {\n        position: \"absolute\",\n        top: `${top}px`,\n        height: `${height}px`,\n        left: `${leftPercent}%`,\n        width: `calc(${widthPercent}% - 2px)` // gutter to avoid overflow\n      };\n    },\n\n    // Apply calculated styles manually\n    applyStylesToEvents() {\n      this.groups.forEach(group => {\n        group.events.forEach(event => {\n          const element = document.querySelector(`.event a[data-content=\"${event.Description}\"]`);\n          if (element) {\n            const style = this.getEventStyle(event);\n            Object.keys(style).forEach(key => {\n              element.style[key] = style[key];\n            });\n          }\n        });\n      });\n    },\n\n    // Event Drag Handlers\n    onEventDragStart(e, event) {\n      // Store a reference to the dragged event\n      this.draggedEvent = event;\n      e.dataTransfer.setData(\"text/plain\", event.Id); // Optionally pass the ID (not required here)\n    },\n      \n      // Group Drop Zone Handlers\n    onGroupDragEnter(e, group) {\n      // Ensure the highlight is added only to the group-events container\n      const target = e.currentTarget.querySelector(\".group-events\");\n      if (this.draggedEvent && !group.events.includes(this.draggedEvent)) {\n        target.classList.add(\"drag-over\"); // Highlight valid drop targets\n      }\n    },\n    onGroupDragOver(e, group) {\n      // Allow drop only for valid targets (group-events container)\n      const target = e.currentTarget.querySelector(\".group-events\");\n      if (this.draggedEvent && !group.events.includes(this.draggedEvent)) {\n        e.preventDefault(); // Prevent default and allow drop\n      }\n    },\n    onGroupDrop(e, targetGroup) {\n      const target = e.currentTarget.querySelector(\".group-events\");\n      if (!this.draggedEvent) return;\n\n      // Prevent copying to the same group\n      if (targetGroup.events.includes(this.draggedEvent)) {\n\n        // Show invalid-drop feedback only for the group-events container\n        target.classList.add(\"invalid-drop\");\n        setTimeout(() => target.classList.remove(\"invalid-drop\"), 500);\n        return;\n      }\n\n      // Copy the event with a new unique ID\n      const copiedEvent = {\n        ...this.draggedEvent,\n        Id: Date.now()\n      };\n\n      let programItem = {\n        Id: 0,\n        ReservationId: this.reservation.Id,\n        Date: targetGroup.date,\n        StartMinutes: this.draggedEvent.StartMinutes,\n        Duration: this.draggedEvent.Duration,\n        Description: this.draggedEvent.Description,\n        IsPublic: this.draggedEvent.IsPublic,\n        DynamicTime: this.draggedEvent.DynamicTime,\n        DynamicItem: this.draggedEvent.DynamicItem,\n        DynamicValue: this.draggedEvent.DynamicValue,\n        LinkedEntity: this.draggedEvent.LinkedEntity,\n        LinkedItemId: this.draggedEvent.LinkedItemId,\n        AssignedSpace: this.draggedEvent.AssignedSpace\n      };\n\n      this.saveReservationProgramItem(programItem);\n\n      // Add the copied event to the target group\n      targetGroup.events.push(copiedEvent);\n\n      // Recalculate overlapping layout for all groups\n      this.arrangeGroupEvents();\n\n      // Clear the dragged event reference\n      this.draggedEvent = null;\n\n      // Remove drop zone highlights\n      target.classList.remove(\"drag-over\");\n    },\n    onEventDragEnd() {\n      // Clear the dragged event reference and any residual highlights\n      this.draggedEvent = null;\n      document.querySelectorAll(\".drag-over\").forEach((el) =>\n        el.classList.remove(\"drag-over\")\n      );\n    },\n\n    // Start dragging the top part of an event\n    startDragTop(event, programEvent) {\n      this.isDraggingTop = true;\n      this.currentEvent = programEvent;\n      this.initialY = event.clientY;\n      this.initialStartMinutes = programEvent.StartMinutes;\n      this.initialDuration = programEvent.Duration;\n      // Add event listeners\n      document.addEventListener(\"mousemove\", this.onDragTop);\n      document.addEventListener(\"mouseup\", this.stopDragTop);\n    },\n\n    // Adjust the start time while dragging the top handle\n    onDragTop(event) {\n      if (!this.isDraggingTop || !this.currentEvent) return;\n      const deltaY = event.clientY - this.initialY; // Vertical movement in pixels\n      const deltaMinutes = Math.round((deltaY / this.timeSlotHeight) * 60); // Convert to minutes\n      const newStartMinutes = Math.round(Math.max(0, this.initialStartMinutes + deltaMinutes) / 15) * 15; // Prevent negative start time\n      const newDuration = Math.round(Math.max(15, this.initialDuration - deltaMinutes) / 15) * 15; // Keep a positive duration\n\n      this.currentEvent.StartMinutes = newStartMinutes;\n      this.currentEvent.Duration = newDuration;\n\n      // Dynamically recalculate overlapping layout\n      this.arrangeGroupEvents();\n    },\n\n    // Stop dragging the top part\n    stopDragTop() {\n      if (this.currentEvent) {\n\n        let programItem = {\n          Id: this.currentEvent.Id,\n          ReservationId: this.reservation.Id,\n          Date: this.currentEvent.Date,\n          StartMinutes: this.currentEvent.StartMinutes,\n          Duration: this.currentEvent.Duration,\n          Description: this.currentEvent.Description,\n          IsPublic: this.currentEvent.IsPublic,\n          DynamicTime: this.currentEvent.DynamicTime,\n          DynamicItem: this.currentEvent.DynamicItem,\n          DynamicValue: this.currentEvent.DynamicValue,\n          LinkedEntity: this.currentEvent.LinkedEntity,\n          LinkedItemId: this.currentEvent.LinkedItemId,\n          AssignedSpace: this.currentEvent.AssignedSpace\n        };\n\n        this.saveReservationProgramItem(programItem);\n\n        // Apply final values one last time\n        this.arrangeGroupEvents();\n\n        this.clearDragClasses();\n      }\n      \n      // Now clear drag flags\n      this.isDraggingTop = false;\n      //this.currentEvent = null;\n      document.removeEventListener(\"mousemove\", this.onDragTop);\n      document.removeEventListener(\"mouseup\", this.stopDragTop);\n    },\n\n    // Start dragging the bottom part of an event\n    startDragBottom(event, programEvent) {\n      this.isDraggingBottom = true;\n      this.currentEvent = programEvent;\n      this.initialY = event.clientY;\n      this.initialStartMinutes = programEvent.StartMinutes;\n      this.initialDuration = programEvent.Duration;\n      document.addEventListener(\"mousemove\", this.onDragBottom);\n      document.addEventListener(\"mouseup\", this.stopDragBottom);\n    },\n\n    // Adjust the duration while dragging the bottom handle\n    onDragBottom(event) {\n      if (!this.isDraggingBottom || !this.currentEvent) return;\n      const deltaY = event.clientY - this.initialY; // Vertical movement in pixels\n      const deltaMinutes = Math.round((deltaY / this.timeSlotHeight) * 60); // Convert to minutes\n      const newDuration = Math.round(Math.max(15, this.initialDuration + deltaMinutes) / 15) * 15; // Prevent negative or too small duration\n\n      this.currentEvent.Duration = newDuration;\n\n      // Dynamically recalculate overlapping layout\n      this.arrangeGroupEvents();\n    },\n\n    // Stop dragging the bottom part\n    stopDragBottom() {\n      if (this.currentEvent) {\n        let programItem = {\n          Id: this.currentEvent.Id,\n          ReservationId: this.reservation.Id,\n          Date: this.currentEvent.Date,\n          StartMinutes: this.currentEvent.StartMinutes,\n          Duration: this.currentEvent.Duration,\n          Description: this.currentEvent.Description,\n          IsPublic: this.currentEvent.IsPublic,\n          DynamicTime: this.currentEvent.DynamicTime,\n          DynamicItem: this.currentEvent.DynamicItem,\n          DynamicValue: this.currentEvent.DynamicValue,\n          LinkedEntity: this.currentEvent.LinkedEntity,\n          LinkedItemId: this.currentEvent.LinkedItemId,\n          AssignedSpace: this.currentEvent.AssignedSpace\n        };\n\n        this.saveReservationProgramItem(programItem);\n\n        // Apply final values one last time\n        this.arrangeGroupEvents();\n\n        this.clearDragClasses();\n      }\n\n      // Now clear drag flags\n      this.isDraggingBottom = false;\n      //this.currentEvent = null;\n      document.removeEventListener(\"mousemove\", this.onDragBottom);\n      document.removeEventListener(\"mouseup\", this.stopDragBottom);\n    },\n\n    resetDragState() {\n      if (this.isDraggingTop || this.isDraggingBottom) {\n        // finalize layout if needed\n        if (this.currentEvent) {\n          this.arrangeGroupEvents();\n        }\n      }\n\n      this.isDraggingTop = false;\n      this.isDraggingBottom = false;\n      this.currentEvent = null;\n    },\n\n    clearDragClasses() {\n      document.querySelectorAll(\".group-events\").forEach((el) => {\n        el.classList.remove(\"drag-over\", \"invalid-drop\");\n        // Also remove any overlay child you may have appended dynamically\n        el.querySelectorAll(\".drag-overlay\").forEach(o => o.remove());\n      });\n    },\n\n\n    // --- New Event Creation by Drag in the Group Column ---\n    onNewEventMouseDown(e, group) {\n      if (e.target.closest('.event-container')) return;\n      \n      // Start only if the click is on the background of the group (not on an existing event).\n      //if (e.target.closest(\".event\")) return;\n\n      const containerRect = e.currentTarget.getBoundingClientRect();\n      // Calculate the Y position within the container.\n      const relativeY = e.clientY - containerRect.top;\n      let startMinutes = Math.round(((relativeY / this.timeSlotHeight) * 60) / 15) * 15;\n      startMinutes = Math.max(0, startMinutes);\n\n      // Create a new event draft that includes the full group object.\n      this.newEventDraft = {\n        group: group,\n        initialY: e.clientY,\n        startMinutes: startMinutes,\n        duration: 60, // minimum duration\n        IsPublic: true\n      };\n\n      // Attach document-level listeners for dragging the draft.\n      document.addEventListener(\"mousemove\", this.onNewEventMouseMove);\n      document.addEventListener(\"mouseup\", this.onNewEventMouseUp);\n    },\n\n    onNewEventMouseMove(e) {\n      if (!this.newEventDraft) return;\n      const deltaY = e.clientY - this.newEventDraft.initialY;\n      let duration = Math.max(15, Math.round(((deltaY / this.timeSlotHeight) * 60) / 15) * 15);\n      this.newEventDraft.duration = duration;\n    },\n\n    onNewEventMouseUp(e) {\n      if (!this.newEventDraft) return;\n\n      // Use the group reference saved in the draft\n      const group = this.newEventDraft.group;\n      if (group) {\n        let duration = this.newEventDraft.duration < 60 ? 60 : this.newEventDraft.duration;\n        \n        let programItem = {\n          Id: 0,\n          ReservationId: this.reservation.Id,\n          Date: group.date,\n          StartMinutes: this.newEventDraft.startMinutes,\n          Duration: duration,\n          Description: \"New Event\",\n          IsPublic: true,\n          DynamicTime: false,\n          DynamicItem: 'none',\n          DynamicValue: 0,\n          LinkedEntity: 'None',\n          LinkedItemId: 0,\n          AssignedSpace: 0\n        };\n\n        this.setShowEditProgramItem(programItem);\n\n        // Recalculate overlapping layout for all groups\n        this.arrangeGroupEvents();\n      }\n      // Clear the draft and remove listeners.\n      this.newEventDraft = null;\n      document.removeEventListener(\"mousemove\", this.onNewEventMouseMove);\n      document.removeEventListener(\"mouseup\", this.onNewEventMouseUp);\n\n      this.clearDragClasses();\n    },\n\n    // Compute the inline style for the new event preview block.\n    getNewEventDraftStyle(draft) {\n      const top = (draft.startMinutes / 60) * this.timeSlotHeight;\n      const height = (draft.duration / 60) * this.timeSlotHeight;\n      return {\n        position: \"absolute\",\n        top: `${top}px`,\n        height: `${height}px`,\n        left: \"0\",\n        width: \"100%\",\n        backgroundColor: \"rgba(0, 128, 255, 0.3)\",\n        border: \"1px dashed #0080ff\"\n      };\n    },\n\n    /* SHOW & HIDE EDIT MODAL */\n    setShowEditProgramItem(item) {\n      let programItem = {\n        Id: item.Id,\n        ReservationId: this.reservation.Id,\n        Date: item.Date,\n        StartMinutes: item.StartMinutes,\n        Duration: item.Duration,\n        Description: item.Description,\n        IsPublic: item.IsPublic,\n        DynamicTime: item.DynamicTime,\n        DynamicItem: item.DynamicItem,\n        DynamicValue: item.DynamicValue,\n        LinkedEntity: item.LinkedEntity,\n        LinkedItemId: item.LinkedItemId,\n        AssignedSpace: item.AssignedSpace\n      };\n      this.showEditProgramItem = true;\n      this.selectedProgramItem = cleanSource(programItem);\n    },\n\n    hideModal() {\n      this.showEditProgramItem = false;\n      this.selectedProgramItem = null;\n    },\n\n    /* RESERVATION PROGRAM API CALLS */\n    saveReservationProgramItem(data) {\n      if (this.isSaving) {\n        return;\n      }\n      \n      this.isSaving = true;\n      this.currentEvent = null;\n\n      reservationProvider.methods.upsertReservationProgramItem(this.reservation.Key, data)\n      .then(response => {\n        if (response.status === 200) {\n          this.setReservation(response.data);\n          this.timestamp = new Date().getTime();\n\n          EventBus.$emit('showToast', {\n            type: 'success',\n            message: this.$t('Components.Reservation.ProgramItem.toast_Saved')\n          });\n        }\n      })\n      .finally(() => {\n        this.isSaving = false;\n      });\n    },\n\n    deleteReservationProgramItem(data) {\n      if (this.isSaving) {\n        return;\n      }\n      \n      this.isSaving = true;\n      this.currentEvent = null;\n\n      reservationProvider.methods.deleteReservationProgramItem(this.reservation.Key, data.Id)\n      .then(response => {\n        this.setReservation(response.data);\n        this.timestamp = new Date().getTime();\n      })\n      .finally(() => {\n        this.isSaving = false;\n      });\n    },\n  },\n};\n</script>\n\n<style scoped>\n.schedule {\n  display: flex;\n  flex-direction: row;\n  width: 100%;\n  box-sizing: border-box;\n  overflow-y: auto; /* Allow vertical scrolling for the schedule */\n  background: repeating-linear-gradient(\n    to bottom,\n    transparent 0,\n    transparent 39px,\n    #ddd 39px,\n    #ddd 40px\n  );\n}\n\n/* Timeline styles (left column) */\n.timeline {\n  width: 100px;\n  border-right: 1px solid #ddd;\n  position: sticky; /* Makes the timeline \"stick\" */\n  top: 0; /* Sticks to the top of the scrolling container */\n  background-color: #f7f7f7; /* Ensure it has a visible background */\n  z-index: 2; /* Keep it above other elements */\n}\n\n.time-slot {\n  height: 40px;\n  border-bottom: 1px solid #ddd;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-size: 14px;\n}\n\n/* Events container with grid lines */\n.events {\n  flex: 1;\n  position: relative;\n  border-left: 1px solid #ddd;\n  height: 100%;\n  display: flex; /* Ensures groups are displayed as columns */\n  \n}\n\n/* Each group as a column */\n.group {\n  flex: 1;\n  position: relative;\n  display: flex;\n  flex-direction: column;\n  border-right: 1px solid #ddd;\n}\n\n/* Top-info styling: fixed position above group-events */\n.group-header {\n  font-size: 16px;\n  font-weight: bold;\n  text-align: center;\n  background-color: #f7f7f7;\n  border-bottom: 1px solid #ddd;\n  padding: 10px 0;\n  height: 40px; /* Fixed height for clarity */\n  box-sizing: border-box;\n}\n\n/* Group-events starts exactly where the timeline begins, without interference */\n.group-events {\n  position: relative;\n  overflow-x: hidden;\n  flex: 1; /* Events occupy the remaining space */\n}\n\n.event-container {\n  position: absolute;\n  background-color: #ff9900;\n  border: 1px solid #ddd;\n  border-radius: 4px;\n  padding: 5px;\n  box-sizing: border-box;\n  width: 90%;\n  left: 5%;\n}\n\n/* Event container - Public Event */\n.public-event {\n  background-color: #d4edda; /* Light green for public events */\n  border: 1px solid #28a745; /* Green border */\n}\n\n/* Event container - Private Event */\n.private-event {\n  background-color: #f8d7da; /* Light red for private events */\n  border: 1px solid #dc3545; /* Red border */\n}\n\n/* Edit Icon */\n.edit-btn {\n  position: absolute;\n  top: 2px;\n  right: 30px; /* Position it left of the delete button */\n  font-size: 16px;\n  color: #007bff;\n  cursor: pointer;\n  z-index: 3;\n}\n.edit-btn:hover {\n  color: #0056b3;\n}\n\n/* Delete button styling */\n.delete-btn {\n  position: absolute;\n  top: 2px;\n  right: 2px;\n  font-size: 16px;\n  color: red;\n  cursor: pointer;\n  z-index: 3;\n}\n\n/* Time display (non-clickable) */\n.time-display {\n  font-size: 12px;\n  color: #555;\n  margin-bottom: 4px;\n}\n\n/* Clickable event name */\n.clickable-name a {\n  color: #007bff;\n  text-decoration: none;\n  font-size: 14px;\n  cursor: pointer;\n}\n.clickable-name a:hover {\n  text-decoration: underline;\n}\n\n/* Top handle for changing start time */\n.drag-handle-top {\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 2px; /* Handle height */\n  background-color: #ccc;\n  cursor: ns-resize; /* Vertical resizing cursor */\n}\n\n/* Bottom handle for changing duration */\n.drag-handle-bottom {\n  position: absolute;\n  bottom: 0;\n  left: 0;\n  width: 100%;\n  height: 2px; /* Handle height */\n  background-color: #ccc;\n  cursor: ns-resize; /* Vertical resizing cursor */\n}\n\n/* Hover and active states for better user feedback */\n.event a:hover .drag-handle-top,\n.event a:hover .drag-handle-bottom {\n  background-color: #aaa;\n}\n.event a:active .drag-handle-top,\n.event a:active .drag-handle-bottom {\n  background-color: #888;\n}\n\n/* New event preview block */\n.new-event-draft {\n  position: absolute;\n  z-index: 2;\n}\n\n.group-events {\n  position: relative;\n  height: calc(100% - 40px);\n  transition: background-color 0.3s ease-in-out;\n}\n\n/* Highlight valid drop targets */\n.group-events.drag-over {\n  background-color: rgba(0, 128, 255, 0.1); /* Light blue */\n  border: 2px dashed #007bff;\n}\n\n/* Highlight invalid drop attempts */\n.group-events.invalid-drop {\n  background-color: rgba(255, 0, 0, 0.1); /* Light red */\n  border: 2px dashed #ff0000;\n  transition: background-color 0.3s ease, border-color 0.3s ease;\n}\n\n/* Ensure individual events are not affected */\n.event-container {\n  border: 1px solid #ddd; /* Default border for events */\n  position: absolute;\n  border-radius: 4px;\n  padding: 6px 6px 4px 6px;\n  box-sizing: border-box;\n  overflow: hidden;            /* clip overflowing content */\n  display: flex;\n  flex-direction: column;\n  justify-content: flex-start;\n\n}\n\n/* Small events: push icons to top and hide long text */\n.event-container.short-event .time-display,\n.event-container.short-event .clickable-name {\n  display: none;               /* hide full text for very short boxes */\n}\n\n.tooltip {\n  position: fixed; /* Fixed positioning to follow the cursor */\n  z-index: 10; /* Ensure the tooltip is above other elements */\n  background-color: #333; /* Dark background for contrast */\n  color: #fff; /* Light text for readability */\n  padding: 8px;\n  border-radius: 4px;\n  font-size: 14px;\n  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);\n  pointer-events: none; /* Prevent interference with mouse events */\n  white-space: nowrap; /* Prevent line breaks for long text */\n}\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationProgram.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationProgram.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationProgram.vue?vue&type=template&id=625e2c52&scoped=true\"\nimport script from \"./ReservationProgram.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationProgram.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReservationProgram.vue?vue&type=style&index=0&id=625e2c52&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"625e2c52\",\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n  if (isRegExp(it)) {\n    throw new $TypeError(\"The method doesn't accept regular expressions\");\n  } return it;\n};\n","import channelProvider from '@/providers/channel'\n\n/**\n * Resolve the channelId for the current page URL via the s2m_url mapping (exact match server-side).\n * The stored URL format isn't guaranteed, so we try the most likely forms (origin, host, hostname)\n * and return the first channel found. Falls back to the given id when none match — e.g. on\n * cyberdigma.nl, where ChannelId 0 lets the API use its own default RP id.\n */\nexport async function resolveCurrentChannelId(fallbackId = 0) {\n  if (typeof window === 'undefined' || !window.location) {\n    return fallbackId\n  }\n\n  const candidates = [window.location.origin, window.location.host, window.location.hostname]\n\n  for (const candidate of candidates) {\n    try {\n      const response = await channelProvider.methods.getChannelByUrl(candidate)\n      if (response && response.status === 200 && response.data && response.data.Id > 0) {\n        return response.data.Id\n      }\n    } catch (error) {\n      // Ignore and try the next candidate form.\n    }\n  }\n\n  return fallbackId\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[(_vm.showDeleteReservationEvent)?_c('modal-delete-event',{attrs:{\"showModal\":_vm.showDeleteReservationEvent,\"eventData\":_vm.eventData,\"onClickCancel\":_vm.hideModal},on:{\"getReservationEvent\":_vm.getReservationEvent}}):_vm._e(),_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationEvent.Main_Title')))]},proxy:true}],null,false,714046731)}),(_vm.isLoading)?_c('ui-loader'):_vm._e(),(!_vm.isLoading && !Object.keys(_vm.eventData).length)?_c('div',[_c('div',{staticClass:\"actionBar has-background-white-ter p-4 mb-6\"},[_c('div',{staticClass:\"level\"},[_c('div',{staticClass:\"level-left\"}),_c('div',{staticClass:\"level-right\"},[_c('a',{attrs:{\"id\":\"id_button_add\"},on:{\"click\":_vm.createEvent}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'plus']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationEvent.Button_CreateEvent')))])])])])]),_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationEvent.Message_NoEvent')}})],1):_vm._e(),(!_vm.isLoading && Object.keys(_vm.eventData).length)?_c('div',[_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationEvent.Message_Event')}}),(!_vm.eventData.Description)?_c('Message',{staticClass:\"is-danger\",attrs:{\"message\":_vm.$t('Components.Reservation.ReservationEvent.Message_NoDescription')}}):_vm._e(),(_vm.eventData.Name === '')?_c('Message',{staticClass:\"is-danger\",attrs:{\"message\":_vm.$t('Components.Reservation.ReservationEvent.Message_NoName')}}):_vm._e(),(_vm.eventData.Tags === '')?_c('Message',{staticClass:\"is-danger\",attrs:{\"message\":_vm.$t('Components.Reservation.ReservationEvent.Message_NoTags')}}):_vm._e(),(_vm.eventData.Image === '')?_c('Message',{staticClass:\"is-danger\",attrs:{\"message\":_vm.$t('Components.Reservation.ReservationEvent.Message_NoImage')}}):_vm._e(),(_vm.eventData.Organizers.length <= 0)?_c('Message',{staticClass:\"is-danger\",attrs:{\"message\":_vm.$t('Components.Reservation.ReservationEvent.Message_NoOrganizer')}}):_vm._e(),_c('section',[_c('div',{staticClass:\"has-text-right\"},[_c('a',{staticClass:\"button is-danger has-margin-right\",on:{\"click\":_vm.setShowDeleteReservationEvent}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationEvent.Label_DeleteEvent')))]),(!this.eventData.IsActive)?_c('a',{staticClass:\"button createButton\",class:{ 'is-loading': _vm.isFinalizing, 'is-disabled': !_vm.preventSave, 'is-primary glowing-pulse': _vm.preventSave },on:{\"click\":_vm.finalizeEvent}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationEvent.Label_CreateEvent')))]):_vm._e(),(this.eventData.IsActive)?_c('a',{staticClass:\"button is-warning createButton\",class:{ 'is-loading': _vm.isFinalizing },on:{\"click\":_vm.finalizeEvent}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationEvent.Label_UnpublishEvent')))]):_vm._e()])]),_c('div',{staticClass:\"columns is-multiline\"},[_c('event-name',{staticClass:\"column is-half\"}),_c('event-image',{staticClass:\"column is-full\",attrs:{\"name\":_vm.eventData.Name}}),_c('div',{staticClass:\"column is-full\"},[_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column is-two-thirds\"},[_c('div',{staticClass:\"columns is-multiline\"},[_c('event-description',{staticClass:\"column is-full\"}),(_vm.eventData.Dates.length > 1)?_c('div',[_c('ul',{staticClass:\"tabs\"},[_c('li',{class:{ 'is-active': !_vm.selectedDate }},[_c('a',{on:{\"click\":function($event){return _vm.setSelectedDate(null)}}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_AllDates')))])]),_vm._l((_vm.eventData.Dates),function(date,index){return _c('li',{key:'tabDate-' + index,class:{ 'is-active': _vm.isSelectedDate(date) }},[_c('a',{on:{\"click\":function($event){return _vm.setSelectedDate(date)}}},[_vm._v(_vm._s(_vm._f(\"dateFormat\")(_vm._f(\"parseIsoDateStringToDate\")(date.Date),_vm.$i18n.locale)))])])})],2)]):_vm._e(),_vm._l((_vm.filteredDates),function(date,index){return _c('div',{key:'date-' + index},[_c('EventDate',{staticClass:\"column is-full\",attrs:{\"eventDate\":date}})],1)})],2)]),_c('div',{staticClass:\"column is-one-third\"},[_c('div',{staticClass:\"columns is-multiline\"},[_c('event-url',{staticClass:\"column is-full\"}),_c('event-organizer',{staticClass:\"column is-full\"}),_c('div',{staticClass:\"column is-full column-locationAddress\"},[_c('event-location')],1),_c('event-tags',{staticClass:\"column is-full\"})],1)])])])],1),_c('section',[_c('div',{staticClass:\"has-text-right\"},[_c('a',{staticClass:\"button is-danger has-margin-right\",on:{\"click\":_vm.setShowDeleteReservationEvent}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationEvent.Label_DeleteEvent')))]),(!this.eventData.IsActive)?_c('a',{staticClass:\"button createButton\",class:{ 'is-loading': _vm.isFinalizing, 'is-disabled': !_vm.preventSave, 'is-primary glowing-pulse': _vm.preventSave },on:{\"click\":_vm.finalizeEvent}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationEvent.Label_CreateEvent')))]):_vm._e(),(this.eventData.IsActive)?_c('a',{staticClass:\"button is-warning createButton\",class:{ 'is-loading': _vm.isFinalizing },on:{\"click\":_vm.finalizeEvent}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationEvent.Label_UnpublishEvent')))]):_vm._e()])])],1):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <modal-delete-event\n      v-if=\"showDeleteReservationEvent\"\n      :showModal=\"showDeleteReservationEvent\"\n      :eventData=\"eventData\"\n      :onClickCancel=\"hideModal\"\n      @getReservationEvent=\"getReservationEvent\"\n    />\n\n    <ui-section-header>\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationEvent.Main_Title')\n      }}</template>\n    </ui-section-header>\n\n    <ui-loader v-if=\"isLoading\" />\n\n    <div v-if=\"!isLoading && !Object.keys(eventData).length\">\n      <div class=\"actionBar has-background-white-ter p-4 mb-6\">\n        <div class=\"level\">\n          <div class=\"level-left\"></div>\n          <div class=\"level-right\">\n            <a\n              id=\"id_button_add\"\n              @click=\"createEvent\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'plus']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationEvent.Button_CreateEvent') }}</span>\n            </a>\n          </div>\n        </div>\n      </div>\n      <Message :message=\"$t('Components.Reservation.ReservationEvent.Message_NoEvent')\" />\n    </div>\n\n    <div v-if=\"!isLoading && Object.keys(eventData).length\">\n      <Message :message=\"$t('Components.Reservation.ReservationEvent.Message_Event')\" />\n\n      <Message\n        v-if=\"!eventData.Description\"\n        :message=\"$t('Components.Reservation.ReservationEvent.Message_NoDescription')\"\n        class=\"is-danger\"\n      />\n\n      <Message\n        v-if=\"eventData.Name === ''\"\n        :message=\"$t('Components.Reservation.ReservationEvent.Message_NoName')\"\n        class=\"is-danger\"\n      />\n\n      <Message\n        v-if=\"eventData.Tags === ''\"\n        :message=\"$t('Components.Reservation.ReservationEvent.Message_NoTags')\"\n        class=\"is-danger\"\n      />\n\n      <Message\n        v-if=\"eventData.Image === ''\"\n        :message=\"$t('Components.Reservation.ReservationEvent.Message_NoImage')\"\n        class=\"is-danger\"\n      />\n\n      <Message\n        v-if=\"eventData.Organizers.length <= 0\"\n        :message=\"$t('Components.Reservation.ReservationEvent.Message_NoOrganizer')\"\n        class=\"is-danger\"\n      />\n\n      <section>\n        <div class=\"has-text-right\">\n          <a\n            @click=\"setShowDeleteReservationEvent\"\n            class=\"button is-danger has-margin-right\"\n          >{{\n            $t('Components.Reservation.ReservationEvent.Label_DeleteEvent') }}</a>\n\n          <a\n            v-if=\"!this.eventData.IsActive\"\n            @click=\"finalizeEvent\"\n            class=\"button createButton\"\n            :class=\"{ 'is-loading': isFinalizing, 'is-disabled': !preventSave, 'is-primary glowing-pulse': preventSave }\"\n          >{{\n              $t('Components.Reservation.ReservationEvent.Label_CreateEvent') }}</a>\n          <a\n            v-if=\"this.eventData.IsActive\"\n            @click=\"finalizeEvent\"\n            class=\"button is-warning createButton\"\n            :class=\"{ 'is-loading': isFinalizing }\"\n          >{{\n              $t('Components.Reservation.ReservationEvent.Label_UnpublishEvent')\n            }}</a>\n        </div>\n      </section>\n\n      <div class=\"columns is-multiline\">\n        <!-- Component name -->\n        <event-name class=\"column is-half\" />\n\n        <!-- Component image  -->\n        <event-image\n          :name=\"eventData.Name\"\n          class=\"column is-full\"\n        />\n        <div class=\"column is-full\">\n          <div class=\"columns\">\n            <div class=\"column is-two-thirds\">\n              <div class=\"columns is-multiline\">\n                <!-- Component description -->\n                <event-description class=\"column is-full\" />\n\n                <div v-if=\"eventData.Dates.length > 1\">\n                  <ul class=\"tabs\">\n                    <li :class=\"{ 'is-active': !selectedDate }\">\n                      <a @click=\"setSelectedDate(null)\">{{ $t('Components.Reservation.ReservationDates.label_AllDates')\n                      }}</a>\n                    </li>\n                    <li\n                      v-for=\"(date, index) in eventData.Dates\"\n                      :key=\"'tabDate-' + index\"\n                      :class=\"{ 'is-active': isSelectedDate(date) }\"\n                    ><a @click=\"setSelectedDate(date)\">{{ date.Date |\n                        parseIsoDateStringToDate | dateFormat($i18n.locale) }}</a></li>\n                  </ul>\n                </div>\n\n                <div\n                  v-for=\"(date, index) in filteredDates\"\n                  :key=\"'date-' + index\"\n                >\n                  <!-- Component event program -->\n                  <EventDate\n                    class=\"column is-full\"\n                    :eventDate=\"date\"\n                  />\n                </div>\n              </div>\n            </div>\n\n            <div class=\"column is-one-third\">\n              <div class=\"columns is-multiline\">\n                <!-- Component url -->\n                <event-url class=\"column is-full\" />\n\n                <!-- Component organizer -->\n                <event-organizer class=\"column is-full\" />\n\n                <!-- Location address -->\n                <div class=\"column is-full column-locationAddress\">\n                  <event-location />\n                </div>\n\n                <!-- Component tags -->\n                <event-tags class=\"column is-full\" />\n              </div>\n            </div>\n          </div>\n        </div>\n      </div>\n\n      <section>\n        <div class=\"has-text-right\">\n          <a\n            @click=\"setShowDeleteReservationEvent\"\n            class=\"button is-danger has-margin-right\"\n          >{{\n            $t('Components.Reservation.ReservationEvent.Label_DeleteEvent') }}</a>\n\n          <a\n            v-if=\"!this.eventData.IsActive\"\n            @click=\"finalizeEvent\"\n            class=\"button createButton\"\n            :class=\"{ 'is-loading': isFinalizing, 'is-disabled': !preventSave, 'is-primary glowing-pulse': preventSave }\"\n          >{{\n              $t('Components.Reservation.ReservationEvent.Label_CreateEvent') }}</a>\n          <a\n            v-if=\"this.eventData.IsActive\"\n            @click=\"finalizeEvent\"\n            class=\"button is-warning createButton\"\n            :class=\"{ 'is-loading': isFinalizing }\"\n          >{{\n              $t('Components.Reservation.ReservationEvent.Label_UnpublishEvent')\n            }}</a>\n        </div>\n      </section>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport eventProvider from '@/providers/event'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  components: {\n    ModalDeleteEvent: () => import(/* webpackChunkName: \"event-list\" */ '@/components/Events/ModalDeleteEvent'),\n    EventName: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/Events/EventName'),\n    EventImage: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/Events/EventImage'),\n    EventDescription: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/Events/EventDescription'),\n    EventLocation: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/Events/EventLocation'),\n    EventDate: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/Events/EventDate'),\n    EventUrl: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/Events/EventUrl'),\n    EventOrganizer: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/Events/EventOrganizer'),\n    EventTags: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/Events/EventTags'),\n    Message: () => import(/* webpackChunkName: \"event-detail\" */ '@/components/UI/Message')\n  },\n\n  data() {\n    return {\n      isLoading: true,\n      showDeleteReservationEvent: false,\n      isFinalizing: false,\n      selectedDate: {}\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n    ...mapState('eventStore', ['eventData']),\n\n    filteredDates() {\n      let dates = [];\n\n      if (this.eventData) {\n        dates = this.eventData.Dates\n      }\n\n      if (this.selectedDate) {\n        dates = dates.filter(date => date.Date === this.selectedDate.Date);\n      }\n\n      return dates;\n    },\n\n    preventSave() {\n      let result = false\n\n      if (this.eventData.Name !== \"\") {\n        if (this.eventData.Description !== \"\") {\n          if (this.eventData.Image !== \"\") {\n            if (this.eventData.Tags !== \"\") {\n              if (this.eventData.Organizers.length > 0) {\n                result = true\n              }\n            }\n          }\n        }\n      }\n      return result\n    }\n  },\n\n  created() {\n    this.getReservationEvent()\n  },\n\n  beforeDestroy() {\n    this.setEventData({})\n  },\n\n  methods: {\n    ...mapMutations('eventStore', ['setEventData']),\n\n    getReservationEvent() {\n      this.isLoading = true;\n\n      eventProvider.methods\n        .getReservationEvent(this.reservation.Id)\n        .then((response) => {\n          if (response.status === 200) {\n            this.setEventData(response.data);\n\n            this.selectedDate = this.eventData.Dates[0];\n          }\n        })\n        .finally(() => {\n          this.isLoading = false;\n        })\n    },\n\n    isSelectedDate(date) {\n      let isDate = false;\n\n      if (this.selectedDate) {\n        isDate = this.selectedDate.Date === date.Date\n      }\n\n      return isDate\n    },\n\n    setSelectedDate(eventDate) {\n      this.selectedDate = eventDate\n    },\n\n    finalizeEvent() {\n      if (!this.isFinalizing) {\n\n        //Turn this event into a live event.\n        this.eventData.IsActive = Number(!this.eventData.IsActive);\n\n        //Turn reservation event into public event (toggle for later use)\n        this.eventData.IsPublic = Number(!this.eventData.IsPublic);\n\n        this.isFinalizing = true\n        eventProvider.methods\n          .updateEvent(this.eventData)\n          .then((response) => {\n            if (response.status === 200) {\n              this.isSavingSuccess = true;\n              this.setEventData(response.data);\n            }\n          })\n          .catch((e) => {\n            let t = setTimeout(() => {\n              clearTimeout(t)\n            }, 1000)\n          })\n          .finally(() => {\n            self.isFinalizing = false\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.publicationMessage()\n            })\n\n          })\n      }\n    },\n\n    publicationMessage() {\n      let result = ''\n      if (this.eventData.IsActive === 0) {\n        result = this.$t('Components.Reservation.ReservationEvent.Toast_Unpublished')\n      } else {\n        result = this.$t('Components.Reservation.ReservationEvent.Toast_Published')\n      }\n\n      return result\n    },\n\n    createEvent() {\n      reservationProvider.methods.reservationToEvent(this.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            this.setEventData(response.data)\n            this.getReservationEvent()\n          }\n        })\n        .catch((e) => {\n          //console.error(e)\n        })\n    },\n\n    setShowDeleteReservationEvent() {\n      this.showDeleteReservationEvent = true\n    },\n    hideModal() {\n      this.showDeleteReservationEvent = false\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationEvent.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationEvent.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationEvent.vue?vue&type=template&id=124e7618\"\nimport script from \"./ReservationEvent.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationEvent.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"showDrawer\":_vm.showSideDrawer,\"drawerTitle\":_vm.drawerTitle,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showSpaceSummary)?_c('SpaceSummary',{attrs:{\"spaceId\":_vm.selectedSpace.SpaceId,\"meetingtypeId\":_vm.reservation.MeetingtypeId}}):_vm._e()]},proxy:true}],null,false,1864019698)}):_vm._e(),(_vm.showEditSpace)?_c('ModalEditSpace',{attrs:{\"showModal\":_vm.showEditSpace,\"onClickCancel\":_vm.hideModal,\"channelId\":_vm.reservation.ChannelId,\"isEmployee\":_vm.isEmployee,\"locationId\":_vm.reservation.LocationId,\"meetingtypeId\":_vm.reservation.MeetingtypeId,\"space\":_vm.selectedSpace,\"index\":_vm.selectedSpace.Index}}):_vm._e(),_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationWorkspaces.Subtitle_Workspace')))]},proxy:true}])}),_c('transition',{attrs:{\"name\":\"zoom-fade\",\"mode\":\"out-in\"}},[_c('table',{staticClass:\"table is-fullwidth is-striped is-narrow\",class:{'is-hoverable': !_vm.previewOnly}},[_c('thead',[_c('tr',[_c('th',{attrs:{\"width\":\"100\"},domProps:{\"textContent\":_vm._s(\n              _vm.$t('Components.Reservation.ReservationWorkspaces.Table_Seats')\n            )}}),_c('th',{domProps:{\"textContent\":_vm._s(\n              _vm.$t('Components.Reservation.ReservationWorkspaces.Table_Name')\n            )}}),_c('th',{attrs:{\"width\":\"100\"},domProps:{\"textContent\":_vm._s(\n              _vm.$t('Components.Reservation.ReservationWorkspaces.Table_Time')\n            )}}),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\"},domProps:{\"textContent\":_vm._s(\n              _vm.$t('Components.Reservation.ReservationWorkspaces.Table_Price')\n            )}}),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"75\"},domProps:{\"textContent\":_vm._s(\n              _vm.$t('Components.Reservation.ReservationWorkspaces.Table_Tax')\n            )}}),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\"},domProps:{\"textContent\":_vm._s(\n              _vm.$t('Components.Reservation.ReservationWorkspaces.Table_Total')\n            )}}),(!_vm.previewOnly)?_c('th',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[_vm._v(\" \")]):_vm._e()])]),_c('tbody',_vm._l((_vm.resSpaces),function(workspace,index){return _c('tr',{key:index},[_c('td',[_vm._v(_vm._s(workspace.Seats)+\"x\")]),_c('td',[_c('span',[_vm._v(_vm._s(workspace.SpaceName))]),_c('a',{on:{\"click\":function($event){return _vm.setShowSpaceSummary(workspace)}}},[_c('span',{staticClass:\"icon is-hidden-print\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1)])]),_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(workspace.StartMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(workspace.EndMinutes))+\" \")]),_c('td',{staticClass:\"has-text-right\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(workspace.PricePerSeat, _vm.locationState.Settings.LanguageCulture, _vm.reservation.CurrencyIso )))])]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(_vm._s(workspace.TaxPercentage)+\"%\")]),_c('td',{staticClass:\"has-text-right\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(workspace.PriceTotal, _vm.locationState.Settings.LanguageCulture, _vm.reservation.CurrencyIso )))])]),(!_vm.isLocked)?_c('td',[_c('div',{staticClass:\"field is-grouped is-grouped-right\"},[_c('p',{staticClass:\"control\"},[(!_vm.isDraft)?_c('a',{on:{\"click\":function($event){return _vm.setShowEditSpace(workspace, index)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)]):_vm._e()])])]):_vm._e()])}),0),_c('tfoot',[_c('tr',[_c('td',{attrs:{\"colspan\":\"4\"}}),_c('td',{domProps:{\"textContent\":_vm._s(\n              _vm.$t(\n                'Components.Reservation.ReservationWorkspaces.Table_Subtotal'\n              )\n            )}}),_c('td',{staticClass:\"has-text-right\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.total, _vm.locationState.Settings.LanguageCulture, _vm.reservation.CurrencyIso )))])]),(!_vm.previewOnly)?_c('td',[_vm._v(\" \")]):_vm._e()])])])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :showDrawer=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n    >\n      <template v-slot:content>\n        <SpaceSummary\n          v-if=\"showSpaceSummary\"\n          :spaceId=\"selectedSpace.SpaceId\"\n          :meetingtypeId=\"reservation.MeetingtypeId\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <ModalEditSpace\n      v-if=\"showEditSpace\"\n      :showModal=\"showEditSpace\"\n      :onClickCancel=\"hideModal\"\n      :channelId=\"reservation.ChannelId\"\n      :isEmployee=\"isEmployee\"\n      :locationId=\"reservation.LocationId\"\n      :meetingtypeId=\"reservation.MeetingtypeId\"\n      :space=\"selectedSpace\"\n      :index=\"selectedSpace.Index\"\n    />\n\n    <ui-section-header>\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationWorkspaces.Subtitle_Workspace')\n      }}</template>\n    </ui-section-header>\n\n    <transition\n      name=\"zoom-fade\"\n      mode=\"out-in\"\n    >\n      <table\n        class=\"table is-fullwidth is-striped is-narrow\"\n        :class=\"{'is-hoverable': !previewOnly}\"\n      >\n        <thead>\n          <tr>\n            <th\n              width=\"100\"\n              v-text=\"\n                $t('Components.Reservation.ReservationWorkspaces.Table_Seats')\n              \"\n            ></th>\n            <th v-text=\"\n                $t('Components.Reservation.ReservationWorkspaces.Table_Name')\n              \"></th>\n            <th\n              width=\"100\"\n              v-text=\"\n                $t('Components.Reservation.ReservationWorkspaces.Table_Time')\n              \"\n            ></th>\n            <th\n              width=\"100\"\n              class=\"has-text-right\"\n              v-text=\"\n                $t('Components.Reservation.ReservationWorkspaces.Table_Price')\n              \"\n            ></th>\n            <th\n              width=\"75\"\n              class=\"has-text-right\"\n              v-text=\"\n                $t('Components.Reservation.ReservationWorkspaces.Table_Tax')\n              \"\n            ></th>\n            <th\n              width=\"100\"\n              class=\"has-text-right\"\n              v-text=\"\n                $t('Components.Reservation.ReservationWorkspaces.Table_Total')\n              \"\n            ></th>\n            <th\n              v-if=\"!previewOnly\"\n              width=\"85\"\n              class=\"is-hidden-print\"\n            >&nbsp;</th>\n          </tr>\n        </thead>\n        <tbody>\n          <tr\n            v-for=\"(workspace, index) in resSpaces\"\n            :key=\"index\"\n          >\n            <td>{{ workspace.Seats }}x</td>\n            <td>\n              <span>{{ workspace.SpaceName }}</span>\n              <a @click=\"setShowSpaceSummary(workspace)\">\n                <span class=\"icon is-hidden-print\">\n                  <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                </span>\n              </a>\n            </td>\n            <td>\n              {{ workspace.StartMinutes | minutesToTime }} -\n              {{ workspace.EndMinutes | minutesToTime }}\n            </td>\n            <td class=\"has-text-right\">\n              <span>{{\n                workspace.PricePerSeat\n                  | toCurrency(\n                    locationState.Settings.LanguageCulture,\n                    reservation.CurrencyIso\n                  )\n              }}</span>\n            </td>\n            <td class=\"has-text-right\">{{ workspace.TaxPercentage }}%</td>\n            <td class=\"has-text-right\">\n              <span>{{\n                workspace.PriceTotal\n                  | toCurrency(\n                    locationState.Settings.LanguageCulture,\n                    reservation.CurrencyIso\n                  )\n              }}</span>\n            </td>\n            <td v-if=\"!isLocked\">\n              <div class=\"field is-grouped  is-grouped-right\">\n                <p class=\"control\">\n                  <a v-if=\"!isDraft\" @click=\"setShowEditSpace(workspace, index)\">\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                    </span>\n                  </a>\n                </p>\n              </div>\n            </td>\n          </tr>\n        </tbody>\n        <tfoot>\n          <tr>\n            <td colspan=\"4\"></td>\n            <td v-text=\"\n                $t(\n                  'Components.Reservation.ReservationWorkspaces.Table_Subtotal'\n                )\n              \"></td>\n            <td class=\"has-text-right\">\n              <span>{{\n                total\n                  | toCurrency(\n                    locationState.Settings.LanguageCulture,\n                    reservation.CurrencyIso\n                  )\n              }}</span>\n            </td>\n            <td v-if=\"!previewOnly\">&nbsp;</td>\n          </tr>\n        </tfoot>\n      </table>\n    </transition>\n  </div>\n</template>\n\n<script>\nimport { mapGetters, mapState } from 'vuex'\n\nconst ModalEditSpace = () => import('@/components/Reservations/ModalEditSpace')\nconst SpaceSummary = () => import('@/components/Spaces/SpaceSummary')\n\nexport default {\n  components: {\n    ModalEditSpace,\n    SpaceSummary,\n  },\n\n  props: {\n    previewOnly: {\n      default: false,\n      type: Boolean,\n    },\n\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: false,\n      type: Boolean,\n    },\n\n    reservation: {\n      type: Object,\n      deafault: null\n    },\n\n    reservationDate: {\n      type: Object,\n      default: null,\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      selectedSpace: null,\n      showSideDrawer: false,\n      showEditSpace: false,\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapGetters('reservationStore', ['isDraft']),\n\n    resDates() {\n      return this.reservation ? this.reservation.Dates : []\n    },\n\n    resMultiDate() {\n      return this.resDates.length > 1\n    },\n\n    resSpaces() {\n      return this.reservationDate.Spaces\n    },\n\n    total() {\n      let total = 0.0\n\n      if (this.reservation && this.resSpaces.length > 0) {\n        let nonPackageSpaces = this.resSpaces.filter(s => !s.InPackage)\n        for (let i = 0; i <= nonPackageSpaces.length; i++) {\n          let workspace = nonPackageSpaces[i]\n\n          if (workspace) {\n            total = total + workspace.PriceTotal\n          }\n        }\n      }\n\n      return total\n    },\n  },\n\n  created() { },\n\n  methods: {\n    minutesToTime(minutes) {\n      let hour = Number(Math.floor(minutes / 60))\n      let minute = Number(minutes - hour * 60)\n\n      return (\n        (hour < 10 ? '0' : '') + hour + ':' + (minute < 10 ? '0' : '') + minute\n      )\n    },\n\n    setShowSpaceSummary(space) {\n      this.drawerTitle = 'Space details'\n      this.showSideDrawer = true\n      this.showSpaceSummary = true\n\n      this.selectedSpace = JSON.parse(JSON.stringify(space))\n    },\n\n    hideDrawer() {\n      this.drawerTitle = ''\n      this.selectedSpace = null\n      this.showSpaceSummary = false\n      this.showSideDrawer = false\n    },\n\n    setShowEditSpace(space, index) {\n      this.selectedSpace = JSON.parse(JSON.stringify(space))\n      this.selectedSpace.Index = index\n\n      this.showEditSpace = true\n      // this.$emit('showEditSpace', JSON.parse(JSON.stringify(workspace)))\n    },\n\n    hideModal() {\n      this.showAddSpace = false\n      this.showEditSpace = false\n      this.showDeleteSpace = false\n\n      this.selectedSpace = null\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationWorkspaces.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationWorkspaces.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationWorkspaces.vue?vue&type=template&id=89f12e84\"\nimport script from \"./ReservationWorkspaces.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationWorkspaces.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\n// TODO: Remove this module from `core-js@4` since it's replaced to module below\nrequire('../modules/es.set.constructor');\n","import axios from \"axios\";\nimport store from '../store'\n\nexport default {\n  methods: {\n    async getLocationHosts(locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/host/location/${locationId}`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async setHostActive(hostId) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/host/${hostId}/setactive`,\n        {},\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async createHost(host) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/host`,\n        JSON.stringify(host),\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async updateHost(host) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/host`,\n        JSON.stringify(host),\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async deleteHost(hostId) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/host/${hostId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    }\n  }\n}","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.mInvoice)?_c('div',{staticClass:\"is-size-7 is-size-6-desktop\"},[_c('div',{staticClass:\"title is-4\",domProps:{\"textContent\":_vm._s(_vm.invoiceTitle)}}),_c('div',{staticClass:\"tabs is-boxed is-small\"},[_c('ul',{staticClass:\"has-margin-top\"},[_c('li',{class:{ 'is-active': _vm.showSummary }},[_c('a',{on:{\"click\":_vm.setShowSummary}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationSummary.List_Summary')))])]),_c('li',{class:{ 'is-active': _vm.showMailLog }},[_c('a',{on:{\"click\":_vm.setShowMailLog}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationSummary.List_MailLog'))+\" (\"+_vm._s(_vm.mInvoice.EmailsSent)+\")\")])])])]),_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.showSummary)?_c('div',[(_vm.mInvoice)?_c('InvoiceDetail',{staticClass:\"mb-6\",attrs:{\"invoiceId\":_vm.invoiceId,\"invoice\":_vm.mInvoice,\"showInvoiceTitle\":false}}):_vm._e(),_c('div',{staticClass:\"mb-6 has-text-centered\"},[_c('a',{staticClass:\"button is-primary is-medium\",on:{\"click\":function($event){return _vm.goToInvoice()}}},[_vm._v(_vm._s(_vm.$t('Components.Invoices.InvoiceSummary.Label_OpenInvoice')))])])],1):_vm._e()]),(_vm.showMailLog)?_c('div',[_c('InvoiceMail',{attrs:{\"invoiceId\":_vm.invoiceId}})],1):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    v-if=\"mInvoice\"\n    class=\"is-size-7 is-size-6-desktop\"\n  >\n    <div\n      v-text=\"invoiceTitle\"\n      class=\"title is-4\"\n    ></div>\n    <div class=\"tabs is-boxed is-small\">\n      <ul class=\"has-margin-top\">\n        <li :class=\"{ 'is-active': showSummary }\">\n          <a @click=\"setShowSummary\">{{\n            $t('Components.Reservation.ReservationSummary.List_Summary')\n          }}</a>\n        </li>\n\n        <li :class=\"{ 'is-active': showMailLog }\">\n          <a @click=\"setShowMailLog\">{{  $t('Components.Reservation.ReservationSummary.List_MailLog') }} ({{ mInvoice.EmailsSent }})</a>\n        </li>\n      </ul>\n    </div>\n\n    <transition\n      name=\"fade\"\n      mode=\"out-in\"\n    >\n      <div v-if=\"showSummary\">\n        <InvoiceDetail\n          v-if=\"mInvoice\"\n          :invoiceId=\"invoiceId\"\n          :invoice=\"mInvoice\"\n          :showInvoiceTitle=\"false\"\n          class=\"mb-6\"\n        />\n\n        <div class=\"mb-6 has-text-centered\">\n          <a\n            @click=\"goToInvoice()\"\n            class=\"button is-primary is-medium\"\n          >{{\n            $t('Components.Invoices.InvoiceSummary.Label_OpenInvoice')\n          }}</a>\n        </div>\n      </div>\n    </transition>\n\n    <div v-if=\"showMailLog\">\n      <InvoiceMail :invoiceId=\"invoiceId\" />\n    </div>\n  </div>\n</template>\n\n<script>\nimport invoiceProvider from '@/providers/invoice'\nimport { mapMutations } from 'vuex'\nimport EventBus from '@/eventbus/event-bus';\n\nconst InvoiceDetail = () => import('@/components/Invoices/InvoiceDetail')\nconst InvoiceMail = () => import('@/components/Invoices/InvoiceMail')\n\nexport default {\n  components: {\n    InvoiceDetail,\n    InvoiceMail,\n  },\n\n  props: {\n    invoiceId: {\n      default: 0,\n      type: Number,\n    },\n\n    invoice: {\n      default: null,\n      type: Object,\n    },\n  },\n\n  data() {\n    return {\n      mInvoice: this.invoice,\n      showMailLog: false,\n      showSummary: true,\n    }\n  },\n\n  computed: {\n    invoiceTitle() {\n      let temp = ''\n      if (this.mInvoice) {\n        temp =\n          this.mInvoice.StatusId !== 1\n            ? this.$t(\n              `Views.Invoices.General.StatusLabels.id_${this.mInvoice.StatusId}`\n            ) + ' '\n            : ''\n\n        if (\n          (this.mInvoice.StatusId === 0 || this.mInvoice.StatusId === 1) &&\n          this.mInvoice.IsDeposit\n        ) {\n          temp += temp\n            ? this.$t(\n              `Views.Invoices.General.Label_InvoiceTypeDeposit`\n            ).toLowerCase()\n            : this.$t(`Views.Invoices.General.Label_InvoiceTypeDeposit`)\n        } else {\n          temp += temp\n            ? ` ${this.$t(\n              `Views.Invoices.General.Label_Invoice`\n            ).toLowerCase()}`\n            : this.$t(`Views.Invoices.General.Label_Invoice`)\n        }\n\n        if (this.mInvoice.StatusId > 0) {\n          temp += ': ' + this.mInvoice.Code\n        }\n      }\n      return temp\n    },\n  },\n\n  created() {\n    let self = this\n\n    if (self.invoiceId > 0) {\n      self.getInvoiceData();\n    }\n\n    EventBus.$on('invoiceMailSend', this.updateMailCount);\n    EventBus.$on('invoiceAccepted', this.callbackUpdatedInvoice)\n    EventBus.$on('invoiceRejected', this.callbackUpdatedInvoice)\n  },\n\n  beforeDestroy() {\n    this.setInvoice(null);\n    EventBus.$off('invoiceMailSend', this.updateMailCount);\n    EventBus.$off('invoiceAccepted', this.callbackUpdatedInvoice)\n    EventBus.$off('invoiceRejected', this.callbackUpdatedInvoice)\n  },\n\n  methods: {\n    ...mapMutations('invoiceStore', ['setInvoice']),\n\n    callbackUpdatedInvoice(invoice) {\n      this.mInvoice = invoice\n    },\n\n    updateMailCount() {\n      let mailCount = Number(this.mInvoice.EmailsSent);\n      this.mInvoice.EmailsSent = mailCount + 1;\n    },\n\n    getInvoiceData() {\n      invoiceProvider.methods\n        .getInvoiceById(this.invoiceId)\n        .then((response) => {\n          if (response.status === 200) {\n            this.mInvoice = response.data\n          }\n        })\n    },\n\n    goToInvoice() {\n      this.$router.push({\n        name: `invoices-list-detail`,\n        params: { invoiceId: this.mInvoice.Id },\n      })\n    },\n\n    setShowSummary() {\n      this.setVisibleItem('summary')\n    },\n\n    setShowMailLog() {\n      this.setVisibleItem('maillog')\n    },\n\n    setVisibleItem(item) {\n      this.showMailLog = item === 'maillog'\n      this.showSummary = item === 'summary'\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InvoiceSummary.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InvoiceSummary.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./InvoiceSummary.vue?vue&type=template&id=6d428380\"\nimport script from \"./InvoiceSummary.vue?vue&type=script&lang=js\"\nexport * from \"./InvoiceSummary.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sa\"},[_c('div',{staticClass:\"sa-success\",style:({ 'width' : _vm.width, 'height' : _vm.height })},[_c('div',{staticClass:\"sa-success-tip\"}),_c('div',{staticClass:\"sa-success-long\"}),_c('div',{staticClass:\"sa-success-placeholder\"}),_c('div',{staticClass:\"sa-success-fix\"})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"sa\">\n    <div\n      class=\"sa-success\"\n      :style=\"{ 'width' : width, 'height' : height }\"\n    >\n      <div class=\"sa-success-tip\"></div>\n      <div class=\"sa-success-long\"></div>\n      <div class=\"sa-success-placeholder\"></div>\n      <div class=\"sa-success-fix\"></div>\n    </div>\n  </div>\n</template>\n\n<script>\nexport default {\n  props: {\n    width: {\n      type: Number,\n      default: 140\n    },\n\n    height: {\n      type: Number,\n      default: 140\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sa {\n  display: flex;\n  justify-content: center;\n  &-success {\n    border-radius: 50%;\n    border: 4px solid #a5dc86;\n    box-sizing: content-box;\n    height: 80px;\n    padding: 0;\n    position: relative;\n    background-color: #fff;\n    width: 80px;\n    &:after,\n    &:before {\n      background: #fff;\n      content: \"\";\n      height: 120px;\n      position: absolute;\n      transform: rotate(45deg);\n      width: 60px;\n    }\n    &:before {\n      border-radius: 40px 0 0 40px;\n      width: 26px;\n      height: 80px;\n      top: -17px;\n      left: 5px;\n      transform-origin: 60px 60px;\n      transform: rotate(-45deg);\n    }\n    &:after {\n      border-radius: 0 120px 120px 0;\n      left: 30px;\n      top: -11px;\n      transform-origin: 0 60px;\n      transform: rotate(-45deg);\n      animation: rotatePlaceholder 4.25s ease-in;\n    }\n    &-placeholder {\n      border-radius: 50%;\n      border: 4px solid rgba(165, 220, 134, 0.25);\n      box-sizing: content-box;\n      height: 80px;\n      left: -4px;\n      position: absolute;\n      top: -4px;\n      width: 80px;\n      z-index: 2;\n    }\n    &-fix {\n      background-color: #fff;\n      height: 90px;\n      left: 28px;\n      position: absolute;\n      top: 8px;\n      transform: rotate(-45deg);\n      width: 5px;\n      z-index: 1;\n    }\n    &-tip,\n    &-long {\n      background-color: #a5dc86;\n      border-radius: 2px;\n      height: 5px;\n      position: absolute;\n      z-index: 2;\n    }\n    &-tip {\n      left: 14px;\n      top: 46px;\n      transform: rotate(45deg);\n      width: 25px;\n      animation: animateSuccessTip 0.75s;\n    }\n    &-long {\n      right: 8px;\n      top: 38px;\n      transform: rotate(-45deg);\n      width: 47px;\n      animation: animateSuccessLong 0.75s;\n    }\n  }\n}\n@keyframes animateSuccessTip {\n  0%,\n  54% {\n    width: 0;\n    left: 1px;\n    top: 19px;\n  }\n  70% {\n    width: 50px;\n    left: -8px;\n    top: 37px;\n  }\n  84% {\n    width: 17px;\n    left: 21px;\n    top: 48px;\n  }\n  100% {\n    width: 25px;\n    left: 14px;\n    top: 45px;\n  }\n}\n@keyframes animateSuccessLong {\n  0%,\n  65% {\n    width: 0;\n    right: 46px;\n    top: 54px;\n  }\n  84% {\n    width: 55px;\n    right: 0;\n    top: 35px;\n  }\n  100% {\n    width: 47px;\n    right: 8px;\n    top: 38px;\n  }\n}\n@keyframes rotatePlaceholder {\n  0%,\n  5% {\n    transform: rotate(-45deg);\n  }\n  100%,\n  12% {\n    transform: rotate(-405deg);\n  }\n}\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SuccessAnimation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SuccessAnimation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SuccessAnimation.vue?vue&type=template&id=4b689632&scoped=true\"\nimport script from \"./SuccessAnimation.vue?vue&type=script&lang=js\"\nexport * from \"./SuccessAnimation.vue?vue&type=script&lang=js\"\nimport style0 from \"./SuccessAnimation.vue?vue&type=style&index=0&id=4b689632&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4b689632\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showAllToggle)?_c('BaseFieldTemplate',{attrs:{\"label\":_vm.$t(\n        'Components.Reservations.ModalReservationSet.Label_ShowCancelledReservations'\n      ),\"labelForInput\":false},scopedSlots:_vm._u([{key:\"fields\",fn:function(){return [(_vm.reservation.ReservationSet.length > 0)?_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:{ 'is-active': _vm.showAll === false }},[_c('a',{on:{\"click\":function($event){_vm.showAll = false}}},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('General.No'))}})])]),_c('li',{class:{ 'is-active': _vm.showAll === true }},[_c('a',{on:{\"click\":function($event){_vm.showAll = true}}},[_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('General.Yes'))}})])])])]):_vm._e()]},proxy:true}],null,false,555709860)}):_vm._e(),(!_vm.showRemoveConfirmation)?_c('div',[_c('table',{staticClass:\"table is-fullwidth is-striped is-hoverable\"},[_c('tbody',_vm._l((_vm.reservations),function(res){return _c('tr',{key:res.Key,class:{ 'is-selected': res.ReservationId === _vm.reservation.Id }},[_c('td',[_vm._v(\"#\"+_vm._s(res.ReservationId))]),_c('td',_vm._l((res.Dates),function(date){return _c('div',{key:date},[_vm._v(\" \"+_vm._s(_vm._f(\"dateObjectIsoDateString\")(date))+\" \")])}),0),_c('td',[_vm._v(_vm._s(_vm.$t('ReservationStatus.status_' + res.Status)))]),_c('td',{staticClass:\"has-text-right\"},[(!res.HasInvoice)?_c('a',{on:{\"click\":function($event){return _vm.setShowRemoveConfirmation(res.Key)}}},[_c('span',{staticClass:\"icon is-small has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1),_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservations.ModalReservationSet.Label_RemoveFromSet' ))+\" \")]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[(res.ReservationId != _vm.reservation.Id)?_c('a',{staticClass:\"has-margin-left\",class:{\n                'is-loading': _vm.isLoading && _vm.reservation.Id === res.ReservationId,\n              },on:{\"click\":function($event){return _vm.goToReservation(res.Key)}}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'share']}})],1),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalReservationSet.Label_Open'))+\" \")]):_vm._e()])])}),0)])]):_vm._e(),(_vm.showRemoveConfirmation)?_c('div',[_c('div',{staticClass:\"has-text-centered title is-size-3\"},[_vm._v(_vm._s(_vm.$t('Components.Reservations.ModalReservationSet.Text_RemoveFromSet')))]),_c('div',{staticClass:\"buttons is-centered mt-6\"},[_c('a',{staticClass:\"button is-ghost has-margin-right\",attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.hideShowRemoveConfirmation}},[_vm._v(_vm._s(_vm.$t('Form.Control.Cancel')))]),_c('a',{staticClass:\"button is-danger\",class:{ 'is-loading': _vm.isSaving },attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.removeFromSet}},[_vm._v(\" \"+_vm._s(_vm.$t('Form.Control.Delete'))+\" \")])])]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <BaseFieldTemplate\n      v-if=\"showAllToggle\"\n      :label=\"\n        $t(\n          'Components.Reservations.ModalReservationSet.Label_ShowCancelledReservations'\n        )\n      \"\n      :labelForInput=\"false\"\n    >\n      <template v-slot:fields>\n        <div\n          class=\"tabs is-toggle is-small\"\n          v-if=\"reservation.ReservationSet.length > 0\"\n        >\n          <ul>\n            <li :class=\"{ 'is-active': showAll === false }\">\n              <a @click=\"showAll = false\">\n                <span v-text=\"$t('General.No')\"></span>\n              </a>\n            </li>\n            <li :class=\"{ 'is-active': showAll === true }\">\n              <a @click=\"showAll = true\">\n                <span v-text=\"$t('General.Yes')\"></span>\n              </a>\n            </li>\n          </ul>\n        </div>\n      </template>\n    </BaseFieldTemplate>\n\n    <div v-if=\"!showRemoveConfirmation\">\n      <table class=\"table is-fullwidth is-striped is-hoverable\">\n        <tbody>\n          <tr\n            v-for=\"res in reservations\"\n            :key=\"res.Key\"\n            :class=\"{ 'is-selected': res.ReservationId === reservation.Id }\"\n          >\n            <td>#{{ res.ReservationId }}</td>\n            <td>\n              <div v-for=\"date in res.Dates\" :key=\"date\">\n                {{ date | dateObjectIsoDateString }}\n              </div>\n            </td>\n            <td>{{ $t('ReservationStatus.status_' + res.Status) }}</td>\n            <td class=\"has-text-right\">\n              <a v-if=\"!res.HasInvoice\" @click=\"setShowRemoveConfirmation(res.Key)\">\n                <span class=\"icon is-small has-text-danger\">\n                  <font-awesome-icon :icon=\"['fas', 'times']\" />\n                </span>\n                {{\n                  $t(\n                    'Components.Reservations.ModalReservationSet.Label_RemoveFromSet'\n                  )\n                }}\n              </a>\n            </td>\n            <td class=\"has-text-right\">\n              <a\n                @click=\"goToReservation(res.Key)\"\n                class=\"has-margin-left\"\n                :class=\"{\n                  'is-loading': isLoading && reservation.Id === res.ReservationId,\n                }\"\n                v-if=\"res.ReservationId != reservation.Id\"\n              >\n                <span class=\"icon is-small\">\n                  <font-awesome-icon :icon=\"['fas', 'share']\" />\n                </span>\n                {{\n                  $t('Components.Reservation.ModalReservationSet.Label_Open')\n                }}\n              </a>\n            </td>\n          </tr>\n        </tbody>\n      </table>\n    </div>\n\n    <!-- Show confirmation -->\n    <div v-if=\"showRemoveConfirmation\">\n      <div class=\"has-text-centered title is-size-3\">{{ $t('Components.Reservations.ModalReservationSet.Text_RemoveFromSet') }}</div>\n      \n      <div class=\"buttons is-centered mt-6\">\n        <a @click=\"hideShowRemoveConfirmation\" class=\"button is-ghost has-margin-right\" :disabled=\"isSaving\">{{\n          $t('Form.Control.Cancel') }}</a>\n        <a @click=\"removeFromSet\" class=\"button is-danger\" :class=\"{ 'is-loading': isSaving }\" :disabled=\"isSaving\">\n          {{ $t('Form.Control.Delete') }}\n        </a>\n      </div>\n    </div>\n    \n  </div>\n</template>\n\n<script>\nimport reservationProvider from '@/providers/reservation'\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\n\nexport default {\n  components: {\n    BaseFieldTemplate: () =>\n      import('@/components/UI/Form/BaseFieldTemplate.vue'),\n  },\n\n  props: { },\n\n  data() {\n    return {\n      isLoading: false,\n      isSaving: false,\n      showAll: false,\n      showRemoveConfirmation: false,\n      selectedReservation: ''\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n\n    showAllToggle() {\n      return (\n        this.reservation.ReservationSet.filter(\n          (r) => r.Status === 'Cancelled'\n        ).length !== 0\n      )\n    },\n\n    reservations() {\n      let set = []\n      let reservations = this.reservation.ReservationSet\n\n      if (!this.showAll) {\n        reservations = reservations.filter(\n          (r) => r.Status !== 'Cancelled'\n        )\n      }\n\n      for(let i = 0; i < reservations.length; i++) {\n        let reservation = reservations[i]\n        let setIndex = set.findIndex((r) => r.ReservationId === reservation.ReservationId);\n        if (setIndex === -1) {\n          set.push({\n            ReservationId: reservation.ReservationId,\n            Key: reservation.Key,\n            Dates: [reservation.Date],\n            Status: reservation.Status,\n            HasInvoice: reservation.HasInvoice\n          })\n        }\n        else {\n          set[setIndex].Dates.push(reservation.Date);\n        }\n      }\n\n      return set\n    },\n  },\n\n  created() {},\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    removeFromSet() {\n      if (this.isSaving) {\n        return;\n      }\n\n      this.isSaving = true;\n      const reservationKey = this.selectedReservation;\n\n      reservationProvider.methods\n        .deleteFromSet(reservationKey)\n        .then((response) => {\n          if (reservationKey === this.reservation.Key) {\n            this.setReservation(response.data);\n            this.$emit('hideDrawer');\n          } else {\n\n            let reservations = this.reservation.ReservationSet;\n            for(let i = 0; i < reservations.length; i++) {\n              let reservation = reservations[i];\n              if (reservation.Key === reservationKey) {\n                reservations.splice(i, 1);\n              }\n            }\n            this. reservation.ReservationSet = reservations;\n            this.setReservation(this.reservation);\n          }\n        })\n        .catch((err) => {})\n        .finally(() => {\n          this.isSaving = false;\n          this.hideShowRemoveConfirmation();\n        })\n    },\n\n    goToReservation(reservationKey) {\n      EventBus.$emit('navigated');\n\n      this.$router\n      .push({\n          name: `reservations-list-detail`,\n          params: { reservationKey: reservationKey },\n        })\n        .catch((err) => {})\n    },\n\n    setShowRemoveConfirmation(reservationKey) {\n      this.showRemoveConfirmation = true;\n      this.selectedReservation = reservationKey;\n    },\n\n    hideShowRemoveConfirmation() {\n      this.showRemoveConfirmation = false;\n      this.selectedReservation = '';\n    }\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationSet.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationSet.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationSet.vue?vue&type=template&id=61d081af\"\nimport script from \"./ReservationSet.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationSet.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showSendMail)?_c('ModalSendMail',{attrs:{\"showModal\":_vm.showSendMail,\"onClickCancel\":_vm.hideModal},on:{\"reservationMailSent\":_vm.getReservationMailLog}}):_vm._e(),_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Main_Title')))]},proxy:true}])}),_c('div',{staticClass:\"actionBar has-background-white-ter p-4 has-margin-bottom\"},[_c('div',{staticClass:\"level is-mobile\"},[_c('div',{staticClass:\"level-left\"}),_c('div',{staticClass:\"level-right\"},[_c('a',{staticClass:\"has-icon\",on:{\"click\":_vm.setShowSendMail}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'paper-plane']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Icon_SendMail'))}})])])])]),_c('div',{staticClass:\"title is-4\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Header_ReservationMailLog')))]),_c('ReservationMailLog',{attrs:{\"mailLogs\":_vm.mailLogs}}),(_vm.reservation.HasProposal > 0)?[_c('hr'),_c('div',{staticClass:\"title is-4\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Header_ProposalMailLog')))]),(_vm.reservation.HasProposal > 0)?_c('ProposalMail',{attrs:{\"proposalKey\":_vm.reservation.ProposalKey}}):_vm._e()]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ModalSendMail\n      v-if=\"showSendMail\"\n      :showModal=\"showSendMail\"\n      :onClickCancel=\"hideModal\"\n      @reservationMailSent=\"getReservationMailLog\"\n    />\n\n    <ui-section-header>\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationMailLog.Main_Title')\n      }}</template>\n    </ui-section-header>\n\n    <div class=\"actionBar has-background-white-ter p-4 has-margin-bottom\">\n      <div class=\"level is-mobile\">\n        <div class=\"level-left\"></div>\n        <div class=\"level-right\">\n          <a\n            @click=\"setShowSendMail\"\n            class=\"has-icon\"\n          >\n            <span class=\"icon is-small\">\n              <font-awesome-icon :icon=\"['fas', 'paper-plane']\" />\n            </span>\n            <span v-text=\"$t('Components.Reservation.ReservationMailLog.Icon_SendMail')\"></span>\n          </a>\n        </div>\n      </div>\n    </div>\n\n    <div class=\"title is-4\">{{ $t('Components.Reservation.ReservationMailLog.Header_ReservationMailLog') }}</div>\n    <ReservationMailLog :mailLogs=\"mailLogs\" />\n\n    <template v-if=\"reservation.HasProposal > 0\">\n      <hr/>\n      <div class=\"title is-4\">{{ $t('Components.Reservation.ReservationMailLog.Header_ProposalMailLog') }}</div>\n      <ProposalMail v-if=\"reservation.HasProposal > 0\" :proposalKey=\"reservation.ProposalKey\" />\n    </template>\n  </div>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\nimport mailProvider from '@/providers/mail'\n\nimport ReservationMailLog from'@/components/Mails/MailLog.vue'\nimport ModalSendMail from'@/components/Reservations/ModalSendMail.vue'\nimport ProposalMail from '@/components/Proposals/ProposalMail.vue'\n\nexport default {\n  components: {\n    ReservationMailLog,\n    ModalSendMail,\n    ProposalMail\n  },\n\n  data() {\n    return {\n      isLoading: false,\n      mailLogs: [],\n      showSendMail: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  created() {\n    this.getReservationMailLog()\n  },\n\n  methods: {\n    getReservationMailLog() {\n      let self = this\n\n      if (!self.isLoading) {\n        self.isLoading = true\n\n        mailProvider.methods\n          .getReservationMailLog(self.reservation.Id)\n          .then((response) => {\n            if (response.status === 200) {\n              self.mailLogs = response.data\n            }\n          })\n          .finally(() => {\n            self.isLoading = false\n          })\n      }\n    },\n\n    setShowSendMail() {\n      this.showSendMail = true\n    },\n\n    hideModal() {\n      this.showSendMail = false\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationMail.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationMail.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationMail.vue?vue&type=template&id=e16397a2\"\nimport script from \"./ReservationMail.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationMail.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[(!_vm.reservation.NoInvoice)?_c('div',[_c('div',{staticClass:\"tabs is-boxed\"},[_c('ul',[_c('li',{class:{ 'is-active': _vm.invoiceType === 'regular' }},[_c('a',{on:{\"click\":function($event){_vm.invoiceType = 'regular'}}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationInvoice.label_RegularInvoice')))])]),_c('li',{class:{ 'is-active': _vm.invoiceType === 'deposit' }},[_c('a',{on:{\"click\":function($event){_vm.invoiceType = 'deposit'}}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationInvoice.label_DepositInvoice')))])])])]),(!_vm.reservation.NoInvoice && _vm.showPoNumber)?_c('div',{staticClass:\"actionBar has-background-white-ter p-4 has-margin-bottom has-text-centered\"},[_c('div',{staticClass:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationInvoice.header_PoNumberRequired'))+\" \")]),_c('div',{staticClass:\"my-4\"},[_c('div',{staticClass:\"columns is-centered\"},[_c('div',{staticClass:\"column is-half is-vcentered\"},[_c('div',{staticClass:\"my-2\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationInvoice.label_WaitingForPoNumber'))+\" \")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.poNumber),expression:\"poNumber\"}],staticClass:\"input\",attrs:{\"type\":\"text\",\"placeholder\":\"\"},domProps:{\"value\":(_vm.poNumber)},on:{\"input\":function($event){if($event.target.composing)return;_vm.poNumber=$event.target.value}}})])])]),_c('a',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.isSaving },attrs:{\"disabled\":_vm.blockOnPoNumber || _vm.isSaving},on:{\"click\":_vm.saveReservationInvoice}},[_vm._v(_vm._s(_vm.$t('GeneralActions.Save')))])]):_vm._e(),(_vm.invoiceType === 'regular')?_c('div',[(_vm.reservation && _vm.reservation.HasInvoice > 0)?_c('InvoiceDetail',{key:'regularInvoice',attrs:{\"invoiceId\":_vm.reservation.HasInvoice}}):_vm._e(),(_vm.reservation && _vm.reservation.HasInvoice === 0)?_c('div',[(!_vm.showPoNumber)?_c('Message',{staticClass:\"mb-6\",attrs:{\"message\":_vm.$t('Components.Reservation.ReservationInvoice.message_NoRegularInvoice'),\"type\":'is-info'}}):_vm._e(),(_vm.showCreateInvoiceButton)?_c('div',{staticClass:\"has-text-centered\"},[_c('a',{staticClass:\"button is-primary is-large\",class:{ 'is-loading': _vm.isSaving },on:{\"click\":_vm.createRegularInvoice}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationInvoice.button_CreateInvoice')))])]):_vm._e(),_c('hr'),_c('div',{staticClass:\"has-text-centered\"},[_c('button',{staticClass:\"button is-text\",on:{\"click\":_vm.toggleReservationNoInvoice}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-invoice']}})],1),(!_vm.reservation.NoInvoice)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationInvoice.link_ActivateReservationNoInvoice')))]):_vm._e()])])],1):_vm._e()],1):_vm._e(),(_vm.invoiceType === 'deposit')?_c('div',[(_vm.reservation && _vm.reservation.HasDepositInvoice > 0)?_c('InvoiceDetail',{key:'depositInvoice',attrs:{\"invoiceId\":_vm.reservation.HasDepositInvoice}}):_vm._e(),(_vm.reservation && _vm.reservation.HasDepositInvoice === 0)?_c('div',[(!_vm.showPoNumber)?_c('Message',{staticClass:\"mb-6\",attrs:{\"message\":_vm.$t('Components.Reservation.ReservationInvoice.message_NoDepositInvoice'),\"type\":'is-info'}}):_vm._e(),(_vm.showCreateInvoiceButton)?_c('div',{staticClass:\"has-text-centered\"},[_c('a',{staticClass:\"button is-primary is-large\",class:{ 'is-loading': _vm.isSaving },on:{\"click\":_vm.createDepositInvoice}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationInvoice.button_CreateInvoice')))])]):_vm._e()],1):_vm._e()],1):_vm._e()]):_vm._e(),(_vm.reservation.NoInvoice)?_c('div',[_c('Message',{staticClass:\"mb-6\",attrs:{\"message\":_vm.$t('Components.Reservation.ReservationInvoice.message_InvoiceCreationDisabled'),\"type\":'is-info'}}),_c('div',{staticClass:\"has-text-centered\"},[_c('button',{staticClass:\"button is-text\",on:{\"click\":_vm.toggleReservationNoInvoice}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-invoice']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationInvoice.link_DeactivateReservationNoInvoice')))])])])],1):_vm._e()]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <!-- NO INVOICE IS FALSE -->\n    <div v-if=\"!reservation.NoInvoice\">\n      <div class=\"tabs is-boxed\">\n        <ul>\n          <li :class=\"{ 'is-active': invoiceType === 'regular' }\"><a @click=\"invoiceType = 'regular'\">{{ $t('Components.Reservation.ReservationInvoice.label_RegularInvoice') }}</a></li>\n          <li :class=\"{ 'is-active': invoiceType === 'deposit' }\"><a @click=\"invoiceType = 'deposit'\">{{ $t('Components.Reservation.ReservationInvoice.label_DepositInvoice') }}</a></li>\n        </ul>\n      </div>\n\n      <div\n        v-if=\"!reservation.NoInvoice && showPoNumber\"\n        class=\"actionBar has-background-white-ter p-4 has-margin-bottom has-text-centered\"\n      >\n        <div class=\"title\">\n          {{ $t('Components.Reservation.ReservationInvoice.header_PoNumberRequired') }}\n        </div>\n\n        <div class=\"my-4\">\n          <div class=\"columns is-centered\">\n            <div class=\"column is-half is-vcentered\">\n              <div class=\"my-2\">\n                {{ $t('Components.Reservation.ReservationInvoice.label_WaitingForPoNumber') }}\n              </div>\n\n              <input\n                type=\"text\"\n                class=\"input\"\n                v-model=\"poNumber\"\n                placeholder=\"\"\n              />\n            </div>\n          </div>\n        </div>\n\n        <a\n          @click=\"saveReservationInvoice\"\n          class=\"button is-primary\"\n          :class=\"{ 'is-loading': isSaving }\"\n          :disabled=\"blockOnPoNumber || isSaving\"\n        >{{ $t('GeneralActions.Save') }}</a>\n      </div>\n\n      <!-- REGULAR INVOICE -->\n      <div v-if=\"invoiceType === 'regular'\">\n        <InvoiceDetail\n          v-if=\"reservation && reservation.HasInvoice > 0\"\n          :key=\"'regularInvoice'\"\n          :invoiceId=\"reservation.HasInvoice\"\n        />\n\n        <div v-if=\"reservation && reservation.HasInvoice === 0\">\n          <!-- <p class=\"title mb-6\">{{ $t('Components.Reservation.ReservationInvoice.label_RegularInvoice') }}</p> -->\n\n          <Message\n            v-if=\"!showPoNumber\"\n            :message=\"$t('Components.Reservation.ReservationInvoice.message_NoRegularInvoice')\"\n            :type=\"'is-info'\"\n            class=\"mb-6\"\n          />\n\n          <div\n            v-if=\"showCreateInvoiceButton\"\n            class=\"has-text-centered\"\n          >\n            <a\n              @click=\"createRegularInvoice\"\n              class=\"button is-primary is-large\"\n              :class=\"{ 'is-loading': isSaving }\"\n            >{{ $t('Components.Reservation.ReservationInvoice.button_CreateInvoice') }}</a>\n          </div>\n\n          <hr />\n\n          <div class=\"has-text-centered\">\n            <button\n              class=\"button is-text\"\n              @click=\"toggleReservationNoInvoice\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'file-invoice']\" />\n              </span>\n              <span v-if=\"!reservation.NoInvoice\">{{ $t('Components.Reservation.ReservationInvoice.link_ActivateReservationNoInvoice') }}</span>\n            </button>\n          </div>\n\n        </div>\n      </div>\n\n      <!-- DEPOSIT INVOICE -->\n      <div v-if=\"invoiceType === 'deposit'\">\n        <InvoiceDetail\n          v-if=\"reservation && reservation.HasDepositInvoice > 0\"\n          :key=\"'depositInvoice'\"\n          :invoiceId=\"reservation.HasDepositInvoice\"\n        />\n\n        <div v-if=\"reservation && reservation.HasDepositInvoice === 0\">\n          <!-- <p class=\"title mb-6\">{{ $t('Components.Reservation.ReservationInvoice.label_DepositInvoice') }}</p> -->\n\n          <Message\n            v-if=\"!showPoNumber\"\n            :message=\"$t('Components.Reservation.ReservationInvoice.message_NoDepositInvoice')\"\n            :type=\"'is-info'\"\n            class=\"mb-6\"\n          />\n\n          <div\n            v-if=\"showCreateInvoiceButton\"\n            class=\"has-text-centered\"\n          >\n            <a\n              @click=\"createDepositInvoice\"\n              class=\"button is-primary is-large\"\n              :class=\"{ 'is-loading': isSaving }\"\n            >{{ $t('Components.Reservation.ReservationInvoice.button_CreateInvoice') }}</a>\n          </div>\n        </div>\n      </div>\n    </div>\n\n    <!-- NO INVOICE IS TRUE -->\n    <div v-if=\"reservation.NoInvoice\">\n      <Message\n        :message=\"$t('Components.Reservation.ReservationInvoice.message_InvoiceCreationDisabled')\"\n        :type=\"'is-info'\"\n        class=\"mb-6\"\n      />\n\n      <div class=\"has-text-centered\">\n        <button\n          class=\"button is-text\"\n          @click=\"toggleReservationNoInvoice\"\n        >\n          <span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'file-invoice']\" />\n          </span>\n          <span>{{ $t('Components.Reservation.ReservationInvoice.link_DeactivateReservationNoInvoice') }}</span>\n        </button>\n      </div>\n\n    </div>\n\n  </div>\n</template>\n\n<script>\nimport { mapState, mapActions, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport { cleanSource } from '@/utils/objectHelper'\nimport invoiceProvider from '@/providers/invoice';\nimport reservationProvider from '@/providers/reservation';\n\nexport default {\n  components: {\n    InvoiceDetail: () => import(/* webpackChunkName: \"reservation-invoice\" */ '@/components/Invoices/InvoiceDetail'),\n    Message: () => import(/* webpackChunkName: \"reservation-invoice\" */ '@/components/UI/Message')\n  },\n\n  props: {\n    openInvoiceType: {\n      type: String,\n      default: ''\n    }\n  },\n\n  data(vm) {\n    const invoiceType = this.$props.openInvoiceType || 'regular'\n    return {\n      invoiceType,\n      isDeposit: false,\n      isLoading: false,\n      isSaving: false,\n      mReservation: null,\n      poNumber: '',\n      selectedInvoiceId: 0\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n    ...mapState('locationStore', ['locationState']),\n\n    isEmployee() {\n      let employee = false\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true\n      }\n\n      return employee\n    },\n\n    isLocked() {\n      let self = this\n      let locked = false\n\n      if (this.locationId > 0) {\n        if (\n          self.isCreatingInvoice ||\n          self.reservation.HasInvoice > 0 ||\n          self.reservation.StatusId === 3\n        ) {\n          locked = true\n        }\n      }\n\n      if (this.locationId === 0) {\n        if (\n          self.reservation &&\n          (self.reservation.HasInvoice > 0 ||\n            self.reservation.StatusId === 3 ||\n            self.reservation.HoursUntilStart <= 24 ||\n            (self.reservation.Expiration && self.reservation.Expiration.IsExpired))\n        ) {\n          return true\n        }\n      }\n\n      return locked\n    },\n\n    blockOnPoNumber() {\n      let block = false;\n\n      if (this.reservation &&\n        this.reservation.Status === 'AwaitingPoNumber' &&\n        this.poNumber.length === 0) {\n        block = true;\n      }\n\n      return block;\n    },\n\n    showPoNumber() {\n      let block = false;\n\n      if (this.reservation &&\n        this.reservation.Status === 'AwaitingPoNumber' ||\n        (this.reservation.PoRequired && this.reservation.InvoiceAddress.PoNumber.length === 0)) {\n        block = true;\n      }\n\n      return block;\n    },\n\n    showCreateInvoiceButton() {\n      let show = false;\n\n      if (this.isEmployee &&\n        !this.reservation.NoInvoice &&\n        this.reservation.HasInvoice === 0 &&\n        this.reservation.Status !== 'Option' &&\n        this.reservation.Status !== 'AwaitingPoNumber' &&\n        (!this.reservation.PoRequired ||\n          (this.reservation.PoRequired &&\n            this.reservation.InvoiceAddress &&\n            this.reservation.InvoiceAddress.PoNumber &&\n            this.reservation.InvoiceAddress.PoNumber.length > 0)) &&\n        this.reservation.Type !== 'Draft' &&\n        this.reservation.Type !== 'Request') {\n        show = true;\n      }\n\n      return show\n    },\n  },\n\n  created() {\n    EventBus.$on('invoiceAccepted', () => {\n      this.refreshReservation();\n    });\n\n    EventBus.$on('invoiceRejected', () => {\n      this.refreshReservation();\n    });\n\n    EventBus.$on('invoiceCredited', () => {\n      this.refreshReservation();\n    });\n\n    if (this.reservation && this.reservation.HasInvoice > 0) {\n      this.selectedInvoiceId = this.reservation.HasInvoice;\n    }\n\n    this.mReservation = cleanSource(this.reservation);\n  },\n\n  beforeDestroy() {\n    EventBus.$off('invoiceAccepted');\n    EventBus.$off('invoiceRejected');\n    EventBus.$off('invoiceCredited');\n  },\n\n  methods: {\n    ...mapActions('reservationStore', ['refreshReservation']),\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    saveReservationInvoice() {\n      if (this.isSaving) {\n        return;\n      }\n      this.isSaving = true;\n\n      this.mReservation.InvoiceAddress.PoNumber = this.poNumber;\n\n      reservationProvider.methods\n        .saveReservationInvoiceAddress(\n          this.mReservation.Key,\n          this.mReservation.InvoiceAddress,\n          false\n        )\n        .then((response) => {\n          if (response.status === 200) {\n            // Update reservation store\n            this.setReservation(response.data);\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t(\n                'Components.Reservation.ModalEditInvoiceAddress.Toast_AddressUpdated'\n              ),\n            });\n          }\n        })\n        .finally(() => {\n          this.isSaving = false;\n        })\n    },\n\n    toggleReservationNoInvoice() {\n      let self = this\n\n      reservationProvider.methods\n        .toggleReservationNoInvoice(this.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.setReservation(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => { })\n    },\n\n    createRegularInvoice() {\n      this.isDeposit = false;\n      this.createInvoice();\n    },\n\n    createDepositInvoice() {\n      this.isDeposit = true;\n      this.createInvoice();\n    },\n\n    createInvoice() {\n      if (this.isSaving || this.reservation.HasInvoice > 0) {\n        return;\n      }\n\n      this.isSaving = true;\n\n      invoiceProvider.methods\n        .createReservationInvoice(this.reservation.Key, this.isDeposit)\n        .then((response) => {\n          if (response.status === 200) {\n            let invoice = response.data;\n            this.selectedInvoiceId = invoice.Id;\n\n            if (this.isDeposit) {\n              this.reservation.HasDepositInvoice = invoice.Id;\n            } else {\n              this.reservation.HasInvoice = invoice.Id;\n            }\n\n            // Update reservation data\n            this.refreshReservation();\n\n            // Send message to display toast on screen\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t(\n                'Components.Reservations.ModalCreateInvoice.Toast_InvoiceCreated'\n              ),\n            })\n\n          }\n        })\n        .catch((error) => {\n          // chp-api v2 reports refusals (already invoiced, PO number missing, etc.) as\n          // RFC 7807 Problem objects with a human-readable title\n          EventBus.$emit('showToast', {\n            type: 'error',\n            message: error.response?.data?.title || this.$t('General.SavingError'),\n          })\n        })\n        .finally(() => {\n          this.isSaving = false\n        })\n    }\n  }\n}\n</script>\n\n<style></style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationInvoice.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationInvoice.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationInvoice.vue?vue&type=template&id=d0636482\"\nimport script from \"./ReservationInvoice.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationInvoice.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar aSet = require('../internals/a-set');\nvar size = require('../internals/set-size');\nvar iterate = require('../internals/set-iterate');\nvar getSetRecord = require('../internals/get-set-record');\n\n// `Set.prototype.isSubsetOf` method\n// https://tc39.es/ecma262/#sec-set.prototype.issubsetof\nmodule.exports = function isSubsetOf(other) {\n  var O = aSet(this);\n  var otherRec = getSetRecord(other);\n  if (size(O) > otherRec.size) return false;\n  return iterate(O, function (e) {\n    if (!otherRec.includes(e)) return false;\n  }, true) !== false;\n};\n","export default {\n  methods: {\n    beforeEnter: function(el) {\n      el.style.opacity = 0\n    },\n\n    enter: function(el, done) {\n      var delay = el.dataset.index * 50\n      setTimeout(function() {\n        el.style.transition = 'opacity 0.3s'\n        el.style.opacity = '1'\n\n        done()\n      }, delay)\n    },\n\n    leave: function(el, done) {\n      //var delay = el.dataset.index * 50\n      //setTimeout(function() {\n      el.style.transition = 'opacity 0.1s'\n      el.style.opacity = '0'\n\n      done()\n      //}, delay)\n    },\n\n    afterLeave: function(el) {\n      if (el) {\n        el.parentNode.removeChild(el)\n      }\n    },\n  }\n};","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation && _vm.reservationDate)?_c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":\"large\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showAddPackage)?_c('AddPackage',{attrs:{\"showModal\":_vm.showAddPackage,\"reservationDate\":_vm.reservationDate},on:{\"packageSelected\":_vm.hideDrawer}}):_vm._e()]},proxy:true}],null,false,2289525944)}):_vm._e(),_c('ui-section-header',{attrs:{\"showAdd\":!_vm.isLocked,\"addFunction\":_vm.setShowAddPackage,\"addLabel\":_vm.$t('Components.Reservation.ReservationDetail.Icon_AddPackage')},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationPackage.Main_Title'))+\" \")]},proxy:true}],null,false,1546941430)}),(_vm.reservationDate.Packages.length === 0)?_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationPackage.Message_NoPackagesAdded')}}):_vm._e(),(_vm.reservationDate.Packages.length > 0)?_c('table',{staticClass:\"table is-fullwidth is-striped is-narrow\",class:{ 'is-hoverable': !_vm.previewOnly}},[_c('thead',[_c('tr',[_c('th',{staticClass:\"has-text-left\",attrs:{\"width\":\"75\"}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationPackage.TableHeader_Qty')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationPackage.TableHeader_Name')))]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"100px\"}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationPackage.TableHeader_Price')))]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"100px\"}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationPackage.TableHeader_Total')))]),(!_vm.previewOnly)?_c('th',{attrs:{\"width\":\"85px\"}},[_vm._v(\" \")]):_vm._e()])]),_c('tbody',_vm._l((_vm.reservationDate.Packages),function(pckg,index){return _c('tr',{key:index},[_c('td',[_vm._v(_vm._s(pckg.Amount)+\"x\")]),_c('td',[_vm._v(_vm._s(_vm.getPackageName(pckg)))]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(pckg.PriceExclTax,_vm.locationLanguageCulture, _vm.reservation.Currency))+\" \")]),_c('td',{staticClass:\"has-text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"toCurrency\")(pckg.TotalExclTax,_vm.locationLanguageCulture, _vm.reservation.Currency))+\" \")]),(!_vm.previewOnly)?_c('td',[(!_vm.isLocked)?_c('div',{staticClass:\"field is-grouped is-grouped-right\"},[_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.deleteReservationPackage(pckg.PackageId)}}},[_c('span',{staticClass:\"icon has-text-danger\",class:{ 'is-loading': _vm.isDeleting }},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])]):_vm._e()]):_vm._e()])}),0)]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation && reservationDate\">\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      drawerSize=\"large\"\n    >\n      <template v-slot:content>\n        <AddPackage\n          v-if=\"showAddPackage\"\n          :showModal=\"showAddPackage\"\n          :reservationDate=\"reservationDate\"\n          @packageSelected=\"hideDrawer\"\n        />\n\n      </template>\n    </ui-component-drawer>\n\n    <ui-section-header\n      :showAdd=\"!isLocked\"\n      :addFunction=\"setShowAddPackage\"\n      :addLabel=\"$t('Components.Reservation.ReservationDetail.Icon_AddPackage')\"\n    >\n      <template v-slot:title>{{ $t('Components.Reservation.ReservationPackage.Main_Title') }}\n      </template>\n    </ui-section-header>\n\n    <Message\n      v-if=\"reservationDate.Packages.length === 0\"\n      :message=\"\n        $t('Components.Reservation.ReservationPackage.Message_NoPackagesAdded')\n      \"\n    />\n\n    <table\n      v-if=\"reservationDate.Packages.length > 0\"\n      class=\"table is-fullwidth is-striped is-narrow\"\n      :class=\"{ 'is-hoverable': !previewOnly}\"\n    >\n      <thead>\n        <tr>\n          <th\n            width=\"75\"\n            class=\"has-text-left\"\n          >{{$t('Components.Reservation.ReservationPackage.TableHeader_Qty')}}</th>\n          <th>{{$t('Components.Reservation.ReservationPackage.TableHeader_Name')}}</th>\n          <th\n            width=\"100px\"\n            class=\"has-text-right\"\n          >{{$t('Components.Reservation.ReservationPackage.TableHeader_Price')}}</th>\n          <th\n            width=\"100px\"\n            class=\"has-text-right\"\n          >{{$t('Components.Reservation.ReservationPackage.TableHeader_Total')}}</th>\n          <th\n            v-if=\"!previewOnly\"\n            width=\"85px\"\n          >&nbsp;</th>\n        </tr>\n      </thead>\n      <tbody>\n        <tr\n          v-for=\"(pckg, index) in reservationDate.Packages\"\n          :key=\"index\"\n        >\n          <td>{{ pckg.Amount }}x</td>\n          <td>{{ getPackageName(pckg) }}</td>\n          <td class=\"has-text-right\">\n            {{\n              pckg.PriceExclTax\n                | toCurrency(locationLanguageCulture, reservation.Currency)\n            }}\n          </td>\n          <td class=\"has-text-right\">\n            {{\n              pckg.TotalExclTax\n                | toCurrency(locationLanguageCulture, reservation.Currency)\n            }}\n          </td>\n          <td v-if=\"!previewOnly\">\n            <div\n              v-if=\"!isLocked\"\n              class=\"field is-grouped is-grouped-right\"\n            >\n              <p class=\"control\">\n                <a @click=\"deleteReservationPackage(pckg.PackageId)\">\n                  <span\n                    class=\"icon has-text-danger\"\n                    :class=\"{ 'is-loading': isDeleting }\"\n                  >\n                    <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                  </span>\n                </a>\n              </p>\n            </div>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script>\nimport { mapGetters, mapState, mapMutations } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\nimport { EventBus } from '@/eventbus/event-bus'\n\nexport default {\n  components: {\n    Message: () => import('@/components/UI/Message'),\n    AddPackage: () => import('@/components/Reservations/AddPackage'),\n  },\n\n  props: {\n    previewOnly: {\n      default: false,\n      type: Boolean,\n    },\n\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: true,\n      type: Boolean,\n    },\n\n    reservation: {\n      type: Object,\n      deafault: null\n    },\n\n    reservationDate: {\n      type: Object,\n      deafault: null,\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      isDeleting: false,\n      drawerTitle: '',\n\n      showSideDrawer: false,\n      showAddPackage: false\n    }\n  },\n\n  computed: {\n    //...mapState('reservationStore', ['reservation']),\n    ...mapGetters('locationStore', ['locationLanguageCulture']),\n\n\n    pckg() {\n      let p = null\n\n      if (this.reservation && this.reservation.Voucher) {\n        p = this.reservation.Voucher\n      }\n\n      return p\n    },\n  },\n\n  created() { },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    getPackageName(_package) {\n      return _package.Descriptions.find(d => d.Language === this.reservation.Language)?.Name\n        ?? _package.Descriptions.find(d => d.Language === 'en')?.Name\n        ?? _package.PackageName\n    },\n\n    deleteReservationPackage(packageId) {\n      if (this.isDeleting) {\n        return;\n      }\n\n      this.isDeleting = true;\n\n      let dateIso = this.$options.filters.dateObjectIsoDateString(this.$options.filters.parseIsoDateStringToDate(this.reservationDate.Date))\n\n      reservationProvider.methods\n        .deleteReservationPackage(this.reservation.Key, packageId, dateIso)\n        .then((response) => {\n          if (response.status === 200) {\n            this.setReservation(response.data)\n            this.$emit('reservationVoucherApplied', response.data)\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t('Components.Reservation.ReservationPackage.Message_PackagesRemoved'),\n            })\n          }\n        })\n        .finally(() => {\n          this.isDeleting = false;\n        })\n    },\n\n    setShowAddPackage() {\n      this.drawerTitle = this.$t('Components.Reservation.AddPackage.header_AddPackage');\n      this.showSideDrawer = true;\n      this.showAddPackage = true;\n    },\n\n    hideDrawer() {\n      this.itemId = 0;\n      this.drawerTitle = '';\n      this.showSideDrawer = false;\n      this.showAddPackage = false;\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationPackages.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationPackages.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationPackages.vue?vue&type=template&id=65954e34\"\nimport script from \"./ReservationPackages.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationPackages.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationProgram.vue?vue&type=style&index=0&id=625e2c52&prod&scoped=true&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCancelProposal.vue?vue&type=style&index=0&id=4bf50274&prod&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CopyDate.vue?vue&type=style&index=0&id=5e647516&prod&lang=scss&scoped=true\"","'use strict';\nvar $ = require('../internals/export');\nvar union = require('../internals/set-union');\nvar setMethodGetKeysBeforeCloning = require('../internals/set-method-get-keys-before-cloning-detection');\nvar setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');\n\nvar FORCED = !setMethodAcceptSetLike('union') || !setMethodGetKeysBeforeCloning('union');\n\n// `Set.prototype.union` method\n// https://tc39.es/ecma262/#sec-set.prototype.union\n$({ target: 'Set', proto: true, real: true, forced: FORCED }, {\n  union: union\n});\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Drawer.vue?vue&type=style&index=0&id=d31a7108&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('input',{staticClass:\"input\",attrs:{\"type\":\"text\",\"autocomplete\":\"none\"},on:{\"keypress\":function($event){return _vm.preventKeyPress($event)},\"keyup\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"delete\",[8,46],$event.key,[\"Backspace\",\"Delete\",\"Del\"]))return null;return _vm.backPressEvent($event)},_vm.keyup],\"blur\":_vm.blur,\"focus\":_vm.focus,\"input\":_vm.input,\"change\":_vm.change,\"paste\":_vm.pasteEvent}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <input\n    class=\"input\"\n    type=\"text\"\n    autocomplete=\"none\"\n    @keypress=\"preventKeyPress($event)\"\n    @keyup.delete=\"backPressEvent($event)\"\n    @blur=\"blur\"\n    @keyup=\"keyup\"\n    @focus=\"focus\"\n    @input=\"input\"\n    @change=\"change\"\n    @paste=\"pasteEvent\"\n  />\n</template>\n\n<script>\n\nexport default {\n  name: 'InputNumeric',\n\n  props: {\n    value: {\n      type: [String, Number],\n      default: 0\n    },\n\n    isNumeric: {\n      type: Boolean,\n      default: false\n    },\n\n    allowNegativeValue: {\n      type: Boolean,\n      default: true\n    }\n  },\n\n  data() {\n    return {\n      cursorStartPos: 0,\n      kCode: 0\n    }\n  },\n\n  watch: {\n    value(price) {\n      price = String(price).replace(/,/g, '.')\n      if (Number(price) !== Number(this.$el.value.replace(/,/g, '.'))) {\n        // Prevent updating the input value if not need to\n        if (isNaN(price) || price === '-0' || price.substring(price.length - 1) === '.') {\n          return\n        }\n        this.$el.value = price\n      }\n    }\n  },\n\n  mounted() {\n    this.$el.value = String(this.value)\n  },\n\n  methods: {\n    /**\n     * Input events\n     */\n    focus(e) {\n      this.$emit('focus', e)\n    },\n    blur(e) {\n      this.cursorStartPos = 0\n      this.returnEvent('blur', e.target.value)\n    },\n    change(e) {\n      this.returnEvent('change', e.target.value)\n    },\n    keyup(e) {\n      this.returnEvent('keyup', e.target.value)\n    },\n    input(e) {\n      this.returnEvent('input', e.target.value)\n    },\n\n    // Emit event back\n    returnEvent(eventType, value, skipCheck = false) {\n      value = value.trim().replace(/,/g, '.')\n      if (value === '-' || value === '.') { return }\n      if (value === '-0') {\n        value = '0'\n      }\n      this.$emit(eventType, Number(value))\n    },\n\n    backPressEvent(evt) {\n    },\n\n    pasteEvent(evt) {\n      evt.preventDefault()\n      return false\n    },\n\n    // Prevent input other then numbers, comma and dot check\n    preventKeyPress(evt) {\n      let kCode = (evt.which) ? evt.which : evt.keyCode\n      this.kCode = kCode\n      let cursorPos = this.getCursorPosition()\n      this.cursorStartPos = cursorPos.startPos\n\n      // Stop event when key code is not numeric, minus or dot or comma number\n      if ((kCode !== 44 && kCode !== 45 && kCode !== 46) && kCode > 31 && (kCode < 48 || kCode > 57)) {\n        evt.preventDefault()\n        return false\n      }\n\n      let price = this.$el.value.replace(/,/g, '.')\n      let priceLength = price.length\n\n      /**\n       * Stop adding minus sign event when: \n       * - String already contains a minus sign\n       * - When cursor is not add the beginning of the string\n       * - When not the whole string is selected\n       */\n      if (kCode === 45 && (\n        this.allowNegativeValue === false\n        || price.indexOf('-') !== -1\n        || cursorPos.startPos !== 0\n        || ((cursorPos.endPos === priceLength) && cursorPos.startPos !== 0)\n      )) {\n        evt.preventDefault()\n        return false\n      }\n\n      /**\n       * Stop adding dot event when:\n       * - String already contains a dot\n       * - cursor is at the beginning of the string\n       * - cursor is at a postion in the string where more then 2 numbers follows\n       * - 2 decimals are added\n       */\n      let dotIndex = price.indexOf('.')\n      if (kCode === 44 || kCode === 46) {\n        // Prevent the event when the dot is inside the selection range\n        let isRangeSelection = cursorPos.startPos !== cursorPos.endPos\n        if (\n          this.isNumeric === true\n          || (dotIndex !== -1 && !(dotIndex >= cursorPos.startPos && dotIndex <= cursorPos.endPos))\n        ) {\n          evt.preventDefault()\n          return false\n        }\n\n        // String already contains a dot or cursor is at a postion in the string where more then 2 numbers follows\n        if (!isRangeSelection\n          && (dotIndex !== -1 || (cursorPos.startPos === 0 || priceLength > (cursorPos.startPos + 2)))\n        ) {\n          evt.preventDefault()\n          return false\n        }\n      }\n\n      // Stop event when adding more then two digits after the dot\n      let lastdigits = this.$el.value.substring(dotIndex + 1, this.$el.value.length)\n      if (dotIndex !== -1\n        && (lastdigits.length >= 2 && cursorPos.startPos > dotIndex)\n      ) {\n        evt.preventDefault()\n        return false\n      }\n\n      this.cursorStartPos = cursorPos.startPos + 1\n\n      return true\n    },\n\n    /**\n     * Get cursor position\n     */\n    getCursorPosition() {\n      this.$el.focus()\n      return {\n        startPos: this.$el.selectionStart,\n        endPos: this.$el.selectionEnd\n      }\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n/* Chrome, Safari, Edge, Opera */\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n  -webkit-appearance: none;\n  margin: 0;\n}\n\n/* Firefox */\ninput[type=\"number\"] {\n  -moz-appearance: textfield;\n}\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputNumeric.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputNumeric.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./InputNumeric.vue?vue&type=template&id=6d71c596&scoped=true\"\nimport script from \"./InputNumeric.vue?vue&type=script&lang=js\"\nexport * from \"./InputNumeric.vue?vue&type=script&lang=js\"\nimport style0 from \"./InputNumeric.vue?vue&type=style&index=0&id=6d71c596&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6d71c596\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TransitionExpand.vue?vue&type=style&index=1&id=3deb10ec&prod&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(!_vm.registerSucceed)?_c('div',[_vm._t(\"registerTitle\"),(_vm.errorMessage)?_c('Message',{staticClass:\"is-danger has-margin-bottom\",attrs:{\"message\":_vm.errorMessage}}):_vm._e(),_c('BaseInputField',{attrs:{\"label\":_vm.$t(`Components.AccountControls.Register.Label_FirstName`, _vm.localeOverride),\"labelForInput\":_vm.labelForInput,\"error\":_vm.firstNameErrors.toString(),\"required\":\"\"},on:{\"input\":function($event){return _vm.delayTouch(_vm.$v.profile.firstName)},\"blur\":function($event){return _vm.$v.profile.firstName.$touch()}},model:{value:(_vm.profile.firstName),callback:function ($$v) {_vm.$set(_vm.profile, \"firstName\", $$v)},expression:\"profile.firstName\"}}),_c('BaseInputField',{attrs:{\"label\":_vm.$t(`Components.AccountControls.Register.Label_LastName`, _vm.localeOverride),\"labelForInput\":_vm.labelForInput,\"error\":_vm.lastNameErrors.toString(),\"required\":\"\"},on:{\"input\":function($event){return _vm.$v.profile.lastName.$touch()},\"blur\":function($event){return _vm.$v.profile.lastName.$touch()}},model:{value:(_vm.profile.lastName),callback:function ($$v) {_vm.$set(_vm.profile, \"lastName\", $$v)},expression:\"profile.lastName\"}}),(!_vm.hidePhoneField)?_c('BaseInputField',{attrs:{\"label\":_vm.$t(`Components.AccountControls.Register.Label_Phone`, _vm.localeOverride),\"labelForInput\":_vm.labelForInput,\"error\":\"\",\"required\":false},model:{value:(_vm.profile.phone),callback:function ($$v) {_vm.$set(_vm.profile, \"phone\", $$v)},expression:\"profile.phone\"}}):_vm._e(),_c('BaseInputField',{attrs:{\"label\":_vm.$t(`Components.AccountControls.Register.Label_Email`, _vm.localeOverride),\"labelForInput\":_vm.labelForInput,\"error\":_vm.emailErrors.toString(),\"onKeyUpEnter\":_vm.save,\"required\":\"\"},on:{\"input\":() => {\n        _vm.emailAlreadyExists = false\n        _vm.delayTouch(_vm.$v.profile.email)\n      },\"blur\":function($event){return _vm.$v.profile.email.$touch()}},model:{value:(_vm.profile.email),callback:function ($$v) {_vm.$set(_vm.profile, \"email\", $$v)},expression:\"profile.email\"}}),(!_vm.hidePasswordField)?_c('BaseInputField',{attrs:{\"labelForInput\":_vm.labelForInput,\"error\":_vm.passwordErrors,\"label\":_vm.$t('Components.AccountControls.Register.Label_Password', _vm.localeOverride),\"onKeyUpEnter\":_vm.save,\"fieldType\":\"password\",\"required\":\"\"},on:{\"input\":function($event){return _vm.$v.profile.password.$touch()},\"blur\":function($event){return _vm.$v.profile.password.$touch()}},model:{value:(_vm.profile.password),callback:function ($$v) {_vm.$set(_vm.profile, \"password\", $$v)},expression:\"profile.password\"}}):_vm._e(),(false)?_c('ui-base-field-template',{attrs:{\"label\":this.$t(\n        `Components.AccountControls.Register.Label_SendUserRegisterMail`\n      ),\"required\":false},scopedSlots:_vm._u([{key:\"fields\",fn:function(){return [_c('BaseCheckbox',{attrs:{\"label\":\"\"},model:{value:(_vm.sendRegistrationMail),callback:function ($$v) {_vm.sendRegistrationMail=$$v},expression:\"sendRegistrationMail\"}})]},proxy:true}],null,false,3417574877)}):_vm._e(),_c('BaseFieldTemplate',{attrs:{\"labelForInput\":_vm.labelForInput,\"required\":false},scopedSlots:_vm._u([{key:\"fields\",fn:function(){return [_c('div',{staticClass:\"level has-margin-top\"},[_c('div',{staticClass:\"level-left\"},[(_vm.showBackButton)?_c('a',{staticClass:\"has-icon\",on:{\"click\":_vm.backFunc}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'angle-left']}})],1),_c('span',{staticClass:\"has-icon\",domProps:{\"innerHTML\":_vm._s(_vm.$t('Form.Control.Back', _vm.localeOverride))}})]):_vm._e()]),_c('div',{staticClass:\"level-right\"},[_c('button',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.isSaving || _vm.isCheckinEmail },attrs:{\"disabled\":Boolean(_vm.$v.$error) || _vm.isCheckinEmail},domProps:{\"innerHTML\":_vm._s(_vm.labelbuttonRegister)},on:{\"click\":_vm.save}})])])]},proxy:true}],null,false,553359055)})],2):_vm._e(),(_vm.registerSucceed)?_c('AuthPinValidationForm',{key:\"AuthPinValidationForm\",attrs:{\"verificationKey\":_vm.verificationKey,\"email\":_vm.profile.email,\"channelIdOverride\":_vm.channelId},on:{\"callbackAction\":function($event){return _vm.$emit('userRegistered')}}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.mVerificationKey)?_c('div',[_c('div',{staticClass:\"is-4\",class:`title`,domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.AuthPinValidationForm.Main_Title'))}}),_c('div',{staticClass:\"has-margin-bottom\",domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.AuthPinValidationForm.Text_Explanation'))}}),(_vm.pinError)?_c('Message',{staticClass:\"has-margin-bottom\",attrs:{\"type\":'is-danger',\"message\":_vm.$t('Components.AccountControls.AuthPinValidationForm.Message_ErrorPin')}}):_vm._e(),_c('TransitionExpand',[(_vm.newCodeSent)?_c('Message',{staticClass:\"has-margin-bottom\",attrs:{\"type\":'is-success',\"message\":_vm.$t('Components.AccountControls.AuthPinValidationForm.Message_NewPin')}}):_vm._e()],1),_c('input',{staticClass:\"is-hidden\",attrs:{\"name\":\"code\",\"required\":\"\"},domProps:{\"value\":_vm.code}}),_c('div',{class:`level has-margin-bottom input-codes is-mobile`},[_c('div',{class:`level-item`},[_c('input',{ref:\"codePart1\",class:[\n            `input has-text-centered is-fullwidth`,\n            {\n              'is-danger': _vm.pinError || _vm.errorCodeMessage,\n            },\n          ],attrs:{\"type\":\"text\",\"size\":\"2\",\"max\":\"2\",\"maxlength\":\"2\",\"name\":\"codePart1\",\"autocomplete\":\"off\",\"aria-autocomplete\":\"both\"},on:{\"keyup\":_vm.checkCodePart1}})]),_c('div',{class:`level-item`},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'minus']}})],1),_c('div',{class:`level-item`},[_c('input',{ref:\"codePart2\",class:[\n            `input has-text-centered is-fullwidth`,\n            {\n              'is-danger': _vm.pinError || _vm.errorCodeMessage,\n            },\n          ],attrs:{\"type\":\"text\",\"size\":\"2\",\"max\":\"2\",\"maxlength\":\"2\",\"name\":\"codePart2\",\"autocomplete\":\"off\",\"aria-autocomplete\":\"both\"},on:{\"keyup\":_vm.checkCodePart2}})]),_c('div',{class:`level-item`},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'minus']}})],1),_c('div',{class:`level-item`},[_c('input',{ref:\"codePart3\",class:[\n            `input has-text-centered is-fullwidth`,\n            {\n              'is-danger': _vm.pinError || _vm.errorCodeMessage,\n            },\n          ],attrs:{\"type\":\"text\",\"size\":\"2\",\"max\":\"2\",\"maxlength\":\"2\",\"name\":\"codePart3\",\"autocomplete\":\"off\",\"aria-autocomplete\":\"both\"},on:{\"keyup\":_vm.checkCodePart3}})])]),(_vm.errorCodeMessage)?_c('p',[_c('span',{class:`help is-danger`},[_vm._v(\" \"+_vm._s(_vm.errorCodeMessage)+\" \")])]):_vm._e(),_c('div',{class:`level is-mobile`},[_c('div',{class:`level-left`}),_c('div',{class:`level-right`},[_c('div',{class:`level-item`},[_c('button',{class:[\n              `button is-primary`,\n              { 'is-loading': _vm.isProcessing }\n            ],attrs:{\"disabled\":_vm.isProcessing,\"type\":\"button\"},on:{\"click\":_vm.handleSubmit}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.AuthPinValidationForm.Button_Request'))}})])])])]),_c('hr'),_c('div',{staticClass:\"content\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.AuthPinValidationForm.Text_CodenotWorking'))+\" \"),_c('a',{domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.AuthPinValidationForm.Link_CodenotWorking'))},on:{\"click\":_vm.showNewPinRequest}})])],1):_vm._e(),(!_vm.mVerificationKey)?_c('div',[_c('p',{staticClass:\"title is-4\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.AuthPinValidationForm.Header_SendPincode'))+\" \")]),_c('div',{staticClass:\"mb-4\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.AuthPinValidationForm.Message_NoVerificationKey'))+\" \")]),_c('div',{staticClass:\"mb-4\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mEmail),expression:\"mEmail\"}],staticClass:\"input is-rounded is-medium\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mEmail)},on:{\"input\":function($event){if($event.target.composing)return;_vm.mEmail=$event.target.value}}})]),_c('a',{staticClass:\"button is-primary\",class:{ 'is-disabled': !_vm.mEmail, 'is-loading': _vm.isProcessing },attrs:{\"disabled\":!_vm.mEmail},on:{\"click\":_vm.requestNewPin}},[_vm._v(_vm._s(_vm.$t('Components.AccountControls.AuthPinValidationForm.Button_SendNewPin')))])]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <div v-if=\"mVerificationKey\">\n      <div\n        :class=\"`title`\"\n        class=\"is-4 \"\n        v-html=\"$t('Components.AccountControls.AuthPinValidationForm.Main_Title')\"\n      ></div>\n      <div\n        class=\"has-margin-bottom\"\n        v-html=\"$t('Components.AccountControls.AuthPinValidationForm.Text_Explanation')\"\n      ></div>\n      <Message\n        v-if=\"pinError\"\n        :type=\"'is-danger'\"\n        class=\"has-margin-bottom\"\n        :message=\"$t('Components.AccountControls.AuthPinValidationForm.Message_ErrorPin')\"\n      />\n      <TransitionExpand>\n        <Message\n          v-if=\"newCodeSent\"\n          :type=\"'is-success'\"\n          class=\"has-margin-bottom\"\n          :message=\"$t('Components.AccountControls.AuthPinValidationForm.Message_NewPin')\"\n        />\n      </TransitionExpand>\n      <input\n        class=\"is-hidden\"\n        name=\"code\"\n        :value=\"code\"\n        required\n      />\n      <div :class=\"`level has-margin-bottom input-codes is-mobile`\">\n        <div :class=\"`level-item`\">\n          <input\n            type=\"text\"\n            ref=\"codePart1\"\n            @keyup=\"checkCodePart1\"\n            size=\"2\"\n            max=\"2\"\n            maxlength=\"2\"\n            name=\"codePart1\"\n            autocomplete=\"off\"\n            aria-autocomplete=\"both\"\n            :class=\"[\n              `input has-text-centered is-fullwidth`,\n              {\n                'is-danger': pinError || errorCodeMessage,\n              },\n            ]\"\n          />\n        </div>\n        <div :class=\"`level-item`\">\n          <font-awesome-icon :icon=\"['fas', 'minus']\" />\n        </div>\n        <div :class=\"`level-item`\">\n          <input\n            type=\"text\"\n            ref=\"codePart2\"\n            @keyup=\"checkCodePart2\"\n            size=\"2\"\n            max=\"2\"\n            maxlength=\"2\"\n            name=\"codePart2\"\n            autocomplete=\"off\"\n            aria-autocomplete=\"both\"\n            :class=\"[\n              `input has-text-centered is-fullwidth`,\n              {\n                'is-danger': pinError || errorCodeMessage,\n              },\n            ]\"\n          />\n        </div>\n        <div :class=\"`level-item`\">\n          <font-awesome-icon :icon=\"['fas', 'minus']\" />\n        </div>\n        <div :class=\"`level-item`\">\n          <input\n            type=\"text\"\n            ref=\"codePart3\"\n            @keyup=\"checkCodePart3\"\n            size=\"2\"\n            max=\"2\"\n            maxlength=\"2\"\n            name=\"codePart3\"\n            autocomplete=\"off\"\n            aria-autocomplete=\"both\"\n            :class=\"[\n              `input has-text-centered is-fullwidth`,\n              {\n                'is-danger': pinError || errorCodeMessage,\n              },\n            ]\"\n          />\n        </div>\n      </div>\n      <p v-if=\"errorCodeMessage\">\n        <span :class=\"`help is-danger`\">\n          {{ errorCodeMessage }}\n        </span>\n      </p>\n\n      <div :class=\"`level is-mobile`\">\n        <div :class=\"`level-left`\">\n        </div>\n        <div :class=\"`level-right`\">\n          <div :class=\"`level-item`\">\n            <button\n              :class=\"[\n                `button is-primary`,\n                { 'is-loading': isProcessing }\n              ]\"\n              :disabled=\"isProcessing\"\n              type=\"button\"\n              @click=\"handleSubmit\"\n            >\n              <span v-html=\"$t('Components.AccountControls.AuthPinValidationForm.Button_Request')\"></span>\n            </button>\n          </div>\n        </div>\n      </div>\n      <hr />\n      <div class=\"content\">\n        {{ $t('Components.AccountControls.AuthPinValidationForm.Text_CodenotWorking') }}\n        <a\n          @click=\"showNewPinRequest\"\n          v-html=\"$t('Components.AccountControls.AuthPinValidationForm.Link_CodenotWorking')\"\n        ></a>\n      </div>\n    </div>\n\n    <div v-if=\"!mVerificationKey\">\n      <p class=\"title is-4\">\n        {{ $t('Components.AccountControls.AuthPinValidationForm.Header_SendPincode') }}\n      </p>\n\n      <div class=\"mb-4\">\n        {{ $t('Components.AccountControls.AuthPinValidationForm.Message_NoVerificationKey') }}\n      </div>\n\n      <div class=\"mb-4\">\n        <input\n          type=\"text\"\n          v-model=\"mEmail\"\n          class=\"input is-rounded is-medium\"\n        />\n      </div>\n\n      <a\n        @click=\"requestNewPin\"\n        class=\"button is-primary\"\n        :disabled=\"!mEmail\"\n        :class=\"{ 'is-disabled': !mEmail, 'is-loading': isProcessing }\"\n      >{{ $t('Components.AccountControls.AuthPinValidationForm.Button_SendNewPin') }}</a>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapGetters, mapActions } from 'vuex'\nimport Message from '@/components/UI/Message'\nimport profileProvider from '@/providers/profile'\nimport TransitionExpand from '../UI/TransitionExpand.vue';\n\nexport default {\n  name: 'AuthPinValidationForm',\n  components: {\n    Message,\n    TransitionExpand\n  },\n\n  props: {\n    channelIdOverride: {\n      type: Number,\n      default: 0,\n      required: true,\n    },\n    verificationKey: {\n      type: String,\n      required: true\n    },\n    email: {\n      type: String,\n      default: ''\n    }\n  },\n\n  data(vm) {\n    const channelId = (this.channelIdOverride === 0 ? vm.$store.getters['brandChannelId'] : this.channelIdOverride)\n\n    return {\n      isProcessing: false,\n      code: '',\n      errorCodeMessage: '',\n      checkCounter: 0,\n      newCodeSent: false,\n      pinError: false,\n      mVerificationKey: this.verificationKey,\n      messageTimer: null,\n      mEmail: this.email,\n      channelId\n    }\n  },\n\n  computed: {\n  },\n\n  created() { },\n\n  methods: {\n    ...mapActions('authStore', ['loginByPin']),\n    ...mapActions('profileStore', ['saveProfileToken']),\n\n    handleSubmit() {\n      if (this.isProcessing || !this.onCodeValidated()) { return }\n\n      this.isProcessing = true\n      this.pinError = false\n      this.newCodeSent = false\n      this.checkCounter = this.checkCounter + 1\n\n      profileProvider.methods.checkAuthPin({\n        VerificationKey: this.mVerificationKey,\n        Pin: this.code\n      })\n        .then((response) => {\n          if (response.status === 200) {\n            this.$emit('callbackAction', {\n              verifiedSuccess: true\n            })\n\n            this.saveProfileToken(response.data.ProfileToken)\n          } else {\n            this.isProcessing = false\n          }\n        })\n        .catch(() => {\n          this.pinError = true\n          this.isProcessing = false\n        })\n        .finally(() => {\n        })\n    },\n\n    onCodeValidated() {\n      this.errorCodeMessage = ''\n      if (this.code === '' || this.code.length < 6) {\n        this.errorCodeMessage = this.$t('Form.InputErrors.Required')\n        return false\n      }\n      return true\n    },\n\n    checkCodePart1(e) {\n      if (e.target.value.trim() !== '' && e.target.value.length === 2) {\n        this.$refs.codePart2.focus()\n      }\n      this.updateCode()\n    },\n\n    checkCodePart2(e) {\n      if (e.target.value.trim() !== '' && e.target.value.length === 2) {\n        this.$refs.codePart3.focus()\n      }\n      this.updateCode()\n    },\n\n    checkCodePart3() {\n      this.updateCode()\n    },\n\n    updateCode() {\n      let output = ''\n      output += this.$refs.codePart1 ? this.$refs.codePart1.value.trim() : ''\n      output += this.$refs.codePart2 ? this.$refs.codePart2.value.trim() : ''\n      output += this.$refs.codePart3 ? this.$refs.codePart3.value.trim() : ''\n      this.code = output\n      this.onCodeValidated()\n    },\n\n    showNewPinRequest() {\n      this.mVerificationKey = ''\n      this.pinError = ''\n      this.errorCodeMessage = ''\n    },\n\n    requestNewPin() {\n      this.checkCounter = 0\n      this.errorCodeMessage = ''\n\n      if (this.isProcessing) { return }\n\n      this.isProcessing = true\n\n      profileProvider.methods.fetchProfile({\n        FirstName: '',\n        LastName: '',\n        Email: this.mEmail,\n        Language: this.$i18n.locale,\n        ChannelId: this.channelId\n      })\n        .then(response => {\n          this.mVerificationKey = response.data\n          this.newCodeSent = true\n          this.isProcessing = false\n          this.messageTimer && clearTimeout(this.messageTimer)\n          this.messageTimer = setTimeout(() => {\n            this.newCodeSent = false\n            clearTimeout(this.messageTimer)\n          }, 3000);\n        })\n        .catch(() => {\n          this.isProcessing = false\n        })\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuthPinValidationForm.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuthPinValidationForm.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AuthPinValidationForm.vue?vue&type=template&id=fc4396ca\"\nimport script from \"./AuthPinValidationForm.vue?vue&type=script&lang=js\"\nexport * from \"./AuthPinValidationForm.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div>\n    <div v-if=\"!registerSucceed\">\n      <slot name=\"registerTitle\"></slot>\n      <Message\n        class=\"is-danger has-margin-bottom\"\n        :message=\"errorMessage\"\n        v-if=\"errorMessage\"\n      />\n      <BaseInputField\n        v-model=\"profile.firstName\"\n        :label=\"$t(`Components.AccountControls.Register.Label_FirstName`, localeOverride)\"\n        :labelForInput=\"labelForInput\"\n        :error=\"firstNameErrors.toString()\"\n        @input=\"delayTouch($v.profile.firstName)\"\n        @blur=\"$v.profile.firstName.$touch()\"\n        required\n      />\n      <BaseInputField\n        v-model=\"profile.lastName\"\n        :label=\"$t(`Components.AccountControls.Register.Label_LastName`, localeOverride)\"\n        :labelForInput=\"labelForInput\"\n        :error=\"lastNameErrors.toString()\"\n        @input=\"$v.profile.lastName.$touch()\"\n        @blur=\"$v.profile.lastName.$touch()\"\n        required\n      />\n      <BaseInputField\n        v-if=\"!hidePhoneField\"\n        v-model=\"profile.phone\"\n        :label=\"$t(`Components.AccountControls.Register.Label_Phone`, localeOverride)\"\n        :labelForInput=\"labelForInput\"\n        error=\"\"\n        :required=\"false\"\n      />\n      <BaseInputField\n        v-model=\"profile.email\"\n        :label=\"$t(`Components.AccountControls.Register.Label_Email`, localeOverride)\"\n        :labelForInput=\"labelForInput\"\n        :error=\"emailErrors.toString()\"\n        :onKeyUpEnter=\"save\"\n        @input=\"\n        () => {\n          emailAlreadyExists = false\n          delayTouch($v.profile.email)\n        }\n      \"\n        @blur=\"$v.profile.email.$touch()\"\n        required\n      />\n      <BaseInputField\n        v-if=\"!hidePasswordField\"\n        v-model=\"profile.password\"\n        :labelForInput=\"labelForInput\"\n        :error=\"passwordErrors\"\n        :label=\"$t('Components.AccountControls.Register.Label_Password', localeOverride)\"\n        :onKeyUpEnter=\"save\"\n        fieldType=\"password\"\n        @input=\"$v.profile.password.$touch()\"\n        @blur=\"$v.profile.password.$touch()\"\n        required\n      />\n\n      <ui-base-field-template\n        v-if=\"false\"\n        :label=\"\n        this.$t(\n          `Components.AccountControls.Register.Label_SendUserRegisterMail`\n        )\n      \"\n        :required=\"false\"\n      >\n        <template v-slot:fields>\n          <BaseCheckbox\n            label=\"\"\n            v-model=\"sendRegistrationMail\"\n          />\n        </template>\n      </ui-base-field-template>\n\n      <BaseFieldTemplate\n        :labelForInput=\"labelForInput\"\n        :required=\"false\"\n      >\n        <template v-slot:fields>\n          <div class=\"level has-margin-top\">\n            <div class=\"level-left\">\n              <a\n                v-if=\"showBackButton\"\n                class=\"has-icon\"\n                @click=\"backFunc\"\n              >\n                <span class=\"icon\">\n                  <font-awesome-icon :icon=\"['fas', 'angle-left']\" />\n                </span>\n                <span\n                  class=\"has-icon\"\n                  v-html=\"$t('Form.Control.Back', localeOverride)\"\n                ></span>\n              </a>\n            </div>\n            <div class=\"level-right\">\n              <button\n                class=\"button is-primary\"\n                @click=\"save\"\n                :class=\"{ 'is-loading': isSaving || isCheckinEmail }\"\n                :disabled=\"Boolean($v.$error) || isCheckinEmail\"\n                v-html=\"labelbuttonRegister\"\n              ></button>\n            </div>\n          </div>\n        </template>\n      </BaseFieldTemplate>\n    </div>\n    <AuthPinValidationForm\n      v-if=\"registerSucceed\"\n      key=\"AuthPinValidationForm\"\n      :verificationKey=\"verificationKey\"\n      :email=\"profile.email\"\n      :channelIdOverride=\"channelId\"\n      @callbackAction=\"$emit('userRegistered')\"\n    />\n  </div>\n</template>\n\n<script>\nimport BaseFieldTemplate from '@/components/UI/Form/BaseFieldTemplate.vue'\nimport BaseCheckbox from '@/components/UI/Form/BaseCheckbox.vue'\nimport BaseInputField from '@/components/UI/Form/BaseInputField.vue'\nimport Message from '@/components/UI/Message.vue'\n\nimport profileProvider from '@/providers/profile'\nimport encryptString from '@/mixins/encryptString'\nimport { required, email, isUnique, minLength } from 'vuelidate/lib/validators'\nimport { mapGetters } from 'vuex'\nimport AuthPinValidationForm from './AuthPinValidationForm.vue'\nconst touchMap = new WeakMap()\n\nexport default {\n  name: 'register',\n\n  components: {\n    BaseCheckbox,\n    BaseFieldTemplate,\n    BaseInputField,\n    Message,\n    AuthPinValidationForm\n  },\n\n  inject: {\n    localeOverride: {\n      type: String,\n      default: function() {\n        return this.$i18n.locale\n      }\n    }\n  },\n\n  props: {\n    channelIdOverride: {\n      type: Number,\n      default: 0,\n    },\n\n    locationId: {\n      type: Number,\n      default: 0,\n    },\n\n    labelForInput: {\n      type: Boolean,\n      default: true,\n    },\n\n    hidePasswordField: {\n      type: Boolean,\n      default: false,\n    },\n\n    hidePhoneField: {\n      type: Boolean,\n      default: true,\n    },\n\n    isBackend: {\n      type: Boolean,\n      default: false,\n    },\n\n    registerType: {\n      type: Number,\n      default: 0,\n    },\n\n    typeId: {\n      type: Number,\n      default: 0,\n    },\n\n    labelbuttonRegister: {\n      type: String,\n      default: function() {\n        return this.$t(`Components.AccountControls.Register.Button_Register`, this.localeOverride)\n      },\n    },\n    showBackButton: {\n      type: Boolean,\n      default: true,\n    },\n    backFunc: {\n      type: Function,\n      default: () => { },\n    },\n  },\n\n  mixins: [encryptString],\n\n  data(vm) {\n    const channelId = (this.channelIdOverride === 0 ? vm.$store.getters['brandChannelId'] : this.channelIdOverride)\n\n    return {\n      firstName: '',\n      isCheckinEmail: false,\n      isSaving: false,\n      errorMessage: '',\n      profileCheckTimeout: null,\n      emailAlreadyExists: false,\n      terms: { Id: 0 },\n      profile: {\n        firstName: '',\n        lastName: '',\n        email: '',\n        phone: '',\n        password: '',\n        sendConfirmMail: this.isBackend,\n      },\n      registerSucceed: false,\n      verificationKey: '',\n      sendRegistrationMail: !this.isBackend,\n      channelId\n    }\n  },\n\n  /**\n   * Form validation rules\n   */\n  validations() {\n    let output = {\n      firstName: {\n        required,\n        minLength: minLength(2),\n      },\n      lastName: {\n        required,\n        minLength: minLength(2),\n      },\n      email: {\n        required,\n        email,\n      },\n    }\n    if (!this.hidePasswordField) {\n      output.password = {\n        required,\n        minLength: minLength(8),\n      }\n    }\n\n    return {\n      profile: output,\n    }\n  },\n\n  computed: {\n    ...mapGetters(['brandChannelId']),\n    firstNameErrors() {\n      const errors = []\n      if (!this.$v.profile.firstName.$dirty) return errors\n      !this.$v.profile.firstName.required &&\n        errors.push(this.$t('Form.InputErrors.Required', this.localeOverride))\n      !this.$v.profile.firstName.minLength &&\n        errors.push(this.$t('Form.InputErrors.minLength', { minLength: 2 }))\n      return errors\n    },\n    lastNameErrors() {\n      const errors = []\n      if (!this.$v.profile.lastName.$dirty) return errors\n      !this.$v.profile.lastName.required &&\n        errors.push(this.$t('Form.InputErrors.Required', this.localeOverride))\n      return errors\n    },\n    emailErrors() {\n      const errors = []\n      if (!this.$v.profile.email.$dirty) return errors\n      if (!this.$v.profile.email.required) {\n        errors.push(this.$t('Form.InputErrors.Required', this.localeOverride))\n      } else if (!this.$v.profile.email.email) {\n        errors.push(this.$t('Form.InputErrors.InvalidEmail', this.localeOverride))\n      } else if (this.emailAlreadyExists) {\n        errors.push(this.$t('Form.InputErrors.EmailExists', this.localeOverride))\n      }\n      return errors\n    },\n\n    passwordErrors() {\n      const errors = []\n      if (!this.$v.profile.password.$dirty) return errors\n      if (!this.$v.profile.password.required) {\n        errors.push(\n          this.$t('Form.InputErrors.RequiredField', {\n            fieldLabel: this.$t(\n              'Components.AccountControls.Register.Label_Password'\n            ),\n          })\n        )\n      }\n      if (!this.$v.profile.password.minLength) {\n        errors.push(this.$t('Form.InputErrors.minLength', { minLength: 8 }))\n      }\n      if (!/(?=.*[a-z])/.test(this.profile.password)) {\n        errors.push(this.$t('Form.InputErrors.lowercaseCharacter', this.localeOverride))\n      }\n      if (!/(?=.*[A-Z])/.test(this.profile.password)) {\n        errors.push(this.$t('Form.InputErrors.uppercaseCharacter', this.localeOverride))\n      }\n      if (!/(?=.*\\d)/.test(this.profile.password)) {\n        errors.push(this.$t('Form.InputErrors.numberCharacter', this.localeOverride))\n      }\n      return errors\n    },\n  },\n\n  async created() { },\n\n  methods: {\n    delayTouch($v) {\n      $v.$reset()\n      if (touchMap.has($v)) {\n        clearTimeout(touchMap.get($v))\n      }\n      touchMap.set($v, setTimeout($v.$touch, 1000))\n    },\n\n    async save() {\n      this.errorMessage = ''\n      this.emailAlreadyExists = false\n      if (!this.isSaving) {\n        this.isSaving = true\n        this.$v.$touch()\n        if (this.$v.$invalid) {\n          this.isSaving = false\n        } else {\n          let encryptedPassword = this.encryptPassword(this.profile.password)\n\n          await profileProvider.methods\n            .createProfile({\n              FirstName: this.profile.firstName,\n              LastName: this.profile.lastName,\n              Email: this.profile.email,\n              Phone: this.profile.phone,\n              Password: encryptedPassword,\n              ChannelId: this.channelId,\n              LocationId: this.locationId,\n              TermsId: this.terms.Id,\n              IsBackend: !this.sendRegistrationMail,\n              RegisterType: this.registerType,\n              TypeId: this.typeId,\n            })\n            .then((response) => {\n              if (response.data.StatusCode === 200) {\n                let data = response.data\n                data.Profile = this.profile;\n                this.verificationKey = data.VerificationKey\n                this.registerSucceed = true\n\n                this.$emit('nextAction', data)\n              } else {\n                this.errorMessage = this.$t(\n                  'Components.AccountControls.Register.Message_ErrorCode501'\n                )\n              }\n            })\n            .catch((e) => {\n              if (\n                e.response &&\n                (e.response.status === 403 || e.response.status === 409)\n              ) {\n                this.emailAlreadyExists = true\n              }\n              this.errorMessage = this.$t(\n                'Components.AccountControls.Register.Message_ErrorCode500'\n              )\n              this.isSaving = false\n            })\n        }\n      }\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Register.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Register.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Register.vue?vue&type=template&id=4b1f2b1c\"\nimport script from \"./Register.vue?vue&type=script&lang=js\"\nexport * from \"./Register.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar intersection = require('../internals/set-intersection');\nvar setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');\n\nvar INCORRECT = !setMethodAcceptSetLike('intersection', function (result) {\n  return result.size === 2 && result.has(1) && result.has(2);\n}) || fails(function () {\n  // eslint-disable-next-line es/no-array-from, es/no-set, es/no-set-prototype-intersection -- testing\n  return String(Array.from(new Set([1, 2, 3]).intersection(new Set([3, 2])))) !== '3,2';\n});\n\n// `Set.prototype.intersection` method\n// https://tc39.es/ecma262/#sec-set.prototype.intersection\n$({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {\n  intersection: intersection\n});\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Terms.vue?vue&type=style&index=0&id=62804aa0&prod&scoped=true&lang=scss\"","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar call = require('../internals/function-call');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar getIteratorDirect = require('../internals/get-iterator-direct');\n\nvar INVALID_SIZE = 'Invalid size';\nvar $RangeError = RangeError;\nvar $TypeError = TypeError;\nvar max = Math.max;\n\nvar SetRecord = function (set, intSize) {\n  this.set = set;\n  this.size = max(intSize, 0);\n  this.has = aCallable(set.has);\n  this.keys = aCallable(set.keys);\n};\n\nSetRecord.prototype = {\n  getIterator: function () {\n    return getIteratorDirect(anObject(call(this.keys, this.set)));\n  },\n  includes: function (it) {\n    return call(this.has, this.set, it);\n  }\n};\n\n// `GetSetRecord` abstract operation\n// https://tc39.es/proposal-set-methods/#sec-getsetrecord\nmodule.exports = function (obj) {\n  anObject(obj);\n  var numSize = +obj.size;\n  // NOTE: If size is undefined, then numSize will be NaN\n  // eslint-disable-next-line no-self-compare -- NaN check\n  if (numSize !== numSize) throw new $TypeError(INVALID_SIZE);\n  var intSize = toIntegerOrInfinity(numSize);\n  if (intSize < 0) throw new $RangeError(INVALID_SIZE);\n  return new SetRecord(obj, intSize);\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"title is-4\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationCheckIns.Main_Title')))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ReservationCheckins.vue?vue&type=template&id=45175c4c\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showAddContact)?_c('add-contact',{attrs:{\"showModal\":_vm.showAddContact,\"isLocked\":_vm.isLocked,\"isEmployee\":_vm.isEmployee,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showEditContact)?_c('edit-contact',{attrs:{\"showModal\":_vm.showEditContact,\"isLocked\":_vm.isLocked,\"isEmployee\":_vm.isEmployee,\"contact\":_vm.selectedContact,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showDeleteContact)?_c('delete-contact',{attrs:{\"showModal\":_vm.showDeleteContact,\"isLocked\":_vm.isLocked,\"isEmployee\":_vm.isEmployee,\"contact\":_vm.selectedContact,\"onClickCancel\":_vm.hideModal}}):_vm._e(),_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationContacts.Header_Title')))]},proxy:true}])}),_c('div',{staticClass:\"actionBar has-padding mb-6\",staticStyle:{\"border-bottom\":\"1px solid #e5e5e5\"}},[_c('div',{staticClass:\"level\"},[_c('div',{staticClass:\"level-left\"}),_c('div',{staticClass:\"level-right\"},[_c('a',{staticClass:\"has-icon\",on:{\"click\":_vm.setShowAddContact}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'plus']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationContacts.Link_AddContact')))])])])])]),_c('table',{staticClass:\"table is-fullwidth is-striped\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationContacts.Label_Type'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationContacts.Label_Name'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationContacts.Label_Email'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationContacts.Label_Phone'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ReservationContacts.Label_ReceiveEmail' ))+\" \")]),_c('th',[_vm._v(\" \")])])]),_c('tbody',_vm._l((_vm.reservation.Contacts),function(contact,index){return _c('tr',{key:index},[_c('td',[_vm._v(_vm._s(_vm.getContactTypeName(contact.Type)))]),_c('td',[_vm._v(_vm._s(contact.Name))]),_c('td',[_vm._v(_vm._s(contact.Email))]),_c('td',[_vm._v(_vm._s(contact.Phone))]),_c('td',[_c('span',{staticClass:\"icon\"},[(contact.ReceiveEmail)?_c('font-awesome-icon',{staticClass:\"has-text-success\",attrs:{\"icon\":['fas', 'check']}}):_vm._e(),(!contact.ReceiveEmail)?_c('font-awesome-icon',{staticClass:\"has-text-danger\",attrs:{\"icon\":['fas', 'times']}}):_vm._e()],1)]),_c('td',{attrs:{\"width\":\"75\"}},[_c('div',{staticClass:\"field is-grouped has-text-right\"},[_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.setShowEditContact(contact)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)])]),_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.setShowDeleteContact(contact)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{staticStyle:{\"color\":\"red\"},attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])])])])}),0)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservation.ModalAddContact.Header_Title'),\"disableSaveButton\":_vm.isNameEmpty,\"isSaving\":_vm.isSaving,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.addContact,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.newContact.Type === 'Booker' && _vm.hasBooker)?_c('div',{attrs:{\"ckass\":\"has_margin-bottom\"}},[_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ModalAddContact.Warning_Booker'),\"type\":'is-warning'}})],1):_vm._e(),_c('table',{staticClass:\"table is-fullwidth is-striped\"},[_c('tbody',[_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddContact.Label_Type'))+\" \")]),_c('td',[_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newContact.Type),expression:\"newContact.Type\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.newContact, \"Type\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},_vm._l((_vm.contactTypes),function(contactType,index){return _c('option',{key:index,domProps:{\"value\":contactType.Type,\"selected\":contactType.Type === _vm.newContact.Type}},[_vm._v(_vm._s(contactType.Name))])}),0)])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddContact.Label_Name'))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newContact.Name),expression:\"newContact.Name\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.newContact.Name)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.newContact, \"Name\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddContact.Label_Email'))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newContact.Email),expression:\"newContact.Email\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.newContact.Email)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.newContact, \"Email\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddContact.Label_Phone'))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newContact.Phone),expression:\"newContact.Phone\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.newContact.Phone)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.newContact, \"Phone\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalAddContact.Label_ReceiveEmail'))+\" \")]),_c('td',[_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:{ 'is-active': _vm.newContact.ReceiveEmail }},[_c('a',{on:{\"click\":function($event){_vm.newContact.ReceiveEmail = true}}},[_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalAddContact.Label_Yes')))])])]),_c('li',{class:{ 'is-active': !_vm.newContact.ReceiveEmail }},[_c('a',{on:{\"click\":function($event){_vm.newContact.ReceiveEmail = false}}},[_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalAddContact.Label_No')))])])])])])])]),(_vm.reservation.ReservationSet.length > 0)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_ChangeAllInSet' ))+\" \")]),_c('td',[_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:{\n                    'is-active': _vm.newContact.ChangeAllInSet === false,\n                  }},[_c('a',{on:{\"click\":function($event){_vm.newContact.ChangeAllInSet = false}}},[_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_No' )))])])]),_c('li',{class:{ 'is-active': _vm.newContact.ChangeAllInSet === true }},[_c('a',{on:{\"click\":function($event){_vm.newContact.ChangeAllInSet = true}}},[_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_Yes' )))])])])])])])]):_vm._e()])])]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"$t('Components.Reservation.ModalAddContact.Header_Title')\"\n    :disableSaveButton=\"isNameEmpty\"\n    :isSaving=\"isSaving\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"addContact\"\n    :showModal=\"showModal\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div v-if=\"newContact.Type === 'Booker' && hasBooker\" ckass=\"has_margin-bottom\">\n        <Message\n          :message=\"$t('Components.Reservation.ModalAddContact.Warning_Booker')\"\n          :type=\"'is-warning'\"\n        />\n      </div>\n\n      <table class=\"table is-fullwidth is-striped\">\n        <tbody>\n          <tr>\n            <td>\n              {{ $t('Components.Reservation.ModalAddContact.Label_Type') }}\n            </td>\n            <td>\n              <div class=\"select\">\n                <select v-model=\"newContact.Type\">\n                  <option\n                    v-for=\"(contactType, index) in contactTypes\"\n                    :key=\"index\"\n                    :value=\"contactType.Type\"\n                    :selected=\"contactType.Type === newContact.Type\"\n                  >{{ contactType.Name }}</option>\n                </select>\n              </div>\n            </td>\n          </tr>\n          <tr>\n            <td>\n              {{ $t('Components.Reservation.ModalAddContact.Label_Name') }}\n            </td>\n            <td>\n              <input\n                type=\"text\"\n                class=\"input\"\n                v-model=\"newContact.Name\"\n              />\n            </td>\n          </tr>\n          <tr>\n            <td>\n              {{ $t('Components.Reservation.ModalAddContact.Label_Email') }}\n            </td>\n            <td>\n              <input\n                type=\"text\"\n                class=\"input\"\n                v-model=\"newContact.Email\"\n              />\n            </td>\n          </tr>\n          <tr>\n            <td>\n              {{ $t('Components.Reservation.ModalAddContact.Label_Phone') }}\n            </td>\n            <td>\n              <input\n                type=\"text\"\n                class=\"input\"\n                v-model=\"newContact.Phone\"\n              />\n            </td>\n          </tr>\n          <tr>\n            <td>\n              {{\n                $t('Components.Reservation.ModalAddContact.Label_ReceiveEmail')\n              }}\n            </td>\n            <td>\n              <div class=\"tabs is-toggle is-small\">\n                <ul>\n                  <li :class=\"{ 'is-active': newContact.ReceiveEmail }\">\n                    <a @click=\"newContact.ReceiveEmail = true\">\n                      <span>{{\n                        $t('Components.Reservation.ModalAddContact.Label_Yes')\n                      }}</span>\n                    </a>\n                  </li>\n                  <li :class=\"{ 'is-active': !newContact.ReceiveEmail }\">\n                    <a @click=\"newContact.ReceiveEmail = false\">\n                      <span>{{\n                        $t('Components.Reservation.ModalAddContact.Label_No')\n                      }}</span>\n                    </a>\n                  </li>\n                </ul>\n              </div>\n            </td>\n          </tr>\n          <tr v-if=\"reservation.ReservationSet.length > 0\">\n            <td>\n              {{\n                $t(\n                  'Components.Reservation.ModalEditInvoiceAddress.Label_ChangeAllInSet'\n                )\n              }}\n            </td>\n            <td>\n              <div class=\"tabs is-toggle is-small\">\n                <ul>\n                  <li :class=\"{\n                      'is-active': newContact.ChangeAllInSet === false,\n                    }\">\n                    <a @click=\"newContact.ChangeAllInSet = false\">\n                      <span>{{\n                        $t(\n                          'Components.Reservation.ModalEditInvoiceAddress.Label_No'\n                        )\n                      }}</span>\n                    </a>\n                  </li>\n                  <li :class=\"{ 'is-active': newContact.ChangeAllInSet === true }\">\n                    <a @click=\"newContact.ChangeAllInSet = true\">\n                      <span>{{\n                        $t(\n                          'Components.Reservation.ModalEditInvoiceAddress.Label_Yes'\n                        )\n                      }}</span>\n                    </a>\n                  </li>\n                </ul>\n              </div>\n            </td>\n          </tr>\n        </tbody>\n      </table>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  components: {\n    Message: () => import('@/components/UI/Message'),\n  },\n  \n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n  },\n\n  data() {\n    return {\n      contactTypes: [],\n      isSaving: false,\n      isSavingError: false,\n      newContact: {\n        Type: 'Booker',\n        Name: '',\n        Email: '',\n        Phone: '',\n        ReceiveEmail: true,\n        ChangeAllInSet: false,\n      },\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n\n    isNameEmpty() {\n      return this.newContact.Name.length === 0\n    },\n\n    hasBooker() {\n      let bookerCount = 0;\n\n      if (this.reservation && this.reservation.Contacts) {\n        bookerCount = this.reservation.Contacts.length;\n      }\n\n      return bookerCount > 0;\n    }\n  },\n\n  created() {\n    this.contactTypes.push({\n      TypeId: 0,\n      Type: 'Booker',\n      Name: this.$t('Components.Reservation.ModalAddContact.Type_Booker'),\n    })\n    this.contactTypes.push({\n      TypeId: 1,\n      Type: 'DuringEvent',\n      Name: this.$t('Components.Reservation.ModalAddContact.Type_DuringEvent'),\n    })\n    this.contactTypes.push({\n      TypeId: 2,\n      Type: 'Trainer',\n      Name: this.$t('Components.Reservation.ModalAddContact.Type_Trainer'),\n    })\n    this.contactTypes.push({\n      TypeId: 3,\n      Type: 'Speaker',\n      Name: this.$t('Components.Reservation.ModalAddContact.Type_Speaker'),\n    })\n    this.contactTypes.push({\n      TypeId: 5,\n      Type: 'Host',\n      Name: this.$t('Components.Reservation.ModalAddContact.Type_Host'),\n    })\n    this.contactTypes.push({\n      TypeId: 4,\n      Type: 'Invoice',\n      Name: this.$t('Components.Reservation.ModalAddContact.Type_Invoice'),\n    })\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    addContact() {\n      let self = this\n      self.isSaving = true\n\n      let reservation = JSON.parse(JSON.stringify(self.reservation))\n\n      reservationProvider.methods\n        .addReservationContact(self.reservation.Key, self.newContact)\n        .then((response) => {\n          if (response.status === 200) {\n            self.setReservation(response.data)\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message:\n                self.newContact.Name + this.$t('Components.Reservation.ModalAddContact.Toast_ContactAdded'),\n            })\n\n            this.onClickCancel()\n          }\n        })\n        .catch((error) => {\n          self.isSavingError = true\n        })\n        .finally(() => {\n          self.isSaving = false\n        })\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalAddContact.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalAddContact.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalAddContact.vue?vue&type=template&id=7726425d\"\nimport script from \"./ModalAddContact.vue?vue&type=script&lang=js\"\nexport * from \"./ModalAddContact.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservation.ModalEditContact.Header_Title'),\"isSaving\":_vm.isSaving,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.saveContact,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('table',{staticClass:\"table is-fullwidth is-striped\"},[_c('tbody',[_c('tr',[_c('td',{staticClass:\"aligned\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditContact.Label_Type'))+\" \")]),_c('td',[_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mContact.Type),expression:\"mContact.Type\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mContact, \"Type\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},_vm._l((_vm.contactTypes),function(contactType,index){return _c('option',{key:index,domProps:{\"value\":contactType.Type,\"selected\":contactType.Type === _vm.mContact.Type}},[_vm._v(\" \"+_vm._s(contactType.Name)+\" \")])}),0)])])]),_c('tr',[_c('td',{staticClass:\"aligned\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditContact.Label_Name'))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mContact.Name),expression:\"mContact.Name\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mContact.Name)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mContact, \"Name\", $event.target.value)}}})])]),_c('tr',[_c('td',{staticClass:\"aligned\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditContact.Label_Email'))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mContact.Email),expression:\"mContact.Email\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mContact.Email)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mContact, \"Email\", $event.target.value)}}})])]),_c('tr',[_c('td',{staticClass:\"aligned\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditContact.Label_Phone'))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mContact.Phone),expression:\"mContact.Phone\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mContact.Phone)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mContact, \"Phone\", $event.target.value)}}})])]),_c('tr',[_c('td',{staticClass:\"aligned\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalEditContact.Label_ReceiveEmail'))+\" \")]),_c('td',[_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:{ 'is-active': !_vm.mContact.ReceiveEmail }},[_c('a',{on:{\"click\":function($event){_vm.mContact.ReceiveEmail = false}}},[_c('span',[_vm._v(_vm._s(_vm.$t('General.No')))])])]),_c('li',{class:{ 'is-active': _vm.mContact.ReceiveEmail }},[_c('a',{on:{\"click\":function($event){_vm.mContact.ReceiveEmail = true}}},[_c('span',[_vm._v(_vm._s(_vm.$t('General.Yes')))])])])])])])]),(_vm.reservation.ReservationSet.length > 0)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_ChangeAllInSet' ))+\" \")]),_c('td',[_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:{'is-active': _vm.changeAllInSet === false,}},[_c('a',{on:{\"click\":function($event){_vm.changeAllInSet = false}}},[_c('span',[_vm._v(_vm._s(_vm.$t( 'General.No' )))])])]),_c('li',{class:{ 'is-active': _vm.changeAllInSet === true }},[_c('a',{on:{\"click\":function($event){_vm.changeAllInSet = true}}},[_c('span',[_vm._v(_vm._s(_vm.$t( 'General.Yes' )))])])])])])])]):_vm._e()])])]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"$t('Components.Reservation.ModalEditContact.Header_Title')\"\n    :isSaving=\"isSaving\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"saveContact\"\n    :showModal=\"showModal\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <table class=\"table is-fullwidth is-striped\">\n        <tbody>\n          <tr>\n            <td class=\"aligned\">\n              {{ $t('Components.Reservation.ModalEditContact.Label_Type') }}\n            </td>\n            <td>\n              <div class=\"select\">\n                <select v-model=\"mContact.Type\">\n                  <option\n                    v-for=\"(contactType, index) in contactTypes\"\n                    :key=\"index\"\n                    :value=\"contactType.Type\"\n                    :selected=\"contactType.Type === mContact.Type\"\n                  >\n                    {{ contactType.Name }}\n                  </option>\n                </select>\n              </div>\n            </td>\n          </tr>\n          <tr>\n            <td class=\"aligned\">\n              {{ $t('Components.Reservation.ModalEditContact.Label_Name') }}\n            </td>\n            <td>\n              <input type=\"text\" class=\"input\" v-model=\"mContact.Name\" />\n            </td>\n          </tr>\n          <tr>\n            <td class=\"aligned\">\n              {{ $t('Components.Reservation.ModalEditContact.Label_Email') }}\n            </td>\n            <td>\n              <input type=\"text\" class=\"input\" v-model=\"mContact.Email\" />\n            </td>\n          </tr>\n          <tr>\n            <td class=\"aligned\">\n              {{ $t('Components.Reservation.ModalEditContact.Label_Phone') }}\n            </td>\n            <td>\n              <input type=\"text\" class=\"input\" v-model=\"mContact.Phone\" />\n            </td>\n          </tr>\n          <tr>\n            <td class=\"aligned\">\n              {{\n                $t('Components.Reservation.ModalEditContact.Label_ReceiveEmail')\n              }}\n            </td>\n            <td>\n              <div class=\"tabs is-toggle is-small\">\n                <ul>\n                  \n                  <li :class=\"{ 'is-active': !mContact.ReceiveEmail }\">\n                    <a @click=\"mContact.ReceiveEmail = false\">\n                      <span>{{\n                        $t('General.No')\n                      }}</span>\n                    </a>\n                  </li>\n                  <li :class=\"{ 'is-active': mContact.ReceiveEmail }\">\n                    <a @click=\"mContact.ReceiveEmail = true\">\n                      <span>{{\n                        $t('General.Yes')\n                      }}</span>\n                    </a>\n                  </li>\n                  \n                </ul>\n              </div>\n            </td>\n          </tr>\n\n          <tr v-if=\"reservation.ReservationSet.length > 0\">\n            <td>\n              {{\n                $t(\n                  'Components.Reservation.ModalEditInvoiceAddress.Label_ChangeAllInSet'\n                )\n              }}\n            </td>\n            <td>\n              <div class=\"tabs is-toggle is-small\">\n                <ul>\n\n                  <li :class=\"{'is-active': changeAllInSet === false,}\">\n                    <a @click=\"changeAllInSet = false\">\n                      <span>{{\n                        $t(\n                          'General.No'\n                        )\n                      }}</span>\n                    </a>\n                  </li>\n                  <li :class=\"{ 'is-active': changeAllInSet === true }\">\n                    <a @click=\"changeAllInSet = true\">\n                      <span>{{\n                        $t(\n                          'General.Yes'\n                        )\n                      }}</span>\n                    </a>\n                  </li>\n                  \n                </ul>\n              </div>\n            </td>\n          </tr>\n        </tbody>\n      </table>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  props: {\n    contact: null,\n\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n  },\n\n  data() {\n    return {\n      contactTypes: [],\n      isSaving: false,\n      isSavingError: false,\n      mContact: this.contact,\n      changeAllInSet: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  created() {\n    this.mContact = JSON.parse(JSON.stringify(this.contact))\n\n    this.contactTypes.push({\n      TypeId: 0,\n      Type: 'Booker',\n      Name: this.$t('Components.Reservation.ModalEditContact.Type_Booker'),\n    })\n    this.contactTypes.push({\n      TypeId: 1,\n      Type: 'DuringEvent',\n      Name: this.$t('Components.Reservation.ModalEditContact.Type_DuringEvent'),\n    })\n    this.contactTypes.push({\n      TypeId: 2,\n      Type: 'Trainer',\n      Name: this.$t('Components.Reservation.ModalEditContact.Type_Trainer'),\n    })\n    this.contactTypes.push({\n      TypeId: 3,\n      Type: 'Speaker',\n      Name: this.$t('Components.Reservation.ModalEditContact.Type_Speaker'),\n    })\n    this.contactTypes.push({\n      TypeId: 5,\n      Type: 'Host',\n      Name: this.$t('Components.Reservation.ModalEditContact.Type_Host'),\n    })\n    this.contactTypes.push({\n      TypeId: 4,\n      Type: 'Invoice',\n      Name: this.$t('Components.Reservation.ModalAddContact.Type_Invoice'),\n    })\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    saveContact() {\n      let self = this\n      self.isSaving = true\n\n      reservationProvider.methods\n        .updateReservationContact(\n          self.reservation.Key,\n          self.contact.Id,\n          self.mContact,\n          self.changeAllInSet\n        )\n        .then((response) => {\n          if (response.status === 200) {\n            let contactIndex = self.reservation.Contacts.findIndex(\n              (c) => c.Id === self.contact.Id\n            )\n            if (contactIndex > -1) {\n              let reservation = JSON.parse(JSON.stringify(self.reservation))\n              Vue.set(reservation.Contacts, contactIndex, self.mContact)\n              self.setReservation(reservation)\n            }\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message:\n                self.contact.Name +\n                this.$t(\n                  'Components.Reservation.ModalEditContact.Toast_IsUpdated'\n                ),\n            })\n\n            self.onClickCancel()\n          }\n        })\n        .catch((error) => {\n          self.isSavingError = true\n        })\n        .finally(() => {\n          self.isSaving = false\n        })\n    },\n  },\n}\n</script>\n<style lang=\"scss\" scoped>\n.aligned {\n  vertical-align: middle;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalEditContact.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalEditContact.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalEditContact.vue?vue&type=template&id=0e076ac7&scoped=true\"\nimport script from \"./ModalEditContact.vue?vue&type=script&lang=js\"\nexport * from \"./ModalEditContact.vue?vue&type=script&lang=js\"\nimport style0 from \"./ModalEditContact.vue?vue&type=style&index=0&id=0e076ac7&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"0e076ac7\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservation.ModalDeleteContact.Header_Title'),\"confirmButtonCssClass\":\"is-danger\",\"buttonLabelConfirm\":_vm.$t('Form.Control.Delete'),\"isSaving\":_vm.isDeleting,\"isSavingError\":_vm.isDeletingError,\"hideFooterButtons\":_vm.isDeletingError,\"disableSaveButton\":!_vm.isDeleteConfirmed,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.deleteContact,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',[_c('div',{staticClass:\"has-margin-bottom is-size-5 has-text-centered\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalDeleteContact.Text_AreYouSure1'))+\" \"),_c('b',[_vm._v(_vm._s(_vm.contact.Name))]),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalDeleteContact.Text_AreYouSure2'))+\" \")]),_c('div',{staticClass:\"has-text-centered\"},[_c('BaseCheckbox',{staticClass:\"has-text-left\",attrs:{\"label\":_vm.$t('Components.Options.ModalDeleteOption.Text_YesSure')},model:{value:(_vm.isDeleteConfirmed),callback:function ($$v) {_vm.isDeleteConfirmed=$$v},expression:\"isDeleteConfirmed\"}})],1)])]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"$t('Components.Reservation.ModalDeleteContact.Header_Title')\"\n    confirmButtonCssClass=\"is-danger\"\n    :buttonLabelConfirm=\"$t('Form.Control.Delete')\"\n    :isSaving=\"isDeleting\"\n    :isSavingError=\"isDeletingError\"\n    :hideFooterButtons=\"isDeletingError\"\n    :disableSaveButton=\"!isDeleteConfirmed\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"deleteContact\"\n    :showModal=\"showModal\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div>\n        <div class=\"has-margin-bottom is-size-5 has-text-centered\">\n          {{ $t('Components.Reservation.ModalDeleteContact.Text_AreYouSure1') }}\n          <b>{{ contact.Name }}</b>\n          {{ $t('Components.Reservation.ModalDeleteContact.Text_AreYouSure2') }}\n        </div>\n        <div class=\"has-text-centered\">\n          <BaseCheckbox\n            v-model=\"isDeleteConfirmed\"\n            class=\"has-text-left\"\n            :label=\"$t('Components.Options.ModalDeleteOption.Text_YesSure')\"\n          />\n        </div>\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\n\nconst BaseCheckbox = () =>\n  import(\n    /* webpackChunkName: \"settings-options\" */ '@/components/UI/Form/BaseCheckbox'\n  )\n\nexport default {\n  components: {\n    BaseCheckbox,\n  },\n\n  props: {\n    contact: null,\n\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n  },\n\n  data() {\n    return {\n      isDeleteConfirmed: false,\n      isDeleting: false,\n      isDeletingError: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  created() { },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    deleteContact() {\n      let self = this\n      self.isDeleting = true\n\n      reservationProvider.methods\n        .deleteReservationContact(self.reservation.Key, self.contact.Id)\n        .then((response) => {\n          if (response.status === 200 || response.status === 204) {\n            let contactIndex = self.reservation.Contacts.findIndex(\n              (c) => c.Id === self.contact.Id\n            )\n            if (contactIndex > -1) {\n              let reservation = JSON.parse(JSON.stringify(self.reservation))\n              reservation.Contacts.splice(contactIndex, 1)\n              self.setReservation(reservation)\n            }\n\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message:\n                self.contact.Name + this.$t('Components.Reservation.ModalDeleteContact.Toast_DeletedContact'),\n            })\n\n            self.onClickCancel()\n          }\n        })\n        .catch((error) => {\n          self.isDeletingError = true\n        })\n        .finally(() => {\n          self.isDeleting = false\n        })\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalDeleteContact.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalDeleteContact.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalDeleteContact.vue?vue&type=template&id=6b4f6ecf\"\nimport script from \"./ModalDeleteContact.vue?vue&type=script&lang=js\"\nexport * from \"./ModalDeleteContact.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div>\n    <add-contact\n      v-if=\"showAddContact\"\n      :showModal=\"showAddContact\"\n      :isLocked=\"isLocked\"\n      :isEmployee=\"isEmployee\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <edit-contact\n      v-if=\"showEditContact\"\n      :showModal=\"showEditContact\"\n      :isLocked=\"isLocked\"\n      :isEmployee=\"isEmployee\"\n      :contact=\"selectedContact\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <delete-contact\n      v-if=\"showDeleteContact\"\n      :showModal=\"showDeleteContact\"\n      :isLocked=\"isLocked\"\n      :isEmployee=\"isEmployee\"\n      :contact=\"selectedContact\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ui-section-header>\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationContacts.Header_Title')\n      }}</template>\n    </ui-section-header>\n\n    <div\n      class=\"actionBar has-padding mb-6\"\n      style=\"border-bottom: 1px solid #e5e5e5\"\n    >\n      <div class=\"level\">\n        <div class=\"level-left\"></div>\n        <div class=\"level-right\">\n          <a @click=\"setShowAddContact\" class=\"has-icon\">\n            <span class=\"icon is-small\">\n              <font-awesome-icon :icon=\"['fas', 'plus']\" />\n            </span>\n            <span>{{\n              $t('Components.Reservation.ReservationContacts.Link_AddContact')\n            }}</span>\n          </a>\n        </div>\n      </div>\n    </div>\n\n    <table class=\"table is-fullwidth is-striped \">\n      <thead>\n        <tr>\n          <th>\n            {{ $t('Components.Reservation.ReservationContacts.Label_Type') }}\n          </th>\n          <th>\n            {{ $t('Components.Reservation.ReservationContacts.Label_Name') }}\n          </th>\n          <th>\n            {{ $t('Components.Reservation.ReservationContacts.Label_Email') }}\n          </th>\n          <th>\n            {{ $t('Components.Reservation.ReservationContacts.Label_Phone') }}\n          </th>\n          <th>\n            {{\n              $t(\n                'Components.Reservation.ReservationContacts.Label_ReceiveEmail'\n              )\n            }}\n          </th>\n          <th>&nbsp;</th>\n        </tr>\n      </thead>\n      <tbody>\n        <tr v-for=\"(contact, index) in reservation.Contacts\" :key=\"index\">\n          <td>{{ getContactTypeName(contact.Type) }}</td>\n          <td>{{ contact.Name }}</td>\n          <td>{{ contact.Email }}</td>\n          <td>{{ contact.Phone }}</td>\n          <td>\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"contact.ReceiveEmail\"\n                :icon=\"['fas', 'check']\"\n                class=\"has-text-success\"\n              />\n              <font-awesome-icon\n                v-if=\"!contact.ReceiveEmail\"\n                :icon=\"['fas', 'times']\"\n                class=\"has-text-danger\"\n              />\n            </span>\n          </td>\n          <td width=\"75\">\n            <div class=\"field is-grouped has-text-right\">\n              <p class=\"control\">\n                <a @click=\"setShowEditContact(contact)\">\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                  </span>\n                </a>\n              </p>\n              <p class=\"control\">\n                <a @click=\"setShowDeleteContact(contact)\">\n                  <span class=\"icon\">\n                    <font-awesome-icon\n                      :icon=\"['fas', 'trash-alt']\"\n                      style=\"color:red\"\n                    />\n                  </span>\n                </a>\n              </p>\n            </div>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState } from 'vuex'\n\nimport ModalAddContact from '@/components/Reservations/ModalAddContact'\nimport ModalEditContact from '@/components/Reservations/ModalEditContact'\nimport ModalDeleteContact from '@/components/Reservations/ModalDeleteContact'\n\nexport default {\n  components: {\n    'add-contact': ModalAddContact,\n    'edit-contact': ModalEditContact,\n    'delete-contact': ModalDeleteContact,\n  },\n\n  props: {\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: true,\n      type: Boolean,\n    },\n  },\n\n  data() {\n    return {\n      contactTypes: [],\n      showAddContact: false,\n      showEditContact: false,\n      showDeleteContact: false,\n      selectedContact: null,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  created() {\n    this.setupContactTypes()\n  },\n\n  methods: {\n    setupContactTypes() {\n      this.contactTypes.push({\n        TypeId: 0,\n        Type: 'Booker',\n        Name: this.$t('Components.Reservation.ModalAddContact.Type_Booker'),\n      })\n      this.contactTypes.push({\n        TypeId: 1,\n        Type: 'DuringEvent',\n        Name: this.$t(\n          'Components.Reservation.ModalAddContact.Type_DuringEvent'\n        ),\n      })\n      this.contactTypes.push({\n        TypeId: 2,\n        Type: 'Trainer',\n        Name: this.$t('Components.Reservation.ModalAddContact.Type_Trainer'),\n      })\n      this.contactTypes.push({\n        TypeId: 3,\n        Type: 'Speaker',\n        Name: this.$t('Components.Reservation.ModalAddContact.Type_Speaker'),\n      })\n      this.contactTypes.push({\n        TypeId: 5,\n        Type: 'Host',\n        Name: this.$t('Components.Reservation.ModalAddContact.Type_Host'),\n      })\n      this.contactTypes.push({\n        TypeId: 4,\n        Type: 'Invoice',\n        Name: this.$t('Components.Reservation.ModalAddContact.Type_Invoice'),\n      })\n    },\n\n    getContactTypeName(type) {\n      let contactType = this.contactTypes.find((ct) => ct.Type === type)\n      if (contactType) {\n        return contactType.Name\n      }\n      return ''\n    },\n\n    setShowAddContact() {\n      this.showAddContact = true\n    },\n\n    setShowEditContact(contact) {\n      this.showEditContact = true\n\n      this.selectedContact = contact\n    },\n\n    setShowDeleteContact(contact) {\n      this.showDeleteContact = true\n\n      this.selectedContact = contact\n    },\n\n    hideModal() {\n      this.showAddContact = false\n      this.showEditContact = false\n      this.showDeleteContact = false\n\n      this.selectedContact = null\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationContacts.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationContacts.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationContacts.vue?vue&type=template&id=6b8caab0\"\nimport script from \"./ReservationContacts.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationContacts.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation && _vm.reservationDate)?_c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"drawerSize\":_vm.drawerSize,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showOptionSummary)?_c('OptionSummary',{attrs:{\"locationId\":_vm.reservation.LocationId,\"optionId\":_vm.itemId,\"isEmployee\":_vm.isEmployee}}):_vm._e(),(_vm.showAddOption)?_c('AddOption',{attrs:{\"reservationSpaces\":_vm.reservation.Spaces,\"reservationDate\":_vm.reservationDate,\"endMinutes\":_vm.reservation.EndMinutes,\"startMinutes\":_vm.reservation.StartMinutes,\"hideSelectedItems\":true,\"isEmployee\":_vm.isEmployee},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showEditOption)?_c('EditOption',{attrs:{\"isEmployee\":_vm.isEmployee,\"isLocked\":_vm.isLocked,\"option\":_vm.selectedOption,\"reservationDate\":_vm.reservationDate},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e()]},proxy:true}],null,false,4230698895)}):_vm._e(),(_vm.showEditTotalSeats)?_c('ModalEditTotalSeats',{attrs:{\"showModal\":_vm.showEditTotalSeats,\"isEmployee\":_vm.isEmployee,\"isLocked\":_vm.isLocked,\"option\":_vm.selectedOption,\"onClickCancel\":_vm.hideModal,\"reservationDate\":_vm.reservationDate}}):_vm._e(),(_vm.showDeleteOption)?_c('ModalDeleteOption',{attrs:{\"showModal\":_vm.showDeleteOption,\"option\":_vm.selectedOption,\"onClickCancel\":_vm.hideModal,\"reservationDate\":_vm.reservationDate}}):_vm._e(),(_vm.showEditSortOrder)?_c('ModalEditOptionSortOrder',{attrs:{\"showModal\":_vm.showEditSortOrder,\"reservationDate\":_vm.reservationDate,\"isEmployee\":_vm.isEmployee,\"isLocked\":_vm.isLocked,\"onClickCancel\":_vm.hideModal}}):_vm._e(),_c('ui-section-header',{attrs:{\"showAdd\":!_vm.isLocked,\"addFunction\":_vm.setShowAddOption,\"addLabel\":_vm.$t('Components.Reservation.ReservationDetail.Icon_AddOption'),\"showEdit\":_vm.isEmployee && _vm.resOptions.length > 0 && !_vm.isLocked,\"editFunction\":_vm.setShowEditSortOrder,\"editLabel\":_vm.$t('Components.Reservation.ReservationDetail.Label_SortOptions')},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Subtitle_Options'))+\" \")]},proxy:true}],null,false,3176796546)}),_c('div',[(!_vm.isLocked && _vm.isEmployee && _vm.reservation.MeetingtypeId !== 2)?_c('div',{staticClass:\"has-margin-bottom\"},[_c('div',[_c('span',{staticClass:\"subtitle\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Text_TotalSeats'))+_vm._s(_vm.reservationDate.TotalSeats))]),_c('a',{staticClass:\"is-size-7 is-hidden-print ml-2\",on:{\"click\":_vm.setShowEditTotalSeats}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ReservationDetail.Icon_ChangeTotalSeats' )))])])])]):_vm._e()]),(_vm.resOptions.length === 0)?_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationDetail.Message_NoOptionsAdded')}}):_vm._e(),(_vm.resOptions.length > 0)?_c('div',_vm._l((_vm.categories),function(cat,cIndex){return _c('div',{key:cat},[_c('div',{staticClass:\"has-text-weight-bold has-margin-bottom-half\",class:{ 'has-margin-top': cIndex !== 0 },domProps:{\"innerHTML\":_vm._s(\n          _vm.$t('Components.Reservation.ReservationOptions.Category_' + cat)\n        )}}),_c('table',{staticClass:\"table is-fullwidth is-narrow\",class:{'is-hoverable': !_vm.previewOnly}},[_c('thead',[_c('tr',[_c('th',{attrs:{\"width\":\"75\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Quantity'))+\" \")]),_c('th',{attrs:{\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Name'))+\" \")]),_c('th',{attrs:{\"width\":\"250px\"}},[_vm._v(\" \")]),_c('th',{staticClass:\"has-text-left\",attrs:{\"width\":\"150\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Space'))+\" \")]),(_vm.resMultiDate)?_c('th',{staticClass:\"has-text-left\",attrs:{\"width\":\"100\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Date'))+\" \")]):_vm._e(),_c('th',{staticClass:\"has-text-left\",attrs:{\"width\":\"100\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Time'))+\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Price'))+\" \")]),_c('th',{staticClass:\"has-text-right\",attrs:{\"width\":\"100\",\"scope\":\"col\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Total'))+\" \")]),(!_vm.previewOnly)?_c('th',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[_vm._v(\" \")]):_vm._e()])]),_c('tbody',[_vm._l((_vm.resOptions.filter(\n              (o) => o.CategoryId === cat\n            )),function(option){return _c('tr',{key:'o' + option.Id + 's' + option.SpaceId},[_c('td',[_vm._v(_vm._s(option.Amount)+\"x\")]),_c('td',{attrs:{\"scope\":\"row\"}},[_c('span',{staticClass:\"icon-text\"},[_c('span',[_vm._v(_vm._s(option.OptionName))]),(!_vm.isDraft)?_c('a',{staticClass:\"is-hidden-print\",on:{\"click\":function($event){return _vm.setShowOptionSummary(option.OptionId)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1)]):_vm._e()]),(option.Id > 0 && !_vm.isDraft)?_c('div',[_c('Notes',{attrs:{\"locationId\":_vm.reservation.LocationId,\"typeId\":'ReservationOption',\"itemId\":option.Id,\"notes\":option.Notes,\"linkTypeId\":'Reservation',\"linkItemId\":_vm.reservation.Id,\"showNoNotesMessage\":false,\"showAddLinkLeft\":true,\"showShareLink\":false,\"showNoteVisibility\":true,\"getFresh\":false,\"viewType\":_vm.isEmployee ? 'small' : 'minimal'}})],1):_vm._e()]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.getVoucherName(option)))]),(_vm.showOptionVoucherAlert(option))?_c('span',[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{staticClass:\"has-text-danger\",attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationOptions.Label_VoucherOptionMissingLink'))+\" \")]):_vm._e()]),_c('td',[_vm._v(_vm._s(option.SpaceName))]),(_vm.resMultiDate)?_c('td',[_vm._v(_vm._s(_vm._f(\"dateFormat\")(_vm._f(\"parseIsoDateStringToDate\")(option.Date),_vm.$i18n.locale)))]):_vm._e(),_c('td',[(option.TimeSelectable || option.SelectedTime > -1)?_c('div',[(option.SelectedTime > -1)?_c('span',[_vm._v(_vm._s(_vm._f(\"minutesToTime\")(option.SelectedTime)))]):_vm._e(),(option.UseManualDuration && option.SelectedTime > -1)?_c('span',[_vm._v(\" - \"+_vm._s(_vm._f(\"minutesToTime\")((option.SelectedTime + option.BillableDuration))))]):_vm._e()]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[(!option.InPackage)?_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(option.PricePerItem, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency )))]):_vm._e()]),_c('td',{staticClass:\"has-text-right\"},[(!option.InPackage)?_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(option.PriceTotal, _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency )))]):_vm._e(),(!option.InPackage)?_c('div',{staticClass:\"is-size-7 is-italic\",class:{\n                  'has-text-danger has-text-weight-bold':\n                    option.TaxPercentage === 0,\n                }},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Tax'))+\" \"+_vm._s(option.TaxPercentage)+\"%\")]):_vm._e()]),(!_vm.previewOnly)?_c('td',{staticClass:\"is-hidden-print\",attrs:{\"width\":\"85\"}},[(\n                  !_vm.isLocked &&\n                  (_vm.isEmployee || (!_vm.isEmployee && option.RequiredItem !== 2))\n                )?_c('div',{staticClass:\"field is-grouped is-grouped-right\"},[_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.setEditOption(option)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)])]),_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.setDeleteOption(option)}}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])]):_vm._e()]):_vm._e()])}),_c('tr',[_c('td',{staticClass:\"has-text-right\",attrs:{\"colspan\":_vm.resMultiDate ? 7 : 6}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Subtotal'))+\" \")]),_c('td',{staticClass:\"has-text-right\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(_vm.calculateCatTotal(cat), _vm.locationState.Settings.LanguageCulture, _vm.reservation.Currency )))])]),(!_vm.previewOnly)?_c('td',{staticClass:\"is-hidden-print\"},[_vm._v(\" \")]):_vm._e()])],2)])])}),0):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation && reservationDate\">\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :drawerSize=\"drawerSize\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n    >\n      <template v-slot:content>\n        <OptionSummary\n          v-if=\"showOptionSummary\"\n          :locationId=\"reservation.LocationId\"\n          :optionId=\"itemId\"\n          :isEmployee=\"isEmployee\"\n        />\n\n        <AddOption\n          v-if=\"showAddOption\"\n          :reservationSpaces=\"reservation.Spaces\"\n          :reservationDate=\"reservationDate\"\n          :endMinutes=\"reservation.EndMinutes\"\n          :startMinutes=\"reservation.StartMinutes\"\n          :hideSelectedItems=\"true\"\n          :isEmployee=\"isEmployee\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <EditOption\n          v-if=\"showEditOption\"\n          :isEmployee=\"isEmployee\"\n          :isLocked=\"isLocked\"\n          :option=\"selectedOption\"\n          :reservationDate=\"reservationDate\"\n          @hideDrawer=\"hideDrawer\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <ModalEditTotalSeats\n      v-if=\"showEditTotalSeats\"\n      :showModal=\"showEditTotalSeats\"\n      :isEmployee=\"isEmployee\"\n      :isLocked=\"isLocked\"\n      :option=\"selectedOption\"\n      :onClickCancel=\"hideModal\"\n      :reservationDate=\"reservationDate\"\n    />\n\n    <ModalDeleteOption\n      v-if=\"showDeleteOption\"\n      :showModal=\"showDeleteOption\"\n      :option=\"selectedOption\"\n      :onClickCancel=\"hideModal\"\n      :reservationDate=\"reservationDate\"\n    />\n\n    <ModalEditOptionSortOrder\n      v-if=\"showEditSortOrder\"\n      :showModal=\"showEditSortOrder\"\n      :reservationDate=\"reservationDate\"\n      :isEmployee=\"isEmployee\"\n      :isLocked=\"isLocked\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ui-section-header\n      :showAdd=\"!isLocked\"\n      :addFunction=\"setShowAddOption\"\n      :addLabel=\"$t('Components.Reservation.ReservationDetail.Icon_AddOption')\"\n      :showEdit=\"isEmployee && resOptions.length > 0 && !isLocked\"\n      :editFunction=\"setShowEditSortOrder\"\n      :editLabel=\"\n        $t('Components.Reservation.ReservationDetail.Label_SortOptions')\n      \"\n    >\n      <template v-slot:title>{{ $t('Components.Reservation.ReservationDetail.Subtitle_Options') }}\n      </template>\n    </ui-section-header>\n\n    <div>\n      <div\n        v-if=\"!isLocked && isEmployee && reservation.MeetingtypeId !== 2\"\n        class=\"has-margin-bottom\"\n      >\n        <div>\n          <span class=\"subtitle\">{{ $t('Components.Reservation.ReservationDetail.Text_TotalSeats')\n            }}{{ reservationDate.TotalSeats }}</span>\n          <a\n            @click=\"setShowEditTotalSeats\"\n            class=\"is-size-7 is-hidden-print ml-2\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon :icon=\"['fas', 'edit']\" />\n            </span>\n            <span>{{\n              $t(\n                'Components.Reservation.ReservationDetail.Icon_ChangeTotalSeats'\n              )\n            }}</span>\n          </a>\n        </div>\n      </div>\n    </div>\n\n    <Message\n      v-if=\"resOptions.length === 0\"\n      :message=\"\n        $t('Components.Reservation.ReservationDetail.Message_NoOptionsAdded')\n      \"\n    />\n\n    <div v-if=\"resOptions.length > 0\">\n      <div\n        v-for=\"(cat, cIndex) in categories\"\n        :key=\"cat\"\n      >\n        <div\n          class=\"has-text-weight-bold has-margin-bottom-half\"\n          :class=\"{ 'has-margin-top': cIndex !== 0 }\"\n          v-html=\"\n            $t('Components.Reservation.ReservationOptions.Category_' + cat)\n          \"\n        ></div>\n        <table\n          class=\"table is-fullwidth is-narrow\"\n          :class=\"{'is-hoverable': !previewOnly}\"\n        >\n          <thead>\n            <tr>\n              <th\n                width=\"75\"\n                scope=\"col\"\n              >\n                {{\n                  $t('Components.Reservation.ReservationDetail.Table_Quantity')\n                }}\n              </th>\n              <th scope=\"col\">\n                {{ $t('Components.Reservation.ReservationDetail.Table_Name') }}\n              </th>\n              <th width=\"250px\">&nbsp;</th>\n              <th\n                width=\"150\"\n                class=\"has-text-left\"\n              >\n                {{ $t('Components.Reservation.ReservationDetail.Table_Space') }}\n              </th>\n              <th\n                v-if=\"resMultiDate\"\n                width=\"100\"\n                class=\"has-text-left\"\n                scope=\"col\"\n              >\n                {{ $t('Components.Reservation.ReservationDetail.Table_Date') }}\n              </th>\n              <th\n                width=\"100\"\n                class=\"has-text-left\"\n                scope=\"col\"\n              >\n                {{ $t('Components.Reservation.ReservationDetail.Table_Time') }}\n              </th>\n              <th\n                width=\"100\"\n                class=\"has-text-right\"\n                scope=\"col\"\n              >\n                {{ $t('Components.Reservation.ReservationDetail.Table_Price') }}\n              </th>\n              <th\n                width=\"100\"\n                class=\"has-text-right\"\n                scope=\"col\"\n              >\n                {{ $t('Components.Reservation.ReservationDetail.Table_Total') }}\n              </th>\n              <th\n                v-if=\"!previewOnly\"\n                width=\"85\"\n                class=\"is-hidden-print\"\n              >&nbsp;</th>\n            </tr>\n          </thead>\n          <tbody>\n            <tr\n              v-for=\"option in resOptions.filter(\n                (o) => o.CategoryId === cat\n              )\"\n              :key=\"'o' + option.Id + 's' + option.SpaceId\"\n            >\n              <td>{{ option.Amount }}x</td>\n              <td scope=\"row\">\n                <span class=\"icon-text\">\n                  <span>{{ option.OptionName }}</span>\n                  <a\n                  v-if=\"!isDraft\"\n                    @click=\"setShowOptionSummary(option.OptionId)\"\n                    class=\"is-hidden-print\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                    </span>\n                  </a>\n                </span>\n\n                <div v-if=\"option.Id > 0 && !isDraft\">\n                  <Notes\n                    :locationId=\"reservation.LocationId\"\n                    :typeId=\"'ReservationOption'\"\n                    :itemId=\"option.Id\"\n                    :notes=\"option.Notes\"\n                    :linkTypeId=\"'Reservation'\"\n                    :linkItemId=\"reservation.Id\"\n                    :showNoNotesMessage=\"false\"\n                    :showAddLinkLeft=\"true\"\n                    :showShareLink=\"false\"\n                    :showNoteVisibility=\"true\"\n                    :getFresh=\"false\"\n                    :viewType=\"isEmployee ? 'small' : 'minimal'\"\n                  />\n                </div>\n              </td>\n\n              <td>\n                <span>{{ getVoucherName(option) }}</span>\n                <span v-if=\"showOptionVoucherAlert(option)\">\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" class=\"has-text-danger\" />\n                  </span>\n                  {{ $t('Components.Reservation.ReservationOptions.Label_VoucherOptionMissingLink') }}\n                </span>\n              </td>\n              <td>{{ option.SpaceName }}</td>\n              <td v-if=\"resMultiDate\">{{ option.Date | parseIsoDateStringToDate | dateFormat($i18n.locale) }}</td>\n              <td>\n                <div v-if=\"option.TimeSelectable || option.SelectedTime > -1\">\n                  <span v-if=\"option.SelectedTime > -1\">{{ option.SelectedTime | minutesToTime }}</span>\n                  <span v-if=\"option.UseManualDuration && option.SelectedTime > -1\"> - {{ (option.SelectedTime + option.BillableDuration) | minutesToTime }}</span>\n                </div>\n\n              </td>\n              <td class=\"has-text-right\">\n                <span v-if=\"!option.InPackage\">{{\n                  option.PricePerItem\n                    | toCurrency(\n                      locationState.Settings.LanguageCulture,\n                      reservation.Currency\n                    )\n                }}</span>\n\n              </td>\n\n              <td class=\"has-text-right\">\n                <span v-if=\"!option.InPackage\">{{\n                  option.PriceTotal\n                    | toCurrency(\n                      locationState.Settings.LanguageCulture,\n                      reservation.Currency\n                    )\n                }}</span>\n                <div\n                  v-if=\"!option.InPackage\"\n                  class=\"is-size-7 is-italic\"\n                  :class=\"{\n                    'has-text-danger has-text-weight-bold':\n                      option.TaxPercentage === 0,\n                  }\"\n                >{{ $t('Components.Reservation.ReservationDetail.Table_Tax') }} {{ option.TaxPercentage }}%</div>\n                <!-- <div class=\"is-size-7 is-italic\">{{ option.Deductible }}</div> -->\n              </td>\n              <td\n                v-if=\"!previewOnly\"\n                width=\"85\"\n                class=\"is-hidden-print\"\n              >\n                <div\n                  v-if=\"\n                    !isLocked &&\n                    (isEmployee || (!isEmployee && option.RequiredItem !== 2))\n                  \"\n                  class=\"field is-grouped is-grouped-right\"\n                >\n                  <p class=\"control\">\n                    <a @click=\"setEditOption(option)\">\n                      <span class=\"icon\">\n                        <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                      </span>\n                    </a>\n                  </p>\n                  <p class=\"control\">\n                    <a @click=\"setDeleteOption(option)\">\n                      <span class=\"icon has-text-danger\">\n                        <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                      </span>\n                    </a>\n                  </p>\n                </div>\n              </td>\n            </tr>\n\n            <tr>\n              <td\n                :colspan=\"resMultiDate ? 7 : 6\"\n                class=\"has-text-right\"\n              >\n                {{\n                  $t('Components.Reservation.ReservationDetail.Table_Subtotal')\n                }}\n              </td>\n              <td class=\"has-text-right\">\n                <span>{{\n                  calculateCatTotal(cat)\n                    | toCurrency(\n                      locationState.Settings.LanguageCulture,\n                      reservation.Currency\n                    )\n                }}</span>\n              </td>\n              <td\n                v-if=\"!previewOnly\"\n                class=\"is-hidden-print\"\n              >&nbsp;</td>\n            </tr>\n          </tbody>\n        </table>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapGetters, mapMutations, mapState } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  components: {\n    Message: () => import('@/components/UI/Message'),\n    AddOption: () => import('@/components/Reservations/AddOption'),\n    EditOption: () => import('@/components/Reservations/EditOption'),\n    ModalEditOptionSortOrder: () =>\n      import('@/components/Reservations/ModalEditOptionSortOrder'),\n    ModalDeleteOption: () =>\n      import('@/components/Reservations/ModalDeleteOption'),\n    ModalEditTotalSeats: () =>\n      import('@/components/Reservations/ModalEditTotalSeats'),\n    Notes: () => import('@/components/Notes/Notes'),\n    OptionSummary: () => import('@/components/Options/OptionSummary'),\n  },\n\n  props: {\n    previewOnly: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: true,\n      type: Boolean,\n    },\n\n    reservation: {\n      type: Object,\n      deafault: null\n    },\n\n    reservationDate: {\n      type: Object,\n      deafault: null,\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      drawerTitle: '',\n      drawerSize: 'large',\n      originalReservation: null,\n      selectedOption: null,\n      showAddOption: false,\n      showEditOption: false,\n      showEditTotalSeats: false,\n      showDeleteOption: false,\n      showEditSortOrder: false,\n      showOptionSummary: false,\n      showSideDrawer: false,\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('profileStore', ['profileState']),\n    ...mapGetters('reservationStore', ['isDraft']),\n\n    isAdmin() {\n      let isAdmin = false;\n\n      if (this.profileState) {\n        isAdmin = this.profileState.IsAdmin;\n      }\n\n      return isAdmin;\n    },\n\n    isEmployee() {\n      let employee = false\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true\n      }\n\n      return employee\n    },\n\n    resOptions() {\n      return this.reservationDate.Options\n    },\n\n    categories() {\n      let categories = []\n\n      if (this.reservation && this.resOptions.length > 0) {\n        for (let i = 0; i < this.resOptions.length; i++) {\n          let option = this.resOptions[i]\n\n          if (categories.findIndex((c) => c === option.CategoryId) === -1) {\n            categories.push(option.CategoryId)\n          }\n        }\n      }\n\n      return categories.sort()\n    },\n\n    resDates() {\n      return this.reservation.Dates\n    },\n\n    resMultiDate() {\n      return this.resDates.length > 1\n    },\n\n    showOptionsSubTotal() {\n      return this.resOptions.filter(o => !o.InPackage).length > 0\n    },\n\n    total() {\n      let total = 0.0\n\n      let nonPackageOptinos = this.resOptions.filter(o => !o.InPackage)\n      for (let i = 0; i <= nonPackageOptinos.length; i++) {\n        let option = nonPackageOptinos[i]\n        if (option) {\n          total = total + option.PriceTotal\n        }\n      }\n\n      return total\n    },\n  },\n\n  watch: {\n    nrOfSeats: function(newValue, oldValue) {\n      let self = this\n\n      if (newValue && newValue !== oldValue) {\n        if (self.reservation && self.reservation !== null) {\n          self.updateOptionTotals()\n        }\n      }\n    },\n  },\n\n  created() {\n    this.originalReservation = JSON.parse(JSON.stringify(this.reservation))\n\n    EventBus.$on('optionsAdded', () => {\n      this.hideDrawer();\n    });\n  },\n\n  beforeDestroy() {\n    EventBus.$off('optionsAdded');\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    showOptionVoucherAlert(option) {\n      let inVoucher = false;\n      let showVoucherAlert = false;\n\n      if (this.reservation && this.reservation.Voucher?.Options.filter(o => o.OptionId === option.OptionId).length > 0) {\n        inVoucher = true;\n      }\n\n      if (inVoucher && option.VoucherId === 0) {\n        showVoucherAlert = true;\n      }\n\n      return showVoucherAlert;\n    },\n\n    getVoucherName(option) {\n      let name = '';\n\n      if (option.VoucherId > 0) {\n        name = this.reservation.Voucher?.Name;\n\n        if (this.reservation.Voucher?.Descriptions.length> 0) {\n          name = this.reservation.Voucher.Descriptions.find(d => d.Language === this.reservation.Language).Name;\n        }\n      }\n\n      if (option.PackageId > 0) {\n        let date = this.reservation.Dates.find(d => d.Date === option.Date);\n        if (date != null) {\n          let pckg = date.Packages.find(p => p.PackageId === option.PackageId);\n          if (pckg != null) {\n            name = pckg.PackageName;\n\n            if (pckg.Descriptions.length > 0) {\n              name = pckg.Descriptions.find(d => d.Language === this.reservation.Language).Name;\n            }\n          }\n        }\n      }\n\n      return name;\n    },\n\n    calculateCatTotal(cat) {\n      let total = 0.0\n\n      let nonPackageOptinos = this.resOptions.filter(o => !o.InPackage && o.CategoryId === cat)\n      for (let i = 0; i <= nonPackageOptinos.length; i++) {\n        let option = nonPackageOptinos[i]\n        if (option) {\n          total = total + option.PriceTotal\n        }\n      }\n\n      return total\n    },\n\n    cancelEditOption() {\n      this.editSpace = null\n    },\n\n    delay(callback, ms) {\n      let self = this\n      if (this.timer) {\n        clearTimeout(this.timer)\n      }\n      this.timer = setTimeout(() => {\n        callback.apply(self)\n        clearTimeout(self.timer)\n      }, ms || 0)\n    },\n\n    updateOptionTotals() {\n      let self = this\n      let reservation = JSON.parse(JSON.stringify(self.reservation))\n\n      if (reservation && reservation !== null) {\n        for (let i = reservation.Options.length - 1; i >= 0; i--) {\n          let option = reservation.Options[i]\n          // TODO: Extra check if multiple spaces are available and\n          // option is assigned to one of the spaces\n          // If not option can be changed\n\n          if (\n            option.IsPP &&\n            option.Amount === self.originalReservation.TotalSeats\n          ) {\n            option.Amount = Number(reservation.TotalSeats)\n            option.PriceTotal = option.Amount * option.PricePerItem\n            if (option.MaxTotal > 0 && option.PriceTotal > option.MaxTotal) {\n              option.PriceTotal = option.MaxTotal\n            }\n\n            Vue.set(self.reservation.Options, i, option)\n          }\n        }\n        // Save in DB using api\n        self.saveReservation()\n      }\n    },\n\n    saveReservation() {\n      let self = this\n\n      if (!self.isSaving) {\n        self.isSaving = true\n\n        reservationProvider.methods\n          .saveReservation(self.reservation, false)\n          .then((response) => {\n            if (response.status === 200) {\n              // Update reservation store\n              self.setReservation(response.data)\n\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservation.ReservationOptions.Toast_ReservationSaved'\n                ),\n              })\n\n              // Update originalReservation data\n              self.originalReservation = JSON.parse(\n                JSON.stringify(response.data)\n              )\n            }\n          })\n          .catch((error) => {\n            self.isSavingError = true\n          })\n          .finally(() => {\n            self.isSaving = false\n            self.isSavingSuccess = true\n          })\n      }\n    },\n\n    setShowEditTotalSeats() {\n      this.showEditTotalSeats = true\n    },\n\n    setShowAddOption() {\n      this.showAddOption = true;\n      this.showSideDrawer = true;\n      this.drawerSize = 'extra-extra-large';\n      this.drawerTitle = this.$t('Components.Reservation.ModalAddOption.Modal_Title');\n    },\n\n    setEditOption(option) {\n      this.selectedOption = option;\n      this.showEditOption = true;\n      this.showSideDrawer = true;\n      this.drawerSize = 'large';\n      this.drawerTitle = option.OptionName;\n    },\n\n    setShowEditSortOrder() {\n      this.showEditSortOrder = true\n    },\n\n    setDeleteOption(option) {\n      this.selectedOption = option\n      this.showDeleteOption = true\n    },\n\n    hideModal() {\n      this.showAddOption = false;\n      this.showDeleteOption = false;\n      this.showEditTotalSeats = false;\n      this.showEditSortOrder = false;\n\n      this.selectedOption = null;\n    },\n\n    setShowOptionSummary(optionId) {\n      this.itemId = optionId\n      this.drawerTitle = 'Option detail'\n      this.showSideDrawer = true\n      this.showOptionSummary = true\n    },\n\n    hideDrawer() {\n      this.itemId = 0;\n      this.drawerTitle = '';\n      this.drawerSize = 'large';\n      this.showSideDrawer = false;\n      this.showOptionSummary = false;\n      this.showAddOption = false;\n      this.showEditOption = false;\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationOptions.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationOptions.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationOptions.vue?vue&type=template&id=8933b2fa\"\nimport script from \"./ReservationOptions.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationOptions.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar SetHelpers = require('../internals/set-helpers');\nvar iterate = require('../internals/set-iterate');\n\nvar Set = SetHelpers.Set;\nvar add = SetHelpers.add;\n\nmodule.exports = function (set) {\n  var result = new Set();\n  iterate(set, function (it) {\n    add(result, it);\n  });\n  return result;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.modalTitle,\"modalSize\":_vm.modalSize,\"onClickCancel\":_vm.onClickCancel,\"showModal\":_vm.showModal,\"hideCancelButton\":true,\"hideSaveButton\":true},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{staticClass:\"columns is-centered\"},[_c('div',{staticClass:\"column is-two-thirds\"},[_c('auth-controller',{attrs:{\"channelId\":_vm.channelId},on:{\"actionAfterLogin\":_vm.actionAfterLogin}})],1)])]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"modalTitle\"\n    :modalSize=\"modalSize\"\n    :onClickCancel=\"onClickCancel\"\n    :showModal=\"showModal\"\n    :hideCancelButton=\"true\"\n    :hideSaveButton=\"true\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template v-slot:content>\n      <div class=\"columns is-centered\">\n        <div class=\"column is-two-thirds\">\n          <auth-controller\n            @actionAfterLogin=\"actionAfterLogin\"\n            :channelId=\"channelId\"\n          />\n        </div>\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport AuthController from './AuthController.vue'\nexport default {\n  name: 'ModalAuthentication',\n\n  components: {\n    AuthController\n  },\n\n  props: {\n    modalTitle: {\n      type: String,\n      default: ''\n    },\n    modalSize: {\n      type: String,\n      default: 'large'\n    },\n    onClickCancel: {\n      type: Function,\n      required: true\n    },\n    showModal: {\n      type: Boolean,\n      default: false\n    },\n    channelId: {\n      type: Number,\n      default: 0\n    }\n  },\n\n  data() {\n    return {}\n  },\n\n  methods: {\n    actionAfterLogin() {\n      this.onClickCancel()\n    }\n  }\n}\n</script>\n\n<style>\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalAuthentication.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalAuthentication.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalAuthentication.vue?vue&type=template&id=ebc67d44\"\nimport script from \"./ModalAuthentication.vue?vue&type=script&lang=js\"\nexport * from \"./ModalAuthentication.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import axios from 'axios'\n\nlet checkCrcCancel = null\n\nexport default {\n  methods: {\n    async checkCrc(itemId, price) {\n      let criteria = {\n        ItemId: itemId,\n        Price: price,\n      }\n      checkCrcCancel && checkCrcCancel('Request cancelled by new request')\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/crc`,\n        JSON.stringify(criteria),\n        {\n          cancelToken: new axios.CancelToken(function executor(c) {\n            checkCrcCancel = c\n          }),\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n          },\n        }\n      )\n      return response\n    },\n  },\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showSuccess)?_c('div',{staticClass:\"has-text-centered p-6\"},[_c('success-animation')],1):[(_vm.authFlowView === 'login')?_c('Login',{attrs:{\"linkActionForgotPassword\":_vm.linkActionForgotPassword,\"linkActionRegister\":_vm.linkActionRegister},on:{\"actionAfterLogin\":_vm.actionAfterLogin}}):_vm._e(),(_vm.authFlowView === 'register')?_c('Register',{attrs:{\"channelIdOverride\":_vm.channelId,\"backFunc\":_vm.linkActionLogin},on:{\"userRegistered\":_vm.actionAfterLogin},scopedSlots:_vm._u([{key:\"registerTitle\",fn:function(){return [_c('div',{staticClass:\"title is-4\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.Register.Main_Title', _vm.localeOverride))+\" \")])]},proxy:true}],null,false,1883416459)}):_vm._e(),(_vm.authFlowView === 'forgot')?_c('RequestNewPasswordFlow',{attrs:{\"channelIdOverride\":_vm.channelId,\"backFunc\":_vm.linkActionLogin}}):_vm._e()]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (!_vm.showSetNewPassword && !_vm.showSetPasswordConfirmation)?_c('forgot-password',{attrs:{\"backFunc\":_vm.backFunc,\"channelIdOverride\":_vm.channelId},on:{\"sentSuccessfully\":_vm.setShowSetNewPassword}}):(_vm.showSetNewPassword)?_c('set-password',{attrs:{\"linkActionForgotPassword\":_vm.setShowForgotForm},on:{\"nextAction\":_vm.setShowSetPasswordConfirmation}}):_c('set-password-confirmation',{attrs:{\"backFunc\":_vm.backFunc}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <forgot-password\n    v-if=\"!showSetNewPassword && !showSetPasswordConfirmation\"\n    :backFunc=\"backFunc\"\n    :channelIdOverride=\"channelId\"\n    @sentSuccessfully=\"setShowSetNewPassword\"\n  />\n  <set-password\n    v-else-if=\"showSetNewPassword\"\n    :linkActionForgotPassword=\"setShowForgotForm\"\n    @nextAction=\"setShowSetPasswordConfirmation\"\n  />\n\n  <set-password-confirmation\n    v-else\n    :backFunc=\"backFunc\"\n  />\n</template>\n\n<script>\nimport { mapMutations } from 'vuex';\nimport ForgotPassword from './ForgotPassword.vue';\nimport SetPassword from './SetPassword.vue';\nimport SetPasswordConfirmation from './SetPasswordConfirmation.vue';\n\nexport default {\n  name: 'RequestNewPasswordFlow',\n\n  components: { ForgotPassword, SetPasswordConfirmation, SetPassword },\n\n  props: {\n    backFunc: {\n      type: Function,\n      default: () => { },\n    },\n    channelIdOverride: {\n      type: Number,\n      default: 0\n    },\n  },\n\n  data(vm) {\n    const channelId = (this.channelIdOverride === 0 ? vm.$store.getters['brandChannelId'] : this.channelIdOverride)\n    return {\n      showSetNewPassword: false,\n      showSetPasswordConfirmation: false,\n      channelId\n    }\n  },\n\n  beforeDestroy() {\n    this.setConfirmationToken('')\n  },\n\n  methods: {\n    ...mapMutations('accountStore', ['setConfirmationToken']),\n\n    setShowForgotForm() {\n      this.showSetNewPassword = false\n      this.showSetPasswordConfirmation = false\n    },\n\n    setShowSetNewPassword() {\n      this.showSetNewPassword = true\n      this.showSetPasswordConfirmation = false\n    },\n\n    setShowSetPasswordConfirmation() {\n      this.showSetNewPassword = false\n      this.showSetPasswordConfirmation = true\n    },\n  }\n}\n</script>\n\n<style>\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RequestNewPasswordFlow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RequestNewPasswordFlow.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./RequestNewPasswordFlow.vue?vue&type=template&id=1b0733a3\"\nimport script from \"./RequestNewPasswordFlow.vue?vue&type=script&lang=js\"\nexport * from \"./RequestNewPasswordFlow.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div>\n    <div\n      v-if=\"showSuccess\"\n      class=\"has-text-centered p-6\"\n    >\n      <success-animation />\n    </div>\n    <template v-else>\n      <Login\n        v-if=\"authFlowView === 'login'\"\n        :linkActionForgotPassword=\"linkActionForgotPassword\"\n        :linkActionRegister=\"linkActionRegister\"\n        @actionAfterLogin=\"actionAfterLogin\"\n      />\n      <Register\n        v-if=\"authFlowView === 'register'\"\n        :channelIdOverride=\"channelId\"\n        :backFunc=\"linkActionLogin\"\n        @userRegistered=\"actionAfterLogin\"\n      >\n        <template #registerTitle>\n          <div class=\"title is-4\">\n            {{ $t('Components.AccountControls.Register.Main_Title', localeOverride) }}\n          </div>\n        </template>\n      </Register>\n      <RequestNewPasswordFlow\n        :channelIdOverride=\"channelId\"\n        v-if=\"authFlowView === 'forgot'\"\n        :backFunc=\"linkActionLogin\"\n      />\n    </template>\n  </div>\n</template>\n\n<script>\nimport Login from './Login.vue'\nimport Register from './Register.vue'\nimport SuccessAnimation from '../UI/Components/SuccessAnimation.vue'\nimport RequestNewPasswordFlow from './RequestNewPasswordFlow.vue'\n\nexport default {\n  name: 'AuthController',\n\n  components: {\n    Login,\n    Register,\n    SuccessAnimation,\n    RequestNewPasswordFlow\n  },\n\n  props: {\n    channelId: {\n      type: Number,\n      default: 0\n    }\n  },\n\n  inject: {\n    localeOverride: {\n      type: String,\n      default: function() {\n        return this.$i18n.locale\n      }\n    }\n  },\n\n  data() {\n    return {\n      authFlowView: 'login',\n      showSuccess: false,\n      tAfterLogin: null\n    }\n  },\n\n  beforeDestroy() {\n    this.tAfterLogin && clearTimeout(this.tAfterLogin)\n  },\n\n  methods: {\n    linkActionLogin() {\n      this.authFlowView = 'login'\n    },\n    linkActionForgotPassword() {\n      this.authFlowView = 'forgot'\n    },\n\n    linkActionRegister() {\n      this.authFlowView = 'register'\n    },\n\n    actionAfterLogin(val) {\n      this.showSuccess = true\n      this.tAfterLogin = setTimeout(() => this.$emit('actionAfterLogin', val), 1500)\n    },\n  }\n}\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuthController.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AuthController.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AuthController.vue?vue&type=template&id=582d05c5\"\nimport script from \"./AuthController.vue?vue&type=script&lang=js\"\nexport * from \"./AuthController.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationDetail.vue?vue&type=style&index=0&id=63f5b5ed&prod&lang=sass&scoped=true\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Date.vue?vue&type=style&index=0&id=3e4126e1&prod&scoped=true&lang=sass\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DrawerV2.vue?vue&type=style&index=0&id=232e94f4&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"login-fields-component\"},[_c('div',{staticClass:\"title is-4\",domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.SetPasswordConfirmation.Main_Title', _vm.localeOverride))}}),_c('Message',{staticClass:\"is-success\",scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('font-awesome-icon',{staticClass:\"has-margin-right\",attrs:{\"icon\":['fa', 'check']}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.AccountControls.SetPasswordConfirmation.Message_Success', _vm.localeOverride))+\" \")]},proxy:true}])}),_c('div',{staticClass:\"has-margin-bottom\",domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.SetPasswordConfirmation.Text_Notification', _vm.localeOverride))}}),_c('div',{staticClass:\"has-text-right has-padding\"},[_c('a',{staticClass:\"button is-primary\",attrs:{\"tag\":\"button\"},on:{\"click\":function($event){return _vm.handlerBackFunc()}}},[_vm._v(_vm._s(_vm.$t('Components.AccountControls.SetPasswordConfirmation.Button_Login', _vm.localeOverride)))])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"login-fields-component\">\n    <div\n      class=\"title is-4 \"\n      v-html=\"$t('Components.AccountControls.SetPasswordConfirmation.Main_Title', localeOverride)\"\n    >\n    </div>\n    <Message class=\"is-success\">\n      <template v-slot:content>\n        <font-awesome-icon\n          :icon=\"['fa', 'check']\"\n          class=\"has-margin-right\"\n        />\n        {{$t('Components.AccountControls.SetPasswordConfirmation.Message_Success', localeOverride)}}\n      </template>\n    </Message>\n    <div\n      class=\"has-margin-bottom\"\n      v-html=\"$t('Components.AccountControls.SetPasswordConfirmation.Text_Notification', localeOverride)\"\n    >\n    </div>\n    <div class=\"has-text-right has-padding\">\n      <a\n        tag=\"button\"\n        @click=\"handlerBackFunc()\"\n        class=\"button is-primary\"\n      >{{ $t('Components.AccountControls.SetPasswordConfirmation.Button_Login', localeOverride) }}</a>\n    </div>\n  </div>\n</template>\n\n<script>\nimport Message from '@/components/UI/Message'\n\nexport default {\n  name: 'set-new-password-confirmation',\n\n  components: {\n    Message\n  },\n\n  inject: {\n    localeOverride: {\n      type: String,\n      default: function() {\n        return this.$i18n.locale\n      }\n    }\n  },\n\n  props: {\n    backFunc: {\n      type: [Function, Boolean],\n      default: false,\n    },\n  },\n\n  data() {\n    return {}\n  },\n\n  methods: {\n    handlerBackFunc() {\n      !this.backFunc && this.$router.push({ name: 'my-account-login' })\n\n      this.backFunc()\n    }\n  }\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetPasswordConfirmation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetPasswordConfirmation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SetPasswordConfirmation.vue?vue&type=template&id=699ad5bf\"\nimport script from \"./SetPasswordConfirmation.vue?vue&type=script&lang=js\"\nexport * from \"./SetPasswordConfirmation.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SuccessAnimation.vue?vue&type=style&index=0&id=4b689632&prod&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageLibrary.vue?vue&type=style&index=0&id=1200899c&prod&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalDetail.vue?vue&type=style&index=0&id=5856106e&prod&lang=sass&scoped=true\"","import axios from 'axios'\nimport store from '@/store'\n\nexport default {\n  methods: {\n    async getTermsById(termId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/term/${termId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n          },\n        }\n      )\n      return response\n    },\n\n    /**\n     * Get latest license terms\n     * @param {Object}\n     */\n    async getLatestLicenseTerms(channelId, locale = 'en') {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/term/license/latest`,\n        {\n          params: {\n            channelId: channelId,\n            language: locale,\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n          },\n        }\n      )\n      return response\n    },\n\n    /** \n     * Get all booking terms of a location for a certain channel\n     * \n     */\n    async getLocationBookingTerms(channelId, locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/term/booking`,\n        {\n          params: {\n            channelId: channelId,\n            locationId: locationId\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n          },\n        }\n      )\n      return response\n    },\n\n    async createLocationBookingTerm(term) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/term/booking`,\n        JSON.stringify(term),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async updateBookingTerm(term) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/term/booking`,\n        JSON.stringify(term),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async deleteTerm(termId) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/term/${termId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async updateActivateTerm(termId) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/term/${termId}/activate`,\n        {},\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async agreeToTerms(termId, locationId) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/term/agree`,\n        {\n          TermsId: termId,\n          LocationId: locationId,\n          HasAgreed: true\n        },\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n  },\n}\n","import axios from 'axios'\nimport store from '@/store'\n\nexport default {\n  methods: {\n    async getComments(page, itemsPerPage, typeId = 0, profileId = 0) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/admin/comments`,\n        {\n          params: {\n            page: page,\n            itemsPerPage: itemsPerPage,\n            typeId: typeId,\n            profileId: profileId\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getLocationComments(locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/location/${locationId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getLocationIncomingComments(locationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/location/${locationId}/incoming`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async deleteComment(commentId) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/${commentId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async addComment(type, itemId, comment) {\n      let criteria = {\n        ItemId: itemId,\n        Comment: comment\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/${type}`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async addCartComment(itemId, comment) {\n      let criteria = {\n        ItemId: itemId,\n        Comment: comment\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/cart`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async addReservationComment(itemId, comment) {\n      let criteria = {\n        ItemId: itemId,\n        Comment: comment\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/reservation`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async addReviewComment(itemId, comment) {\n      let criteria = {\n        ItemId: itemId,\n        Comment: comment\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/review`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n\n    async replyToComment(commentId, comment) {\n      let criteria = {\n        Comment: comment\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/${commentId}/reply`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async markCommentAsHandled(commentId) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/comment/${commentId}/handled`,\n        null,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    }\n  }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('Transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.isLoading)?_c('ui-loader'):_c('MailLog',{attrs:{\"mailLogs\":_vm.mMailLogs}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n    <Transition name=\"fade\" mode=\"out-in\">\n    <ui-loader v-if=\"isLoading\"/>\n    <MailLog v-else :mailLogs=\"mMailLogs\" />\n    </Transition>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\nimport mailProvider from '@/providers/mail'\nimport proposalProvider from '@/providers/proposal.js'\n\n\nexport default {\n  components: {\n    MailLog: () => import('@/components/Mails/MailLog')\n  },\n\n  props: {\n    mailLogs: {\n      default: () => [],\n      type: Array,\n    },\n    proposal: {\n      default: null,\n      type: Object,\n    },\n    proposalKey: {\n      type: String,\n      default: ''\n    }\n  },\n\n  data() {\n    return {\n      isLoading: true,\n      mMailLogs: [],\n      mProposal: this.proposal\n    }\n  },\n\n  computed: {},\n\n  async created() {\n    this.mMailLogs = this.mailLogs\n\n    try {\n      if (!this.mProposal && this.proposalKey) {\n        // Get proposal when proposal variable is null\n        const RESPONSE = await proposalProvider.methods.getProposalByKey(this.proposalKey)\n        if (RESPONSE.status === 200) {\n          this.mProposal = RESPONSE.data\n        }\n      }\n\n      await this.getProposalMailLog()\n    }\n    catch { }\n    finally {\n      this.isLoading = false\n    }\n  },\n\n  methods: {\n    async getProposalMailLog() {\n      await mailProvider.methods\n        .getProposalMailLog(this.mProposal.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            this.mMailLogs.push(...response.data)\n          }\n        })\n    },\n\n    async getReservationMailLog() {\n      await mailProvider.methods\n        .getReservationMailLog(this.mProposal.ReservationId)\n        .then((response) => {\n          if (response.status === 200) {\n            this.mMailLogs.push(...response.data)\n          }\n        })\n    },\n  }\n}\n</script>\n\n<style></style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalMail.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalMail.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalMail.vue?vue&type=template&id=08ef5437\"\nimport script from \"./ProposalMail.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalMail.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar slice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('endsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n  var descriptor = getOwnPropertyDescriptor(String.prototype, 'endsWith');\n  return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.endsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.endswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n  endsWith: function endsWith(searchString /* , endPosition = @length */) {\n    var that = toString(requireObjectCoercible(this));\n    notARegExp(searchString);\n    var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n    var len = that.length;\n    var end = endPosition === undefined ? len : min(toLength(endPosition), len);\n    var search = toString(searchString);\n    return slice(that, end - search.length, end) === search;\n  }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar isSubsetOf = require('../internals/set-is-subset-of');\nvar setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');\n\nvar INCORRECT = !setMethodAcceptSetLike('isSubsetOf', function (result) {\n  return result;\n});\n\n// `Set.prototype.isSubsetOf` method\n// https://tc39.es/ecma262/#sec-set.prototype.issubsetof\n$({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {\n  isSubsetOf: isSubsetOf\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('figure',{staticClass:\"image\"},[_c('img',{style:({ backgroundColor: _vm.chosenRandomColor }),attrs:{\"src\":_vm.mImageSrc,\"alt\":_vm.itemName,\"loading\":\"lazy\"},on:{\"error\":_vm.handleError}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <figure class=\"image\">\n    <img\n      :src=\"mImageSrc\"\n      :style=\"{ backgroundColor: chosenRandomColor }\"\n      :alt=\"itemName\"\n      loading=\"lazy\"\n      @error=\"handleError\"\n    />\n  </figure>\n</template>\n\n<script>\nexport default {\n  name: 'ImageViewer',\n\n  props: {\n    type: {\n      type: String,\n      default: ''\n    },\n    imageSrc: {\n      type: String,\n      default: ''\n    },\n    itemName: {\n      type: String,\n      required: true\n    },\n    itemId: {\n      type: Number,\n      default: 0\n    },\n    imageSize: {\n      type: Number,\n      default: 0\n    },\n    aspectRatio: {\n      type: Number,\n      default: 4 / 3\n    }\n  },\n\n  data() {\n    return {\n      mImageSrc: '',\n      chosenRandomColor: this.randomBgColor()\n    }\n  },\n\n  watch: {\n    imageSrc: {\n      immediate: true,\n      handler: function name() {\n        this.mImageSrc = this.getImageSource()\n      }\n    }\n  },\n\n  methods: {\n    getImageSource() {\n      if (!this.imageSrc) { return this.generateAvatar() }\n      let source = ''\n      switch (this.type) {\n        case 'location':\n          source = this.$options.filters.getLocationImage(\n            this.imageSrc,\n            this.itemId,\n            this.imageSize\n          )\n          break\n\n        case 'event':\n          source = this.$options.filters.getEventImage(\n            this.imageSrc,\n            this.imageSize\n          )\n          break\n\n        case 'group':\n          source = this.$options.filters.getGroupImage(\n            this.imageSrc,\n            this.itemId,\n            this.imageSize\n          )\n          break\n\n        case 'article':\n          source = this.$options.filters.getArticleImage(\n            this.imageSrc,\n            this.itemId,\n            this.imageSize\n          )\n          break\n\n        default: {\n          source = this.imageSrc\n        }\n      }\n\n      return source + '?v=' + performance.now()\n    },\n\n    handleError(el) {\n      el.target.src = this.generateAvatar()\n    },\n\n    generateAvatar() {\n      let text = this.itemName.toUpperCase()\n      let width = this.imageSize !== 0 ? this.imageSize : 1280\n      let height = width / this.aspectRatio\n\n      var canvas = document.createElement('canvas');\n      canvas.width = width;\n      canvas.height = height;\n\n      // Get the drawing context\n      var ctx = canvas.getContext('2d');\n      ctx.beginPath();\n      ctx.rect(0, 0, width, height)\n      ctx.closePath();\n      ctx.fillStyle = this.chosenRandomColor\n      ctx.fill();\n      ctx.fillStyle = \"white\";\n      ctx.font = \"bold 26px Arial\";\n      ctx.textAlign = 'center';\n      this.wrapText(ctx, text, width / 2, height / 2 + 13, width - 20, 36)\n      return canvas.toDataURL();\n    },\n\n    randomBgColor() {\n      const arrColors = ['#4C9B9B', '#0B757A', '#CFE4E5', '#78FFDA', '#95c11e', '#fec632', '#fec632', '#00baff', '#ff6600']\n      return arrColors[Math.floor(Math.random() * arrColors.length)]\n    },\n\n    wrapText(context, text, x, y, maxWidth, lineHeight) {\n      var words = text.split(' ');\n      var line = '';\n\n      for (var n = 0; n < words.length; n++) {\n        var testLine = line + words[n] + ' ';\n        var metrics = context.measureText(testLine);\n        var testWidth = metrics.width;\n        if (testWidth > maxWidth && n > 0) {\n          context.fillText(line, x, y);\n          line = words[n] + ' ';\n          y += lineHeight;\n        }\n        else {\n          line = testLine;\n        }\n      }\n      context.fillText(line, x, y);\n    }\n  }\n}\n</script>\n\n<style lang=\"sass\" scoped>\n.image\n  position: relative\n  img\n    object-fit: cover\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageViewer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageViewer.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ImageViewer.vue?vue&type=template&id=0581e4ae&scoped=true\"\nimport script from \"./ImageViewer.vue?vue&type=script&lang=js\"\nexport * from \"./ImageViewer.vue?vue&type=script&lang=js\"\nimport style0 from \"./ImageViewer.vue?vue&type=style&index=0&id=0581e4ae&prod&lang=sass&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"0581e4ae\",\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar SetHelpers = require('../internals/set-helpers');\n\nmodule.exports = uncurryThisAccessor(SetHelpers.proto, 'size', 'get') || function (set) {\n  return set.size;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"wrapper-placeholder\",class:{'is-loading' : _vm.isLoading }},_vm._l((_vm.numberOfItems),function(i){return _c('span',{key:'item_' + i,staticClass:\"placeholder has-background-grey-light\",class:{'has-spacing': _vm.hasSpacing},style:(`width: ${_vm.getRandomInt(_vm.minLineWidth,_vm.maxLineWidth)}px; height: ${_vm.placeholderItemHeight};`)})}),0)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    class=\"wrapper-placeholder\"\n    :class=\"{'is-loading' : isLoading }\"\n  >\n    <span\n      v-for=\"i in numberOfItems\"\n      :key=\"'item_' + i\"\n      class=\"placeholder has-background-grey-light\"\n      :class=\"{'has-spacing': hasSpacing}\"\n      :style=\"`width: ${getRandomInt(minLineWidth,maxLineWidth)}px; height: ${placeholderItemHeight};`\"\n    ></span>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'text-placeholder',\n  props: {\n    fixSize: {\n      type: Number,\n      default: 0\n    },\n    numberOfItems: {\n      type: Number,\n      default: 10\n    },\n    isLoading: {\n      type: Boolean,\n      default: false\n    },\n    hasSpacing: {\n      type: Boolean,\n      default: true\n    },\n    placeholderItemHeight: {\n      type: String,\n      default: ''\n    },\n    minLineWidth: {\n      type: Number,\n      default: 24\n    },\n    maxLineWidth: {\n      type: Number,\n      default: 150\n    }\n  },\n\n  methods: {\n    /**\n * Get a random integer between `min` and `max`.\n * \n * @param {number} min - min number\n * @param {number} max - max number\n * @return {number} a random integer\n */\n    getRandomInt(min, max) {\n      let size = this.fixSize\n      if (!this.fixSize) {\n        size = Math.floor(Math.random() * (max - min + 1) + min);\n      }\n\n      // // Calculate percentage width based on maxLineWidth and size\n      // if (this.maxLineWidth > 0) {\n      //   size = Math.max(100 - Math.round((size / this.maxLineWidth) * 100), 24);\n      // }\n\n      return size\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n$lineHeight: 6px;\n.wrapper-placeholder {\n  position: relative;\n  display: flex;\n  flex-wrap: wrap;\n  overflow: hidden;\n  margin-top: -$lineHeight;\n  margin-bottom: -$lineHeight;\n  .placeholder {\n    height: 14px;\n    border-radius: $radius;\n    &.has-spacing {\n      margin: $lineHeight 10px $lineHeight 0;\n    }\n  }\n\n  &.is-loading {\n    animation: placeHolderShimmer 2s infinite cubic-bezier(0.65, 0.05, 0.36, 1);\n  }\n  @keyframes placeHolderShimmer {\n    0% {\n      opacity: 0.4;\n    }\n    // 25% {\n    //   opacity: 0.35;\n    // }\n    50% {\n      opacity: 1;\n    }\n    // 75% {\n    //   opacity: 0.35;\n    // }\n    100% {\n      opacity: 0.4;\n    }\n  }\n}\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextPlaceholder.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextPlaceholder.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TextPlaceholder.vue?vue&type=template&id=0d8039e2&scoped=true\"\nimport script from \"./TextPlaceholder.vue?vue&type=script&lang=js\"\nexport * from \"./TextPlaceholder.vue?vue&type=script&lang=js\"\nimport style0 from \"./TextPlaceholder.vue?vue&type=style&index=0&id=0d8039e2&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"0d8039e2\",\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar aSet = require('../internals/a-set');\nvar SetHelpers = require('../internals/set-helpers');\nvar size = require('../internals/set-size');\nvar getSetRecord = require('../internals/get-set-record');\nvar iterateSet = require('../internals/set-iterate');\nvar iterateSimple = require('../internals/iterate-simple');\n\nvar Set = SetHelpers.Set;\nvar add = SetHelpers.add;\nvar has = SetHelpers.has;\n\n// `Set.prototype.intersection` method\n// https://tc39.es/ecma262/#sec-set.prototype.intersection\nmodule.exports = function intersection(other) {\n  var O = aSet(this);\n  var otherRec = getSetRecord(other);\n  var result = new Set();\n\n  if (size(O) > otherRec.size) {\n    iterateSimple(otherRec.getIterator(), function (e) {\n      if (has(O, e)) add(result, e);\n    });\n  } else {\n    iterateSet(O, function (e) {\n      if (otherRec.includes(e)) add(result, e);\n    });\n  }\n\n  return result;\n};\n","'use strict';\nvar aSet = require('../internals/a-set');\nvar SetHelpers = require('../internals/set-helpers');\nvar clone = require('../internals/set-clone');\nvar getSetRecord = require('../internals/get-set-record');\nvar iterateSimple = require('../internals/iterate-simple');\n\nvar add = SetHelpers.add;\nvar has = SetHelpers.has;\nvar remove = SetHelpers.remove;\n\n// `Set.prototype.symmetricDifference` method\n// https://tc39.es/ecma262/#sec-set.prototype.symmetricdifference\nmodule.exports = function symmetricDifference(other) {\n  var O = aSet(this);\n  var keysIter = getSetRecord(other).getIterator();\n  var result = clone(O);\n  iterateSimple(keysIter, function (e) {\n    if (has(O, e)) remove(result, e);\n    else add(result, e);\n  });\n  return result;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":\"\",\"isSaving\":_vm.isSaving,\"isSavingSuccess\":_vm.isSavingSuccess,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError || _vm.isSavingSuccess,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.saveReservationExpiration,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('v-date-picker',{attrs:{\"mode\":\"single\",\"columns\":2,\"is-inline\":true,\"is-required\":true},on:{\"dayclick\":_vm.setDate},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}}),_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.minutes),expression:\"minutes\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.minutes=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.timeSlots),function(timeSlot){return _c('option',{key:timeSlot,domProps:{\"value\":timeSlot,\"selected\":_vm.minutes === timeSlot}},[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(timeSlot))+\" \")])}),0)])]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n    <ui-component-modal\n    modalTitle=''\n    :isSaving='isSaving'\n    :isSavingSuccess='isSavingSuccess'\n    :isSavingError='isSavingError'\n    :hideFooterButtons='isSavingError || isSavingSuccess'\n    :onClickCancel='onClickCancel'\n    :onClickSave='saveReservationExpiration'\n    :showModal='showModal'\n    @closeModal='onClickCancel'\n  >\n    <template slot='modalTitle'></template>\n    <template v-slot:content>\n      <v-date-picker\n          mode=\"single\"\n          v-model=\"date\"\n          :columns=\"2\"\n          :is-inline=\"true\"\n          :is-required=\"true\"\n          @dayclick=\"setDate\"\n        >\n        </v-date-picker>\n\n        <div class=\"select\">\n          <select v-model=\"minutes\">\n            <option\n              v-for=\"timeSlot in timeSlots\"\n              :key=\"timeSlot\"\n              :value=\"timeSlot\"\n              :selected=\"minutes === timeSlot\"\n            >\n              {{ timeSlot | minutesToTime }}\n            </option>\n          </select>\n        </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport reservationProvider from '@/providers/reservation'\n\nimport VCalendar from 'v-calendar'\nVue.use(VCalendar, {})\n\nexport default {\n  components: {},\n\n  props: {\n    showModal: {\n      type: Boolean,\n    default: false\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true\n    },\n\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: false,\n      type: Boolean,\n    },\n\n    expirationDate: {\n      type: Object,\n      default: null\n    }\n  },\n\n  data() {\n    return {\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      date: new Date(),\n      minutes: 1440,\n      mExpirationDate: null\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n\n    timeSlots() {\n      let result = []\n      let minutes = 15\n\n      let i = 0\n      while (i <= 1440) {\n        result.push(i)\n        i = i + minutes\n      }\n\n      return result\n    },\n  },\n\n  created() {\n    if (this.expirationDate) {\n      this.mExpirationDate = JSON.parse(JSON.stringify(this.expirationDate))\n      this.date = this.$options.filters.parseIsoDateStringToDate(this.expirationDate.Date)\n      this.minutes = this.expirationDate.Minutes\n    }\n    else {\n      this.mExpirationDate = {\n        Date: this.date,\n        Minutes: this.minutes\n      }\n    }\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    setDate() {\n      this.mExpirationDate.Date = this.date\n    },\n\n    saveReservationExpiration() {\n      let self = this\n\n      if (!self.isSaving) {\n        self.isSaving = true\n\n        let isoDate = this.$options.filters.dateObjectIsoDateString(this.date)\n\n        reservationProvider.methods\n        .upsertReservationExpiration(this.reservation.Key, isoDate, this.minutes)\n        .then(response => {\n          if (response.status === 200)\n          {\n            this.setReservation(response.data)\n\n            EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservation.ModalDeleteSpace.Toast_ReservationSaved'\n                ),\n              })\n\n              self.onClickCancel()\n          }\n        })\n        .finally(() => {\n          this.isSaving = false\n        })\n      }\n    }\n  }\n}\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalSetExpiration.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalSetExpiration.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalSetExpiration.vue?vue&type=template&id=1396fdd9\"\nimport script from \"./ModalSetExpiration.vue?vue&type=script&lang=js\"\nexport * from \"./ModalSetExpiration.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[_c('div',[_c('div',{staticClass:\"accordions\"},[(_vm.isEmployee)?_c('article',{staticClass:\"accordion\",class:{ 'is-active': _vm.selectedAccordion === 0 || _vm.showAllAccordions }},[_c('div',{staticClass:\"accordion-header toggle\",on:{\"click\":function($event){return _vm.setActiveAccordion(0)}}},[_c('p',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_GlobalSettings'))+\" \")]),_c('button',{staticClass:\"toggle\",attrs:{\"aria-label\":\"toggle\"},on:{\"click\":function($event){return _vm.setActiveAccordion(0)}}})]),_c('div',{staticClass:\"accordion-body\"},[_c('div',{staticClass:\"accordion-content\"},[_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.copyData.InSet),expression:\"copyData.InSet\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.copyData.InSet)?_vm._i(_vm.copyData.InSet,null)>-1:(_vm.copyData.InSet)},on:{\"change\":function($event){var $$a=_vm.copyData.InSet,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.copyData, \"InSet\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.copyData, \"InSet\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.copyData, \"InSet\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_MakePartOfSet'))+\" \")])]),_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.copyData.CreateProposal),expression:\"copyData.CreateProposal\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.copyData.CreateProposal)?_vm._i(_vm.copyData.CreateProposal,null)>-1:(_vm.copyData.CreateProposal)},on:{\"change\":function($event){var $$a=_vm.copyData.CreateProposal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.copyData, \"CreateProposal\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.copyData, \"CreateProposal\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.copyData, \"CreateProposal\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_CreateProposal'))+\" \")])]),_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.copyData.CopyComments),expression:\"copyData.CopyComments\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.copyData.CopyComments)?_vm._i(_vm.copyData.CopyComments,null)>-1:(_vm.copyData.CopyComments)},on:{\"change\":function($event){var $$a=_vm.copyData.CopyComments,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.copyData, \"CopyComments\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.copyData, \"CopyComments\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.copyData, \"CopyComments\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_CopyComments'))+\" \")])]),_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.copyData.CopyNotes),expression:\"copyData.CopyNotes\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.copyData.CopyNotes)?_vm._i(_vm.copyData.CopyNotes,null)>-1:(_vm.copyData.CopyNotes)},on:{\"change\":function($event){var $$a=_vm.copyData.CopyNotes,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.copyData, \"CopyNotes\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.copyData, \"CopyNotes\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.copyData, \"CopyNotes\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_CopyNotes'))+\" \")])])])])]):_vm._e(),_vm._l((_vm.copyData.Dates),function(date,index){return _c('article',{key:index,staticClass:\"accordion\",class:{\n          'is-active': _vm.selectedAccordion === index + 1 || _vm.showAllAccordions\n        }},[_c('div',{staticClass:\"accordion-header\",on:{\"click\":function($event){return _vm.setActiveAccordion(index + 1, index)}}},[_c('div',[_c('span',[_vm._v(_vm._s(_vm._f(\"dateFormat\")(date.SourceDate,_vm.$i18n.locale)))]),(date.SourceDate)?[_c('span',{staticClass:\"mx-4\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'arrow-right']}})],1),(_vm.checkIfDateNotEqual(date.SourceDate, date.NewDate))?_c('span',[_vm._v(_vm._s(_vm._f(\"dateFormat\")(date.NewDate,_vm.$i18n.locale)))]):_vm._e()]:_vm._e()],2),_c('button',{staticClass:\"toggle\",attrs:{\"aria-label\":\"toggle\"},on:{\"click\":function($event){return _vm.setActiveAccordion(index + 1, index)}}})]),_c('div',{staticClass:\"accordion-body\"},[_c('div',{staticClass:\"accordion-content has-custom-scrollbar\"},[_c('div',{staticClass:\"slider-wrapper\"},[_c('transition-group',{attrs:{\"name\":!_vm.showAlternatives ? 'slideback' : 'slide',\"tag\":\"div\"}},[(!_vm.showAlternatives)?_c('div',{key:1,staticClass:\"slideContent slideContent-dateSelector\"},[(_vm.dataIsSetup)?_c('div',[_c('div',[_c('div',{staticClass:\"wrapper-dateSelector mb-4\"},[_c('div',{staticClass:\"f\"},[_c('v-date-picker',{ref:\"calendar\",refInFor:true,attrs:{\"mode\":\"single\",\"id\":index,\"columns\":_vm.$screens({ default: 1, md: 2, lg: 3 }),\"is-expanded\":_vm.$screens({ default: true, lg: true }),\"value\":date.NewDate,\"from-page\":_vm.openCalendarMonth,\"is-inline\":true,\"is-required\":true,\"min-date\":_vm.disableDatesTillToday,\"disabled-dates\":_vm.disabledDates},on:{\"dayclick\":function($event){return _vm.searchAvailability($event, index)}}})],1)]),(!_vm.checkIfDateNotEqual(date.SourceDate, date.NewDate))?_c('div',[_c('Message',{scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('span',{staticClass:\"icon-text\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.message_SelectNewDate')))])])]},proxy:true}],null,true)})],1):[_c('div',{staticClass:\"mb-4\"},[_c('div',{staticClass:\"p-3 spaces-container has-background-white\"},[_c('div',{staticClass:\"mb-1 row row-space row-space-heading has-text-weight-bold\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_Space'))+\" \")]),_c('div',{staticClass:\"is-hidden-touch\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_SeatsConfiguration'))+\" \")]),_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_Price'))+\" \")]),_c('div',{staticClass:\"has-text-left\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.header_Available'))+\" \")]),_c('div',[_vm._v(\" \")])]),_vm._l((date.Spaces),function(space){return _c('div',{key:space.Id,staticClass:\"row row-space py-3\"},[_c('div',{staticClass:\"row-space-content p-1\"},[_c('div',[_vm._v(\" \"+_vm._s(space.SpaceName)+\" \"),_c('div',{staticClass:\"is-hidden-desktop\"},[_vm._v(\" \"+_vm._s(space.Seats)+\"x \"+_vm._s(_vm._f(\"getSettingName\")(space.SettingId))+\" \")])]),_c('div',{staticClass:\"is-hidden-touch\"},[_vm._v(\" \"+_vm._s(space.Seats)+\"x \"+_vm._s(_vm._f(\"getSettingName\")(space.SettingId))+\" \")]),_c('div',[_c('p',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(space.PricePerSeat,_vm.locationState.Settings.LanguageCulture, space.CurrencyIso)))])]),_c('div',[(_vm.isCheckingDate)?_c('span',{staticClass:\"is-size-5\",class:{ 'is-loading': _vm.isCheckingDate }},[_vm._v(\" \")]):_vm._e(),(!_vm.isCheckingDate)?_c('div',[(space.Warnings.length)?_c('div',{staticClass:\"tags\"},_vm._l((space.Warnings),function(warning,wIndex){return _c('span',{key:wIndex,staticClass:\"tag is-danger\"},[_vm._v(\" \"+_vm._s(_vm.$t('AvailabilityWarnings.warning_' + warning))+\" \"),(_vm.isEmployee)?_c('button',{staticClass:\"delete is-small\",attrs:{\"label\":\"Ignore\"},on:{\"click\":function($event){space.Warnings.splice(\n                                              space.Warnings.findIndex((w) => w === warning),\n                                              1\n                                            )}}}):_vm._e()])}),0):_vm._e(),(!space.Warnings.length)?_c('span',{staticClass:\"icon is-size-5\",class:space.Warnings.length === 0 ? 'has-text-success' : 'has-text-danger'},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', space.Warnings.length === 0 ? 'check' : 'times']}})],1):_vm._e()]):_vm._e()]),_c('div',[_c('div',{staticClass:\"field is-grouped is-pulled-right\"},[_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"has-text-link has-icon\",on:{\"click\":function($event){return _vm.setShowAlternatives(space, index)}}},[_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_ShowAlternatives')))]),_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-right']}})],1)])])])])]),(_vm.isEmployee && !_vm.isCheckingDate && space.NewPricePerSeat !== space.PricePerSeat)?_c('div',{staticClass:\"mt-1 p-1 is-inline-flex is-align-items-center row-space-message row-space-message-actualPrice has-background-info-light has-text-info-dark\"},[_c('div',{staticClass:\"is-flex-grow-1\"},[_c('i18n',{attrs:{\"path\":\"Components.Reservation.CopyReservation.message_ActualPrice\",\"tag\":\"div\"},scopedSlots:_vm._u([{key:\"price\",fn:function(){return [_c('b',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(space.NewPricePerSeat,_vm.locationState.Settings.LanguageCulture, space.CurrencyIso)))])]},proxy:true}],null,true)})],1),_c('div',{staticClass:\"is-flex-shrink-0\"},[_c('div',{staticClass:\"buttons is-right\"},[_c('a',{staticClass:\"button is-small is-ghost\",on:{\"click\":function($event){return _vm.ignoreNewSpacePrice(space)}}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Schedule.ModalConfirmChanges.Button_IgnoreWarning'))+\" \")]),_c('a',{staticClass:\"button is-small is-primary\",on:{\"click\":function($event){return _vm.applyNewSpacePrice(space)}}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Schedule.ModalConfirmChanges.Button_ApplyPrice'))+\" \")])])])]):_vm._e()])})],2)]),(_vm.isEmployee)?[_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(date.CopyPackages),expression:\"date.CopyPackages\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(date.CopyPackages)?_vm._i(date.CopyPackages,null)>-1:(date.CopyPackages)},on:{\"change\":function($event){var $$a=date.CopyPackages,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(date, \"CopyPackages\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(date, \"CopyPackages\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(date, \"CopyPackages\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_CopyPackages'))+\" \")])]),_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(date.CopyOptions),expression:\"date.CopyOptions\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(date.CopyOptions)?_vm._i(date.CopyOptions,null)>-1:(date.CopyOptions)},on:{\"change\":function($event){var $$a=date.CopyOptions,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(date, \"CopyOptions\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(date, \"CopyOptions\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(date, \"CopyOptions\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_CopyOptions'))+\" \")]),(date.CopyOptions)?_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(date.OptionsOriginalPrice),expression:\"date.OptionsOriginalPrice\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(date.OptionsOriginalPrice)?_vm._i(date.OptionsOriginalPrice,null)>-1:(date.OptionsOriginalPrice)},on:{\"change\":function($event){var $$a=date.OptionsOriginalPrice,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(date, \"OptionsOriginalPrice\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(date, \"OptionsOriginalPrice\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(date, \"OptionsOriginalPrice\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_KeepOriginalPricing'))+\" \")])]):_vm._e()]),_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(date.CopyNotes),expression:\"date.CopyNotes\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(date.CopyNotes)?_vm._i(date.CopyNotes,null)>-1:(date.CopyNotes)},on:{\"change\":function($event){var $$a=date.CopyNotes,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(date, \"CopyNotes\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(date, \"CopyNotes\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(date, \"CopyNotes\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_CopyNotes'))+\" \")])])]:_vm._e()]],2)]):_vm._e()]):_vm._e(),(_vm.showAlternatives)?_c('div',{key:\"2\",staticClass:\"slideContent-alternatives slideContent\"},[_c('div',{staticClass:\"backbar\"},[_c('div',{staticClass:\"button-back-container\"},[_c('a',{staticClass:\"button is-outlined\",on:{\"click\":_vm.hideAlternatives}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Form.Control.Back'))}})])]),_c('div',{staticClass:\"box-currentSpace box\"},[_c('div',{staticClass:\"has-text-grey is-size-7\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyDate.label_CurrentSpace'))+\":\")]),_c('div',{staticClass:\"title is-4 mb-0\"},[_vm._v(\" \"+_vm._s(_vm.selectedSpace.SpaceName)+\" \")]),_c('div',[_c('div',[_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"dateFormat\")(_vm.selectedSpace.StartDate,_vm.$i18n.locale, 'longDateFormat'))+\", \"),_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.selectedSpace.StartMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.selectedSpace.EndMinutes))+\" \")])]),_c('span',[_vm._v(\"| \"+_vm._s(_vm.$tc('Components.Reservation.ModalChangeDate.Text_Seats', _vm.selectedSpace.Seats)))]),_c('span',[_vm._v(\"| \"+_vm._s(_vm._f(\"toCurrency\")(_vm.selectedSpace.PricePerSeat,_vm.$i18n.locale, _vm.selectedSpace.CurrencyIso)))])])])])]),_c('hr'),(_vm.isLoadingAlternatives)?_c('ui-loader'):_c('div',{staticClass:\"columns-alternatives\"},_vm._l((_vm.availablity?.Locations),function(location){return _c('div',{key:'las' + location.Id},[_c('AvailableLocation',{key:location.Id,staticClass:\"list-availableSpaces\",attrs:{\"availableLocation\":location,\"meetingtypeId\":_vm.reservation.MeetingtypeId,\"showUnavailable\":_vm.isEmployee,\"viewType\":\"list-row\"}})],1)}),0)],1):_vm._e()])],1)])])])})],2),(_vm.showConfirmation)?_c('div',{key:3,staticClass:\"slideContent slideContent-confirmation\"},[_c('h1',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.Reservations.ModalCopyReservation.Confirmation_New-reservation-created'))}}),(_vm.newReservation)?_c('h3',[_vm._v(_vm._s(_vm.newReservation.Id))]):_vm._e()]):_vm._e()]),_c('div',{staticClass:\"buttons is-right mt-6\"},[(!_vm.isSaving)?_c('a',{staticClass:\"button is-ghost has-margin-right\",attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.closeDrawer}},[_vm._v(_vm._s(_vm.$t('Form.Control.Cancel')))]):_vm._e(),_c('a',{staticClass:\"button is-large is-primary\",class:[\n        {\n          'is-loading': _vm.isSaving,\n          'is-disabled': _vm.isSaving || !_vm.enableCopyButton\n        }\n      ],attrs:{\"disabled\":!_vm.enableCopyButton},on:{\"click\":_vm.copyReservation}},[_vm._v(\" \"+_vm._s(_vm.$t('Form.Control.Copy'))+\" \")])])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <div>\n      <div class=\"accordions\">\n        <article\n          v-if=\"isEmployee\"\n          class=\"accordion\"\n          :class=\"{ 'is-active': selectedAccordion === 0 || showAllAccordions }\"\n        >\n          <div\n            @click=\"setActiveAccordion(0)\"\n            class=\"accordion-header toggle\"\n          >\n            <p>\n              {{ $t('Components.Reservation.CopyReservation.header_GlobalSettings') }}\n            </p>\n            <button\n              @click=\"setActiveAccordion(0)\"\n              class=\"toggle\"\n              aria-label=\"toggle\"\n            ></button>\n          </div>\n          <div class=\"accordion-body\">\n            <div class=\"accordion-content\">\n              <div>\n                <label class=\"checkbox\">\n                  <input\n                    type=\"checkbox\"\n                    v-model=\"copyData.InSet\"\n                  />\n                  {{ $t('Components.Reservation.CopyReservation.label_MakePartOfSet') }}\n                </label>\n              </div>\n\n              <div>\n                <label class=\"checkbox\">\n                  <input\n                    type=\"checkbox\"\n                    v-model=\"copyData.CreateProposal\"\n                  />\n                  {{ $t('Components.Reservation.CopyReservation.label_CreateProposal') }}\n                </label>\n              </div>\n\n              <div>\n                <label class=\"checkbox\">\n                  <input\n                    type=\"checkbox\"\n                    v-model=\"copyData.CopyComments\"\n                  />\n                  {{ $t('Components.Reservation.CopyReservation.label_CopyComments') }}\n                </label>\n              </div>\n\n              <div>\n                <label class=\"checkbox\">\n                  <input\n                    type=\"checkbox\"\n                    v-model=\"copyData.CopyNotes\"\n                  />\n                  {{ $t('Components.Reservation.CopyReservation.label_CopyNotes') }}\n                </label>\n              </div>\n            </div>\n          </div>\n        </article>\n\n        <article\n          v-for=\"(date, index) in copyData.Dates\"\n          :key=\"index\"\n          class=\"accordion\"\n          :class=\"{\n            'is-active': selectedAccordion === index + 1 || showAllAccordions\n          }\"\n        >\n          <div\n            @click=\"setActiveAccordion(index + 1, index)\"\n            class=\"accordion-header\"\n          >\n            <div>\n              <span>{{ date.SourceDate | dateFormat($i18n.locale) }}</span>\n              <template v-if=\"date.SourceDate\">\n                <span class=\"mx-4\">\n                  <font-awesome-icon :icon=\"['fas', 'arrow-right']\" />\n                </span>\n                <span v-if=\"checkIfDateNotEqual(date.SourceDate, date.NewDate)\">{{ date.NewDate | dateFormat($i18n.locale) }}</span>\n              </template>\n            </div>\n            <button\n              @click=\"setActiveAccordion(index + 1, index)\"\n              class=\"toggle\"\n              aria-label=\"toggle\"\n            ></button>\n          </div>\n          <div class=\"accordion-body\">\n            <div class=\"accordion-content has-custom-scrollbar\">\n              <div class=\"slider-wrapper\">\n                <transition-group\n                  :name=\"!showAlternatives ? 'slideback' : 'slide'\"\n                  tag=\"div\"\n                >\n                  <div\n                    v-if=\"!showAlternatives\"\n                    :key=\"1\"\n                    class=\"slideContent slideContent-dateSelector\"\n                  >\n                    <div v-if=\"dataIsSetup\">\n                      <div>\n                        <div class=\"wrapper-dateSelector mb-4\">\n                          <div class=\"f\">\n                            <v-date-picker\n                              mode=\"single\"\n                              ref=\"calendar\"\n                              :id=\"index\"\n                              :columns=\"$screens({ default: 1, md: 2, lg: 3 })\"\n                              :is-expanded=\"$screens({ default: true, lg: true })\"\n                              :value=\"date.NewDate\"\n                              :from-page=\"openCalendarMonth\"\n                              :is-inline=\"true\"\n                              :is-required=\"true\"\n                              :min-date=\"disableDatesTillToday\" \n                              :disabled-dates=\"disabledDates\"\n                              @dayclick=\"searchAvailability($event, index)\"\n                            >\n                            </v-date-picker>\n                          </div>\n                        </div>\n                        <div v-if=\"!checkIfDateNotEqual(date.SourceDate, date.NewDate)\">\n                          <Message>\n                            <template #content>\n                              <span class=\"icon-text\">\n                                <span class=\"icon\">\n                                  <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                                </span>\n                                <span>{{ $t('Components.Reservation.CopyReservation.message_SelectNewDate') }}</span>\n                              </span>\n                            </template>\n                          </Message>\n                        </div>\n                        <template v-else>\n                          <div class=\"mb-4\">\n                            <div class=\"p-3 spaces-container has-background-white\">\n                              <div class=\"mb-1 row row-space row-space-heading has-text-weight-bold\">\n                                <div>\n                                  {{ $t('Components.Reservation.CopyReservation.header_Space') }}\n                                </div>\n                                <div class=\"is-hidden-touch\">\n                                  {{ $t('Components.Reservation.CopyReservation.header_SeatsConfiguration') }}\n                                </div>\n                                <div>\n                                  {{ $t('Components.Reservation.CopyReservation.header_Price') }}\n                                </div>\n                                <div class=\"has-text-left\">\n                                  {{ $t('Components.Reservation.CopyReservation.header_Available') }}\n                                </div>\n                                <div>&nbsp;</div>\n                              </div>\n\n                              <div\n                                v-for=\"space in date.Spaces\"\n                                :key=\"space.Id\"\n                                class=\"row row-space py-3\"\n                              >\n                                <div class=\"row-space-content p-1\">\n                                  <div>\n                                    {{ space.SpaceName }}\n                                    <div class=\"is-hidden-desktop\">\n                                      {{ space.Seats }}x\n                                      {{ space.SettingId | getSettingName }}\n                                    </div>\n                                  </div>\n                                  <div class=\"is-hidden-touch\">\n                                    {{ space.Seats }}x\n                                    {{ space.SettingId | getSettingName }}\n                                  </div>\n                                  <div>\n                                    <p>{{ space.PricePerSeat | toCurrency(locationState.Settings.LanguageCulture, space.CurrencyIso) }}</p>\n                                  </div>\n                                  <div>\n                                    <span\n                                      v-if=\"isCheckingDate\"\n                                      class=\"is-size-5\"\n                                      :class=\"{ 'is-loading': isCheckingDate }\"\n                                      >&nbsp;</span\n                                    >\n                                    <div v-if=\"!isCheckingDate\">\n                                      <div\n                                        v-if=\"space.Warnings.length\"\n                                        class=\"tags\"\n                                      >\n                                        <span\n                                          v-for=\"(warning, wIndex) in space.Warnings\"\n                                          :key=\"wIndex\"\n                                          class=\"tag is-danger\"\n                                        >\n                                          {{ $t('AvailabilityWarnings.warning_' + warning) }}\n                                          <button\n                                            v-if=\"isEmployee\"\n                                            @click=\"\n                                              space.Warnings.splice(\n                                                space.Warnings.findIndex((w) => w === warning),\n                                                1\n                                              )\n                                            \"\n                                            class=\"delete is-small\"\n                                            label=\"Ignore\"\n                                          ></button>\n                                        </span>\n                                      </div>\n                                      <span\n                                        v-if=\"!space.Warnings.length\"\n                                        :class=\"space.Warnings.length === 0 ? 'has-text-success' : 'has-text-danger'\"\n                                        class=\"icon is-size-5\"\n                                      >\n                                        <font-awesome-icon :icon=\"['fas', space.Warnings.length === 0 ? 'check' : 'times']\" />\n                                      </span>\n                                    </div>\n                                  </div>\n                                  <div>\n                                    <div class=\"field is-grouped is-pulled-right\">\n                                      <p class=\"control\">\n                                        <a\n                                          @click=\"setShowAlternatives(space, index)\"\n                                          class=\"has-text-link has-icon\"\n                                        >\n                                          <span>{{ $t('Components.Reservation.CopyReservation.label_ShowAlternatives') }}</span>\n                                          <span class=\"icon\"><font-awesome-icon :icon=\"['fas', 'chevron-right']\" /></span>\n                                        </a>\n                                      </p>\n                                    </div>\n                                  </div>\n                                </div>\n                                <div\n                                  v-if=\"isEmployee && !isCheckingDate && space.NewPricePerSeat !== space.PricePerSeat\"\n                                  class=\"mt-1 p-1 is-inline-flex is-align-items-center row-space-message row-space-message-actualPrice has-background-info-light has-text-info-dark\"\n                                >\n                                  <div class=\"is-flex-grow-1\">\n                                    <i18n\n                                      path=\"Components.Reservation.CopyReservation.message_ActualPrice\"\n                                      tag=\"div\"\n                                    >\n                                      <template v-slot:price\n                                        ><b>{{ space.NewPricePerSeat | toCurrency(locationState.Settings.LanguageCulture, space.CurrencyIso) }}</b></template\n                                      >\n                                    </i18n>\n                                  </div>\n                                  <div class=\"is-flex-shrink-0\">\n                                    <div class=\"buttons is-right\">\n                                      <a\n                                        @click=\"ignoreNewSpacePrice(space)\"\n                                        class=\"button is-small is-ghost\"\n                                      >\n                                        {{ $t('Components.Schedule.ModalConfirmChanges.Button_IgnoreWarning') }}\n                                      </a>\n                                      <a\n                                        @click=\"applyNewSpacePrice(space)\"\n                                        class=\"button is-small is-primary\"\n                                      >\n                                        {{ $t('Components.Schedule.ModalConfirmChanges.Button_ApplyPrice') }}\n                                      </a>\n                                    </div>\n                                  </div>\n                                </div>\n                              </div>\n                            </div>\n                          </div>\n\n                          <template v-if=\"isEmployee\">\n                            <div>\n                              <label class=\"checkbox\">\n                                <input\n                                  type=\"checkbox\"\n                                  v-model=\"date.CopyPackages\"\n                                />\n                                {{ $t('Components.Reservation.CopyReservation.label_CopyPackages') }}\n                              </label>\n                            </div>\n\n                            <div>\n                              <label class=\"checkbox\">\n                                <input\n                                  type=\"checkbox\"\n                                  v-model=\"date.CopyOptions\"\n                                />\n                                {{ $t('Components.Reservation.CopyReservation.label_CopyOptions') }}\n                              </label>\n\n                              <div v-if=\"date.CopyOptions\">\n                                <label class=\"checkbox\">\n                                  <input\n                                    type=\"checkbox\"\n                                    v-model=\"date.OptionsOriginalPrice\"\n                                  />\n                                  {{ $t('Components.Reservation.CopyReservation.label_KeepOriginalPricing') }}\n                                </label>\n                              </div>\n                            </div>\n\n                            <div>\n                              <label class=\"checkbox\">\n                                <input\n                                  type=\"checkbox\"\n                                  v-model=\"date.CopyNotes\"\n                                />\n                                {{ $t('Components.Reservation.CopyReservation.label_CopyNotes') }}\n                              </label>\n                            </div>\n                          </template>\n                        </template>\n                      </div>\n                    </div>\n                  </div>\n\n                  <!-- Show alternatives -->\n                  <div\n                    v-if=\"showAlternatives\"\n                    key=\"2\"\n                    class=\"slideContent-alternatives slideContent\"\n                  >\n                    <div class=\"backbar\">\n                      <div class=\"button-back-container\">\n                        <a\n                          @click=\"hideAlternatives\"\n                          class=\"button is-outlined\"\n                        >\n                          <span class=\"icon is-small\">\n                            <font-awesome-icon :icon=\"['fas', 'chevron-left']\" />\n                          </span>\n                          <span v-text=\"$t('Form.Control.Back')\"></span>\n                        </a>\n                      </div>\n                      <div class=\"box-currentSpace box\">\n                        <div class=\"has-text-grey is-size-7\">{{ $t('Components.Reservation.CopyDate.label_CurrentSpace') }}:</div>\n                        <div class=\"title is-4 mb-0\">\n                          {{ selectedSpace.SpaceName }}\n                        </div>\n                        <div>\n                          <div>\n                            <span>\n                              {{ selectedSpace.StartDate | dateFormat($i18n.locale, 'longDateFormat') }},\n                              <span>\n                                {{ selectedSpace.StartMinutes | minutesToTime }}\n                                -\n                                {{ selectedSpace.EndMinutes | minutesToTime }}\n                              </span>\n                            </span>\n                            <span>| {{ $tc('Components.Reservation.ModalChangeDate.Text_Seats', selectedSpace.Seats) }}</span>\n                            <span>| {{ selectedSpace.PricePerSeat | toCurrency($i18n.locale, selectedSpace.CurrencyIso) }}</span>\n                          </div>\n                        </div>\n                      </div>\n                    </div>\n                    <hr />\n                    <ui-loader v-if=\"isLoadingAlternatives\" />\n                    <div\n                      v-else\n                      class=\"columns-alternatives\"\n                    >\n                      <div\n                        v-for=\"location in availablity?.Locations\"\n                        :key=\"'las' + location.Id\"\n                      >\n                        <AvailableLocation\n                          :key=\"location.Id\"\n                          :availableLocation=\"location\"\n                          :meetingtypeId=\"reservation.MeetingtypeId\"\n                          :showUnavailable=\"isEmployee\"\n                          viewType=\"list-row\"\n                          class=\"list-availableSpaces\"\n                        />\n                      </div>\n                    </div>\n                  </div>\n                </transition-group>\n              </div>\n            </div>\n          </div>\n        </article>\n      </div>\n\n      <!-- Confirmation -->\n      <div\n        v-if=\"showConfirmation\"\n        :key=\"3\"\n        class=\"slideContent slideContent-confirmation\"\n      >\n        <h1 v-text=\"$t('Components.Reservations.ModalCopyReservation.Confirmation_New-reservation-created')\"></h1>\n        <h3 v-if=\"newReservation\">{{ newReservation.Id }}</h3>\n      </div>\n    </div>\n\n    <div class=\"buttons is-right mt-6\">\n      <a\n        v-if=\"!isSaving\"\n        @click=\"closeDrawer\"\n        class=\"button is-ghost has-margin-right\"\n        :disabled=\"isSaving\"\n        >{{ $t('Form.Control.Cancel') }}</a\n      >\n      <a\n        @click=\"copyReservation\"\n        class=\"button is-large is-primary\"\n        :class=\"[\n          {\n            'is-loading': isSaving,\n            'is-disabled': isSaving || !enableCopyButton\n          }\n        ]\"\n        :disabled=\"!enableCopyButton\"\n      >\n        {{ $t('Form.Control.Copy') }}\n      </a>\n    </div>\n  </div>\n</template>\n\n<script>\nimport Vue from 'vue';\nimport { EventBus } from '@/eventbus/event-bus';\nimport { mapState, mapMutations } from 'vuex';\nimport { format, isBefore, isEqual, parseISO } from 'date-fns';\nimport availabilityProvider from '@/providers/availability';\nimport reservationProvider from '@/providers/reservation';\nimport voucherProvider from '@/providers/voucher';\nimport AvailableLocation from '../Availability/AvailableLocation.vue';\nimport VCalendar from 'v-calendar';\nimport { cleanSource } from '../../utils/objectHelper';\nimport Message from '../UI/Message.vue';\nVue.use(VCalendar, {});\n\nexport default {\n  components: {\n    AvailableLocation,\n    Message\n  },\n\n  props: {\n    showAllAccordions: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  data(vm) {\n    const isEmployee = vm.$store.getters['locationStore/isEmployee']\n    const disableDatesTillToday = isEmployee ? undefined : new Date()\n    return {\n      disableDatesTillToday,\n      applyVoucher: false,\n      availablity: {},\n      back: false,\n      createProposal: false,\n      copyFinalized: false,\n      date: new Date().getTime(),\n      fieldId: new Date().getTime(),\n      firstLoad: true,\n      isLoadingAlternatives: false,\n      isSaving: false,\n      isSavingError: false,\n      meetingspaces: [],\n      message: '',\n      selectedAccordion: 0,\n      selectedAccordionDateIndex: 0,\n      newReservation: null,\n      showAlternatives: false,\n      selectedSpace: null,\n      showConfirmation: false,\n      dateChangeCounter: 0,\n      voucher: null,\n      dataIsSetup: false,\n      copyData: {\n        ReservationId: 0,\n        LocationId: 0,\n        InSet: isEmployee ? true : false,\n        CreateProposal: false,\n        CopyComments: true,\n        CopyNotes: true,\n        // CTP-1604: ask the API to re-apply the reservation's voucher to the copy. Without this the\n        // copy keeps the voucher code but is charged the full room rate, because the prices posted\n        // below are quoted without the voucher. Set from the reservation in created(), next to\n        // applyVoucher.\n        CopyVoucher: false,\n        Dates: []\n      },\n      isCheckingDateCounter: 0,\n\n      openCalendarMonth: {\n        month: new Date().getMonth(),\n        year: new Date().getFullYear()\n      }\n    };\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('reservationStore', ['reservation']),\n\n    isCheckingDate() {\n      return this.isCheckingDateCounter > 0;\n    },\n\n    isEmployee() {\n      let employee = false;\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true;\n      }\n\n      return employee;\n    },\n\n    disabledDates() {\n      let dates = [];\n\n      if (this.reservation && this.reservation.Dates) {\n        if (this.reservation.Status !== 'Cancelled') {\n          for (let i = 0; i < this.reservation.Dates.filter(rd => rd.Status !== 'Cancelled').length; i++) {\n            let resDate = this.reservation.Dates[i];\n\n            dates.push({\n              start: parseISO(resDate.Date),\n              end: parseISO(resDate.Date)\n            });\n          }\n        }\n\n        if (this.reservation.SetId > 0) {\n          let fitereRes = this.reservation.ReservationSet.filter((r) => r.Status !== 'Cancelled');\n\n          for (let j = 0; j < fitereRes.length; j++) {\n            let set = fitereRes[j];\n\n            dates.push({\n              start: parseISO(set.Date),\n              end: parseISO(set.Date)\n            });\n          }\n        }\n\n        this.copyData.Dates.forEach((cd) => {\n          if (cd.NewDate !== null && this.$options.filters.dateObjectIsoDateString(cd.SourceDate, 'yyyy-MM-dd') !== this.$options.filters.dateObjectIsoDateString(cd.NewDate, 'yyyy-MM-dd')) {\n            const _d = typeof cd.NewDate === 'string' ? parseISO(cd.NewDate) : cd.NewDate;\n            dates.push({\n              start: _d,\n              end: _d\n            });\n          }\n        });\n      }\n\n      return dates;\n    },\n\n    allSpacesAvailable() {\n      let allAvailable = false;\n      let checkCounter = 0;\n      let errorCounter = 0;\n\n      for (let i = 0; i < this.copyData.Dates.length; i++) {\n        let date = this.copyData.Dates[i];\n\n        for (let j = 0; j < date.Spaces.length; j++) {\n          let space = date.Spaces[j];\n          if (space.Warnings.length > 0 || space.PricePerSeat !== space.NewPricePerSeat) {\n            errorCounter++;\n          }\n\n          checkCounter++;\n        }\n      }\n\n      if (checkCounter > 0 && errorCounter === 0) {\n        allAvailable = true;\n      }\n\n      return allAvailable;\n    },\n\n    hasChanges() {\n      if (this.isSaving) {\n        return true;\n      }\n      let allDatesChanged = this.copyData.Dates.filter((cd) => cd.NewDate !== null && this.$options.filters.dateObjectIsoDateString(cd.SourceDate, 'yyyy-MM-dd') !== this.$options.filters.dateObjectIsoDateString(cd.NewDate, 'yyyy-MM-dd')).length === this.copyData.Dates.length;\n      return allDatesChanged;\n    },\n\n    isDraft() {\n      return this.reservation && this.reservation.Type === 'Draft';\n    },\n\n    enableCopyButton() {\n      return this.allSpacesAvailable && !this.isCheckingDate && this.hasChanges && !this.isDraft;\n    }\n  },\n\n  created() {\n    if (this.reservation.VoucherId > 0) {\n      this.applyVoucher = true;\n      this.copyData.CopyVoucher = true;\n      this.getVoucher();\n    }\n\n    EventBus.$on('spaceSelected', (space) => {\n      this.updateSelectedSpaceWithAlternative(space);\n    });\n\n    this.setupCopyData();\n  },\n\n  beforeDestroy() {\n    EventBus.$off('spaceSelected');\n  },\n\n  mounted() {\n    this.firstLoad = false;\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    checkIfDateNotEqual(SourceDate, newDate) {\n      return !isEqual(SourceDate, newDate);\n    },\n\n    setActiveAccordion(index, selectedAccordionDateIndex) {\n      (this.selectedAccordion = index), (this.selectedAccordionDateIndex = selectedAccordionDateIndex);\n\n      this.showAlternatives = false;\n      this.selectedSpace = null;\n    },\n\n    setupCopyData() {\n      this.copyData.ReservationId = this.reservation.Id;\n      this.copyData.LocationId = this.locationState.Id;\n      this.copyData.CreateProposal = this.reservation.Type === 'Proposal';\n\n      let firstDate = this.reservation.Dates[0];\n      this.openCalendarMonth.month = parseISO(firstDate.Date).getMonth();\n      this.openCalendarMonth.year = parseISO(firstDate.Date).getFullYear();\n\n      for (let i = 0; i < this.reservation.Dates.length; i++) {\n        let resDate = JSON.parse(JSON.stringify(this.reservation.Dates[i]));\n        let dateSpaces = [];\n\n        for (let j = 0; j < resDate.Spaces.length; j++) {\n          let space = JSON.parse(JSON.stringify(resDate.Spaces[j]));\n\n          dateSpaces.push({\n            Id: space.Id,\n            ReservationId: space.ReservationId,\n            SpaceId: space.SpaceId,\n            SpaceName: space.SpaceName,\n            StartDate: space.StartDate,\n            StartMinutes: space.StartMinutes,\n            EndDate: space.EndDate,\n            EndMinutes: space.EndMinutes,\n            Seats: space.Seats,\n            SettingId: space.SettingId,\n            PriceId: space.PriceId,\n            Currency: space.Currency,\n            PricePerSeat: space.PricePerSeat,\n            CalculationType: space.CalculationType,\n            TaxPercentage: space.TaxPercentage,\n            Deductible: space.Deductible,\n            UseInTotalSeats: space.UseInTotalSeats,\n            IsValidated: false,\n            IsAvailable: false,\n            Warnings: [],\n            NewPriceId: 0,\n            NewPricePerSeat: 0,\n            NewPriceTotal: 0,\n            NewCalculationType: ''\n          });\n        }\n\n        let parsedDate = parseISO(resDate.Date);\n\n        let copyDate = {\n          SourceDate: parsedDate,\n          NewDate: parsedDate,\n          CopyPackages: true,\n          CopySpaces: true,\n          CopyOptions: true,\n          OptionsOriginalPrice: true,\n          CopyNotes: true,\n          Spaces: dateSpaces\n        };\n        this.copyData.Dates.push(copyDate);\n      }\n      this.dataIsSetup = true;\n    },\n\n    restoreDateSpaces(sourceDate) {\n      let _sourceDate = format(sourceDate, 'yyyy-MM-dd');\n      let resDate = cleanSource(this.reservation.Dates).find((rd) => rd.Date === _sourceDate);\n      let dateSpaces = [];\n\n      for (let j = 0; j < resDate.Spaces.length; j++) {\n        let space = cleanSource(resDate.Spaces[j]);\n\n        dateSpaces.push({\n          Id: space.Id,\n          ReservationId: space.ReservationId,\n          SpaceId: space.SpaceId,\n          SpaceName: space.SpaceName,\n          StartDate: space.StartDate,\n          StartMinutes: space.StartMinutes,\n          EndDate: space.EndDate,\n          EndMinutes: space.EndMinutes,\n          Seats: space.Seats,\n          SettingId: space.SettingId,\n          PriceId: space.PriceId,\n          Currency: space.Currency,\n          PricePerSeat: space.PricePerSeat,\n          CalculationType: space.CalculationType,\n          TaxPercentage: space.TaxPercentage,\n          Deductible: space.Deductible,\n          UseInTotalSeats: space.UseInTotalSeats,\n          IsAvailable: false,\n          Warnings: [],\n          NewPriceId: 0,\n          NewPricePerSeat: 0,\n          NewPriceTotal: 0,\n          NewCalculationType: ''\n        });\n      }\n\n      let index = this.copyData.Dates.findIndex((cd) => format(cd.SourceDate, 'yyyy-MM-dd') === _sourceDate);\n      if (index === -1) {\n        return -1;\n      }\n      this.copyData.Dates[index].Spaces = dateSpaces;\n      return this.copyData.Dates[index];\n    },\n\n    removeFocusFromInput(elm) {\n      elm.target.blur();\n    },\n\n    getVoucher() {\n      let self = this;\n      voucherProvider.methods.getVoucherById(self.reservation.VoucherId).then((response) => {\n        if (response.status === 200) {\n          self.voucher = response.data;\n        }\n      });\n    },\n\n    searchAvailability(val, index) {\n      if (!this.isEmployee && isBefore(val.date, this.disableDatesTillToday)) {\n        return;\n      }\n\n      let disabledDatesIndex = this.disabledDates.findIndex((d) => {\n        return format(d?.start ?? d.end, 'yyyy-MM-dd') === format(val.date, 'yyyy-MM-dd');\n      });\n\n      if (disabledDatesIndex > -1) {\n        return;\n      }\n\n      let copyDate = this.copyData.Dates[index];\n      if (copyDate) {\n        const restoredDateSpaces = this.restoreDateSpaces(copyDate.SourceDate);\n        if (restoredDateSpaces !== -1) {\n          copyDate.Spaces = restoredDateSpaces.Spaces;\n        }\n        copyDate.NewDate = val.date;\n        this.checkAvailability(copyDate);\n      }\n    },\n\n    checkAvailability(copyDate) {\n      this.isCheckingDateCounter++;\n      this.showSpaceAlternatives = false;\n\n      let sourceDateIso = this.$options.filters.dateObjectIsoDateString(copyDate.SourceDate);\n      let newDateIso = this.$options.filters.dateObjectIsoDateString(copyDate.NewDate);\n\n      reservationProvider.methods\n        .copyReservationDateCheckAvailability(this.reservation.Key, sourceDateIso, newDateIso, this.applyVoucher)\n        .then((response) => {\n          let meetingspaces = response.data;\n\n          for (let i = 0; i < meetingspaces.length; i++) {\n            let m = cleanSource(meetingspaces[i]);\n\n            m.NewPrice = m.PricePerSeat;\n            m.NewPriceTotal = m.PriceTotal;\n\n            let spaceIndex = copyDate.Spaces.findIndex((s) => s.SpaceId === m.SpaceId);\n            if (copyDate.Spaces[spaceIndex]) {\n              if(!this.isEmployee) {\n                copyDate.Spaces[spaceIndex].PriceId = m.SpacePrice.PriceId\n                copyDate.Spaces[spaceIndex].PricePerSeat = m.PricePerSeat\n                copyDate.Spaces[spaceIndex].CalculationType = m.SpacePrice.CalculationType\n              }\n              copyDate.Spaces[spaceIndex].IsValidated = true;\n              copyDate.Spaces[spaceIndex].IsAvailable = m.IsAvailable;\n              copyDate.Spaces[spaceIndex].Warnings = m.Warnings;\n              copyDate.Spaces[spaceIndex].NewPriceId = m.SpacePrice.PriceId;\n              copyDate.Spaces[spaceIndex].NewPricePerSeat = m.PricePerSeat;\n              copyDate.Spaces[spaceIndex].NewPriceTotal = m.PriceTotal;\n              copyDate.Spaces[spaceIndex].NewCalculationType = m.SpacePrice.CalculationType;\n            }\n          }\n        })\n        .finally(() => {\n          this.isCheckingDateCounter = Math.max(--this.isCheckingDateCounter, 0);\n        });\n    },\n\n    cancelCopy() {\n      this.$emit('cancelCopy');\n    },\n\n    buttonClickHandler() {\n      if (this.copyFinalized) {\n        this.onClickCancel();\n      } else {\n        this.copyReservation();\n      }\n    },\n\n    applyNewSpacePrice(space) {\n      space.PriceId = space.NewPriceId;\n      space.PricePerSeat = space.NewPricePerSeat;\n      // NewPriceTotal, not NewPricePriceTotal: the latter is never assigned, so this used to set\n      // PriceTotal to undefined every time an employee resolved a price warning.\n      space.PriceTotal = space.NewPriceTotal;\n    },\n\n    ignoreNewSpacePrice(space) {\n      space.NewPricePerSeat = space.PricePerSeat;\n      space.NewPriceTotal = space.PriceTotal;\n    },\n\n    copyReservation() {\n      let self = this;\n\n      if (!this.enableCopyButton || this.isSaving) {\n        return;\n      }\n\n      self.isSaving = true;\n\n      if(!this.isEmployee) {\n        this.copyData.InSet = false\n      }\n\n      for (let i = 0; i < this.copyData.Dates.length; i++) {\n        let sourceDateIso = this.$options.filters.dateObjectIsoDateString(this.copyData.Dates[i].SourceDate);\n        let newDateIso = this.$options.filters.dateObjectIsoDateString(this.copyData.Dates[i].NewDate);\n\n        this.copyData.Dates[i].SourceDate = sourceDateIso;\n        this.copyData.Dates[i].NewDate = newDateIso;\n\n        for (let j = 0; j < this.copyData.Dates[i].Spaces.length; j++) {\n          this.copyData.Dates[i].Spaces[j].StartDate = newDateIso;\n          this.copyData.Dates[i].Spaces[j].EndDate = newDateIso;\n        }\n      }\n\n      reservationProvider.methods\n        .copyReservation(this.reservation.Key, this.copyData)\n        .then((response) => {\n          if (response.status === 200) {\n            self.copyFinalized = true;\n            self.newReservation = response.data;\n\n            if (self.optionSet === 1) {\n              if (self.reservation.SetId === 0) {\n                self.reservation.SetId = self.reservation.Id;\n\n                self.reservation.ReservationSet.push({\n                  Id: self.reservation.Id,\n                  Date: self.reservation.Dates[0].Date\n                });\n              }\n\n              self.reservation.ReservationSet.push({\n                Id: self.newReservation.Id,\n                Date: self.newReservation.Dates[0].Date\n              });\n\n              self.setReservation(self.reservation);\n            }\n\n            // Send message to display toast on screen\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: this.$t('Components.Reservations.ModalCopyReservation.Confirmation_New-reservation-created')\n            });\n\n            self.goToReservation(self.newReservation.Key);\n          }\n        })\n        .catch(() => {\n          this.isSavingError = true;\n        })\n        .finally(() => {\n          self.isSaving = false;\n        });\n    },\n\n    getAlternativeSpaces(space) {\n      let self = this;\n\n      if (!self.isLoadingAlternatives) {\n        self.availablity = {};\n        self.isLoadingAlternatives = true;\n\n        self.back = false;\n\n        self.selectedSpace = space;\n\n        let countryId = 0;\n        let channelId = this.reservation.ChannelId;\n        let locationId = this.reservation.LocationId;\n        let meetingtypeId = this.reservation.MeetingtypeId;\n        let searchterm = '';\n        let settingId = 0;\n        // CTP-1604: price alternatives with the reservation's voucher. This was hardcoded to 0, so\n        // swapping the room quoted it at the full rate and wrote that straight into\n        // PriceId/PricePerSeat/PriceTotal -- the copy then showed the voucher but charged full price.\n        let voucherId = this.applyVoucher ? this.reservation.VoucherId : 0;\n\n        availabilityProvider.methods\n          .getAvailability(space.StartDate, space.EndDate, channelId, countryId, locationId, searchterm, meetingtypeId, space.Seats, space.StartMinutes, space.EndMinutes, settingId, 0, voucherId, 0, -100, this.$i18n.locale, this.isEmployee)\n          .then((response) => {\n            self.processAvailabilty(response.data);\n          })\n          .finally(() => {\n            self.isLoadingAlternatives = false;\n          });\n      }\n    },\n\n    processAvailabilty(data) {\n      let selectedChangeData = this.copyData.Dates[this.selectedAccordionDateIndex];\n\n      this.availablity = {\n        ...data,\n        ...{\n          Locations: data.Locations.map((location) => {\n            return {\n              ...location,\n              Spaces: location.Spaces.filter((availableSpace) => {\n                return !selectedChangeData.Spaces.some((existingSpace) => {\n                  return existingSpace.SpaceId === availableSpace.SpaceId;\n                });\n              })\n            };\n          })\n        }\n      };\n    },\n\n    updateSelectedSpaceWithAlternative(space) {\n      // Find space index in copyData.Dates\n      let spaceIndex = this.copyData.Dates[this.selectedAccordionDateIndex].Spaces.findIndex((m) => m.Id === this.selectedSpace.Id);\n\n      if (spaceIndex > -1) {\n        let newSpace = this.copyData.Dates[this.selectedAccordionDateIndex].Spaces[spaceIndex];\n\n        newSpace.SpaceId = space.SpaceId;\n        newSpace.SpaceName = space.SpaceName;\n        newSpace.SpaceImage = space.SpaceImage;\n        newSpace.StartDate = space.StartDate;\n        newSpace.StartMinutes = space.StartMinutes;\n        newSpace.EndDate = space.EndDate;\n        newSpace.EndMinutes = space.EndMinutes;\n        newSpace.SettingId = space.SettingId;\n        newSpace.NewPrice = space.PricePerSeat;\n        newSpace.NewPricePerSeat = space.PricePerSeat;\n        newSpace.NewPriceTotal = space.PriceTotal;\n        newSpace.PriceId = space.YieldSettingId;\n        newSpace.PricePerSeat = space.PricePerSeat;\n        newSpace.PriceTotal = space.PriceTotal;\n        newSpace.CalculationType = space.CalculationType;\n        newSpace.Crc = space.Crc;\n        newSpace.Hash = space.Hash;\n        newSpace.Warnings = [];\n        newSpace.IsValidated = true;\n        newSpace.IsAvailable = true;\n\n        Vue.set(this.copyData.Dates[this.selectedAccordionDateIndex].Spaces, spaceIndex, newSpace);\n        this.hideAlternatives();\n      }\n    },\n\n    setShowAlternatives(space, index) {\n      let copyDate = this.copyData.Dates[index];\n      if (copyDate) {\n        space.StartDate = this.$options.filters.dateObjectIsoDateString(copyDate.NewDate);\n        space.EndDate = this.$options.filters.dateObjectIsoDateString(copyDate.NewDate);\n\n        this.showAlternatives = true;\n        this.selectedSpace = space;\n\n        this.getAlternativeSpaces(space);\n      }\n    },\n\n    hideAlternatives() {\n      this.showAlternatives = false;\n      this.selectedSpace = null;\n      this.availability = {};\n    },\n\n    setShowConfirmation() {\n      this.showAlternatives = false;\n      this.showConfirmation = true;\n    },\n\n    goToReservation(reservationKey) {\n      this.$router.push({\n        name: `reservations-list-detail`,\n        params: { reservationKey: reservationKey }\n      });\n    },\n\n    closeDrawer() {\n      // Close\n      this.$emit('hideDrawer');\n    }\n  }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.accordion-content {\n  overflow-x: hidden;\n  overflow-y: auto;\n}\n\n.slider-wrapper {\n  height: 80vh;\n  max-height: 600px;\n\n  .slideContent {\n    height: 100%;\n    // overflow: hidden;\n\n    &.slideContent-dateSelector {\n      // overflow: auto;\n      .wrapper-dateSelector {\n        .table-spaces {\n          ::v-deep .message.is-warning {\n            margin-top: 5px;\n            margin-bottom: 0;\n\n            &:first-child {\n              margin-top: 0;\n            }\n\n            .message-body {\n              padding: 8px;\n\n              .wrapper {\n                display: flex;\n                align-items: center;\n\n                span {\n                  &:first-child {\n                    flex-grow: 1;\n                    flex-shrink: 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n      }\n    }\n\n    &.slideContent-alternatives {\n      display: flex;\n      flex-direction: column;\n      height: 100%;\n      overflow: hidden;\n\n      .backbar {\n        display: flex;\n        flex-grow: 0;\n        flex-shrink: 0;\n        gap: $gap;\n\n        .box-currentSpace {\n          flex-grow: 1;\n          margin: 0;\n        }\n      }\n    }\n  }\n}\n\n.spaces-container {\n  --w-col-1: 200px;\n  --w-col-2: 170px;\n  --w-col-3: 120px;\n  --w-col-5: 100px;\n  .row-space {\n    container-type: inline-size;\n    @container (width < 1001px) {\n      --w-col-2: 150px;\n    }\n\n    &:not(:first-child) {\n      border-top: 1px solid $grey;\n    }\n\n    &-heading,\n    &-content {\n      display: flex;\n      gap: $gap;\n      &:not(:first-child) {\n        border-top: 1px solid $grey;\n      }\n      > div {\n        &:nth-child(1) {\n          flex-shrink: 0;\n          width: var(--w-col-1);\n        }\n        &:nth-child(2) {\n          flex-shrink: 0;\n          width: var(--w-col-2);\n        }\n        &:nth-child(3) {\n          flex-shrink: 0;\n          width: var(--w-col-3);\n        }\n        &:nth-child(4) {\n          flex-grow: 1;\n        }\n        &:last-child {\n          width: var(--w-col-5);\n        }\n      }\n    }\n\n    &-message {\n      gap: $gap;\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CopyReservation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CopyReservation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CopyReservation.vue?vue&type=template&id=6203b79e&scoped=true\"\nimport script from \"./CopyReservation.vue?vue&type=script&lang=js\"\nexport * from \"./CopyReservation.vue?vue&type=script&lang=js\"\nimport style0 from \"./CopyReservation.vue?vue&type=style&index=0&id=6203b79e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6203b79e\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showEditTags)?_c('ModalEditTags',{attrs:{\"showModal\":_vm.showEditTags,\"onClickCancel\":_vm.hideModal}}):_vm._e(),_c('ui-section-header',{attrs:{\"showEdit\":!_vm.isLocked,\"editFunction\":_vm.setShowEditTags,\"editLabel\":_vm.$t('Components.Reservation.ReservationDetail.Icon_EditTags')},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Subtitle_Tags')))]},proxy:true}])}),(_vm.reservation.Tags.length === 0)?_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.ReservationDetail.Tag_MessageNoTagsAdded')}}):_vm._e(),(_vm.reservation.Tags.length > 0)?_c('Tags',{attrs:{\"tags\":_vm.reservation.Tags.split(',')}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ModalEditTags\n      v-if=\"showEditTags\"\n      :showModal=\"showEditTags\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ui-section-header\n      :showEdit=\"!isLocked\"\n      :editFunction=\"setShowEditTags\"\n      :editLabel=\"$t('Components.Reservation.ReservationDetail.Icon_EditTags')\"\n    >\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationDetail.Subtitle_Tags')\n      }}</template>\n    </ui-section-header>\n\n    <Message\n      v-if=\"reservation.Tags.length === 0\"\n      :message=\"\n        $t('Components.Reservation.ReservationDetail.Tag_MessageNoTagsAdded')\n      \"\n    />\n\n    <Tags\n      v-if=\"reservation.Tags.length > 0\"\n      :tags=\"reservation.Tags.split(',')\"\n    />\n  </div>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\n\nexport default {\n  components: {\n    Message: () => import('@/components/UI/Message'),\n    ModalEditTags: () => import('@/components/Reservations/ModalEditTags'),\n    Tags: () => import('@/components/UI/Tags'),\n  },\n\n  props: {\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: true,\n      type: Boolean,\n    },\n  },\n\n  data() {\n    return {\n      showEditTags: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  methods: {\n    setShowEditTags() {\n      this.showEditTags = true\n    },\n\n    hideModal() {\n      this.showEditTags = false\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationTags.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationTags.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationTags.vue?vue&type=template&id=10ae651d\"\nimport script from \"./ReservationTags.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationTags.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import axios from \"axios\";\nimport store from \"../store\";\n\nexport default {\n  methods: {\n    async getLocationPins(locationId = 0) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/pin/location/${locationId}`,\n        {\n          params: {\n            locationId: locationId\n          },\n\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async checkIsPinned(locationId = 0, typeId = 0, itemId = 0) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/pin/pinned`,\n        {\n          params: {\n            locationId: locationId,\n            typeId: typeId,\n            itemId: itemId\n          },\n\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async pinItem(locationId, pin) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/pin`,\n        JSON.stringify(pin),\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async deletePin(pinId) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/pin/${pinId}`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    }\n  }\n};\n","/**\n * True when the current page is served from cyberdigma.nl (or a subdomain of it). On these hosts a\n * resolved channelId of 0 is fine — the API uses its own default RP id — so passkeys still work.\n * Elsewhere, channelId 0 means no channel is mapped for the domain and passkeys can't be used yet.\n */\nexport function isCyberdigmaDomain() {\n  if (typeof window === 'undefined' || !window.location) {\n    return false\n  }\n  const host = window.location.hostname.toLowerCase()\n  return host === 'cyberdigma.nl' || host.endsWith('.cyberdigma.nl')\n}\n","import axios from 'axios'\nimport store from '../store'\n\nexport default {\n  methods: {\n    async getPaymentLink(type, itemId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/link`,\n        {\n          params: {\n            type: type,\n            itemId: itemId\n          },\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getReservationPayments(reservationId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/reservation/${reservationId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async deletePayment(paymentId) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/payment/${paymentId}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async addInvoicePayment(invoiceId, paymentType, amount, date) {\n      let criteria = {\n        InvoiceId: invoiceId,\n        PaymentType: paymentType,\n        Amount: amount,\n        PaymentDate: date\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/invoice/${invoiceId}`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async addReservationPayment(reservationId, paymentType, amount, date) {\n      let criteria = {\n        ReservationId: reservationId,\n        PaymentType: paymentType,\n        Amount: amount,\n        PaymentDate: date\n      }\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/reservation/${reservationId}`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async getPaymentDetails(paymentKey) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/${paymentKey}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n          }\n        }\n      )\n      return response\n    },\n\n    async startPaymentProcess(paymentKey, returnUrl) {\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/${paymentKey}/start`,\n        returnUrl,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n          }\n        }\n      )\n      return response\n    },\n\n    async startPaymentRefund(paymentId) {\n      const response = await axios.put(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/${paymentId}/refund`,\n        null,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async cancelRefundRequest(paymentId) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/${paymentId}/refund`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n\n    async deletePaymentLink(key) {\n      const response = await axios.delete(\n        `${process.env.VUE_APP_API_BASE_URL\n        }/api/v1/payment/link/${key}`,\n        {\n          headers: {\n            'Content-type': 'application/json',\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      )\n      return response\n    },\n  }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar isSupersetOf = require('../internals/set-is-superset-of');\nvar setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');\n\nvar INCORRECT = !setMethodAcceptSetLike('isSupersetOf', function (result) {\n  return !result;\n});\n\n// `Set.prototype.isSupersetOf` method\n// https://tc39.es/ecma262/#sec-set.prototype.issupersetof\n$({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {\n  isSupersetOf: isSupersetOf\n});\n","'use strict';\nvar aSet = require('../internals/a-set');\nvar SetHelpers = require('../internals/set-helpers');\nvar clone = require('../internals/set-clone');\nvar size = require('../internals/set-size');\nvar getSetRecord = require('../internals/get-set-record');\nvar iterateSet = require('../internals/set-iterate');\nvar iterateSimple = require('../internals/iterate-simple');\n\nvar has = SetHelpers.has;\nvar remove = SetHelpers.remove;\n\n// `Set.prototype.difference` method\n// https://tc39.es/ecma262/#sec-set.prototype.difference\nmodule.exports = function difference(other) {\n  var O = aSet(this);\n  var otherRec = getSetRecord(other);\n  var result = clone(O);\n  if (size(O) <= otherRec.size) iterateSet(O, function (e) {\n    if (otherRec.includes(e)) remove(result, e);\n  });\n  else iterateSimple(otherRec.getIterator(), function (e) {\n    if (has(result, e)) remove(result, e);\n  });\n  return result;\n};\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseCheckbox.vue?vue&type=style&index=0&id=7ad9cd4a&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"buttons is-right\"},[_c('button',{staticClass:\"button is-ghost\",on:{\"click\":_vm.cancelEditor}},[_vm._v(_vm._s(_vm.$t('GeneralActions.Cancel')))]),_c('button',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.isSaving },attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.updateTemplate}},[_vm._v(_vm._s(_vm.isNewTemplate ? _vm.$t('GeneralActions.Create') : _vm.$t('GeneralActions.Save')))])]),_c('div',{staticClass:\"columns is-mobile\"},[_c('div',{staticClass:\"column-templateItems column\"},[_c('draggable',{staticClass:\"dragArea\",attrs:{\"group\":{ name: 'contentTypes', pull: 'clone', put: false, sort: false },\"list\":_vm.contentTypes,\"clone\":_vm.cloneItem,\"sort\":false,\"move\":_vm.checkMove},on:{\"start\":function($event){_vm.drag = true},\"end\":function($event){_vm.drag = false}}},_vm._l((_vm.contentTypes),function(cItem,index){return _c('div',{key:'cItem' + index,staticClass:\"list-group-item box\",staticStyle:{\"cursor\":\"move\"},attrs:{\"tabindex\":\"0\"}},[_c('div',[_vm._v(_vm._s(_vm.$t('ProposalContentType.type_' + cItem.contentType)))])])}),0)],1),_c('div',{staticClass:\"column-draggable column\"},[_c('draggable',{staticClass:\"draggable-container mb-6\",class:_vm.cssClassDraggable,style:(_vm.styleDraggable),attrs:{\"group\":{ name: 'tItems', put: true, sort: true },\"list\":_vm.mItems,\"draggable\":'.templateItem',\"id\":\"dropzone\",\"handle\":'.handle_'+ _vm.draggableLevel,\"sort\":true},on:{\"add\":_vm.itemDropped}},_vm._l((_vm.mItems),function(item){return _c('MoveItem',{key:'tItem-' + item.id,staticClass:\"templateItem\",attrs:{\"item\":item,\"selectedItem\":_vm.selectedItem,\"proposalLanguage\":_vm.proposalLanguage,\"draggableLevel\":_vm.draggableLevel,\"setSelectedItem\":_vm.setSelectedItem},on:{\"selectItem\":_vm.setSelectedItem,\"removeItem\":_vm.deleteItem}})}),1),_c('div',{staticClass:\"buttons is-right\"},[_c('button',{staticClass:\"button is-ghost\",on:{\"click\":_vm.cancelEditor}},[_vm._v(_vm._s(_vm.$t('GeneralActions.Cancel')))]),_c('button',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.isSaving },attrs:{\"disabled\":_vm.isSaving},on:{\"click\":_vm.updateTemplate}},[_vm._v(_vm._s(_vm.isNewTemplate ? _vm.$t('GeneralActions.Create') : _vm.$t('GeneralActions.Save')))])])],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.mItem)?_c('div',{staticClass:\"box p-0 m-4 has-background-white is-flex\"},[_c('div',{staticClass:\"moveHandle handlerBar has-background-white-bis p-4 is-flex\",class:_vm.handleClassName},[_c('span',{staticClass:\"is-align-self-center\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'arrows-alt']}})],1)]),_c('div',{staticClass:\"draggableItem-content is-flex-grow-1 p-4\"},[_c('div',{staticClass:\"is-flex\"},[_c('div',{staticClass:\"is-flex-grow-1 has-text-weight-bold is-size-5\"},[_vm._v(_vm._s(_vm.$t('ProposalContentType.type_' + _vm.mItem.contentType)))]),_c('div',{staticClass:\"field is-grouped controls\"},[_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-link\",on:{\"click\":_vm.selectItem}},[_c('span',[_vm._v(_vm._s(_vm.selectedItem?.id !== _vm.mItem.id ? _vm.$t('Form.Control.Edit') : _vm.$t('Form.Control.Close')))]),_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', _vm.selectedItem?.id !== _vm.mItem.id ? 'arrow-down' : 'arrow-up']}})],1)])]),_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"icon-text has-text-danger\",on:{\"click\":_vm.removeItem}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])])]),(_vm.selectedItem?.id === _vm.mItem.id)?_c('hr'):_vm._e(),_c('div',{staticClass:\"mb-2\"},[(_vm.selectedItem?.id === _vm.mItem.id)?_c('EditItem',{attrs:{\"item\":_vm.selectedItem,\"proposalLanguage\":_vm.proposalLanguage},on:{\"itemUpdated\":_vm.updateItem}}):_vm._e()],1),(_vm.mItem.contentType === 'dates')?_c('div',{staticClass:\"mb-2\"},[_c('draggable',{attrs:{\"group\":{ name: 'dItems', put: true, sort: true },\"list\":_vm.mItem.items,\"id\":\"dropzone-dates\",\"handle\":'.'+_vm.nextHandleClassName,\"sort\":true}},_vm._l((_vm.mItem.items),function(item){return _c('MoveItem',{key:'dItem-' + item.id,staticClass:\"templateItem\",attrs:{\"parentItem\":_vm.mItem,\"item\":item,\"selectedItem\":_vm.selectedItem,\"proposalLanguage\":_vm.proposalLanguage,\"draggableLevel\":_vm.nextDraggableLevel,\"setSelectedItem\":_vm.setSelectedItem}})}),1)],1):_vm._e()])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.mItem)?_c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"showDrawer\":_vm.showSideDrawer,\"drawerTitle\":_vm.drawerTitle,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":_vm.drawerSize},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showImageLibrary)?_c('ImageLibrary',{attrs:{\"locationId\":_vm.locationId},on:{\"imageSelected\":_vm.setImage}}):_vm._e()]},proxy:true}],null,false,3665491121)}):_vm._e(),(_vm.showDynamicly)?_c('div',{staticClass:\"mb-4\"},[_c('label',{staticClass:\"checkbox is-unselectable\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.addManually),expression:\"addManually\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.addManually)?_vm._i(_vm.addManually,null)>-1:(_vm.addManually)},on:{\"change\":function($event){var $$a=_vm.addManually,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.addManually=$$a.concat([$$v]))}else{$$i>-1&&(_vm.addManually=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.addManually=$$c}}}}),_vm._v(\" \"+_vm._s(_vm.$t(`Components.Reservation.ReservationProposal.label_Dynamic_${_vm.mItem.contentType}`))+\" \")])]):_vm._e(),(_vm.showGenericTitleTextInput)?_c('div',[_c('div',{staticClass:\"mb-4\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.title),expression:\"mItem.title\"}],staticClass:\"input\",attrs:{\"type\":\"text\",\"disabled\":_vm.mItem.fillDynamically,\"placeholder\":_vm.$t('General.Title')},domProps:{\"value\":(_vm.mItem.title)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mItem, \"title\", $event.target.value)}}})]),_c('div',{staticClass:\"mb-4\"},[(!_vm.mItem.fillDynamically)?_c('ui-text-editor',{style:(_vm.ckEditorStyle),attrs:{\"labelForInput\":false,\"inputCssClass\":\"has-fixed-size\"},model:{value:(_vm.mItem.text),callback:function ($$v) {_vm.$set(_vm.mItem, \"text\", $$v)},expression:\"mItem.text\"}}):_vm._e(),(_vm.mItem.fillDynamically)?_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.text),expression:\"mItem.text\"}],staticClass:\"textarea\",attrs:{\"rows\":\"5\",\"disabled\":_vm.mItem.fillDynamically,\"placeholder\":_vm.$t('General.Message')},domProps:{\"value\":(_vm.mItem.text)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mItem, \"text\", $event.target.value)}}}):_vm._e()],1)]):_vm._e(),(_vm.mItem.contentType === 'hero')?_c('div',{staticClass:\"heroItem\"},[(!_vm.mItem.fillDynamically)?_c('div',{staticClass:\"mb-4\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.title),expression:\"mItem.title\"}],staticClass:\"input\",attrs:{\"type\":\"text\",\"disabled\":_vm.mItem.fillDynamically,\"placeholder\":_vm.$t('General.Title')},domProps:{\"value\":(_vm.mItem.title)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mItem, \"title\", $event.target.value)}}})]):_vm._e(),_c('label',{staticClass:\"checkbox is-unselectable\",class:{'mb-4': _vm.mItem.setImagesManually || !_vm.mItem.fillDynamically}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.setImagesManually),expression:\"mItem.setImagesManually\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.mItem.setImagesManually)?_vm._i(_vm.mItem.setImagesManually,null)>-1:(_vm.mItem.setImagesManually)},on:{\"change\":function($event){var $$a=_vm.mItem.setImagesManually,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mItem, \"setImagesManually\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mItem, \"setImagesManually\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mItem, \"setImagesManually\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_SetImagesManually'))+\" \")]),(_vm.mItem.setImagesManually || !_vm.mItem.fillDynamically)?_c('div',{staticClass:\"columns-hero columns is-mobile\"},[_c('div',{staticClass:\"column\"},[_c('div',{staticClass:\"column-content-images is-flex\"},[_c('div',{staticClass:\"image-hero\"},[_c('figure',{staticClass:\"figure-with-add-button box is-shadowless image is-3by2 has-background-white-ter is-relative\"},[(_vm.mItem.setImagesManually)?[_c('a',{staticClass:\"button-addImage button is-small is-info is-absolute\",on:{\"click\":function($event){return _vm.setShowImageLibrary(0)},\"imageSelected\":_vm.setImage}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'camera'],\"size\":\"lg\"}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Choose')))])])]:_vm._e(),_c('span',{style:({ backgroundImage: `url('${ _vm.mItem.setImagesManually? _vm.mItem.images[0] ? _vm.mItem.images[0].UrlLarge : '' : '' }')` }),attrs:{\"alt\":\"\",\"itemprop\":\"image\"}})],2)]),_c('div',{staticClass:\"image-presentation-container\"},_vm._l((_vm.mItem.images.filter(i => i.IsDefault === false)),function(image,index){return _c('figure',{key:'li' + index + 1,staticClass:\"figure-with-add-button box is-flex is-shadowless image has-background-white-ter\"},[(_vm.mItem.setImagesManually)?[_c('a',{staticClass:\"button-addImage button is-small is-info is-absolute\",on:{\"click\":function($event){return _vm.setShowImageLibrary(index + 1)},\"imageSelected\":_vm.setImage}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'camera'],\"size\":\"lg\"}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Choose')))])])]:_vm._e(),_c('span',{style:({\n                    backgroundImage: `url('${_vm.mItem.setImagesManually ? image.UrlMedium ? image.UrlMedium : '' : '' }')`,\n                  }),attrs:{\"alt\":\"\",\"itemprop\":\"photo\"}})],2)}),0)])]),_c('div',{staticClass:\"column\"},[(!_vm.mItem.fillDynamically)?_c('ui-text-editor',{attrs:{\"labelForInput\":false,\"inputCssClass\":\"has-fixed-size\"},model:{value:(_vm.mItem.text),callback:function ($$v) {_vm.$set(_vm.mItem, \"text\", $$v)},expression:\"mItem.text\"}}):_c('div',{staticClass:\"box-textplaceholder box\"},[_c('text-placeholder',{attrs:{\"numberOfItems\":_vm.heroNrOfPlaceholderLines,\"placeholderItemHeight\":_vm.heroLineHeight,\"minLineWidth\":_vm.heroLineMinWidth,\"maxLineWidth\":_vm.heroLineWidth}})],1)],1)]):_vm._e()]):_vm._e(),(_vm.mItem.contentType === 'images')?_c('div',{staticClass:\"contentType-images\"},[_c('div',{staticClass:\"columns is-multiline\"},[_vm._l((_vm.mItem.images),function(image,index){return _c('div',{key:'imgcol-' + index,staticClass:\"column\"},[_c('div',{staticClass:\"image-container\"},[_c('image-viewer',{key:image.UrlMedium+ '_'+index+'_'+_vm.mItem.id,attrs:{\"imageSrc\":image.UrlMedium,\"itemName\":'image '+(index+1)}}),_c('div',{staticClass:\"fields-image-control field is-grouped has-background-white-ter p-1\"},[_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"button-addImage button is-small is-info\",on:{\"click\":function($event){return _vm.setShowImageLibrary(index)},\"imageSelected\":_vm.setImage}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'camera'],\"size\":\"lg\"}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Choose')))])])]),_c('p',{staticClass:\"control\"},[_c('a',{on:{\"click\":function($event){return _vm.deleteImage(index)}}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])])],1)])}),(_vm.mItem.images.length < 4)?_c('div',{staticClass:\"column\"},[_c('a',{staticClass:\"button-addImage button is-info\",on:{\"click\":function($event){return _vm.setShowImageLibrary(-1)},\"imageSelected\":_vm.setImage}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'camera'],\"size\":\"lg\"}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.AddImage')))])])]):_vm._e()],2)]):_vm._e(),(_vm.mItem.contentType === 'location')?_c('div',[_c('div',{staticClass:\"mb-4\"},[_c('label',{staticClass:\"checkbox is-unselectable\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.showAddress),expression:\"mItem.showAddress\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.mItem.showAddress)?_vm._i(_vm.mItem.showAddress,null)>-1:(_vm.mItem.showAddress)},on:{\"change\":function($event){var $$a=_vm.mItem.showAddress,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mItem, \"showAddress\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mItem, \"showAddress\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mItem, \"showAddress\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.label_ShowAddress'))+\" \")])]),(_vm.addManually || _vm.mItem.showAddress)?_c('div',{staticClass:\"columns is-mobile is-multiline\"},[_c('div',{staticClass:\"column\",class:{ 'is-two-thirds' : _vm.mItem.showAddress, 'is-full': !_vm.mItem.showAddress }},[(!_vm.mItem.fillDynamically)?[_c('div',{staticClass:\"mb-4\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.title),expression:\"mItem.title\"}],staticClass:\"input\",attrs:{\"type\":\"text\",\"disabled\":_vm.mItem.fillDynamically},domProps:{\"value\":(_vm.mItem.title)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mItem, \"title\", $event.target.value)}}})]),_c('ui-text-editor',{attrs:{\"labelForInput\":false,\"inputCssClass\":\"has-fixed-size\",\"disabled\":_vm.mItem.fillDynamically},model:{value:(_vm.mItem.text),callback:function ($$v) {_vm.$set(_vm.mItem, \"text\", $$v)},expression:\"mItem.text\"}})]:[_c('text-placeholder',{staticClass:\"mb-4\",attrs:{\"numberOfItems\":2,\"placeholderItemHeight\":\"20px\"}}),_c('text-placeholder',{attrs:{\"numberOfItems\":26}})]],2),(_vm.mItem.showAddress)?_c('div',{staticClass:\"column is-one-third\"},[_c('div',{staticClass:\"box px-3\"},[_c('div',{staticClass:\"subtitle\"},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Proposals.Proposal.Title_Address' ))+\" \")]),_c('div',{staticClass:\"mb-4\"},[_c('span',{staticClass:\"icon-text\"},[_c('span',{staticClass:\"icon mr-3\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'map-marker']}})],1),_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_LocationName'))),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_Address'))),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_PostalCode'))+\"   \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_City'))),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_Country'))+\" \")])])]),_c('div',[_c('span',{staticClass:\"icon-text\"},[_c('span',{staticClass:\"icon mr-3\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'envelope']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_Email')))])])]),_c('div',{staticClass:\"mb-4\"},[_c('span',{staticClass:\"icon-text\"},[_c('span',{staticClass:\"icon mr-3\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'phone-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_Phone')))])])]),_c('div',[_c('span',{staticClass:\"icon-text\"},[_c('span',{staticClass:\"mr-3 has-text-weight-bold\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_CocShortner'))+\" \")]),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_Coc'))+\" \")])])])]):_vm._e()]):_vm._e()]):_vm._e(),(_vm.mItem.contentType === 'mixed')?_c('div',[_c('div',{staticClass:\"columns\"},_vm._l((_vm.mItem.items),function(item,index){return _c('div',{key:'col-' + index,staticClass:\"column\"},[_c('div',{staticClass:\"title is-6\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Title_Column'))+\" \"+_vm._s(index + 1))]),_c('div',{staticClass:\"mb-3 select is-fullwidth\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(item.contentType),expression:\"item.contentType\"}],on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(item, \"contentType\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])},function($event){return _vm.setContantTypeStructure(item, index, _vm.mItem)}]}},[_c('option',{attrs:{\"disabled\":\"\",\"value\":\"none\"}},[_vm._v(_vm._s(_vm.$t('ProposalContentType.type_none')))]),_vm._l((_vm.contentTypes),function(ct,ctIndex){return _c('option',{key:'ct-' + ctIndex,domProps:{\"value\":ct.contentType}},[_vm._v(\" \"+_vm._s(_vm.$t('ProposalContentType.type_' + ct.contentType))+\" \")])})],2)]),(item.contentType !== 'none')?_c('div',[_c('EditItem',{key:'mi-' + item.id,attrs:{\"item\":item,\"parentContentType\":_vm.mItem?.contentType ?? '',\"proposalLanguage\":_vm.proposalLanguage},on:{\"itemUpdated\":_vm.updateItem}})],1):_vm._e()])}),0)]):_vm._e(),(_vm.mItem.contentType === 'contact')?_c('div',[_c('div',{staticClass:\"mb-4\"},[_c('label',{staticClass:\"label\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_Alignment')))]),_c('div',{staticClass:\"control\"},[_c('div',{staticClass:\"select is-fullwidth\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.align),expression:\"mItem.align\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.mItem, \"align\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option',{attrs:{\"value\":\"left\",\"selcted\":_vm.mItem.align === 'left'}},[_vm._v(_vm._s(_vm.$t('General.Left')))]),_c('option',{attrs:{\"value\":\"center\",\"selcted\":_vm.mItem.align === 'center'}},[_vm._v(_vm._s(_vm.$t('General.Center')))]),_c('option',{attrs:{\"value\":\"right\",\"selcted\":_vm.mItem.align === 'right'}},[_vm._v(_vm._s(_vm.$t('General.Right')))])])])])]),_c('div',{staticClass:\"grid-contact-settings\"},[_c('div',{},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.showImage),expression:\"mItem.showImage\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mItem.showImage,\"checked\":Array.isArray(_vm.mItem.showImage)?_vm._i(_vm.mItem.showImage,null)>-1:(_vm.mItem.showImage)},on:{\"change\":function($event){var $$a=_vm.mItem.showImage,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mItem, \"showImage\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mItem, \"showImage\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mItem, \"showImage\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_ShowContactImage'))+\" \")])]),_c('div',{},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.showName),expression:\"mItem.showName\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mItem.showName,\"checked\":Array.isArray(_vm.mItem.showName)?_vm._i(_vm.mItem.showName,null)>-1:(_vm.mItem.showName)},on:{\"change\":function($event){var $$a=_vm.mItem.showName,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mItem, \"showName\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mItem, \"showName\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mItem, \"showName\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_ShowContactName'))+\" \")])]),_c('div',{},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.showJobTitle),expression:\"mItem.showJobTitle\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mItem.showJobTitle,\"checked\":Array.isArray(_vm.mItem.showJobTitle)?_vm._i(_vm.mItem.showJobTitle,null)>-1:(_vm.mItem.showJobTitle)},on:{\"change\":function($event){var $$a=_vm.mItem.showJobTitle,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mItem, \"showJobTitle\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mItem, \"showJobTitle\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mItem, \"showJobTitle\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_ShowContactJobTitle'))+\" \")])]),_c('div',{},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.showLocation),expression:\"mItem.showLocation\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mItem.showLocation,\"checked\":Array.isArray(_vm.mItem.showLocation)?_vm._i(_vm.mItem.showLocation,null)>-1:(_vm.mItem.showLocation)},on:{\"change\":function($event){var $$a=_vm.mItem.showLocation,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mItem, \"showLocation\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mItem, \"showLocation\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mItem, \"showLocation\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_ShowContactLocation'))+\" \")])]),_c('div',{},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.showEmail),expression:\"mItem.showEmail\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mItem.showEmail,\"checked\":Array.isArray(_vm.mItem.showEmail)?_vm._i(_vm.mItem.showEmail,null)>-1:(_vm.mItem.showEmail)},on:{\"change\":function($event){var $$a=_vm.mItem.showEmail,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mItem, \"showEmail\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mItem, \"showEmail\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mItem, \"showEmail\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_ShowContactEmail'))+\" \")])]),_c('div',{},[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mItem.showPhone),expression:\"mItem.showPhone\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.mItem.showPhone,\"checked\":Array.isArray(_vm.mItem.showPhone)?_vm._i(_vm.mItem.showPhone,null)>-1:(_vm.mItem.showPhone)},on:{\"change\":function($event){var $$a=_vm.mItem.showPhone,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.mItem, \"showPhone\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.mItem, \"showPhone\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.mItem, \"showPhone\", $$c)}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationProposal.Label_ShowContactPhone'))+\" \")])])])]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.library)?_c('div',[_c('div',{staticClass:\"tabs is-boxed\"},[_c('ul',[_c('li',{class:{ 'is-active' : _vm.selectedView === 'all'}},[_c('a',{on:{\"click\":function($event){_vm.selectedView = 'all'}}},[_vm._v(_vm._s(_vm.$t('Components.Location.ImageLibrary.label_All')))])]),_c('li',{class:{ 'is-active' : _vm.selectedView === 'location'}},[_c('a',{on:{\"click\":function($event){_vm.selectedView = 'location'}}},[_vm._v(_vm._s(_vm.$t('Components.Location.ImageLibrary.label_Location')))])]),_c('li',{class:{ 'is-active' : _vm.selectedView === 'spaces'}},[_c('a',{on:{\"click\":function($event){_vm.selectedView = 'spaces'}}},[_vm._v(_vm._s(_vm.$t('Components.Location.ImageLibrary.label_Spaces')))])]),_c('li',{class:{ 'is-active' : _vm.selectedView === 'options'}},[_c('a',{on:{\"click\":function($event){_vm.selectedView = 'options'}}},[_vm._v(_vm._s(_vm.$t('Components.Location.ImageLibrary.label_Options')))])])])]),(_vm.selectedView === 'all' || _vm.selectedView === 'location')?_c('div',{staticClass:\"mb-4\"},[_c('div',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('Components.Location.ImageLibrary.label_Location')))]),_c('div',{staticClass:\"columns is-multiline\"},_vm._l((_vm.library.LocationImages),function(imageItem,index){return _c('div',{key:'li' + index,staticClass:\"column is-one-third\"},[_c('div',{staticClass:\"card\"},[_c('div',{staticClass:\"card-content p-1 is-relative\"},[_c('ImageViewer',{staticClass:\"is-4by3 is-clickable\",attrs:{\"type\":\"location\",\"imageSrc\":imageItem.Image,\"itemName\":imageItem.Image,\"itemId\":imageItem.LocationId,\"imageSize\":640,\"aspectRatio\":4/3},nativeOn:{\"click\":function($event){return _vm.selectImage(imageItem)}}}),_c('a',{staticClass:\"button-addImage button is-small is-info is-absolute\",on:{\"click\":function($event){return _vm.selectImage(imageItem)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'camera'],\"size\":\"lg\"}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Choose')))])])],1)])])}),0)]):_vm._e(),(_vm.selectedView === 'all' || _vm.selectedView === 'spaces')?_c('div',{staticClass:\"mb-4\"},[_c('div',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('Components.Location.ImageLibrary.label_Spaces')))]),_c('div',{staticClass:\"columns is-multiline\"},_vm._l((_vm.library.SpaceImages),function(imageItem,index){return _c('div',{key:'si' + index,staticClass:\"column is-one-third\"},[_c('div',{staticClass:\"card\"},[_c('div',{staticClass:\"card-content p-1 is-relative\"},[_c('ImageViewer',{staticClass:\"is-4by3 is-clickable\",attrs:{\"type\":\"location\",\"imageSrc\":imageItem.Image,\"itemName\":imageItem.Name,\"itemId\":imageItem.LocationId,\"imageSize\":640,\"aspectRatio\":4/3},nativeOn:{\"click\":function($event){return _vm.selectImage(imageItem)}}}),_c('a',{staticClass:\"button-addImage button is-small is-info is-absolute\",on:{\"click\":function($event){return _vm.selectImage(imageItem)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'camera'],\"size\":\"lg\"}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Choose')))])])],1)])])}),0)]):_vm._e(),(_vm.selectedView === 'all' || _vm.selectedView === 'options')?_c('div',{staticClass:\"mb-4\"},[_c('div',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('Components.Location.ImageLibrary.label_Options')))]),_c('div',{staticClass:\"columns is-multiline\"},_vm._l((_vm.library.OptionImages),function(imageItem,index){return _c('div',{key:'oi' + index,staticClass:\"column is-one-third\"},[_c('div',{staticClass:\"card\"},[_c('div',{staticClass:\"card-content p-1 is-relative\"},[_c('ImageViewer',{staticClass:\"is-4by3 is-clickable\",attrs:{\"type\":\"location\",\"imageSrc\":imageItem.Image,\"itemName\":imageItem.Name,\"itemId\":imageItem.LocationId,\"imageSize\":640,\"aspectRatio\":4/3},nativeOn:{\"click\":function($event){return _vm.selectImage(imageItem)}}}),_c('a',{staticClass:\"button-addImage button is-small is-info is-absolute\",on:{\"click\":function($event){return _vm.selectImage(imageItem)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'camera'],\"size\":\"lg\"}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Choose')))])])],1)])])}),0)]):_vm._e()]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <div v-if=\"library\">\n\n      <div class=\"tabs is-boxed\">\n        <ul>\n          <li :class=\"{ 'is-active' : selectedView === 'all'}\"><a @click=\"selectedView = 'all'\">{{ $t('Components.Location.ImageLibrary.label_All') }}</a></li>\n          <li :class=\"{ 'is-active' : selectedView === 'location'}\"><a @click=\"selectedView = 'location'\">{{ $t('Components.Location.ImageLibrary.label_Location') }}</a></li>\n          <li :class=\"{ 'is-active' : selectedView === 'spaces'}\"><a @click=\"selectedView = 'spaces'\">{{ $t('Components.Location.ImageLibrary.label_Spaces') }}</a></li>\n          <li :class=\"{ 'is-active' : selectedView === 'options'}\"><a @click=\"selectedView = 'options'\">{{ $t('Components.Location.ImageLibrary.label_Options') }}</a></li>\n        </ul>\n      </div>\n\n      <div v-if=\"selectedView === 'all' || selectedView === 'location'\" class=\"mb-4\">\n        <div class=\"title\">{{ $t('Components.Location.ImageLibrary.label_Location') }}</div>\n\n        <div class=\"columns is-multiline\">\n          <div v-for=\"(imageItem, index) in library.LocationImages\" :key=\"'li' + index\" class=\"column is-one-third\">\n            <div class=\"card\">\n              <div class=\"card-content p-1 is-relative\">\n                <ImageViewer\n                  @click.native=\"selectImage(imageItem)\"\n                  class=\"is-4by3 is-clickable\"\n                  type=\"location\"\n                  :imageSrc=\"imageItem.Image\"\n                  :itemName=\"imageItem.Image\"\n                  :itemId=\"imageItem.LocationId\"\n                  :imageSize=\"640\"\n                  :aspectRatio=\"4/3\"\n                />\n                <a\n                    @click=\"selectImage(imageItem)\"\n                    class=\"button-addImage button is-small is-info is-absolute\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon\n                        :icon=\"['far', 'camera']\"\n                        size=\"lg\"\n                      />\n                    </span>\n                    <span>{{ $t('Form.Control.Choose') }}</span>\n                  </a>\n              </div>\n            </div>\n            \n          </div>\n        </div>\n        \n      </div>\n\n      <div v-if=\"selectedView === 'all' || selectedView === 'spaces'\" class=\"mb-4\">\n        <div class=\"title\">{{ $t('Components.Location.ImageLibrary.label_Spaces') }}</div>\n\n        <div class=\"columns is-multiline\">\n          <div v-for=\"(imageItem, index) in library.SpaceImages\" :key=\"'si' + index\" class=\"column is-one-third\">\n            <div class=\"card\">\n              <div class=\"card-content p-1 is-relative\">\n                <ImageViewer\n                  @click.native=\"selectImage(imageItem)\"\n                  class=\"is-4by3 is-clickable\"\n                  type=\"location\"\n                  :imageSrc=\"imageItem.Image\"\n                  :itemName=\"imageItem.Name\"\n                  :itemId=\"imageItem.LocationId\"\n                  :imageSize=\"640\"\n                  :aspectRatio=\"4/3\"\n                />\n                <a\n                    @click=\"selectImage(imageItem)\"\n                    class=\"button-addImage button is-small is-info is-absolute\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon\n                        :icon=\"['far', 'camera']\"\n                        size=\"lg\"\n                      />\n                    </span>\n                    <span>{{ $t('Form.Control.Choose') }}</span>\n                  </a>\n              </div>\n            </div>\n            \n          </div>\n        </div>\n      </div>\n\n      <div v-if=\"selectedView === 'all' || selectedView === 'options'\" class=\"mb-4\">\n        <div class=\"title\">{{ $t('Components.Location.ImageLibrary.label_Options') }}</div>\n\n        <div class=\"columns is-multiline\">\n          <div v-for=\"(imageItem, index) in library.OptionImages\" :key=\"'oi' + index\" class=\"column is-one-third\">\n            <div class=\"card\">\n              <div class=\"card-content p-1 is-relative\">\n                <ImageViewer\n                  @click.native=\"selectImage(imageItem)\"\n                  class=\"is-4by3 is-clickable\"\n                  type=\"location\"\n                  :imageSrc=\"imageItem.Image\"\n                  :itemName=\"imageItem.Name\"\n                  :itemId=\"imageItem.LocationId\"\n                  :imageSize=\"640\"\n                  :aspectRatio=\"4/3\"\n                />\n                <a\n                    @click=\"selectImage(imageItem)\"\n                    class=\"button-addImage button is-small is-info is-absolute\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon\n                        :icon=\"['far', 'camera']\"\n                        size=\"lg\"\n                      />\n                    </span>\n                    <span>{{ $t('Form.Control.Choose') }}</span>\n                  </a>\n              </div>\n            </div>\n            \n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport locationProvider from '@/providers/location'\nimport ImageViewer from '@/components/UI/ImageViewer';\n\nexport default {\n  components: {\n    ImageViewer\n  },\n\n  props: {\n    locationId: {\n      type: Number,\n      default: 0,\n    },\n  },\n\n  data () {\n    return {\n      isLoading: false,\n      library: null,\n      selectedView: 'all',\n    }\n  },\n\n  mounted () {\n  },\n\n  created () {\n    this.getLocationImages();\n  },\n\n  computed: {\n  },\n\n  methods: {\n    getLocationImages() {\n      if (this.isLoading) {\n        return;\n      }\n      this.isLoading = true;\n\n      locationProvider.methods\n        .getLocationImageLibrary(this.locationId)\n        .then(response => {\n          if (response.status === 200) {\n            this.library = response.data;\n          }\n        })\n        .finally(() => {\n          this.isLoading = false;\n        });\n\n    },\n\n    selectImage(imageItem) {\n      this.$emit('imageSelected', imageItem);\n    }\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.button-addImage {\n  position: absolute;\n  right: 0px;\n  bottom: 0px;\n}\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageLibrary.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageLibrary.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ImageLibrary.vue?vue&type=template&id=1200899c&scoped=true\"\nimport script from \"./ImageLibrary.vue?vue&type=script&lang=js\"\nexport * from \"./ImageLibrary.vue?vue&type=script&lang=js\"\nimport style0 from \"./ImageLibrary.vue?vue&type=style&index=0&id=1200899c&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"1200899c\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div v-if=\"mItem\">\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :showDrawer=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      :drawerSize=\"drawerSize\"\n    >\n      <template v-slot:content>\n        <ImageLibrary\n          v-if=\"showImageLibrary\"\n          :locationId=\"locationId\"\n          @imageSelected=\"setImage\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <div\n      v-if=\"showDynamicly\"\n      class=\"mb-4\"\n    >\n      <label class=\"checkbox is-unselectable\">\n        <input\n          type=\"checkbox\"\n          v-model=\"addManually\"\n        >\n        {{ $t(`Components.Reservation.ReservationProposal.label_Dynamic_${mItem.contentType}`) }}\n      </label>\n    </div>\n\n    <!-- GENERIC TITLE & TEXT -->\n    <div v-if=\"showGenericTitleTextInput\">\n      <div class=\"mb-4\">\n        <input\n          class=\"input\"\n          type=\"text\"\n          v-model=\"mItem.title\"\n          :disabled=\"mItem.fillDynamically\"\n          :placeholder=\"$t('General.Title')\"\n        />\n      </div>\n\n      <div class=\"mb-4\">\n        <ui-text-editor\n          v-if=\"!mItem.fillDynamically\"\n          v-model=\"mItem.text\"\n          :labelForInput=\"false\"\n          inputCssClass=\"has-fixed-size\"\n          :style=\"ckEditorStyle\"\n        />\n        <textarea\n          v-if=\"mItem.fillDynamically\"\n          class=\"textarea\"\n          v-model=\"mItem.text\"\n          rows=\"5\"\n          :disabled=\"mItem.fillDynamically\"\n          :placeholder=\"$t('General.Message')\"\n        ></textarea>\n      </div>\n    </div>\n\n    <!-- CONTENT TYPE SPECIFIC SETTINGS -->\n    <!-- Hero -->\n    <div\n      v-if=\"mItem.contentType === 'hero'\"\n      class=\"heroItem\"\n    >\n      <div\n        v-if=\"!mItem.fillDynamically\"\n        class=\"mb-4\"\n      >\n        <input\n          class=\"input\"\n          type=\"text\"\n          v-model=\"mItem.title\"\n          :disabled=\"mItem.fillDynamically\"\n          :placeholder=\"$t('General.Title')\"\n        />\n      </div>\n\n      <label\n        class=\"checkbox is-unselectable\"\n        :class=\"{'mb-4': mItem.setImagesManually || !mItem.fillDynamically}\"\n      >\n        <input\n          type=\"checkbox\"\n          v-model=\"mItem.setImagesManually\"\n        >\n        {{ $t('Components.Reservation.ReservationProposal.Label_SetImagesManually') }}\n      </label>\n\n      <div\n        v-if=\"mItem.setImagesManually || !mItem.fillDynamically\"\n        class=\"columns-hero columns is-mobile\"\n      >\n        <div class=\"column\">\n          <div class=\"column-content-images is-flex\">\n            <div class=\"image-hero\">\n              <figure class=\"figure-with-add-button box is-shadowless image is-3by2 has-background-white-ter is-relative\">\n                <template v-if=\"mItem.setImagesManually\">\n                  <a\n                    @click=\"setShowImageLibrary(0)\"\n                    @imageSelected=\"setImage\"\n                    class=\"button-addImage button is-small is-info is-absolute\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon\n                        :icon=\"['far', 'camera']\"\n                        size=\"lg\"\n                      />\n                    </span>\n                    <span>{{ $t('Form.Control.Choose') }}</span>\n                  </a>\n                </template>\n                <span\n                  alt=\"\"\n                  :style=\"{ backgroundImage: `url('${ mItem.setImagesManually? mItem.images[0] ? mItem.images[0].UrlLarge : '' : '' }')` }\"\n                  itemprop=\"image\"\n                />\n              </figure>\n            </div>\n            <div class=\"image-presentation-container\">\n              <figure\n                v-for=\"(image, index) in mItem.images.filter(i => i.IsDefault === false)\"\n                :key=\"'li' + index + 1\"\n                class=\"figure-with-add-button box is-flex is-shadowless image has-background-white-ter\"\n              >\n                <template v-if=\"mItem.setImagesManually\">\n                  <a\n                    @click=\"setShowImageLibrary(index + 1)\"\n                    @imageSelected=\"setImage\"\n                    class=\"button-addImage button is-small is-info is-absolute\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon\n                        :icon=\"['far', 'camera']\"\n                        size=\"lg\"\n                      />\n                    </span>\n                    <span>{{ $t('Form.Control.Choose') }}</span>\n                  </a>\n                </template>\n                <span\n                  alt=\"\"\n                  :style=\"{\n                      backgroundImage: `url('${mItem.setImagesManually ? image.UrlMedium ? image.UrlMedium : '' : '' }')`,\n                    }\"\n                  itemprop=\"photo\"\n                />\n              </figure>\n            </div>\n          </div>\n        </div>\n        <div class=\"column\">\n          <ui-text-editor\n            v-if=\"!mItem.fillDynamically\"\n            v-model=\"mItem.text\"\n            :labelForInput=\"false\"\n            inputCssClass=\"has-fixed-size\"\n          />\n          <div\n            v-else\n            class=\"box-textplaceholder box\"\n          >\n            <text-placeholder\n              :numberOfItems=\"heroNrOfPlaceholderLines\"\n              :placeholderItemHeight=\"heroLineHeight\"\n              :minLineWidth=\"heroLineMinWidth\"\n              :maxLineWidth=\"heroLineWidth\"\n              class=\"\"\n            />\n          </div>\n        </div>\n      </div>\n    </div>\n\n    <!-- Images -->\n    <div\n      v-if=\"mItem.contentType === 'images'\"\n      class=\"contentType-images\"\n    >\n      <div class=\"columns is-multiline\">\n        <div\n          v-for=\"(image, index) in mItem.images\"\n          :key=\"'imgcol-' + index\"\n          class=\"column\"\n        >\n          <div class=\"image-container\">\n            <image-viewer\n              :key=\"image.UrlMedium+ '_'+index+'_'+mItem.id\"\n              :imageSrc=\"image.UrlMedium\"\n              :itemName=\"'image '+(index+1)\"\n            />\n            <div class=\"fields-image-control field is-grouped has-background-white-ter p-1\">\n              <p class=\"control\">\n                <a\n                  @click=\"setShowImageLibrary(index)\"\n                  @imageSelected=\"setImage\"\n                  class=\"button-addImage button is-small is-info\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon\n                      :icon=\"['far', 'camera']\"\n                      size=\"lg\"\n                    />\n                  </span>\n                  <span>{{ $t('Form.Control.Choose') }}</span>\n                </a>\n              </p>\n              <p class=\"control\">\n                <a @click=\"deleteImage(index)\">\n                  <span class=\"icon has-text-danger\">\n                    <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                  </span>\n                </a>\n              </p>\n            </div>\n          </div>\n        </div>\n\n        <div\n          v-if=\"mItem.images.length < 4\"\n          class=\"column\"\n        >\n          <a\n            @click=\"setShowImageLibrary(-1)\"\n            @imageSelected=\"setImage\"\n            class=\"button-addImage button is-info\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon\n                :icon=\"['far', 'camera']\"\n                size=\"lg\"\n              />\n            </span>\n            <span>{{ $t('Form.Control.AddImage') }}</span>\n          </a>\n        </div>\n      </div>\n    </div>\n\n    <!-- Location -->\n    <div v-if=\"mItem.contentType === 'location'\">\n      <div class=\"mb-4\">\n        <label class=\"checkbox is-unselectable\">\n          <input\n            type=\"checkbox\"\n            v-model=\"mItem.showAddress\"\n          >\n          {{ $t('Components.Reservation.ReservationProposal.label_ShowAddress') }}\n        </label>\n      </div>\n\n      <div\n        v-if=\"addManually || mItem.showAddress\"\n        class=\"columns is-mobile is-multiline\"\n      >\n        <div\n          class=\"column\"\n          :class=\"{ 'is-two-thirds' : mItem.showAddress, 'is-full': !mItem.showAddress }\"\n        >\n          <template v-if=\"!mItem.fillDynamically\">\n            <div class=\"mb-4\">\n              <input\n                class=\"input\"\n                type=\"text\"\n                v-model=\"mItem.title\"\n                :disabled=\"mItem.fillDynamically\"\n              />\n            </div>\n\n            <ui-text-editor\n              v-model=\"mItem.text\"\n              :labelForInput=\"false\"\n              inputCssClass=\"has-fixed-size\"\n              :disabled=\"mItem.fillDynamically\"\n            />\n          </template>\n          <template v-else>\n            <text-placeholder\n              :numberOfItems=\"2\"\n              placeholderItemHeight=\"20px\"\n              class=\"mb-4\"\n            />\n            <text-placeholder :numberOfItems=\"26\" />\n          </template>\n        </div>\n        <div\n          v-if=\"mItem.showAddress\"\n          class=\"column is-one-third\"\n        >\n          <div class=\"box px-3\">\n            <div class=\"subtitle\">\n              {{\n              $t(\n                'Components.Proposals.Proposal.Title_Address'\n              )\n            }}\n            </div>\n\n            <div class=\"mb-4\">\n              <span class=\"icon-text\">\n                <span class=\"icon mr-3\">\n                  <font-awesome-icon :icon=\"['fas', 'map-marker']\" />\n                </span>\n                <span>\n                  {{ $t('Components.Reservation.ReservationProposal.Label_LocationName') }}<br />\n                  {{ $t('Components.Reservation.ReservationProposal.Label_Address') }}<br />\n                  {{ $t('Components.Reservation.ReservationProposal.Label_PostalCode') }} &nbsp;\n                  {{ $t('Components.Reservation.ReservationProposal.Label_City') }}<br />\n                  {{ $t('Components.Reservation.ReservationProposal.Label_Country') }}\n                </span>\n              </span>\n            </div>\n            <div>\n              <span class=\"icon-text\">\n                <span class=\"icon mr-3\">\n                  <font-awesome-icon :icon=\"['fas', 'envelope']\" />\n                </span>\n                <span>{{ $t('Components.Reservation.ReservationProposal.Label_Email') }}</span>\n              </span>\n            </div>\n            <div class=\"mb-4\">\n              <span class=\"icon-text\">\n                <span class=\"icon mr-3\">\n                  <font-awesome-icon :icon=\"['fas', 'phone-alt']\" />\n                </span>\n                <span>{{ $t('Components.Reservation.ReservationProposal.Label_Phone') }}</span>\n              </span>\n            </div>\n\n            <div>\n              <span class=\"icon-text\">\n                <span class=\"mr-3 has-text-weight-bold\">\n                  {{ $t('Components.Reservation.ReservationProposal.Label_CocShortner') }}\n                </span>\n\n                {{ $t('Components.Reservation.ReservationProposal.Label_Coc') }}\n              </span>\n            </div>\n          </div>\n        </div>\n      </div>\n    </div>\n\n    <!-- Mixed Content -->\n    <div v-if=\"mItem.contentType === 'mixed'\">\n      <div class=\"columns\">\n        <div\n          v-for=\"(item, index) in mItem.items\"\n          :key=\"'col-' + index\"\n          class=\"column\"\n        >\n          <div class=\"title is-6\">{{ $t('Components.Reservation.ReservationProposal.Title_Column') }} {{index + 1}}</div>\n          <!-- Show content type select -->\n          <div class=\"mb-3 select is-fullwidth\">\n            <select\n              v-model=\"item.contentType\"\n              @change=\"setContantTypeStructure(item, index, mItem)\"\n            >\n              <option\n                disabled\n                value=\"none\"\n              >{{ $t('ProposalContentType.type_none') }}</option>\n              <option\n                v-for=\"(ct, ctIndex) in contentTypes\"\n                :key=\"'ct-' + ctIndex\"\n                :value=\"ct.contentType\"\n              >\n                {{ $t('ProposalContentType.type_' + ct.contentType) }}\n              </option>\n            </select>\n          </div>\n          <div v-if=\"item.contentType !== 'none'\">\n            <EditItem\n              :key=\"'mi-' + item.id\"\n              :item=\"item\"\n              :parentContentType=\"mItem?.contentType ?? ''\"\n              :proposalLanguage=\"proposalLanguage\"\n              @itemUpdated=\"updateItem\"\n            />\n          </div>\n        </div>\n      </div>\n    </div>\n\n    <!-- Contact -->\n    <div v-if=\"mItem.contentType === 'contact'\">\n      <div class=\"mb-4\">\n        <label class=\"label\">{{ $t('Components.Reservation.ReservationProposal.Label_Alignment') }}</label>\n        <div class=\"control\">\n          <div class=\"select is-fullwidth\">\n            <select v-model=\"mItem.align\">\n              <option\n                value=\"left\"\n                :selcted=\"mItem.align === 'left'\"\n              >{{ $t('General.Left') }}</option>\n              <option\n                value=\"center\"\n                :selcted=\"mItem.align === 'center'\"\n              >{{ $t('General.Center') }}</option>\n              <option\n                value=\"right\"\n                :selcted=\"mItem.align === 'right'\"\n              >{{ $t('General.Right') }}</option>\n            </select>\n          </div>\n        </div>\n      </div>\n      <div class=\"grid-contact-settings\">\n        <div class=\"\">\n          <label class=\"checkbox\">\n            <input\n              type=\"checkbox\"\n              v-model=\"mItem.showImage\"\n              :checked=\"mItem.showImage\"\n            >\n            {{ $t('Components.Reservation.ReservationProposal.Label_ShowContactImage') }}\n          </label>\n        </div>\n\n        <div class=\"\">\n          <label class=\"checkbox\">\n            <input\n              type=\"checkbox\"\n              v-model=\"mItem.showName\"\n              :checked=\"mItem.showName\"\n            >\n            {{ $t('Components.Reservation.ReservationProposal.Label_ShowContactName') }}\n          </label>\n        </div>\n\n        <div class=\"\">\n          <label class=\"checkbox\">\n            <input\n              type=\"checkbox\"\n              v-model=\"mItem.showJobTitle\"\n              :checked=\"mItem.showJobTitle\"\n            >\n            {{ $t('Components.Reservation.ReservationProposal.Label_ShowContactJobTitle') }}\n          </label>\n        </div>\n\n        <div class=\"\">\n          <label class=\"checkbox\">\n            <input\n              type=\"checkbox\"\n              v-model=\"mItem.showLocation\"\n              :checked=\"mItem.showLocation\"\n            >\n            {{ $t('Components.Reservation.ReservationProposal.Label_ShowContactLocation') }}\n          </label>\n        </div>\n\n        <div class=\"\">\n          <label class=\"checkbox\">\n            <input\n              type=\"checkbox\"\n              v-model=\"mItem.showEmail\"\n              :checked=\"mItem.showEmail\"\n            >\n            {{ $t('Components.Reservation.ReservationProposal.Label_ShowContactEmail') }}\n          </label>\n        </div>\n\n        <div class=\"\">\n          <label class=\"checkbox\">\n            <input\n              type=\"checkbox\"\n              v-model=\"mItem.showPhone\"\n              :checked=\"mItem.showPhone\"\n            >\n            {{ $t('Components.Reservation.ReservationProposal.Label_ShowContactPhone') }}\n          </label>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\nimport uuidv4 from '@/mixins/createId'\n\nimport EditItem from '@/components/Proposals/Template/TemplateItems/EditItem';\nimport ImageLibrary from '@/components/Location/ImageLibrary.vue';\nimport TextPlaceholder from '../../../UI/TextPlaceholder.vue';\nimport Vue from 'vue';\nimport ImageViewer from '../../../UI/ImageViewer.vue';\n\nexport default {\n  name: 'EditItem',\n\n  components: {\n    EditItem,\n    ImageLibrary,\n    TextPlaceholder,\n    ImageViewer\n  },\n\n  mixins: [uuidv4],\n\n  props: {\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    parentContentType: {\n      type: String,\n      default: ''\n    },\n\n    proposalLanguage: {\n      type: String,\n      default: 'en',\n    },\n  },\n\n  data() {\n    const addManually = !this.item.fillDynamically\n    return {\n      contentTypes: [\n        { contentType: 'contact', id: this.uuidv4(), label: 'Contact', title: '', text: '', fillDynamically: true, showImage: true, showJobTitle: true, showLocation: true, showName: true, showEmail: true, showPhone: true, align: 'left' },\n        { contentType: 'text', id: this.uuidv4(), label: 'Text', fillDynamically: false },\n        { contentType: 'images', id: this.uuidv4(), label: 'Image', images: [], fillDynamically: false },\n        { contentType: 'program', id: this.uuidv4(), label: 'Program', fillDynamically: true }\n      ],\n      activeImageIndex: 0,\n      locationId: Number(this.$route.params.locationId),\n      mItem: null,\n      showImageLibrary: false,\n      showSideDrawer: false,\n      drawerTitle: '',\n      drawerSize: 'large',\n      addManually,\n      heroNrOfPlaceholderLines: 40,\n      heroLineWidth: 100,\n      heroLineMinWidth: 24,\n      heroLineHeight: '10px'\n    }\n  },\n\n  computed: {\n    showDynamicly() {\n      if (this.mItem?.contentType === 'menu' ||\n        this.mItem?.contentType === 'text' ||\n        this.mItem?.contentType === 'images' ||\n        this.mItem?.contentType === 'mixed') {\n        return false;\n      }\n\n      return true;\n    },\n\n    ckEditorStyle() {\n      let height = 200\n      if (this.parentContentType === 'mixed') {\n        height = 140\n      }\n      return `--ckEditorHeight: ${height}px;`\n    },\n\n    showGenericTitleTextInput() {\n      return !this.mItem.fillDynamically\n        && this.mItem.contentType !== 'hero'\n        && this.mItem.contentType !== 'location'\n        && this.mItem.contentType !== 'menu'\n        && this.mItem.contentType !== 'images'\n    }\n  },\n\n  watch: {\n    addManually: {\n      handler(newVal) {\n        this.mItem.fillDynamically = !newVal\n      }\n    },\n\n    mItem: {\n      handler(newVal) {\n        this.addManually = !newVal.fillDynamically\n        this.mItem = newVal;\n        this.$emit('itemUpdated', this.mItem);\n      },\n      deep: true\n    }\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n    this.mItem.title = this.getItemTitle()\n\n    if (this.mItem.contentType === 'hero' && this.mItem.images.length === 0) {\n      this.mItem.images.push({ Image: '', UrlLarge: '', UrlMedium: '', UrlOriginal: '', UrlSmall: '', IsDefault: true });\n      this.mItem.images.push({ Image: '', UrlLarge: '', UrlMedium: '', UrlOriginal: '', UrlSmall: '', IsDefault: false });\n      this.mItem.images.push({ Image: '', UrlLarge: '', UrlMedium: '', UrlOriginal: '', UrlSmall: '', IsDefault: false });\n      this.mItem.images.push({ Image: '', UrlLarge: '', UrlMedium: '', UrlOriginal: '', UrlSmall: '', IsDefault: false });\n    }\n  },\n\n  mounted() {\n    window.addEventListener('resize', this.screeResizeHanler)\n  },\n\n  beforeDestroy() {\n    window.removeEventListener('resize', this.screeResizeHanler)\n  },\n\n  methods: {\n    screeResizeHanler() {\n      const windowWidth = window.innerWidth\n      if (windowWidth >= 1900 && this.heroNrOfPlaceholderLines !== 40) {\n        this.heroNrOfPlaceholderLines = 46\n        this.heroLineWidth = 100\n        this.heroLineMinWidth = 24\n        this.heroLineHeight = '10px'\n      }\n      if (windowWidth >= 1600 && windowWidth < 1900 && this.heroNrOfPlaceholderLines !== 25) {\n        this.heroNrOfPlaceholderLines = 30\n        this.heroLineWidth = 90\n        this.heroLineMinWidth = 20\n        this.heroLineHeight = '10px'\n      }\n      if (windowWidth >= 1300 && windowWidth < 1600 && this.heroNrOfPlaceholderLines !== 15) {\n        this.heroNrOfPlaceholderLines = 30\n        this.heroLineWidth = 75\n        this.heroLineMinWidth = 20\n        this.heroLineHeight = '10'\n      }\n    },\n\n    setContantTypeStructure(item, index, _mItem) {\n      let _content = cleanSource(this.contentTypes.find(c => c.contentType === item.contentType))\n      Vue.set(_mItem.items, index, _content)\n    },\n\n    getItemTitle() {\n      let title = this.mItem.title;\n\n      if (this.mItem.contentType === 'dates') {\n      }\n      if (this.mItem.contentType === 'hero') {\n        title = title.length === 0 ? '' : this.mItem.title;\n      }\n      if (this.mItem.contentType === 'location') {\n        title = title.length === 0 ? '' : this.mItem.title;\n      }\n\n      return title;\n    },\n\n    updateItem(item) {\n      let itemIndex = this.mItem.items.findIndex(i => i.id === item.id);\n      if (itemIndex !== -1) {\n        this.mItem.items[itemIndex] = item;\n      }\n    },\n\n    setImage(image) {\n      if (this.activeImageIndex === -1) {\n        this.mItem.images.push(image);\n      } else {\n        this.mItem.images[this.activeImageIndex].Image = image.Image;\n        this.mItem.images[this.activeImageIndex].UrlLarge = image.UrlLarge;\n        this.mItem.images[this.activeImageIndex].UrlMedium = image.UrlMedium;\n        this.mItem.images[this.activeImageIndex].UrlOriginal = image.UrlOriginal;\n        this.mItem.images[this.activeImageIndex].UrlSmall = image.UrlSmall;\n      }\n\n      this.hideDrawer();\n    },\n\n    deleteImage(index) {\n      this.mItem.images.splice(index, 1);\n    },\n\n    setShowImageLibrary(index) {\n      this.activeImageIndex = index;\n\n      this.drawerTitle = '';\n      this.showImageLibrary = true;\n      this.showSideDrawer = true;\n    },\n\n    hideDrawer() {\n      this.showImageLibrary = false;\n      this.showSideDrawer = false;\n    }\n  }\n}\n</script>\n\n<style scoped lang=\"sass\">\n.columns-hero\n  .column:nth-child(2)\n    max-width: 382px\n\n  .column-content-images\n    gap: 15px\n\n  .box-textplaceholder\n    height: 100%\n\n  figure\n    span:not(a span)\n      position: absolute\n      top: 0\n      right: 0\n      bottom: 0\n      left: 0\n      background-size: cover\n  .image-hero\n    width: 78%\n  .image-presentation-container\n    width: 23%\n    display: flex\n    flex-direction: column\n    align-items: stretch\n    gap: 15px\n    .box\n      flex-grow: 1\n      margin: 0 !important\n\n  @media screen and (max-width: 1479px)\n    flex-direction: column\n    .column:nth-child(2)\n      max-width: unset\n\n      .box-textplaceholder\n        display: none\n\n  @media screen and (min-width: 1480px) and (max-width: 1740px)\n    .column-content-images\n      flex-direction: column\n\n    .image-hero, .image-presentation-container\n      width: 100%\n      flex-direction: row\n      flex-wrap: wrap\n\n    .image-presentation-container\n      figure.box\n        width: calc((100%/3) - 10px)\n        flex-grow: 0\n        aspect-ratio: 3/2\n        align-items: unset\n\n        @media screen and (max-width: 1570px)\n          width: calc((100%/2) - 10px)\n\n.figure-with-add-button\n  position: relative\n  .button-addImage\n    position: absolute\n    z-index: 1\n    top: -10px\n    right: -5px\n\n.contentType-images\n  .columns\n    container-type: inline-size\n    .column\n      width: 25%\n      @container (width < 420px)\n        width: 50%\n\n.grid-contact-settings\n  display: grid\n  grid-gap: 5px 15px\n  grid-template-columns: 1fr 1fr 1fr\n  @container (width < 620px)\n    grid-template-columns: 1fr 1fr\n  @container (width < 340px)\n    grid-template-columns: 1fr\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditItem.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditItem.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EditItem.vue?vue&type=template&id=6087ed07&scoped=true\"\nimport script from \"./EditItem.vue?vue&type=script&lang=js\"\nexport * from \"./EditItem.vue?vue&type=script&lang=js\"\nimport style0 from \"./EditItem.vue?vue&type=style&index=0&id=6087ed07&prod&scoped=true&lang=sass\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6087ed07\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div\n    v-if=\"mItem\"\n    class=\"box p-0 m-4 has-background-white is-flex\"\n  >\n    <div\n      class=\"moveHandle handlerBar has-background-white-bis p-4 is-flex\"\n      :class=\"handleClassName\"\n    >\n      <span class=\"is-align-self-center\">\n        <font-awesome-icon :icon=\"['far', 'arrows-alt']\" /></span>\n    </div>\n    <div class=\"draggableItem-content is-flex-grow-1 p-4\">\n      <div class=\"is-flex\">\n        <div class=\"is-flex-grow-1 has-text-weight-bold is-size-5\">{{ $t('ProposalContentType.type_' + mItem.contentType) }}</div>\n        <div class=\"field is-grouped controls\">\n          <p class=\"control\">\n            <a\n              @click=\"selectItem\"\n              class=\"icon-text has-text-link\"\n            >\n              <span>{{ selectedItem?.id !== mItem.id ? $t('Form.Control.Edit') : $t('Form.Control.Close') }}</span>\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', selectedItem?.id !== mItem.id ? 'arrow-down' : 'arrow-up']\" />\n              </span>\n            </a>\n          </p>\n          <p class=\"control\">\n            <a\n              @click=\"removeItem\"\n              class=\"icon-text has-text-danger\"\n            >\n              <!-- <span>{{ $t('Form.Control.Delete') }}</span> -->\n              <span class=\"icon has-text-danger\">\n                <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n              </span>\n            </a>\n          </p>\n        </div>\n      </div>\n\n      <hr v-if=\"selectedItem?.id === mItem.id\">\n\n      <div class=\"mb-2\">\n        <EditItem\n          v-if=\"selectedItem?.id === mItem.id\"\n          :item=\"selectedItem\"\n          :proposalLanguage=\"proposalLanguage\"\n          @itemUpdated=\"updateItem\"\n        />\n      </div>\n\n      <div\n        v-if=\"mItem.contentType === 'dates'\"\n        class=\"mb-2\"\n      >\n        <draggable\n          :group=\"{ name: 'dItems', put: true, sort: true }\"\n          :list=\"mItem.items\"\n          id=\"dropzone-dates\"\n          :handle=\"'.'+nextHandleClassName\"\n          :sort=\"true\"\n        >\n          <MoveItem\n            v-for=\"item in mItem.items\"\n            :key=\"'dItem-' + item.id\"\n            :parentItem=\"mItem\"\n            :item=\"item\"\n            :selectedItem=\"selectedItem\"\n            :proposalLanguage=\"proposalLanguage\"\n            class=\"templateItem\"\n            :draggableLevel=\"nextDraggableLevel\"\n            :setSelectedItem=\"setSelectedItem\"\n          />\n        </draggable>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nimport draggable from 'vuedraggable'\nimport EditItem from '@/components/Proposals/Template/TemplateItems/EditItem';\nimport MoveItem from '@/components/Proposals/Template/TemplateItems/MoveItem';\nimport uuidv4 from '@/mixins/createId'\nimport EventBus from '../../../../eventbus/event-bus';\n\nexport default {\n  name: 'MoveItem',\n\n  components: {\n    draggable,\n    EditItem,\n    MoveItem\n  },\n\n  mixins: [uuidv4],\n\n  props: {\n    parentItem: {\n      type: Object,\n      default: null\n    },\n\n    item: {\n      type: Object,\n      default: null,\n    },\n\n    selectedItem: {\n      type: Object,\n      default: null,\n    },\n\n    proposalLanguage: {\n      type: String,\n      default: 'en',\n    },\n    draggableLevel: {\n      type: Number,\n      default: 0\n    },\n\n    setSelectedItem: {\n      type: Function,\n      required: true\n    }\n  },\n\n  data() {\n    const nextDraggableLevel = (this.draggableLevel + 1)\n    const handleClassName = 'handle_' + this.draggableLevel\n    const nextHandleClassName = 'handle_' + nextDraggableLevel\n\n    return {\n      mItem: null,\n      handleClassName,\n      nextDraggableLevel,\n      nextHandleClassName\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    this.mItem = cleanSource(this.item);\n  },\n\n  computed: {\n  },\n\n  methods: {\n    selectItem() {\n      this.setSelectedItem(this.mItem)\n    },\n\n    updateItem(updatedItem) {\n      if (this.parentItem === null) {\n        EventBus.$emit('updateProposalItem', updatedItem);\n        return\n      }\n\n      const index = this.parentItem.items.findIndex(\n        (item) => item.id === updatedItem.id\n      );\n      if (index !== -1) {\n        this.parentItem.items[index] = updatedItem;\n      }\n      EventBus.$emit('updateProposalItem', this.parentItem)\n    },\n\n    removeItem() {\n      if (this.parentItem !== null) {\n        const index = this.parentItem.items.findIndex(item => item.id === this.mItem.id);\n        if (index !== -1) {\n          this.parentItem.items.splice(index, 1);\n          EventBus.$emit('updateProposalItem', this.parentItem);\n        }\n        return\n      }\n\n      this.$emit('removeItem', this.mItem);\n    }\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"sass\">\n.moveHandle\n  cursor: grab\n  &:hover\n    background-color: #f4f1f1 !important\n  &:active\n    cursor: grabbing\n\n.templateItem\n  container-type: inline-size\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MoveItem.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MoveItem.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MoveItem.vue?vue&type=template&id=7f49d1b4&scoped=true\"\nimport script from \"./MoveItem.vue?vue&type=script&lang=js\"\nexport * from \"./MoveItem.vue?vue&type=script&lang=js\"\nimport style0 from \"./MoveItem.vue?vue&type=style&index=0&id=7f49d1b4&prod&scoped=true&lang=sass\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"7f49d1b4\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div>\n    <div class=\"buttons is-right\">\n      <button\n        @click=\"cancelEditor\"\n        class=\"button is-ghost\"\n      >{{ $t('GeneralActions.Cancel') }}</button>\n\n      <button\n        @click=\"updateTemplate\"\n        class=\"button is-primary\"\n        :class=\"{ 'is-loading': isSaving }\"\n        :disabled=\"isSaving\"\n      >{{ isNewTemplate ? $t('GeneralActions.Create') : $t('GeneralActions.Save') }}</button>\n    </div>\n\n    <div class=\"columns is-mobile\">\n      <div class=\"column-templateItems column\">\n        <draggable\n          :group=\"{ name: 'contentTypes', pull: 'clone', put: false, sort: false }\"\n          :list=\"contentTypes\"\n          :clone=\"cloneItem\"\n          :sort=\"false\"\n          :move=\"checkMove\"\n          class=\"dragArea\"\n          @start=\"drag = true\"\n          @end=\"drag = false\"\n        >\n          <div\n            v-for=\"(cItem, index) in contentTypes\"\n            :key=\"'cItem' + index\"\n            class=\"list-group-item box\"\n            style=\"cursor: move;\"\n            tabindex=\"0\"\n          >\n            <div>{{ $t('ProposalContentType.type_' + cItem.contentType) }}</div>\n          </div>\n        </draggable>\n      </div>\n      <div class=\"column-draggable column\">\n        <draggable\n          :group=\"{ name: 'tItems', put: true, sort: true }\"\n          :list=\"mItems\"\n          :draggable=\"'.templateItem'\"\n          id=\"dropzone\"\n          :handle=\"'.handle_'+ draggableLevel\"\n          :sort=\"true\"\n          @add=\"itemDropped\"\n          :class=\"cssClassDraggable\"\n          :style=\"styleDraggable\"\n          class=\"draggable-container mb-6\"\n        >\n          <MoveItem\n            v-for=\"item in mItems\"\n            :key=\"'tItem-' + item.id\"\n            @selectItem=\"setSelectedItem\"\n            @removeItem=\"deleteItem\"\n            :item=\"item\"\n            :selectedItem=\"selectedItem\"\n            :proposalLanguage=\"proposalLanguage\"\n            class=\"templateItem\"\n            :draggableLevel=\"draggableLevel\"\n            :setSelectedItem=\"setSelectedItem\"\n          />\n        </draggable>\n\n        <div class=\"buttons is-right\">\n          <button\n            @click=\"cancelEditor\"\n            class=\"button is-ghost\"\n          >{{ $t('GeneralActions.Cancel') }}</button>\n\n          <button\n            @click=\"updateTemplate\"\n            class=\"button is-primary\"\n            :class=\"{ 'is-loading': isSaving }\"\n            :disabled=\"isSaving\"\n          >{{ isNewTemplate ? $t('GeneralActions.Create') : $t('GeneralActions.Save') }}</button>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { cleanSource } from '@/utils/objectHelper'\nimport draggable from 'vuedraggable'\nimport uuidv4 from '@/mixins/createId'\n\nimport MoveItem from '@/components/Proposals/Template/TemplateItems/MoveItem';\nimport EventBus from '../../../eventbus/event-bus'\n\nexport default {\n  name: 'TemplateEditor',\n\n  components: {\n    draggable,\n    MoveItem\n  },\n\n  mixins: [uuidv4],\n\n  props: {\n    templateId: {\n      type: String,\n      default: '',\n    },\n\n    templateItems: {\n      type: Array,\n      default: () => [],\n    },\n\n    proposalLanguage: {\n      type: String,\n      default: 'en',\n    },\n\n    isNewTemplate: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  data() {\n    return {\n      draggableLevel: 0,\n      contentTypes: [\n        // { contentType: 'none', id: this.uuidv4(), label: 'Empty', fillDynamically: false },\n        {\n          contentType: 'dates', id: this.uuidv4(), label: 'Dates', title: '', text: '', items: [\n            { contentType: 'date', id: this.uuidv4(), label: 'Date', title: '', text: '', fillDynamically: true },\n            { contentType: 'program', id: this.uuidv4(), label: 'Program', title: '', text: '', fillDynamically: true },\n            { contentType: 'spaces', id: this.uuidv4(), label: 'Spaces', title: '', text: '', fillDynamically: true },\n            { contentType: 'options', id: this.uuidv4(), label: 'Options', title: '', text: '', fillDynamically: true }\n          ], fillDynamically: true\n        },\n        { contentType: 'hero', id: this.uuidv4(), label: 'Hero', title: '', text: '', images: [], fillDynamically: true, setImagesManually: false },\n        { contentType: 'location', id: this.uuidv4(), label: 'Location', title: '', text: '', fillDynamically: true },\n        { contentType: 'menu', id: this.uuidv4(), label: 'Menu', fillDynamically: false },\n        { contentType: 'text', id: this.uuidv4(), label: 'Text', title: '', text: '', fillDynamically: false },\n        { contentType: 'images', id: this.uuidv4(), label: 'Image', images: [], fillDynamically: false },\n        { contentType: 'mixed', id: this.uuidv4(), label: 'Mixed content', columns: 2, items: [{ contentType: 'none', id: this.uuidv4(), items: [], images: [] }, { contentType: 'none', id: this.uuidv4(), items: [], images: [] }], fillDynamically: false },\n        { contentType: 'program', id: this.uuidv4(), label: 'Program', title: '', text: '', fillDynamically: true },\n        { contentType: 'options', id: this.uuidv4(), label: 'Options', title: '', text: '', fillDynamically: true },\n        { contentType: 'spaces', id: this.uuidv4(), label: 'Spaces', title: '', text: '', fillDynamically: true },\n        { contentType: 'summary', id: this.uuidv4(), label: 'Summary', title: '', text: '', fillDynamically: true },\n        { contentType: 'contact', id: this.uuidv4(), label: 'Contact', title: '', text: '', fillDynamically: true, showImage: true, showJobTitle: true, showLocation: true, showName: true, showEmail: true, showPhone: true, align: 'right' },\n        { contentType: 'terms', id: this.uuidv4(), label: 'Terms', title: '', text: '', fillDynamically: true },\n      ],\n      isSaving: false,\n      mItems: [],\n      selectedItem: null\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('proposalStore', ['previewTemplate']),\n\n    cssClassDraggable() {\n      return [{\n        'show-placeholder': !this.mItems.length\n      }]\n    },\n\n    styleDraggable() {\n      return `--dragText: '${this.$t('Components.Settings.Proposal.ProposalTemplates.Placeholder_DragFistItem')}';`\n    }\n  },\n\n  watch: {\n    mItems: {\n      handler(newVal) {\n        this.setTemplatePreview(newVal);\n      },\n      deep: true\n    }\n  },\n\n  created() {\n    this.mItems = cleanSource(this.templateItems);\n  },\n\n  mounted() {\n    EventBus.$on('updateProposalItem', this.updateItem)\n  },\n\n  beforeDestroy() {\n    this.mItems = [];\n    this.setTemplatePreview([]);\n\n    EventBus.$off('updateProposalItem', this.updateItem)\n  },\n\n  methods: {\n    ...mapMutations('proposalStore', ['setTemplatePreview']),\n\n    cloneItem(element) {\n      let el = cleanSource(element);\n\n      let id = this.uuidv4();\n      el.id = id;\n\n      return el;\n    },\n\n    itemDropped(element) {\n      this.selectedItem = this.mItems[element.newIndex];\n    },\n\n    checkMove(evt) {\n      if (evt.to.id === \"dropzone\" || evt.to.id === \"dropzone-dates\") {\n        this.highlight = false;\n      } else {\n        this.highlight = true;\n      }\n    },\n\n    updateItem(updatedItem) {\n      let items = this.mItems;\n\n      const index = items.findIndex(\n        (item) => item.id === updatedItem.id\n      );\n      if (index !== -1) {\n        items[index] = updatedItem;\n\n        this.mItems = items;\n      }\n    },\n\n    deleteItem(item) {\n      let items = this.mItems;\n\n      const index = items.findIndex(\n        (i) => i.id === item.id\n      );\n      if (index !== -1) {\n        items.splice(index, 1);\n\n        this.mItems = items;\n        if (this.selectedItem && this.selectedItem.id === item.id) {\n          this.selectedItem = null;\n        }\n      }\n    },\n\n    setSelectedItem(item) {\n      if (this.selectedItem && this.selectedItem.id === item.id) {\n        this.selectedItem = null;\n        return;\n      }\n      this.selectedItem = item;\n    },\n\n    updateTemplate() {\n      this.$emit('templateUpdated', this.mItems);\n    },\n\n    cancelEditor() {\n      this.mItems = cleanSource(this.templateItems);\n      this.$emit('cancelEditor');\n    },\n\n    hideEditor() {\n      this.$emit('hideEditor');\n    },\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.column-templateItems {\n  max-width: 244px;\n}\n\n.draggable-container {\n  border: 3px dashed #e6e6e6;\n  padding: 5px;\n  min-height: 100%;\n\n  &.show-placeholder {\n    position: relative;\n    &::before {\n      position: absolute;\n      top: 10px;\n      right: 10px;\n      bottom: 10px;\n      left: 10px;\n      content: var(--dragText, \"Drag your items here\");\n      font-size: 32px;\n      font-weight: 600;\n      color: #cccccc;\n      display: block;\n      padding: $gap;\n      background-color: #fafafa;\n      border: 1px solid #ebebeb;\n      opacity: 0.5;\n    }\n  }\n}\n</style>\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateEditor.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateEditor.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TemplateEditor.vue?vue&type=template&id=9939ca92&scoped=true\"\nimport script from \"./TemplateEditor.vue?vue&type=script&lang=js\"\nexport * from \"./TemplateEditor.vue?vue&type=script&lang=js\"\nimport style0 from \"./TemplateEditor.vue?vue&type=style&index=0&id=9939ca92&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"9939ca92\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditSpace.vue?vue&type=style&index=0&id=f19e9f3e&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"forgotPassword\"},[_c('p',{staticClass:\"title is-4\",domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.ForgotPassword.Main_Title', _vm.localeOverride))}}),_c('div',{staticClass:\"content\"},[_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.AccountControls.ForgotPassword.Text_Info', _vm.localeOverride))}})]),_c('ui-base-input-field',{attrs:{\"labelForInput\":false,\"label\":_vm.$t('Components.AccountControls.ForgotPassword.Label_EmailAddress', _vm.localeOverride),\"error\":_vm.emailErrors.toString(),\"onKeyUpEnter\":_vm.sendRequest,\"required\":\"\"},on:{\"input\":function($event){return _vm.delayTouch(_vm.$v.emailAddress)},\"blur\":function($event){return _vm.$v.emailAddress.$touch()}},model:{value:(_vm.emailAddress),callback:function ($$v) {_vm.emailAddress=$$v},expression:\"emailAddress\"}}),_c('div',{staticClass:\"level is-mobile has-padding-top\"},[_c('div',{staticClass:\"level-left\"},[_c('a',{staticClass:\"has-icon\",on:{\"click\":_vm.backFunc}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'angle-left']}})],1),_c('span',{staticClass:\"has-icon\",domProps:{\"innerHTML\":_vm._s(_vm.$t('Form.Control.Back', _vm.localeOverride))}})])]),_c('div',{staticClass:\"level-right\"},[_c('a',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.isProcessing },attrs:{\"disabled\":Boolean(_vm.$v.$error) || _vm.isProcessing},domProps:{\"innerHTML\":_vm._s(\n          _vm.$t('Components.AccountControls.ForgotPassword.Button_SendCode', _vm.localeOverride)\n        )},on:{\"click\":_vm.sendRequest}})])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"forgotPassword\">\n    <p\n      class=\"title is-4\"\n      v-html=\"$t('Components.AccountControls.ForgotPassword.Main_Title', localeOverride)\"\n    ></p>\n\n    <div class=\"content\">\n      <p v-html=\"$t('Components.AccountControls.ForgotPassword.Text_Info', localeOverride)\"></p>\n    </div>\n\n    <ui-base-input-field\n      v-model=\"emailAddress\"\n      :labelForInput=\"false\"\n      :label=\"\n        $t('Components.AccountControls.ForgotPassword.Label_EmailAddress', localeOverride)\n      \"\n      :error=\"emailErrors.toString()\"\n      :onKeyUpEnter=\"sendRequest\"\n      @input=\"delayTouch($v.emailAddress)\"\n      @blur=\"$v.emailAddress.$touch()\"\n      required\n    />\n\n    <div class=\"level is-mobile has-padding-top\">\n      <div class=\"level-left\">\n        <a\n          class=\"has-icon\"\n          @click=\"backFunc\"\n        >\n          <span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'angle-left']\" />\n          </span>\n          <span\n            class=\"has-icon\"\n            v-html=\"$t('Form.Control.Back', localeOverride)\"\n          ></span>\n        </a>\n      </div>\n      <div class=\"level-right\">\n        <a\n          @click=\"sendRequest\"\n          class=\"button is-primary\"\n          v-bind:class=\"{ 'is-loading': isProcessing }\"\n          :disabled=\"Boolean($v.$error) || isProcessing\"\n          v-html=\"\n            $t('Components.AccountControls.ForgotPassword.Button_SendCode', localeOverride)\n          \"\n        ></a>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapMutations } from 'vuex'\nimport loginProvider from '@/providers/login'\nimport { required, email } from 'vuelidate/lib/validators'\n\nconst touchMap = new WeakMap()\n\nexport default {\n  name: 'component-forgot-password',\n\n  inject: {\n    localeOverride: {\n      type: String,\n      default: function() {\n        return this.$i18n.locale\n      }\n    }\n  },\n\n  props: {\n    backFunc: {\n      type: Function,\n      default: () => { },\n    },\n    channelIdOverride: {\n      type: Number,\n      default: 0\n    },\n  },\n\n  data(vm) {\n    const channelId = (this.channelIdOverride === 0 ? vm.$store.getters['brandChannelId'] : this.channelIdOverride)\n    return {\n      emailAddress: '',\n      isProcessing: false,\n      channelId\n    }\n  },\n\n  computed: {\n    emailErrors() {\n      const errors = []\n      if (!this.$v.emailAddress.$dirty) return errors\n      if (!this.$v.emailAddress.required) {\n        errors.push(this.$t('Form.InputErrors.Required', this.localeOverride))\n      } else if (!this.$v.emailAddress.email) {\n        errors.push(this.$t('Form.InputErrors.InvalidEmail', this.localeOverride))\n      }\n\n      return errors\n    },\n  },\n\n  /**\n   * Form validation rules\n   */\n  validations: {\n    emailAddress: {\n      required,\n      email,\n    },\n  },\n\n  methods: {\n    ...mapMutations('accountStore', ['setConfirmationToken']),\n\n    delayTouch($v) {\n      $v.$reset()\n      if (touchMap.has($v)) {\n        clearTimeout(touchMap.get($v))\n      }\n      touchMap.set($v, setTimeout($v.$touch, 1000))\n    },\n\n    async sendRequest() {\n      let self = this\n      if (!this.isProcessing) {\n        this.isProcessing = true\n        this.$v.$touch()\n        if (this.$v.$invalid) {\n          this.submitStatus = 'ERROR'\n          // console.info(e)\n          this.isProcessing = false\n        } else {\n          // do your submit logic here\n          this.submitStatus = 'PENDING'\n        }\n\n        // Send request e-mail\n        await loginProvider.methods\n          .resetPassword(this.emailAddress, this.$i18n.locale)\n          .then(response => {\n            if (response.status === 200) {\n              self.$emit('sentSuccessfully')\n\n              this.setConfirmationToken(response.data.ConfirmationToken)\n            }\n          })\n          .catch(() => { })\n          .finally(() => {\n            self = null\n          })\n      }\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ForgotPassword.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ForgotPassword.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ForgotPassword.vue?vue&type=template&id=4154f3a4&scoped=true\"\nimport script from \"./ForgotPassword.vue?vue&type=script&lang=js\"\nexport * from \"./ForgotPassword.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4154f3a4\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('label',{staticClass:\"is-unselectable\",class:_vm.classes},[_c('input',{attrs:{\"type\":\"checkbox\",\"name\":_vm.name,\"disabled\":_vm.disabled},domProps:{\"checked\":_vm.checked,\"value\":_vm.checkValue},on:{\"input\":_vm.onChange}}),(_vm.label)?_c('span',{class:_vm.cssClassLabel},[_vm._v(_vm._s(_vm.label))]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <label\n    class=\"is-unselectable\"\n    :class=\"classes\"\n  >\n    <input\n      type=\"checkbox\"\n      :name=\"name\"\n      :checked=\"checked\"\n      :value=\"checkValue\"\n      @input=\"onChange\"\n      :disabled=\"disabled\"\n    ><span\n      v-if=\"label\"\n      :class=\"cssClassLabel\"\n    >{{ label }}</span>\n  </label>\n</template>\n\n<script>\nexport default {\n  name: 'base-checkbox',\n\n  props: {\n    label: {\n      type: String,\n      default: ''\n    },\n    cssClassLabel: {\n      type: [Object, Array, String],\n      default: ''\n    },\n    name: {\n      type: String,\n      default: null\n    },\n    value: {\n      type: [String, Number, Boolean, Object, Array],\n      required: true\n    },\n    checkValue: {\n      type: [Number, String, Boolean],\n      default: null\n    },\n    classes: {\n      type: String,\n      default: ''\n    },\n    disabled: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  data() {\n    return {\n    }\n  },\n\n  computed: {\n    checked: {\n      get() {\n        if (Array.isArray(this.value)) {\n          return this.value.indexOf(this.checkValue) !== -1\n        }\n        return this.value\n      },\n      set(val) {\n      }\n    }\n  },\n\n  methods: {\n    onChange(evt) {\n      if (Array.isArray(this.value)) {\n        if (this.value.indexOf(this.checkValue) !== -1) {\n          this.value.splice(this.value.indexOf(this.checkValue), 1)\n        } else {\n          this.value.push(this.checkValue)\n        }\n        this.$emit('input', this.value)\n      } else {\n        this.$emit('input', evt.target.checked)\n      }\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\nlabel {\n  display: inline-flex;\n  align-items: center;\n  &.has-input-right {\n    span {\n      order: -1;\n      margin-right: 5px;\n    }\n  }\n  &:not(.has-input-right) {\n    span {\n      margin-left: 5px;\n    }\n  }\n}\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseCheckbox.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseCheckbox.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BaseCheckbox.vue?vue&type=template&id=7ad9cd4a&scoped=true\"\nimport script from \"./BaseCheckbox.vue?vue&type=script&lang=js\"\nexport * from \"./BaseCheckbox.vue?vue&type=script&lang=js\"\nimport style0 from \"./BaseCheckbox.vue?vue&type=style&index=0&id=7ad9cd4a&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"7ad9cd4a\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommentItem.vue?vue&type=style&index=0&id=bf6e0d8c&prod&lang=scss&scoped=true\"","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n  var regexp = /./;\n  try {\n    '/./'[METHOD_NAME](regexp);\n  } catch (error1) {\n    try {\n      regexp[MATCH] = false;\n      return '/./'[METHOD_NAME](regexp);\n    } catch (error2) { /* empty */ }\n  } return false;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"my-5\"},[(_vm.showModalAuthentication)?_c('modal-authentication',{attrs:{\"showModal\":_vm.showModalAuthentication,\"onClickCancel\":_vm.hideModal,\"channelId\":_vm.channelId,\"modalTitle\":_vm.modalTitleAuthentication}}):_vm._e(),(_vm.showChangeRequest)?_c('ModalChangeRequestProposal',{attrs:{\"showModal\":_vm.showChangeRequest,\"onClickCancel\":_vm.hideModal,\"proposal\":_vm.mProposal,\"previewMode\":_vm.isEmployee},on:{\"proposalUpdated\":_vm.proposalUpdated}}):_vm._e(),(_vm.showReject)?_c('ModalCancelProposal',{attrs:{\"showModal\":_vm.showReject,\"onClickCancel\":_vm.hideModal,\"proposal\":_vm.mProposal,\"previewMode\":_vm.isEmployee},on:{\"proposalCancelled\":_vm.proposalCancelled}}):_vm._e(),_c('div',[(_vm.proposal)?_c('TemplateParser'):_vm._e(),(!_vm.hideProposalActions)?_c('section',{staticClass:\"section section-wrapper section-action-wrapper\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"notification is-info is-light\"},[_c('div',{staticClass:\"columns is-multiline\"},[_c('div',{staticClass:\"column\"},[_c('div',{staticClass:\"notification-info notification has-background-info p-4 has-text-white\"},[_c('div',{staticClass:\"title is-3 has-text-white\"},[_vm._v(_vm._s(_vm.$t('Components.Proposals.Proposal.Title_InfoForProposalCustomer', _vm.proposalLanguage)))]),_c('div',{staticClass:\"content\"},[_c('p',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Proposals.Proposal.Text_InfoForProposalCustomer', _vm.proposalLanguage))+\" \")])])])]),_c('div',{staticClass:\"column\"},[_c('div',{staticClass:\"notification-info notification has-background-info-light p-4\"},[(_vm.profile)?_c('div',{staticClass:\"proposal-actions\"},[_c('div',{staticClass:\"title is-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Proposals.Proposal.Title_CustomerSignedIn', _vm.proposalLanguage, { name: _vm.profile.FirstName })))]),_c('div',{staticClass:\"buttons is-left mb-0\"},[_c('a',{staticClass:\"button is-large is-outlined is-flex-grow-1\",class:{ 'is-loading': _vm.isAcceptingProposal },on:{\"click\":_vm.setShowChangeRequest}},[_c('span',{staticClass:\"icon has-text-primary-dark\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'comment-lines']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Proposals.Proposal.Link_RequestChanges', _vm.proposalLanguage)))])]),_c('a',{staticClass:\"button is-large is-outlined is-flex-grow-1\",on:{\"click\":_vm.setShowReject}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Proposals.Proposal.Link_RejectProposal', _vm.proposalLanguage)))])]),_c('a',{staticClass:\"button is-large is-primary is-flex-grow-3\",class:[\n                      { 'is-disabled': _vm.isAcceptingProposal },\n                      { 'is-loading': _vm.isAcceptingProposal },\n                    ],on:{\"click\":_vm.acceptProposal}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Proposals.Proposal.Button_Accept', _vm.proposalLanguage))+\" \")])])]):_vm._e(),(!_vm.profile)?_c('div',[_c('div',{staticClass:\"title is-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Proposals.Proposal.Title_CustomerSignIn', _vm.proposalLanguage)))]),_c('div',{staticClass:\"content\"},[_c('p',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Proposals.Proposal.Text_CustomerSignIn', _vm.proposalLanguage))+\" \")]),_c('p',[_c('a',{staticClass:\"button is-large is-primary mb-0\",class:[\n                      { 'is-disabled': _vm.isAcceptingProposal },\n                      { 'is-loading': _vm.isAcceptingProposal },\n                    ],on:{\"click\":function($event){return _vm.setShowModalAuthentication()}}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Proposals.Proposal.Button_CustomerSignIn', _vm.proposalLanguage))+\" \")])])])]):_vm._e()])])])])])]):_vm._e(),(_vm.mProposal && _vm.mProposal.Status === 'RequiresChanges')?_c('section',{staticClass:\"section section-action-wrapper\"},[_c('div',{staticClass:\"container mb-4\"},[_c('Message',{staticClass:\"message-pending is-warning\",attrs:{\"message\":_vm.$t(\n            'Components.Proposals.Proposal.Message_PendingRequest',\n            _vm.proposalLanguage\n          )}})],1)]):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t(\n      'Components.Proposals.ModalChangeRequest.Maint_Title',\n      _vm.localeOverride.locale\n    ),\"buttonLabelConfirm\":_vm.$t(\n      'Components.Proposals.ModalChangeRequest.Button_Save',\n      _vm.localeOverride.locale\n    ),\"disableSaveButton\":_vm.disableSaveButton || _vm.previewMode,\"isSaving\":_vm.isSaving,\"isSavingSuccess\":_vm.isSavingSuccess,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError || _vm.isSavingSuccess,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.requestChange,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.previewMode)?_c('Message',{staticClass:\"mb-3\",attrs:{\"type\":'is-warning',\"message\":_vm.$t(\n          'Components.Proposals.ModalRefuseProposal.Text_PreviewMode',\n          _vm.localeOverride.locale\n        )}}):_vm._e(),_c('Message',{staticClass:\"mb-3\",attrs:{\"message\":_vm.$t(\n          'Components.Proposals.ModalChangeRequest.Message_Info',\n          _vm.localeOverride.locale\n        )}}),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.comment),expression:\"comment\"}],staticClass:\"textarea has-margin-bottom\",domProps:{\"value\":(_vm.comment)},on:{\"input\":function($event){if($event.target.composing)return;_vm.comment=$event.target.value}}})]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"\n      $t(\n        'Components.Proposals.ModalChangeRequest.Maint_Title',\n        localeOverride.locale\n      )\n    \"\n    :buttonLabelConfirm=\"\n      $t(\n        'Components.Proposals.ModalChangeRequest.Button_Save',\n        localeOverride.locale\n      )\n    \"\n    :disableSaveButton=\"disableSaveButton || previewMode\"\n    :isSaving=\"isSaving\"\n    :isSavingSuccess=\"isSavingSuccess\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError || isSavingSuccess\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"requestChange\"\n    :showModal=\"showModal\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template v-slot:content>\n      <Message\n        v-if=\"previewMode\"\n        :type=\"'is-warning'\"\n        :message=\"\n          $t(\n            'Components.Proposals.ModalRefuseProposal.Text_PreviewMode',\n            localeOverride.locale\n          )\n        \"\n        class=\"mb-3\"\n      />\n\n      <Message\n        :message=\"\n          $t(\n            'Components.Proposals.ModalChangeRequest.Message_Info',\n            localeOverride.locale\n          )\n        \"\n        class=\"mb-3\"\n      />\n      <textarea\n        class=\"textarea has-margin-bottom\"\n        v-model=\"comment\"\n      />\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\nimport proposalProvider from '@/providers/proposal'\nimport { EventBus } from '@/eventbus/event-bus'\n\nexport default {\n  components: {\n    Message: () => import('@/components/UI/Message'),\n  },\n\n  inject: {\n    localeOverride: {\n      type: Object,\n      default: function() {\n        return { locale: this.$i18n.locale }\n      },\n    },\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n\n    previewMode: {\n      type: Boolean,\n      default: false,\n    }\n  },\n\n  data() {\n    return {\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      comment: '',\n      notTheApplicant: false,\n    }\n  },\n\n  computed: {\n    ...mapState(['profile']),\n\n    disableSaveButton() {\n      return this.comment.trim().length < 10 || this.notTheApplicant\n    },\n  },\n\n  created() { },\n\n  methods: {\n    requestChange() {\n      let self = this\n\n      if (!self.isSaving && !self.previewMode) {\n        self.isSaving = true\n\n        proposalProvider.methods\n          .proposalChangeRequest(self.proposal.Key, self.comment)\n          .then((response) => {\n            if (response.status === 200) {\n              self.isSavingSuccess = true\n\n              this.$emit('proposalUpdated', response.data);\n\n              EventBus.$emit('proposalUpdated', response.data);\n\n              // Send message to display toast on screen\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Proposals.ModalChangeRequest.Message_Saved',\n                  this.localeOverride.locale\n                ),\n              })\n\n              // this.onClickCancel();\n            }\n          })\n          .catch((e) => {\n            if (e.response.status === 403) {\n              this.notTheApplicant = true\n            } else {\n              this.isSavingError = true\n            }\n          })\n          .finally(() => {\n            self.isSaving = false\n          })\n      }\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalChangeRequestProposal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalChangeRequestProposal.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalChangeRequestProposal.vue?vue&type=template&id=5d021064\"\nimport script from \"./ModalChangeRequestProposal.vue?vue&type=script&lang=js\"\nexport * from \"./ModalChangeRequestProposal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t(\n      'Components.Proposals.ModalCancelProposal.Maint_Title',\n      _vm.localeOverride.locale\n    ),\"buttonLabelConfirm\":_vm.$t(\n      'Components.Proposals.ModalCancelProposal.Button_Reject',\n      _vm.localeOverride.locale\n    ),\"confirmButtonCssClass\":\"is-danger\",\"isSaving\":_vm.isSaving,\"isSavingSuccess\":_vm.isSavingSuccess,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError || _vm.isSavingSuccess,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.cancelProposal,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',[(!_vm.notTheApplicant)?_c('Message',{staticClass:\"is-info\",scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t(\n              'Components.Proposals.ModalCancelProposal.Message_Info',\n              _vm.localeOverride.locale,\n              { phone: _vm.proposal.Location ? _vm.proposal.Location.PhoneNumber: '' }\n            ))}})]},proxy:true}],null,false,2524338297)}):_vm._e(),(_vm.notTheApplicant)?_c('Message',{staticClass:\"is-warning\",scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('Components.Proposals.ModalCancelProposal.Message_NotTheApplicant'))}})]},proxy:true}],null,false,996267049)}):_vm._e(),_c('table',{staticClass:\"table is-fullwidth\"},[_c('tbody',[_c('tr',[_c('td',{staticClass:\"has-text-vertical-middle\"},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Proposals.ModalCancelProposal.Label_CancelReason', _vm.localeOverride.locale ))+\" \")]),_c('td',[(_vm.predefinedReasons.length > 0)?_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.cancelReason),expression:\"cancelReason\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.cancelReason=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.predefinedReasons),function(predefinedReason){return _c('option',{key:predefinedReason.Id,domProps:{\"value\":predefinedReason.Id}},[_vm._v(\" \"+_vm._s(predefinedReason.Name)+\" \")])}),0)]):_vm._e()])]),(_vm.cancelReason === 6)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Proposals.ModalCancelProposal.Label_OtherReason', _vm.localeOverride.locale ))+\" \")]),_c('td',[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.reason),expression:\"reason\"}],staticClass:\"textarea has-fixed-size\",domProps:{\"value\":(_vm.reason)},on:{\"input\":function($event){if($event.target.composing)return;_vm.reason=$event.target.value}}})])]):_vm._e()])])],1)]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"\n      $t(\n        'Components.Proposals.ModalCancelProposal.Maint_Title',\n        localeOverride.locale\n      )\n    \"\n    :buttonLabelConfirm=\"\n      $t(\n        'Components.Proposals.ModalCancelProposal.Button_Reject',\n        localeOverride.locale\n      )\n    \"\n    confirmButtonCssClass=\"is-danger\"\n    :isSaving=\"isSaving\"\n    :isSavingSuccess=\"isSavingSuccess\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError || isSavingSuccess\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"cancelProposal\"\n    :showModal=\"showModal\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div>\n        <Message\n          v-if=\"!notTheApplicant\"\n          class=\"is-info\">\n          <template #content>\n            <div v-html=\"$t(\n                'Components.Proposals.ModalCancelProposal.Message_Info',\n                localeOverride.locale,\n                { phone: proposal.Location ? proposal.Location.PhoneNumber: '' }\n              )\"></div>\n          </template>\n          </Message>\n        <Message\n          v-if=\"notTheApplicant\"\n          class=\"is-warning\"\n        >\n        <template #content>\n          <div v-html=\"$t('Components.Proposals.ModalCancelProposal.Message_NotTheApplicant')\"></div>\n        </template>\n        </Message>\n        <table class=\"table is-fullwidth\">\n          <tbody>\n            <tr>\n              <td class=\"has-text-vertical-middle\">\n                {{\n                  $t(\n                    'Components.Proposals.ModalCancelProposal.Label_CancelReason',\n                    localeOverride.locale\n                  )\n                }}\n              </td>\n              <td>\n                <div\n                  v-if=\"predefinedReasons.length > 0\"\n                  class=\"select\"\n                >\n                  <select v-model=\"cancelReason\">\n                    <option\n                      v-for=\"predefinedReason in predefinedReasons\"\n                      :key=\"predefinedReason.Id\"\n                      :value=\"predefinedReason.Id\"\n                    >\n                      {{ predefinedReason.Name }}\n                    </option>\n                  </select>\n                </div>\n              </td>\n            </tr>\n            <tr v-if=\"cancelReason === 6\">\n              <td>\n                {{\n                  $t(\n                    'Components.Proposals.ModalCancelProposal.Label_OtherReason',\n                    localeOverride.locale\n                  )\n                }}\n              </td>\n              <td>\n                <textarea\n                  class=\"textarea has-fixed-size\"\n                  v-model=\"reason\"\n                ></textarea>\n              </td>\n            </tr>\n          </tbody>\n        </table>\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\nimport proposalProvider from '@/providers/proposal'\nimport Message from '@/components/UI/Message.vue'\nimport { EventBus } from '@/eventbus/event-bus'\n\nexport default {\n  components: { Message },\n\n  inject: {\n    localeOverride: {\n      type: Object,\n      default: function() {\n        return { locale: this.$i18n.locale }\n      },\n    },\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n\n    proposal: {\n      type: Object,\n      default: null,\n    },\n\n    previewMode: {\n      type: Boolean,\n      default: false,\n    },\n  },\n\n  data() {\n    return {\n      cancelReason: 0,\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      reason: '',\n      predefinedReasons: [],\n      notTheApplicant: false,\n    }\n  },\n\n  computed: {\n    ...mapState(['profile']),\n  },\n\n  created() {\n    this.predefinedReasons.push({\n      Id: 0,\n      Name: this.$t(\n        'Components.Proposals.ModalCancelProposal.Reason_NoReasonSpecified',\n        this.localeOverride.locale\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 1,\n      Name: this.$t(\n        'Components.Proposals.ModalCancelProposal.Reason_NoParticipants',\n        this.localeOverride.locale\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 2,\n      Name: this.$t(\n        'Components.Proposals.ModalCancelProposal.Reason_FoundCheaperLocation',\n        this.localeOverride.locale\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 3,\n      Name: this.$t(\n        'Components.Proposals.ModalCancelProposal.Reason_OtherRegion',\n        this.localeOverride.locale\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 4,\n      Name: this.$t(\n        'Components.Proposals.ModalCancelProposal.Reason_MeetingIsCancelled',\n        this.localeOverride.locale\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 5,\n      Name: this.$t(\n        'Components.Proposals.ModalCancelProposal.Reason_MeetingIsRescheduled',\n        this.localeOverride.locale\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 7,\n      Name: this.$t(\n        'Components.Proposals.ModalCancelProposal.Reason_TooExpensive',\n        this.localeOverride.locale\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 6,\n      Name: this.$t(\n        'Components.Proposals.ModalCancelProposal.Reason_Other',\n        this.localeOverride.locale\n      ),\n    })\n  },\n\n  methods: {\n    cancelProposal() {\n      let self = this\n\n      if (!self.isSaving && !self.previewMode) {\n        self.isSaving = true\n\n        proposalProvider.methods\n          .rejectProposal(self.proposal.Key, self.cancelReason, self.reason)\n          .then((response) => {\n            if (response.status === 200) {\n              this.$emit('proposalCancelled', response.data);\n\n              EventBus.$emit('proposalUpdated', response.data);\n\n              this.onClickCancel();\n            }\n          })\n          .catch((e) => {\n            this.notTheApplicant = true;\n          })\n          .finally(() => {\n            self.isSaving = false;\n          })\n      }\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.table {\n  tr {\n    td:first-child {\n      width: 280px;\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCancelProposal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCancelProposal.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalCancelProposal.vue?vue&type=template&id=4bf50274&scoped=true\"\nimport script from \"./ModalCancelProposal.vue?vue&type=script&lang=js\"\nexport * from \"./ModalCancelProposal.vue?vue&type=script&lang=js\"\nimport style0 from \"./ModalCancelProposal.vue?vue&type=style&index=0&id=4bf50274&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4bf50274\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div class=\"my-5\">\n    <modal-authentication\n      v-if=\"showModalAuthentication\"\n      :showModal=\"showModalAuthentication\"\n      :onClickCancel=\"hideModal\"\n      :channelId=\"channelId\"\n      :modalTitle=\"modalTitleAuthentication\"\n    />\n\n    <ModalChangeRequestProposal\n      v-if=\"showChangeRequest\"\n      :showModal=\"showChangeRequest\"\n      :onClickCancel=\"hideModal\"\n      :proposal=\"mProposal\"\n      :previewMode=\"isEmployee\"\n      @proposalUpdated=\"proposalUpdated\"\n    />\n\n    <ModalCancelProposal\n      v-if=\"showReject\"\n      :showModal=\"showReject\"\n      :onClickCancel=\"hideModal\"\n      :proposal=\"mProposal\"\n      :previewMode=\"isEmployee\"\n      @proposalCancelled=\"proposalCancelled\"\n    />\n\n    <div>\n      <TemplateParser v-if=\"proposal\" />\n\n      <section\n        class=\"section section-wrapper section-action-wrapper\"\n        v-if=\"!hideProposalActions\"\n      >\n        <div class=\"container\">\n          <div class=\"notification is-info is-light\">\n            <div class=\"columns is-multiline\">\n              <div class=\"column\">\n                <div class=\"notification-info notification has-background-info p-4 has-text-white\">\n                  <div class=\"title is-3 has-text-white\">{{ $t('Components.Proposals.Proposal.Title_InfoForProposalCustomer', proposalLanguage) }}</div>\n                  <div class=\"content\">\n                    <p>\n                      {{ $t('Components.Proposals.Proposal.Text_InfoForProposalCustomer', proposalLanguage) }}\n                    </p>\n                  </div>\n                </div>\n              </div>\n              <div class=\"column\">\n                <div class=\"notification-info notification has-background-info-light p-4\">\n                  <div\n                    v-if=\"profile\"\n                    class=\"proposal-actions\"\n                  >\n                    <div class=\"title is-3\">\n                      {{ $t('Components.Proposals.Proposal.Title_CustomerSignedIn', proposalLanguage, {\n                        name: profile.FirstName\n                      }) }}</div>\n                    <div class=\"buttons is-left mb-0\">\n                      <a\n                        @click=\"setShowChangeRequest\"\n                        class=\"button is-large is-outlined is-flex-grow-1\"\n                        :class=\"{ 'is-loading': isAcceptingProposal }\"\n                      >\n                        <span class=\"icon has-text-primary-dark\">\n                          <font-awesome-icon :icon=\"['fas', 'comment-lines']\" />\n                        </span>\n                        <span>{{ $t('Components.Proposals.Proposal.Link_RequestChanges', proposalLanguage) }}</span>\n                      </a>\n                      <a\n                        @click=\"setShowReject\"\n                        class=\"button is-large is-outlined is-flex-grow-1\"\n                      >\n                        <span class=\"icon has-text-danger\">\n                          <font-awesome-icon :icon=\"['fas', 'times']\" />\n                        </span>\n                        <span>{{ $t('Components.Proposals.Proposal.Link_RejectProposal', proposalLanguage) }}</span>\n                      </a>\n                      <a\n                        @click=\"acceptProposal\"\n                        class=\"button is-large is-primary is-flex-grow-3\"\n                        :class=\"[\n                        { 'is-disabled': isAcceptingProposal },\n                        { 'is-loading': isAcceptingProposal },\n                      ]\"\n                      >\n                        {{ $t('Components.Proposals.Proposal.Button_Accept', proposalLanguage) }}\n                      </a>\n                    </div>\n                  </div>\n\n                  <div v-if=\"!profile\">\n                    <div class=\"title is-3\">\n                      {{ $t('Components.Proposals.Proposal.Title_CustomerSignIn', proposalLanguage) }}</div>\n                    <div class=\"content\">\n                      <p>\n                        {{ $t('Components.Proposals.Proposal.Text_CustomerSignIn', proposalLanguage) }}\n                      </p>\n                      <p>\n                        <a\n                          @click=\"setShowModalAuthentication()\"\n                          class=\"button is-large is-primary mb-0\"\n                          :class=\"[\n                        { 'is-disabled': isAcceptingProposal },\n                        { 'is-loading': isAcceptingProposal },\n                      ]\"\n                        >\n                          {{ $t('Components.Proposals.Proposal.Button_CustomerSignIn', proposalLanguage) }}\n                        </a>\n                      </p>\n                    </div>\n                  </div>\n                </div>\n              </div>\n            </div>\n          </div>\n        </div>\n      </section>\n\n      <section\n        v-if=\"mProposal && mProposal.Status === 'RequiresChanges'\"\n        class=\"section section-action-wrapper\"\n      >\n        <div class=\"container mb-4\">\n          <Message\n            class=\"message-pending is-warning\"\n            :message=\"\n            $t(\n              'Components.Proposals.Proposal.Message_PendingRequest',\n              proposalLanguage\n            )\n          \"\n          />\n        </div>\n      </section>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations, mapGetters } from 'vuex'\nimport proposalProvider from '@/providers/proposal'\nimport { EventBus } from '@/eventbus/event-bus'\nimport { cleanSource } from '@/utils/objectHelper'\n\nimport CommentItem from '@/components/Comments/CommentItem.vue'\nimport Login from '@/components/AccountControls/Login.vue'\nimport Message from '@/components/UI/Message.vue'\nimport ModalChangeRequestProposal from '@/components/Proposals/ModalChangeRequestProposal.vue'\nimport ModalCancelProposal from '@/components/Proposals/ModalCancelProposal.vue'\nimport TemplateParser from '@/components/Proposals/Template/TemplateParser.vue'\nimport ModalAuthentication from '../../AccountControls/ModalAuthentication.vue'\n\nexport default {\n  name: 'ProposalDetail',\n\n  props: {\n    isEmployee: {\n      type: Boolean,\n      default: false,\n    },\n    proposalKey: {\n      type: String,\n      required: true,\n    },\n    language: {\n      type: String,\n      default: 'en',\n    },\n    languageId: {\n      type: Number,\n      default: 65,\n    },\n    previewedOnPage: {\n      type: Boolean,\n      default: true\n    },\n  },\n\n  components: {\n    TemplateParser,\n    CommentItem,\n    ModalChangeRequestProposal,\n    ModalCancelProposal,\n    Message,\n    Login,\n    ModalAuthentication,\n  },\n\n  data() {\n    return {\n      isAcceptingProposal: false,\n      isLoading: true,\n      mProposal: null,\n      host: null,\n      hostTexts: [],\n      hostTextAnimationInterval: 8000,\n      hostTextAnimator: null,\n      hostTextLoopAnimation: false,\n      hostTextDisplayIndex: 0,\n      isSaving: false,\n      reservationId: 0,\n      myDashboardUrl: this.$router.resolve({ name: 'my-account-dashboard' }).href,\n      showLogin: false,\n      showChangeRequest: false,\n      showReject: false,\n      showReservationMade: false,\n      showModalAuthentication: false,\n      modalAuthenticationTitle: ''\n    }\n  },\n\n  computed: {\n    ...mapState('profileStore', ['profile']),\n    ...mapState('proposalStore', ['proposal']),\n    ...mapGetters('proposalStore', ['channelId']),\n\n    meetingtypeId() {\n      return this.mProposal.Reservation?.MeetingtypeId || 1\n    },\n\n    location() {\n      if (this.mProposal && this.mProposal.Location) {\n        return this.mProposal.Location\n      }\n      return null\n    },\n\n    hideProposalActions() {\n      if (this.mProposal) {\n        return this.mProposal.Status !== 'AwaitingApprovalCustomer' || this.mProposal.PublicationStatus === 'ProposalExpired' || this.mProposal.IsSecondOption\n      }\n      return true;\n    },\n\n    reservation() {\n      let reservation = null\n\n      if (this.proposal && this.proposal.Reservation) {\n        reservation = this.proposal.Reservation\n      }\n\n      return reservation\n    },\n\n    proposalLanguage() {\n      return this.proposal?.Language || this.$i18n.locale\n    },\n\n    modalTitleAuthentication() {\n      return this.$t('Components.Proposals.Proposal.Modal_Title_Authentication', this.proposalLanguage)\n    }\n  },\n\n  provide() {\n    return {\n      localeOverride: this.proposalLanguage\n    }\n  },\n\n  created() {\n    if (this.proposal && this.proposal.Id > 0) {\n      this.mProposal = cleanSource(this.proposal);\n    }\n    else {\n      this.getProposal();\n    }\n  },\n\n  beforeDestroy() {\n    this.setProposal(null);\n  },\n\n  methods: {\n    ...mapMutations('proposalStore', ['setProposal']),\n\n    columnCssClass(options) {\n      return {\n        'is-half is-one-third-desktop': options.length >= 3,\n        'is-half': options.length < 3,\n      }\n    },\n\n    /**\n     * Get mProposal data\n     */\n    getProposal() {\n      this.isLoading = true\n\n      proposalProvider.methods\n        .getProposalByKey(this.proposalKey)\n        .then((response) => {\n          if (response.status === 200) {\n            let proposal = cleanSource(response.data)\n            this.setProposal(proposal);\n            this.mProposal = cleanSource(proposal);\n          }\n        })\n        .catch((err) => { })\n        .finally(() => {\n          this.isLoading = false\n        })\n    },\n\n    getSpaceUsps(space) {\n      if (!space.Features.length) {\n        return []\n      }\n\n      let output =\n        space.Features.filter((t) => t.Language === this.language) ||\n        space.Features.filter((t) => t.Language === 'en')\n\n      return Array.from(output, (f) => f.Body)\n    },\n\n    /**\n     * Get random images\n     * @returns {Array} images\n     */\n    getRandomImages(arr, n) {\n      let result = new Array(n)\n      let len = arr.length\n      let taken = new Array(len)\n      while (n--) {\n        var x = Math.floor(Math.random() * len)\n        result[n] = arr[x in taken ? taken[x] : x]\n        taken[x] = --len in taken ? taken[len] : len\n      }\n      return result\n    },\n\n    async acceptProposal() {\n      if (!this.isEmployee) {\n        if (!this.isAcceptingProposal) {\n          this.isAcceptingProposal = true\n\n          await proposalProvider.methods\n            .acceptProposal(this.proposalKey)\n            .then((response) => {\n              if (response.status === 200) {\n                EventBus.$emit('proposalUpdated', response.data);\n                this.mProposal.Status = 'Final';\n                this.showReservationMade = true;\n                this.reservationId = response.data.Id;\n              }\n            })\n            .finally(() => {\n              this.isAcceptingProposal = false\n            })\n        }\n      }\n    },\n\n    /**\n     * Process updated mProposal\n     */\n    proposalUpdated(mProposal) {\n      this.mProposal = mProposal\n      //this.pageScrollTo('proposalDetailTop')\n      if (mProposal.Status === 'ProposalChangeRequest') {\n        EventBus.$emit('showToast', {\n          type: 'info',\n          message: this.$t(\n            'Views.Proposals.ProposalDetail.Toast_ProposalChangeRequest',\n            this.proposalLanguage\n          ),\n        })\n      }\n    },\n\n    /**\n     * mProposal cancelled toast\n     */\n    proposalCancelled() {\n      EventBus.$emit('showToast', {\n        type: 'info',\n        message: this.$t(\n          'Views.Proposals.ProposalDetail.Toast_ProposalCancelled',\n          this.proposalLanguage\n        ),\n      })\n      this.$router.push({ name: 'proposals' }).catch()\n    },\n\n    setShowLogin() {\n      this.showLogin = true\n    },\n\n    /**\n     * Show change request modal\n     */\n    setShowChangeRequest() {\n      this.showChangeRequest = true\n    },\n\n    /**\n     * Show reject modal\n     */\n    setShowReject() {\n      this.showReject = true\n    },\n\n    setShowModalAuthentication() {\n      this.showModalAuthentication = true\n    },\n\n    /**\n     * Hide modal\n     */\n    hideModal() {\n      this.showChangeRequest = false\n      this.showReject = false\n      this.showModalAuthentication = false\n    },\n  },\n}\n</script>\n\n<style lang=\"sass\" scoped>\n.icon-quote-up\n  position: absolute\n  z-index: 0\n  top: -10px\n  right: 4%\n  opacity: .3\n.icon-quote-down\n  position: absolute\n  z-index: 0\n  top: -10px\n  left: 4%\n  opacity: .3\n  transform: rotate(180deg)\n\n.icon-quote-message\n  position: absolute\n  z-index: 0\n  top: -40px\n  left: -7%\n  opacity: .3\n  transform: rotate(180deg)\n\n.message-pending\n  position: relative\n  z-index: 1\n\n.section-action-wrapper\n  position: relative\n  .container\n    max-width: 1500px !important\n\n.invoice-info\n  margin-top: $gap * 2\n\n.notification-info\n  height: 100%\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalDetail.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProposalDetail.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProposalDetail.vue?vue&type=template&id=5856106e&scoped=true\"\nimport script from \"./ProposalDetail.vue?vue&type=script&lang=js\"\nexport * from \"./ProposalDetail.vue?vue&type=script&lang=js\"\nimport style0 from \"./ProposalDetail.vue?vue&type=style&index=0&id=5856106e&prod&lang=sass&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5856106e\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showEditInvoiceAddress)?_c('modal-edit-invoice-address',{attrs:{\"showModal\":_vm.showEditInvoiceAddress,\"onClickCancel\":_vm.hideModal}}):_vm._e(),_c('ui-section-header',{attrs:{\"showEdit\":!_vm.isLocked,\"editFunction\":_vm.setShowEditInvoiceAddress,\"editLabel\":_vm.$t('Components.Reservation.InvoiceAddress.Link_Edit')},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.InvoiceAddress.Section_Title')))]},proxy:true}])}),_c('table',{staticClass:\"table is-fullwidth\"},[_c('tbody',[_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Attn'))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.InvoiceAddress.SendTo))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ReservationDetail.Table_InvoiceEmail' ))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.InvoiceAddress.Email))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_PONumber'))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.InvoiceAddress.PoNumber))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Address'))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.InvoiceAddress.Address))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_PostalCode'))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.InvoiceAddress.Postalcode))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_City'))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.InvoiceAddress.City))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Country'))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.InvoiceAddress.Country))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Table_Phone'))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.InvoiceAddress.PhoneNumber))])])])])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservation.ModalEditInvoiceAddress.Header_ModalHeader'),\"isSaving\":_vm.isSaving,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.saveReservation,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.mReservation.CompanyId > 0)?_c('div',{staticClass:\"tabs is-boxed\"},[_c('ul',[_c('li',{class:{ 'is-active': _vm.showInvoiceData }},[_c('a',{on:{\"click\":function($event){return _vm.setVisibleItem('invoice')}}},[_vm._v(\"Invoice data\")])]),_c('li',{class:{ 'is-active': _vm.showAddresses }},[_c('a',{on:{\"click\":function($event){return _vm.setVisibleItem('address')}}},[_vm._v(\"Addresses\")])])])]):_vm._e(),(_vm.showInvoiceData)?_c('div',[_c('table',{staticClass:\"table is-borderless is-fullwidth\"},[_c('tbody',[_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_SendTo' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReservation.InvoiceAddress.SendTo),expression:\"mReservation.InvoiceAddress.SendTo\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReservation.InvoiceAddress.SendTo)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mReservation.InvoiceAddress, \"SendTo\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_Email' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReservation.InvoiceAddress.Email),expression:\"mReservation.InvoiceAddress.Email\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReservation.InvoiceAddress.Email)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mReservation.InvoiceAddress, \"Email\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_PoNumber' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReservation.InvoiceAddress.PoNumber),expression:\"mReservation.InvoiceAddress.PoNumber\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReservation.InvoiceAddress.PoNumber)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mReservation.InvoiceAddress, \"PoNumber\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_Address' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReservation.InvoiceAddress.Address),expression:\"mReservation.InvoiceAddress.Address\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReservation.InvoiceAddress.Address)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mReservation.InvoiceAddress, \"Address\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_PostalCode' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReservation.InvoiceAddress.Postalcode),expression:\"mReservation.InvoiceAddress.Postalcode\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReservation.InvoiceAddress.Postalcode)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mReservation.InvoiceAddress, \"Postalcode\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_City' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReservation.InvoiceAddress.City),expression:\"mReservation.InvoiceAddress.City\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReservation.InvoiceAddress.City)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mReservation.InvoiceAddress, \"City\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_Country' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReservation.InvoiceAddress.Country),expression:\"mReservation.InvoiceAddress.Country\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReservation.InvoiceAddress.Country)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mReservation.InvoiceAddress, \"Country\", $event.target.value)}}})])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_Phone' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReservation.InvoiceAddress.PhoneNumber),expression:\"mReservation.InvoiceAddress.PhoneNumber\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReservation.InvoiceAddress.PhoneNumber)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.mReservation.InvoiceAddress, \"PhoneNumber\", $event.target.value)}}})])]),(_vm.mReservation.ReservationSet.length > 0)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_ChangeAllInSet' ))+\" \")]),_c('td',[_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:{ 'is-active': _vm.changeAllInSet === false }},[_c('a',{on:{\"click\":function($event){_vm.changeAllInSet = false}}},[_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_No' )))])])]),_c('li',{class:{ 'is-active': _vm.changeAllInSet === true }},[_c('a',{on:{\"click\":function($event){_vm.changeAllInSet = true}}},[_c('span',[_vm._v(_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_Yes' )))])])])])])])]):_vm._e()])])]):_vm._e(),(_vm.showAddresses)?_c('div',_vm._l((_vm.company.Addresses),function(address,index){return _c('div',{key:address.Id},[(index !== 0)?_c('hr'):_vm._e(),_c('CompanyAddress',{attrs:{\"address\":address,\"showSelectButton\":true},on:{\"addressSelected\":_vm.setInvoiceAddress}})],1)}),0):_vm._e()]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"\n      $t('Components.Reservation.ModalEditInvoiceAddress.Header_ModalHeader')\n    \"\n    :isSaving=\"isSaving\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"saveReservation\"\n    :showModal=\"showModal\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div v-if=\"mReservation.CompanyId > 0\" class=\"tabs is-boxed\">\n        <ul>\n          <li :class=\"{ 'is-active': showInvoiceData }\">\n            <a @click=\"setVisibleItem('invoice')\">Invoice data</a>\n          </li>\n          <li :class=\"{ 'is-active': showAddresses }\">\n            <a @click=\"setVisibleItem('address')\">Addresses</a>\n          </li>\n        </ul>\n      </div>\n\n      <div v-if=\"showInvoiceData\">\n        <table class=\"table is-borderless is-fullwidth\">\n          <tbody>\n            <tr>\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_SendTo'\n                  )\n                }}\n              </td>\n              <td>\n                <input\n                  type=\"text\"\n                  v-model=\"mReservation.InvoiceAddress.SendTo\"\n                  class=\"input\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_Email'\n                  )\n                }}\n              </td>\n              <td>\n                <input\n                  type=\"text\"\n                  v-model=\"mReservation.InvoiceAddress.Email\"\n                  class=\"input\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_PoNumber'\n                  )\n                }}\n              </td>\n              <td>\n                <input\n                  type=\"text\"\n                  v-model=\"mReservation.InvoiceAddress.PoNumber\"\n                  class=\"input\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_Address'\n                  )\n                }}\n              </td>\n              <td>\n                <input\n                  type=\"text\"\n                  v-model=\"mReservation.InvoiceAddress.Address\"\n                  class=\"input\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_PostalCode'\n                  )\n                }}\n              </td>\n              <td>\n                <input\n                  type=\"text\"\n                  v-model=\"mReservation.InvoiceAddress.Postalcode\"\n                  class=\"input\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_City'\n                  )\n                }}\n              </td>\n              <td>\n                <input\n                  type=\"text\"\n                  v-model=\"mReservation.InvoiceAddress.City\"\n                  class=\"input\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_Country'\n                  )\n                }}\n              </td>\n              <td>\n                <input\n                  type=\"text\"\n                  v-model=\"mReservation.InvoiceAddress.Country\"\n                  class=\"input\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_Phone'\n                  )\n                }}\n              </td>\n              <td>\n                <input\n                  type=\"text\"\n                  v-model=\"mReservation.InvoiceAddress.PhoneNumber\"\n                  class=\"input\"\n                />\n              </td>\n            </tr>\n            <tr v-if=\"mReservation.ReservationSet.length > 0\">\n              <td>\n                {{\n                  $t(\n                    'Components.Reservation.ModalEditInvoiceAddress.Label_ChangeAllInSet'\n                  )\n                }}\n              </td>\n              <td>\n                <div class=\"tabs is-toggle is-small\">\n                  <ul>\n                    <li :class=\"{ 'is-active': changeAllInSet === false }\">\n                      <a @click=\"changeAllInSet = false\">\n                        <span>{{\n                          $t(\n                            'Components.Reservation.ModalEditInvoiceAddress.Label_No'\n                          )\n                        }}</span>\n                      </a>\n                    </li>\n                    <li :class=\"{ 'is-active': changeAllInSet === true }\">\n                      <a @click=\"changeAllInSet = true\">\n                        <span>{{\n                          $t(\n                            'Components.Reservation.ModalEditInvoiceAddress.Label_Yes'\n                          )\n                        }}</span>\n                      </a>\n                    </li>\n                  </ul>\n                </div>\n              </td>\n            </tr>\n          </tbody>\n        </table>\n      </div>\n      <div v-if=\"showAddresses\">\n        <div v-for=\"(address, index) in company.Addresses\" :key=\"address.Id\">\n          <hr v-if=\"index !== 0\"/>\n          <CompanyAddress\n            @addressSelected=\"setInvoiceAddress\"\n            :address=\"address\"\n            :showSelectButton=\"true\"\n          />\n        </div>\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { mapMutations, mapState } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport companyProvider from '@/providers/company'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  components: {\n    CompanyAddress: () => import('@/components/Companies/CompanyAddress'),\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n  },\n\n  data() {\n    return {\n      changeAllInSet: false,\n      company: null,\n      isSaving: false,\n      isSavingError: false,\n      formFields: [],\n      mReservation: null,\n\n      showInvoiceData: true,\n      showAddresses: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  created() {\n    this.mReservation = JSON.parse(JSON.stringify(this.reservation))\n\n    if (this.reservation && this.reservation.CompanyId > 0) {\n      this.getCompany()\n    }\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    getCompany() {\n      companyProvider.methods\n        .getCompanyById(this.reservation.CompanyId)\n        .then((response) => {\n          if (response.status === 200) {\n            this.company = response.data\n          }\n        })\n        .catch((err) => {})\n    },\n\n    setInvoiceAddress(address) {\n      this.mReservation.InvoiceAddress.SendTo = address.ContactName\n      this.mReservation.InvoiceAddress.Email = address.ContactEmail\n      this.mReservation.InvoiceAddress.PhoneNumber = address.ContactPhone\n      this.mReservation.InvoiceAddress.PoNumber = ''\n      this.mReservation.InvoiceAddress.Address = address.Address\n      this.mReservation.InvoiceAddress.Postalcode = address.PostalCode\n      this.mReservation.InvoiceAddress.City = address.City\n      this.mReservation.InvoiceAddress.Country = address.Country\n\n      this.setVisibleItem('invoice')\n    },\n\n    saveReservation() {\n      let self = this\n      // Do saving then close modal\n      if (!self.isSaving) {\n        this.isSaving = true\n\n        reservationProvider.methods\n          .saveReservationInvoiceAddress(\n            self.mReservation.Key,\n            self.mReservation.InvoiceAddress,\n            self.changeAllInSet\n          )\n          .then((response) => {\n            if (response.status === 200) {\n              // Update reservation store\n              self.setReservation(response.data)\n\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservation.ModalEditInvoiceAddress.Toast_AddressUpdated'\n                ),\n              })\n\n              this.onClickCancel()\n            }\n          })\n          .catch((error) => {\n            self.isSavingError = true\n          })\n          .finally(() => {\n            self.isSaving = false\n          })\n      }\n    },\n\n    setVisibleItem(item) {\n      this.showInvoiceData = item === 'invoice'\n      this.showAddresses = item === 'address'\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalEditInvoiceAddress.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalEditInvoiceAddress.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalEditInvoiceAddress.vue?vue&type=template&id=41334e87\"\nimport script from \"./ModalEditInvoiceAddress.vue?vue&type=script&lang=js\"\nexport * from \"./ModalEditInvoiceAddress.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div>\n    <modal-edit-invoice-address\n      v-if=\"showEditInvoiceAddress\"\n      :showModal=\"showEditInvoiceAddress\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ui-section-header\n      :showEdit=\"!isLocked\"\n      :editFunction=\"setShowEditInvoiceAddress\"\n      :editLabel=\"$t('Components.Reservation.InvoiceAddress.Link_Edit')\"\n    >\n      <template v-slot:title>{{\n        $t('Components.Reservation.InvoiceAddress.Section_Title')\n      }}</template>\n    </ui-section-header>\n\n    <table class=\"table is-fullwidth\">\n      <tbody>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.ReservationDetail.Table_Attn') }}\n          </td>\n          <td>\n            <span>{{ reservation.InvoiceAddress.SendTo }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{\n              $t(\n                'Components.Reservation.ReservationDetail.Table_InvoiceEmail'\n              )\n            }}\n          </td>\n          <td>\n            <span>{{ reservation.InvoiceAddress.Email }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{\n              $t('Components.Reservation.ReservationDetail.Table_PONumber')\n            }}\n          </td>\n          <td>\n            <span>{{ reservation.InvoiceAddress.PoNumber }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.ReservationDetail.Table_Address') }}\n          </td>\n          <td>\n            <span>{{ reservation.InvoiceAddress.Address }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{\n              $t('Components.Reservation.ReservationDetail.Table_PostalCode')\n            }}\n          </td>\n          <td>\n            <span>{{ reservation.InvoiceAddress.Postalcode }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.ReservationDetail.Table_City') }}\n          </td>\n          <td>\n            <span>{{ reservation.InvoiceAddress.City }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.ReservationDetail.Table_Country') }}\n          </td>\n          <td>\n            <span>{{ reservation.InvoiceAddress.Country }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.ReservationDetail.Table_Phone') }}\n          </td>\n          <td>\n            <span>{{ reservation.InvoiceAddress.PhoneNumber }}</span>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script>\nimport { mapMutations, mapState } from 'vuex'\n\nimport ModalEditInvoiceAddress from '@/components/Reservations/ModalEditInvoiceAddress'\n\nexport default {\n  components: {\n    'modal-edit-invoice-address': ModalEditInvoiceAddress,\n  },\n\n  props: {\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: true,\n      type: Boolean,\n    },\n  },\n\n  data() {\n    return {\n      showEditInvoiceAddress: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  methods: {\n    setShowEditInvoiceAddress() {\n      this.showEditInvoiceAddress = true\n    },\n\n    hideModal() {\n      this.showEditInvoiceAddress = false\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationInvoiceAddress.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationInvoiceAddress.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationInvoiceAddress.vue?vue&type=template&id=386b2b4a\"\nimport script from \"./ReservationInvoiceAddress.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationInvoiceAddress.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"field\",class:{ 'is-horizontal': _vm.labelForInput, 'is-vertical': !_vm.labelForInput }},[_c('div',{staticClass:\"field-label is-normal has-text-left\"},[_c('label',{ref:\"label\",staticClass:\"label\"},[_vm._v(\" \"+_vm._s(_vm.label)+\" \"),(_vm.required)?_c('span',{staticClass:\"has-text-danger\"},[_vm._v(\"*\")]):_vm._e()])]),_c('div',{staticClass:\"field-body\"},[_c('div',{staticClass:\"field\",class:_vm.fieldClasses},[_vm._t(\"fields\")],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div\n    class=\"field\"\n    :class=\"{ 'is-horizontal': labelForInput, 'is-vertical': !labelForInput }\"\n  >\n    <div class=\"field-label is-normal has-text-left\">\n      <label\n        ref=\"label\"\n        class=\"label\"\n      >\n        {{ label }}\n        <span\n          class=\"has-text-danger\"\n          v-if=\"required\"\n        >*</span>\n      </label>\n    </div>\n    <div class=\"field-body\">\n      <div\n        class=\"field\"\n        :class=\"fieldClasses\"\n      >\n        <slot name=\"fields\"></slot>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nexport default {\n  name: 'base-field',\n\n  props: {\n    label: {\n      type: String,\n      default: ''\n    },\n\n    required: {\n      type: Boolean,\n      default: true\n    },\n\n    labelForInput: {\n      type: Boolean,\n      default: true\n    },\n\n    fieldClasses: {\n      type: String,\n      default: ''\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.flex {\n  display: flex;\n  align-items: center;\n}\n.is-borderless {\n  padding-left: 0;\n  border-color: transparent;\n  &:hover {\n    border-color: transparent;\n  }\n}\n\n.field.is-vertical {\n  .label {\n    margin-bottom: 0.5em;\n  }\n}\n$threshold: $desktop - ($gap * 2);\n@media screen and (min-width: $threshold) {\n  .field.is-horizontal {\n    display: flex;\n    align-items: center;\n\n    .field-label {\n      padding-top: unset;\n      flex-basis: 150px;\n      flex-grow: 0;\n    }\n  }\n}\n@media screen and (max-width: $threshold) {\n  .field.is-horizontal {\n    display: block;\n\n    .field-label {\n      flex-basis: unset;\n      flex-grow: unset;\n      padding-top: 0.375em;\n      margin-bottom: 0.5rem;\n    }\n  }\n}\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseFieldTemplate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseFieldTemplate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BaseFieldTemplate.vue?vue&type=template&id=331e34b6&scoped=true\"\nimport script from \"./BaseFieldTemplate.vue?vue&type=script&lang=js\"\nexport * from \"./BaseFieldTemplate.vue?vue&type=script&lang=js\"\nimport style0 from \"./BaseFieldTemplate.vue?vue&type=style&index=0&id=331e34b6&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"331e34b6\",\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar aSet = require('../internals/a-set');\nvar has = require('../internals/set-helpers').has;\nvar size = require('../internals/set-size');\nvar getSetRecord = require('../internals/get-set-record');\nvar iterateSet = require('../internals/set-iterate');\nvar iterateSimple = require('../internals/iterate-simple');\nvar iteratorClose = require('../internals/iterator-close');\n\n// `Set.prototype.isDisjointFrom` method\n// https://tc39.es/ecma262/#sec-set.prototype.isdisjointfrom\nmodule.exports = function isDisjointFrom(other) {\n  var O = aSet(this);\n  var otherRec = getSetRecord(other);\n  if (size(O) <= otherRec.size) return iterateSet(O, function (e) {\n    if (otherRec.includes(e)) return false;\n  }, true) !== false;\n  var iterator = otherRec.getIterator();\n  return iterateSimple(iterator, function (e) {\n    if (has(O, e)) return iteratorClose(iterator, 'normal', false);\n  }) !== false;\n};\n","import axios from 'axios'\nimport store from '../store'\nimport { getCookie } from '@/utils/browserStorage'\n\n/**\n * Passkey (WebAuthn) provider. Authentication ceremonies are pre-auth (apiToken only); registration\n * and management require the profileToken of the logged-in user. The RP id / origin are validated\n * server-side from the channel, so we never send them here.\n */\nexport default {\n  methods: {\n    /**\n     * List the logged-in profile's passkeys.\n     */\n    async getPasskeys() {\n      return axios.get(`${process.env.VUE_APP_API_BASE_URL}/api/v2/passkey`, {\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: process.env.VUE_APP_API_KEY,\n          profileToken: store.getters['profileStore/getProfileToken']\n        }\n      })\n    },\n\n    /**\n     * Begin registering a passkey for the logged-in profile.\n     * @param {Number} channelId\n     */\n    async getRegistrationOptions(channelId = 0) {\n      return axios.post(`${process.env.VUE_APP_API_BASE_URL}/api/v2/passkey/register/options`, JSON.stringify({ ChannelId: channelId }), {\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: process.env.VUE_APP_API_KEY,\n          profileToken: store.getters['profileStore/getProfileToken']\n        }\n      })\n    },\n\n    /**\n     * Complete registration with the authenticator's attestation.\n     * @param {String} ceremonyId\n     * @param {Object} attestation - the WebAuthn attestation (base64url-encoded fields)\n     * @param {String} name - friendly device name\n     */\n    async registerPasskey(ceremonyId, attestation, name = '') {\n      return axios.post(`${process.env.VUE_APP_API_BASE_URL}/api/v2/passkey/register`, JSON.stringify({ CeremonyId: ceremonyId, Attestation: attestation, Name: name }), {\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: process.env.VUE_APP_API_KEY,\n          profileToken: store.getters['profileStore/getProfileToken']\n        }\n      })\n    },\n\n    /**\n     * Begin a passkey login ceremony (pre-auth). Used by the login screen, not account management.\n     * @param {Number} channelId\n     */\n    async getAuthenticationOptions(channelId = 0) {\n      return axios.post(`${process.env.VUE_APP_API_BASE_URL}/api/v2/passkey/authenticate/options`, JSON.stringify({ ChannelId: channelId }), {\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: process.env.VUE_APP_API_KEY\n        }\n      })\n    },\n\n    /**\n     * Complete a passkey login ceremony (pre-auth). Returns a LoginResult with a ProfileToken.\n     * @param {String} ceremonyId\n     * @param {Object} assertion - the WebAuthn assertion (base64url-encoded fields)\n     * @param {Number} channelId\n     */\n    async authenticatePasskey(ceremonyId, assertion, channelId = 0) {\n      return axios.post(`${process.env.VUE_APP_API_BASE_URL}/api/v2/passkey/authenticate`, JSON.stringify({ CeremonyId: ceremonyId, Assertion: assertion, ChannelId: channelId, MachineToken: getCookie('mt') }), {\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: process.env.VUE_APP_API_KEY\n        }\n      })\n    },\n\n    /**\n     * Rename one of the logged-in profile's passkeys.\n     * @param {Number} id\n     * @param {String} name\n     */\n    async renamePasskey(id, name) {\n      return axios.put(`${process.env.VUE_APP_API_BASE_URL}/api/v2/passkey/${id}`, JSON.stringify({ Name: name }), {\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: process.env.VUE_APP_API_KEY,\n          profileToken: store.getters['profileStore/getProfileToken']\n        }\n      })\n    },\n\n    /**\n     * Revoke (soft-delete) one of the logged-in profile's passkeys.\n     * @param {Number} id\n     */\n    async revokePasskey(id) {\n      return axios.delete(`${process.env.VUE_APP_API_BASE_URL}/api/v2/passkey/${id}`, {\n        headers: {\n          'Content-type': 'application/json',\n          apiToken: process.env.VUE_APP_API_KEY,\n          profileToken: store.getters['profileStore/getProfileToken']\n        }\n      })\n    }\n  }\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationMeetingspaces.vue?vue&type=style&index=0&id=8fe4a4c8&prod&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationProposal.vue?vue&type=style&index=0&id=16a50090&prod&lang=sass&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalEditContact.vue?vue&type=style&index=0&id=0e076ac7&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationNotes.Subtitle_Notes')))]},proxy:true}],null,false,2935931592)}),_c('div',{staticClass:\"columns\"},[_c('div',{staticClass:\"column\"},[_c('p',{staticClass:\"subtitle\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationNotes.Header_NotesOfReservation')))]),_c('notes',{key:\"bookingNotes\",attrs:{\"typeId\":'Reservation',\"itemId\":_vm.reservation.Id,\"linkTypeId\":'Reservation',\"linkItemId\":_vm.reservation.Id,\"locationId\":_vm.reservation.LocationId},on:{\"noteCreated\":_vm.noteCreated,\"noteDeleted\":_vm.noteDeleted,\"noteEdited\":_vm.noteEdited}})],1),(_vm.reservation.CompanyId > 0)?_c('div',{staticClass:\"column\"},[_c('p',{staticClass:\"subtitle\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationNotes.Header_NotesOfCompany')))]),_c('notes',{key:\"companyNotes\",attrs:{\"typeId\":'Company',\"itemId\":_vm.reservation.CompanyId,\"linkTypeId\":'Company',\"linkItemId\":_vm.reservation.CompanyId,\"locationId\":_vm.reservation.LocationId}})],1):_vm._e()])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <ui-section-header>\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationNotes.Subtitle_Notes')\n      }}</template>\n    </ui-section-header>\n\n    <div class=\"columns\">\n      <div class=\"column\">\n        <p class=\"subtitle\">{{ $t('Components.Reservation.ReservationNotes.Header_NotesOfReservation')}}</p>\n        <notes\n          key=\"bookingNotes\"\n          :typeId=\"'Reservation'\"\n          :itemId=\"reservation.Id\"\n          :linkTypeId=\"'Reservation'\"\n          :linkItemId=\"reservation.Id\"\n          :locationId=\"reservation.LocationId\"\n          @noteCreated=\"noteCreated\"\n          @noteDeleted=\"noteDeleted\"\n          @noteEdited=\"noteEdited\"\n        />\n      </div>\n      <div v-if=\"reservation.CompanyId > 0\" class=\"column\">\n        <p class=\"subtitle\">{{ $t('Components.Reservation.ReservationNotes.Header_NotesOfCompany') }}</p>\n        <notes\n          key=\"companyNotes\"\n          :typeId=\"'Company'\"\n          :itemId=\"reservation.CompanyId\"\n          :linkTypeId=\"'Company'\"\n          :linkItemId=\"reservation.CompanyId\"\n          :locationId=\"reservation.LocationId\"\n        />\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\nconst Notes = () => import('@/components/Notes/Notes')\n\nexport default {\n  name: 'reservation-notes',\n\n  components: {\n    notes: Notes,\n  },\n\n  data() {\n    return {}\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  methods: {\n    noteCreated(newNote) {\n      this.reservation.Notes.push(newNote)\n    },\n\n    noteDeleted(deletedNote) {\n      let noteIndex = this.reservation.Notes.findIndex(\n        (n) => n.Id === deletedNote.Id\n      )\n      if (noteIndex > -1) {\n        this.reservation.Notes.splice(noteIndex, 1)\n      }\n    },\n\n    noteEdited(editedNote) {\n      let self = this\n\n      let noteIndex = self.reservation.Notes.findIndex(\n        (n) => n.Id === editedNote.Id\n      )\n      if (noteIndex > -1) {\n        self.reservation.Notes.splice(noteIndex, 1, editedNote)\n      }\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationNotes.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationNotes.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationNotes.vue?vue&type=template&id=413022cd\"\nimport script from \"./ReservationNotes.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationNotes.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render, staticRenderFns\nimport script from \"./BaseInputFieldController.vue?vue&type=script&lang=js\"\nexport * from \"./BaseInputFieldController.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<script>\nimport { v4 as uuidv4 } from 'uuid'\n\nexport default {\n  props: {\n    placeholder: {\n      type: String,\n      default: ''\n    },\n    label: {\n      type: String,\n      default: ''\n    },\n    error: {\n      type: [String, Array],\n      default: ''\n    },\n    name: {\n      type: String,\n      default: ''\n    },\n    fieldType: {\n      type: String,\n      default: 'text'\n    },\n    labelForInput: {\n      type: Boolean,\n      default: true\n    },\n    maxLength: {\n      type: Number,\n      default: 10000\n    },\n    disabledStatus: {\n      type: Boolean,\n      default: false\n    },\n    inputCssClass: {\n      type: String,\n      default: '',\n      note: 'Bulma class name size. is-small, is-medium, is-large. By leaving this empty the size will be set to normal.'\n    },\n    value: {\n      type: [Object, String, Number, Date, Boolean],\n      default: '',\n      note: function() { return this.$t('Components.UI.Form.BaseInputFieldController.Value_Note') }\n    },\n    disabled: {\n      type: Boolean,\n      default: false,\n      note: function() { return this.$t('Components.UI.Form.BaseInputFieldController.Disabled_Note') }\n    },\n    required: {\n      type: Boolean,\n      default: false,\n      // note: 'This field is required'\n      note: function() { return this.$t('Components.UI.Form.BaseInputFieldController.Required_Note') }\n    },\n    onKeyUp: {\n      type: Function,\n      default: function() { },\n    },\n    onKeyUpEnter: {\n      type: Function,\n      default: function() { },\n    }\n  },\n\n  data() {\n    return {\n      hasPassedValidation: false\n    }\n  },\n\n  computed: {\n    /**\n     * Either use the supplied id, or generate a unique one.\n     */\n    labelId() {\n      return this.id === '' ? this.uniqueId() : this.id\n    },\n    /**\n     * It is recommended to bind the <label> element through $ref, to ensure\n     * the label and input id are identical.\n     */\n    inputId() {\n      return this.$refs.label ? this.$refs.label.for : this.labelId\n    },\n\n    hasError() {\n      if ((!Array.isArray(this.error) && this.error) || (Array.isArray(this.error) && this.error.length)) {\n        return true\n      } else {\n        return false\n      }\n    }\n  },\n\n  methods: {\n    /**\n     * Generate a unique id used to couple the input and label tags\n     *  This method is only used an id was not explicitly provided as a prop\n     */\n    uniqueId() {\n      // CHeck whether the uuid is null, to avoid double generation of uuid,\n      // causing a possible mismatch between input an label.\n      return (this.uuid = this.uuid !== null ? this.uuid : uuidv4())\n    },\n\n    onFocus(e) {\n      this.focus(e)\n    },\n    onBlur(e) {\n      this.blur(e)\n    },\n    onChange(e) {\n      this.change(e)\n    },\n    onInput(e) {\n      this.input(e)\n    },\n    focus(e) {\n      this.$emit('focus', e)\n    },\n    blur(e) {\n      this.$emit('blur', e)\n    },\n    change(e) {\n      let value = e.target.matches('[type=\"checkbox\"]')\n        ? e.target.checked\n        : e.target.value.trim()\n\n      this.$emit('change', value)\n    },\n    input(e) {\n      let value = e.target.matches('[type=\"checkbox\"]')\n        ? e.target.checked\n        : e.target.value.trim()\n\n      this.$emit('input', value)\n    },\n\n    // onBlur() { },\n    // onChange() {\n    //   this.onKeyUp()\n    // },\n    // onFocus() { },\n    // onInput() {\n    //   this.$emit('input', event.target.value)\n    // }\n  }\n}\n</script>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInputFieldController.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInputFieldController.vue?vue&type=script&lang=js\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextPlaceholder.vue?vue&type=style&index=0&id=0d8039e2&prod&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationRevisions.vue?vue&type=style&index=0&id=5e064f77&prod&lang=scss&scoped=true\"","'use strict';\nvar $ = require('../internals/export');\nvar isDisjointFrom = require('../internals/set-is-disjoint-from');\nvar setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');\n\nvar INCORRECT = !setMethodAcceptSetLike('isDisjointFrom', function (result) {\n  return !result;\n});\n\n// `Set.prototype.isDisjointFrom` method\n// https://tc39.es/ecma262/#sec-set.prototype.isdisjointfrom\n$({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {\n  isDisjointFrom: isDisjointFrom\n});\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CopyReservation.vue?vue&type=style&index=0&id=6203b79e&prod&lang=scss&scoped=true\"","'use strict';\nvar $ = require('../internals/export');\nvar globalThis = require('../internals/global-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar INCORRECT_VALUE = globalThis.self !== globalThis;\n\n// `self` getter\n// https://html.spec.whatwg.org/multipage/window-object.html#dom-self\ntry {\n  if (DESCRIPTORS) {\n    // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n    var descriptor = Object.getOwnPropertyDescriptor(globalThis, 'self');\n    // some engines have `self`, but with incorrect descriptor\n    // https://github.com/denoland/deno/issues/15765\n    if (INCORRECT_VALUE || !descriptor || !descriptor.get || !descriptor.enumerable) {\n      defineBuiltInAccessor(globalThis, 'self', {\n        get: function self() {\n          return globalThis;\n        },\n        set: function self(value) {\n          if (this !== globalThis) throw new $TypeError('Illegal invocation');\n          defineProperty(globalThis, 'self', {\n            value: value,\n            writable: true,\n            configurable: true,\n            enumerable: true\n          });\n        },\n        configurable: true,\n        enumerable: true\n      });\n    }\n  } else $({ global: true, simple: true, forced: INCORRECT_VALUE }, {\n    self: globalThis\n  });\n} catch (error) { /* empty */ }\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputNumeric.vue?vue&type=style&index=0&id=6d71c596&prod&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalSendMail.vue?vue&type=style&index=0&id=cb78390c&prod&lang=scss&scoped=true\"","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\n// eslint-disable-next-line es/no-set -- safe\nvar SetPrototype = Set.prototype;\n\nmodule.exports = {\n  // eslint-disable-next-line es/no-set -- safe\n  Set: Set,\n  add: uncurryThis(SetPrototype.add),\n  has: uncurryThis(SetPrototype.has),\n  remove: uncurryThis(SetPrototype['delete']),\n  proto: SetPrototype\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fill = require('../internals/array-fill');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.fill` method\n// https://tc39.es/ecma262/#sec-array.prototype.fill\n$({ target: 'Array', proto: true }, {\n  fill: fill\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('fill');\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{staticClass:\"has-icon has-text-link\",on:{\"click\":() => { _vm.print() }}},[_c('span',{staticClass:\"icon\",class:{'is-loading': _vm.isLoading }},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'print']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Form.Control.Print'))}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <a\n    class=\"has-icon has-text-link\"\n    @click=\"() => { print() }\"\n  >\n    <span\n      class=\"icon\"\n      :class=\"{'is-loading': isLoading }\"\n    >\n      <font-awesome-icon :icon=\"['far', 'print']\" />\n    </span>\n    <span v-text=\"$t('Form.Control.Print')\"></span>\n    <!-- <ModalPrint\n      v-if=\"showModal\"\n      :showModal=\"showModal\"\n      :onCloseFunc=\"closeModal\"\n      :type=\"type\"\n      :id=\"id\"\n    /> -->\n  </a>\n</template>\n\n<script>\nimport feeinvoiceProvider from '@/providers/feeinvoice'\nimport proposalProvider from '@/providers/proposal'\nimport reservationProvider from '@/providers/reservation'\nimport invoiceProvider from '@/providers/invoice'\n// import ModalPrint from '@/components/UI/ModalPrint'\nexport default {\n  name: 'Print',\n  props: {\n    type: {\n      type: String,\n      required: true,\n    },\n\n    id: {\n      type: String,\n      required: true,\n    },\n\n    openInModal: {\n      type: Boolean,\n      default: false,\n    },\n  },\n\n  components: {\n    // ModalPrint,\n  },\n\n  data() {\n    return {\n      showModal: false,\n      isLoading: false,\n    }\n  },\n\n  methods: {\n    openModal() {\n      this.showModal = true\n    },\n\n    closeModal() {\n      this.showModal = false\n    },\n\n    async print() {\n      if (this.isLoading) { return }\n      this.isLoading = true\n      let response = null\n\n      switch (this.type) {\n        case 'proposal':\n          response = await proposalProvider.methods\n            .getProposalPdf(this.id)\n            .catch()\n            .finally(() => {\n              this.isLoading = false;\n            })\n          break\n        case 'reservation':\n          response = await reservationProvider.methods\n            .getReservationPdf(this.id)\n            .catch()\n            .finally(() => {\n              this.isLoading = false;\n            })\n          break\n        case 'invoice':\n          response = await invoiceProvider.methods\n            .getInvoicePdf(this.id)\n            .catch()\n            .finally(() => {\n              this.isLoading = false;\n            })\n          break\n        case 'feeinvoice':\n          response = await feeinvoiceProvider.methods\n            .getFeeInvoicePdf(this.id)\n            .catch()\n            .finally(() => {\n              this.isLoading = false;\n            })\n          break\n\n        default:\n          break\n      }\n\n      const linkSource = `data:application/pdf;base64,${response.data}`\n      const pdfBlob = this.dataURItoBlob(linkSource)\n      const blobUrl = URL.createObjectURL(pdfBlob)\n\n      const link = document.createElement('a')\n      link.target = '_blank'\n      link.href = blobUrl\n      link.click()\n      link.remove()\n      let t = setTimeout(() => {\n        window.URL.revokeObjectURL(blobUrl)\n        clearTimeout(t)\n      }, 20)\n\n      this.isLoading = false\n    },\n\n    dataURItoBlob(dataURI) {\n      const byteString = atob(dataURI.split(',')[1])\n      const mimeString = dataURI\n        .split(',')[0]\n        .split(':')[1]\n        .split(';')[0]\n\n      // write the bytes of the string to an ArrayBuffer\n      const ab = new ArrayBuffer(byteString.length)\n      const ia = new Uint8Array(ab)\n      for (let i = 0; i < byteString.length; i++) {\n        ia[i] = byteString.charCodeAt(i)\n      }\n\n      // write the ArrayBuffer to a blob, and you're done\n      const bb = new Blob([ab], { type: mimeString })\n      return bb\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkPrint.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkPrint.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./LinkPrint.vue?vue&type=template&id=641f2cb6&scoped=true\"\nimport script from \"./LinkPrint.vue?vue&type=script&lang=js\"\nexport * from \"./LinkPrint.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"641f2cb6\",\n  null\n  \n)\n\nexport default component.exports","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isEqual\n * @category Common Helpers\n * @summary Are the given dates equal?\n *\n * @description\n * Are the given dates equal?\n *\n * @param {Date|Number} dateLeft - the first date to compare\n * @param {Date|Number} dateRight - the second date to compare\n * @returns {Boolean} the dates are equal\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 July 2014 06:30:45.000 and 2 July 2014 06:30:45.500 equal?\n * const result = isEqual(\n *   new Date(2014, 6, 2, 6, 30, 45, 0),\n *   new Date(2014, 6, 2, 6, 30, 45, 500)\n * )\n * //=> false\n */\nexport default function isEqual(dirtyLeftDate, dirtyRightDate) {\n  requiredArgs(2, arguments);\n  var dateLeft = toDate(dirtyLeftDate);\n  var dateRight = toDate(dirtyRightDate);\n  return dateLeft.getTime() === dateRight.getTime();\n}","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.selectedMailLog && _vm.showMailDetail)?_c('ModalMailDetail',{attrs:{\"showModal\":_vm.selectedMailLog && _vm.showMailDetail,\"onClickCancel\":_vm.hideModal,\"mailLog\":_vm.selectedMailLog}}):_vm._e(),_c('table',{staticClass:\"table is-fullwidth is-striped is-hoverable\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Table_HeadSentOn'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Table_HeadFrom'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Table_HeadTo'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Table_HeadSubject'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Table_HeadStatus'))+\" \")]),_c('th')])]),_c('tbody',_vm._l((_vm.mailLogs),function(mailLog,index){return _c('tr',{key:index},[_c('td',[_c('div',{staticClass:\"no-text-wrap\"},[_vm._v(\" \"+_vm._s(_vm._f(\"longDateFormat\")(mailLog.CreatedOn,_vm.$i18n.locale))+\" \")]),_c('div',{staticClass:\"is-size-7\"},[_vm._v(_vm._s(mailLog.CreatedByName))])]),_c('td',[_vm._v(_vm._s(mailLog.From))]),_c('td',[_vm._v(_vm._s(mailLog.To))]),_c('td',[_vm._v(_vm._s(mailLog.Subject))]),_c('td',[(mailLog.Status === 'bounce' || mailLog.Status === 'dropped')?_c('span',{staticClass:\"icon has-text-danger mr-2\",attrs:{\"title\":_vm.$t('Email MailStatus.status_' + mailLog.Status)}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1):_vm._e(),_c('span',[_vm._v(_vm._s(_vm.$t('MailStatus.status_' + mailLog.Status)))])]),_c('td',[_c('a',{on:{\"click\":function($event){return _vm.setShowMailDetail(mailLog)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1)])])])}),0)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ModalMailDetail\n      v-if=\"selectedMailLog && showMailDetail\"\n      :showModal=\"selectedMailLog && showMailDetail\"\n      :onClickCancel=\"hideModal\"\n      :mailLog=\"selectedMailLog\"\n    />\n\n    <table class=\"table is-fullwidth is-striped is-hoverable\">\n      <thead>\n        <tr>\n          <th>\n            {{\n              $t('Components.Reservation.ReservationMailLog.Table_HeadSentOn')\n            }}\n          </th>\n          <th>\n            {{ $t('Components.Reservation.ReservationMailLog.Table_HeadFrom') }}\n          </th>\n          <th>\n            {{ $t('Components.Reservation.ReservationMailLog.Table_HeadTo') }}\n          </th>\n          <th>\n            {{\n              $t('Components.Reservation.ReservationMailLog.Table_HeadSubject')\n            }}\n          </th>\n          <th>\n            {{\n              $t('Components.Reservation.ReservationMailLog.Table_HeadStatus')\n            }}\n          </th>\n          <th></th>\n        </tr>\n      </thead>\n      <tbody>\n        <tr v-for=\"(mailLog, index) in mailLogs\" :key=\"index\">\n          <td>\n            <div class=\"no-text-wrap\">\n              {{ mailLog.CreatedOn | longDateFormat($i18n.locale) }}\n            </div>\n            <div class=\"is-size-7\">{{ mailLog.CreatedByName }}</div>\n          </td>\n          <td>{{ mailLog.From }}</td>\n          <td>{{ mailLog.To }}</td>\n          <td>{{ mailLog.Subject }}</td>\n          <td>\n            <span\n              v-if=\"mailLog.Status === 'bounce' || mailLog.Status === 'dropped'\"\n              class=\"icon has-text-danger mr-2\"\n              :title=\"$t('Email MailStatus.status_' + mailLog.Status)\"\n            >\n              <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n            </span>\n            <span>{{ $t('MailStatus.status_' + mailLog.Status) }}</span>\n          </td>\n          <td>\n            <a @click=\"setShowMailDetail(mailLog)\" class=\"\">\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n              </span>\n            </a>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script>\nconst ModalMailDetail = () => import('@/components/Mails/ModalMailDetail')\n\nexport default {\n  components: {\n    ModalMailDetail,\n  },\n\n  props: {\n    mailLogs: {\n      type: Array,\n      default: function() {\n        return []\n      },\n    },\n  },\n\n  data() {\n    return {\n      selectedMailLog: null,\n      showMailDetail: false,\n    }\n  },\n\n  computed: {\n    statusIcon() {\n      // processed,\n      // dropped,\n      // delivered,\n      // deferred,\n      // bounce,\n      // open,\n      // click\n      return ''\n    },\n  },\n\n  created() {},\n\n  methods: {\n    setShowMailDetail(mailLog) {\n      this.selectedMailLog = mailLog\n      this.showMailDetail = true\n    },\n\n    hideModal() {\n      this.selectedMailLog = null\n      this.showMailDetail = true\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MailLog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MailLog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MailLog.vue?vue&type=template&id=0d1040f4\"\nimport script from \"./MailLog.vue?vue&type=script&lang=js\"\nexport * from \"./MailLog.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservation.ModalSendMail.Main_Title'),\"modalSize\":\"large\",\"buttonLabelConfirm\":_vm.$t('Components.Invoices.ModalSendInvoice.Button_Send'),\"isSaving\":_vm.isSaving,\"isSavingError\":_vm.isSavingError,\"disableSaveButton\":_vm.isSaving || !_vm.validEmailSettings,\"hideFooterButtons\":_vm.isSavingError,\"onClickCancel\":_vm.deleteDraftAndCancel,\"onClickSave\":_vm.sendMail,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.deleteDraftAndCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.hasLoadedTexts)?_c('table',{staticClass:\"table is-fullwidth\"},[_c('tbody',[_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalSendMail.Label_From'))+\" \")]),_c('td',[_c('div',[_c('ui-base-input-field',{ref:\"mailaddressInput\",attrs:{\"fieldType\":\"text\",\"showLabel\":false,\"error\":_vm.fromEmailErrors,\"placeholder\":\"Add mailaddress\"},on:{\"input\":function($event){return _vm.$v.mail.FromEmail.$touch()},\"blur\":function($event){return _vm.$v.mail.FromEmail.$touch()}},model:{value:(_vm.mail.FromEmail),callback:function ($$v) {_vm.$set(_vm.mail, \"FromEmail\", $$v)},expression:\"mail.FromEmail\"}})],1)])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalSendMail.Label_To')))]),_c('td',[_c('MailInput',{attrs:{\"mailaddresses\":_vm.mailAddresses},on:{\"mailinputChecked\":_vm.setMailInputEmpty,\"mailaddressAdded\":_vm.addMailAddress,\"mailaddressDeleted\":_vm.deleteMailAddress,\"emailErrorPresent\":_vm.hasToAddressWarning}})],1)]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalSendMail.Label_BCC'))+\" \")]),_c('td',[_c('MailInput',{attrs:{\"mailaddresses\":_vm.bccAddresses},on:{\"mailinputChecked\":_vm.setMailInputEmpty,\"mailaddressAdded\":_vm.addBCCAddress,\"mailaddressDeleted\":_vm.deleteBCCAddress,\"emailErrorPresent\":_vm.hasToAddressWarning}})],1)]),_c('tr',[_c('td',{attrs:{\"width\":\"100\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalSendMail.Label_MailType'))+\" \")]),_c('td',[_c('div'),_c('div',{staticClass:\"select\"},[_c('select',{on:{\"change\":_vm.setMailText}},_vm._l((_vm.mailTexts),function(mailText,index){return _c('option',{key:index,domProps:{\"value\":mailText.Id,\"selected\":_vm.selectedMailText.Id === mailText.Id}},[_vm._v(\" \"+_vm._s(_vm.$t(`Components.Reservation.ModalSendMail.${mailText.MailType}`))+\" \"+_vm._s(mailText.Name)+\" \")])}),0)])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalSendMail.Label_Subject'))+\" \")]),_c('td',[_c('div',{staticClass:\"control\"},[_c('ui-base-input-field',{attrs:{\"showLabel\":false,\"fieldType\":\"text\",\"placeholder\":\"Subject\",\"error\":_vm.subjectErrors},on:{\"input\":function($event){return _vm.$v.selectedMailText.Subject.$touch()},\"blur\":function($event){return _vm.$v.selectedMailText.Subject.$touch()}},model:{value:(_vm.selectedMailText.Subject),callback:function ($$v) {_vm.$set(_vm.selectedMailText, \"Subject\", $$v)},expression:\"selectedMailText.Subject\"}})],1)])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ModalSendMail.Label_Text'))+\" \"),_c('br'),_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.showSpinner)?_c('span',{staticClass:\"tag is-link\"},[_c('span',{staticClass:\"icon\",class:{ 'is-loading': _vm.showSpinner }}),_c('span',[_vm._v(\"saving \")])]):_vm._e()])],1),_c('td',[_c('div',{staticClass:\"control\"},[_c('ui-text-editor',{key:'editor' + _vm.selectedMailText.Id,class:{ cke_chrome: _vm.hasBodyWarning },on:{\"input\":() => {\n                      _vm.delay(_vm.saveDraft(_vm.selectedMailText), 700)\n                      _vm.$v.selectedMailText.Body.$touch()\n                    },\"blur\":function($event){return _vm.$v.selectedMailText.Body.$touch()}},model:{value:(_vm.selectedMailText.Body),callback:function ($$v) {_vm.$set(_vm.selectedMailText, \"Body\", $$v)},expression:\"selectedMailText.Body\"}})],1),(_vm.bodyErrors.length)?_c('div',{staticClass:\"has-text-danger\"},[_c('small',[_vm._v(_vm._s(_vm.bodyErrors))])]):_vm._e()])])])]):_vm._e()])]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"$t('Components.Reservation.ModalSendMail.Main_Title')\"\n    modalSize=\"large\"\n    :buttonLabelConfirm=\"$t('Components.Invoices.ModalSendInvoice.Button_Send')\"\n    :isSaving=\"isSaving\"\n    :isSavingError=\"isSavingError\"\n    :disableSaveButton=\"isSaving || !validEmailSettings\"\n    :hideFooterButtons=\"isSavingError\"\n    :onClickCancel=\"deleteDraftAndCancel\"\n    :onClickSave=\"sendMail\"\n    :showModal=\"showModal\"\n    @closeModal=\"deleteDraftAndCancel\"\n  >\n    <template v-slot:content>\n      <transition name=\"fade\" mode=\"out-in\">\n        <table v-if=\"hasLoadedTexts\" class=\"table is-fullwidth\">\n          <tbody>\n            <tr>\n              <td>\n                {{ $t('Components.Reservation.ModalSendMail.Label_From') }}\n              </td>\n              <td>\n                <div>\n                  <ui-base-input-field\n                    ref=\"mailaddressInput\"\n                    fieldType=\"text\"\n                    :showLabel=\"false\"\n                    v-model=\"mail.FromEmail\"\n                    :error=\"fromEmailErrors\"\n                    placeholder=\"Add mailaddress\"\n                    @input=\"$v.mail.FromEmail.$touch()\"\n                    @blur=\"$v.mail.FromEmail.$touch()\"\n                  />\n                </div>\n              </td>\n            </tr>\n            <tr>\n              <td>{{ $t('Components.Reservation.ModalSendMail.Label_To') }}</td>\n              <td>\n                <MailInput\n                  :mailaddresses=\"mailAddresses\"\n                  @mailinputChecked=\"setMailInputEmpty\"\n                  @mailaddressAdded=\"addMailAddress\"\n                  @mailaddressDeleted=\"deleteMailAddress\"\n                  @emailErrorPresent=\"hasToAddressWarning\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{ $t('Components.Reservation.ModalSendMail.Label_BCC') }}\n              </td>\n              <td>\n                <MailInput\n                  :mailaddresses=\"bccAddresses\"\n                  @mailinputChecked=\"setMailInputEmpty\"\n                  @mailaddressAdded=\"addBCCAddress\"\n                  @mailaddressDeleted=\"deleteBCCAddress\"\n                  @emailErrorPresent=\"hasToAddressWarning\"\n                />\n              </td>\n            </tr>\n            <tr>\n              <td width=\"100\">\n                {{ $t('Components.Reservation.ModalSendMail.Label_MailType') }}\n              </td>\n              <td>\n                <div></div>\n                <div class=\"select\">\n                  <select @change=\"setMailText\">\n                    <option\n                      v-for=\"(mailText, index) in mailTexts\"\n                      :key=\"index\"\n                      :value=\"mailText.Id\"\n                      :selected=\"selectedMailText.Id === mailText.Id\"\n                    >\n                        {{ $t(`Components.Reservation.ModalSendMail.${mailText.MailType}`) }} {{ mailText.Name }}\n                    </option>\n                  </select>\n                </div>\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{ $t('Components.Reservation.ModalSendMail.Label_Subject') }}\n              </td>\n              <td>\n                <div class=\"control\">\n                  <ui-base-input-field\n                    :showLabel=\"false\"\n                    fieldType=\"text\"\n                    placeholder=\"Subject\"\n                    :error=\"subjectErrors\"\n                    v-model=\"selectedMailText.Subject\"\n                    @input=\"$v.selectedMailText.Subject.$touch()\"\n                    @blur=\"$v.selectedMailText.Subject.$touch()\"\n                  />\n                </div>\n              </td>\n            </tr>\n            <tr>\n              <td>\n                {{ $t('Components.Reservation.ModalSendMail.Label_Text') }}\n                <br />\n                <transition name=\"fade\" mode=\"out-in\">\n                  <span v-if=\"showSpinner\" class=\"tag is-link\">\n                    <span\n                      class=\"icon\"\n                      :class=\"{ 'is-loading': showSpinner }\"\n                    ></span>\n                    <span>saving </span>\n                  </span>\n                </transition>\n              </td>\n              <td>\n                <div class=\"control\">\n                  <ui-text-editor\n                    :key=\"'editor' + selectedMailText.Id\"\n                    v-model=\"selectedMailText.Body\"\n                    @input=\"\n                      () => {\n                        delay(saveDraft(selectedMailText), 700)\n                        $v.selectedMailText.Body.$touch()\n                      }\n                    \"\n                    @blur=\"$v.selectedMailText.Body.$touch()\"\n                    :class=\"{ cke_chrome: hasBodyWarning }\"\n                  ></ui-text-editor>\n                </div>\n                <div v-if=\"bodyErrors.length\" class=\"has-text-danger\">\n                  <small>{{ bodyErrors }}</small>\n                </div>\n              </td>\n            </tr>\n          </tbody>\n        </table>\n      </transition>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { mapGetters, mapState } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport mailProvider from '@/providers/mail'\nimport reservationProvider from '@/providers/reservation'\n\nconst MailInput = () => import('@/components/UI/Components/MailInput')\n\nimport { required, email, minLength } from 'vuelidate/lib/validators'\nconst touchMap = new WeakMap()\n\nexport default {\n  components: {\n    MailInput,\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n\n    mailType: {\n      type: String,\n      default: 'Confirmation',\n    },\n  },\n\n  data() {\n    return {\n      fromEmail: '',\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      bccAddresses: [],\n      hasLoadedTexts: false,\n      mail: {\n        FromEmail: '',\n        // ToEmail: '',\n        // CC: '',\n        // Subject: '',\n        // Body: '',\n      },\n      mailAddresses: [],\n      mailTexts: [],\n      selectedMailText: { Id: 0 },\n      addressWarning: false,\n      draftPresent: false,\n      showSpinner: false,\n      timer: null,\n      secondTimer: null,\n\n      reservationSettings: null,\n    }\n  },\n\n  /**\n   * Form validation rules\n   */\n  validations() {\n    let output = {\n      FromEmail: {\n        required,\n        email,\n      },\n    }\n    let output2 = {\n      Subject: {\n        required,\n        minLength: minLength(3),\n      },\n      Body: {\n        required,\n        minLength: minLength(10),\n      },\n    }\n    return {\n      mail: output,\n      selectedMailText: output2,\n    }\n  },\n\n  computed: {\n    ...mapGetters({ profile: 'profileStore/getProfile' }),\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('reservationStore', ['reservation']),\n\n    fromEmailErrors() {\n      const errors = []\n      if (!this.$v.mail.FromEmail.$dirty) return errors\n      if (!this.$v.mail.FromEmail.required) {\n        errors.push(this.$t('Form.InputErrors.Required'))\n      } else if (!this.$v.mail.FromEmail.email) {\n        errors.push(this.$t('Form.InputErrors.InvalidEmail'))\n      }\n      return errors\n    },\n\n    subjectErrors() {\n      const errors = []\n      if (!this.$v.selectedMailText.Subject.$dirty) return errors\n      !this.$v.selectedMailText.Subject.required &&\n        errors.push(this.$t('Form.InputErrors.Required'))\n      !this.$v.selectedMailText.Subject.minLength &&\n        errors.push(this.$t('Form.InputErrors.minLength', { minLength: 3 }))\n      return errors\n    },\n\n    bodyErrors() {\n      let errors = ''\n      if (!this.$v.selectedMailText.Body.$dirty) return errors\n      if (!this.$v.selectedMailText.Body.required) {\n        errors = this.$t('Form.InputErrors.Required')\n      }\n      if (!this.$v.selectedMailText.Body.minLength) {\n        errors = this.$t('Form.InputErrors.minLength', { minLength: 3 })\n      }\n      return errors\n    },\n\n    validEmailSettings() {\n      let result = true\n\n      if (\n        this.hasFromAddressWarning ||\n        this.addressWarning ||\n        this.hasSubjectWarning ||\n        this.hasBodyWarning\n      ) {\n        result = false\n      }\n      return result\n    },\n\n    hasFromAddressWarning() {\n      let result = false\n\n      if (this.fromEmailErrors.length > 0) {\n        result = true\n      }\n\n      return result\n    },\n\n    hasSubjectWarning() {\n      let result = false\n\n      if (this.subjectErrors.length > 0 || !this.selectedMailText.Subject) {\n        this.$v.$touch()\n        result = true\n      }\n\n      return result\n    },\n\n    hasBodyWarning() {\n      let result = false\n\n      if (this.bodyErrors.length > 0 || !this.selectedMailText.Body) {\n        this.$v.$touch()\n        result = true\n      }\n      return result\n    },\n  },\n\n  created() {\n    this.mail.FromEmail = this.profile.Email\n\n    this.mailAddresses = this.reservation.Contacts.filter(\n      (c) => c.ReceiveEmail\n    ).map((c) => c.Email)\n\n    this.getLocationReservationMailTexts()\n    this.getLocationReservationSettings()\n  },\n\n  beforeDestroy() {\n    this.draftPresent = false\n  },\n\n  methods: {\n    async getLocationReservationMailTexts() {\n      if (this.hasLoadedTexts) {\n        return\n      }\n\n      let self = this\n      this.hasLoadedTexts = false\n\n      // Check first if a draft exists\n      await this.checkForDrafts()\n\n      // Get mail texts from API\n      mailProvider.methods\n        .getReservationMailTexts(self.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            self.mail.FromEmail = response.data.FromEmail\n            self.mailTexts = response.data.MailTexts\n\n            if (!this.draftPresent) {\n              let mailIndex = this.mailTexts.findIndex(\n                (mt) => mt.MailType === this.mailType\n              )\n\n              if (mailIndex === -1) {\n                mailIndex = 0\n              }\n\n              this.selectedMailText = JSON.parse(\n                JSON.stringify(this.mailTexts[mailIndex])\n              )\n            }\n          }\n        })\n        .finally(() => {\n          self.hasLoadedTexts = true\n        })\n    },\n\n    getLocationReservationSettings() {\n      let self = this\n      reservationProvider.methods\n        .getReservationSettings(self.locationState.Id)\n        .then((response) => {\n          if (response.status === 200) {\n            self.reservationSettings = response.data\n\n            if (self.reservationSettings.DefaultSenderAddress.length > 0) {\n              self.fromEmail = ''\n              self.fromEmail = self.reservationSettings.DefaultSenderAddress\n              this.mail.FromEmail =\n                self.reservationSettings.DefaultSenderAddress\n            }\n          }\n        })\n        .finally(() => {})\n    },\n\n    async checkForDrafts() {\n      await this.$localforge\n        .get('selectedMailDraft')\n        .then((response) => {\n          if (response) {\n            this.selectedMailText = response\n            this.draftPresent = true\n          }\n        })\n        .catch((err) => {})\n    },\n\n    setMailText(e) {\n      const SELECTVALUE = Number(e.target.value)\n      this.selectedMailText = this.mailTexts.find((m) => m.Id === SELECTVALUE)\n    },\n\n    saveDraft(val) {\n      this.$localforge.set('selectedMailDraft', val)\n    },\n\n    savingSpinner() {\n      let self = this\n      if (this.secondTimer) {\n        clearTimeout(this.secondTimer)\n      }\n      this.showSpinner = true\n      this.secondTimer = setTimeout(() => {\n        this.showSpinner = false\n        clearTimeout(self.secondTimer)\n      }, 600)\n    },\n\n    delay(callback, ms) {\n      let self = this\n      if (this.timer) {\n        clearTimeout(this.timer)\n      }\n      this.timer = setTimeout(() => {\n        callback\n        this.savingSpinner()\n        clearTimeout(self.timer)\n      }, ms || 0)\n    },\n\n    deleteDraftAndCancel() {\n      this.$localforge.delete('selectedMailDraft')\n      this.onClickCancel()\n    },\n\n    hasToAddressWarning(emailError) {\n      if (emailError.length > 1) {\n        this.addressWarning = true\n      } else {\n        this.addressWarning = false\n      }\n    },\n\n    addMailAddress(address) {\n      this.mailAddresses.unshift(address)\n    },\n\n    deleteMailAddress(address) {\n      let addressIndex = this.mailAddresses.findIndex((t) => t === address)\n      if (addressIndex > -1) {\n        this.mailAddresses.splice(addressIndex, 1)\n      }\n    },\n\n    addBCCAddress(address) {\n      this.bccAddresses.unshift(address)\n    },\n\n    deleteBCCAddress(address) {\n      let addressIndex = this.bccAddresses.findIndex((t) => t === address)\n      if (addressIndex > -1) {\n        this.bccAddresses.splice(addressIndex, 1)\n      }\n    },\n\n    setMailInputEmpty(value) {\n      if (value) {\n        this.addressWarning = false\n      }\n    },\n\n    sendMail() {\n      let self = this\n\n      if (!self.isSaving) {\n        self.isSaving = true\n        this.$v.$touch()\n        if (this.$v.$invalid) {\n          // 'ERROR'\n          self.isSaving = false\n        } else {\n          let mail = {\n            FromEmail: this.mail.FromEmail,\n            ToEmail: self.mailAddresses.join(','),\n            CC: self.bccAddresses.join(','),\n            Subject: self.selectedMailText.Subject,\n            Body: self.selectedMailText.Body,\n          }\n\n          reservationProvider.methods\n            .sendReservationMail(self.reservation.Key, mail)\n            .then((response) => {\n              self.$emit('reservationMailSent')\n\n              // Send message to be shown as toast on page\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservation.ModalSendMail.Toast_MailSent'\n                ),\n              })\n\n              self.deleteDraftAndCancel()\n            })\n            .catch((e) => {\n              self.isSavingError = true\n            })\n            .finally(() => {\n              self.isSaving = false\n            })\n        }\n      }\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.row-whyTags {\n  display: flex;\n  align-items: baseline;\n  .message {\n    margin-bottom: 0;\n    padding: 2px 5px;\n  }\n}\n\n.cke_chrome {\n  border-radius: 4px;\n  border: 1px solid red;\n  border-width: thin;\n}\n\n.is-borderless,\n.is-borderless:hover {\n  border-color: transparent;\n}\n\n.field.is-grouped.is-grouped-multiline {\n  align-items: baseline;\n  background-color: $white;\n  min-height: 80px;\n  height: auto;\n\n  &:last-child {\n    margin-bottom: $gap;\n  }\n\n  .mailaddresses {\n    .mailaddress {\n      font-size: $size-6;\n    }\n    a.is-delete {\n      color: $text;\n    }\n  }\n\n  .wrapper-input {\n    align-items: center;\n    display: inline-flex;\n    white-space: nowrap;\n    .input-mailaddress {\n      min-width: 200px;\n      width: 200px;\n      margin-right: 5px;\n      border-left: transparent;\n      border-top: transparent;\n      border-right: transparent;\n    }\n  }\n}\n\n// fade transition\n.fade-enter-active,\n.fade-leave-active {\n  transition-duration: 0.25s;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalSendMail.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalSendMail.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalSendMail.vue?vue&type=template&id=cb78390c&scoped=true\"\nimport script from \"./ModalSendMail.vue?vue&type=script&lang=js\"\nexport * from \"./ModalSendMail.vue?vue&type=script&lang=js\"\nimport style0 from \"./ModalSendMail.vue?vue&type=style&index=0&id=cb78390c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"cb78390c\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('a',{key:'pin' + _vm.isPinned,staticClass:\"has-icon has-text-link\",class:{ 'has-text-grey-light' : _vm.isLoading },on:{\"click\":_vm.setPinState}},[_c('span',{staticClass:\"icon\"},[(_vm.isPinned)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'bookmark']}}):_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'thumbtack']}})],1),(_vm.showLabel && _vm.label)?_c('span',[_vm._v(_vm._s(_vm.label))]):_vm._e()])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <transition\n    name=\"fade\"\n    mode=\"out-in\"\n  >\n    <a\n      :key=\"'pin' + isPinned\"\n      class=\"has-icon has-text-link\"\n      :class=\"{ 'has-text-grey-light' : isLoading }\"\n      @click=\"setPinState\"\n    >\n      <span class=\"icon\">\n        <font-awesome-icon\n          v-if=\"isPinned\"\n          :icon=\"['fas', 'bookmark']\"\n        />\n        <font-awesome-icon\n          v-else\n          :icon=\"['fas', 'thumbtack']\"\n        />\n      </span>\n      <span v-if=\"showLabel && label\">{{label}}</span>\n    </a>\n  </transition>\n</template>\n\n<script>\nimport pinProvider from '@/providers/pin'\n\nexport default {\n  props: {\n    itemId: {\n      default: 0,\n      type: Number\n    },\n\n    locationId: {\n      default: 0,\n      type: Number\n    },\n\n    type: {\n      default: '',\n      type: String\n    },\n\n    showLabel: {\n      default: true,\n      type: Boolean\n    }\n  },\n\n  data() {\n    return {\n      pin: null,\n      typeId: this.getPinType(),\n      isLoading: false\n    }\n  },\n\n  computed: {\n    isPinned() {\n      let isPinned = false\n\n      if (this.pin && this.pin.Id > 0) {\n        isPinned = true\n      }\n\n      return isPinned\n    },\n\n    label() {\n      return this.isPinned ? this.$t('General.Unpin') : this.$t('General.Pin')\n    }\n  },\n\n  created() {\n    this.getIsPinnedData()\n  },\n\n  methods: {\n    getPinType() {\n      let self = this\n      let typeId = 0\n\n      switch (this.type.toLowerCase()) {\n        case 'reservation':\n          typeId = 1\n          break\n        case 'option':\n          typeId = 2\n          break\n        case 'space':\n          typeId = 3\n          break\n        case 'invoice':\n          typeId = 5\n          break\n        case 'company':\n          typeId = 6\n          break\n        case 'customer':\n          typeId = 7\n          break\n        case 'voucher':\n          typeId = 8\n          break\n        case 'chat':\n          typeId = 9\n          break\n        case 'quote':\n          typeId = 10\n          break\n        case 'question':\n          typeId = 11\n          break\n        case 'article':\n          typeId = 12\n          break\n        case 'event':\n          typeId = 13\n          break\n        case 'job':\n          typeId = 14\n          break\n        case 'group':\n          typeId = 15\n          break\n      }\n\n      return typeId\n    },\n\n    getIsPinnedData() {\n      let self = this\n      if (!this.isLoading) {\n        this.isLoading = true\n        pinProvider.methods.checkIsPinned(this.locationId, this.typeId, this.itemId)\n          .then(response => {\n            if (response.status === 200) {\n              this.pin = response.data\n            }\n          })\n          .finally(() => {\n            self.isLoading = false\n          })\n      }\n    },\n\n    setPinState() {\n      if (!this.isLoading) {\n        this.isLoading = true\n        if (this.isPinned) {\n          this.unpinItem()\n        } else {\n          this.pinItem()\n        }\n      }\n    },\n\n    pinItem() {\n      let self = this\n      let pin = {\n        LocationId: this.locationId,\n        TypeId: this.typeId,\n        ItemId: this.itemId\n      }\n      pinProvider.methods.pinItem(this.locationId, pin)\n        .then(response => {\n          if (response.status === 200) {\n            this.pin = response.data\n          }\n        })\n        .finally(() => {\n          self.isLoading = false\n        })\n    },\n\n    unpinItem() {\n      let self = this\n      pinProvider.methods.deletePin(this.pin.Id)\n        .then(response => {\n          if (response.status === 200) {\n            this.pin = null\n          }\n        })\n        .finally(() => {\n          self.isLoading = false\n        })\n    }\n  }\n}\n</script>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IsPinned.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IsPinned.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./IsPinned.vue?vue&type=template&id=89036e1a\"\nimport script from \"./IsPinned.vue?vue&type=script&lang=js\"\nexport * from \"./IsPinned.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Hero.vue?vue&type=style&index=0&id=27192a82&prod&scoped=true&lang=sass\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.showDrawer)?_c('div',{key:'showDrawer' + Number(_vm.showDrawer),staticClass:\"ui-drawer-component\"},[_c('div',{staticClass:\"ui-drawer-background\",class:{ 'is-active': _vm.showDrawer },on:{\"click\":function($event){return _vm.closeDrawer()}}}),_c('div',{staticClass:\"drawer\",class:[_vm.position, _vm.unsetFillModeCssClass, _vm.animateClass, _vm.drawerSize]},[_c('header',{staticClass:\"drawer-head has-padding\"},[(!_vm.hideTitle)?_c('p',{staticClass:\"drawer-title\"},[_vm._v(\" \"+_vm._s(_vm.drawerTitle)+\" \")]):_vm._e(),_c('button',{staticClass:\"delete\",attrs:{\"aria-label\":\"close\"},on:{\"click\":function($event){return _vm.closeDrawer()}}})]),_c('section',{staticClass:\"drawer-body has-padding has-custom-scrollbar\"},[_vm._t(\"content\")],2)])]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <transition\n    name=\"fade\"\n    mode=\"out-in\"\n  >\n    <div\n      v-if=\"showDrawer\"\n      :key=\"'showDrawer' + Number(showDrawer)\"\n      class=\"ui-drawer-component\"\n    >\n      <div\n        class=\"ui-drawer-background\"\n        :class=\"{ 'is-active': showDrawer }\"\n        @click=\"closeDrawer()\"\n      ></div>\n      <div\n        class=\"drawer\"\n        :class=\"[position, unsetFillModeCssClass, animateClass, drawerSize]\"\n      >\n        <header class=\"drawer-head has-padding\">\n          <p\n            v-if=\"!hideTitle\"\n            class=\"drawer-title\"\n          >\n            {{ drawerTitle }}\n          </p>\n          <button\n            @click=\"closeDrawer()\"\n            class=\"delete\"\n            aria-label=\"close\"\n          ></button>\n        </header>\n        <section class=\"drawer-body has-padding has-custom-scrollbar\">\n          <slot name=\"content\"></slot>\n        </section>\n      </div>\n    </div>\n  </transition>\n</template>\n\n<script>\nexport default {\n  props: {\n    drawerTitle: {\n      type: String,\n      default: '',\n    },\n    hideTitle: {\n      type: Boolean,\n      default: false,\n    },\n    onClickClose: {\n      type: Function,\n      default: function() { },\n      required: false,\n    },\n    position: {\n      type: String,\n      default: 'right',\n    },\n    showDrawer: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * Sizes are:\n     * - normal (420)\n     * - large (800)\n     * - extra-large (1100)\n     */\n    drawerSize: {\n      type: String,\n      default: 'normal',\n    },\n\n\n  },\n\n  data() {\n    return {\n      slideDrawer: false,\n      animateTimer: null,\n      unsetFillModeCssClass: 'unset-fill-mode',\n    }\n  },\n\n  computed: {\n    animateClass() {\n      let cls = 'animated slide'\n      cls = cls + (this.slideDrawer ? 'In' : 'Out')\n      cls = cls + this.position.charAt(0).toUpperCase() + this.position.slice(1)\n      return cls\n    },\n  },\n\n  mounted() {\n    // document.body.appendChild(this.$el)\n    this.slideDrawer = this.showDrawer\n  },\n\n  beforeDestroy() {\n    /**\n     * Destroy timer\n     */\n    if (this.animateTimer) {\n      clearTimeout(this.animateTimer)\n    }\n  },\n\n  methods: {\n    closeDrawer() {\n      this.slideDrawer = false\n      this.unsetFillModeCssClass = ''\n      this.animateTimer = setTimeout(this.onClickClose, 0)\n      // if (this.$el.parentNode) {\n      //   this.$el.parentNode.removeChild(this.$el)\n      // }\n    },\n  },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n$widthNormal: 420px;\n$widthLarge: 800px;\n$widthExtraLarge: 1100px;\n$widthExtraExtraLarge: 1400px;\n\n.ui-drawer-component {\n  bottom: 0;\n  left: 0;\n  position: fixed;\n  right: 0;\n  top: 0;\n  z-index: 99989;\n\n  .ui-drawer-background {\n    bottom: 0;\n    left: 0;\n    position: absolute;\n    right: 0;\n    top: 0;\n    background: rgba($black, 0.86);\n    transition: opacity 1s ease-in-out;\n\n    &.is-active {\n      opacity: 1;\n    }\n  }\n\n  .drawer {\n    display: flex;\n    flex-direction: column;\n    width: 0;\n    /* 0 width - change this with JavaScript */\n    position: fixed;\n    /* Stay in place */\n    top: 0;\n    /* Stay at the top */\n    left: auto;\n    right: auto;\n    background-color: white;\n    height: 100vh;\n    max-width: 420px;\n\n    &.large {\n      max-width: $widthLarge;\n    }\n\n    &.extra-large {\n      max-width: $widthExtraLarge;\n    }\n    &.extra-extra-large {\n      max-width: $widthExtraExtraLarge;\n    }\n    transition: 0.75s;\n    animation-duration: 0.5s;\n    @include box-shadow();\n\n    // This is needed for showing elements outside the drawer\n    &.unset-fill-mode {\n      animation-fill-mode: unset;\n    }\n\n    &.left {\n      left: 0;\n      width: 100%;\n    }\n\n    &.right {\n      right: 0;\n      width: 100%;\n    }\n\n    &-minimal {\n      width: auto;\n    }\n\n    .drawer-head {\n      align-items: center;\n      background-color: var(--drawer-head-background, #eeeeee);\n      display: flex;\n      flex-shrink: 0;\n      justify-content: flex-start;\n      padding: 15px;\n      position: relative;\n\n      .drawer-title {\n        flex-grow: 1;\n        flex-shrink: 0;\n        font-size: $size-4;\n      }\n    }\n\n    .drawer-body {\n      overflow: auto;\n      height: 100%;\n      max-height: 100%;\n      // overflow-x: hidden;\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Drawer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Drawer.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Drawer.vue?vue&type=template&id=d31a7108&scoped=true\"\nimport script from \"./Drawer.vue?vue&type=script&lang=js\"\nexport * from \"./Drawer.vue?vue&type=script&lang=js\"\nimport style0 from \"./Drawer.vue?vue&type=style&index=0&id=d31a7108&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"d31a7108\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showAddModal)?_c('ModalAddExternalLink',{attrs:{\"showModal\":_vm.showAddModal,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showDeleteModal)?_c('ModalDeleteExternalLink',{attrs:{\"showModal\":_vm.showDeleteModal,\"onClickCancel\":_vm.hideModal,\"externalLink\":_vm.selectedExternalLink},on:{\"externalLinkDeleted\":_vm.externalLinkDeleted}}):_vm._e(),(_vm.showEditModal)?_c('ModalEditExternalLink',{attrs:{\"showModal\":_vm.showEditModal,\"onClickCancel\":_vm.hideModal,\"externalLink\":_vm.selectedExternalLink},on:{\"externalLinkEdited\":_vm.externalLinkEdited}}):_vm._e(),_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"Links\")]},proxy:true}])}),_c('div',{staticClass:\"actionBar has-background-white-ter p-4 mb-6\"},[_c('div',{staticClass:\"level\"},[_c('div',{staticClass:\"level-left\"}),_c('div',{staticClass:\"level-right\"},[_c('a',{attrs:{\"id\":\"id_button_add\"},on:{\"click\":_vm.setShowAddModal}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'plus']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationExternalLinks.Button_AddLink')))])])])])]),_c('table',{staticClass:\"table is-fullwidth is-striped is-hoverable\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationExternalLinks.Label_Type')))]),_c('th',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationExternalLinks.Label_Link')))]),_c('th')])]),_c('tbody',_vm._l((_vm.reservation.ExternalLinks),function(link,index){return _c('tr',{key:index},[_c('td',[_vm._v(_vm._s(link.LinkType))]),_c('td',[_vm._v(_vm._s(link.Link))]),_c('td',{attrs:{\"width\":\"80\"}},[_c('div',{staticClass:\"field is-grouped\"},[_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"is-small\",on:{\"click\":function($event){return _vm.setShowEditModal(link)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)])]),_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"is-small\",on:{\"click\":function($event){return _vm.setShowDeleteModal(link)}}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1)])])])])])}),0)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ModalAddExternalLink\n      v-if=\"showAddModal\"\n      :showModal=\"showAddModal\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ModalDeleteExternalLink\n      v-if=\"showDeleteModal\"\n      :showModal=\"showDeleteModal\"\n      :onClickCancel=\"hideModal\"\n      :externalLink=\"selectedExternalLink\"\n      @externalLinkDeleted=\"externalLinkDeleted\"\n    />\n\n    <ModalEditExternalLink\n      v-if=\"showEditModal\"\n      :showModal=\"showEditModal\"\n      :onClickCancel=\"hideModal\"\n      :externalLink=\"selectedExternalLink\"\n      @externalLinkEdited=\"externalLinkEdited\"\n    />\n\n    <ui-section-header>\n      <template v-slot:title>Links</template>\n    </ui-section-header>\n\n    <div class=\"actionBar has-background-white-ter p-4 mb-6\">\n      <div class=\"level\">\n        <div class=\"level-left\"></div>\n        <div class=\"level-right\">\n          <a\n            id=\"id_button_add\"\n            @click=\"setShowAddModal\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon :icon=\"['fas', 'plus']\" />\n            </span>\n            <span>{{ $t('Components.Reservation.ReservationExternalLinks.Button_AddLink') }}</span>\n          </a>\n        </div>\n      </div>\n    </div>\n\n    <table class=\"table is-fullwidth is-striped is-hoverable\">\n      <thead>\n        <tr>\n          <th>{{ $t('Components.Reservation.ReservationExternalLinks.Label_Type') }}</th>\n          <th>{{ $t('Components.Reservation.ReservationExternalLinks.Label_Link') }}</th>\n          <th></th>\n        </tr>\n      </thead>\n      <tbody>\n        <tr\n          v-for=\"(link, index) in reservation.ExternalLinks\"\n          :key=\"index\"\n        >\n          <td>{{ link.LinkType }}</td>\n          <td>{{ link.Link }}</td>\n          <td width=\"80\">\n            <div class=\"field is-grouped\">\n              <p class=\"control\">\n                <a\n                  @click=\"setShowEditModal(link)\"\n                  class=\"is-small\"\n                >\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                  </span>\n                </a>\n              </p>\n              <p class=\"control\">\n                <a\n                  @click=\"setShowDeleteModal(link)\"\n                  class=\"is-small\"\n                >\n                  <span class=\"icon has-text-danger\">\n                    <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                  </span>\n                </a>\n              </p>\n            </div>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\n\nconst ModalEditExternalLink = () =>\n  import('@/components/Reservations/ModalEditExternalLink')\nconst ModalDeleteExternalLink = () =>\n  import('@/components/Reservations/ModalDeleteExternalLink')\nconst ModalAddExternalLink = () =>\n  import('@/components/Reservations/ModalAddExternalLink')\n\nexport default {\n  components: {\n    ModalAddExternalLink,\n    ModalDeleteExternalLink,\n    ModalEditExternalLink,\n  },\n\n  props: {\n    linktType: {\n      type: Number,\n      default: -1,\n    },\n  },\n\n  data() {\n    return {\n      selectedExternalLink: null,\n      showAddModal: false,\n      showDeleteModal: false,\n      showEditModal: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  created() { },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    externalLinkDeleted(externalLink) {\n      let linkIndex = this.reservation.ExternalLinks.findIndex(\n        (l) => l.Id === externalLink.Id\n      )\n      if (linkIndex > -1) {\n        let updatedReservation = JSON.parse(JSON.stringify(this.reservation))\n        updatedReservation.ExternalLinks.splice(linkIndex, 1)\n        this.setReservation(updatedReservation)\n      }\n    },\n\n    externalLinkEdited(externalLink) {\n      // Find the link from the link array in reservations\n      // and update the link in the array\n      let index = this.reservation.ExternalLinks.findIndex(l => l.Id === externalLink.Id)\n      if (index > -1) {\n        Vue.set(this.reservation.ExternalLinks, index, externalLink)\n        this.setReservation(this.reservation)\n      }\n    },\n\n    setShowAddModal() {\n      this.showAddModal = true\n    },\n\n    setShowDeleteModal(externalLink) {\n      this.showDeleteModal = true\n      this.selectedExternalLink = externalLink\n    },\n\n    setShowEditModal(externalLink) {\n      this.showEditModal = true\n      this.selectedExternalLink = externalLink\n    },\n\n    hideModal() {\n      this.showAddModal = false\n      this.showDeleteModal = false\n      this.showEditModal = false\n      this.selectedExternalLink = null\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationExternalLinks.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationExternalLinks.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationExternalLinks.vue?vue&type=template&id=c35de3ce\"\nimport script from \"./ReservationExternalLinks.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationExternalLinks.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nvar createSetLike = function (size) {\n  return {\n    size: size,\n    has: function () {\n      return false;\n    },\n    keys: function () {\n      return {\n        next: function () {\n          return { done: true };\n        }\n      };\n    }\n  };\n};\n\nvar createSetLikeWithInfinitySize = function (size) {\n  return {\n    size: size,\n    has: function () {\n      return true;\n    },\n    keys: function () {\n      throw new Error('e');\n    }\n  };\n};\n\nmodule.exports = function (name, callback) {\n  var Set = getBuiltIn('Set');\n  try {\n    new Set()[name](createSetLike(0));\n    try {\n      // late spec change, early WebKit ~ Safari 17 implementation does not pass it\n      // https://github.com/tc39/proposal-set-methods/pull/88\n      // also covered engines with\n      // https://bugs.webkit.org/show_bug.cgi?id=272679\n      new Set()[name](createSetLike(-1));\n      return false;\n    } catch (error2) {\n      if (!callback) return true;\n      // early V8 implementation bug\n      // https://issues.chromium.org/issues/351332634\n      try {\n        new Set()[name](createSetLikeWithInfinitySize(-Infinity));\n        return false;\n      } catch (error) {\n        var set = new Set();\n        set.add(1);\n        set.add(2);\n        return callback(set[name](createSetLikeWithInfinitySize(Infinity)));\n      }\n    }\n  } catch (error) {\n    return false;\n  }\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[_c('ui-section-header',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationToDos.Subtitle_ToDos')))]},proxy:true}],null,false,147462024)}),_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[(_vm.selectedTabIndex === 0)?_c('ToDos',{key:\"bookingToDos\",attrs:{\"header\":'ToDos of #' + _vm.reservation.Id,\"typeId\":'Reservation',\"itemId\":_vm.reservation.Id,\"linkTypeId\":'Reservation',\"linkItemId\":_vm.reservation.Id,\"locationId\":_vm.reservation.LocationId,\"showLink\":false,\"todos\":_vm.reservation.ToDos},on:{\"todoUpdated\":_vm.todoUpdated,\"todoCreated\":_vm.todoCreated,\"todoDeleted\":_vm.todoDeleted}}):_vm._e()],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <ui-section-header>\n      <template v-slot:title>{{\n        $t('Components.Reservation.ReservationToDos.Subtitle_ToDos')\n      }}</template>\n    </ui-section-header>\n\n    <transition name=\"fade\" mode=\"out-in\">\n      <ToDos\n        v-if=\"selectedTabIndex === 0\"\n        key=\"bookingToDos\"\n        :header=\"'ToDos of #' + reservation.Id\"\n        :typeId=\"'Reservation'\"\n        :itemId=\"reservation.Id\"\n        :linkTypeId=\"'Reservation'\"\n        :linkItemId=\"reservation.Id\"\n        :locationId=\"reservation.LocationId\"\n        :showLink=\"false\"\n        :todos=\"reservation.ToDos\"\n        @todoUpdated=\"todoUpdated\"\n        @todoCreated=\"todoCreated\"\n        @todoDeleted=\"todoDeleted\"\n      />\n    </transition>\n  </div>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\n\nexport default {\n  name: 'reservation-todos',\n\n  components: {\n    ToDos: () => import('@/components/ToDos/ToDos'),\n  },\n\n  data() {\n    return {\n      selectedTabIndex: 0,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n  },\n\n  methods: {\n    todoUpdated(todo) {\n      let todoIndex = this.reservation.ToDos.findIndex((t) => t.Id === todo.Id)\n      if (todoIndex > -1) {\n        this.reservation.ToDos.splice(todoIndex, 1)\n      } else {\n        this.reservation.ToDos.push(todo)\n      }\n    },\n\n    todoCreated(newToDo) {\n      this.reservation.ToDos.push(newToDo)\n    },\n\n    todoDeleted(todoToDelete) {\n      let self = this\n      let todoIndex = self.reservation.ToDos.findIndex(\n        (t) => t.Id === todoToDelete.Id\n      )\n      if (todoIndex > -1) {\n        self.reservation.ToDos.splice(todoIndex, 1)\n      }\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationToDos.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationToDos.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationToDos.vue?vue&type=template&id=14a1ae8d\"\nimport script from \"./ReservationToDos.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationToDos.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar has = require('../internals/set-helpers').has;\n\n// Perform ? RequireInternalSlot(M, [[SetData]])\nmodule.exports = function (it) {\n  has(it);\n  return it;\n};\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseFieldTemplate.vue?vue&type=style&index=0&id=331e34b6&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.mTerms)?_c('div',[_c('section',{staticClass:\"section is-small\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"subtitle has-text-centered\"},[_vm._v(_vm._s(_vm.mTerms.Version))])])]),(_vm.mTerms.Changes.length > 0)?_c('section',{staticClass:\"section is-small\"},[_c('div',{staticClass:\"container\"},[_vm._m(0),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.mTerms.Changes)}})])]):_vm._e(),_c('section',{staticClass:\"section is-small\"},[_c('div',{staticClass:\"container\"},[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.mTerms.Text)}})])])]):_vm._e()\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"subtitle\"},[_c('b',[_vm._v(\"Changes: \")])])\n}]\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"mTerms\">\n    <section class=\"section is-small\">\n      <div class=\"container\">\n        <div class=\"subtitle has-text-centered\">{{ mTerms.Version }}</div>\n      </div>\n    </section>\n\n    <section v-if=\"mTerms.Changes.length > 0\" class=\"section is-small\">\n      <div class=\"container\">\n        <div class=\"subtitle\"><b>Changes: </b></div>\n        <div v-html=\"mTerms.Changes\"></div>\n      </div>\n    </section>\n\n    <section class=\"section is-small\">\n      <div class=\"container\">\n        <div v-html=\"mTerms.Text\"></div>\n      </div>\n    </section>\n  </div>\n</template>\n\n<script>\nimport { cleanSource } from '@/utils/objectHelper'\n\nimport termsProvider from '@/providers/terms'\n\nexport default {\n  components: {},\n\n  props: {\n    termId: {\n      type: Number,\n      default: 0,\n    },\n\n    terms: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      mTerms: null,\n    }\n  },\n\n  computed: {},\n\n  created() {\n    this.mTerms = cleanSource(this.terms);\n\n    this.getTermsData();\n  },\n\n  methods: {\n    getTermsData() {\n      termsProvider.methods.getTermsById(this.termId).then((response) => {\n        if (response.status === 200) {\n          this.mTerms = response.data\n        }\n      })\n    },\n  },\n}\n</script>\n\n<style></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TermSummary.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TermSummary.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TermSummary.vue?vue&type=template&id=bfeb1a60\"\nimport script from \"./TermSummary.vue?vue&type=script&lang=js\"\nexport * from \"./TermSummary.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DrawerTerms.vue?vue&type=style&index=0&id=91bcb310&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[_c('div',{staticClass:\"slider-wrapper\"},[_c('div',{staticClass:\"title is-3\"},[_c('span',{staticClass:\"has-text-weight-bold\"},[_vm._v(_vm._s(_vm._f(\"dateFormat\")(_vm._f(\"parseIsoDateStringToDate\")(_vm.reservationDate.Date),_vm.$i18n.locale)))]),_c('span',{staticClass:\"mx-4\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'arrow-right']}})],1),(_vm.checkCounter > 0)?_c('span',{staticClass:\"has-text-weight-bold\"},[_vm._v(_vm._s(_vm._f(\"dateFormat\")(_vm.date,_vm.$i18n.locale)))]):_vm._e(),(_vm.checkCounter === 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyDate.label_SelectDate')))]):_vm._e()]),_c('transition-group',{staticClass:\"div-slider\",attrs:{\"tag\":\"div\",\"name\":!_vm.showAlternatives ? 'slideback' : 'slide'}},[(!_vm.showAlternatives)?_c('div',{key:\"1\",staticClass:\"slideContent has-custom-scrollbar\"},[_c('div',{staticClass:\"wrapper-dateSelector mb-4\"},[_c('div',{staticClass:\"field-date field\"},[_c('v-date-picker',{attrs:{\"mode\":\"single\",\"value\":_vm.date,\"from-page\":_vm.openCalendarMonth,\"columns\":4,\"is-inline\":true,\"is-required\":true,\"disabled-dates\":_vm.disabledDates},on:{\"dayclick\":_vm.checkAvailability}})],1)]),(!_vm.dateChanged)?_c('div',{staticClass:\"mb-6\"},[_c('Message',{scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('span',{staticClass:\"icon-text\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'info-circle']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.message_SelectNewDate')))])])]},proxy:true}],null,false,1358220379)})],1):[_c('div',{staticClass:\"mb-6\"},[(_vm.showDateAlreadyExistsWarning)?_c('div',[_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservation.CopyDate.warning_DuplicateDate'),\"type\":\"is-danger\"}})],1):_vm._e(),_c('div',{staticClass:\"p-3 spaces-container has-background-white\"},[_c('div',{staticClass:\"mb-1 row row-space row-space-heading has-text-weight-bold\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyDate.header_Space'))+\" \")]),_c('div',{staticClass:\"is-hidden-touch\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyDate.header_SeatsConfiguration'))+\" \")]),_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyDate.header_Price'))+\" \")]),_c('div',{staticClass:\"has-text-left\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyDate.header_Available'))+\" \")]),_c('div',[_vm._v(\" \")])]),_vm._l((_vm.spaces),function(space){return _c('div',{key:space.Id,staticClass:\"row row-space py-3\"},[_c('div',{staticClass:\"row-space-content p-1\"},[_c('div',[_vm._v(\" \"+_vm._s(space.SpaceName)+\" \"),_c('div',{staticClass:\"is-hidden-desktop\"},[_vm._v(\" \"+_vm._s(space.Seats)+\"x \"+_vm._s(_vm._f(\"getSettingName\")(space.SettingId))+\" \")])]),_c('div',{staticClass:\"is-hidden-touch\"},[_vm._v(\" \"+_vm._s(space.Seats)+\"x \"+_vm._s(_vm._f(\"getSettingName\")(space.SettingId))+\" \")]),_c('div',[_c('p',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(space.PricePerSeat,_vm.locationState.Settings.LanguageCulture, space.Currency)))])]),_c('div',[(_vm.isCheckingDate)?_c('span',{staticClass:\"is-size-5\",class:{ 'is-loading': _vm.isCheckingDate }},[_vm._v(\" \")]):_vm._e(),(!_vm.isCheckingDate)?_c('div',[(space.Warnings.length)?_c('div',{staticClass:\"tags\"},_vm._l((space.Warnings),function(warning,wIndex){return _c('span',{key:wIndex,staticClass:\"tag is-danger\"},[_vm._v(\" \"+_vm._s(warning)+\" \"),(_vm.isEmployee)?_c('button',{staticClass:\"delete is-small\",attrs:{\"label\":\"Ignore\"},on:{\"click\":function($event){space.Warnings.splice(\n                                space.Warnings.findIndex((w) => w === warning),\n                                1\n                              )}}}):_vm._e()])}),0):_vm._e(),(!space.Warnings.length)?_c('span',{staticClass:\"icon is-size-5\",class:space.Warnings.length === 0 ? 'has-text-success' : 'has-text-danger'},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', space.Warnings.length === 0 ? 'check' : 'times']}})],1):_vm._e()]):_vm._e()]),_c('div',[(space.Warnings.length > 0)?_c('div',{staticClass:\"field is-grouped is-pulled-right\"},[_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"has-text-link has-icon\",on:{\"click\":function($event){return _vm.setShowAlternatives(space, _vm.index)}}},[_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyReservation.label_ShowAlternatives')))]),_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-right']}})],1)])])]):_vm._e()])]),(_vm.isEmployee && !_vm.isCheckingDate && space.NewPricePerSeat !== space.PricePerSeat)?_c('div',{staticClass:\"mt-1 p-1 is-inline-flex is-align-items-center row-space-message row-space-message-actualPrice has-background-info-light has-text-info-dark\"},[_c('div',{staticClass:\"is-flex-grow-1\"},[_c('i18n',{attrs:{\"path\":\"Components.Reservation.CopyReservation.message_ActualPrice\",\"tag\":\"div\"},scopedSlots:_vm._u([{key:\"price\",fn:function(){return [_c('b',[_vm._v(_vm._s(_vm._f(\"toCurrency\")(space.NewPricePerSeat,_vm.locationState.Settings.LanguageCulture, space.Currency)))])]},proxy:true}],null,true)})],1),_c('div',{staticClass:\"is-flex-shrink-0\"},[_c('div',{staticClass:\"buttons is-right\"},[_c('a',{staticClass:\"button is-small is-ghost\",on:{\"click\":function($event){return _vm.ignoreNewSpacePrice(space)}}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Schedule.ModalConfirmChanges.Button_IgnoreWarning'))+\" \")]),_c('a',{staticClass:\"button is-small is-primary\",on:{\"click\":function($event){return _vm.applyNewSpacePrice(space)}}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Schedule.ModalConfirmChanges.Button_ApplyPrice'))+\" \")])])])]):_vm._e()])})],2)]),(!_vm.showDateAlreadyExistsWarning)?_c('div',{staticClass:\"mb-6\"},[_c('div',{staticClass:\"title is-3\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyDate.title_WhatToCopy')))]),_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.copyOptions),expression:\"copyOptions\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.copyOptions)?_vm._i(_vm.copyOptions,null)>-1:(_vm.copyOptions)},on:{\"change\":function($event){var $$a=_vm.copyOptions,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.copyOptions=$$a.concat([$$v]))}else{$$i>-1&&(_vm.copyOptions=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.copyOptions=$$c}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyDate.label_CopyOptions'))+\" \")]),(_vm.copyOptions)?_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.optionsOriginalPrice),expression:\"optionsOriginalPrice\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.optionsOriginalPrice)?_vm._i(_vm.optionsOriginalPrice,null)>-1:(_vm.optionsOriginalPrice)},on:{\"change\":function($event){var $$a=_vm.optionsOriginalPrice,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.optionsOriginalPrice=$$a.concat([$$v]))}else{$$i>-1&&(_vm.optionsOriginalPrice=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.optionsOriginalPrice=$$c}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyDate.label_KeepOriginalPricing'))+\" \")])]):_vm._e()]),_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.copyNotes),expression:\"copyNotes\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.copyNotes)?_vm._i(_vm.copyNotes,null)>-1:(_vm.copyNotes)},on:{\"change\":function($event){var $$a=_vm.copyNotes,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.copyNotes=$$a.concat([$$v]))}else{$$i>-1&&(_vm.copyNotes=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.copyNotes=$$c}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyDate.label_CopyNotes'))+\" \")])]),_c('div',[_c('label',{staticClass:\"checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.copyProgram),expression:\"copyProgram\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.copyProgram)?_vm._i(_vm.copyProgram,null)>-1:(_vm.copyProgram)},on:{\"change\":function($event){var $$a=_vm.copyProgram,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.copyProgram=$$a.concat([$$v]))}else{$$i>-1&&(_vm.copyProgram=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.copyProgram=$$c}}}}),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.CopyDate.label_CopyProgram'))+\" \")])])]):_vm._e()],_c('div',{staticClass:\"mb-6 buttons is-right\"},[_c('a',{staticClass:\"button is-large is-primary\",class:{ 'is-loading': _vm.isSaving },attrs:{\"disabled\":!_vm.enableCopyButton},on:{\"click\":_vm.addReservationDate}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyDate.button_CopyDate')))])])],2):_vm._e(),(_vm.showAlternatives)?_c('div',{key:\"2\",staticClass:\"slideContent slideContent-alternatives\"},[_c('div',{staticClass:\"backbar\"},[_c('div',{staticClass:\"button-back-container\"},[_c('a',{staticClass:\"button is-outlined\",on:{\"click\":_vm.hideAlternatives}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Form.Control.Back'))}})])]),_c('div',{staticClass:\"box-currentSpace box\"},[_c('div',{staticClass:\"has-text-grey is-size-7\"},[_vm._v(_vm._s(_vm.$t('Components.Reservation.CopyDate.label_CurrentSpace'))+\":\")]),_c('div',{staticClass:\"title is-4 mb-0\"},[_vm._v(\" \"+_vm._s(_vm.selectedSpace.SpaceName)+\" \")]),_c('div',[_c('div',[_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"dateFormat\")(_vm.selectedSpace.StartDate,_vm.$i18n.locale, 'longDateFormat'))+\", \"),_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.selectedSpace.StartMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.selectedSpace.EndMinutes))+\" \")])]),_c('span',[_vm._v(\"| \"+_vm._s(_vm.$tc('Components.Reservation.ModalChangeDate.Text_Seats', _vm.selectedSpace.Seats)))]),_c('span',[_vm._v(\"| \"+_vm._s(_vm._f(\"toCurrency\")(_vm.selectedSpace.PricePerSeat,_vm.$i18n.locale, _vm.selectedSpace.Currency)))])])])])]),_c('hr'),(_vm.isLoadingAlternatives)?_c('ui-loader'):_c('div',{staticClass:\"columns-alternatives\"},_vm._l((_vm.availability?.Locations),function(location){return _c('div',{key:'las' + location.Id},[_c('AvailableLocation',{key:location.Id,staticClass:\"list-availableSpaces\",attrs:{\"availableLocation\":location,\"meetingtypeId\":_vm.reservation.MeetingtypeId,\"showUnavailable\":_vm.isEmployee,\"viewType\":\"list-row\"}})],1)}),0)],1):_vm._e()])],1)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"reservation\">\n    <div class=\"slider-wrapper\">\n      <div class=\"title is-3\">\n        <span class=\"has-text-weight-bold\">{{ reservationDate.Date | parseIsoDateStringToDate | dateFormat($i18n.locale) }}</span>\n        <span class=\"mx-4\">\n          <font-awesome-icon :icon=\"['fas', 'arrow-right']\" />\n        </span>\n        <span\n          v-if=\"checkCounter > 0\"\n          class=\"has-text-weight-bold\"\n          >{{ date | dateFormat($i18n.locale) }}</span\n        >\n        <span v-if=\"checkCounter === 0\">{{ $t('Components.Reservation.CopyDate.label_SelectDate') }}</span>\n      </div>\n\n      <transition-group\n        tag=\"div\"\n        class=\"div-slider\"\n        :name=\"!showAlternatives ? 'slideback' : 'slide'\"\n      >\n        <div\n          v-if=\"!showAlternatives\"\n          key=\"1\"\n          class=\"slideContent has-custom-scrollbar\"\n        >\n          <div class=\"wrapper-dateSelector mb-4\">\n            <div class=\"field-date field\">\n              <v-date-picker\n                mode=\"single\"\n                :value=\"date\"\n                :from-page=\"openCalendarMonth\"\n                :columns=\"4\"\n                :is-inline=\"true\"\n                :is-required=\"true\"\n                :disabled-dates=\"disabledDates\"\n                @dayclick=\"checkAvailability\"\n              >\n              </v-date-picker>\n            </div>\n          </div>\n          <div\n            v-if=\"!dateChanged\"\n            class=\"mb-6\"\n          >\n            <Message>\n              <template #content>\n                <span class=\"icon-text\">\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'info-circle']\" />\n                  </span>\n                  <span>{{ $t('Components.Reservation.CopyReservation.message_SelectNewDate') }}</span>\n                </span>\n              </template>\n            </Message>\n          </div>\n          <template v-else>\n            <div class=\"mb-6\">\n              <div v-if=\"showDateAlreadyExistsWarning\">\n                <Message\n                  :message=\"$t('Components.Reservation.CopyDate.warning_DuplicateDate')\"\n                  type=\"is-danger\"\n                />\n              </div>\n              <div class=\"p-3 spaces-container has-background-white\">\n                <div class=\"mb-1 row row-space row-space-heading has-text-weight-bold\">\n                  <div>\n                    {{ $t('Components.Reservation.CopyDate.header_Space') }}\n                  </div>\n                  <div class=\"is-hidden-touch\">\n                    {{ $t('Components.Reservation.CopyDate.header_SeatsConfiguration') }}\n                  </div>\n                  <div>\n                    {{ $t('Components.Reservation.CopyDate.header_Price') }}\n                  </div>\n                  <div class=\"has-text-left\">\n                    {{ $t('Components.Reservation.CopyDate.header_Available') }}\n                  </div>\n                  <div>&nbsp;</div>\n                </div>\n\n                <div\n                  v-for=\"space in spaces\"\n                  :key=\"space.Id\"\n                  class=\"row row-space py-3\"\n                >\n                  <div class=\"row-space-content p-1\">\n                    <div>\n                      {{ space.SpaceName }}\n                      <div class=\"is-hidden-desktop\">\n                        {{ space.Seats }}x\n                        {{ space.SettingId | getSettingName }}\n                      </div>\n                    </div>\n                    <div class=\"is-hidden-touch\">\n                      {{ space.Seats }}x\n                      {{ space.SettingId | getSettingName }}\n                    </div>\n                    <div>\n                      <p>{{ space.PricePerSeat | toCurrency(locationState.Settings.LanguageCulture, space.Currency) }}</p>\n                    </div>\n                    <div>\n                      <span\n                        v-if=\"isCheckingDate\"\n                        class=\"is-size-5\"\n                        :class=\"{ 'is-loading': isCheckingDate }\"\n                        >&nbsp;</span\n                      >\n                      <div v-if=\"!isCheckingDate\">\n                        <div\n                          v-if=\"space.Warnings.length\"\n                          class=\"tags\"\n                        >\n                          <span\n                            v-for=\"(warning, wIndex) in space.Warnings\"\n                            :key=\"wIndex\"\n                            class=\"tag is-danger\"\n                          >\n                            {{ warning }}\n                            <button\n                              v-if=\"isEmployee\"\n                              @click=\"\n                                space.Warnings.splice(\n                                  space.Warnings.findIndex((w) => w === warning),\n                                  1\n                                )\n                              \"\n                              class=\"delete is-small\"\n                              label=\"Ignore\"\n                            ></button>\n                          </span>\n                        </div>\n                        <span\n                          v-if=\"!space.Warnings.length\"\n                          :class=\"space.Warnings.length === 0 ? 'has-text-success' : 'has-text-danger'\"\n                          class=\"icon is-size-5\"\n                        >\n                          <font-awesome-icon :icon=\"['fas', space.Warnings.length === 0 ? 'check' : 'times']\" />\n                        </span>\n                      </div>\n                    </div>\n                    <div>\n                      <div\n                        v-if=\"space.Warnings.length > 0\"\n                        class=\"field is-grouped is-pulled-right\"\n                      >\n                        <p class=\"control\">\n                          <a\n                            @click=\"setShowAlternatives(space, index)\"\n                            class=\"has-text-link has-icon\"\n                          >\n                            <span>{{ $t('Components.Reservation.CopyReservation.label_ShowAlternatives') }}</span>\n                            <span class=\"icon\"><font-awesome-icon :icon=\"['fas', 'chevron-right']\" /></span>\n                          </a>\n                        </p>\n                      </div>\n                    </div>\n                  </div>\n                  <div\n                    v-if=\"isEmployee && !isCheckingDate && space.NewPricePerSeat !== space.PricePerSeat\"\n                    class=\"mt-1 p-1 is-inline-flex is-align-items-center row-space-message row-space-message-actualPrice has-background-info-light has-text-info-dark\"\n                  >\n                    <div class=\"is-flex-grow-1\">\n                      <i18n\n                        path=\"Components.Reservation.CopyReservation.message_ActualPrice\"\n                        tag=\"div\"\n                      >\n                        <template v-slot:price\n                          ><b>{{ space.NewPricePerSeat | toCurrency(locationState.Settings.LanguageCulture, space.Currency) }}</b></template\n                        >\n                      </i18n>\n                    </div>\n                    <div class=\"is-flex-shrink-0\">\n                      <div class=\"buttons is-right\">\n                        <a\n                          @click=\"ignoreNewSpacePrice(space)\"\n                          class=\"button is-small is-ghost\"\n                        >\n                          {{ $t('Components.Schedule.ModalConfirmChanges.Button_IgnoreWarning') }}\n                        </a>\n                        <a\n                          @click=\"applyNewSpacePrice(space)\"\n                          class=\"button is-small is-primary\"\n                        >\n                          {{ $t('Components.Schedule.ModalConfirmChanges.Button_ApplyPrice') }}\n                        </a>\n                      </div>\n                    </div>\n                  </div>\n                </div>\n              </div>\n            </div>\n\n            <div\n              v-if=\"!showDateAlreadyExistsWarning\"\n              class=\"mb-6\"\n            >\n              <div class=\"title is-3\">{{ $t('Components.Reservation.CopyDate.title_WhatToCopy') }}</div>\n              <div>\n                <label class=\"checkbox\">\n                  <input\n                    type=\"checkbox\"\n                    v-model=\"copyOptions\"\n                  />\n                  {{ $t('Components.Reservation.CopyDate.label_CopyOptions') }}\n                </label>\n\n                <div v-if=\"copyOptions\">\n                  <label class=\"checkbox\">\n                    <input\n                      type=\"checkbox\"\n                      v-model=\"optionsOriginalPrice\"\n                    />\n                    {{ $t('Components.Reservation.CopyDate.label_KeepOriginalPricing') }}\n                  </label>\n                </div>\n              </div>\n\n              <div>\n                <label class=\"checkbox\">\n                  <input\n                    type=\"checkbox\"\n                    v-model=\"copyNotes\"\n                  />\n                  {{ $t('Components.Reservation.CopyDate.label_CopyNotes') }}\n                </label>\n              </div>\n\n              <div>\n                <label class=\"checkbox\">\n                  <input\n                    type=\"checkbox\"\n                    v-model=\"copyProgram\"\n                  />\n                  {{ $t('Components.Reservation.CopyDate.label_CopyProgram') }}\n                </label>\n              </div>\n            </div>\n          </template>\n\n          <div class=\"mb-6 buttons is-right\">\n            <a\n              @click=\"addReservationDate\"\n              :disabled=\"!enableCopyButton\"\n              class=\"button is-large is-primary\"\n              :class=\"{ 'is-loading': isSaving }\"\n              >{{ $t('Components.Reservation.CopyDate.button_CopyDate') }}</a\n            >\n          </div>\n        </div>\n\n        <div\n          v-if=\"showAlternatives\"\n          key=\"2\"\n          class=\"slideContent slideContent-alternatives\"\n        >\n          <div class=\"backbar\">\n            <div class=\"button-back-container\">\n              <a\n                @click=\"hideAlternatives\"\n                class=\"button is-outlined\"\n              >\n                <span class=\"icon is-small\">\n                  <font-awesome-icon :icon=\"['fas', 'chevron-left']\" />\n                </span>\n                <span v-text=\"$t('Form.Control.Back')\"></span>\n              </a>\n            </div>\n            <div class=\"box-currentSpace box\">\n              <div class=\"has-text-grey is-size-7\">{{ $t('Components.Reservation.CopyDate.label_CurrentSpace') }}:</div>\n              <div class=\"title is-4 mb-0\">\n                {{ selectedSpace.SpaceName }}\n              </div>\n              <div>\n                <div>\n                  <span>\n                    {{ selectedSpace.StartDate | dateFormat($i18n.locale, 'longDateFormat') }},\n                    <span>\n                      {{ selectedSpace.StartMinutes | minutesToTime }} -\n                      {{ selectedSpace.EndMinutes | minutesToTime }}\n                    </span>\n                  </span>\n                  <span>| {{ $tc('Components.Reservation.ModalChangeDate.Text_Seats', selectedSpace.Seats) }}</span>\n                  <span>| {{ selectedSpace.PricePerSeat | toCurrency($i18n.locale, selectedSpace.Currency) }}</span>\n                </div>\n              </div>\n            </div>\n          </div>\n          <hr />\n          <ui-loader v-if=\"isLoadingAlternatives\" />\n          <div\n            v-else\n            class=\"columns-alternatives\"\n          >\n            <div\n              v-for=\"location in availability?.Locations\"\n              :key=\"'las' + location.Id\"\n            >\n              <AvailableLocation\n                :key=\"location.Id\"\n                :availableLocation=\"location\"\n                :meetingtypeId=\"reservation.MeetingtypeId\"\n                :showUnavailable=\"isEmployee\"\n                viewType=\"list-row\"\n                class=\"list-availableSpaces\"\n              />\n            </div>\n          </div>\n        </div>\n      </transition-group>\n    </div>\n  </div>\n</template>\n\n<script>\nimport Vue from 'vue';\nimport { mapState, mapMutations } from 'vuex';\nimport { EventBus } from '@/eventbus/event-bus';\nimport availabilityProvider from '@/providers/availability';\nimport reservationProvider from '@/providers/reservation';\nimport { format, isEqual, parseISO } from 'date-fns';\n\nimport VCalendar from 'v-calendar';\nimport { cleanSource } from '../../utils/objectHelper';\n\nVue.use(VCalendar, {});\n\nexport default {\n  components: {\n    AvailableLocation: () => import('@/components/Availability/AvailableLocation'),\n    ReservationSpaceCard: () => import('@/components/Schedule/ReservationSpaceCard'),\n    Message: () => import('@/components/UI/Message')\n  },\n\n  props: {\n    reservationDate: {\n      default: null,\n      type: Object,\n      required: true\n    }\n  },\n\n  data() {\n    return {\n      checkCounter: 0,\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      isCheckingDate: false,\n      isLoadingAlternatives: false,\n      date: new Date(),\n      copySpaces: true,\n      copyOptions: true,\n      copyNotes: true,\n      copyProgram: true,\n      optionsOriginalPrice: true,\n      spaces: [],\n      showAlternatives: false,\n      selectedSpace: null,\n      availability: {},\n      showDateAlreadyExistsWarning: false,\n      openCalendarMonth: { month: new Date().getMonth(), year: new Date().getFullYear() }\n    };\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('reservationStore', ['reservation']),\n\n    isEmployee() {\n      let employee = false;\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true;\n      }\n\n      return employee;\n    },\n\n    disabledDays() {\n      let dates = [];\n\n      if (this.reservation && this.reservation.Dates) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let resDate = this.reservation.Dates[i];\n\n          dates.push(parseISO(resDate.Date));\n        }\n      }\n\n      return dates;\n    },\n\n    disabledDates() {\n      let dates = [];\n\n      if (this.reservation && this.reservation.Dates) {\n        if (this.reservation.Status !== 'Cancelled') {\n          for (let i = 0; i < this.reservation.Dates.filter(rd => rd.Status !== 'Cancelled').length; i++) {\n            let resDate = this.reservation.Dates[i];\n\n            dates.push({\n              start: parseISO(resDate.Date),\n              end: parseISO(resDate.Date)\n            });\n          }\n        }\n\n        if (this.reservation.SetId > 0) {\n          let fitereRes = this.reservation.ReservationSet.filter((r) => r.Status !== 'Cancelled');\n\n          for (let j = 0; j < fitereRes.length; j++) {\n            let set = fitereRes[j];\n\n            dates.push({\n              start: parseISO(set.Date),\n              end: parseISO(set.Date)\n            });\n          }\n        }\n      }\n\n      return dates;\n    },\n\n    allSpacesAvailable() {\n      let allAvailable = false;\n      let checkCounter = 0;\n      let errorCounter = 0;\n\n      for (let j = 0; j < this.spaces.length; j++) {\n        let space = this.spaces[j];\n        if (space.Warnings.length > 0 || space.PricePerSeat !== space.NewPricePerSeat) {\n          errorCounter++;\n        }\n\n        checkCounter++;\n      }\n\n      if (checkCounter > 0 && errorCounter === 0) {\n        allAvailable = true;\n      }\n\n      return allAvailable;\n    },\n\n    enableCopyButton() {\n      return this.allSpacesAvailable && this.dateChanged && !this.showDateAlreadyExistsWarning;\n    },\n\n    dateChanged() {\n      return (this.date && !isEqual(parseISO(this.reservationDate.Date), this.date)) || false;\n    }\n  },\n\n  created() {\n    EventBus.$on('spaceSelected', (space) => {\n      this.updateSelectedSpaceWithAlternative(space);\n    });\n\n    this.date = parseISO(this.reservationDate.Date);\n\n    this.setupCopyData();\n  },\n\n  beforeDestroy() {\n    EventBus.$off('spaceSelected');\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    setupCopyData() {\n      let firstDate = this.reservation.Dates[0];\n      this.openCalendarMonth.month = parseISO(firstDate.Date).getMonth();\n      this.openCalendarMonth.year = parseISO(firstDate.Date).getFullYear();\n\n      for (let j = 0; j < this.reservationDate.Spaces.length; j++) {\n        let space = cleanSource(this.reservationDate.Spaces[j]);\n\n        this.spaces.push({\n          Id: space.Id,\n          ReservationId: space.ReservationId,\n          SpaceId: space.SpaceId,\n          SpaceName: space.SpaceName,\n          StartDate: space.StartDate,\n          StartMinutes: space.StartMinutes,\n          EndDate: space.EndDate,\n          EndMinutes: space.EndMinutes,\n          Seats: space.Seats,\n          SettingId: space.SettingId,\n          PriceId: space.PriceId,\n          Currency: space.Currency,\n          PricePerSeat: space.PricePerSeat,\n          CalculationType: space.CalculationType,\n          TaxPercentage: space.TaxPercentage,\n          Deductible: space.Deductible,\n          UseInTotalSeats: space.UseInTotalSeats,\n          IsAvailable: false,\n          Warnings: [],\n          NewPriceId: 0,\n          NewPricePerSeat: 0,\n          NewPriceTotal: 0,\n          NewCalculationType: ''\n        });\n      }\n    },\n\n    restoreSpaces() {\n      let spaces = [];\n      for (let j = 0; j < this.reservationDate.Spaces.length; j++) {\n        let space = cleanSource(this.reservationDate.Spaces[j]);\n\n        spaces.push({\n          Id: space.Id,\n          ReservationId: space.ReservationId,\n          SpaceId: space.SpaceId,\n          SpaceName: space.SpaceName,\n          StartDate: space.StartDate,\n          StartMinutes: space.StartMinutes,\n          EndDate: space.EndDate,\n          EndMinutes: space.EndMinutes,\n          Seats: space.Seats,\n          SettingId: space.SettingId,\n          PriceId: space.PriceId,\n          Currency: space.Currency,\n          PricePerSeat: space.PricePerSeat,\n          CalculationType: space.CalculationType,\n          TaxPercentage: space.TaxPercentage,\n          Deductible: space.Deductible,\n          UseInTotalSeats: space.UseInTotalSeats,\n          IsAvailable: false,\n          Warnings: [],\n          NewPriceId: 0,\n          NewPricePerSeat: 0,\n          NewPriceTotal: 0,\n          NewCalculationType: ''\n        });\n      }\n      this.spaces = spaces;\n    },\n\n    checkAvailability(val) {\n      this.date = val.date;\n      this.showDateAlreadyExistsWarning = false;\n      let disabledDatesIndex = this.disabledDates.findIndex((d) => {\n        return format(d.start, 'yyyy-MM-dd') === format(val.date, 'yyyy-MM-dd');\n      });\n      if (disabledDatesIndex > -1) {\n        this.showDateAlreadyExistsWarning = true;\n        return;\n      }\n\n      let duplicateDateIndex = this.disabledDays.findIndex((item) => {\n        return format(item, 'yyyy-MM-dd') === format(val.date, 'yyyy-MM-dd');\n      });\n      if (duplicateDateIndex > -1) {\n        this.showDateAlreadyExistsWarning = true;\n        return;\n      }\n\n      // Restore current reservation spaces\n      this.restoreSpaces();\n\n      if (!this.isCheckingDate) {\n        this.isCheckingDate = true;\n        this.showSpaceAlternatives = false;\n\n        let sourceDateISO = this.reservationDate.Date;\n        let newDateISO = format(val.date, 'yyyy-MM-dd');\n\n        reservationProvider.methods\n          .copyReservationDateCheckAvailability(this.reservation.Key, sourceDateISO, newDateISO)\n          .then((response) => {\n            let meetingspaces = response.data;\n\n            for (let i = 0; i < meetingspaces.length; i++) {\n              let m = cleanSource(meetingspaces[i]);\n\n              m.NewPrice = m.PricePerSeat;\n              m.NewPriceTotal = m.PriceTotal;\n\n              let spaceIndex = this.spaces.findIndex((s) => s.SpaceId === m.SpaceId);\n              if (this.spaces[spaceIndex]) {\n                if(!this.isEmployee) {\n                  this.spaces[spaceIndex].PriceId = m.SpacePrice.PriceId\n                  this.spaces[spaceIndex].PricePerSeat = m.PricePerSeat\n                  this.spaces[spaceIndex].CalculationType = m.SpacePrice.CalculationType\n                }\n                this.spaces[spaceIndex].IsAvailable = m.IsAvailable;\n                this.spaces[spaceIndex].Warnings = m.Warnings;\n                this.spaces[spaceIndex].NewPriceId = m.SpacePrice.PriceId;\n                this.spaces[spaceIndex].NewPricePerSeat = m.PricePerSeat;\n                this.spaces[spaceIndex].NewPriceTotal = m.PriceTotal;\n                this.spaces[spaceIndex].NewCalculationType = m.SpacePrice.CalculationType;\n              }\n            }\n          })\n          .finally(() => {\n            this.isCheckingDate = false;\n            this.checkCounter++;\n          });\n      }\n    },\n\n    applyNewSpacePrice(space) {\n      space.PriceId = space.NewPriceId;\n      space.PricePerSeat = space.NewPricePerSeat;\n      space.PriceTotal = space.NewPricePriceTotal;\n    },\n\n    ignoreNewSpacePrice(space) {\n      space.NewPricePerSeat = space.PricePerSeat;\n      space.NewPricePriceTotal = space.PriceTotal;\n    },\n\n    addReservationDate() {\n      if (!this.enableCopyButton || this.isSaving) {\n        return;\n      }\n\n      this.isSaving = true;\n\n      let criteria = {\n        SourceDate: this.reservationDate.Date,\n        NewDate: format(this.date, 'yyyy-MM-dd'),\n        CopySpaces: this.copySpaces,\n        CopyOptions: this.copyOptions,\n        OptionsOriginalPrice: this.optionsOriginalPrice,\n        CopyNotes: this.copyNotes,\n        CopyProgram: this.copyProgram,\n        Spaces: this.spaces\n      };\n\n      reservationProvider.methods\n        .copyReservationDate(this.reservation.Key, criteria)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update reservation store\n            this.setReservation(response.data);\n\n            // Trigger success animation\n            this.isSavingSuccess = true;\n\n            // Send message to be shown as toast on page\n            EventBus.$emit('showToast', {\n              type: 'info',\n              message: 'Date added'\n            });\n\n            // Close drawer\n            EventBus.$emit('dateCopied');\n          }\n        })\n        .finally(() => {\n          this.isSaving = false;\n        });\n    },\n\n    getAlternativeSpaces(space) {\n      if (!this.isLoadingAlternatives) {\n        this.availability = {};\n        this.isLoadingAlternatives = true;\n\n        let countryId = 0;\n        let channelId = this.reservation.ChannelId;\n        let locationId = this.reservation.LocationId;\n        let meetingtypeId = this.reservation.MeetingtypeId;\n        let searchterm = '';\n        let settingId = 0;\n        let newDateIso = this.date ? format(this.date, 'yyyy-MM-dd') : this.reservationDate.Date;\n\n        availabilityProvider.methods\n          .getAvailability(newDateIso, newDateIso, channelId, countryId, locationId, searchterm, meetingtypeId, space.Seats, space.StartMinutes, space.EndMinutes, settingId, 0, 0, 0, -100, this.$i18n.locale)\n          .then((response) => {\n            this.processAvailabilty(response.data);\n          })\n          .finally(() => {\n            this.isLoadingAlternatives = false;\n          });\n      }\n    },\n\n    processAvailabilty(data) {\n      this.availability = {\n        ...data,\n        ...{\n          Locations: data.Locations.map((location) => {\n            return {\n              ...location,\n              Spaces: location.Spaces.filter((availableSpace) => {\n                return !this.spaces.some((existingSpace) => {\n                  return existingSpace.SpaceId === availableSpace.SpaceId;\n                });\n              })\n            };\n          })\n        }\n      };\n    },\n\n    updateSelectedSpaceWithAlternative(space) {\n      let spaceIndex = this.spaces.findIndex((m) => m.Id === this.selectedSpace.Id);\n      if (spaceIndex > -1) {\n        let newSpace = this.spaces[spaceIndex];\n\n        newSpace.SpaceId = space.SpaceId;\n        newSpace.SpaceName = space.SpaceName;\n        newSpace.SpaceImage = space.SpaceImage;\n        newSpace.StartDate = format(this.date, 'yyyy-MM-dd');\n        newSpace.StartMinutes = space.StartMinutes;\n        newSpace.EndDate = format(this.date, 'yyyy-MM-dd');\n        newSpace.EndMinutes = space.EndMinutes;\n        newSpace.SettingId = space.SettingId;\n        newSpace.NewPrice = space.PricePerSeat;\n        newSpace.NewPricePerSeat = space.PricePerSeat;\n        newSpace.NewPriceTotal = space.PriceTotal;\n        newSpace.PricePerSeat = space.PricePerSeat;\n        newSpace.PriceTotal = space.PriceTotal;\n        newSpace.CalculationType = space.CalculationType;\n        newSpace.Crc = space.Crc;\n        newSpace.Hash = space.Hash;\n        newSpace.IsAvailable = true;\n        newSpace.Warnings = [];\n        newSpace.NewPriceId = 0;\n        newSpace.NewPricePerSeat = 0;\n        newSpace.NewPriceTotal = 0;\n        newSpace.NewCalculationType = '';\n\n        Vue.set(this.spaces, spaceIndex, newSpace);\n        this.hideAlternatives();\n      }\n    },\n\n    setShowAlternatives(space) {\n      this.showAlternatives = true;\n      this.selectedSpace = space;\n\n      this.getAlternativeSpaces(space);\n    },\n\n    hideAlternatives() {\n      this.showAlternatives = false;\n      this.selectedSpace = null;\n      this.availability = {};\n    }\n  }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.slider-wrapper {\n  // max-height: 600px;\n\n  .slideContent {\n    &.slideContent-dateSelector {\n      .wrapper-dateSelector {\n        .table-spaces {\n          ::v-deep .message.is-warning {\n            margin-top: 5px;\n            margin-bottom: 0;\n\n            &:first-child {\n              margin-top: 0;\n            }\n\n            .message-body {\n              padding: 8px;\n\n              .wrapper {\n                display: flex;\n                align-items: center;\n\n                span {\n                  &:first-child {\n                    flex-grow: 1;\n                    flex-shrink: 1;\n                  }\n                }\n              }\n            }\n          }\n        }\n      }\n    }\n\n    &.slideContent-alternatives {\n      display: flex;\n      flex-direction: column;\n\n      .backbar {\n        display: flex;\n        flex-grow: 0;\n        flex-shrink: 0;\n        gap: $gap;\n\n        .box-currentSpace {\n          flex-grow: 1;\n          margin: 0;\n        }\n      }\n\n      .columns-alternatives {\n        height: 100%;\n        overflow: hidden;\n\n        .column-alternatives {\n          overflow: auto;\n          overflow-x: hidden;\n          height: 100%;\n\n          .list-availableSpaces {\n            padding: 0 3px;\n          }\n        }\n      }\n    }\n  }\n}\n\n.spaces-container {\n  --w-col-1: 200px;\n  --w-col-2: 170px;\n  --w-col-3: 120px;\n  --w-col-5: 100px;\n  .row-space {\n    container-type: inline-size;\n    @container (width < 1001px) {\n      --w-col-2: 150px;\n    }\n\n    &:not(:first-child) {\n      border-top: 1px solid $grey;\n    }\n\n    &-heading,\n    &-content {\n      display: flex;\n      gap: $gap;\n      &:not(:first-child) {\n        border-top: 1px solid $grey;\n      }\n      > div {\n        &:nth-child(1) {\n          flex-shrink: 0;\n          width: var(--w-col-1);\n        }\n        &:nth-child(2) {\n          flex-shrink: 0;\n          width: var(--w-col-2);\n        }\n        &:nth-child(3) {\n          flex-shrink: 0;\n          width: var(--w-col-3);\n        }\n        &:nth-child(4) {\n          flex-grow: 1;\n        }\n        &:last-child {\n          width: var(--w-col-5);\n        }\n      }\n    }\n\n    &-message {\n      gap: $gap;\n    }\n  }\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CopyDate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CopyDate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CopyDate.vue?vue&type=template&id=5e647516&scoped=true\"\nimport script from \"./CopyDate.vue?vue&type=script&lang=js\"\nexport * from \"./CopyDate.vue?vue&type=script&lang=js\"\nimport style0 from \"./CopyDate.vue?vue&type=style&index=0&id=5e647516&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5e647516\",\n  null\n  \n)\n\nexport default component.exports","/**\n * WebAuthn (passkey) encoding helpers. The server speaks base64url (Fido2); the browser\n * navigator.credentials API speaks ArrayBuffer. These translate between the two and shape the\n * payloads the chp-api passkey endpoints expect.\n */\n\n/**\n * Decode a base64url string (no padding) into an ArrayBuffer.\n */\nexport function base64urlToArrayBuffer(value) {\n  const padding = '='.repeat((4 - (value.length % 4)) % 4)\n  const base64 = (value + padding).replace(/-/g, '+').replace(/_/g, '/')\n  const raw = window.atob(base64)\n  const buffer = new Uint8Array(raw.length)\n  for (let i = 0; i < raw.length; i++) {\n    buffer[i] = raw.charCodeAt(i)\n  }\n  return buffer.buffer\n}\n\n/**\n * Encode an ArrayBuffer into a base64url string (no padding).\n */\nexport function arrayBufferToBase64url(buffer) {\n  const bytes = new Uint8Array(buffer)\n  let str = ''\n  for (let i = 0; i < bytes.length; i++) {\n    str += String.fromCharCode(bytes[i])\n  }\n  return window.btoa(str).replace(/\\+/g, '-').replace(/\\//g, '_').replace(/=+$/, '')\n}\n\n/**\n * Turn server-issued creation options into the shape navigator.credentials.create expects.\n */\nexport function decodeCreationOptions(options) {\n  const publicKey = { ...options }\n  publicKey.challenge = base64urlToArrayBuffer(options.challenge)\n  publicKey.user = { ...options.user, id: base64urlToArrayBuffer(options.user.id) }\n  if (Array.isArray(options.excludeCredentials)) {\n    publicKey.excludeCredentials = options.excludeCredentials.map((credential) => ({\n      ...credential,\n      id: base64urlToArrayBuffer(credential.id)\n    }))\n  }\n  return publicKey\n}\n\n/**\n * Encode the attestation produced by navigator.credentials.create for the register endpoint.\n */\nexport function encodeAttestation(credential) {\n  return {\n    id: credential.id,\n    rawId: arrayBufferToBase64url(credential.rawId),\n    type: credential.type,\n    extensions: credential.getClientExtensionResults(),\n    response: {\n      attestationObject: arrayBufferToBase64url(credential.response.attestationObject),\n      clientDataJSON: arrayBufferToBase64url(credential.response.clientDataJSON)\n    }\n  }\n}\n\n/**\n * Turn server-issued assertion options into the shape navigator.credentials.get expects.\n */\nexport function decodeRequestOptions(options) {\n  const publicKey = { ...options }\n  publicKey.challenge = base64urlToArrayBuffer(options.challenge)\n  if (Array.isArray(options.allowCredentials)) {\n    publicKey.allowCredentials = options.allowCredentials.map((credential) => ({\n      ...credential,\n      id: base64urlToArrayBuffer(credential.id)\n    }))\n  }\n  return publicKey\n}\n\n/**\n * Encode the assertion produced by navigator.credentials.get for the authenticate endpoint.\n */\nexport function encodeAssertion(assertion) {\n  const response = {\n    authenticatorData: arrayBufferToBase64url(assertion.response.authenticatorData),\n    clientDataJSON: arrayBufferToBase64url(assertion.response.clientDataJSON),\n    signature: arrayBufferToBase64url(assertion.response.signature)\n  }\n  if (assertion.response.userHandle) {\n    response.userHandle = arrayBufferToBase64url(assertion.response.userHandle)\n  }\n  return {\n    id: assertion.id,\n    rawId: arrayBufferToBase64url(assertion.rawId),\n    type: assertion.type,\n    extensions: assertion.getClientExtensionResults(),\n    response\n  }\n}\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditItem.vue?vue&type=style&index=0&id=6087ed07&prod&scoped=true&lang=sass\"","'use strict';\nvar globalThis = require('../internals/global-this');\n\nvar globalIsFinite = globalThis.isFinite;\n\n// `Number.isFinite` method\n// https://tc39.es/ecma262/#sec-number.isfinite\n// eslint-disable-next-line es/no-number-isfinite -- safe\nmodule.exports = Number.isFinite || function isFinite(it) {\n  return typeof it == 'number' && globalIsFinite(it);\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservations.ModalCreateInvoice.Modal_Title', {\n      id: _vm.reservation.Id,\n    }),\"buttonLabelConfirm\":_vm.$t('Form.Control.Create'),\"isSaving\":_vm.isSaving,\"isSavingError\":_vm.isSavingError,\"disableSaveButton\":!_vm.canCreateInvoice,\"hideFooterButtons\":_vm.isSavingError,\"onClickCancel\":_vm.close,\"showModal\":_vm.showModal,\"onClickSave\":_vm.createInvoice,\"savingErrorMessage\":_vm.$t('Components.Reservations.ModalCreateInvoice.Message_Error', {\n      errorMessage: _vm.errorMessage,\n    })},on:{\"closeModal\":_vm.close},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{staticClass:\"has-margin-bottom\",domProps:{\"textContent\":_vm._s(\n        _vm.$t('Components.Reservations.ModalCreateInvoice.Text_TypeInvoice')\n      )}}),(_vm.canCreateInvoice)?_c('div',{staticClass:\"tabs is-toggle\"},[_c('ul',[(!_vm.reservation.HasInvoice)?_c('li',{class:{ 'is-active': !_vm.isDeposit }},[_c('a',{on:{\"click\":function($event){_vm.isDeposit = false}}},[_c('span',{domProps:{\"textContent\":_vm._s(\n                _vm.$t('Components.Reservations.ModalCreateInvoice.Label_Regular')\n              )}})])]):_vm._e(),(!_vm.reservation.HasDepositInvoice)?_c('li',{class:{ 'is-active': _vm.isDeposit }},[_c('a',{on:{\"click\":function($event){_vm.isDeposit = true}}},[_c('span',{domProps:{\"textContent\":_vm._s(\n                _vm.$t('Components.Reservations.ModalCreateInvoice.Label_Deposit')\n              )}})])]):_vm._e()])]):_vm._e(),(_vm.canCreateInvoice && _vm.showInvoiceSettingsMessage)?_c('Message',{scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',{staticClass:\"content has-margin-bottom\"},[_c('div',{staticClass:\"has-text-weight-bold\",domProps:{\"textContent\":_vm._s(_vm.$t('Views.Invoices.General.Label_Note'))}}),_c('ul',[(_vm.invoiceSettings.AllowSelfAuthorization)?_c('li',{domProps:{\"innerHTML\":_vm._s(\n                _vm.$t('Views.Invoices.General.Text_AllowSelfAuthorization', {\n                  currencySymbol: _vm.locationState.CurrencySymbol,\n                  amount: _vm.invoiceSettings.NoAuthorizationLowerThen,\n                })\n              )}}):_vm._e(),(_vm.invoiceSettings.AutoEmailAfterAccept)?_c('li',{domProps:{\"innerHTML\":_vm._s(_vm.$t('Views.Invoices.General.Text_AutoEmailAfterAccept'))}}):_vm._e()])]),_c('i18n',{attrs:{\"path\":\"Views.Invoices.General.Text_AdjustInvoiceSettings\",\"tag\":\"div\"},scopedSlots:_vm._u([{key:\"action\",fn:function(){return [_c('a',{on:{\"click\":function($event){return _vm.gotoInvoiceSettings()}}},[_vm._v(_vm._s(_vm.$t('Views.Invoices.General.Link_AdjustInvoiceSettings')))])]},proxy:true}],null,false,2193239385)})]},proxy:true}],null,false,578196443)}):_vm._e(),(_vm.hasZeroVatItems)?_c('Message',{attrs:{\"message\":_vm.$t('Components.Reservations.ModalCreateInvoice.Message_ZeroVatItems'),\"type\":'is-danger'}}):_vm._e()]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"\n      $t('Components.Reservations.ModalCreateInvoice.Modal_Title', {\n        id: reservation.Id,\n      })\n    \"\n    :buttonLabelConfirm=\"$t('Form.Control.Create')\"\n    :isSaving=\"isSaving\"\n    :isSavingError=\"isSavingError\"\n    :disableSaveButton=\"!canCreateInvoice\"\n    :hideFooterButtons=\"isSavingError\"\n    :onClickCancel=\"close\"\n    :showModal=\"showModal\"\n    :onClickSave=\"createInvoice\"\n    @closeModal=\"close\"\n    :savingErrorMessage=\"\n      $t('Components.Reservations.ModalCreateInvoice.Message_Error', {\n        errorMessage: errorMessage,\n      })\n    \"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div\n        class=\"has-margin-bottom\"\n        v-text=\"\n          $t('Components.Reservations.ModalCreateInvoice.Text_TypeInvoice')\n        \"\n      ></div>\n\n      <div\n        v-if=\"canCreateInvoice\"\n        class=\"tabs is-toggle\"\n      >\n        <ul>\n          <li\n            v-if=\"!reservation.HasInvoice\"\n            :class=\"{ 'is-active': !isDeposit }\"\n          >\n            <a @click=\"isDeposit = false\">\n              <span v-text=\"\n                  $t('Components.Reservations.ModalCreateInvoice.Label_Regular')\n                \"></span>\n            </a>\n          </li>\n          <li\n            v-if=\"!reservation.HasDepositInvoice\"\n            :class=\"{ 'is-active': isDeposit }\"\n          >\n            <a @click=\"isDeposit = true\">\n              <span v-text=\"\n                  $t('Components.Reservations.ModalCreateInvoice.Label_Deposit')\n                \"></span>\n            </a>\n          </li>\n        </ul>\n      </div>\n\n      <Message v-if=\"canCreateInvoice && showInvoiceSettingsMessage\">\n        <template v-slot:content>\n          <div class=\"content has-margin-bottom\">\n            <div\n              class=\"has-text-weight-bold\"\n              v-text=\"$t('Views.Invoices.General.Label_Note')\"\n            ></div>\n            <ul>\n              <li\n                v-if=\"invoiceSettings.AllowSelfAuthorization\"\n                v-html=\"\n                  $t('Views.Invoices.General.Text_AllowSelfAuthorization', {\n                    currencySymbol: locationState.CurrencySymbol,\n                    amount: invoiceSettings.NoAuthorizationLowerThen,\n                  })\n                \"\n              ></li>\n              <li\n                v-if=\"invoiceSettings.AutoEmailAfterAccept\"\n                v-html=\"$t('Views.Invoices.General.Text_AutoEmailAfterAccept')\"\n              ></li>\n            </ul>\n          </div>\n          <i18n\n            path=\"Views.Invoices.General.Text_AdjustInvoiceSettings\"\n            tag=\"div\"\n          >\n            <template v-slot:action>\n              <a @click=\"gotoInvoiceSettings()\">{{\n                $t('Views.Invoices.General.Link_AdjustInvoiceSettings')\n              }}</a>\n            </template>\n          </i18n>\n        </template>\n      </Message>\n\n      <Message\n        v-if=\"hasZeroVatItems\"\n        :message=\"\n          $t('Components.Reservations.ModalCreateInvoice.Message_ZeroVatItems')\n        \"\n        :type=\"'is-danger'\"\n      />\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport invoiceProvider from '@/providers/invoice'\nconst Message = () =>\n  import(/* webpackChunkName: \"invoices-list\" */ '@/components/UI/Message')\n\nexport default {\n  name: 'ModalCreateInvoice',\n\n  components: {\n    Message,\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n  },\n\n  data() {\n    return {\n      isDeposit: false,\n      isSaving: false,\n      isSavingError: false,\n      invoiceSettings: null,\n      errorMessage: '',\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('reservationStore', ['reservation']),\n\n    showInvoiceSettingsMessage() {\n      return (\n        this.invoiceSettings &&\n        (this.invoiceSettings.AutoEmailAfterAccept ||\n          this.invoiceSettings.AllowSelfAuthorization)\n      )\n    },\n\n    hasZeroVatItems() {\n      let hasZeroVat = false\n\n      let spaceZeroVatItems = 0;\n      let optionZeroVatItems = 0;\n\n      if (this.reservation && this.reservation.Dates) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let date = this.reservation.Dates[i]\n\n          if (date.Spaces.filter(\n            (s) => s.TaxPercentage === 0 && s.PriceTotal > 0\n          ).length > 0) {\n            spaceZeroVatItems++;\n          }\n\n          if (date.Options.filter(\n            (s) => s.TaxPercentage === 0 && s.PriceTotal > 0\n          ).length > 0) {\n            optionZeroVatItems++;\n          }\n        }\n      }\n\n      if (spaceZeroVatItems > 0 || optionZeroVatItems > 0) {\n        hasZeroVat = true\n      }\n\n      return hasZeroVat\n    },\n\n    canCreateInvoice() {\n      let canCreate = false\n\n      if (!this.locationState.Settings.PreventZeroVatOnInvoice) {\n        canCreate = true\n      }\n\n      if (\n        this.locationState.Settings.PreventZeroVatOnInvoice &&\n        !this.hasZeroVatItems\n      ) {\n        canCreate = true\n      }\n\n      return canCreate\n    },\n  },\n\n  created() {\n    this.getLocationInvoiceSettings()\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    close() {\n      // Don't close modal when creating invoice\n      if (this.isSaving) { return }\n\n      this.onClickCancel()\n    },\n\n    gotoInvoiceSettings() {\n      this.$router.push({ name: 'settings-invoice' })\n    },\n\n    async getLocationInvoiceSettings() {\n      let self = this\n      await invoiceProvider.methods\n        .getLocationInvoiceSettings(this.reservation.LocationId)\n        .then((response) => {\n          self.invoiceSettings = response.data\n        })\n    },\n\n    createInvoice() {\n      let self = this\n\n      if (!self.isCreatingInvoice && self.reservation.HasInvoice === 0) {\n        self.isSaving = true\n\n        invoiceProvider.methods\n          .createReservationInvoice(self.reservation.Key, self.isDeposit)\n          .then((response) => {\n            if (response.status === 200) {\n              let invoice = response.data\n\n              if (self.isDeposit) {\n                self.reservation.HasDepositInvoice = invoice.Id\n              }\n\n              if (!self.isDeposit) {\n                self.reservation.HasInvoice = invoice.Id\n              }\n\n              // Update store\n              self.setReservation(self.reservation)\n\n              // Send message to display toast on screen\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservations.ModalCreateInvoice.Toast_InvoiceCreated'\n                ),\n              })\n\n              EventBus.$emit('newInvoiceCreated', invoice)\n\n              this.onClickCancel()\n            }\n          })\n          .catch((error) => {\n            self.isSavingError = true\n\n            // chp-api v2 reports refusals (already invoiced, PO number missing, etc.)\n            // as RFC 7807 Problem objects with a human-readable title, not { Value }\n            self.errorMessage = error.response?.data?.title || self.$t('General.SavingError')\n          })\n          .finally(() => {\n            self.isSaving = false\n          })\n      }\n    },\n\n    goToInvoice(invoiceId) {\n      this.$router.push({\n        name: `invoices-list-detail`,\n        params: { invoiceId: invoiceId },\n      })\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCreateInvoice.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCreateInvoice.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalCreateInvoice.vue?vue&type=template&id=ed311124\"\nimport script from \"./ModalCreateInvoice.vue?vue&type=script&lang=js\"\nexport * from \"./ModalCreateInvoice.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar aSet = require('../internals/a-set');\nvar add = require('../internals/set-helpers').add;\nvar clone = require('../internals/set-clone');\nvar getSetRecord = require('../internals/get-set-record');\nvar iterateSimple = require('../internals/iterate-simple');\n\n// `Set.prototype.union` method\n// https://tc39.es/ecma262/#sec-set.prototype.union\nmodule.exports = function union(other) {\n  var O = aSet(this);\n  var keysIter = getSetRecord(other).getIterator();\n  var result = clone(O);\n  iterateSimple(keysIter, function (it) {\n    add(result, it);\n  });\n  return result;\n};\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BaseInputField.vue?vue&type=style&index=0&id=56317757&prod&lang=scss&scoped=true\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Reservation.ModalCancelReservation.Header_ModalHeader'),\"isSaving\":_vm.isSaving,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.cancelReservation,\"showModal\":_vm.showModal,\"buttonLabelConfirm\":_vm.$t('Components.Reservation.ModalCancelReservation.Label_Yes'),\"buttonLabelCancel\":_vm.$t('Components.Reservation.ModalCancelReservation.Label_No')},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',[_c('div',[_c('table',{staticClass:\"table is-fullwidth\"},[_c('tbody',[(_vm.terms)?_c('tr',[_c('td',{attrs:{\"colspan\":\"2\"}},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalCancelReservation.Label_TermsApply' ))+\" \"+_vm._s(_vm.terms.Version)+\" \")])]):_vm._e(),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalCancelReservation.Label_CancelReason' ))+\" \")]),_c('td',[_c('div',{staticClass:\"select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReasonId),expression:\"mReasonId\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.mReasonId=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.predefinedReasons),function(predefinedReason){return _c('option',{key:predefinedReason.Id,domProps:{\"value\":predefinedReason.Id}},[_vm._v(\" \"+_vm._s(predefinedReason.Name)+\" \")])}),0)])])]),(_vm.mReasonId === 6)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalCancelReservation.Label_OtherReason' ))+\" \")]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.mReason),expression:\"mReason\"}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.mReason)},on:{\"input\":function($event){if($event.target.composing)return;_vm.mReason=$event.target.value}}})])]):_vm._e(),(_vm.cancelRule)?_c('tr',[_c('td',{staticClass:\"has-text-weight-bold\",attrs:{\"colspan\":\"2\"}},[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalCancelReservation.Label_CancelRuleApplies' ))+\" \"+_vm._s(_vm.cancelRule.Percentage)+\"% \"+_vm._s(_vm.$t('Components.Reservation.ModalCancelReservation.Label_Of'))+\" \"+_vm._s(_vm._f(\"toCurrency\")(_vm.reservation.TotalInclTax, _vm.locationLanguageCulture, _vm.reservation.CurrencyIso ))+\" \")])]):_vm._e(),(_vm.isEmployee)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalCancelReservation.Label_ApplyCancellationFees' ))+\" \")]),_c('td',{staticClass:\"has-text-right\"},[_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:{ 'is-active': !_vm.applyCancelFee }},[_c('a',{on:{\"click\":function($event){return _vm.setApplyCancelFee(false)}}},[_c('span',[_vm._v(_vm._s(_vm.$t('General.No')))])])]),_c('li',{class:{ 'is-active': _vm.applyCancelFee }},[_c('a',{on:{\"click\":function($event){return _vm.setApplyCancelFee(true)}}},[_c('span',[_vm._v(_vm._s(_vm.$t('General.Yes')))])])])])])])]):_vm._e(),(_vm.applyCancelFee && _vm.isEmployee)?_c('tr',[_c('td',[_vm._v(\"Percentage\")]),_c('td',[_c('div',{staticClass:\"field has-addons\"},[_c('p',{staticClass:\"control\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.cancelFeePercentage),expression:\"cancelFeePercentage\",modifiers:{\"number\":true}}],staticClass:\"input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.cancelFeePercentage)},on:{\"input\":function($event){if($event.target.composing)return;_vm.cancelFeePercentage=_vm._n($event.target.value)},\"blur\":function($event){return _vm.$forceUpdate()}}})]),_c('p',{staticClass:\"control\"},[_c('a',{staticClass:\"button is-static\"},[_vm._v(\"%\")])])])])]):_vm._e(),(_vm.isEmployee && _vm.reservation.ReservationSet.length > 0)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t( 'Components.Reservation.ModalEditInvoiceAddress.Label_ChangeAllInSet' ))+\" \")]),_c('td',[_c('div',{staticClass:\"tabs is-toggle is-small\"},[_c('ul',[_c('li',{class:{ 'is-active': _vm.changeAllInSet === false }},[_c('a',{on:{\"click\":function($event){_vm.changeAllInSet = false}}},[_c('span',[_vm._v(_vm._s(_vm.$t( 'General.No' )))])])]),_c('li',{class:{ 'is-active': _vm.changeAllInSet === true }},[_c('a',{on:{\"click\":function($event){_vm.changeAllInSet = true}}},[_c('span',[_vm._v(_vm._s(_vm.$t( 'General.Yes' )))])])])])])])]):_vm._e()])])])])]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"\n      $t('Components.Reservation.ModalCancelReservation.Header_ModalHeader')\n    \"\n    :isSaving=\"isSaving\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"cancelReservation\"\n    :showModal=\"showModal\"\n    :buttonLabelConfirm=\"\n      $t('Components.Reservation.ModalCancelReservation.Label_Yes')\n    \"\n    :buttonLabelCancel=\"\n      $t('Components.Reservation.ModalCancelReservation.Label_No')\n    \"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div>\n        <div>\n          <table class=\"table is-fullwidth\">\n            <tbody>\n              <tr v-if=\"terms\">\n                <td colspan=\"2\">\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservation.Label_TermsApply'\n                    )\n                  }}\n                  {{ terms.Version }}\n                </td>\n              </tr>\n              <tr>\n                <td>\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservation.Label_CancelReason'\n                    )\n                  }}\n                </td>\n                <td>\n                  <div class=\"select\">\n                    <select v-model=\"mReasonId\">\n                      <option\n                        v-for=\"predefinedReason in predefinedReasons\"\n                        :key=\"predefinedReason.Id\"\n                        :value=\"predefinedReason.Id\"\n                      >\n                        {{ predefinedReason.Name }}\n                      </option>\n                    </select>\n                  </div>\n                </td>\n              </tr>\n              <tr v-if=\"mReasonId === 6\">\n                <td>\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservation.Label_OtherReason'\n                    )\n                  }}\n                </td>\n                <td><input type=\"text\" v-model=\"mReason\" class=\"input\" /></td>\n              </tr>\n              <tr v-if=\"cancelRule\">\n                <td class=\"has-text-weight-bold\" colspan=\"2\">\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservation.Label_CancelRuleApplies'\n                    )\n                  }}\n                  {{ cancelRule.Percentage }}%\n                  {{\n                    $t('Components.Reservation.ModalCancelReservation.Label_Of')\n                  }}\n                  {{\n                    reservation.TotalInclTax\n                      | toCurrency(\n                        locationLanguageCulture,\n                        reservation.CurrencyIso\n                      )\n                  }}\n                </td>\n              </tr>\n              <tr v-if=\"isEmployee\">\n                <td>\n                  {{\n                    $t(\n                      'Components.Reservation.ModalCancelReservation.Label_ApplyCancellationFees'\n                    )\n                  }}\n                </td>\n                <td class=\"has-text-right\">\n                  <div class=\"tabs is-toggle is-small\">\n                    <ul>\n                      <li :class=\"{ 'is-active': !applyCancelFee }\">\n                        <a @click=\"setApplyCancelFee(false)\">\n                          <span>{{ $t('General.No') }}</span>\n                        </a>\n                      </li>\n                      \n                      <li :class=\"{ 'is-active': applyCancelFee }\">\n                        <a @click=\"setApplyCancelFee(true)\">\n                          <span>{{ $t('General.Yes') }}</span>\n                        </a>\n                      </li>\n                      \n                    </ul>\n                  </div>\n                </td>\n              </tr>\n              <tr v-if=\"applyCancelFee && isEmployee\">\n                <td>Percentage</td>\n                <td>\n                  <div class=\"field has-addons\">\n                    <p class=\"control\">\n                      <input\n                        type=\"text\"\n                        class=\"input\"\n                        v-model.number=\"cancelFeePercentage\"\n                      />\n                    </p>\n                    <p class=\"control\">\n                      <a class=\"button is-static\">%</a>\n                    </p>\n                  </div>\n                </td>\n              </tr>\n\n              <tr v-if=\"isEmployee && reservation.ReservationSet.length > 0\">\n                <td>\n                  {{\n                    $t(\n                      'Components.Reservation.ModalEditInvoiceAddress.Label_ChangeAllInSet'\n                    )\n                  }}\n                </td>\n                <td>\n                  <div class=\"tabs is-toggle is-small\">\n                    <ul>\n                      <li :class=\"{ 'is-active': changeAllInSet === false }\">\n                        <a @click=\"changeAllInSet = false\">\n                          <span>{{\n                            $t(\n                              'General.No'\n                            )\n                          }}</span>\n                        </a>\n                      </li>\n                      <li :class=\"{ 'is-active': changeAllInSet === true }\">\n                        <a @click=\"changeAllInSet = true\">\n                          <span>{{\n                            $t(\n                              'General.Yes'\n                            )\n                          }}</span>\n                        </a>\n                      </li>\n                    </ul>\n                  </div>\n                </td>\n              </tr>\n            </tbody>\n          </table>\n        </div>\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { EventBus } from '@/eventbus/event-bus'\nimport { mapState, mapMutations, mapGetters } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: false,\n      type: Boolean,\n    },\n  },\n\n  data() {\n    return {\n      cancelruleId: 0,\n      changeAllInSet: false,\n      applyCancelFee: false,\n      cancelFeePercentage: 0,\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      mReasonId: 0,\n      mReason: '',\n      mReservation: null,\n      predefinedReasons: [],\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n    ...mapGetters('locationStore', ['locationLanguageCulture']),\n\n    terms() {\n      let terms = null\n\n      if (\n        this.reservation &&\n        this.reservation.ReservationTerms &&\n        this.reservation.ReservationTerms.BookingTerm\n      ) {\n        terms = this.reservation.ReservationTerms.BookingTerm\n      }\n\n      return terms\n    },\n\n    cancelRule() {\n      let cancelRule = null\n      let totalSeats = this.reservation.TotalSeats\n      let hoursUntilStart = this.reservation.HoursUntilStart\n      if (hoursUntilStart < 0) {\n        hoursUntilStart = 0\n      }\n\n      if (this.terms && this.terms.CancelRules.length > 0) {\n        let cancelRules = this.terms.CancelRules.filter(\n          (cr) => cr.MeetingtypeId == this.reservation.MeetingtypeId\n        )\n\n        if (\n          cancelRules.filter((cr) => cr.MinSeats > -1 || cr.MaxSeats > -1)\n            .length > 0\n        ) {\n          cancelRules = cancelRules.filter((cr) => totalSeats <= cr.MaxSeats)\n        }\n\n        cancelRules = cancelRules.filter(\n          (cr) => cr.HoursUntilStart >= hoursUntilStart\n        )\n\n        let maxValue = Math.min.apply(\n          Math,\n          cancelRules.map(function (cr) {\n            return cr.HoursUntilStart\n          })\n        )\n        cancelRule = cancelRules.find(function (cr) {\n          return cr.HoursUntilStart == maxValue\n        })\n      }\n\n      return cancelRule\n    },\n  },\n\n  created() {\n    this.mReservation = JSON.parse(JSON.stringify(this.reservation))\n\n    this.predefinedReasons.push({\n      Id: 0,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservation.Reason_NoReasonSpecified'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 1,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservation.Reason_NoParticipants'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 2,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservation.Reason_FoundCheaperLocation'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 3,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservation.Reason_OtherRegion'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 4,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservation.Reason_MeetingIsCancelled'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 5,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservation.Reason_MeetingIsRescheduled'\n      ),\n    })\n    this.predefinedReasons.push({\n      Id: 6,\n      Name: this.$i18n.t(\n        'Components.Reservation.ModalCancelReservation.Reason_Other'\n      ),\n    })\n\n    if (!this.isEmployee) {\n      this.setApplyCancelFee(true)\n    }\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    setApplyCancelFee(apply) {\n      this.applyCancelFee = apply\n      this.cancelruleId = apply ? (this.cancelRule ? this.cancelRule.Id : 0) : 0\n      this.cancelFeePercentage = apply\n        ? this.cancelRule\n          ? this.cancelRule.Percentage\n          : 0\n        : 0\n    },\n\n    cancelReservation() {\n      let self = this\n      // Do saving then close modal\n      if (!self.isSaving) {\n        self.isSaving = true\n\n        reservationProvider.methods\n          .cancelReservation(\n            self.mReservation.Key,\n            self.mReasonId,\n            self.mReason,\n            self.cancelruleId,\n            self.applyCancelFee,\n            self.cancelFeePercentage,\n            self.changeAllInSet\n          )\n          .then((response) => {\n            if (response.status === 200) {\n              self.isSavingSuccess = true\n\n              // Update reservation store\n              self.setReservation(response.data)\n              EventBus.$emit('cancelled', this.mReservation)\n\n              // Send message to display toast on screen\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Reservation.ModalCancelReservation.Toast_ReservationCancelled'\n                ),\n              })\n\n              this.onClickCancel()\n            }\n          })\n          .catch((error) => {\n            self.isSavingError = true\n          })\n          .finally(() => {\n            self.isSaving = false\n          })\n      }\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCancelReservation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalCancelReservation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalCancelReservation.vue?vue&type=template&id=317db1ec\"\nimport script from \"./ModalCancelReservation.vue?vue&type=script&lang=js\"\nexport * from \"./ModalCancelReservation.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n  // lazy load so that environments that need to polyfill have a chance to do so\n  if (!getRandomValues) {\n    // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n    // find the complete implementation of crypto (msCrypto) on IE11.\n    getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n    if (!getRandomValues) {\n      throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n    }\n  }\n\n  return getRandomValues(rnds8);\n}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n  return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n  byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n  var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n  // Note: Be careful editing this code!  It's been tuned for performance\n  // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n  var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID.  If this throws, it's likely due to one\n  // of the following:\n  // - One or more input array values don't map to a hex octet (leading to\n  // \"undefined\" in the uuid)\n  // - Invalid input values for the RFC `version` or `variant` fields\n\n  if (!validate(uuid)) {\n    throw TypeError('Stringified UUID is invalid');\n  }\n\n  return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n  options = options || {};\n  var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n  rnds[6] = rnds[6] & 0x0f | 0x40;\n  rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n  if (buf) {\n    offset = offset || 0;\n\n    for (var i = 0; i < 16; ++i) {\n      buf[offset + i] = rnds[i];\n    }\n\n    return buf;\n  }\n\n  return stringify(rnds);\n}\n\nexport default v4;","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.reservation)?_c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":\"extra-large\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showTermSummary)?_c('TermSummary',{attrs:{\"termId\":_vm.termId,\"terms\":_vm.terms}}):_vm._e()]},proxy:true}],null,false,2929936871)}):_vm._e(),_c('div',{staticClass:\"actionBar has-background-white-ter p-4 has-margin-bottom has-text-centered\"},[_c('div',{staticClass:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationFinalize.header'))+\" \")]),(_vm.showPoNumber)?_c('div',{staticClass:\"my-4\"},[_c('div',{staticClass:\"columns is-centered\"},[_c('div',{staticClass:\"column is-half is-vcentered\"},[_c('div',{staticClass:\"my-2\"},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationFinalize.label_WaitingForPoNumber'))+\" \")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.poNumber),expression:\"poNumber\"}],staticClass:\"input\",attrs:{\"type\":\"text\",\"placeholder\":\"\"},domProps:{\"value\":(_vm.poNumber)},on:{\"input\":function($event){if($event.target.composing)return;_vm.poNumber=$event.target.value}}})])])]):_vm._e(),(_vm.showTerms)?_c('div',{staticClass:\"mb-4\"},[_c('div',{staticClass:\"has-text-centered\"},[_c('div',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationFinalize.label_NotYetAgreedToTerms')))]),_c('div',{staticClass:\"my-2\"},_vm._l((_vm.reservationTerms),function(terms,index){return _c('div',{key:'t-'+ index,staticClass:\"is-size-7 has-text-weight-light is-italic has-text-grey\"},[_c('a',{on:{\"click\":function($event){return _vm.setShowBookingTermSummary(terms)}}},[_vm._v(_vm._s(terms.TermsType)+\" \"+_vm._s(terms.Terms.ItemName))])])}),0),_c('BaseCheckbox',{staticClass:\"has-text-left\",attrs:{\"label\":_vm.$t('Components.Reservation.ReservationFinalize.label_AgreeToTerms')},model:{value:(_vm.hasAgreedToTerms),callback:function ($$v) {_vm.hasAgreedToTerms=$$v},expression:\"hasAgreedToTerms\"}})],1)]):_vm._e(),_c('a',{staticClass:\"button is-primary\",class:{ 'is-loading': _vm.isSaving },attrs:{\"disabled\":(_vm.blockOnTerms || _vm.blockOnPoNumber) || _vm.isSaving},on:{\"click\":_vm.finalizeReservation}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationFinalize.button_ConfirmReservation')))])])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=reservation>\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      drawerSize=\"extra-large\"\n    >\n      <template v-slot:content>\n        <TermSummary\n          v-if=\"showTermSummary\"\n          :termId=\"termId\"\n          :terms=\"terms\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <div class=\"actionBar has-background-white-ter p-4 has-margin-bottom has-text-centered\">\n      <div class=\"title\">\n        {{ $t('Components.Reservation.ReservationFinalize.header') }}\n      </div>\n\n      <div\n        v-if=\"showPoNumber\"\n        class=\"my-4\"\n      >\n        <div class=\"columns is-centered\">\n          <div class=\"column is-half is-vcentered\">\n            <div class=\"my-2\">\n              {{ $t('Components.Reservation.ReservationFinalize.label_WaitingForPoNumber') }}\n            </div>\n\n            <input\n              type=\"text\"\n              class=\"input\"\n              v-model=\"poNumber\"\n              placeholder=\"\"\n            />\n          </div>\n        </div>\n      </div>\n\n      <div\n        v-if=\"showTerms\"\n        class=\"mb-4\"\n      >\n        <div class=\"has-text-centered\">\n          <div>{{ $t('Components.Reservation.ReservationFinalize.label_NotYetAgreedToTerms') }}</div>\n          <div class=\"my-2\">\n            <div\n              v-for=\"(terms, index) in reservationTerms\"\n              :key=\"'t-'+ index\"\n              class=\"is-size-7 has-text-weight-light is-italic has-text-grey\"\n            >\n              <a @click=\"setShowBookingTermSummary(terms)\">{{ terms.TermsType }} {{ terms.Terms.ItemName }}</a>\n            </div>\n          </div>\n\n          <BaseCheckbox\n            v-model=\"hasAgreedToTerms\"\n            class=\"has-text-left\"\n            :label=\"$t('Components.Reservation.ReservationFinalize.label_AgreeToTerms')\"\n          />\n\n        </div>\n      </div>\n\n      <a\n        @click=\"finalizeReservation\"\n        class=\"button is-primary\"\n        :class=\"{ 'is-loading': isSaving }\"\n        :disabled=\"(blockOnTerms || blockOnPoNumber) || isSaving\"\n      >{{ $t('Components.Reservation.ReservationFinalize.button_ConfirmReservation') }}</a>\n    </div>\n\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  components: {\n    BaseCheckbox: () => import('@/components/UI/Form/BaseCheckbox'),\n    TermSummary: () => import('@/components/Terms/TermSummary')\n  },\n\n  props: {\n\n  },\n\n  data() {\n    return {\n      drawerTitle: '',\n      hasAgreedToTerms: false,\n      isSaving: false,\n      poNumber: '',\n      showSideDrawer: false,\n      showTermSummary: false,\n      termsId: 0,\n      terms: null,\n    }\n  },\n\n  mounted() {\n  },\n\n  created() {\n    if (this.reservation && this.reservation.Terms) {\n      this.hasAgreedToTerms = this.reservationTerms.Accepted;\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n\n    reservationTerms() {\n      let terms = [];\n\n      if (this.reservation && this.reservation.ReservationTerms && this.reservation.ReservationTerms.length > 0) {\n        terms = this.reservation.ReservationTerms;\n      }\n\n      return terms;\n    },\n\n    blockOnPoNumber() {\n      let block = false;\n\n      if (this.reservation &&\n        this.reservation.Status === 'AwaitingPoNumber' &&\n        this.poNumber.length === 0) {\n        block = true;\n      }\n\n      return block;\n    },\n\n    blockOnTerms() {\n      let block = false;\n\n      let termsAccepted = true;\n      for (let i = 0; i < this.reservationTerms.length; i++) {\n        if (!this.reservationTerms[i].Accepted) {\n          termsAccepted = false;\n          break;\n        }\n      }\n\n      if (!termsAccepted && !this.hasAgreedToTerms) {\n        block = true;\n      }\n\n      return block;\n    },\n\n    showPoNumber() {\n      let block = false;\n\n      if (this.reservation &&\n        this.reservation.Status === 'AwaitingPoNumber' ||\n        (this.reservation.PoRequired && this.reservation.InvoiceAddress.PoNumber.length === 0)) {\n        block = true;\n      }\n\n      return block;\n    },\n\n    showTerms() {\n      let block = false;\n\n      for (let i = 0; i < this.reservationTerms.length; i++) {\n        if (!this.reservationTerms[i].Accepted) {\n          block = true;\n          break;\n        }\n      }\n\n      return block;\n    }\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    finalizeReservation() {\n      if (this.isSaving || (this.blockOnTerms || this.blockOnPoNumber)) {\n        return;\n      }\n\n      this.isSaving = true;\n\n      let data = {\n        PoNumber: this.poNumber,\n        TermsAgreement: {\n          HasAgreed: this.hasAgreedToTerms\n        }\n      };\n\n      reservationProvider.methods.finalizeReservation(this.reservation.Key, data)\n        .then((response) => {\n          if (response.status === 200) {\n            this.setReservation(response.data);\n          }\n          this.$emit('reservationFinalized')\n        })\n        .finally(() => {\n          this.isSaving = false;\n        })\n    },\n\n    setShowBookingTermSummary(terms) {\n      this.drawerTitle = 'Booking terms';\n      this.showSideDrawer = true;\n      this.showTermSummary = true;\n\n      this.termId = terms.TermsId;\n      this.terms = terms.Terms;\n    },\n\n    hideDrawer() {\n      this.termId = 0;\n      this.terms = null;\n      this.drawerTitle = '';\n      this.showSideDrawer = false;\n\n      this.showTermSummary = false;\n    },\n  },\n\n  watch: {\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n</style>","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationFinalize.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationFinalize.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationFinalize.vue?vue&type=template&id=0af2faf0&scoped=true\"\nimport script from \"./ReservationFinalize.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationFinalize.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"0af2faf0\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Program.vue?vue&type=style&index=0&id=ba52476a&prod&scoped=true&lang=sass\"","'use strict';\nvar $ = require('../internals/export');\nvar numberIsFinite = require('../internals/number-is-finite');\n\n// `Number.isFinite` method\n// https://tc39.es/ecma262/#sec-number.isfinite\n$({ target: 'Number', stat: true }, { isFinite: numberIsFinite });\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TransitionExpand.vue?vue&type=style&index=0&id=3deb10ec&prod&scoped=true&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t(\n      'Components.Settings.Reservations.ModalAddReservationMailText.Modal_Title'\n    ),\"modalSize\":\"large\",\"isSaving\":_vm.isSaving,\"isSavingSuccess\":_vm.isSavingSuccess,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError || _vm.isSavingSuccess,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.saveReservationMailText,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',[_c('base-input-field',{attrs:{\"label\":_vm.$t(\n            'Components.Settings.Reservations.ModalAddReservationMailText.Label_Name'\n          )},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}),_c('div',{staticClass:\"columns is-multiline\"},_vm._l((_vm.newMailTexts),function(newMailText,index){return _c('div',{key:'column' + index,staticClass:\"column is-half\"},[_c('p',[_vm._v(_vm._s(newMailText.Language))]),_c('div',{staticClass:\"field\"},[_c('div',{staticClass:\"control\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(newMailText.Subject),expression:\"newMailText.Subject\"}],staticClass:\"input\",attrs:{\"type\":\"text\",\"placeholder\":\"Subject\"},domProps:{\"value\":(newMailText.Subject)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(newMailText, \"Subject\", $event.target.value)}}})])]),_c('div',{staticClass:\"field\"},[_c('div',{staticClass:\"control\"},[_c('ui-text-editor',{attrs:{\"id\":'editor' + index},model:{value:(newMailText.Body),callback:function ($$v) {_vm.$set(newMailText, \"Body\", $$v)},expression:\"newMailText.Body\"}})],1)])])}),0)],1)]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"\n      $t(\n        'Components.Settings.Reservations.ModalAddReservationMailText.Modal_Title'\n      )\n    \"\n    modalSize=\"large\"\n    :isSaving=\"isSaving\"\n    :isSavingSuccess=\"isSavingSuccess\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError || isSavingSuccess\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"saveReservationMailText\"\n    :showModal=\"showModal\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div>\n        <base-input-field\n          :label=\"\n            $t(\n              'Components.Settings.Reservations.ModalAddReservationMailText.Label_Name'\n            )\n          \"\n          v-model=\"name\"\n        />\n\n        <div class=\"columns is-multiline\">\n          <div\n            v-for=\"(newMailText, index) in newMailTexts\"\n            :key=\"'column' + index\"\n            class=\"column is-half\"\n          >\n            <p>{{ newMailText.Language }}</p>\n            <div class=\"field\">\n              <div class=\"control\">\n                <input\n                  class=\"input\"\n                  type=\"text\"\n                  placeholder=\"Subject\"\n                  v-model=\"newMailText.Subject\"\n                />\n              </div>\n            </div>\n            <div class=\"field\">\n              <div class=\"control\">\n                <ui-text-editor\n                  :id=\"'editor' + index\"\n                  v-model=\"newMailText.Body\"\n                ></ui-text-editor>\n              </div>\n            </div>\n          </div>\n        </div>\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport mailProvider from '@/providers/mail'\n\nconst baseInputField = () => import('@/components/UI/Form/BaseInputField')\n//const Message = () => import('@/components/UI/Message')\n\nexport default {\n  components: {\n    'base-input-field': baseInputField,\n    //message: Message\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n\n    meetingtypeId: {\n      type: Number,\n      default: 0,\n    },\n  },\n\n  data() {\n    return {\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      name: '',\n      newMailTexts: [],\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('settingsStore', ['reservationMailTexts']),\n  },\n\n  created() {\n    for (let i = 0; i < this.locationState.Languages.length; i++) {\n      this.newMailTexts.push({\n        Id: 0,\n        TypeId: 'Location',\n        ItemId: this.locationState.Id,\n        MeetingtypeId: this.meetingtypeId,\n        Language: this.locationState.Languages[i].Language,\n        MailType: 'LocationReservationCustom',\n        Name: '',\n        Subject: '',\n        Body: '',\n      })\n    }\n  },\n\n  methods: {\n    ...mapMutations('settingsStore', ['setReservationMailTexts']),\n\n    saveReservationMailText() {\n      let self = this\n\n      if (!self.isSavingSuccess) {\n        self.isSaving = true\n\n        for (let i = 0; i < self.newMailTexts.length; i++) {\n          self.newMailTexts[i].Name = self.name\n        }\n\n        let mMailTexts = JSON.parse(JSON.stringify(self.reservationMailTexts))\n        for (let i = 0; i < self.newMailTexts.length; i++) {\n          mMailTexts.push(JSON.parse(JSON.stringify(self.newMailTexts[i])))\n        }\n        mailProvider.methods\n          .saveLocationReservationMailTexts(self.locationState.Id, mMailTexts)\n          .then((response) => {\n            if (response.status === 200) {\n              self.setReservationMailTexts(response.data)\n\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Settings.MailTexts.Toast_MailAdded'\n                ),\n              })\n\n              self.onClickCancel()\n            }\n          })\n          .catch((e) => {\n            //console.log(error.response)\n            self.isSavingError = true\n          })\n          .finally(() => {\n            self.isSaving = false\n          })\n      }\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalAddReservationMailText.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalAddReservationMailText.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalAddReservationMailText.vue?vue&type=template&id=dc2531c6\"\nimport script from \"./ModalAddReservationMailText.vue?vue&type=script&lang=js\"\nexport * from \"./ModalAddReservationMailText.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"drawerSize\":\"large\",\"position\":\"right\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showCustomerSummary)?_c('div',[_c('CustomerSummary',{attrs:{\"customerId\":_vm.reservation.CustomerId,\"locationId\":_vm.reservation.LocationId,\"showEditLink\":false}}),_c('Notes',{attrs:{\"viewType\":'small',\"typeId\":'Customer',\"itemId\":_vm.reservation.CustomerId,\"linkTypeId\":'Customer',\"linkItemId\":_vm.reservation.CustomerId}})],1):_vm._e(),(_vm.showCompanySummary)?_c('CompanySummary',{attrs:{\"companyId\":_vm.reservation.CompanyId,\"locationId\":_vm.reservation.LocationId}}):_vm._e(),(_vm.showVoucherSummary)?_c('VoucherSummary',{attrs:{\"voucherId\":_vm.itemId}}):_vm._e()]},proxy:true}],null,false,370939653)}):_vm._e(),(_vm.showEditData)?_c('ModalEditBasicData',{attrs:{\"showModal\":_vm.showEditData,\"onClickCancel\":_vm.hideModal,\"isEmployee\":_vm.isEmployee}}):_vm._e(),(_vm.showReviveReservation)?_c('ModalReviveReservation',{attrs:{\"showModal\":_vm.showReviveReservation,\"onClickCancel\":_vm.hideModal}}):_vm._e(),_c('ui-section-header',{attrs:{\"showEdit\":!_vm.isLocked,\"editFunction\":_vm.setShowEditData,\"editLabel\":_vm.$t('Components.Reservation.BasicData.Link_Edit')},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(_vm._s(_vm.$t('Components.Reservation.BasicData.Section_Title')))]},proxy:true}])}),_c('table',{staticClass:\"table is-fullwidth\"},[_c('tbody',[(_vm.reservation.Type === 'Proposal')?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_Proposal')))]),_c('td',[(_vm.reservation.HasProposal > 0)?_c('span',[_c('span',{staticClass:\"mr-1\"},[_vm._v(\"#\"+_vm._s(_vm.reservation.HasProposal))]),_c('span',{staticClass:\"mr-1\"},[_vm._v(_vm._s(_vm.$t('Components.Proposals.ProposalList.Status_' + _vm.reservation.ProposalStatus)))]),(_vm.reservation.ProposalPublicationStatus === 'Published')?_c('span',[_vm._v(\"- Published\")]):_vm._e(),(_vm.reservation.ProposalPublicationStatus !== 'Published')?_c('span',[_vm._v(\"- Not published\")]):_vm._e(),(_vm.reservation.ProposalSecondOption)?_c('span',{staticClass:\"tag is-link is-light ml-2\"},[_vm._v(_vm._s(_vm.$t('Components.Proposals.ProposalList.Label_SecondOption')))]):_vm._e()]):_vm._e(),(_vm.reservation.HasProposal === 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_NoProposal')))]):_vm._e()])]):_vm._e(),(_vm.reservation.TenderId > 0)?_c('tr',[_c('td',[_vm._v(\"RFP\")]),_c('td',[_vm._v(_vm._s(_vm.reservation.TenderId))])]):_vm._e(),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.BasicData.Label_Name'))+\" \")]),_c('td',[_c('span',[_vm._v(_vm._s(_vm.reservation.Name))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.BasicData.Label_Profile'))+\" \")]),_c('td',[(_vm.isEmployee && !_vm.isDraft)?_c('a',{staticClass:\"link\",on:{\"click\":function($event){return _vm.setShowCustomerSummary()}}},[_vm._v(_vm._s(_vm.reservation.ProfileName))]):_c('span',[_vm._v(_vm._s(_vm.reservation.ProfileName))])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.BasicData.Label_Company'))+\" \")]),_c('td',[(_vm.reservation.CompanyId > 0)?_c('span',[(_vm.isEmployee && !_vm.isDraft)?_c('a',{staticClass:\"link\",on:{\"click\":function($event){return _vm.setShowCompanySummary()}}},[_c('span',[_vm._v(_vm._s(_vm.reservation.CompanyName))])]):_c('span',[_vm._v(_vm._s(_vm.reservation.CompanyName))])]):_vm._e()])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.BasicData.Label_Lead')))]),_c('td',[_vm._v(_vm._s(_vm.reservation.LeadName))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('Components.Reservation.BasicData.Label_EventType')))]),_c('td',[_vm._v(_vm._s(_vm.reservation.EventTypeName))])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.BasicData.Label_Status'))+\" \")]),_c('td',[_c('div',[_c('span',[_vm._v(_vm._s(_vm.reservationStatus))]),(_vm.isEmployee && _vm.reservation.StatusId === 3)?_c('span',{staticClass:\"has-margin-left\"},[_c('a',{staticClass:\"is-small\",on:{\"click\":_vm.setShowReviveReservation}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'heartbeat']}})],1),_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.BasicData.Link_Revive'))+\" \")])]):_vm._e()])])]),(_vm.reservation.StatusId === 3)?_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.BasicData.Label_CancelReason'))+\" \")]),_c('td',[(_vm.reservation.Cancel)?_c('div',[(_vm.reservation.Cancel.ReasonType === 'Other')?_c('div',[_vm._v(\" \"+_vm._s(_vm.reservation.Cancel.Reason)+\" \")]):_c('div',[_vm._v(\" \"+_vm._s(_vm.$t(`Components.Reservation.BasicData.CancelText_${_vm.reservation.Cancel.ReasonType}`))+\" \")])]):_vm._e()])]):_vm._e(),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.BasicData.Label_Language'))+\" \")]),_c('td',[_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('LanguageLabels.Language' + _vm.reservation.LanguageId))+\" \")])])]),_c('tr',[_c('td',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Reservation.BasicData.Label_Voucher'))+\" \")]),_c('td',[(_vm.isLocked)?[_vm._v(\" \"+_vm._s(_vm.voucherName)+\" \")]:_c('CheckVoucher',{attrs:{\"reservation\":_vm.reservation,\"isLocked\":_vm.isLocked},on:{\"reservationVoucherApplied\":_vm.reservationVoucherApplied,\"showVoucherSummary\":_vm.setShowVoucherSummary}})],2)])])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      drawerSize=\"large\"\n      position=\"right\"\n    >\n      <template v-slot:content>\n        <div v-if=\"showCustomerSummary\">\n          <CustomerSummary\n            :customerId=\"reservation.CustomerId\"\n            :locationId=\"reservation.LocationId\"\n            :showEditLink=\"false\"\n          />\n\n          <Notes\n            :viewType=\"'small'\"\n            :typeId=\"'Customer'\"\n            :itemId=\"reservation.CustomerId\"\n            :linkTypeId=\"'Customer'\"\n            :linkItemId=\"reservation.CustomerId\"\n          />\n        </div>\n\n        <CompanySummary\n          v-if=\"showCompanySummary\"\n          :companyId=\"reservation.CompanyId\"\n          :locationId=\"reservation.LocationId\"\n        />\n\n        <VoucherSummary\n          v-if=\"showVoucherSummary\"\n          :voucherId=\"itemId\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <ModalEditBasicData\n      v-if=\"showEditData\"\n      :showModal=\"showEditData\"\n      :onClickCancel=\"hideModal\"\n      :isEmployee=\"isEmployee\"\n    />\n\n    <ModalReviveReservation\n      v-if=\"showReviveReservation\"\n      :showModal=\"showReviveReservation\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ui-section-header\n      :showEdit=\"!isLocked\"\n      :editFunction=\"setShowEditData\"\n      :editLabel=\"$t('Components.Reservation.BasicData.Link_Edit')\"\n    >\n      <template v-slot:title>{{ $t('Components.Reservation.BasicData.Section_Title') }}</template>\n    </ui-section-header>\n\n    <table class=\"table is-fullwidth\">\n      <tbody>\n        <tr v-if=\"reservation.Type === 'Proposal'\">\n          <td>{{ $t('Components.Reservation.ReservationDetail.Label_Proposal') }}</td>\n          <td>\n            <span v-if=\"reservation.HasProposal > 0\">\n              <span class=\"mr-1\">#{{ reservation.HasProposal }}</span>\n              <span class=\"mr-1\">{{ $t('Components.Proposals.ProposalList.Status_' + reservation.ProposalStatus) }}</span>\n              <span v-if=\"reservation.ProposalPublicationStatus === 'Published'\">- Published</span>\n              <span v-if=\"reservation.ProposalPublicationStatus !== 'Published'\">- Not published</span>\n\n              <span v-if=\"reservation.ProposalSecondOption\" class=\"tag is-link is-light ml-2\">{{ $t('Components.Proposals.ProposalList.Label_SecondOption') }}</span>\n            </span>\n            <span v-if=\"reservation.HasProposal === 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_NoProposal') }}</span>\n          </td>\n        </tr>\n        <tr v-if=\"reservation.TenderId > 0\">\n          <td>RFP</td>\n          <td>{{ reservation.TenderId }}</td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.BasicData.Label_Name') }}\n          </td>\n          <td>\n            <span>{{ reservation.Name }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.BasicData.Label_Profile') }}\n          </td>\n          <td>\n            <a\n              v-if=\"isEmployee && !isDraft\"\n              @click=\"setShowCustomerSummary()\"\n              class=\"link\"\n              >{{ reservation.ProfileName }}</a\n            >\n            <span v-else>{{ reservation.ProfileName }}</span>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.BasicData.Label_Company') }}\n          </td>\n          <td>\n            <span v-if=\"reservation.CompanyId > 0\">\n              <a\n                v-if=\"isEmployee && !isDraft\"\n                @click=\"setShowCompanySummary()\"\n                class=\"link\"\n                ><span>{{ reservation.CompanyName }}</span></a\n              >\n              <span v-else>{{ reservation.CompanyName }}</span>\n            </span>\n          </td>\n        </tr>\n\n        <tr>\n          <td>{{ $t('Components.Reservation.BasicData.Label_Lead') }}</td>\n          <td>{{ reservation.LeadName }}</td>\n        </tr>\n        <tr>\n          <td>{{ $t('Components.Reservation.BasicData.Label_EventType') }}</td>\n          <td>{{ reservation.EventTypeName }}</td>\n        </tr>\n\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.BasicData.Label_Status') }}\n          </td>\n          <td>\n            <div>\n              <span>{{ reservationStatus }}</span>\n              <!-- <span v-if=\"reservation.Type === 'Draft' && (this.reservation.Expiration && !this.reservation.Expiration.IsExpired)\">\n                <span class=\"ml-2\"><a @click=\"finalizeReservation\">Finalize</a></span>\n              </span> -->\n              <span\n                v-if=\"isEmployee && reservation.StatusId === 3\"\n                class=\"has-margin-left\"\n              >\n                <a\n                  @click=\"setShowReviveReservation\"\n                  class=\"is-small\"\n                >\n                  <span class=\"icon is-small\">\n                    <font-awesome-icon :icon=\"['fas', 'heartbeat']\" />\n                  </span>\n                  {{ $t('Components.Reservation.BasicData.Link_Revive') }}\n                </a>\n              </span>\n            </div>\n          </td>\n        </tr>\n        <tr v-if=\"reservation.StatusId === 3\">\n          <td>\n            {{ $t('Components.Reservation.BasicData.Label_CancelReason') }}\n          </td>\n          <td>\n            <div v-if=\"reservation.Cancel\">\n              <div v-if=\"reservation.Cancel.ReasonType === 'Other'\">\n                {{ reservation.Cancel.Reason }}\n              </div>\n              <div v-else>\n                {{ $t(`Components.Reservation.BasicData.CancelText_${reservation.Cancel.ReasonType}`) }}\n              </div>\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.BasicData.Label_Language') }}\n          </td>\n          <td>\n            <div>\n              {{ $t('LanguageLabels.Language' + reservation.LanguageId) }}\n            </div>\n          </td>\n        </tr>\n        <tr>\n          <td>\n            {{ $t('Components.Reservation.BasicData.Label_Voucher') }}\n          </td>\n          <td>\n            <template \n              v-if=\"isLocked\">\n              {{ voucherName}}\n            </template>\n            <CheckVoucher\n              v-else\n              :reservation=\"reservation\"\n              :isLocked=\"isLocked\"\n              @reservationVoucherApplied=\"reservationVoucherApplied\"\n              @showVoucherSummary=\"setShowVoucherSummary\"\n            />\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script lang=\"js\">\nimport { mapGetters, mapMutations, mapState } from 'vuex'\nimport reservationProvider from '@/providers/reservation'\n\nexport default {\n  components: {\n    CheckVoucher: () => import('@/components/Vouchers/CheckVoucher'),\n    CompanySummary: () => import('@/components/Companies/CompanySummary'),\n    CustomerSummary: () => import('@/components/Customers/CustomerSummary'),\n    ModalEditBasicData: () =>\n      import('@/components/Reservations/ModalEditReservationDetail'),\n    ModalReviveReservation: () =>\n      import('@/components/Reservations/ModalReviveReservation'),\n    Notes: () => import('@/components/Notes/Notes'),\n    VoucherSummary: () => import('@/components/Vouchers/VoucherSummary'),\n  },\n\n  props: {\n    isEmployee: {\n      default: false,\n      type: Boolean,\n    },\n\n    isLocked: {\n      default: true,\n      type: Boolean,\n    },\n  },\n\n  data() {\n    return {\n      showEditData: false,\n      showSideDrawer: false,\n      showCompanySummary: false,\n      showCustomerSummary: false,\n      showVoucherSummary: false,\n      showReviveReservation: false,\n    }\n  },\n\n  computed: {\n    ...mapState('reservationStore', ['reservation']),\n    ...mapGetters('reservationStore', ['isDraft']),\n\n    reservationStatus() {\n      if (this.reservation.Type === 'Draft' && (this.reservation.Expiration && !this.reservation.Expiration.IsExpired)) {\n        return this.$t('Components.Reservation.BasicData.Label_Draft')\n      }\n\n      if (this.reservation.Type === 'Draft' && (this.reservation.Expiration && this.reservation.Expiration.IsExpired)) {\n        return this.$t('ReservationStatus.status_Expired')\n      }\n\n      return this.$t('ReservationStatus.status_' + this.reservation.Status)\n    },\n\n    voucherName() {\n      return this.reservation.Voucher?.Name ?? ''\n    },\n  },\n\n  methods: {\n    ...mapMutations('reservationStore', ['setReservation']),\n\n    createProposal() {},\n\n    reservationVoucherApplied(reservation) {\n      this.setReservation(reservation)\n    },\n\n    createReservationProposal() {\n      reservationProvider.methods\n        .createReservationProposal(this.reservation.Id)\n        .then((response) => {\n          if (response.status === 200) {\n            this.setReservation(response.data)\n          }\n        })\n        .catch((err) => { })\n    },\n\n    finalizeReservation() {\n      let self = this\n\n      reservationProvider.methods\n        .finalizeReservation(self.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            self.setReservation(response.data)\n          }\n        })\n        .finally(() => {\n          self.isAccepting = false\n        })\n\n    },\n\n    setShowEditData() {\n      this.showEditData = true\n    },\n\n    hideModal() {\n      this.showEditData = false\n      this.showReviveReservation = false\n    },\n\n    setShowCompanySummary() {\n      this.drawerTitle = 'Company details'\n      this.showSideDrawer = true\n      this.showCompanySummary = true\n    },\n\n    setShowCustomerSummary() {\n      this.drawerTitle = 'Customer details'\n      this.showSideDrawer = true\n      this.showCustomerSummary = true\n    },\n\n    setShowReviveReservation() {\n      this.showReviveReservation = true\n    },\n\n    setShowVoucherSummary(voucherId) {\n      this.itemId = voucherId\n      this.drawerTitle = 'Voucher details'\n      this.showSideDrawer = true\n      this.showVoucherSummary = true\n    },\n\n    hideDrawer() {\n      this.itemId = 0\n      this.showSideDrawer = false\n      this.showCompanySummary = false\n      this.showCustomerSummary = false\n      this.showReviveReservation = false\n      this.showVoucherSummary = false\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationBasicData.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationBasicData.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationBasicData.vue?vue&type=template&id=d21e5ae4\"\nimport script from \"./ReservationBasicData.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationBasicData.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateEditor.vue?vue&type=style&index=0&id=9939ca92&prod&scoped=true&lang=scss\"","export default {\n  methods: {\n    uuidv4() {\n      return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'\n        .replace(/[xy]/g, function(c) {\n          const r = Math.random() * 16 | 0,\n            v = c == 'x' ? r : (r & 0x3 | 0x8);\n          return v.toString(16);\n        })\n    },\n  }\n}","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.availableLocation)?_c('div',[(_vm.showLocationOpenWarning || _vm.showLocationOpeningHoursWarning)?_c('div',[_c('article',{staticClass:\"message is-warning mb-6\"},[_c('div',{staticClass:\"message-body\"},[_c('ul',[(_vm.showLocationOpenWarning)?_c('li',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Warning_LocationIsClosedOnDate')))]):_vm._e(),(_vm.showLocationOpeningHoursWarning)?_c('li',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ModalEditSpace.Warning_LocationIsClosed')))]):_vm._e()])])])]):_vm._e(),(_vm.sortedSpaces)?_c('transition-group',{attrs:{\"name\":\"staggered-fade\",\"css\":false,\"appear\":\"\",\"tag\":\"div\"},on:{\"before-enter\":_vm.beforeEnter,\"enter\":_vm.enter,\"leave\":_vm.leave}},[(_vm.meetingtypeId === 1)?_c('div',{key:'ms'},_vm._l((_vm.sortedSpaces),function(meetingspace,index){return _c('AvailableMeetingspace',{key:'ms' + index,class:{ 'mt-6': index > 0 },attrs:{\"languageCulture\":_vm.locationState.Settings.LanguageCulture,\"meetingspace\":meetingspace,\"meetingtypeId\":_vm.meetingtypeId,\"isEmployee\":_vm.isEmployee,\"viewType\":_vm.viewType,\"data-index\":index}})}),1):_vm._e(),(_vm.meetingtypeId === 2)?_c('div',{key:'ws'},_vm._l((_vm.sortedSpaces),function(workspace,index){return _c('AvailableWorkspace',{key:'ws' + workspace.Id,class:{ 'mt-6': index > 0 },attrs:{\"languageCulture\":_vm.locationState.Settings.LanguageCulture,\"space\":workspace,\"meetingtypeId\":_vm.meetingtypeId}})}),1):_vm._e(),(_vm.meetingtypeId === 3)?_c('div',{key:'ds'},_vm._l((_vm.sortedSpaces),function(deskspace,index){return _c('AvailableDeskspace',{key:'ds' + deskspace.Id,class:{ 'mt-6': index > 0 },attrs:{\"deskspace\":deskspace,\"meetingtypeId\":_vm.meetingtypeId}})}),1):_vm._e()]):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div v-if=\"availableLocation\">\n    <div v-if=\"showLocationOpenWarning || showLocationOpeningHoursWarning\">\n      <article class=\"message is-warning mb-6\">\n        <div class=\"message-body\">\n          <ul>\n            <li v-if=\"showLocationOpenWarning\">{{ $t('Components.Reservation.ModalEditSpace.Warning_LocationIsClosedOnDate')}}</li>\n            <li v-if=\"showLocationOpeningHoursWarning\">{{ $t('Components.Reservation.ModalEditSpace.Warning_LocationIsClosed')}}</li>\n          </ul>\n        </div>\n      </article>\n    </div>\n\n    <transition-group\n      v-if=\"sortedSpaces\"\n      name=\"staggered-fade\"\n      v-bind:css=\"false\"\n      v-on:before-enter=\"beforeEnter\"\n      v-on:enter=\"enter\"\n      v-on:leave=\"leave\"\n      appear\n      tag=\"div\"\n    >\n      <div\n        v-if=\"meetingtypeId === 1\"\n        :key=\"'ms'\"\n      >\n        <AvailableMeetingspace\n          v-for=\"(meetingspace, index) in sortedSpaces\"\n          :key=\"'ms' + index\"\n          :languageCulture=\"locationState.Settings.LanguageCulture\"\n          :meetingspace=\"meetingspace\"\n          :meetingtypeId=\"meetingtypeId\"\n          :isEmployee=\"isEmployee\"\n          :viewType=\"viewType\"\n          :data-index=\"index\"\n          :class=\"{ 'mt-6': index > 0 }\"\n        />\n      </div>\n\n      <div\n        v-if=\"meetingtypeId === 2\"\n        :key=\"'ws'\"\n      >\n        <AvailableWorkspace\n          v-for=\"(workspace, index) in sortedSpaces\"\n          :key=\"'ws' + workspace.Id\"\n          :languageCulture=\"locationState.Settings.LanguageCulture\"\n          :space=\"workspace\"\n          :meetingtypeId=\"meetingtypeId\"\n          :class=\"{ 'mt-6': index > 0 }\"\n        />\n      </div>\n\n      <div\n        v-if=\"meetingtypeId === 3\"\n        :key=\"'ds'\"\n      >\n        <AvailableDeskspace\n          v-for=\"(deskspace, index) in sortedSpaces\"\n          :key=\"'ds' + deskspace.Id\"\n          :deskspace=\"deskspace\"\n          :meetingtypeId=\"meetingtypeId\"\n          :class=\"{ 'mt-6': index > 0 }\"\n        />\n      </div>\n    </transition-group>\n  </div>\n</template>\n\n<script>\nimport { mapState } from 'vuex'\nimport staggeredAnimation from '@/mixins/staggeredAnimation'\n\nexport default {\n  name: 'AvailableLocation',\n\n  components: {\n    AvailableDeskspace: () => import(/* webpackChunkName: \"available-location\" */ '@/components/Availability/AvailableDeskspace'),\n    AvailableMeetingspace: () => import(/* webpackChunkName: \"available-location\" */ '@/components/Availability/AvailableMeetingspace'),\n    AvailableWorkspace: () => import(/* webpackChunkName: \"available-location\" */ '@/components/Availability/AvailableWorkspace'),\n  },\n\n  props: {\n    availableLocation: {\n      default: null,\n      type: Object,\n    },\n    meetingtypeId: {\n      default: 0,\n      type: Number,\n    },\n    selectedSpaceId: {\n      default: null,\n      type: Number,\n    },\n\n    showUnavailable: {\n      default: true,\n      type: Boolean,\n    },\n\n    viewType: {\n      type: String,\n      default: 'list-row',\n    },\n\n    voucherId: {\n      default: 0,\n      type: Number,\n    },\n  },\n\n  mixins: [staggeredAnimation],\n\n  data() {\n    return {\n      mShowUnavailable: this.showUnavailable,\n\n\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n\n    isEmployee() {\n      let employee = false\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true\n      }\n\n      return employee\n    },\n\n    spaces() {\n      let spaces = []\n\n      if (this.availableLocation && this.availableLocation.Spaces) {\n        let locationId = this.availableLocation.LocationId\n\n        for (let j = 0; j < this.availableLocation.Spaces.length; j++) {\n          let space = this.availableLocation.Spaces[j]\n\n          if (spaces.findIndex((s) => s.SpaceId === space.SpaceId) === -1) {\n            spaces.push({\n              Id: space.Id,\n              SpaceId: space.SpaceId,\n              LocationId: locationId,\n              SpaceName:\n                this.IsEmployee\n                  ? space.SpaceInternalName\n                  : space.SpaceName,\n              SpaceImage: space.SpaceImage,\n              Seats: space.Seats,\n              StartDate: space.StartDate,\n              StartMinutes: space.StartMinutes,\n              EndDate: space.EndDate,\n              EndMinutes: space.EndMinutes,\n              Warnings: space.Warnings,\n              Settings: this.getSpaceSettings(space.SpaceId),\n              SpaceAvailable: space.SpaceAvailable,\n              M2: space.M2,\n              IncludedOptions: space?.IncludedOptions || []\n            })\n          }\n        }\n      }\n\n      return spaces\n    },\n\n    sortedSpaces() {\n      let spaces = this.spaces\n\n      if (!this.isEmployee) {\n        spaces = spaces.filter((s) => s.SpaceAvailable)\n      }\n\n      spaces.sort((a, b) => {\n        if (a.SpaceId === this.selectedSpaceId) return -1\n        return a.Warnings.length - b.Warnings.length\n      })\n\n      return spaces\n    },\n\n    showLocationOpenWarning() {\n      let showWarning = false;\n\n      if (this.availableLocation.Warnings && this.availableLocation.Warnings.length > 0) {\n        showWarning = this.availableLocation.Warnings.findIndex(w => w === 'LocationClosed') > -1\n      }\n\n      return showWarning;\n    },\n\n    showLocationOpeningHoursWarning() {\n      let showWarning = false;\n\n      if (this.availableLocation.Warnings && this.availableLocation.Warnings.length > 0) {\n        showWarning = this.availableLocation.Warnings.findIndex(w => w === 'OpeningHours') > -1\n      }\n\n      return showWarning;\n    }\n  },\n\n  created() { },\n\n  beforeDestroy() { },\n\n  methods: {\n    getSpaceSettings(spaceId) {\n      let self = this\n      let settings = []\n\n      let meetingspaceSettings = self.availableLocation.Spaces.filter(\n        (s) => s.SpaceId === spaceId\n      )\n      for (let i = 0; i < meetingspaceSettings.length; i++) {\n        let setting = meetingspaceSettings[i]\n        if (!setting.SpacePrice) {\n          setting.IsAvailable = false\n        }\n\n        if (settings.findIndex((s) => s.Id === setting.SettingId) === -1) {\n          settings.push({\n            Id: setting.SettingId,\n            CalculationType: setting.SpacePrice\n              ? setting.SpacePrice.CalculationType\n              : 'NoPrice',\n            CurrencyId: setting.CurrencyId,\n            CurrencySymbol: setting.CurrencySymbol,\n            CurrencyIso: setting.CurrencyIso,\n            Price: setting.Price,\n            Crc: setting.Crc,\n            Hash: setting.Hash,\n            TaxId: setting.TaxId,\n            TaxPercentage: setting.TaxPercentage,\n            Deductible: setting.Deductible,\n            MinSeats: setting.MinSeats,\n            MaxSeats: setting.MaxSeats,\n            SpaceAvailable: setting.SpaceAvailable,\n            YieldSettingId: setting.SpacePrice?.YieldSettingId ?? 0,\n            SpacePrice: setting.SpacePrice,\n          })\n        }\n      }\n\n      if (!this.mShowUnavailable) {\n        settings = settings.filter((s) => s.SpaceAvailable)\n      }\n\n      return settings\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailableLocation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AvailableLocation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AvailableLocation.vue?vue&type=template&id=6c4795ec\"\nimport script from \"./AvailableLocation.vue?vue&type=script&lang=js\"\nexport * from \"./AvailableLocation.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('article',{staticClass:\"message\",class:_vm.combindedClass},[_c('div',{staticClass:\"message-body\"},[(_vm.message)?[_vm._v(\" \"+_vm._s(_vm.message)+\" \")]:_vm._e(),_vm._t(\"content\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <article\n    class=\"message\"\n    :class=\"combindedClass\"\n  >\n    <div class=\"message-body\">\n      <template v-if=\"message\">\n        {{ message }}\n      </template>\n      <slot name=\"content\"></slot>\n    </div>\n  </article>\n</template>\n\n<script>\nexport default {\n  props: {\n    /**\n     * For what'll be shown inside of the message box.\n     */\n    message: {\n      type: String,\n      default: ''\n    },\n\n    size: {\n      type: String,\n      default: ''\n    },\n\n    /**\n     * type bepaalt het type weergave\n     * eq. is-info = for information style. It defines the style of the message\n     */\n    type: {\n      type: String,\n      default: 'is-info'\n    }\n  },\n  data() {\n    return {};\n  },\n\n  computed: {\n    combindedClass() {\n      let c = this.type;\n\n      if (this.size.length > 0) {\n        c = c + ' ' + this.size;\n      }\n\n      return c;\n    }\n  }\n};\n</script>\n\n<style lang=\"scss\" scoped></style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Message.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Message.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Message.vue?vue&type=template&id=509443f1&scoped=true\"\nimport script from \"./Message.vue?vue&type=script&lang=js\"\nexport * from \"./Message.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"509443f1\",\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}