mod-build 4.0.44 → 4.0.45-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -1
- package/package.json +1 -1
- package/tasks/grab-cdn.js +2 -1
- package/tasks/templates.js +4 -3
- package/public/resources/scripts/abandonment/abandonment-a4bbb36fbc8ed64042b8.min.js +0 -2
- package/public/resources/scripts/abandonment/abandonment.min.js +0 -2
- package/public/resources/scripts/callrail/callrail-14011d73b50a928de4b4.min.js +0 -2
- package/public/resources/scripts/callrail/callrail.min.js +0 -2
- package/public/resources/scripts/footer/footer-component-46dc0d7ca6af4fc3b76b.min.js +0 -2
- package/public/resources/scripts/footer/footer-component.min.js +0 -2
- package/public/resources/scripts/geolocation/geolocation.min.js +0 -2
- package/public/resources/scripts/helpers/addVWOTestQueryParam.min.js +0 -2
- package/public/resources/scripts/helpers/addVWOTestQueryParam.min.js.map +0 -1
- package/public/resources/scripts/helpers/additionalOpts.min.js +0 -2
- package/public/resources/scripts/helpers/additionalOpts.min.js.map +0 -1
- package/public/resources/scripts/helpers/getPhoneAssignmentData.min.js +0 -2
- package/public/resources/scripts/helpers/getPhoneAssignmentData.min.js.map +0 -1
- package/public/resources/scripts/helpers/initNumericOnlyFields.min.js +0 -2
- package/public/resources/scripts/helpers/initNumericOnlyFields.min.js.map +0 -1
- package/public/resources/scripts/helpers/initQSForm.min.js +0 -2
- package/public/resources/scripts/helpers/initQSForm.min.js.map +0 -1
- package/public/resources/scripts/helpers/initQuadTransform.min.js +0 -2
- package/public/resources/scripts/helpers/initQuadTransform.min.js.map +0 -1
- package/public/resources/scripts/helpers/isZipCodeValid.min.js +0 -2
- package/public/resources/scripts/helpers/isZipCodeValid.min.js.map +0 -1
- package/public/resources/scripts/helpers/observeVWOVariation.min.js +0 -2
- package/public/resources/scripts/helpers/observeVWOVariation.min.js.map +0 -1
- package/public/resources/scripts/helpers/opts.min.js +0 -2
- package/public/resources/scripts/helpers/opts.min.js.map +0 -1
- package/public/resources/scripts/jornaya.hbs +0 -35
- package/public/resources/scripts/jornaya.html +0 -35
- package/public/resources/scripts/mod-alytics/modalytics-be44027508c0438f6709.min.js +0 -2
- package/public/resources/scripts/mod-alytics/modalytics.min.js +0 -2
- package/public/resources/scripts/mod-form/form/contractor-0918337caf3dfede1609.min.js +0 -2
- package/public/resources/scripts/mod-form/form/contractor.min.js +0 -2
- package/public/resources/scripts/mod-form/form/homeowner-19a121b0e596042326f4.min.js +0 -2
- package/public/resources/scripts/mod-form/form/homeowner.min.js +0 -2
- package/public/resources/scripts/mod-utils/modutils-bc275eb41af515f626ef.min.js +0 -2
- package/public/resources/scripts/mod-utils/modutils.min.js +0 -2
- package/public/resources/scripts/trusted-form.hbs +0 -38
- package/public/resources/scripts/trusted-form.html +0 -38
- package/public/resources/styles/components/abandonment/abandonment-8a673f060817db6cb7dc.min.css +0 -1
- package/public/resources/styles/components/abandonment/abandonment.min.css +0 -1
- package/public/resources/styles/components/footer/mod-footer-d233fa64b6c8297c70ec.min.css +0 -1
- package/public/resources/styles/components/footer/mod-footer.min.css +0 -1
- package/public/resources/styles/components/footer/qs-footer-926e67c28d10c729db46.min.css +0 -1
- package/public/resources/styles/components/footer/qs-footer.min.css +0 -1
- package/src/resources/data/tcpa.json +0 -4
- package/src/resources/templates/modals/about/index.hbs +0 -9
- package/src/resources/templates/modals/about/index.html +0 -9
- package/src/resources/templates/modals/contact-us/index.hbs +0 -348
- package/src/resources/templates/modals/contact-us/index.html +0 -348
- package/src/resources/templates/modals/e-sign-consent/index.hbs +0 -35
- package/src/resources/templates/modals/e-sign-consent/index.html +0 -35
- package/src/resources/templates/modals/faq/index.hbs +0 -9
- package/src/resources/templates/modals/faq/index.html +0 -9
- package/src/resources/templates/modals/privacy/index.hbs +0 -237
- package/src/resources/templates/modals/privacy/index.html +0 -237
- package/src/resources/templates/modals/terms/index.hbs +0 -167
- package/src/resources/templates/modals/terms/index.html +0 -167
- package/src/shared-components/call-tracking/_call-tracking.scss +0 -311
- package/src/shared-components/call-tracking/call-tracking-icon.html +0 -8
- package/src/shared-components/call-tracking/call-tracking.html +0 -81
- package/src/shared-components/call-tracking/phone.svg +0 -6
- package/src/shared-components/card-button/_card-button.scss +0 -49
- package/src/shared-components/card-button/card-button.html +0 -9
- package/src/shared-components/carousel/_carousel.scss +0 -106
- package/src/shared-components/carousel/carousel.html +0 -23
- package/src/shared-components/carousel/carousel.js +0 -3573
- package/src/shared-components/carousel/carousel.js.map +0 -1
- package/src/shared-components/carousel/carousel.min.js +0 -2
- package/src/shared-components/carousel/carousel.min.js.map +0 -1
- package/src/shared-components/carousel/carousel.min.min.js +0 -2
- package/src/shared-components/carousel/carousel.min.min.js.map +0 -1
- package/src/shared-components/checkbox/_checkbox.scss +0 -130
- package/src/shared-components/checkbox/checkbox.html +0 -10
- package/src/shared-components/consent-capture/tcpa.html +0 -12
- package/src/shared-components/expand-collapse/_expand-collapse.scss +0 -93
- package/src/shared-components/expand-collapse/expand-collapse.html +0 -8
- package/src/shared-components/expand-collapse/expand-collapse.js +0 -40
- package/src/shared-components/expand-collapse/expand-collapse.min.js +0 -2
- package/src/shared-components/expand-collapse/expand-collapse.min.js.map +0 -1
- package/src/shared-components/featured-block/_featured-block.scss +0 -191
- package/src/shared-components/featured-block/featured-block.html +0 -80
- package/src/shared-components/foot-assets/foot-assets.html +0 -107
- package/src/shared-components/form-tcpa/form-tcpa-spanish.html +0 -61
- package/src/shared-components/form-tcpa/form-tcpa.html +0 -55
- package/src/shared-components/gtm-body/gtm-body.html +0 -4
- package/src/shared-components/head/head.html +0 -195
- package/src/shared-components/header/_header.scss +0 -200
- package/src/shared-components/header/header.html +0 -79
- package/src/shared-components/hero/_hero.scss +0 -276
- package/src/shared-components/hero/hero.html +0 -136
- package/src/shared-components/how-it-works/_how-it-works.scss +0 -138
- package/src/shared-components/how-it-works/how-it-works.html +0 -19
- package/src/shared-components/input/_input.scss +0 -242
- package/src/shared-components/input/input.html +0 -30
- package/src/shared-components/preloader/_preloader.scss +0 -61
- package/src/shared-components/preloader/preloader.html +0 -49
- package/src/shared-components/progress-bar/_progress-bar.scss +0 -142
- package/src/shared-components/progress-bar/progress-bar.html +0 -20
- package/src/shared-components/progress-bar/progress-bar.js +0 -26
- package/src/shared-components/progress-bar/progress-bar.min.js +0 -2
- package/src/shared-components/progress-bar/progress-bar.min.js.map +0 -1
- package/src/shared-components/radio-button/_radio-button.scss +0 -577
- package/src/shared-components/radio-button/radio-button.html +0 -25
- package/src/shared-components/reviews/_reviews.scss +0 -79
- package/src/shared-components/reviews/reviews.html +0 -27
- package/src/shared-components/section-deals/sitemap.xml +0 -9
- package/src/shared-components/select/_select.scss +0 -61
- package/src/shared-components/select/select.html +0 -8
- package/src/shared-components/steps/_steps.scss +0 -431
- package/src/shared-components/steps/defaultFormFieldConfig.json +0 -64
- package/src/shared-components/steps/step-fields.html +0 -36
- package/src/shared-components/steps/steps.html +0 -136
- package/src/shared-components/textarea/_textarea.scss +0 -96
- package/src/shared-components/textarea/textarea.html +0 -13
- package/src/shared-components/theme-toggle/_theme-toggle.scss +0 -68
- package/src/shared-components/theme-toggle/theme-toggle.html +0 -34
- package/src/shared-components/tile/_tile.scss +0 -117
- package/src/shared-components/tile/tile.html +0 -27
- package/src/shared-components/value-props/_value-props.scss +0 -99
- package/src/shared-components/value-props/value-props.html +0 -17
- package/src/shared-components/zip-control/_zip-control.scss +0 -42
- package/src/shared-components/zip-control/zip-control.html +0 -21
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 4.0.45
|
|
4
|
+
|
|
5
|
+
- Added the Clients List modal to be grabbed as part of the `grab-cdn` task.
|
|
6
|
+
- Replacing all the instances of data-branded-consent and data-service in the consent capture object
|
|
7
|
+
|
|
3
8
|
## 4.0.44
|
|
4
9
|
|
|
5
|
-
|
|
10
|
+
- Created new vite plugin to add data attribute to image source if class 'lazy' is added.
|
|
6
11
|
|
|
7
12
|
## 4.0.43
|
|
8
13
|
|
package/package.json
CHANGED
package/tasks/grab-cdn.js
CHANGED
|
@@ -92,7 +92,8 @@ export default async function(config) {
|
|
|
92
92
|
'/quote/resources/shared-resources/templates/modals/terms/': [`${srcFolder}/resources/templates/modals/terms/`, 'index.html'],
|
|
93
93
|
'/quote/resources/shared-resources/templates/modals/contact-us/': [`${srcFolder}/resources/templates/modals/contact-us/`, 'index.html'],
|
|
94
94
|
'/quote/resources/shared-resources/templates/modals/faq/': [`${srcFolder}/resources/templates/modals/faq/`, 'index.html'],
|
|
95
|
-
'/quote/resources/shared-resources/templates/modals/e-sign-consent/': [`${srcFolder}/resources/templates/modals/e-sign-consent/`, 'index.html']
|
|
95
|
+
'/quote/resources/shared-resources/templates/modals/e-sign-consent/': [`${srcFolder}/resources/templates/modals/e-sign-consent/`, 'index.html'],
|
|
96
|
+
'/quote/resources/shared-resources/templates/modals/clients/': [`${srcFolder}/resources/templates/modals/clients/`, 'index.html']
|
|
96
97
|
})
|
|
97
98
|
|
|
98
99
|
if (isModWhiteLabel || domainHasModernize) {
|
package/tasks/templates.js
CHANGED
|
@@ -179,9 +179,10 @@ async function embedBrandedDisplayName(apiUrl, consentCaptureObject, key, servic
|
|
|
179
179
|
}
|
|
180
180
|
|
|
181
181
|
const brandedDisplayName = getBrandedDisplayName.data.data[key];
|
|
182
|
-
|
|
183
|
-
consentCaptureObject
|
|
184
|
-
|
|
182
|
+
// replacing data-branded-consent and data-service
|
|
183
|
+
consentCaptureObject = JSON.parse(
|
|
184
|
+
JSON.stringify(consentCaptureObject).replace(/<span data-branded-consent><\/span>/g, `<span data-branded-consent>${brandedDisplayName}</span>`).replace(/<span data-service><\/span>/g, `<span data-service>${service}</span>`)
|
|
185
|
+
);
|
|
185
186
|
}
|
|
186
187
|
|
|
187
188
|
const getConsentCaptureLanguage = async function(config, tempConfig) {
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var modalDialog=document.querySelector(".modal--abandonment"),abandonment={event:new Event("abandonment.closed"),modalElement:modalDialog||document.querySelector(".abandonment__modal"),isModalDialog:!!modalDialog,heapTrack:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e&&modUtils.heap("track",["Abandonment popup | ".concat(e),t])},closeModal:function(e){this.heapTrack("Closed"),this.isModalDialog?(e.close(),document.body.classList.remove("no-scroll"),e.setAttribute("aria-hidden","true"),document.querySelector(".step--active").focus()):this.modalElement.style.display="none",this.modalElement.parentNode.dispatchEvent(this.event)},initClickTracking:function(){var e=this,t=document.querySelectorAll("#abandonment .btn-call-now"),n=document.querySelectorAll("#abandonment .btn-get-price-quotes");t&&t.forEach((function(t){t.addEventListener("click",(function(t){e.closeModal(e.modalElement),e.heapTrack("Clicked Phone Number",{phoneNumber:t.target.textContent.trim()})}))})),n&&n.forEach((function(t){t.addEventListener("click",(function(){e.closeModal(e.modalElement),e.heapTrack("Clicked CTA")}))}))},initCloseListener:function(){var e=this;this.isModalDialog?(this.modalElement.querySelector('[data-close="dialog"]').addEventListener("click",(function(){e.closeModal(e.modalElement)})),document.body.addEventListener("click",(function(t){t.target.id===e.modalElement.id&&e.closeModal(e.modalElement)})),document.addEventListener("keydown",(function(t){"Escape"===t.key&&e.closeModal(e.modalElement)}))):document.addEventListener("click",(function(t){t.target.id&&("abandonment-modal"!==t.target.id&&"btnModalClose"!==t.target.id||e.modalElement&&(e.modalElement.style.display="none",document.body.classList.remove("no-scroll"),e.heapTrack("Closed"),e.modalElement.dispatchEvent(e.event)))}))},initAbandonmentForm:function(){var e=document.getElementById("abandonment-form");if(e){form.init(e,{isAbandonmentForm:!0,hasBackButtons:!1,hasClickToProceed:!1,hasProgressbar:!1,hasZipChange:!1,skipStep:{device:"",index:null,shouldSkip:!1}})}},setAbandonmentType:function(){"default"===(document.getElementById("abandonment-form")?"form":"default")?this.initClickTracking():this.initAbandonmentForm()},init:function(){this.setAbandonmentType(),this.initCloseListener();var e=window.location.hash;this.heapTrack("Shown",{step:e}),this.isModalDialog&&(this.modalElement.show(),this.modalElement.focus(),this.modalElement.setAttribute("aria-hidden","false"),modUtils.trapTabFocusInDialog("abandonmentDialog"))}};abandonment.init();
|
|
2
|
-
//# sourceMappingURL=abandonment.min.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var modalDialog=document.querySelector(".modal--abandonment"),abandonment={event:new Event("abandonment.closed"),modalElement:modalDialog||document.querySelector(".abandonment__modal"),isModalDialog:!!modalDialog,heapTrack:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e&&modUtils.heap("track",["Abandonment popup | ".concat(e),t])},closeModal:function(e){this.heapTrack("Closed"),this.isModalDialog?(e.close(),document.body.classList.remove("no-scroll"),e.setAttribute("aria-hidden","true"),document.querySelector(".step--active").focus()):this.modalElement.style.display="none",this.modalElement.parentNode.dispatchEvent(this.event)},initClickTracking:function(){var e=this,t=document.querySelectorAll("#abandonment .btn-call-now"),n=document.querySelectorAll("#abandonment .btn-get-price-quotes");t&&t.forEach((function(t){t.addEventListener("click",(function(t){e.closeModal(e.modalElement),e.heapTrack("Clicked Phone Number",{phoneNumber:t.target.textContent.trim()})}))})),n&&n.forEach((function(t){t.addEventListener("click",(function(){e.closeModal(e.modalElement),e.heapTrack("Clicked CTA")}))}))},initCloseListener:function(){var e=this;this.isModalDialog?(this.modalElement.querySelector('[data-close="dialog"]').addEventListener("click",(function(){e.closeModal(e.modalElement)})),document.body.addEventListener("click",(function(t){t.target.id===e.modalElement.id&&e.closeModal(e.modalElement)})),document.addEventListener("keydown",(function(t){"Escape"===t.key&&e.closeModal(e.modalElement)}))):document.addEventListener("click",(function(t){t.target.id&&("abandonment-modal"!==t.target.id&&"btnModalClose"!==t.target.id||e.modalElement&&(e.modalElement.style.display="none",document.body.classList.remove("no-scroll"),e.heapTrack("Closed"),e.modalElement.dispatchEvent(e.event)))}))},initAbandonmentForm:function(){var e=document.getElementById("abandonment-form");if(e){form.init(e,{isAbandonmentForm:!0,hasBackButtons:!1,hasClickToProceed:!1,hasProgressbar:!1,hasZipChange:!1,skipStep:{device:"",index:null,shouldSkip:!1}})}},setAbandonmentType:function(){"default"===(document.getElementById("abandonment-form")?"form":"default")?this.initClickTracking():this.initAbandonmentForm()},init:function(){this.setAbandonmentType(),this.initCloseListener();var e=window.location.hash;this.heapTrack("Shown",{step:e}),this.isModalDialog&&(this.modalElement.show(),this.modalElement.focus(),this.modalElement.setAttribute("aria-hidden","false"),modUtils.trapTabFocusInDialog("abandonmentDialog"))}};abandonment.init();
|
|
2
|
-
//# sourceMappingURL=abandonment.min.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var callrail={setCallRailCookie:function(t){var a,o=Object.entries(t);a=(o=o.map((function(t){return t.join("=")}))).join("|"),modUtils.setCookie("qs_track_data",a)},init:function(t){var a=this;if(null===modUtils.getCookie("qs_track_data"))var o=0,i=setInterval((function(){if(++o,Object.keys(modForm.opts.quadLinkParams).length>0||20===o){clearInterval(i);var r=modUtils.getUrlParamsToObject(),e=void 0!==r.PartnerSourceID?r.PartnerSourceID:0,s={afk:modForm.opts.quadLinkParams.AffiliateKey,clk:modForm.opts.quadLinkParams.CLK,ccid:modForm.opts.quadLinkParams.CCID,qtr:modForm.opts.quadLinkParams.QTR};0!==e&&(s.psid=e),a.setCallRailCookie(s),modUtils.fetchScript(t)}}),1e3);else modUtils.fetchScript(t)}};
|
|
2
|
-
//# sourceMappingURL=callrail.min.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var callrail={setCallRailCookie:function(t){var a,o=Object.entries(t);a=(o=o.map((function(t){return t.join("=")}))).join("|"),modUtils.setCookie("qs_track_data",a)},init:function(t){var a=this;if(null===modUtils.getCookie("qs_track_data"))var o=0,i=setInterval((function(){if(++o,Object.keys(modForm.opts.quadLinkParams).length>0||20===o){clearInterval(i);var r=modUtils.getUrlParamsToObject(),e=void 0!==r.PartnerSourceID?r.PartnerSourceID:0,s={afk:modForm.opts.quadLinkParams.AffiliateKey,clk:modForm.opts.quadLinkParams.CLK,ccid:modForm.opts.quadLinkParams.CCID,qtr:modForm.opts.quadLinkParams.QTR};0!==e&&(s.psid=e),a.setCallRailCookie(s),modUtils.fetchScript(t)}}),1e3);else modUtils.fetchScript(t)}};
|
|
2
|
-
//# sourceMappingURL=callrail.min.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";function _slicedToArray(t,e){return _arrayWithHoles(t)||_iterableToArrayLimit(t,e)||_unsupportedIterableToArray(t,e)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(t,e){if(t){if("string"==typeof t)return _arrayLikeToArray(t,e);var o={}.toString.call(t).slice(8,-1);return"Object"===o&&t.constructor&&(o=t.constructor.name),"Map"===o||"Set"===o?Array.from(t):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?_arrayLikeToArray(t,e):void 0}}function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var o=0,n=Array(e);o<e;o++)n[o]=t[o];return n}function _iterableToArrayLimit(t,e){var o=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=o){var n,a,r,i,c=[],s=!0,l=!1;try{if(r=(o=o.call(t)).next,0===e){if(Object(o)!==o)return;s=!1}else for(;!(s=(n=r.call(o)).done)&&(c.push(n.value),c.length!==e);s=!0);}catch(t){l=!0,a=t}finally{try{if(!s&&null!=o.return&&(i=o.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}function _arrayWithHoles(t){if(Array.isArray(t))return t}function _typeof(t){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_typeof(t)}var Footer={element:document.querySelector("#footer-component"),siteData:"object"===("undefined"==typeof siteData?"undefined":_typeof(siteData))?siteData:{},footerType:"qs",modDomain:"https://modernize.com",refocusOnElement:"",isBestCompany:window.location.host.includes("bestcompany")||window.location.host.includes("topsolarcompanies")||window.location.host.includes("besthomesecuritycompanys"),defaultFooter:{mod:{copyright:{year:(new Date).getFullYear(),text:"All Rights Reserved.",spanishText:"Todos los derechos reservados.",companyName:"Modernize.com"},contractor:{text:"Are you a contractor?",linkText:"Join Our Contractor Network",link:"https://modernize.com/pro/register/leads/?utm_campaign=quinstreet-referral",spanishText:"¿Eres un contratista?",spanishLinkText:"Únete a nuestra red de contratistas"},captchaDisclosure:{text:"This site is protected by reCAPTCHA and the Google",privacy:{text:"Privacy Policy",spanishText:"Política de Privacidad",url:"https://policies.google.com/privacy"},terms:{text:"Terms of Service",spanishText:"Términos de Servicio",url:"https://policies.google.com/terms"}}},qs:{links:[{id:"about",url:"/?modal=about",modal:!0,text:"About",spanishText:"Acerca de"},{id:"privacy",url:"/?modal=privacy",modal:!0,text:"Privacy Notice",spanishText:"Aviso de Privacidad"},{id:"publisher",url:"https://modernize.com/contact?publisher",text:"Affiliates",spanishText:"Afiliados",modal:!1},{id:"tou",url:"/?modal=terms",modal:!0,text:"Terms of Use",spanishText:"Términos de Uso"},{id:"contact",url:"/?modal=contact-us",modal:!0,text:"Contact Us",spanishText:"Contáctanos"},{id:"ccpa",url:"https://privacy-central.securiti.ai/#/dsr/1b319101-f00c-470f-a7f0-26aa81f057b8",modal:!1,text:"Do Not Sell or Share My Personal Information",spanishText:"No vender ni compartir mi información personal"}],copyright:{companyName:"QuinStreet, Inc",text:"All Rights Reserved.",spanishText:"Todos los derechos reservados.",year:(new Date).getFullYear()},contractor:{text:"Are you a contractor?",linkText:"Join Our Contractor Network",link:"https://modernize.com/pro/register/leads/?utm_campaign=quinstreet-referral",spanishText:"¿Eres un contratista?",spanishLinkText:"Únete a nuestra red de contratistas"}}},render:function(t){this.element.innerHTML=t},getFooterParams:function(){var t=document.querySelector('script[src*="footer-component"]');t&&(t.src&&t.src.indexOf("qa.")>-1&&(this.modDomain="https://qa.modernize.com"),("mod"===t.getAttribute("data-type")||t.src.indexOf("mod-footer")>-1)&&(this.footerType="mod"))},getAssetPath:function(){return"".concat(this.modDomain,"/quote/resources/assets")},getLinkTag:function(t){var e=this.siteData,o=e.isSpanishPage,n=e.pathSubdirectory,a="".concat(n||""===n?n:"/","resources/templates/modals/");return'<a\n\t\t\t\tid="'.concat(t.id,'"\n\t\t\t\thref="').concat(t.url).concat(t.anchor?"#"+t.anchor:"",'"\n\t\t\t\t').concat(!0===t.modal?'data-load="'.concat(a).concat(t.url.replace("/?modal=",""),'/"\n\t\t\t\t\tdata-bind="modal-page"\n\t\t\t\t\tdata-anchor="#').concat(t.anchor,'"'):'target="'.concat(t.target?t.target:"_blank",'"\n\t\t\t\t\trel="noopener noreferrer"'),">\n\t\t\t\t").concat(o?t.spanishText:t.text,"\n\t\t\t</a>")},getModCopyRightAndRecaptcha:function(){var t=this.defaultFooter.mod,e=t.copyright,o=t.captchaDisclosure,n=this.siteData,a=n.companyName,r=n.isSpanishPage;return'\n\t\t\t<p class="footer__copyright">\n\t\t\t\t© '.concat(e.year," ").concat(a||e.companyName,".\n\t\t\t\t").concat(r?e.spanishText:e.text,'\n\t\t\t</p>\n\t\t\t<p class="footer__copyright footer__captcha-disclosure">\n\t\t\t\t').concat(r?'Este sitio está protegido por reCAPTCHA y se aplican la <a href="'.concat(o.privacy.url,'" target="_blank">').concat(o.privacy.spanishText,'</a> y <a href="').concat(o.terms.url,'" target="_blank">').concat(o.terms.spanishText,"</a> de Google"):"".concat(o.text,'\n\t\t\t\t\t<a href="').concat(o.privacy.url,'" target="_blank">').concat(o.privacy.text,'</a> and\n\t\t\t\t\t<a href="').concat(o.terms.url,'" target="_blank">').concat(o.terms.text,"</a> apply."),"\n\t\t\t</p>")},getModFooterLinks:function(){var t=this,e=this.defaultFooter.qs.links,o=this.siteData,n=o.footerLinks,a=o.isQuotePage,r=o.isQSPage;return'\n\t\t\t<ul class="footer__links">\n\t\t\t\t'.concat(e.map((function(e){if(!a&&r||("tou"===e.id&&(e.text="Terms & Conditions",e.spanishText="Términos y Condiciones"),"about"===e.id&&(e.text="About Us",e.spanishText="Acerca de Nosotros"),"publisher"===e.id&&(e.text="I'm a Publisher",e.spanishText="Soy Editor"),"contact"!==e.id))return"\n\t\t\t\t\t".concat(t.element.hasAttribute("data-hide-".concat(e.id))?"":"<li>\n\t\t\t\t\t\t".concat(t.getLinkTag(e),"\n\t\t\t\t\t</li>"))})).join(""),"\n\n\t\t\t\t").concat(n?n.map((function(e){return"\n\t\t\t\t\t<li>\n\t\t\t\t\t\t".concat(t.getLinkTag(e),"\n\t\t\t\t\t</li>")})).join(""):"","\n\t\t\t</ul>")},displayModFooter:function(){var t=this.defaultFooter.mod.contractor,e=this.siteData,o=e.bbbLogoPath,n=e.trade,a=e.isQuotePage,r=e.isSpanishPage,i="".concat(this.getAssetPath(),a?"/images/logos/misc/bbb-dark.svg":"/images/logos/misc/bbb.svg"),c=o||i,s=this.element;this.render('<div class="footer'.concat(a?" footer--quote-page":"").concat(r?" footer--spanish":"",'">\n\t\t\t\t<div class="container">\n\t\t\t\t\t').concat(s.hasAttribute("data-hide-bbb")?"":'<img width="130" height="47" loading="lazy" src="'.concat(c,'" alt="BBB Accredited Logo" class="footer__bbb-logo footer__bbb\n\t\t\t\t\t\t\t').concat(s.hasAttribute("data-hide-bbb-xs")?"hidden-xs":"",'">'),"\n\t\t\t\t\t").concat(s.hasAttribute("data-hide-contractor")?"":'<div class="footer__head-link">\n\t\t\t\t\t\t'.concat(r?t.spanishText:t.text,'\n\t\t\t\t\t\t<a target="_blank" href="').concat(t.link).concat(n?"&trade=".concat(n):"",'" rel="noopener noreferrer">\n\t\t\t\t\t\t\t').concat(r?t.spanishLinkText:t.linkText,"\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</div>"),"\n\n\t\t\t\t\t\t").concat(this.getModFooterLinks(),"\n\t\t\t\t\t\t").concat(this.getModCopyRightAndRecaptcha(),"\n\t\t\t\t</div>\n\t\t\t</div>"))},displayQsFooter:function(){var t=this,e=this.defaultFooter.qs,o=e.contractor,n=e.links,a=e.copyright,r=t.siteData,i=r.trade,c=r.footerLinks,s=r.bbbLogoPath,l=r.isSpanishPage,d=r.companyName,u=this.element,h=d||a.companyName;this.render('<footer class="footer '.concat(l?"footer--spanish":"",'">\n\t\t\t\t<div class="container">\n\t\t\t\t\t').concat(u.hasAttribute("data-show-bbb")?'<svg class="footer__bbb-logo footer__bbb">\n\t\t\t\t\t\t<use href="'.concat(s,'"></use>\n\t\t\t\t\t</svg>'):"","\n\n\t\t\t\t\t").concat(u.hasAttribute("data-hide-contractor")?"":'<div class="footer__head-link">\n\t\t\t\t\t\t'.concat(l?o.spanishText:o.text,'\n\t\t\t\t\t\t<a href="').concat(o.link).concat(i?"&trade=".concat(i):"",'" target="_blank" rel="noopener noreferrer">\n\t\t\t\t\t\t\t').concat(l?o.spanishLinkText:o.linkText,"\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</div>"),'\n\n\t\t\t\t\t<ul class="footer__links">\n\t\t\t\t\t\t').concat(n.map((function(e){return"".concat(u.hasAttribute("data-hide-".concat(e.id))?"":"<li>\n\t\t\t\t\t\t\t\t\t\t".concat(t.getLinkTag(e),"\n\t\t\t\t\t\t\t\t\t</li>"))})).join(""),"\n\n\t\t\t\t\t\t").concat(c?c.map((function(e){return'<li style="'.concat(e.order?"order:".concat(e.order):"",'">\n\t\t\t\t\t\t\t\t\t').concat(t.getLinkTag(e),"\n\t\t\t\t\t\t\t\t</li>")})).join(""):"","\n\t\t\t\t\t</ul>\n\t\t\t\t\t").concat(u.hasAttribute("data-hide-copyright")?"":'<p class="footer__copyright">\n\t\t\t\t\t\t© '.concat(a.year," ").concat(t.isBestCompany?"Modernize":h,". ").concat(l?a.spanishText:a.text,"\n\t\t\t\t\t</p>"),"\n\t\t\t\t</div>\n\t\t\t</footer>"))},loadCss:function(){var t=document.getElementsByTagName("head")[0],e=document.createElement("link");e.type="text/css",e.rel="stylesheet","mod"===this.footerType?e.href="".concat("/resources/styles/components/footer/mod-footer-d233fa64b6c8297c70ec.min.css"):e.href="".concat("/resources/styles/components/footer/qs-footer-926e67c28d10c729db46.min.css"),t.appendChild(e)},getQueryParam:function(t){var e=window.location.search.match(new RegExp("[?&]"+t+"=([^&]+)"));return e?e[1]:null},camelToUnderscore:function(t){return t.replace(/([A-Z])/g," $1").split(" ").join("_").toLowerCase()},prepopModalTemplateWithSiteData:function(t){var e={company_name:this.isBestCompany?"Modernize":this.siteData.company_name||("mod"===this.footerType?"Modernize.com":"Quinstreet, Inc."),domain:window.location.host};return Object.entries(e).forEach((function(e){var o=_slicedToArray(e,2),n=o[0],a=o[1],r=new RegExp("{{("+n+"|"+Footer.camelToUnderscore(n)+")}}","gi");t=t.replace(r,a)})),t},initModalLinks:function(){var t=this,e='a[data-bind="modal-page"]',o="info-modal",n=['<dialog id="'+o+'" role="dialog" aria-labelledby="footer-modal-title" aria-hidden="true" tabindex="-1" style="border: 0; background-color: transparent; outline:0; padding:0; max-width: 100%; max-height: 100%; height: 100%; position: fixed; top: 0; z-index: 100;">','<div class="modal-dialog">','<div class="modal-content">','<div class="modal-header">','<h1 id="footer-modal-title" class="modal-title"></h1>',"</div>",'<div class="modal-body">Loading...</div>','<div class="modal-footer">','<button type="button" class="btn btn-primary btn--primary close" data-dismiss="modal" data-close="dialog">Close</button>',"</div>","</div>","</div>","</dialog>"].join("");document.querySelectorAll(e).forEach((function(e){e.addEventListener("click",(function(e){e.preventDefault();var a=this,r=a.getAttribute("data-load"),i=a.getAttribute("id");document.getElementById(o)&&document.getElementById(o).remove(),document.body.insertAdjacentHTML("beforeend",n);var c=document.getElementById(o),s=c.querySelector(".modal-title"),l=c.querySelector(".modal-body");s.textContent=a.textContent,fetch(r).then((function(t){return t.text()})).then((function(t){l.innerHTML=Footer.prepopModalTemplateWithSiteData(t),c.querySelectorAll("a[href^=\\#]").forEach((function(t){t.addEventListener("click",(function(t){t.preventDefault();var e=c.querySelector(this.hash);e.scrollIntoView({behavior:"smooth"});var o=l.querySelectorAll("section");l.addEventListener("scroll",(function t(){o.forEach((function(t){t.blur()})),l.classList.contains("scrolling")||(l.classList.add("scrolling"),setTimeout((function(){l.classList.remove("scrolling"),e.focus(),l.removeEventListener("scroll",t)}),750))}))}))}));var e=a.getAttribute("data-anchor");e&&"#undefined"!==e&&document.querySelector(e).scrollIntoView(),modUtils.trapTabFocusInDialog(o),Footer.initCloseDialog(o)})),c.show(),c.focus(),c.setAttribute("aria-hidden","false"),t.refocusOnElement=i;var d=new MutationObserver((function(){l.hasChildNodes()&&(d.disconnect(),function(){for(var t=l.getElementsByTagName("script"),e=0;e<t.length;e++){var o=t[e].innerText;new Function(o)()}var n=l.querySelectorAll("script[src]");function a(){}for(var r=0;r<n.length;r++){var i=document.createElement("script");i.src=n[r].src,i.onload=a,document.head.appendChild(i)}}())}));c.open&&d.observe(l,{childList:!0,subtree:!0})}))}));var a=this.getQueryParam("modal");a&&document.querySelectorAll("".concat(e,'[href="/?modal=').concat(a,'"]:first')).click();var r=window.location.search;r&&(r=r.substring(1),document.querySelectorAll(e).forEach((function(t){var e=t.getAttribute("href");e+="&"+r,t.setAttribute("href",e)})))},closeModal:function(t){var e=document.body.classList.contains("modal-opened-globally");t.close(),t.setAttribute("aria-hidden","true"),this.refocusOnElement&&!e&&(document.getElementById(this.refocusOnElement).focus(),this.refocusOnElement=""),e&&document.body.classList.remove("modal-opened-globally")},initCloseDialog:function(t){var e=document.getElementById(t),o=this;e.querySelector('[data-close="dialog"]').addEventListener("click",(function(){o.closeModal(e)})),document.body.addEventListener("click",(function(n){n.target.id===t&&o.closeModal(e)})),document.addEventListener("keydown",(function(t){"Escape"===t.key&&o.closeModal(e)}))},init:function(){this.getFooterParams(),this.loadCss(),"mod"===this.footerType?this.displayModFooter():this.displayQsFooter(),this.initModalLinks()}};window.addEventListener("load",(function(){"function"==typeof window.HTMLDialogElement&&modUtils.heap("track",["HTML Dialog Element Supported"]),"IdlizeQueue"in window?window.IdlizeQueue.pushTask((function(){Footer.init()})):Footer.init()}));
|
|
2
|
-
//# sourceMappingURL=footer-component.min.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";function _slicedToArray(t,e){return _arrayWithHoles(t)||_iterableToArrayLimit(t,e)||_unsupportedIterableToArray(t,e)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(t,e){if(t){if("string"==typeof t)return _arrayLikeToArray(t,e);var o={}.toString.call(t).slice(8,-1);return"Object"===o&&t.constructor&&(o=t.constructor.name),"Map"===o||"Set"===o?Array.from(t):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?_arrayLikeToArray(t,e):void 0}}function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var o=0,n=Array(e);o<e;o++)n[o]=t[o];return n}function _iterableToArrayLimit(t,e){var o=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=o){var n,a,r,i,c=[],s=!0,l=!1;try{if(r=(o=o.call(t)).next,0===e){if(Object(o)!==o)return;s=!1}else for(;!(s=(n=r.call(o)).done)&&(c.push(n.value),c.length!==e);s=!0);}catch(t){l=!0,a=t}finally{try{if(!s&&null!=o.return&&(i=o.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}function _arrayWithHoles(t){if(Array.isArray(t))return t}function _typeof(t){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_typeof(t)}var Footer={element:document.querySelector("#footer-component"),siteData:"object"===("undefined"==typeof siteData?"undefined":_typeof(siteData))?siteData:{},footerType:"qs",modDomain:"https://modernize.com",refocusOnElement:"",isBestCompany:window.location.host.includes("bestcompany")||window.location.host.includes("topsolarcompanies")||window.location.host.includes("besthomesecuritycompanys"),defaultFooter:{mod:{copyright:{year:(new Date).getFullYear(),text:"All Rights Reserved.",spanishText:"Todos los derechos reservados.",companyName:"Modernize.com"},contractor:{text:"Are you a contractor?",linkText:"Join Our Contractor Network",link:"https://modernize.com/pro/register/leads/?utm_campaign=quinstreet-referral",spanishText:"¿Eres un contratista?",spanishLinkText:"Únete a nuestra red de contratistas"},captchaDisclosure:{text:"This site is protected by reCAPTCHA and the Google",privacy:{text:"Privacy Policy",spanishText:"Política de Privacidad",url:"https://policies.google.com/privacy"},terms:{text:"Terms of Service",spanishText:"Términos de Servicio",url:"https://policies.google.com/terms"}}},qs:{links:[{id:"about",url:"/?modal=about",modal:!0,text:"About",spanishText:"Acerca de"},{id:"privacy",url:"/?modal=privacy",modal:!0,text:"Privacy Notice",spanishText:"Aviso de Privacidad"},{id:"publisher",url:"https://modernize.com/contact?publisher",text:"Affiliates",spanishText:"Afiliados",modal:!1},{id:"tou",url:"/?modal=terms",modal:!0,text:"Terms of Use",spanishText:"Términos de Uso"},{id:"contact",url:"/?modal=contact-us",modal:!0,text:"Contact Us",spanishText:"Contáctanos"},{id:"ccpa",url:"https://privacy-central.securiti.ai/#/dsr/1b319101-f00c-470f-a7f0-26aa81f057b8",modal:!1,text:"Do Not Sell or Share My Personal Information",spanishText:"No vender ni compartir mi información personal"}],copyright:{companyName:"QuinStreet, Inc",text:"All Rights Reserved.",spanishText:"Todos los derechos reservados.",year:(new Date).getFullYear()},contractor:{text:"Are you a contractor?",linkText:"Join Our Contractor Network",link:"https://modernize.com/pro/register/leads/?utm_campaign=quinstreet-referral",spanishText:"¿Eres un contratista?",spanishLinkText:"Únete a nuestra red de contratistas"}}},render:function(t){this.element.innerHTML=t},getFooterParams:function(){var t=document.querySelector('script[src*="footer-component"]');t&&(t.src&&t.src.indexOf("qa.")>-1&&(this.modDomain="https://qa.modernize.com"),("mod"===t.getAttribute("data-type")||t.src.indexOf("mod-footer")>-1)&&(this.footerType="mod"))},getAssetPath:function(){return"".concat(this.modDomain,"/quote/resources/assets")},getLinkTag:function(t){var e=this.siteData,o=e.isSpanishPage,n=e.pathSubdirectory,a="".concat(n||""===n?n:"/","resources/templates/modals/");return'<a\n\t\t\t\tid="'.concat(t.id,'"\n\t\t\t\thref="').concat(t.url).concat(t.anchor?"#"+t.anchor:"",'"\n\t\t\t\t').concat(!0===t.modal?'data-load="'.concat(a).concat(t.url.replace("/?modal=",""),'/"\n\t\t\t\t\tdata-bind="modal-page"\n\t\t\t\t\tdata-anchor="#').concat(t.anchor,'"'):'target="'.concat(t.target?t.target:"_blank",'"\n\t\t\t\t\trel="noopener noreferrer"'),">\n\t\t\t\t").concat(o?t.spanishText:t.text,"\n\t\t\t</a>")},getModCopyRightAndRecaptcha:function(){var t=this.defaultFooter.mod,e=t.copyright,o=t.captchaDisclosure,n=this.siteData,a=n.companyName,r=n.isSpanishPage;return'\n\t\t\t<p class="footer__copyright">\n\t\t\t\t© '.concat(e.year," ").concat(a||e.companyName,".\n\t\t\t\t").concat(r?e.spanishText:e.text,'\n\t\t\t</p>\n\t\t\t<p class="footer__copyright footer__captcha-disclosure">\n\t\t\t\t').concat(r?'Este sitio está protegido por reCAPTCHA y se aplican la <a href="'.concat(o.privacy.url,'" target="_blank">').concat(o.privacy.spanishText,'</a> y <a href="').concat(o.terms.url,'" target="_blank">').concat(o.terms.spanishText,"</a> de Google"):"".concat(o.text,'\n\t\t\t\t\t<a href="').concat(o.privacy.url,'" target="_blank">').concat(o.privacy.text,'</a> and\n\t\t\t\t\t<a href="').concat(o.terms.url,'" target="_blank">').concat(o.terms.text,"</a> apply."),"\n\t\t\t</p>")},getModFooterLinks:function(){var t=this,e=this.defaultFooter.qs.links,o=this.siteData,n=o.footerLinks,a=o.isQuotePage,r=o.isQSPage;return'\n\t\t\t<ul class="footer__links">\n\t\t\t\t'.concat(e.map((function(e){if(!a&&r||("tou"===e.id&&(e.text="Terms & Conditions",e.spanishText="Términos y Condiciones"),"about"===e.id&&(e.text="About Us",e.spanishText="Acerca de Nosotros"),"publisher"===e.id&&(e.text="I'm a Publisher",e.spanishText="Soy Editor"),"contact"!==e.id))return"\n\t\t\t\t\t".concat(t.element.hasAttribute("data-hide-".concat(e.id))?"":"<li>\n\t\t\t\t\t\t".concat(t.getLinkTag(e),"\n\t\t\t\t\t</li>"))})).join(""),"\n\n\t\t\t\t").concat(n?n.map((function(e){return"\n\t\t\t\t\t<li>\n\t\t\t\t\t\t".concat(t.getLinkTag(e),"\n\t\t\t\t\t</li>")})).join(""):"","\n\t\t\t</ul>")},displayModFooter:function(){var t=this.defaultFooter.mod.contractor,e=this.siteData,o=e.bbbLogoPath,n=e.trade,a=e.isQuotePage,r=e.isSpanishPage,i="".concat(this.getAssetPath(),a?"/images/logos/misc/bbb-dark.svg":"/images/logos/misc/bbb.svg"),c=o||i,s=this.element;this.render('<div class="footer'.concat(a?" footer--quote-page":"").concat(r?" footer--spanish":"",'">\n\t\t\t\t<div class="container">\n\t\t\t\t\t').concat(s.hasAttribute("data-hide-bbb")?"":'<img width="130" height="47" loading="lazy" src="'.concat(c,'" alt="BBB Accredited Logo" class="footer__bbb-logo footer__bbb\n\t\t\t\t\t\t\t').concat(s.hasAttribute("data-hide-bbb-xs")?"hidden-xs":"",'">'),"\n\t\t\t\t\t").concat(s.hasAttribute("data-hide-contractor")?"":'<div class="footer__head-link">\n\t\t\t\t\t\t'.concat(r?t.spanishText:t.text,'\n\t\t\t\t\t\t<a target="_blank" href="').concat(t.link).concat(n?"&trade=".concat(n):"",'" rel="noopener noreferrer">\n\t\t\t\t\t\t\t').concat(r?t.spanishLinkText:t.linkText,"\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</div>"),"\n\n\t\t\t\t\t\t").concat(this.getModFooterLinks(),"\n\t\t\t\t\t\t").concat(this.getModCopyRightAndRecaptcha(),"\n\t\t\t\t</div>\n\t\t\t</div>"))},displayQsFooter:function(){var t=this,e=this.defaultFooter.qs,o=e.contractor,n=e.links,a=e.copyright,r=t.siteData,i=r.trade,c=r.footerLinks,s=r.bbbLogoPath,l=r.isSpanishPage,d=r.companyName,u=this.element,h=d||a.companyName;this.render('<footer class="footer '.concat(l?"footer--spanish":"",'">\n\t\t\t\t<div class="container">\n\t\t\t\t\t').concat(u.hasAttribute("data-show-bbb")?'<svg class="footer__bbb-logo footer__bbb">\n\t\t\t\t\t\t<use href="'.concat(s,'"></use>\n\t\t\t\t\t</svg>'):"","\n\n\t\t\t\t\t").concat(u.hasAttribute("data-hide-contractor")?"":'<div class="footer__head-link">\n\t\t\t\t\t\t'.concat(l?o.spanishText:o.text,'\n\t\t\t\t\t\t<a href="').concat(o.link).concat(i?"&trade=".concat(i):"",'" target="_blank" rel="noopener noreferrer">\n\t\t\t\t\t\t\t').concat(l?o.spanishLinkText:o.linkText,"\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</div>"),'\n\n\t\t\t\t\t<ul class="footer__links">\n\t\t\t\t\t\t').concat(n.map((function(e){return"".concat(u.hasAttribute("data-hide-".concat(e.id))?"":"<li>\n\t\t\t\t\t\t\t\t\t\t".concat(t.getLinkTag(e),"\n\t\t\t\t\t\t\t\t\t</li>"))})).join(""),"\n\n\t\t\t\t\t\t").concat(c?c.map((function(e){return'<li style="'.concat(e.order?"order:".concat(e.order):"",'">\n\t\t\t\t\t\t\t\t\t').concat(t.getLinkTag(e),"\n\t\t\t\t\t\t\t\t</li>")})).join(""):"","\n\t\t\t\t\t</ul>\n\t\t\t\t\t").concat(u.hasAttribute("data-hide-copyright")?"":'<p class="footer__copyright">\n\t\t\t\t\t\t© '.concat(a.year," ").concat(t.isBestCompany?"Modernize":h,". ").concat(l?a.spanishText:a.text,"\n\t\t\t\t\t</p>"),"\n\t\t\t\t</div>\n\t\t\t</footer>"))},loadCss:function(){var t=document.getElementsByTagName("head")[0],e=document.createElement("link");e.type="text/css",e.rel="stylesheet","mod"===this.footerType?e.href="".concat(this.modDomain,"/quote/resources/shared-resources/styles/components/footer/mod-footer.min.css"):e.href="".concat(this.modDomain,"/quote/resources/shared-resources/styles/components/footer/qs-footer.min.css"),t.appendChild(e)},getQueryParam:function(t){var e=window.location.search.match(new RegExp("[?&]"+t+"=([^&]+)"));return e?e[1]:null},camelToUnderscore:function(t){return t.replace(/([A-Z])/g," $1").split(" ").join("_").toLowerCase()},prepopModalTemplateWithSiteData:function(t){var e={company_name:this.isBestCompany?"Modernize":this.siteData.company_name||("mod"===this.footerType?"Modernize.com":"Quinstreet, Inc."),domain:window.location.host};return Object.entries(e).forEach((function(e){var o=_slicedToArray(e,2),n=o[0],a=o[1],r=new RegExp("{{("+n+"|"+Footer.camelToUnderscore(n)+")}}","gi");t=t.replace(r,a)})),t},initModalLinks:function(){var t=this,e='a[data-bind="modal-page"]',o="info-modal",n=['<dialog id="'+o+'" role="dialog" aria-labelledby="footer-modal-title" aria-hidden="true" tabindex="-1" style="border: 0; background-color: transparent; outline:0; padding:0; max-width: 100%; max-height: 100%; height: 100%; position: fixed; top: 0; z-index: 100;">','<div class="modal-dialog">','<div class="modal-content">','<div class="modal-header">','<h1 id="footer-modal-title" class="modal-title"></h1>',"</div>",'<div class="modal-body">Loading...</div>','<div class="modal-footer">','<button type="button" class="btn btn-primary btn--primary close" data-dismiss="modal" data-close="dialog">Close</button>',"</div>","</div>","</div>","</dialog>"].join("");document.querySelectorAll(e).forEach((function(e){e.addEventListener("click",(function(e){e.preventDefault();var a=this,r=a.getAttribute("data-load"),i=a.getAttribute("id");document.getElementById(o)&&document.getElementById(o).remove(),document.body.insertAdjacentHTML("beforeend",n);var c=document.getElementById(o),s=c.querySelector(".modal-title"),l=c.querySelector(".modal-body");s.textContent=a.textContent,fetch(r).then((function(t){return t.text()})).then((function(t){l.innerHTML=Footer.prepopModalTemplateWithSiteData(t),c.querySelectorAll("a[href^=\\#]").forEach((function(t){t.addEventListener("click",(function(t){t.preventDefault();var e=c.querySelector(this.hash);e.scrollIntoView({behavior:"smooth"});var o=l.querySelectorAll("section");l.addEventListener("scroll",(function t(){o.forEach((function(t){t.blur()})),l.classList.contains("scrolling")||(l.classList.add("scrolling"),setTimeout((function(){l.classList.remove("scrolling"),e.focus(),l.removeEventListener("scroll",t)}),750))}))}))}));var e=a.getAttribute("data-anchor");e&&"#undefined"!==e&&document.querySelector(e).scrollIntoView(),modUtils.trapTabFocusInDialog(o),Footer.initCloseDialog(o)})),c.show(),c.focus(),c.setAttribute("aria-hidden","false"),t.refocusOnElement=i;var d=new MutationObserver((function(){l.hasChildNodes()&&(d.disconnect(),function(){for(var t=l.getElementsByTagName("script"),e=0;e<t.length;e++){var o=t[e].innerText;new Function(o)()}var n=l.querySelectorAll("script[src]");function a(){}for(var r=0;r<n.length;r++){var i=document.createElement("script");i.src=n[r].src,i.onload=a,document.head.appendChild(i)}}())}));c.open&&d.observe(l,{childList:!0,subtree:!0})}))}));var a=this.getQueryParam("modal");a&&document.querySelectorAll("".concat(e,'[href="/?modal=').concat(a,'"]:first')).click();var r=window.location.search;r&&(r=r.substring(1),document.querySelectorAll(e).forEach((function(t){var e=t.getAttribute("href");e+="&"+r,t.setAttribute("href",e)})))},closeModal:function(t){var e=document.body.classList.contains("modal-opened-globally");t.close(),t.setAttribute("aria-hidden","true"),this.refocusOnElement&&!e&&(document.getElementById(this.refocusOnElement).focus(),this.refocusOnElement=""),e&&document.body.classList.remove("modal-opened-globally")},initCloseDialog:function(t){var e=document.getElementById(t),o=this;e.querySelector('[data-close="dialog"]').addEventListener("click",(function(){o.closeModal(e)})),document.body.addEventListener("click",(function(n){n.target.id===t&&o.closeModal(e)})),document.addEventListener("keydown",(function(t){"Escape"===t.key&&o.closeModal(e)}))},init:function(){this.getFooterParams(),this.loadCss(),"mod"===this.footerType?this.displayModFooter():this.displayQsFooter(),this.initModalLinks()}};window.addEventListener("load",(function(){"function"==typeof window.HTMLDialogElement&&modUtils.heap("track",["HTML Dialog Element Supported"]),"IdlizeQueue"in window?window.IdlizeQueue.pushTask((function(){Footer.init()})):Footer.init()}));
|
|
2
|
-
//# sourceMappingURL=footer-component.min.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var geolocation={defaultLocation:null,currentLocation:{},cookieExpirationMinutes:1440,locationData:["country","state","statecode","city","zipcode"],source:"maxmind",status:"",usedSource:null,responseCollection:{},getGeolocationEndpoint:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;null===t&&(t=this.source),this.usedSource=t;var o=modUtils.getEnv();if("insurance"===t)return"https://www.nextinsure.com/listingdisplay/handlers/geo.ashx";if("maxmind"===t){var e=window.document.location.origin;return"https://geoip-js.com/geoip/v2.1/city/me?referrer=".concat(e)}var n=modUtils.getUrlParamsToObject().geo;return"https://api.".concat("production"===o?"modernize":"hilstaging",".com/v1/geo-targets?type=").concat(t,"&geoTargetConstant=").concat(n)},formatGeoResponse:function(t){var o={};if("maxmind"===this.usedSource)o={country:t.country.names.en,city:t.city.names.en,state:t.subdivisions[0].names.en,statecode:t.subdivisions[0].iso_code,zipcode:t.postal.code};else if("google"===this.usedSource){var e=t.data.canonicalName.split(",")||[];({Country:["country"],State:["state","country"],City:["city","state","country"],"Postal Code":["zipcode","state","country"],"Neighborhood-3":["neighborhood","state","country"],"Neighborhood-4":["neighborhood","city","state","country"]})["Neighborhood"===t.data.type?t.data.type+"-"+e.length:t.data.type].forEach((function(t,n){o[t]=e[n]})),o.statecode=o.statecode?o.statecode:t.data.stateCode,o.city=o.city?o.city:t.data.city}else if("bing"===this.usedSource){var n=t.data.name.split("|")||[];({Country:["country"],State:["state","country"],City:["city","state","country"],County:["county","state","country"],PostalCode:["zipcode","state","country"]})[t.data.type].forEach((function(t,e){o[t]=n[e]})),o.statecode=o.statecode?o.statecode:t.data.stateCode,o.city=o.city?o.city:t.data.city}else o=t;return o},fetchUserLocation:function(t){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=this,n=this.getGeolocationEndpoint();fetch(n).then((function(t){return t.json()})).then((function(n){var i=e.formatGeoResponse(n);e.responseCollection[e.source]=i,i.zipcode?t(i):(e.source="maxmind",e.fetchUserLocation(t,o))})).catch((function(n){console.log(n),"google"===e.usedSource||"bing"===e.usedSource?(e.source="maxmind",e.fetchUserLocation(t,o)):"maxmind"===e.usedSource?(e.source="insurance",e.fetchUserLocation(t,o)):o(n)}))},getLocationCookie:function(){var t=modUtils.getCookie("geolocation");if(t)try{return JSON.parse(t)}catch(t){return}},isValidLocationResponse:function(t){for(var o=0;o<this.locationData.length;o++)if(!t[this.locationData[o]])return!1;return!0},setLocationCookie:function(t){var o=JSON.stringify(t);modUtils.setCookie("geolocation",o,this.cookieExpirationMinutes)},setLocationValues:function(t){var o=this;return!!this.isValidLocationResponse(t)&&(this.locationData.forEach((function(e){o.currentLocation[e]=t[e]})),this.setLocationCookie(this.currentLocation),!0)},populateGeolocationElements:function(){var t=this,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;null===o&&(o=this.currentLocation),"United States"===o.country&&document.querySelectorAll("[data-geolocation]:not([data-geolocation-loaded])").forEach((function(e){var n=e.getAttribute("data-geolocation");if(n){Object.keys(o).forEach((function(t){if(n.includes("{".concat(t,"}"))){var e=o[t]||"";n=n.replace("{".concat(t,"}"),e)}}));["input","textarea","select"].indexOf(e.tagName.toLowerCase())>-1?e.value=n:e.innerHTML=n,"success"===t.status&&e.setAttribute("data-geolocation-loaded",!0)}}))},init:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=this,e=modUtils.getUrlParamsToObject();t&&Object.assign(this,t),e.geolocationSrc&&(o.source=e.geolocationSrc),e.msclkid?o.source="bing":e.gclid&&(o.source="google");var n=["bing","google"];n.includes(o.source)&&!e.geo&&(o.source="maxmind");var i=function(t){if(o.setLocationValues(t)){var e=new CustomEvent("geolocation.dataReady",{detail:t});if(document.dispatchEvent(e),o.status="success",o.populateGeolocationElements(),n.includes(o.source)){var i=o.source;o.source="maxmind",o.fetchUserLocation((function(){o.source=i,o.usedSource=o.source}),(function(){o.source=i,o.usedSource=o.source}))}}},a=this.getLocationCookie();a&&this.isValidLocationResponse(a)?i(a):this.fetchUserLocation(i,(function(t){o.status="error";var e=new CustomEvent("geolocation.fetchError",{detail:t});document.dispatchEvent(e),o.defaultLocation&&o.populateGeolocationElements(o.defaultLocation)}))},ready:function(){var t=new CustomEvent("geolocation.scriptLoaded");document.dispatchEvent(t)}};"undefined"!=typeof module&&void 0!==module.exports?module.exports=geolocation:geolocation.ready();
|
|
2
|
-
//# sourceMappingURL=geolocation.min.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
!function(){"use strict";var t={d:function(e,o){for(var r in o)t.o(o,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:o[r]})},o:function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r:function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};function o(){const t=Object.keys(window.modForm.opts.getVars).filter((t=>t.startsWith("vwo-test"))),e=window.modForm.opts.getVars[t];if(!t||!e)return;const o=Object.keys(window.modForm.opts.getVars).filter((t=>t.match(/v[1-9]{1,}/g)));o.length>0?o.forEach((t=>{const o=window.modForm.opts.getVars[t],r=`${e}-${t}`;o&&o.split(",").forEach((t=>{const e=document.getElementsByClassName(t)[0];e&&e.setAttribute(window.modForm.opts.vwoVariationDataAttribute,r)}))})):setTimeout((()=>{document.body.setAttribute(window.modForm.opts.vwoVariationDataAttribute,e)}),500)}t.r(e),t.d(e,{addVWOTestQueryParam:function(){return o}});var r=window;for(var n in e)r[n]=e[n];e.__esModule&&Object.defineProperty(r,"__esModule",{value:!0})}();
|
|
2
|
-
//# sourceMappingURL=addVWOTestQueryParam.min.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addVWOTestQueryParam.min.js","mappings":"yBACA,IAAIA,EAAsB,CCA1BA,EAAwB,SAASC,EAASC,GACzC,IAAI,IAAIC,KAAOD,EACXF,EAAoBI,EAAEF,EAAYC,KAASH,EAAoBI,EAAEH,EAASE,IAC5EE,OAAOC,eAAeL,EAASE,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,IAG3E,ECPAH,EAAwB,SAASS,EAAKC,GAAQ,OAAOL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,EAAO,ECCtGV,EAAwB,SAASC,GACX,oBAAXa,QAA0BA,OAAOC,aAC1CV,OAAOC,eAAeL,EAASa,OAAOC,YAAa,CAAEC,MAAO,WAE7DX,OAAOC,eAAeL,EAAS,aAAc,CAAEe,OAAO,GACvD,G,KCFO,SAASC,IACf,MAAMC,EAAeb,OAAOc,KAAKC,OAAOC,QAAQC,KAAKC,SAASC,QAAOC,GAASA,EAAMC,WAAW,cACzFC,EAAoBP,OAAOC,QAAQC,KAAKC,QAAQL,GAEtD,IAAMA,IAAgBS,EACrB,OAGD,MAAMC,EAAevB,OAAOc,KAAKC,OAAOC,QAAQC,KAAKC,SAASC,QAAOC,GAASA,EAAMI,MAAM,iBAGtFD,EAAaE,OAAS,EACzBF,EAAaG,SAAQC,IACpB,MAAMC,EAAab,OAAOC,QAAQC,KAAKC,QAAQS,GACzCE,EAAsB,GAAGP,KAAqBK,IAEhDC,GACHA,EAAWE,MAAM,KAAKJ,SAAQK,IAC7B,MAAMC,EAAUC,SAASC,uBAAuBH,GAAW,GAEvDC,GACHA,EAAQG,aAAapB,OAAOC,QAAQC,KAAKmB,0BAA2BP,EACrE,GAEF,IAGDQ,YAAW,KACVJ,SAASK,KAAKH,aAAapB,OAAOC,QAAQC,KAAKmB,0BAA2Bd,EAAkB,GAC1F,IAEL,C","sources":["webpack://mod-form/webpack/bootstrap","webpack://mod-form/webpack/runtime/define property getters","webpack://mod-form/webpack/runtime/hasOwnProperty shorthand","webpack://mod-form/webpack/runtime/make namespace object","webpack://mod-form/./lib/helpers/trackers/addVWOTestQueryParam.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n* Adding vwo-test parameter value (HSMERCH-XXXX) to the body\n* Adding vwo-test parameter value (HSMERCH-XXXX) with version to the sections for multi-variate test\n*/\nexport function addVWOTestQueryParam() {\n\tconst vwoTestParam = Object.keys(window.modForm.opts.getVars).filter(param => param.startsWith('vwo-test'));\n\tconst vwoTestParamValue = window.modForm.opts.getVars[vwoTestParam];\n\n\tif (!(vwoTestParam && vwoTestParamValue)) {\n\t\treturn;\n\t}\n\n\tconst testVersions = Object.keys(window.modForm.opts.getVars).filter(param => param.match(/v[1-9]{1,}/g));\n\n\t// Multivariate Test\n\tif (testVersions.length > 0) {\n\t\ttestVersions.forEach(version => {\n\t\t\tconst classLists = window.modForm.opts.getVars[version];\n\t\t\tconst elementAttributeVal = `${vwoTestParamValue}-${version}`;\n\n\t\t\tif (classLists) {\n\t\t\t\tclassLists.split(',').forEach(className => {\n\t\t\t\t\tconst element = document.getElementsByClassName(className)[0];\n\n\t\t\t\t\tif (element) {\n\t\t\t\t\t\telement.setAttribute(window.modForm.opts.vwoVariationDataAttribute, elementAttributeVal);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsetTimeout(() => {\n\t\t\tdocument.body.setAttribute(window.modForm.opts.vwoVariationDataAttribute, vwoTestParamValue);\n\t\t}, 500);\n\t}\n}\n"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","addVWOTestQueryParam","vwoTestParam","keys","window","modForm","opts","getVars","filter","param","startsWith","vwoTestParamValue","testVersions","match","length","forEach","version","classLists","elementAttributeVal","split","className","element","document","getElementsByClassName","setAttribute","vwoVariationDataAttribute","setTimeout","body"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
!function(){"use strict";var e={d:function(t,o){for(var i in o)e.o(o,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:o[i]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{additionalOptions:function(){return o}});const o={isSubmitting:!1,isPhoneValid:!1,isZipValid:!1,areLeadTokenScriptsLoaded:!1,loadedScripts:[],optedIn:!1,inlineZip:!1,mutationObserverTarget:document.body,mutationObserverConfig:{attributes:!0},projexURL:null,redirectStart:null,zipEditControlCls:".zip-control__edit, .change-zip-control, .step__city-state, .form__city-state, .zip-control, .form-group__city-state",zipEditInput:'input[name="zip1"], input[name="inertZip"]',zipControlButton:document.querySelector(".zip-control__button"),retryZipValidation:!1,preventDuplicateSubmission:!1,getTime:(new Date).getTime(),radioButtonClickedByMouse:!1,includeDuplicateSubmissionExperience:!0,homeownerLeadConversionProps:{}};var i=window;for(var n in t)i[n]=t[n];t.__esModule&&Object.defineProperty(i,"__esModule",{value:!0})}();
|
|
2
|
-
//# sourceMappingURL=additionalOpts.min.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"additionalOpts.min.js","mappings":"yBACA,IAAIA,EAAsB,CCA1BA,EAAwB,SAASC,EAASC,GACzC,IAAI,IAAIC,KAAOD,EACXF,EAAoBI,EAAEF,EAAYC,KAASH,EAAoBI,EAAEH,EAASE,IAC5EE,OAAOC,eAAeL,EAASE,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,IAG3E,ECPAH,EAAwB,SAASS,EAAKC,GAAQ,OAAOL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,EAAO,ECCtGV,EAAwB,SAASC,GACX,oBAAXa,QAA0BA,OAAOC,aAC1CV,OAAOC,eAAeL,EAASa,OAAOC,YAAa,CAAEC,MAAO,WAE7DX,OAAOC,eAAeL,EAAS,aAAc,CAAEe,OAAO,GACvD,G,4DCNO,MAAMC,EAAoB,CAEhCC,cAAc,EACdC,cAAc,EACdC,YAAY,EACZC,2BAA2B,EAC3BC,cAAe,GACfC,SAAS,EAETC,WAAW,EACXC,uBAAwBC,SAASC,KACjCC,uBAAwB,CACvBC,YAAY,GAEbC,UAAW,KACXC,cAAe,KACfC,kBAAmB,uHACnBC,aAAc,6CACdC,iBAAkBR,SAASS,cAAc,wBACzCC,oBAAoB,EACpBC,4BAA4B,EAC5BC,SAAS,IAAIC,MAAOD,UACpBE,2BAA2B,EAC3BC,sCAAsC,EACtCC,6BAA8B,CAAC,G","sources":["webpack://mod-form/webpack/bootstrap","webpack://mod-form/webpack/runtime/define property getters","webpack://mod-form/webpack/runtime/hasOwnProperty shorthand","webpack://mod-form/webpack/runtime/make namespace object","webpack://mod-form/./lib/config/additionalOpts.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export const additionalOptions = {\n\t// set true before sending data to server and back to false when response is returned from server\n\tisSubmitting: false,\n\tisPhoneValid: false,\n\tisZipValid: false,\n\tareLeadTokenScriptsLoaded: false,\n\tloadedScripts: [],\n\toptedIn: false,\n\t// set true if you want inline validation on input with zip. be warned this causes many edge cases you will need to fix\n\tinlineZip: false,\n\tmutationObserverTarget: document.body,\n\tmutationObserverConfig: {\n\t\tattributes: true\n\t},\n\tprojexURL: null,\n\tredirectStart: null,\n\tzipEditControlCls: '.zip-control__edit, .change-zip-control, .step__city-state, .form__city-state, .zip-control, .form-group__city-state',\n\tzipEditInput: 'input[name=\"zip1\"], input[name=\"inertZip\"]',\n\tzipControlButton: document.querySelector('.zip-control__button'),\n\tretryZipValidation: false,\n\tpreventDuplicateSubmission: false,\n\tgetTime: new Date().getTime(),\n\tradioButtonClickedByMouse: false,\n\tincludeDuplicateSubmissionExperience: true,\n\thomeownerLeadConversionProps: {}\n};\n"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","additionalOptions","isSubmitting","isPhoneValid","isZipValid","areLeadTokenScriptsLoaded","loadedScripts","optedIn","inlineZip","mutationObserverTarget","document","body","mutationObserverConfig","attributes","projexURL","redirectStart","zipEditControlCls","zipEditInput","zipControlButton","querySelector","retryZipValidation","preventDuplicateSubmission","getTime","Date","radioButtonClickedByMouse","includeDuplicateSubmissionExperience","homeownerLeadConversionProps"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
!function(){"use strict";var e={d:function(n,o){for(var t in o)e.o(o,t)&&!e.o(n,t)&&Object.defineProperty(n,t,{enumerable:!0,get:o[t]})},o:function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},n={};e.r(n),e.d(n,{getPhoneAssignmentData:function(){return t}});let o=null;const t=function(e){let n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];o&&o.abort("Current pending request has been aborted. Initiating a new request.");const t=modUtils.getUrlParamsToObject(),s=["ad","gclid","msclkid","vmcid","tbcid","fb_ad_id","fb_campaign_id","fbclid","fb_adset_id"],{CCID:i,CLK:r,QTR:a,tagId:c}=e,{phoneNumberContainerSelector:d,phoneNumberLinksSelector:l,useHsEndpoint:m,phoneNumbersTextSelector:p,matchVendors:g,formatNumberWithBracketsAndDash:u,skipMatching:h}=modForm.opts.phoneAssignmentConfig,{vendorKey:f,PartnerSourceID:b}=t,y={},v="production"===modUtils.getEnv(),w="local"===modUtils.getEnv(),A=new RegExp(/(\d{3})(\d{3})(\d{4})/g),P=document.querySelectorAll(d),S=document.querySelectorAll(l);let C="",_={},k=_;const O="https://"+(v?"form-service-hs.qnst.com":"hsapiservice.quinstage.com"),T="https://"+(v?"ivr.quinstreet.com":"ivr.quinstage.com"),$=new Headers;$.append("Accept","application/json");const j=()=>{document.body.classList.remove("call-tracking"),Modalytics.heap("track",["Phone Assignment",{phoneNumber:!1,updatedExistingPhoneAssignment:n}])},N=(e,o,t)=>{if(S&&S.length&&P&&P.length&&e){document.body.classList.add("call-tracking");const s=e.replace(A,""+(u?"($1) $2-$3":"$1-$2-$3")),i=`${s}${o?` <span class="call-extension">Ext: ${o}</span>`:""}`;modForm.opts.phoneAssignmentConfig.response={displayNumber:i,hrefPhoneNumber:`${e}${o?`,${o}`:""}`,extension:o,phoneNumber:e,formattedPhoneNumber:s,phoneAssignmentKey:t},S.forEach((n=>{n.setAttribute("href",`tel:${e}${o?`,${o}`:""}`);const t=n.querySelector(p);t&&(t.innerHTML=i)})),Modalytics.heap("track",["Phone Assignment",{phoneNumber:!0,extension:!!o,updatedExistingPhoneAssignment:n}])}},q=modForm.opts?.zipCode||null;let F=null;q||(F=window.geolocation?.currentLocation?.zipcode||null),m?($.append("Content-Type","application/json"),C=`${O}/calls/matches`,_={ccid:i||null,clk:r||null,qtr:a||null,zipForLocalizedAssignment:F,zip:q,service:modForm.opts.vertical,landingPageURL:window.location.href,matchVendors:Array.isArray(g)&&g.length?g:[-1],skipMatching:h,site:modForm?.opts?.websiteName||null},!_.zip&&w&&(_.zip="94404"),window._vwo_campaignData&&0!==Object.keys(window._vwo_campaignData).length&&(_.trackingInfo={VWOID:Object.keys(window._vwo_campaignData)[0],VWOVariationName:Object.values(window._vwo_campaignData)[0].n}),n&&modForm.opts.phoneAssignmentConfig.response&&modForm.opts.phoneAssignmentConfig.response.phoneAssignmentKey&&(_.vendorPhoneAssignmentKeys={[_.matchVendors[0]]:modForm.opts.phoneAssignmentConfig.response.phoneAssignmentKey}),k=JSON.stringify(_)):($.append("Content-Type","application/x-www-form-urlencoded"),C=`${T}/number`,_={SourceClickKey:r||"",LandingQuadTagID:c||"",PC:q,pcforlocalized:F,PortalServiceCode:modForm.opts.vertical,service:"assign",BusinessUnit:"FC",QS_CATEGORY:"Home Services",TradingPlatformTrackingInfo:"",vendorKeys:f||"-1",quadTagId:v?modForm.opts.phoneAssignmentConfig.questQuadTagId.prod:modForm.opts.phoneAssignmentConfig.questQuadTagId.staging,AffiliateSubID:b||""},t&&Object.keys(t).length&&Object.keys(t).forEach((function(e){s.includes(e)&&(y[e]=t[e])})),_.TradingPlatformTrackingInfo=JSON.stringify(y),k=new URLSearchParams(_).toString()),o=new AbortController;const I=o.signal;fetch(C,{method:"POST",headers:$,redirect:"follow",mode:"cors",body:k,signal:I}).then((e=>e.json())).then((e=>{if(m)if(e&&"success"===e.status){const{data:n}=e,{phoneDetails:o}=n;let t;t=o?o[_.matchVendors[0]]:modForm.opts.phoneAssignmentConfig.response;const{phoneNumber:s,extension:i,phoneAssignmentKey:r}=t;N(s,i,r)}else j();else if(e&&Object.keys(e).length){const n=e[_.vendorKeys];if(!n||n.constructor!==Object)return void j();const{ccPhoneNum:o,extn:t}=n;N(o,t)}else j()})).catch((e=>{I.aborted?(console.log(I.reason),Modalytics.heap("track",["Phone Assignment",{isRequestAborted:!0}])):(j(),console.log("Something went wrong!",e))}))};var s=window;for(var i in n)s[i]=n[i];n.__esModule&&Object.defineProperty(s,"__esModule",{value:!0})}();
|
|
2
|
-
//# sourceMappingURL=getPhoneAssignmentData.min.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getPhoneAssignmentData.min.js","mappings":"yBACA,IAAIA,EAAsB,CCA1BA,EAAwB,SAASC,EAASC,GACzC,IAAI,IAAIC,KAAOD,EACXF,EAAoBI,EAAEF,EAAYC,KAASH,EAAoBI,EAAEH,EAASE,IAC5EE,OAAOC,eAAeL,EAASE,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,IAG3E,ECPAH,EAAwB,SAASS,EAAKC,GAAQ,OAAOL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,EAAO,ECCtGV,EAAwB,SAASC,GACX,oBAAXa,QAA0BA,OAAOC,aAC1CV,OAAOC,eAAeL,EAASa,OAAOC,YAAa,CAAEC,MAAO,WAE7DX,OAAOC,eAAeL,EAAS,aAAc,CAAEe,OAAO,GACvD,G,iECYA,IAAIC,EAAkB,KACf,MAAMC,EAAyB,SAASC,GAA6D,IAA7CC,EAAmCC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,IAAAA,UAAA,GAC7FJ,GACHA,EAAgBO,MAAM,uEAEvB,MAAMC,EAAgBC,SAASC,uBACzBC,EAAqB,CAAC,KAAM,QAAS,UAAW,QAAS,QAAS,WAAY,iBAAkB,SAAU,gBAC1G,KAAEC,EAAI,IAAEC,EAAG,IAAEC,EAAG,MAAEC,GAAUb,GAC5B,6BAAEc,EAA4B,yBAAEC,EAAwB,cAAEC,EAAa,yBAAEC,EAAwB,aAAEC,EAAY,gCAAEC,EAA+B,aAAEC,GAAiBC,QAAQC,KAAKC,uBAChL,UAAEC,EAAS,gBAAEC,GAAoBnB,EACjCoB,EAA8B,CAAC,EAC/BC,EAAwC,eAAtBpB,SAASqB,SAC3BC,EAAmC,UAAtBtB,SAASqB,SACtBE,EAAmB,IAAIC,OAAO,0BAC9BC,EAAwBC,SAASC,iBAAiBpB,GAClDqB,EAAmBF,SAASC,iBAAiBnB,GACnD,IAAIqB,EAAM,GACNC,EAAU,CAAC,EACXC,EAAcD,EAElB,MAAME,EAAc,YAAWZ,EAAkB,2BAA6B,8BACxEa,EAAiB,YAAWb,EAAkB,qBAAuB,qBACrEc,EAAiB,IAAIC,QAC3BD,EAAeE,OAAO,SAAU,oBAEhC,MAAMC,EAA4BA,KACjCX,SAASY,KAAKC,UAAUC,OAAO,iBAC/BC,WAAWC,KAAK,QAAS,CAAC,mBAAoB,CAC7CC,aAAa,EACbC,+BAAgClD,IAC9B,EAGEmD,EAAkBA,CAACF,EAAaG,EAAWC,KAGhD,GAFkCnB,GAAoBA,EAAiBhC,QAAY6B,GAAyBA,EAAsB7B,QAAW+C,EAE/G,CAC7BjB,SAASY,KAAKC,UAAUS,IAAI,iBAC5B,MAAMC,EAAuBN,EAAYO,QAAQ3B,EAAkB,IAAGX,EAAkC,aAAe,aACjHuC,EAAoC,GAAGF,IAAuBH,EAAY,sCAAsCA,WAAqB,KAC3IhC,QAAQC,KAAKC,sBAAsBoC,SAAW,CAC7CC,cAAeF,EACfG,gBAAiB,GAAGX,IAAcG,EAAY,IAAIA,IAAc,KAChEA,YACAH,cACAM,uBACAF,sBAEDnB,EAAiB2B,SAASC,IACzBA,EAAgBC,aAAa,OAAQ,OAAOd,IAAcG,EAAY,IAAIA,IAAc,MACxF,MAAMY,EAAsBF,EAAgBG,cAAcjD,GACtDgD,IACHA,EAAoBE,UAAYT,EACjC,IAGDV,WAAWC,KAAK,QAAS,CAAC,mBAAoB,CAC7CC,aAAa,EACbG,YAAWA,EACXF,+BAAgClD,IAElC,GAGKmE,EAAM/C,QAAQC,MAAM+C,SAAW,KACrC,IAAIC,EAA4B,KAC3BF,IACJE,EAA4BC,OAAOC,aAAaC,iBAAiBC,SAAW,MAGzE1D,GACHyB,EAAeE,OAAO,eAAgB,oBACtCP,EAAM,GAAGG,kBAETF,EAAU,CACTsC,KAAMjE,GAAQ,KACdkE,IAAKjE,GAAO,KACZkE,IAAKjE,GAAO,KACZ0D,4BACAF,MACAU,QAASzD,QAAQC,KAAKyD,SACtBC,eAAgBT,OAAOU,SAASC,KAChChE,aAAeiE,MAAMC,QAAQlE,IAAiBA,EAAaf,OAAUe,EAAe,EAAE,GACtFE,aAAcA,EACdiE,KAAMhE,SAASC,MAAMgE,aAAe,OAGhCjD,EAAQ+B,KAAOvC,IACnBQ,EAAQ+B,IAAM,SAIXG,OAAOgB,mBAAsE,IAAjDrG,OAAOsG,KAAKjB,OAAOgB,mBAAmBpF,SACrEkC,EAAQoD,aAAe,CACtB,MAASvG,OAAOsG,KAAKjB,OAAOgB,mBAAmB,GAC/C,iBAAoBrG,OAAOwG,OAAOnB,OAAOgB,mBAAmB,GAAGI,IAI7D1F,GAAuCoB,QAAQC,KAAKC,sBAAsBoC,UAAYtC,QAAQC,KAAKC,sBAAsBoC,SAASL,qBACrIjB,EAAQuD,0BAA4B,CACnC,CAACvD,EAAQnB,aAAa,IAAKG,QAAQC,KAAKC,sBAAsBoC,SAASL,qBAIzEhB,EAAcuD,KAAKC,UAAUzD,KAE7BI,EAAeE,OAAO,eAAgB,qCACtCP,EAAM,GAAGI,WACTH,EAAU,CACT0D,eAAgBpF,GAAO,GACvBqF,iBAAkBnF,GAAS,GAC3BoF,GAAI7B,EACJ8B,eAAgB5B,EAChB6B,kBAAmB9E,QAAQC,KAAKyD,SAChCD,QAAS,SACTsB,aAAc,KACdC,YAAa,gBACb3E,4BAA6B,GAC7B4E,WAAY9E,GAAwB,KACpC+E,UAAW5E,EAAkBN,QAAQC,KAAKC,sBAAsBiF,eAAeC,KAAOpF,QAAQC,KAAKC,sBAAsBiF,eAAeE,QACxIC,eAAgBlF,GAAmB,IAGhCnB,GAAiBpB,OAAOsG,KAAKlF,GAAeH,QAC/CjB,OAAOsG,KAAKlF,GAAewD,SAAQ,SAAS9E,GACvCyB,EAAmBmG,SAAS5H,KAC/B0C,EAA4B1C,GAAOsB,EAActB,GAEnD,IAGDqD,EAAQX,4BAA8BmE,KAAKC,UAAUpE,GAErDY,EAAc,IAAIuE,gBAAgBxE,GAASyE,YAG5ChH,EAAkB,IAAIiH,gBACtB,MAAMC,EAASlH,EAAgBkH,OAW/BC,MAAM7E,EATiB,CACtB8E,OAAQ,OACRC,QAAS1E,EACT2E,SAAU,SACVC,KAAM,OACNxE,KAAMP,EACN0E,WAICM,MAAK3D,GAAYA,EAAS4D,SAC1BD,MAAKE,IACL,GAAIxG,EACH,GAAIwG,GAAwC,YAAxBA,EAAaC,OAAsB,CACtD,MAAM,KAAEC,GAASF,GACX,aAAEG,GAAiBD,EACzB,IAAIE,EAIHA,EAHID,EAGcA,EAAatF,EAAQnB,aAAa,IAFlCG,QAAQC,KAAKC,sBAAsBoC,SAItD,MAAM,YAAET,EAAW,UAAEG,EAAS,mBAAEC,GAAuBsE,EACvDxE,EAAgBF,EAAaG,EAAWC,EACzC,MACCV,SAGD,GAAI4E,GAAgBtI,OAAOsG,KAAKgC,GAAcrH,OAAQ,CACrD,MAAMyH,EAAkBJ,EAAanF,EAAQiE,YAE7C,IAAKsB,GAAmBA,EAAgBC,cAAgB3I,OAEvD,YADA0D,IAID,MAAM,WAAEkF,EAAU,KAAEC,GAASH,EAC7BxE,EAAgB0E,EAAYC,EAC7B,MACCnF,GAEF,IAEAoF,OAAMC,IACFjB,EAAOkB,SACVC,QAAQC,IAAIpB,EAAOqB,QACnBrF,WAAWC,KAAK,QAAS,CAAC,mBAAoB,CAC7CqF,kBAAkB,OAGnB1F,IACAuF,QAAQC,IAAI,wBAAyBH,GACtC,GAEH,E","sources":["webpack://mod-form/webpack/bootstrap","webpack://mod-form/webpack/runtime/define property getters","webpack://mod-form/webpack/runtime/hasOwnProperty shorthand","webpack://mod-form/webpack/runtime/make namespace object","webpack://mod-form/./lib/helpers/requests/getPhoneAssignmentData.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/* globals modForm modUtils Modalytics */\n/**\n * HS Endpoints:\n * Dev: https://hsapiservice.dev.quinstreet.net/calls/matches\n * Stage: https://hsapiservice.quinstage.com/calls/matches\n * Prod: https://form-service-hs.qnst.com/calls/matches\n *\n * Quest Endpoints:\n * Dev: ivr.dev.quinstreet.net/number\n * Stage: ivr.quinstage.com/number\n * Prod: ivr.quinstreet.com/number\n */\n/**\n * This function gets the phone assignment data from the quest api.\n * @param {object} trafficDetails - Accepts response object of `TrafficDetails` api.\n * @param {boolean} shouldUpdateExistingPhoneAssignment - Pass `true` if this function is being called multiple times\n * @returns {void}\n */\nlet abortController = null;\nexport const getPhoneAssignmentData = function(trafficDetails, shouldUpdateExistingPhoneAssignment = false) {\n\tif (abortController) {\n\t\tabortController.abort('Current pending request has been aborted. Initiating a new request.');\n\t}\n\tconst currentParams = modUtils.getUrlParamsToObject();\n\tconst campaignAttributes = ['ad', 'gclid', 'msclkid', 'vmcid', 'tbcid', 'fb_ad_id', 'fb_campaign_id', 'fbclid', 'fb_adset_id'];\n\tconst { CCID, CLK, QTR, tagId } = trafficDetails;\n\tconst { phoneNumberContainerSelector, phoneNumberLinksSelector, useHsEndpoint, phoneNumbersTextSelector, matchVendors, formatNumberWithBracketsAndDash, skipMatching } = modForm.opts.phoneAssignmentConfig;\n\tconst { vendorKey, PartnerSourceID } = currentParams;\n\tconst TradingPlatformTrackingInfo = {};\n\tconst isProductionEnv = modUtils.getEnv() === 'production';\n\tconst isLocalEnv = modUtils.getEnv() === 'local';\n\tconst phoneNumberRegex = new RegExp(/(\\d{3})(\\d{3})(\\d{4})/g);\n\tconst phoneNumberContainers = document.querySelectorAll(phoneNumberContainerSelector);\n\tconst phoneNumberLinks = document.querySelectorAll(phoneNumberLinksSelector);\n\tlet url = '';\n\tlet payload = {};\n\tlet requestBody = payload;\n\n\tconst hsApiDomain = `https://${isProductionEnv ? 'form-service-hs.qnst.com' : 'hsapiservice.quinstage.com'}`;\n\tconst questApiDomain = `https://${isProductionEnv ? 'ivr.quinstreet.com' : 'ivr.quinstage.com'}`;\n\tconst requestHeaders = new Headers();\n\trequestHeaders.append('Accept', 'application/json');\n\n\tconst hidePhoneNumberContainers = () => {\n\t\tdocument.body.classList.remove('call-tracking');\n\t\tModalytics.heap('track', ['Phone Assignment', {\n\t\t\tphoneNumber: false,\n\t\t\tupdatedExistingPhoneAssignment: shouldUpdateExistingPhoneAssignment\n\t\t}]);\n\t};\n\n\tconst showPhoneNumber = (phoneNumber, extension, phoneAssignmentKey) => {\n\t\tconst shouldDisplayPhoneNumber = (phoneNumberLinks && phoneNumberLinks.length) && (phoneNumberContainers && phoneNumberContainers.length) && phoneNumber;\n\n\t\tif (shouldDisplayPhoneNumber) {\n\t\t\tdocument.body.classList.add('call-tracking');\n\t\t\tconst formattedPhoneNumber = phoneNumber.replace(phoneNumberRegex, `${formatNumberWithBracketsAndDash ? '($1) $2-$3' : '$1-$2-$3'}`);\n\t\t\tconst formattedPhoneNumberWithExtension = `${formattedPhoneNumber}${extension ? ` <span class=\"call-extension\">Ext: ${extension}</span>` : ''}`;\n\t\t\tmodForm.opts.phoneAssignmentConfig.response = {\n\t\t\t\tdisplayNumber: formattedPhoneNumberWithExtension,\n\t\t\t\threfPhoneNumber: `${phoneNumber}${extension ? `,${extension}` : ''}`,\n\t\t\t\textension,\n\t\t\t\tphoneNumber,\n\t\t\t\tformattedPhoneNumber,\n\t\t\t\tphoneAssignmentKey\n\t\t\t};\n\t\t\tphoneNumberLinks.forEach((phoneNumberLink) => {\n\t\t\t\tphoneNumberLink.setAttribute('href', `tel:${phoneNumber}${extension ? `,${extension}` : ''}`);\n\t\t\t\tconst phoneNumberTextNode = phoneNumberLink.querySelector(phoneNumbersTextSelector);\n\t\t\t\tif (phoneNumberTextNode) {\n\t\t\t\t\tphoneNumberTextNode.innerHTML = formattedPhoneNumberWithExtension;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tModalytics.heap('track', ['Phone Assignment', {\n\t\t\t\tphoneNumber: true,\n\t\t\t\textension: extension ? true : false,\n\t\t\t\tupdatedExistingPhoneAssignment: shouldUpdateExistingPhoneAssignment\n\t\t\t}]);\n\t\t}\n\t};\n\n\tconst zip = modForm.opts?.zipCode || null;\n\tlet zipForLocalizedAssignment = null;\n\tif (!zip) {\n\t\tzipForLocalizedAssignment = window.geolocation?.currentLocation?.zipcode || null;\n\t}\n\n\tif (useHsEndpoint) {\n\t\trequestHeaders.append('Content-Type', 'application/json');\n\t\turl = `${hsApiDomain}/calls/matches`;\n\n\t\tpayload = {\n\t\t\tccid: CCID || null,\n\t\t\tclk: CLK || null,\n\t\t\tqtr: QTR || null,\n\t\t\tzipForLocalizedAssignment,\n\t\t\tzip,\n\t\t\tservice: modForm.opts.vertical,\n\t\t\tlandingPageURL: window.location.href,\n\t\t\tmatchVendors: (Array.isArray(matchVendors) && matchVendors.length) ? matchVendors : [-1],\n\t\t\tskipMatching: skipMatching,\n\t\t\tsite: modForm?.opts?.websiteName || null\n\t\t};\n\n\t\tif (!payload.zip && isLocalEnv) {\n\t\t\tpayload.zip = '94404';\n\t\t}\n\n\t\t// If VWO is loaded and there's an active campaign\n\t\tif (window._vwo_campaignData && Object.keys(window._vwo_campaignData).length !== 0) {\n\t\t\tpayload.trackingInfo = {\n\t\t\t\t'VWOID': Object.keys(window._vwo_campaignData)[0],\n\t\t\t\t'VWOVariationName': Object.values(window._vwo_campaignData)[0].n\n\t\t\t};\n\t\t}\n\n\t\tif (shouldUpdateExistingPhoneAssignment && modForm.opts.phoneAssignmentConfig.response && modForm.opts.phoneAssignmentConfig.response.phoneAssignmentKey) {\n\t\t\tpayload.vendorPhoneAssignmentKeys = {\n\t\t\t\t[payload.matchVendors[0]]: modForm.opts.phoneAssignmentConfig.response.phoneAssignmentKey\n\t\t\t};\n\t\t}\n\n\t\trequestBody = JSON.stringify(payload);\n\t} else {\n\t\trequestHeaders.append('Content-Type', 'application/x-www-form-urlencoded');\n\t\turl = `${questApiDomain}/number`;\n\t\tpayload = {\n\t\t\tSourceClickKey: CLK || '',\n\t\t\tLandingQuadTagID: tagId || '',\n\t\t\tPC: zip,\n\t\t\tpcforlocalized: zipForLocalizedAssignment,\n\t\t\tPortalServiceCode: modForm.opts.vertical,\n\t\t\tservice: 'assign',\n\t\t\tBusinessUnit: 'FC',\n\t\t\tQS_CATEGORY: 'Home Services',\n\t\t\tTradingPlatformTrackingInfo: '',\n\t\t\tvendorKeys: vendorKey ? vendorKey : '-1',\n\t\t\tquadTagId: isProductionEnv ? modForm.opts.phoneAssignmentConfig.questQuadTagId.prod : modForm.opts.phoneAssignmentConfig.questQuadTagId.staging,\n\t\t\tAffiliateSubID: PartnerSourceID || ''\n\t\t};\n\n\t\tif (currentParams && Object.keys(currentParams).length) {\n\t\t\tObject.keys(currentParams).forEach(function(key) {\n\t\t\t\tif (campaignAttributes.includes(key)) {\n\t\t\t\t\tTradingPlatformTrackingInfo[key] = currentParams[key];\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tpayload.TradingPlatformTrackingInfo = JSON.stringify(TradingPlatformTrackingInfo);\n\n\t\trequestBody = new URLSearchParams(payload).toString();\n\t}\n\n\tabortController = new AbortController();\n\tconst signal = abortController.signal;\n\n\tconst requestOptions = {\n\t\tmethod: 'POST',\n\t\theaders: requestHeaders,\n\t\tredirect: 'follow',\n\t\tmode: 'cors',\n\t\tbody: requestBody,\n\t\tsignal\n\t};\n\n\tfetch(url, requestOptions)\n\t\t.then(response => response.json())\n\t\t.then(jsonResponse => {\n\t\t\tif (useHsEndpoint) {\n\t\t\t\tif (jsonResponse && jsonResponse.status === 'success') {\n\t\t\t\t\tconst { data } = jsonResponse;\n\t\t\t\t\tconst { phoneDetails } = data;\n\t\t\t\t\tlet phoneNumberData;\n\t\t\t\t\tif (!phoneDetails) {\n\t\t\t\t\t\tphoneNumberData = modForm.opts.phoneAssignmentConfig.response;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tphoneNumberData = phoneDetails[payload.matchVendors[0]];\n\t\t\t\t\t}\n\t\t\t\t\tconst { phoneNumber, extension, phoneAssignmentKey } = phoneNumberData;\n\t\t\t\t\tshowPhoneNumber(phoneNumber, extension, phoneAssignmentKey);\n\t\t\t\t} else {\n\t\t\t\t\thidePhoneNumberContainers();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (jsonResponse && Object.keys(jsonResponse).length) {\n\t\t\t\t\tconst phoneNumberData = jsonResponse[payload.vendorKeys];\n\n\t\t\t\t\tif (!phoneNumberData || phoneNumberData.constructor !== Object) {\n\t\t\t\t\t\thidePhoneNumberContainers();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst { ccPhoneNum, extn } = phoneNumberData;\n\t\t\t\t\tshowPhoneNumber(ccPhoneNum, extn);\n\t\t\t\t} else {\n\t\t\t\t\thidePhoneNumberContainers();\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t\t.catch(error => {\n\t\t\tif (signal.aborted) {\n\t\t\t\tconsole.log(signal.reason);\n\t\t\t\tModalytics.heap('track', ['Phone Assignment', {\n\t\t\t\t\tisRequestAborted: true\n\t\t\t\t}]);\n\t\t\t} else {\n\t\t\t\thidePhoneNumberContainers();\n\t\t\t\tconsole.log('Something went wrong!', error);\n\t\t\t}\n\t\t});\n};\n"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","abortController","getPhoneAssignmentData","trafficDetails","shouldUpdateExistingPhoneAssignment","arguments","length","undefined","abort","currentParams","modUtils","getUrlParamsToObject","campaignAttributes","CCID","CLK","QTR","tagId","phoneNumberContainerSelector","phoneNumberLinksSelector","useHsEndpoint","phoneNumbersTextSelector","matchVendors","formatNumberWithBracketsAndDash","skipMatching","modForm","opts","phoneAssignmentConfig","vendorKey","PartnerSourceID","TradingPlatformTrackingInfo","isProductionEnv","getEnv","isLocalEnv","phoneNumberRegex","RegExp","phoneNumberContainers","document","querySelectorAll","phoneNumberLinks","url","payload","requestBody","hsApiDomain","questApiDomain","requestHeaders","Headers","append","hidePhoneNumberContainers","body","classList","remove","Modalytics","heap","phoneNumber","updatedExistingPhoneAssignment","showPhoneNumber","extension","phoneAssignmentKey","add","formattedPhoneNumber","replace","formattedPhoneNumberWithExtension","response","displayNumber","hrefPhoneNumber","forEach","phoneNumberLink","setAttribute","phoneNumberTextNode","querySelector","innerHTML","zip","zipCode","zipForLocalizedAssignment","window","geolocation","currentLocation","zipcode","ccid","clk","qtr","service","vertical","landingPageURL","location","href","Array","isArray","site","websiteName","_vwo_campaignData","keys","trackingInfo","values","n","vendorPhoneAssignmentKeys","JSON","stringify","SourceClickKey","LandingQuadTagID","PC","pcforlocalized","PortalServiceCode","BusinessUnit","QS_CATEGORY","vendorKeys","quadTagId","questQuadTagId","prod","staging","AffiliateSubID","includes","URLSearchParams","toString","AbortController","signal","fetch","method","headers","redirect","mode","then","json","jsonResponse","status","data","phoneDetails","phoneNumberData","constructor","ccPhoneNum","extn","catch","error","aborted","console","log","reason","isRequestAborted"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
!function(){"use strict";var e={d:function(t,n){for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function n(e){const t=["Control","Tab","ArrowLeft","ArrowDown","ArrowRight","ArrowUp","Backspace","Enter","Delete"];if(!e.length)return!1;e.forEach((function(e){e.addEventListener("keydown",(function(e){!Number.isNaN(parseInt(e.key))||t.includes(e.key)||e.metaKey||e.preventDefault(),e.metaKey&&"KeyA"===e.code&&this.select()}))}))}e.r(t),e.d(t,{initNumericOnlyFields:function(){return n}});var r=window;for(var o in t)r[o]=t[o];t.__esModule&&Object.defineProperty(r,"__esModule",{value:!0})}();
|
|
2
|
-
//# sourceMappingURL=initNumericOnlyFields.min.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"initNumericOnlyFields.min.js","mappings":"yBACA,IAAIA,EAAsB,CCA1BA,EAAwB,SAASC,EAASC,GACzC,IAAI,IAAIC,KAAOD,EACXF,EAAoBI,EAAEF,EAAYC,KAASH,EAAoBI,EAAEH,EAASE,IAC5EE,OAAOC,eAAeL,EAASE,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,IAG3E,ECPAH,EAAwB,SAASS,EAAKC,GAAQ,OAAOL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,EAAO,ECCtGV,EAAwB,SAASC,GACX,oBAAXa,QAA0BA,OAAOC,aAC1CV,OAAOC,eAAeL,EAASa,OAAOC,YAAa,CAAEC,MAAO,WAE7DX,OAAOC,eAAeL,EAAS,aAAc,CAAEe,OAAO,GACvD,G,KCDO,SAASC,EAAsBC,GACrC,MAAMC,EAAc,CAAC,UAAW,MAAO,YAAa,YAAa,aAAc,UAAW,YAAa,QAAS,UAEhH,IAAKD,EAAQE,OACZ,OAAO,EAGRF,EAAQG,SAAQ,SAASC,GACxBA,EAAMC,iBAAiB,WAAW,SAASC,IAEtCC,OAAOC,MAAMC,SAASH,EAAErB,OAAUgB,EAAYS,SAASJ,EAAErB,MAASqB,EAAEK,SACvEL,EAAEM,iBAGCN,EAAEK,SAAsB,SAAXL,EAAEO,MAClBC,KAAKC,QAEP,GACD,GACD,C","sources":["webpack://mod-form/webpack/bootstrap","webpack://mod-form/webpack/runtime/define property getters","webpack://mod-form/webpack/runtime/hasOwnProperty shorthand","webpack://mod-form/webpack/runtime/make namespace object","webpack://mod-form/./lib/helpers/components/input/initNumericOnlyFields.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * Allow only numbers in a field (e.g. zip field)\n * @param {Object} $fields - object of fields\n * @returns {boolean} - false if no numeric fields defined\n */\nexport function initNumericOnlyFields($fields) {\n\tconst allowedKeys = ['Control', 'Tab', 'ArrowLeft', 'ArrowDown', 'ArrowRight', 'ArrowUp', 'Backspace', 'Enter', 'Delete'];\n\n\tif (!$fields.length) {\n\t\treturn false;\n\t}\n\n\t$fields.forEach(function(field) {\n\t\tfield.addEventListener('keydown', function(e) {\n\t\t\t// Allow digits, arrows, enter, backspace, tab, etc\n\t\t\tif (Number.isNaN(parseInt(e.key)) && !allowedKeys.includes(e.key) && !e.metaKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t\t// Allow to use keyboard to select all\n\t\t\tif (e.metaKey && e.code === 'KeyA') {\n\t\t\t\tthis.select();\n\t\t\t}\n\t\t});\n\t});\n}\n"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","initNumericOnlyFields","$fields","allowedKeys","length","forEach","field","addEventListener","e","Number","isNaN","parseInt","includes","metaKey","preventDefault","code","this","select"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
!function(){"use strict";var o={3389:function(o,e,n){document.body,document.querySelector(".zip-control__button"),(new Date).getTime()},8352:function(o,e,n){n(7632),n(3389)},7632:function(o,e,n){document.getElementById("form"),document.querySelectorAll('.back-btn, .btn-back, [data-btn="back"]'),document.querySelectorAll(".progress-bar"),window.location.protocol,window.location.host,window.location.pathname,window.location.search&&window.location.search,document.body,document.getElementById("form"),window.modUtils&&window.modUtils.getModernizeDomain(),window.modUtils&&window.modUtils.getModernizeDomain(),window.modUtils&&window.modUtils.getModernizeDomain()},5895:function(o,e,n){n.r(e),n.d(e,{initQSForm:function(){return s}});var t=n(2562);function s(){const o=window.modUtils.getModernizeDomain()+"/my/results/";window.modForm.opts.tagIDTest="203838617",window.modForm.opts.tagIDLive="204673056",window.modForm.opts.leadSubmitApi="hs/tyPage/matches.jsp",window.modForm.opts.trafficDetailsApi="api/TrafficDetails/get",window.modForm.opts.isWirelesssApi="api/isWireless",window.modForm.opts.websiteName=window.location.host,window.modForm.opts.resultsPage=window.modForm.opts.resultsPage?window.modForm.opts.resultsPage:o,window.modForm.opts.errorRedirectPath=window.modForm.opts.errorRedirectPath?window.modForm.opts.errorRedirectPath:o,window.modForm.opts.landingPage=window.location.hostname+window.location.pathname,window.modForm.opts.quadLinkParams={},window.modForm.opts.qsParams=window.modForm.opts.qsParams?window.modForm.opts.qsParams:["CCID","CLK","QTR"],window.modForm.opts.quadLinkHasBeenTransformed=!1,window.modForm.opts.quadLinkData={WebSiteName:window.modForm.opts.websiteName,quadlink:"",defaultQuad:"",tagID:""},window.modForm.opts.delayQuadTransformation||(0,t.initQuadTransform)(!0),(0,t.initQuadTransformRetry)(),(0,t.addRequiredQSFieldsToForm)(),window.modUtils.getLandingPage().includes("bestcompany")&&(0,t.addInvocaFallbackToDataLayer)()}},5422:function(o,e,n){function t(){const o=setInterval((()=>{if(window.dataLayer){clearInterval(o);const e=document.querySelector('input[name="Match"]');[{vendorKey:e?e.value:null},{serviceCode:window.modForm.opts.vertical},{defaultQuad:window.modForm.getDefaultQuad()}].forEach((o=>window.dataLayer.push(o)))}}),100)}n.d(e,{Q:function(){return t}})},2562:function(o,e,n){n.d(e,{addInvocaFallbackToDataLayer:function(){return a.Q},addRequiredQSFieldsToForm:function(){return c},appendFormInput:function(){return d},defaultQuadLinkValues:function(){return y},getDefaultQuad:function(){return b},getDefaultQuadByDomain:function(){return F},getHeapSessionIdCookieData:function(){return g},getPhoneAssignmentData:function(){return u},getQSApiDomain:function(){return v},getQueryParamsFromSessionStorage:function(){return h},getTcpaElementContent:function(){return p.i},heapIdentify:function(){return k},initDuplicateSubmissionExperience:function(){return r},initQuadTransform:function(){return P.initQuadTransform},initQuadTransformRetry:function(){return C},populateFormWithZipData:function(){return t},populateInput:function(){return m},prepopFormFromURL:function(){return i},saveUserInfoToCookie:function(){return w},transformQuadlink:function(){return f}});function t(o){["city","state"].forEach((function(e){o[e]&&m(e,o[e])})),document.querySelectorAll('input[name="zip"], input[name="zip1"]').forEach((function(e){e.value=o.zip}))}var s=n(3014);function i(){Object.keys(window.modForm.opts.getVars).forEach((function(o){window.modForm.opts.ignoreQueryParams.includes(o)||d(o,window.modForm.opts.getVars[o]),"zip"===o&&(d("zip1",window.modForm.opts.getVars[o]),d("inertZip",window.modForm.opts.getVars[o])),window.modForm.opts.prepopulateUserInfo&&w(o,window.modForm.opts.getVars[o])})),void 0!==window.modForm.opts.getVars.zip&&(window.modForm.opts.prepopulateUserInfo||(0,s.isZipCodeValid)(window.modForm.opts.getVars.zip,(function(o){o.success&&o.data&&(t(o.data),"function"==typeof window.modForm.opts.zipCodeValidated&&window.modForm.opts.zipCodeValidated(o.data))})))}n(5895);function r(o){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:".swiper-slide-active .step-inner";const n=window.modForm.opts.form.querySelector(e),t=document.querySelectorAll(".form-btns, .form-bts, .controls, .findpros-form__btns"),s=document.querySelector(".form-tcpa"),i=window.modForm.opts.landingPage.includes("bestcompany")?"https://bestcompany.com/":"https://modernize.com/";let r=o.resultsPage?o.resultsPage:i;r.indexOf(window.modForm.opts.suppressConversionPixelParam)<=-1&&(r+=(r.indexOf("?")<0?"?":"&")+window.modForm.opts.suppressConversionPixelParam),window.modForm.opts.form.classList.add(window.modForm.opts.formLoadingCls);window.modUtils.getCookie("duplicateSubmitFireCnvrsnPxl")||r.indexOf("ThankYou")>-1&&void 0!==window.dataLayer&&window.dataLayer.push({event:"Lead Conversion Failed Redirects"}),window.modUtils.setCookie("duplicateSubmitFireCnvrsnPxl",!0),window.modForm.preventDuplicateSubmission=!0,setTimeout((function(){window.modForm.opts.backButtons&&window.modForm.opts.backButtons.forEach((function(o){o.style.display="none"})),window.modForm.opts.progressBar&&window.modForm.opts.progressBar.forEach((function(o){o.style.display="none"})),t&&t.forEach((function(o){o.style.display="none"})),s&&(s.style.display="none"),window.modForm.opts.form.querySelector(".swiper-wrapper").style.alignItems="center",window.modForm.opts.form.classList.remove(window.modForm.opts.formLoadingCls);const o=window.modForm.opts.isLeadWidget?"_blank":"_self";n.innerHTML='<div class="duplicate-submission" style="background-color:#fff;display:flex; flex-direction:column;justify-content:center;align-items:center;min-height:390px;padding:40px 10px;text-align:center;"><h3 style="color:#545253;font-size:22px;font-weight:bold;margin:30px auto 0;">Welcome Back!</h3><p style="color:#545253;display:block;font-size:15px;font-weight:400;line-height:1.5;margin:20px auto 30px;">It looks like you just submitted your <br>information a moment ago.</p><a class="btn '+(window.modForm.opts.addAccessibilityUpdates?"btn--primary":"btn-primary")+'" id="double-submission-fallback-button" href="'+r+'" target="'+o+'" style="max-width:280px;line-height: normal;width:100%;display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 14px 0px 15px;margin:0 auto 30px;min-width:unset"><span class="btn__text" style="visibility:visible;font-size: 18px">See Your Matches</span></a></div>',window.modUtils.heap("track",["Showing Duplicate Submission Experience - on Step One",{resultsPage:r}])}),300)}n(8352);var a=n(5422);function d(o,e,n){if(window.modForm.opts.form.querySelector('input[name="'+o+'"]'))n||m(o,e);else{const n=document.createElement("input");n.type="hidden",n.id=o,n.name=o,n.value=e,window.modForm.opts.form.appendChild(n)}}function m(o,e){const n=window.modForm.opts.form.querySelector('input[name="'+o+'"]');if(n)if("INPUT"===n.tagName&&"radio"===n.type&&n.value===e)n.setAttribute("checked",!0);else if("INPUT"===n.tagName&&"checkbox"===n.type)n.setAttribute("checked",!0);else if("SELECT"===n.tagName)n.querySelector('option[value="'+e+'"]').setAttribute("selected",!0);else if(n.value=e,"zip"===o){const o=window.modForm.opts.form.querySelector('input[name="zip1"]');o&&(o.value=e)}}function c(){const o={HomePhoneConsentLanguage:window.modForm.opts.tcpaCopy&&window.modForm.opts.tcpaCopy.length?Array.from(window.modForm.opts.tcpaCopy).map((o=>(0,p.i)(o).trim().replace(/(<([^>]+)>)/gi,"").replace(/\n/g,""))):""};Object.keys(o).forEach((e=>{d(e,o[e])}))}var p=n(6954);let l=null;const u=function(o){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];l&&l.abort("Current pending request has been aborted. Initiating a new request.");const n=modUtils.getUrlParamsToObject(),t=["ad","gclid","msclkid","vmcid","tbcid","fb_ad_id","fb_campaign_id","fbclid","fb_adset_id"],{CCID:s,CLK:i,QTR:r,tagId:a}=o,{vendorKey:d,PartnerSourceID:m}=n,c={},p="production"===modUtils.getEnv(),u="local"===modUtils.getEnv(),f=new RegExp(/(\d{3})(\d{3})(\d{4})/g),w=document.querySelectorAll(modForm.opts.phoneAssignmentConfig.phoneNumberContainerSelector),g=document.querySelectorAll(modForm.opts.phoneAssignmentConfig.phoneNumberLinksSelector),h=modForm.opts.phoneAssignmentConfig.useHsEndpoint;let y="",b={},F=b;const v="https://"+(p?"form-service-hs.qnst.com":"hsapiservice.dev.quinstreet.net"),k="https://"+(p?"ivr.quinstreet.com":"ivr.quinstage.com"),P=new Headers;P.append("Accept","application/json");const C=()=>{document.body.classList.remove("invoca","callrail"),Modalytics.heap("track",["Phone Assignment",{phoneNumber:!1,updatedExistingPhoneAssignment:e}])},S=(o,n,t)=>{if(g&&g.length&&w&&w.length&&o){document.body.classList.add("invoca","callrail");const s=o.replace(f,"$1-$2-$3"),i=`${s}${n?` Ext: ${n}`:""}`;modForm.opts.phoneAssignmentConfig.response={displayNumber:i,hrefPhoneNumber:`${o}${n?`,${n}`:""}`,extension:n,phoneNumber:o,formattedPhoneNumber:s,phoneAssignmentKey:t},g.forEach((e=>{e.setAttribute("href",`tel:${o}${n?`,${n}`:""}`);const t=e.querySelector(modForm.opts.phoneAssignmentConfig.phoneNumbersTextSelector);t&&(t.textContent=i)})),Modalytics.heap("track",["Phone Assignment",{phoneNumber:!0,extension:!!n,updatedExistingPhoneAssignment:e}])}};if(h){P.append("Content-Type","application/json"),y=`${v}/calls/matches`;const o=Array.isArray(modForm.opts.phoneAssignmentConfig.matchVendors)&&modForm.opts.phoneAssignmentConfig.matchVendors.length?modForm.opts.phoneAssignmentConfig.matchVendors:[-1];b={ccid:s||null,clk:i||null,qtr:r||null,zip:modForm?.getFormData()?.zip||null,service:modForm.opts.vertical,landingPageURL:window.location.href,matchVendors:o},!b.zip&&u&&(b.zip="94404"),e&&modForm.opts.phoneAssignmentConfig.response&&modForm.opts.phoneAssignmentConfig.response.phoneAssignmentKey&&(b.vendorPhoneAssignmentKeys={[b.matchVendors[0]]:modForm.opts.phoneAssignmentConfig.response.phoneAssignmentKey}),F=JSON.stringify(b)}else P.append("Content-Type","application/x-www-form-urlencoded"),y=`${k}/number`,b={SourceClickKey:i||"",LandingQuadTagID:a||"",PC:modForm?.getFormData()?.zip,PortalServiceCode:modForm.opts.vertical,service:"assign",BusinessUnit:"FC",QS_CATEGORY:"Home Services",TradingPlatformTrackingInfo:"",vendorKeys:d||"-1",quadTagId:p?modForm.opts.phoneAssignmentConfig.questQuadTagId.prod:modForm.opts.phoneAssignmentConfig.questQuadTagId.staging,AffiliateSubID:m||""},n&&Object.keys(n).length&&Object.keys(n).forEach((function(o){t.includes(o)&&(c[o]=n[o])})),b.TradingPlatformTrackingInfo=JSON.stringify(c),F=new URLSearchParams(b).toString();l=new AbortController;const q=l.signal;fetch(y,{method:"POST",headers:P,redirect:"follow",mode:"cors",body:F,signal:q}).then((o=>o.json())).then((o=>{if(h)if(o&&"success"===o.status){const{data:e}=o,{phoneDetails:n}=e;let t;t=n?n[b.matchVendors[0]]:modForm.opts.phoneAssignmentConfig.response;const{phoneNumber:s,extension:i,phoneAssignmentKey:r}=t;S(s,i,r)}else C();else if(o&&Object.keys(o).length){const e=o[b.vendorKeys];if(!e||e.constructor!==Object)return void C();const{ccPhoneNum:n,extn:t}=e;S(n,t)}else C()})).catch((o=>{q.aborted?(console.log(q.reason),Modalytics.heap("track",["Phone Assignment",{isRequestAborted:!0}])):(C(),console.log("Something went wrong!",o))}))};function f(){let o={};const e=new XMLHttpRequest,n=v()+window.modForm.opts.trafficDetailsApi;e.open("POST",n),e.setRequestHeader("Content-Type","application/json"),e.send(JSON.stringify(window.modForm.opts.quadLinkData)),e.addEventListener("load",(async function(){if(this.response&&(o={...o,...JSON.parse(this.response)},4===this.readyState&&200===this.status)){for(const e in o)window.modForm.opts.qsParams.includes(e)&&o.hasOwnProperty(e)&&(window.modForm.opts.quadLinkParams[e]=o[e]);window.modForm.opts.phoneAssignmentConfig.showPhoneAssignmentNumber&&u(o),k(),window.modForm.opts.quadLinkHasBeenTransformed=!0,window.heap?window.heap.addEventProperties(window.modForm.opts.quadLinkParams):await new Promise((o=>{setTimeout((function(){window.heap&&window.heap.addEventProperties(window.modForm.opts.quadLinkParams),o()}),250)}))}})),e.addEventListener("error",(function(){console.error("Something went wrong")}))}function w(o,e){o.toLowerCase().includes("zip")?window.modForm.userObj.zip=e:window.modForm.userObj[o]=e,window.modUtils.setCookie("userInfo",JSON.stringify(window.modForm.userObj),526740)}function g(){let o,e,n=null,t=null,s="";if(window.modUtils.heapCookie&&(t=window.modUtils.heapCookieData.sessionId,n=window.modUtils.getCookie(t)),null!==n){const t=JSON.parse(decodeURIComponent(n));o=t.initialTimestamp,e=o+36e5,s=window.modForm.opts.isFrontdoorExclusiveMatch?decodeURIComponent(t.resultsPage):t.resultsPage}return{heapSessionSubmitCookie:n,heapSessionId:t,initialTimestamp:o,expireInOneHour:e,resultsPage:s}}function h(){const o=window.sessionStorage?window.sessionStorage.getItem("queryParams"):null,e=o?JSON.parse(o):null;return e&&(window.modForm.opts.getVars=e,i()),e}const y={"modernize.com":{medicalalerts:{c:"1677934",s:"31135",f:"202109081618210"},showers:{c:"1683621",s:"3086",f:"202309141602090"},default:{c:"1679227",s:"29914",f:"202202161521310"}},"modernizesolar.com":{c:"1679227",s:"29914",f:"202202161521310"},"modernize-solar.com":{c:"1679227",s:"29914",f:"202202161521310"},"go.jacuzzi.com":{c:"1674074",s:"3086",f:"202011031614490"},"m.go.jacuzzi.com":{c:"1674074",s:"3086",f:"202011031614490"},"americanhomewarranty.org":{c:"1673835",s:"3086",f:"202010191645170"},"m.americanhomewarranty.org":{c:"1673835",s:"3086",f:"202010191645170"},"homewindowprices.org":{c:"1673838",s:"3086",f:"202010191645180"},"m.homewindowprices.org":{c:"1673838",s:"3086",f:"202010191645180"},"mygutterguards.com":{c:"1673836",s:"3086",f:"202010191645180"},"m.mygutterguards.com":{c:"1673836",s:"3086",f:"202010191645180"},"tophottubs.org":{c:"1673840",s:"3086",f:"202010191645190"},"m.tophottubs.org":{c:"1673840",s:"3086",f:"202010191645190"},"americanstandardwalkinbaths.com":{c:"1665214",s:"28354",f:"201906181327550"},"m.americanstandardwalkinbaths.com":{c:"1665215",s:"28354",f:"201906181327560"},"bathandshower.org":{c:"1667476",s:"26393",f:"201910011622070"},"m.bathandshower.org":{c:"1667460",s:"26401",f:"201910011622030"},"bathandshowerpros.com":{c:"1658267",s:"26393",f:"201809211357520"},"m.bathandshowerpros.com":{c:"1658263",s:"26401",f:"201809211352160"},"quotes.bathwraps.com":{c:"1660429",s:"26393",f:"201812121510250"},"m.bathwraps.com":{c:"1660426",s:"26401",f:"201812121509080"},"craftmaticbeds.com":{c:"655234",s:"3086",f:"201008201638230"},"emedicalalerts.com":{c:"1647425",s:"26393",f:"201711071755250"},"m.emedicalalerts.com":{c:"1647405",s:"26401",f:"201711071755190"},"flooringpricer.com":{c:"1668109",s:"26393",f:"201910231539300"},"m.flooringpricer.com":{c:"1668101",s:"26401",f:"201910231539280"},"findyourwindows.com":{c:"1654347",s:"26393",f:"201805111614390"},"m.findyourwindows.com":{c:"1654331",s:"26401",f:"201805111612300"},"homesecurityprices.org":{c:"1658310",s:"26393",f:"201809211526510"},"m.homesecurityprices.org":{c:"1658305",s:"26401",f:"201809211509250"},"quotes.improvementcenter.com":{bathrooms:{c:"1652517",s:"26393",f:"201803221337450"},gutters:{c:"1614214",s:"3086",f:"201608311104250"},stairlifts:{c:"1658469",s:"26393",f:"201809260926260"},walkintubs:{c:"1647588",s:"26393",f:"201711081408530"}},"bathrooms.improvementcenter.com":{c:"1652509",s:"26401",f:"201803221337420"},"gutters.improvementcenter.com":{c:"1635550",s:"16479",f:"201703010604120"},"stairlifts.improvementcenter.com":{c:"1658465",s:"26401",f:"201809260926240"},"walkintubs.improvementcenter.com":{c:"1647564",s:"26401",f:"201711081408460"},"kitchensandcabinets.com":{c:"1652648",s:"26393",f:"201803261349020"},"m.kitchensandcabinets.com":{c:"1652624",s:"26401",f:"201803261348550"},"leafgutterpros.com":{c:"1685217",s:"3086",f:"202403271348130"},"lifemedicalalerts.com":{c:"1647427",s:"26393",f:"201711071755260"},"m.lifemedicalalerts.com":{c:"1647407",s:"26401",f:"201711071755200"},"go.medicalguardian.com":{c:"1654232",s:"26393",f:"201805101622250"},"mysolarcost.com":{c:"1645537",s:"3086",f:"201709221027450"},"m.mysolarcost.com":{c:"1645592",s:"16479",f:"201709221044340"},"roofingcosts.org":{c:"1673843",s:"3086",f:"202010191645200"},"m.roofingcosts.org":{c:"1673843",s:"3086",f:"202010191645200"},"securitypricer.com":{c:"1673856",s:"3086",f:"202010191645230"},"m.securitypricer.com":{c:"1673856",s:"3086",f:"202010191645230"},"walkinbathtubs.org":{c:"1673846",s:"3086",f:"202010191645210"},"m.walkinbathtubs.org":{c:"1673846",s:"3086",f:"202010191645210"},"walkintubprices.org":{c:"1673842",s:"3086",f:"202010191645200"},"m.walkintubprices.org":{c:"1673842",s:"3086",f:"202010191645200"},"walkintubforseniors.com":{c:"1647590",s:"26393",f:"201711081408540"},"m.walkintubforseniors.com":{c:"1647566",s:"26401",f:"201711081408470"},"plans.selecthomewarranty.com":{c:"1674075",s:"3086",f:"202011031614490"},"plumbingservicecosts.com":{c:"1684673",s:"3086",f:"202402061224360"},"m.plans.selecthomewarranty.com":{c:"1674075",s:"3086",f:"202011031614490"},"powerhomesolarpanels.com":{c:"1676761",s:"3086",f:"202105251631450"},"hvacpros.org":{c:"1670084",s:"26393",f:"202002181631370"},"m.hvacpros.org":{c:"1670076",s:"26401",f:"202002181625140"},"homewarrantyplans.org":{c:"1668109",s:"26393",f:"201910231539300"},"m.homewarrantyplans.org":{c:"1667462",s:"26401",f:"201910011622030"},"gutterguardcovers.com":{c:"1679714",s:"3086",f:"202205131023370"},"windowreplacementcost.org":{c:"1679716",s:"3086",f:"202205131023370"},"stairliftchairs.org":{c:"1679715",s:"3086",f:"202205131023370"},"roofingreplacementcost.com":{c:"1680434",s:"3086",f:"202208031707470"},"furnacereplacementcosts.org":{c:"1680996",s:"3086",f:"202209290958330"},"solarpanelpricing.com":{c:"1682247",s:"3086",f:"202302031201300"},"kitchencabinetrefacing.org":{c:"1680433",s:"3086",f:"202208031707460"},"airconditioningpros.org":{c:"1682333",s:"3086",f:"202302141453580"},"treetrimmingservicepros.com":{c:"1682327",s:"3086",f:"202302141447090"},"compareflooringprices.com":{c:"1683170",s:"3086",f:"202306161210090"},"sidingreplacementcost.com":{c:"1683497",s:"3086",f:"202308211539090"},"adt-savings.com":{c:"1683323",s:"31135",f:"202307211631550"},"topgutterpros.com":{c:"1683689",s:"3086",f:"202309251220170"},"topremodelingpros.com":{c:"1683689",s:"3086",f:"202309251220170"},"powerhomedeals.com":{roofing:{c:"1683681",s:"3086",f:"202309251210110"},windows:{c:"1683686",s:"3086",f:"202309251219100"},siding:{c:"1683683",s:"3086",f:"202309251214450"}},"bestcompany.modernize.com":{homewarranty:{c:"1684628",s:"34486",f:"202401301751220"},medicalalertsystems:{c:"1684826",s:"34486",f:"202402151655050"},homesecurity:{c:"1684824",s:"34486",f:"202402151653100"},solar:{c:"1684620",s:"34486",f:"202401301731070"},watersofteners:{c:"1684830",s:"34486",f:"202402141206230"},plumbing:{c:"1684766",s:"34486",f:"202402141115530"},treeservices:{c:"1684764",s:"34486",f:"202402141113540"},newwindows:{c:"1684828",s:"34486",f:"202402151656490"},walkintubs:{c:"1684760",s:"34486",f:"202402141109100"},stairlifts:{c:"1684758",s:"34486",f:"202402141106430"},siding:{c:"1684756",s:"34486",f:"202402141103210"},roofing:{c:"1684754",s:"34486",f:"202402141059590"},hvac:{c:"1684752",s:"34486",f:"202402141057220"},hottubs:{c:"1684750",s:"34486",f:"202402141054450"},gutters:{c:"1684748",s:"34486",f:"202402141051430"},flooring:{c:"1684746",s:"34486",f:"202402141049110"},doors:{c:"1684744",s:"34486",f:"202402141046440"},cabinets:{c:"1684822",s:"34486",f:"202402151651120"},bathroomremodel:{c:"1684820",s:"34486",f:"202402151646230"},findapro:{c:"1684895",s:"3086",f:"202402231339130"}},"bestcompany.com":{homewarranty:{c:"1684628",s:"34486",f:"202401301751220"},medicalalertsystems:{c:"1684826",s:"34486",f:"202402151655050"},homesecurity:{c:"1684824",s:"34486",f:"202402151653100"},solar:{c:"1684620",s:"34486",f:"202401301731070"},watersofteners:{c:"1684830",s:"34486",f:"202402141206230"},plumbing:{c:"1684766",s:"34486",f:"202402141115530"},treeservices:{c:"1684764",s:"34486",f:"202402141113540"},newwindows:{c:"1684828",s:"34486",f:"202402151656490"},walkintubs:{c:"1684760",s:"34486",f:"202402141109100"},stairlifts:{c:"1684758",s:"34486",f:"202402141106430"},siding:{c:"1684756",s:"34486",f:"202402141103210"},roofing:{c:"1684754",s:"34486",f:"202402141059590"},hvac:{c:"1684752",s:"34486",f:"202402141057220"},hottubs:{c:"1684750",s:"34486",f:"202402141054450"},gutters:{c:"1684748",s:"34486",f:"202402141051430"},flooring:{c:"1684746",s:"34486",f:"202402141049110"},doors:{c:"1684744",s:"34486",f:"202402141046440"},cabinets:{c:"1684822",s:"34486",f:"202402151651120"},bathroomremodel:{c:"1684820",s:"34486",f:"202402151646230"},findapro:{c:"1684895",s:"3086",f:"202402231339130"}},"topsolarcompanies.com":{c:"1684497",s:"34399",f:"202401241741100"},"besthomesecuritycompanys.com":{c:"1684495",s:"34399",f:"202401241738220"},"homewatersystemspros.com":{c:"1684679",s:"3086",f:"202402061238410"},"foundationandbasements.com":{c:"1685478",s:"3086",f:"202405021159440"},"topinsulationpros.com":{c:"1686466",s:"3086",f:"202408211814210"},"getwaterdamagehelp.com":{c:"1686735",s:"3086",f:"202409231230440"}};function b(o){let e,n,t,s="";const i=F();return"object"==typeof o&&null!==o?({c:e,s:n,f:t}=o):i&&(e="object"==typeof i.c?i.c[o]:i.c,({s:n,f:t}=i)),s=`http://o1.qnsr.com/cgi/r?;n=203;c=${e};s=${n};x=7936;f=${t};u=j;z=TIMESTAMP;&default=yes;`,s}function F(){const o=window.modForm.opts.websiteName.replace(/(qa\.?|staging\.?|www\.?)/g,"");if(o.includes("bestcompany")){let e=window.modForm.opts.landingPage.split("/");return e=e[2].replace(/-/g,""),y[o][e]}if(o.indexOf("quotes.improvementcenter.com")>-1||o.indexOf("modernize.com")>-1||o.indexOf("powerhomedeals.com")>-1){let e=window.modForm.opts.landingPage.replace(/\/$/g,"").replace(/^(?:[^/]*\/)+/g,"");return e=void 0!==y[o][e]?e:"default",y[o][e]}return y[o]}function v(){let o="https://hsleadpost1.quinstage.com/";return"production"===window.modUtils.getEnv()&&(o="https://hs.leadpost.net/"),o}function k(){void 0!==window.modForm.opts.quadLinkParams.CLK&&("heap"in window?window.Modalytics.heap("identify",[window.modForm.opts.quadLinkParams.CLK]):window.addEventListener("heapCookieResolved",(function(){window.Modalytics.heap("identify",[window.modForm.opts.quadLinkParams.CLK])})))}var P=n(3898);function C(){window.modForm.opts.form.querySelectorAll('.btn-primary, input[type="radio"]').forEach((function(o){o&&o.addEventListener("click",(function(o){!1===window.modForm.opts.quadLinkHasBeenTransformed&&0===Object.keys(window.modForm.opts.quadLinkParams).length&&(o.stopPropagation(),f(),window.modUtils.heap("track",["Quad Transform Retry"]))}))}))}},6954:function(o,e,n){function t(o){if(o){if(o.innerText)return o.innerText;if(o.textContent)return o.textContent;if(o.innerHTML)return o.innerHTML}return""}n.d(e,{i:function(){return t}})},3898:function(o,e,n){n.d(e,{initQuadTransform:function(){return s}});var t=n(2562);function s(){let o=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=!1;const n=(0,t.getQueryParamsFromSessionStorage)()||window.modUtils.getUrlParamsToObject(),s=n.hasOwnProperty("quadlink"),i=n.hasOwnProperty("tagID"),r={message:""},a=["ad","sp","fb","mt","adposition","dev","gclid","ki","sq","fb_ad_id","fb_adset_id","fb_campaign_id","placement","PartnerSourceID","sub2_id","PublisherSubID"];if(Object.keys(n).some((function(o){return window.modForm.opts.qsParams.includes(o.toUpperCase())}))){for(const o in n)window.modForm.opts.qsParams.includes(o.toUpperCase())&&void 0!==n[o]&&(window.modForm.opts.quadLinkParams[o.toUpperCase()]=n[o]);(0,t.heapIdentify)(),window.modForm.opts.phoneAssignmentConfig.showPhoneAssignmentNumber&&(0,t.getPhoneAssignmentData)(window.modForm.opts.quadLinkParams)}else{let d="",m="";i?(d=n.tagID,m="tagID"):(d=s?n.quadlink:(0,t.getDefaultQuad)(window.modForm.opts.vertical),m=s?"quadlink":"defaultQuad"),window.modForm.opts.quadLinkData[m]=d;for(const o in n)a.includes(o)&&(window.modForm.opts.quadLinkData[o]=n[o],e=!0);if(""!==d){if(window.modUtils.getLandingPage().includes("bestcompany")&&window.modUtils.getLandingPage().includes("find-a-pro")){const o=document.querySelector('input[name="quadlink"]'),n=(0,t.getDefaultQuad)(t.defaultQuadLinkValues["bestcompany.com"].findapro).replace("&default=yes;","");o&&(o.value=n),window.modForm.opts.quadLinkData.quadlink?window.modForm.opts.quadLinkData.quadlink=n:e&&(window.modForm.opts.quadLinkData.defaultQuad=n)}o?"IdlizeQueue"in window?(r.message="initQuadTransform() called on DOMContentLoaded with IdlizeQueue",window.IdlizeQueue.pushTask((()=>{(0,t.transformQuadlink)()}))):((0,t.transformQuadlink)(),r.message="initQuadTransform() called on DOMContentLoaded without IdlizeQueue"):((0,t.transformQuadlink)(),r.message="initQuadTransform() called on window.onload")}window.modUtils.heap("track",["Quad Transform",r])}}},3014:function(o,e,n){n.d(e,{isZipCodeValid:function(){return s}});var t=n(2562);function s(o,e){const n=window.modForm.opts.getVars&&window.modForm.opts.getVars.timeout&&"production"!==window.modUtils.getEnv()?Number(window.modForm.opts.getVars.timeout):3e3,s="https://"+("production"===window.modUtils.getEnv()?"hs.leadpost.net/":"hsleadpost1.quinstage.com/"),i=document.querySelectorAll(window.modForm.zipEditInput)[0],r=window.modUtils.getUrlParamsToObject(),a=window.modForm.opts.phoneAssignmentConfig.showPhoneAssignmentNumber&&window.modForm.opts.phoneAssignmentConfig.useHsEndpoint&&!r.startStep,d=new XMLHttpRequest;let m={};d.open("GET",`${s}api/PostalCordinateInfo/${o}/get`),d.timeout=n,d.send(),d.addEventListener("load",(function(){this.response&&(m={...m,...JSON.parse(this.response)},4===this.readyState&&200===this.status?(m.success=!0,m.data=JSON.parse(this.response),m.data.zip=o,i&&"hidden"===i.style.display&&(document.querySelector(window.modForm.zipEditControlCls).style.display="block"),window.modForm.retryZipValidation=!1,"function"==typeof e&&e(m),a&&(0,t.getPhoneAssignmentData)(window.modForm.opts.quadLinkParams,!0)):"function"==typeof e&&(400===m.status?e({error:!0,message:m.error_message}):e({})))})),d.addEventListener("error",(function(){console.error("Something went wrong");const o=(0,t.getHeapSessionIdCookieData)();(0,t.initDuplicateSubmissionExperience)(o),window.modUtils.heap("track",["API Error | Showing Fallback Experience",{function:"isZipCodeValid"}])})),d.addEventListener("timeout",(function(){window.modForm.retryZipValidation=!0,window.modForm.opts.cityField[0]&&(window.modForm.opts.cityField[0].value=""),window.modForm.opts.stateField[0]&&(window.modForm.opts.stateField[0].value=""),document.querySelector(window.modForm.zipEditControlCls)&&(document.querySelector(window.modForm.zipEditControlCls).style.display="none"),e({success:!0,data:{zip:o}})}))}}},e={};function n(t){var s=e[t];if(void 0!==s)return s.exports;var i=e[t]={exports:{}};return o[t](i,i.exports,n),i.exports}n.d=function(o,e){for(var t in e)n.o(e,t)&&!n.o(o,t)&&Object.defineProperty(o,t,{enumerable:!0,get:e[t]})},n.o=function(o,e){return Object.prototype.hasOwnProperty.call(o,e)},n.r=function(o){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})};var t=n(5895),s=window;for(var i in t)s[i]=t[i];t.__esModule&&Object.defineProperty(s,"__esModule",{value:!0})}();
|
|
2
|
-
//# sourceMappingURL=initQSForm.min.js.map
|