{"version":3,"file":"chunks/5deaa07b01f77f.js","mappings":"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","sources":["webpack:///./resources/js/common/streamHub.ts","webpack:///./resources/js/components/specific/contactsalesform.ts"],"sourcesContent":["import axios from 'axios';\nimport stgConfig from \"../../../config\";\nimport Environment from '../buyer-experience/common/environment';\n\nconst STAGING_ENDPOINT = `${window.location.hostname.indexOf('qa-wac') > -1 ? 'https://qa-wac.internal.atlassian.com' : stgConfig.stgWacInternalUrl}/endpoint`;\n\nconst BXP_EXPRESS_ENDPOINT = {\n [Environment.production()]: 'https://www.atlassian.com/endpoint',\n [Environment.staging()]: STAGING_ENDPOINT,\n [Environment.dev()]: STAGING_ENDPOINT,\n};\n\n/**\n * Submit a post request to bxp express /webinarsignup/updatestreamhub endpoint\n * this endpoint should take the email address and emit an event to streamhub\n * @param {*} userEmail\n */\n\nexport const postEmailToStreamHub = (userEmail: string) => {\n const environment = Environment.getEnvironment();\n return axios.post(`${BXP_EXPRESS_ENDPOINT[environment]}/webinarsignup/updatestreamhub`, {\n user_email: userEmail\n });\n};\n\nexport const postObjectToStreamhubContact = (obj, endpoint, responseHandler, errorHandler, state) => {\n console.log('endpoint', endpoint)\n const environment = Environment.getEnvironment();\n return axios.post(`${BXP_EXPRESS_ENDPOINT[environment]}/streamhub/${endpoint}`, obj)\n .then(\n (response) => {\n if (responseHandler) {\n new responseHandler(response, state);\n }\n },\n (error) => {\n if (errorHandler) {\n new errorHandler(error, state);\n }\n }\n );\n}","import {\n postObjectToStreamhubContact\n} from '../../common/streamHub';\nimport {\n ConsentHubClient as Client,\n ConsentHelper\n} from '../../common/ConsentHubV2';\nimport Environment from \"../../common/environment\";\n\nimport tracking from '../../utils/tracking';\n\nconst emailRegex = /@(gmail|yahoo|aol|comcast|hotmail|ymail|msn|mac|sina|freemail|me|icloud|live|gnail|gmsil|gmial|gamil|gail)/;\nlet isFormChecking = false;\nlet isKeying = false;\n\nexport default class ContactSalesForm {\n domRoot: HTMLElement;\n params: any;\n consentKey: any;\n privacyPolicyText: any;\n consentCheckboxText: any;\n consentConfigInfo: {};\n activeForm: HTMLFormElement;\n errorSubmit: any;\n ConsentHub: Client;\n consents: NodeListOf;\n consentCheckboxes: NodeListOf;\n errorMessages: any;\n referrers: any;\n referringURL: string;\n contactForms: HTMLFormElement[];\n availableFormTypes: any;\n availableFormTypeLabels: any;\n typeOfForm: any;\n urlParams: URLSearchParams;\n urlFormType: any;\n tabs: NodeListOf;\n fauxSelectors: NodeListOf;\n productServiceInputs: NodeListOf;\n textAreas: NodeListOf;\n numberInputs: NodeListOf;\n plainOptions: NodeListOf;\n productOrService: any;\n productOrServiceTogglers: NodeListOf;\n submitTo: any;\n formId: any;\n formDef: any;\n isIntercomTracking: boolean;\n intercomAppId: any;\n postSubmission: any;\n redirect: any;\n form: any;\n mainFormContainer: any;\n postSubmitMessage: any;\n consentHelper: {};\n\n constructor(domRoot: HTMLElement, params: any) {\n this.domRoot = domRoot;\n this.params = params;\n this.consentKey = params.consentType;\n this.privacyPolicyText = params.privacyPolicyText;\n this.consentCheckboxText = params.consentCheckboxText;\n this.consentConfigInfo = {};\n this.activeForm = domRoot.querySelector('form') as HTMLFormElement;\n this.errorSubmit = params.errorSubmit;\n this.ConsentHub = new Client();\n this.consents = domRoot.querySelectorAll('.consent-checkbox-container');\n this.consentCheckboxes = domRoot.querySelectorAll('.consent-checkbox');\n this.errorMessages = params.errorMessages;\n this.referrers = params.referrers;\n this.referringURL = document.referrer.replace(/#(.*?)/, '').replace(/\\?(.*?)/, '');\n this.contactForms = Array.from(domRoot.querySelectorAll(\"form\"));\n this.availableFormTypes = params.formTypes;\n this.availableFormTypeLabels = params.formTypeLabels;\n this.typeOfForm = domRoot.querySelector(\".formTypeSelector\");\n this.urlParams = new URLSearchParams(window.location.search.substring(1));\n this.urlFormType = this.urlParams.get(\"formType\");\n this.tabs = domRoot.querySelectorAll('.tab-multi-popper');\n this.fauxSelectors = domRoot.querySelectorAll(\".faux-selector select\");\n this.productServiceInputs = domRoot.querySelectorAll(\".radio-labels input\");\n this.textAreas = domRoot.querySelectorAll('textarea');\n this.numberInputs = domRoot.querySelectorAll('input[type=\"number\"]');\n this.plainOptions = domRoot.querySelectorAll(\".plain-radio, .plain-checkbox\");\n this.productOrService = domRoot.querySelector(\"#productInterest__c\");\n this.productOrServiceTogglers = domRoot.querySelectorAll(\".select-style-input\");\n this.submitTo = params.submitTo;\n this.formId = params.formId;\n this.formDef = params.formDef;\n this.isIntercomTracking = this.params.isIntercomTracking.toLowerCase() === \"true\";\n this.intercomAppId = params.intercomAppId;\n this.postSubmission = this.params.postSubmission;\n this.redirect = this.params.redirect;\n this.form = domRoot.querySelector('.form--contact-sales-form');\n this.mainFormContainer = domRoot.querySelector('.main-form-container');\n this.postSubmitMessage = domRoot.querySelector('.form--contact-sales-form__message');\n this.consentHelper = {};\n this.init();\n }\n\n init() {\n this.getConsentInfo();\n this.getUserData(); \n this.formSubmitListener();\n this.tabsListener();\n this.productTogglersListener();\n this.fauxSelectorsListener();\n this.plainListeners();\n this.routeToForm();\n this.addMunchkin();\n this.setFieldValidity();\n this.setFieldValidityForCheckBoxes();\n\n window.addEventListener(\"beforeunload\", () => {\n this.clearForm();\n });\n\n }\n\n addMunchkin() {\n const orgIdSandBox = \"353-DGC-691\";\n const orgIdProd = \"594-ATC-127\";\n const isProd = window.location.hostname.match(/^(www\\.){0,1}(atlassian.com|bitbucket.org|opsgenie.com|bitbucket.org|trello.com)$/);\n\n let didInit = false;\n\n function initMunchkin() {\n if (didInit === false) {\n didInit = true;\n Munchkin.init(isProd ? orgIdProd : orgIdSandBox);\n }\n }\n const s = document.createElement(\"script\")\n s.type = \"text/javascript\";\n s.async = true;\n s.src = \"//munchkin.marketo.net/munchkin.js\";\n s.onreadystatechange = function () {\n if (this.readyState == \"complete\" || this.readyState == \"loaded\") {\n initMunchkin()\n }\n };\n s.onload = initMunchkin;\n document.getElementsByTagName(\"head\")[0].appendChild(s);\n }\n\n routeToForm() {\n if (this.availableFormTypes.length > 1) {\n let referralFound = this.findReferrerInSites();\n let formTypeInput = this.domRoot.querySelector('option#formType-' + this.availableFormTypes[0]);\n\n if (this.urlFormType && this.availableFormTypes.includes(this.urlFormType)) {\n formTypeInput = this.domRoot.querySelector('option#formType-' + this.urlFormType);\n } else if (referralFound) {\n formTypeInput = this.domRoot.querySelector('option#formType-' + referralFound);\n }\n this.updateSelectorValue(formTypeInput.parentNode, formTypeInput);\n }\n }\n\n findReferrerInSites() {\n for (let formType in this.referrers) {\n let links = this.referrers[formType];\n for (let l = 0; l < links.length; l++) {\n let link = links[l].startsWith('http') ? links[l] : window.location.origin + links[l];\n if (link == this.referringURL) {\n return formType;\n }\n }\n }\n return false;\n }\n\n plainListeners() {\n this.plainOptions.forEach(plainOption => {\n plainOption.addEventListener(\"change\", () => {\n this.setConditionalDisplays(plainOption.dataset.conditionalType, plainOption.dataset.conditional, !plainOption.checked);\n })\n });\n\n this.numberInputs.forEach(numberInput => {\n numberInput.addEventListener(\"mousewheel\", (event) => {\n if (numberInput == document.activeElement) {\n event.preventDefault();\n }\n })\n });\n this.textAreas.forEach(textArea => {\n textArea.addEventListener(\"keyup\", () => {\n let val = textArea.value;\n let lineBreaks = val.match(/[\\n\\r]/g) ? (val.match(/[\\n\\r]/g).length * 1.5) : 0;\n let minHeight = (val.length > 70 ? ((val.length / 70) * 2.5) : 4) + lineBreaks;\n textArea.style.minHeight = minHeight + 'rem';\n })\n })\n }\n\n /* faux selectors (custom selectors) */\n\n updateSelectorValue(selector: HTMLSelectElement, selectorOption?: HTMLOptionElement) {\n //selectorOption.parentNode.previousElementSibling.innerText = selectorOption.dataset.localizedValue;\n if (!selectorOption) {\n selectorOption = selector.options[selector.selectedIndex];\n }\n selector.value = selectorOption.value;\n if (selectorOption.hasAttribute('data-conditional')) {\n this.setConditionalDisplays(selectorOption.dataset.conditionalType, selectorOption.dataset.conditional);\n }\n\n if (selectorOption.attributes?.name?.value == \"formType\") {\n this.urlParams.delete(\"formType\");\n const otherParams = this.urlParams.toString();\n history.replaceState({}, '', `?formType=${selectorOption.dataset.conditional}${otherParams.length ? '&' : ''}${otherParams}`);\n this.activeForm = this.domRoot.querySelector('#form-' + selectorOption.dataset.conditional);\n }\n }\n\n fauxSelectorsListener() {\n this.fauxSelectors.forEach((fauxSelector: HTMLSelectElement) => {\n fauxSelector.addEventListener(\"change\", (_event) => {\n this.updateSelectorValue(fauxSelector);\n this.checkFormValidity();\n });\n });\n }\n\n /* custom product/service selector */\n\n toggleProductSelectionDropdown(optionsContainer, close?: boolean) {\n let productOrServiceToggler = optionsContainer.previousElementSibling;\n if (close) {\n productOrServiceToggler.classList.remove(\"toggled\");\n productOrServiceToggler.setAttribute(\"aria-expanded\", false);\n optionsContainer.classList.add(\"hiding\");\n setTimeout(function () {\n optionsContainer.style.display = \"none\";\n productOrServiceToggler.focus();\n }, 500);\n isKeying = false;\n } else {\n productOrServiceToggler.classList.add(\"toggled\");\n productOrServiceToggler.setAttribute(\"aria-expanded\", true);\n optionsContainer.style.display = \"block\";\n let firstButton = optionsContainer.querySelector('button[aria-selected=\"true\"]');\n firstButton.focus();\n setTimeout(function () {\n optionsContainer.classList.remove(\"hiding\");\n }, 50)\n }\n }\n\n productTogglersListener() {\n this.productOrServiceTogglers.forEach(toggler => {\n let optionsContainer = toggler.nextElementSibling;\n\n toggler.addEventListener(\"click\", () => {\n if (!optionsContainer.classList.contains(\"hiding\")) {\n this.toggleProductSelectionDropdown(optionsContainer, true);\n } else {\n this.toggleProductSelectionDropdown(optionsContainer);\n }\n });\n\n toggler.addEventListener(\"keydown\", (event) => {\n const keymatch = /ArrowDown|ArrowUp|Enter|Space/g;\n if (event.code.match(keymatch)) {\n this.toggleProductSelectionDropdown(optionsContainer);\n } else if (!optionsContainer.classList.contains(\"hiding\") ||\n event.key == \"Escape\") {\n this.toggleProductSelectionDropdown(optionsContainer, true);\n }\n });\n });\n\n this.productServiceInputs.forEach(input => {\n let parentEl = input.closest(\".product-or-service-toggler\");\n let dropdown = input.closest(\".multi-select-container\");\n\n let productOrServiceToggler = parentEl.querySelector('.select-style-input');\n let actualValue = parentEl.querySelector('.actual-value');\n\n input.addEventListener(\"change\", () => {\n productOrServiceToggler.value = input.dataset.localizedValue;\n productOrServiceToggler.innerText = input.dataset.localizedValue;\n actualValue.value = input.value;\n const e = new Event(\"change\");\n actualValue.dispatchEvent(e);\n isKeying = false;\n this.setConditionalDisplays(input.dataset.conditionalType, input.dataset.conditional);\n });\n\n input.addEventListener(\"click\", (event) => {\n if (!isKeying && event.clientX != 0 && event.clientY != 0) {\n this.toggleProductSelectionDropdown(dropdown, true);\n }\n isKeying = false;\n })\n\n input.addEventListener(\"keydown\", (event) => {\n isKeying = true;\n if (event.key == \"Enter\" || event.key == \"Escape\") {\n event.preventDefault();\n input.blur();\n this.toggleProductSelectionDropdown(dropdown, true);\n }\n });\n\n input.addEventListener(\"blur\", (event) => {\n if (!isKeying && !dropdown.contains(event.relatedTarget)) {\n this.toggleProductSelectionDropdown(dropdown, true);\n }\n })\n });\n }\n\n tabsListener() {\n this.tabs.forEach((thisTab, index) => {\n thisTab.addEventListener(\"click\", () => {\n\n let siblingTabs = thisTab.parentNode.querySelectorAll('.tab-multi-popper')\n siblingTabs.forEach(tab => {\n tab.setAttribute(\"aria-selected\", \"false\");\n tab.setAttribute(\"tabindex\", \"-1\");\n });\n thisTab.setAttribute(\"aria-selected\", \"true\");\n thisTab.setAttribute(\"tabindex\", \"0\");\n });\n\n thisTab.addEventListener(\"keydown\", event => {\n if (event.key.includes(\"Arrow\")) {\n let siblingTabs = thisTab.parentNode.querySelectorAll('.tab-multi-popper')\n\n let newIndex = 1;\n if (index == 1) {\n newIndex = 0;\n }\n siblingTabs[index].setAttribute(\"aria-selected\", \"false\");\n siblingTabs[index].setAttribute(\"tabindex\", \"-1\");\n\n siblingTabs[newIndex].setAttribute(\"aria-selected\", \"true\");\n siblingTabs[newIndex].setAttribute(\"tabindex\", \"0\");\n siblingTabs[newIndex].focus();\n } else if (event.key == \"Escape\") {\n this.toggleProductSelectionDropdown(thisTab.closest('.multi-select-container'), true);\n }\n })\n });\n }\n\n /* other listeners */\n\n checkFormValidity() {\n isFormChecking = true;\n const submitButton = this.activeForm.querySelector('[type=\"submit\"]');\n if (this.activeForm.checkValidity()) {\n // Check that submit button exists (and not \"Contact Support\" link)\n if (submitButton) {\n submitButton.className = submitButton.dataset.buttonStyle;\n }\n } else {\n submitButton.className = 'component__link custom button button--regular n30 hover-n40 text-n600 border-color-default';\n }\n setTimeout(function () {\n isFormChecking = false;\n }, 50)\n }\n\n clearError(event) {\n let allFields = [event.target];\n const plainRegex = /select|radio|checkbox/;\n\n if (event.target.type.match(plainRegex) && event.target.className.includes(\"plain\")) {\n allFields = document.querySelectorAll(`[name=\"${event.target.name}\"]`)\n }\n allFields.forEach(field => {\n let fieldIdentifier = field.type.match(plainRegex) ? field.name : field.id;\n let fieldError = document.getElementById(fieldIdentifier + \"-description\");\n if (fieldError) {\n fieldError.innerText = \"\";\n fieldError.classList.remove(\"error\");\n }\n field.setCustomValidity(\"\");\n });\n this.checkFormValidity();\n }\n\n messageError(event: Event) {\n if (!isFormChecking && event.target) {\n let errMessage = '';\n\n let fieldIdentifier = event.target.className.includes(\"plain\") ? event.target.name : event.target.id;\n let errorMessages = this.errorMessages[fieldIdentifier];\n let fieldError = document.getElementById(fieldIdentifier + \"-description\");\n\n if (event.target.validity.valueMissing) {\n errMessage = errorMessages.missing;\n } else if (event.target.validity.patternMismatch) {\n if (event.target.type == \"email\" && event.target.value.match(emailRegex)) {\n errMessage = errorMessages.email\n } else {\n errMessage = errorMessages.pattern;\n }\n } else if (event.target.validity.tooShort) {\n errMessage = errorMessages.tooShort ?? '';\n } else if (event.target.validity.tooLong) {\n errMessage = errorMessages.tooLong ?? '';\n } else if (event.target.validity.rangeOverflow) {\n errMessage = errorMessages.rangeOverflow ?? '';\n } else if (event.target.validity.rangeUnderflow) {\n errMessage = errorMessages.rangeUnderflow ?? '';\n }\n\n fieldError.innerText = errMessage;\n fieldError.classList.add(\"error\");\n event.target.setCustomValidity(\" \");\n }\n\n }\n\n setFieldValidity() {\n const self = this;\n this.domRoot.querySelectorAll(\".required\").forEach(requirement => {\n if (requirement.offsetParent\n && !requirement.hasMessageEventListener\n && requirement.type !== \"checkbox\"\n ) {\n self.addRequiredAttribute(requirement);\n } else if (requirement.offsetParent == null && requirement.hasMessageEventListener) {\n self.removeRequiredAttribute(requirement);\n }\n });\n }\n\n removeRequiredAttribute(targetElement: HTMLInputElement) {\n targetElement.removeAttribute(\"required\");\n targetElement.removeEventListener('invalid', (event) => {\n this.messageError(event);\n });\n [\"keyup\", \"change\"].forEach(eventType => {\n targetElement.removeEventListener(eventType, (event) => {\n this.clearError(event);\n });\n });\n targetElement.hasMessageEventListener = false;\n }\n\n addRequiredAttribute(targetElement: HTMLInputElement) {\n targetElement.setAttribute(\"required\", \"required\");\n targetElement.addEventListener('invalid', (event) => {\n this.messageError(event);\n });\n [\"keyup\", \"change\"].forEach(eventType => {\n targetElement.addEventListener(eventType, (event) => {\n this.clearError(event);\n });\n });\n targetElement.hasMessageEventListener = true;\n }\n\n setFieldValidityForCheckBoxes() {\n const self = this;\n self.domRoot.querySelectorAll('fieldSet .checkbox input.required')\n .forEach((element: HTMLInputElement) => {\n const requiredInputsParentElement = element.offsetParent;\n if (requiredInputsParentElement && !element.hasMessageEventListener) {\n self.addRequiredAttribute(element);\n }\n requiredInputsParentElement!.addEventListener('change', (e) => {\n const targetInputElement = e.target as HTMLInputElement;\n const allCheckedInputs = requiredInputsParentElement?.querySelectorAll('input:checked');\n if (targetInputElement.checked) {\n self.removeRequiredAttribute(element);\n self.addRequiredAttribute(targetInputElement);\n } else {\n /**\n * If check is false, remove the targetINputElement's requried Attribute field\n * ...and if there are no more checked inputs then\n * add required attribute back to original required element\n */\n self.removeRequiredAttribute(targetInputElement);\n if (allCheckedInputs && allCheckedInputs.length < 1) {\n self.addRequiredAttribute(element);\n }\n }\n self.checkFormValidity();\n })\n });\n }\n\n clearForm() {\n this.contactForms.forEach(form => form.reset())\n }\n\n getFormVals(form, serialize) {\n let obj = {};\n var array = [];\n let intercomMapping = {};\n [...form.elements].forEach(item => {\n let individual = {};\n let key = item.dataset.key;\n if (item.type == \"email\") {\n item.value = item.value.toLowerCase()\n }\n if (item.type == \"number\") {\n item.value = Number(item.value);\n }\n if (key && (item.offsetParent || item.tagName == \"BUTTON\")) {\n if (item.type == \"radio\" && item.checked) {\n obj[key] = item.value;\n individual.name = key;\n individual.value = item.value;\n } else if (item.type == \"checkbox\" && item.checked) {\n if (obj[key]) {\n obj[key] = obj[key] + ',' + item.dataset.localizedValue;\n individual.value = individual.value + ',' + item.dataset.localizedValue;\n } else {\n obj[key] = item.dataset.localizedValue;\n individual.value = item.dataset.localizedValue;\n }\n individual.name = key;\n } else if (item.type !== \"radio\" && item.type !== \"checkbox\" && item.tagName !== \"BUTTON\" ||\n (item.tagName == \"BUTTON\" && item.getAttribute(\"aria-selected\") == \"true\")) {\n let textFieldValue = item.value.replace(//g, '>')\n // salesforce rejects < & > characters but we want users to still be able to enter them\n obj[key] = textFieldValue;\n individual.name = key;\n individual.value = textFieldValue;\n }\n array.push(individual);\n }\n\n if (Object.prototype.hasOwnProperty.call(item.dataset, 'intercomMapping')) {\n const itercomMappingKey = item.dataset.intercomMapping.toLowerCase();\n intercomMapping[itercomMappingKey] = item.dataset.key;\n }\n });\n obj['intercomMapping'] = intercomMapping;\n\n return serialize ? array : obj;\n }\n\n getCookie(name: string) {\n const value = `; ${document.cookie}`;\n const parts = value.split(`; ${name}=`);\n if (parts.length === 2) {\n return parts.pop().split(';').shift();\n }\n return '';\n }\n\n getSubscriberDetails(form) {\n let formData = this.getFormVals(form, true);\n return formData.reduce((acc, field) => {\n if (field.name !== 'email' && field.name !== 'list_name') {\n acc[field.name] = field.value;\n }\n return acc;\n }, {});\n }\n\n submitSuccess(data, state) {\n if (state.postSubmission == \"Redirect\") {\n window.location.href = state.redirect + window.location.search;\n } else {\n state.mainFormContainer.style.display = 'none';\n state.postSubmitMessage.style.display = 'block';\n }\n tracking.trackEvent('ConsentHub Submit', {\n \"success\": true,\n \"event\": \"Submitted\",\n \"eventComponent\": \"Contact Sales Form\"\n });\n }\n\n submitFailure(data, state) {\n state.activeForm.querySelector('.post-submit').innerHTML = state.params.errorSubmit;\n tracking.trackEvent('ConsentHub Submit', {\n \"success\": false,\n \"event\": \"Failed\",\n \"eventComponent\": \"Contact Sales Form\",\n \"error-message\": data\n });\n }\n\n sendToStreamhub(formValues) {\n let currentTime = new Date();\n let random = Math.round(Math.random() * 10000);\n\n let streamHubInfo = {\n \"gmoiLocale\": this.consentConfigInfo.locale,\n \"formType\": this.typeOfForm ? this.typeOfForm.value : this.availableFormTypeLabels[0],\n \"formDef\": this.formDef,\n \"formSubmissionId\": random + currentTime.getTime(),\n \"created_at\": currentTime,\n \"marketoCookieId\": this.getCookie('_mkto_trk'),\n \"anonymousId\": this.getCookie('ajs_anonymous_id').replace(/%22/g, ''),\n \"atlassianId\": this.getCookie('ajs_user_id').replace(/%22/g, ''),\n \"submitted\": currentTime.toString(),\n \"source_sequence\": currentTime.getTime(),\n \"userAgent\": window.navigator.userAgent,\n \"isIntercomTracking\": this.isIntercomTracking,\n \"intercomAppId\": this.intercomAppId.trim().toLowerCase()\n };\n const payLoad = Object.assign(formValues, streamHubInfo);\n postObjectToStreamhubContact(\n payLoad,\n this.submitTo,\n this.submitSuccess,\n this.submitFailure, this);\n }\n\n consenthubFailure(error) {\n tracking.trackEvent('ConsentHub Submit', {\n \"success\": false,\n \"event\": \"Failed\",\n \"eventComponent\": \"ConsentHub Submit\",\n \"error-message\": error\n });\n this.submitFailure(error, this);\n }\n\n formSubmitListener() {\n this.contactForms.forEach(contactForm => {\n let honeyPot = this.activeForm.querySelector('.email_hp');\n\n contactForm.addEventListener(\"submit\", (event: SubmitEvent) => {\n event.preventDefault();\n if (honeyPot.value === \"\" && this.activeForm.checkValidity()) {\n let buttonSubmit = this.activeForm.querySelector('[type=\"submit\"]');\n buttonSubmit.classList.add('loading', 'disabled');\n let formValues = this.getFormVals(contactForm);\n let consentHelperObj = {\n gdprId: contactForm.querySelector('.consent-checkbox') ? contactForm.querySelector('.consent-checkbox').id : this.params.gdprId,\n consentLabel: this.consentCheckboxText,\n email: formValues.email,\n formId: this.formId,\n formUrl: window.location.href,\n privacyPolicy: this.privacyPolicyText,\n paramsLocale: this.consentConfigInfo.locale,\n site: \"atlassian\"\n };\n\n this.consentHelper = new ConsentHelper(consentHelperObj, contactForm);\n this.consentHelper.submitForm(() => {\n this.sendToStreamhub(formValues)\n }, (error) => {\n this.consenthubFailure(error);\n });\n }\n });\n })\n }\n\n showCheckbox() {\n this.consents.forEach(consent => {\n consent.style.display = \"flex\";\n })\n }\n\n hideCheckboxAndConsent() {\n this.consentCheckboxes.forEach(consentCheckbox => {\n consentCheckbox.checked = true;\n })\n }\n\n getConsentInfo() {\n this.ConsentHub.requestConfig()\n .then(config => {\n this.consentConfigInfo = config;\n if (config.localeRequiresMarketingCommunicationOptIn) {\n this.showCheckbox();\n } else {\n this.hideCheckboxAndConsent();\n }\n })\n .catch(() => {\n this.showCheckbox();\n })\n }\n\n async getUserData() {\n const apiUrl = Environment.getAPIPrivateURL();\n const data = await fetch(`${apiUrl}/me`,\n {\n method: \"GET\",\n credentials: \"include\",\n headers: {\n \"Content-type\": \"application/json; charset=UTF-8\",\n }\n })\n .then((res) => res.json())\n .catch();\n\n if (data && data.email) {\n \n const emailFields = this.domRoot.querySelectorAll(\"input[type='email']\");\n if (emailFields.length) {\n emailFields[0].value = data.email;\n }\n }\n }\n\n setConditionalDisplays(conditionalType, conditionalValue, hide) {\n const conditionals = Array.from(this.domRoot.querySelectorAll(`.${conditionalType}-conditional`));\n conditionals.forEach(condition => {\n if (hide) {\n condition.style.display = \"none\";\n } else if (condition.classList.contains(conditionalValue)) {\n condition.style.display = \"flex\";\n } else {\n condition.style.display = \"none\";\n }\n });\n this.setFieldValidity()\n }\n\n}\n"],"names":["STAGING_ENDPOINT","concat","window","location","hostname","indexOf","stgConfig","BXP_EXPRESS_ENDPOINT","_defineProperty","_BXP_EXPRESS_ENDPOINT","Environment","postEmailToStreamHub","userEmail","environment","axios","user_email","postObjectToStreamhubContact","obj","endpoint","responseHandler","errorHandler","state","console","log","then","response","error","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","type","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","_typeof","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","Error","undefined","done","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","doneResult","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_arrayLikeToArray","arr","len","arr2","Array","_defineProperties","target","props","descriptor","input","hint","prim","toPrimitive","res","String","_toPrimitive","emailRegex","isFormChecking","isKeying","ContactSalesForm","domRoot","params","instance","Constructor","_classCallCheck","this","consentKey","consentType","privacyPolicyText","consentCheckboxText","consentConfigInfo","activeForm","querySelector","errorSubmit","ConsentHub","Client","consents","querySelectorAll","consentCheckboxes","errorMessages","referrers","referringURL","document","referrer","replace","contactForms","from","availableFormTypes","formTypes","availableFormTypeLabels","formTypeLabels","typeOfForm","urlParams","URLSearchParams","search","substring","urlFormType","get","tabs","fauxSelectors","productServiceInputs","textAreas","numberInputs","plainOptions","productOrService","productOrServiceTogglers","submitTo","formId","formDef","isIntercomTracking","toLowerCase","intercomAppId","postSubmission","redirect","form","mainFormContainer","postSubmitMessage","consentHelper","init","protoProps","_getUserData","_this","getConsentInfo","getUserData","formSubmitListener","tabsListener","productTogglersListener","fauxSelectorsListener","plainListeners","routeToForm","addMunchkin","setFieldValidity","setFieldValidityForCheckBoxes","addEventListener","clearForm","isProd","match","didInit","initMunchkin","Munchkin","s","createElement","src","onreadystatechange","readyState","onload","getElementsByTagName","appendChild","referralFound","findReferrerInSites","formTypeInput","includes","updateSelectorValue","parentNode","formType","links","l","startsWith","origin","_this2","plainOption","setConditionalDisplays","dataset","conditionalType","conditional","checked","numberInput","event","activeElement","preventDefault","textArea","lineBreaks","minHeight","style","selector","selectorOption","_selectorOption$attri","_selectorOption$attri2","options","selectedIndex","hasAttribute","attributes","otherParams","toString","history","replaceState","_this3","fauxSelector","_event","checkFormValidity","optionsContainer","close","productOrServiceToggler","previousElementSibling","classList","remove","setAttribute","add","setTimeout","display","focus","_this4","toggler","nextElementSibling","contains","toggleProductSelectionDropdown","code","parentEl","closest","dropdown","actualValue","localizedValue","innerText","e","Event","dispatchEvent","clientX","clientY","blur","relatedTarget","_this5","thisTab","index","tab","siblingTabs","newIndex","submitButton","checkValidity","className","buttonStyle","allFields","plainRegex","field","fieldIdentifier","id","fieldError","getElementById","setCustomValidity","errMessage","validity","valueMissing","missing","patternMismatch","email","pattern","tooShort","_errorMessages$tooSho","tooLong","_errorMessages$tooLon","rangeOverflow","_errorMessages$rangeO","rangeUnderflow","_errorMessages$rangeU","requirement","offsetParent","hasMessageEventListener","addRequiredAttribute","removeRequiredAttribute","targetElement","_this6","removeAttribute","removeEventListener","messageError","eventType","clearError","_this7","element","requiredInputsParentElement","targetInputElement","allCheckedInputs","serialize","array","intercomMapping","elements","isArray","_arrayWithoutHoles","_iterableToArray","o","minLen","n","test","_unsupportedIterableToArray","_nonIterableSpread","item","individual","Number","tagName","getAttribute","textFieldValue","itercomMappingKey","parts","cookie","split","shift","getFormVals","reduce","acc","data","href","tracking","innerHTML","formValues","currentTime","Date","random","Math","round","streamHubInfo","locale","getTime","getCookie","navigator","userAgent","trim","payLoad","assign","submitSuccess","submitFailure","_this8","contactForm","honeyPot","consentHelperObj","gdprId","consentLabel","formUrl","privacyPolicy","paramsLocale","site","ConsentHelper","submitForm","sendToStreamhub","consenthubFailure","consent","consentCheckbox","_this9","requestConfig","config","localeRequiresMarketingCommunicationOptIn","showCheckbox","hideCheckboxAndConsent","_callee","apiUrl","emailFields","_context","fetch","credentials","headers","json","args","arguments","apply","conditionalValue","hide","condition"],"sourceRoot":""}