{"version":3,"file":"B7uknB8r.js","sources":["../../../../composables/stores/modalForm.js"],"sourcesContent":["import { defineStore } from \"pinia\";\nimport { useLassoCRM, reinitializeLassoCRM } from \"~/composables/useLassoCRM\";\n\nexport const useModalForm = defineStore(\"modalForm\", () => {\n const modalIsOpen = ref(false);\n // const formId = ref(0);\n const currentStep = ref(1);\n const hideForm = ref(false);\n const formSubmitting = ref(false);\n const formResponseMessage = ref(\"\");\n const formResponseMessageType = ref(\"\");\n\n const $reset = () => {\n modalIsOpen.value = false;\n // formId.value = 0;\n currentStep.value = 1;\n hideForm.value = false;\n formSubmitting.value = false;\n formResponseMessage.value = \"\";\n formResponseMessageType.value = \"\";\n };\n\n const closeModal = () => {\n modalIsOpen.value = false;\n $reset();\n };\n\n const openModal = () => {\n modalIsOpen.value = true;\n reinitializeLassoCRM();\n };\n\n const nextStep = () => {\n currentStep.value++;\n };\n\n const prevStep = () => {\n currentStep.value--;\n };\n\n const focusTarget = (targetId) => {\n const target = document.getElementById(targetId);\n target.focus();\n };\n\nconst getFormData = async (accessToken) => {\n //console.log('getFormData called with accessToken:', accessToken);\n try {\n const url = 'https://consortadmin.kinsta.cloud/wp-json/gf/v2/forms/';\n\n const headers = new Headers();\n headers.append('Authorization', 'Bearer ' + accessToken);\n headers.append('Content-Type', 'application/json');\n\n //console.log('Headers:', headers);\n\n const response = await fetch(url, { headers });\n\n if (!response.ok) {\n throw new Error('There was an error attempting to access the API.');\n }\n\n const body = await response.json();\n\n if (response.status > 202) {\n throw new Error('Could not retrieve forms.');\n }\n\n const entries = body;\n return entries;\n } catch (error) {\n console.error(error);\n throw error;\n }\n};\n\n // Trivial Example\n // const submitForm = () => {\n // // Your form submission logic here\n // console.log(\"Form submitted\");\n // };\n\n const submitForm = async (formId, formData) => {\n hideForm.value = true;\n formSubmitting.value = true;\n formResponseMessage.value = \"\";\n formResponseMessageType.value = \"\";\n\n try {\n const response = await fetch(\n \"https://consortadmin.kinsta.cloud/wp-json/gf/v2/forms/\" +\n formId +\n \"/submissions\",\n {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(formData),\n }\n );\n\n if (!response.ok) {\n throw new Error(\"An error occurred during form submission\");\n }\n\n const data = await response.json();\n\n // Handle successful form submission\n //console.log(data);\n formResponseMessageType.value = \"success\";\n formResponseMessage.value = data.confirmation_message;\n } catch (error) {\n // Handle error during form submission\n console.error(error);\n formResponseMessageType.value = \"error\";\n formResponseMessage.value = \"Sorry, an error occurred during form submission. Please contact us at 303-309-0362 if this issue persists.\";\n } finally {\n formSubmitting.value = false;\n }\n};\n\n // Track active modals\n const activeModalIds = ref(new Set());\n\n const isModalActive = (modalId) => {\n return activeModalIds.value.has(modalId);\n };\n\n const registerModal = (modalId) => {\n activeModalIds.value.add(modalId);\n };\n\n const unregisterModal = (modalId) => {\n activeModalIds.value.delete(modalId);\n };\n\n const openModalWithCheck = (modalId) => {\n if (!isModalActive(modalId)) {\n openModal();\n registerModal(modalId);\n }\n };\n\n const closeModalWithUnregister = (modalId) => {\n closeModal();\n if (modalId) unregisterModal(modalId);\n };\n\n return {\n $reset,\n closeModal,\n currentStep,\n focusTarget,\n // formId,\n formResponseMessage,\n formResponseMessageType,\n formSubmitting,\n hideForm,\n modalIsOpen,\n nextStep,\n openModal,\n prevStep,\n // submitForm,\n isModalActive,\n openModalWithCheck,\n closeModalWithUnregister,\n getFormData,\n };\n});\n"],"names":["useModalForm","defineStore","modalIsOpen","ref","currentStep","hideForm","formSubmitting","formResponseMessage","formResponseMessageType","$reset","closeModal","openModal","reinitializeLassoCRM","nextStep","prevStep","focusTarget","targetId","getFormData","accessToken","url","headers","response","body","error","activeModalIds","isModalActive","modalId","registerModal","unregisterModal"],"mappings":"0WAGY,MAACA,EAAeC,EAAY,YAAa,IAAM,CACzD,MAAMC,EAAcC,EAAI,EAAK,EAEvBC,EAAcD,EAAI,CAAC,EACnBE,EAAWF,EAAI,EAAK,EACpBG,EAAiBH,EAAI,EAAK,EAC1BI,EAAsBJ,EAAI,EAAE,EAC5BK,EAA0BL,EAAI,EAAE,EAEhCM,EAAS,IAAM,CACnBP,EAAY,MAAQ,GAEpBE,EAAY,MAAQ,EACpBC,EAAS,MAAQ,GACjBC,EAAe,MAAQ,GACvBC,EAAoB,MAAQ,GAC5BC,EAAwB,MAAQ,EACjC,EAEKE,EAAa,IAAM,CACvBR,EAAY,MAAQ,GACpBO,EAAQ,CACT,EAEKE,EAAY,IAAM,CACtBT,EAAY,MAAQ,GACpBU,EAAsB,CACvB,EAEKC,EAAW,IAAM,CACrBT,EAAY,OACb,EAEKU,EAAW,IAAM,CACrBV,EAAY,OACb,EAEKW,EAAeC,GAAa,CACjB,SAAS,eAAeA,CAAQ,EACxC,MAAO,CACf,EAEGC,EAAc,MAAOC,GAAgB,CAEvC,GAAI,CACA,MAAMC,EAAM,yDAENC,EAAU,IAAI,QACpBA,EAAQ,OAAO,gBAAiB,UAAYF,CAAW,EACvDE,EAAQ,OAAO,eAAgB,kBAAkB,EAIjD,MAAMC,EAAW,MAAM,MAAMF,EAAK,CAAE,QAAAC,CAAO,CAAE,EAE7C,GAAI,CAACC,EAAS,GACV,MAAM,IAAI,MAAM,kDAAkD,EAGtE,MAAMC,EAAO,MAAMD,EAAS,KAAM,EAElC,GAAIA,EAAS,OAAS,IACpB,MAAM,IAAI,MAAM,2BAA2B,EAI7C,OADgBC,CAEnB,OAAQC,EAAO,CACZ,cAAQ,MAAMA,CAAK,EACbA,CACd,CACA,EAiDQC,EAAiBrB,EAAI,IAAI,GAAK,EAE9BsB,EAAiBC,GACdF,EAAe,MAAM,IAAIE,CAAO,EAGnCC,EAAiBD,GAAY,CACjCF,EAAe,MAAM,IAAIE,CAAO,CACjC,EAEKE,EAAmBF,GAAY,CACnCF,EAAe,MAAM,OAAOE,CAAO,CACpC,EAcD,MAAO,CACL,OAAAjB,EACA,WAAAC,EACA,YAAAN,EACA,YAAAW,EAEA,oBAAAR,EACA,wBAAAC,EACA,eAAAF,EACA,SAAAD,EACA,YAAAH,EACA,SAAAW,EACA,UAAAF,EACA,SAAAG,EAEA,cAAAW,EACA,mBA5B0BC,GAAY,CACjCD,EAAcC,CAAO,IACxBf,EAAW,EACXgB,EAAcD,CAAO,EAExB,EAwBC,yBAtBgCA,GAAY,CAC5ChB,EAAY,EACRgB,GAASE,EAAgBF,CAAO,CACrC,EAoBC,YAAAT,CACD,CACH,CAAC"}