{"version":3,"file":"DE4M7QBf.js","sources":["../../../../../../../app/composables/useSystemMessages.ts","../../../../../../../app/components/CiError/CiError.vue","../../../../../../../app/components/CiModal/CiModalError.vue","../../../../../../../app/components/CiSuccess/CiSuccess.vue","../../../../../../../app/components/CiModal/CiModalSuccess.vue","../../../../../../../app/components/CiModal/CiModalUserProfileIncomplete.vue","../../../../../../../app/composables/useModalDialog.ts"],"sourcesContent":["export default function useSystemMessages() {\n /********************\n * COMPOSITIONS *\n ********************/\n const { $gettext, interpolate } = useGettext();\n\n /********************\n * FUNCTIONS *\n ********************/\n function getMsgError(errorCode, additionalInfo = null) {\n const messages = {\n reviews_multiple_not_allowed: $gettext('We are sorry but you are not allowed to submit more than one review.'),\n reviews_multiple_per_year_not_allowed: $gettext(\n 'We are sorry but you are not allowed to submit more than one review per year.',\n ),\n required: $gettext('This field is required'),\n };\n\n if (additionalInfo && messages[errorCode]) {\n return interpolate(messages[errorCode], { additionalInfo }, true);\n }\n\n return messages[errorCode] ? messages[errorCode] : $gettext('An unkown error occured. Please try again.');\n }\n\n function getMsgWarning(warningCode) {\n const messages = {\n email_not_verified: $gettext(\n 'Your email address has not been verified yet. We have sent you a new verification email. To publish your reviews, pictures and videos you need to verify your account first.',\n ),\n };\n\n return messages[warningCode] ? messages[warningCode] : $gettext('An unkown warning occured. Please try again.');\n }\n return {\n getMsgError,\n getMsgWarning,\n };\n}\n","\n\n\n","\n\n\n","\n\n\n\n\n","\n\n\n","\n\n\n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n \n {{ $gettext('Cancel') }}\n \n \n {{ i18nButtonLabel }}\n \n \n {{ i18nButtonLabel }}\n \n \n {{ i18nButtonLabel }}\n \n
\n
\n
\n
\n \n \n\n","import CiModalError from '@/components/CiModal/CiModalError.vue';\nimport CiModalSuccess from '@/components/CiModal/CiModalSuccess.vue';\nimport CiModalUserProfileIncomplete from '@/components/CiModal/CiModalUserProfileIncomplete.vue';\n\nexport default function useModalDialog({ campsite: pCampsite = null }: { campsite: MaybeRefOrGetter }) {\n const campsite = toRef(pCampsite);\n\n /********************\n * COMPOSITIONS *\n ********************/\n const localePath = useLocalePath();\n const { $gettext } = useGettext();\n const { getMsgError } = useSystemMessages();\n const { openModal, closeModal } = useCiModal();\n\n /********************\n * REFS & VARS *\n ********************/\n const defaultButtons = computed(() => {\n return [\n {\n label: $gettext('Back to campsite'),\n to: localePath({\n name: RBN_CAMPSITE_DETAIL,\n params: { identifier: campsite.value?.slug },\n }),\n classes: ['button-warning'],\n },\n ];\n });\n\n /********************\n * FUNCTIONS *\n ********************/\n function openModalError(\n buttons: any[] = [],\n title = $gettext('Error'),\n errorMessage = $gettext('Something went wrong.'),\n ) {\n openModal(\n {\n component: CiModalError,\n attrs: {\n name: 'CiModalError',\n closeable: false,\n title,\n buttons,\n errorMessage,\n onClose: () => {\n closeModal('CiModalError');\n },\n },\n },\n {\n clickToClose: false,\n contentTransition: 'translate-y-down',\n contentClass: 'max-w-[800px] w-full h-auto',\n },\n );\n }\n\n function openModalSuccess(\n buttons = [],\n warnings = [],\n title = $gettext('Success'),\n successMessage = $gettext('Your operation has been completed successfully.'),\n ) {\n openModal(\n {\n component: CiModalSuccess,\n attrs: {\n name: 'CiModalSuccess',\n buttons,\n closeable: false,\n successMessage,\n title,\n warnings,\n onClose: () => {\n closeModal('CiModalSuccess');\n },\n },\n },\n {\n clickToClose: false,\n contentTransition: 'translate-y-down',\n contentClass: 'max-w-[800px] w-full h-auto',\n },\n );\n }\n\n function openModalMissingPermissions(perm, additionalInfo = null, buttons = defaultButtons.value) {\n openModalError(buttons, $gettext('Permission error'), getMsgError(perm.reason.code, additionalInfo));\n }\n\n function openModalUserProfileIncomplete(\n fields,\n text = $gettext('Please complete your user data to perform this operation:'),\n backOnCancel = true,\n ) {\n openModal(\n {\n component: CiModalUserProfileIncomplete,\n attrs: {\n name: 'CiModalUserProfileIncomplete',\n backOnCancel,\n closeable: false,\n fields,\n text,\n onClose: () => {\n closeModal('CiModalUserProfileIncomplete');\n },\n },\n },\n {\n clickToClose: false,\n contentTransition: 'translate-y-down',\n contentClass: 'max-w-[800px] w-full h-auto',\n },\n );\n }\n\n return {\n openModalError,\n openModalMissingPermissions,\n openModalSuccess,\n openModalUserProfileIncomplete,\n };\n}\n"],"names":["useSystemMessages","$gettext","interpolate","useGettext","getMsgError","errorCode","additionalInfo","messages","getMsgWarning","warningCode","props","__props","emit","__emit","errorMessage","computed","internalSuccessMessage","defineRule","required","router","useRouter","userService","useUserService","userStore","useUserStore","locale","useI18n","isSubmitting","ref","showErrorMessage","showSuccessMessage","i18nButtonLabel","successMessage","fieldModels","reactive","validate","errors","defineField","useForm","acc","cur","key","name","submitForm","valid","user","_a","response","onClickBack","useModalDialog","pCampsite","campsite","toRef","localePath","useLocalePath","openModal","closeModal","useCiModal","defaultButtons","RBN_CAMPSITE_DETAIL","openModalError","buttons","title","CiModalError","openModalSuccess","warnings","CiModalSuccess","openModalMissingPermissions","perm","openModalUserProfileIncomplete","fields","text","backOnCancel","CiModalUserProfileIncomplete"],"mappings":"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"}