mod-build 3.6.71 → 4.0.0-alpha.1
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/.eslintignore +3 -0
- package/.eslintrc +18 -0
- package/CHANGELOG.md +2 -240
- package/README.md +16 -263
- package/gulp-tasks/build.js +1 -1
- package/package.json +21 -69
- package/siteconfig.js +38 -0
- package/src/accessible-components/button/_button.scss +195 -0
- package/src/accessible-components/button/back-button.html +4 -0
- package/src/accessible-components/button/button.html +17 -0
- package/src/accessible-components/carousel/_carousel.scss +112 -0
- package/src/accessible-components/carousel/carousel.html +25 -0
- package/src/accessible-components/checkbox/_checkbox.scss +96 -0
- package/src/accessible-components/checkbox/checkbox.html +8 -0
- package/src/accessible-components/expand-collapse/_expand-collapse.scss +122 -0
- package/src/accessible-components/expand-collapse/expand-collapse.html +8 -0
- package/src/accessible-components/expand-collapse/expand-collapse.js +52 -0
- package/src/accessible-components/expand-collapse/expand-collapse.min.js +2 -0
- package/src/accessible-components/expand-collapse/expand-collapse.min.js.map +1 -0
- package/src/accessible-components/featured-block/_featured-block.scss +219 -0
- package/src/accessible-components/featured-block/featured-block.html +54 -0
- package/src/accessible-components/foot-assets/foot-assets.html +92 -0
- package/src/accessible-components/footer/footer.html +2 -0
- package/src/{templates/_partials/scripts/gtm-editorials/body/google-tag-manager-body.html → accessible-components/gtm-body/gtm-body.html} +1 -2
- package/src/accessible-components/head/head.html +188 -0
- package/src/accessible-components/header/_header.scss +289 -0
- package/src/accessible-components/header/header.html +66 -0
- package/src/accessible-components/hero/_hero.scss +371 -0
- package/src/accessible-components/hero/hero.html +53 -0
- package/src/accessible-components/how-it-works/_how-it-works.scss +217 -0
- package/src/accessible-components/how-it-works/how-it-works-carousel.html +12 -0
- package/src/accessible-components/how-it-works/how-it-works-static.html +12 -0
- package/src/accessible-components/how-it-works/how-it-works.html +14 -0
- package/src/accessible-components/information/_information.scss +92 -0
- package/src/accessible-components/information/information.html +26 -0
- package/src/accessible-components/input/_input.scss +202 -0
- package/src/accessible-components/input/input.html +22 -0
- package/src/accessible-components/input/textarea.html +9 -0
- package/src/accessible-components/partners/_partners.scss +232 -0
- package/src/accessible-components/partners/partners.html +56 -0
- package/src/accessible-components/picture/picture.html +19 -0
- package/src/accessible-components/preloader/_preloader.scss +61 -0
- package/src/accessible-components/preloader/preloader.html +23 -0
- package/src/accessible-components/progress-bar/_progress-bar.scss +119 -0
- package/src/accessible-components/progress-bar/progress-bar.html +21 -0
- package/src/accessible-components/progress-bar/progress-bar.js +37 -0
- package/src/accessible-components/progress-bar/progress-bar.min.js +2 -0
- package/src/accessible-components/progress-bar/progress-bar.min.js.map +1 -0
- package/src/accessible-components/radio-button/_radio-button.scss +537 -0
- package/src/accessible-components/radio-button/radio-button.html +34 -0
- package/src/accessible-components/reviews/_reviews.scss +175 -0
- package/src/accessible-components/reviews/reviews-carousel.html +12 -0
- package/src/accessible-components/reviews/reviews-static.html +12 -0
- package/src/accessible-components/reviews/reviews.html +37 -0
- package/src/accessible-components/select/_select.scss +69 -0
- package/src/accessible-components/select/select.html +10 -0
- package/src/accessible-components/steps/_steps.scss +524 -0
- package/src/accessible-components/steps/defaultFormFieldConfig.json +109 -0
- package/src/accessible-components/steps/step-fields.html +33 -0
- package/src/accessible-components/steps/steps.html +150 -0
- package/src/accessible-components/tcpa/_tcpa.scss +49 -0
- package/src/accessible-components/tcpa/tcpa.html +9 -0
- package/src/accessible-components/tile/_tile.scss +117 -0
- package/src/accessible-components/tile/tile.html +14 -0
- package/src/accessible-components/value-props/_value-props.scss +100 -0
- package/src/accessible-components/value-props/value-props.html +17 -0
- package/src/accessible-components/zip-control/_zip-control.scss +78 -0
- package/src/accessible-components/zip-control/zip-control.html +10 -0
- package/src/data/footer.js +117 -0
- package/src/data/seasons.js +5 -7
- package/src/data/theme.json +164 -0
- package/src/index.html +18 -0
- package/src/main.js +45 -0
- package/src/resources/scripts/abandonment/abandonment-1df90ee155f6c0893d90.min.js +2 -0
- package/src/resources/scripts/abandonment/abandonment.min.js +2 -0
- package/src/resources/scripts/footer/footer-component-7b5e263f64568573ecc0.min.js +2 -0
- package/src/resources/scripts/footer/footer-component.min.js +2 -0
- package/src/resources/scripts/helpers/initNumericOnlyFields.min.js +2 -0
- package/src/resources/scripts/helpers/initNumericOnlyFields.min.js.map +1 -0
- package/src/resources/scripts/helpers/isZipCodeValid.min.js +2 -0
- package/src/resources/scripts/helpers/isZipCodeValid.min.js.map +1 -0
- package/src/resources/scripts/mod-alytics/modalytics-0ac7d7a5a72ea67a0f47.min.js +2 -0
- package/src/resources/scripts/mod-alytics/modalytics.min.js +2 -0
- package/src/resources/scripts/mod-form/form/homeowner-77a4dd439b8db412678b.min.js +2 -0
- package/src/resources/scripts/mod-form/form/homeowner.min.js +2 -0
- package/src/resources/scripts/mod-utils/modutils-8ba40d21f559171ddd36.min.js +2 -0
- package/src/resources/scripts/mod-utils/modutils.min.js +2 -0
- package/src/resources/styles/components/abandonment/abandonment-ae63aca828944411eff7.min.css +1 -0
- package/src/resources/styles/components/abandonment/abandonment.min.css +1 -0
- package/src/resources/styles/components/footer/mod-footer-3717faf57147c62c1777.min.css +1 -0
- package/src/resources/styles/components/footer/mod-footer.min.css +1 -0
- package/src/resources/styles/components/footer/qs-footer-12bf078dc614ff221c3c.min.css +1 -0
- package/src/resources/styles/components/footer/qs-footer.min.css +1 -0
- package/src/resources/templates/modals/about/index.html +9 -0
- package/src/resources/templates/modals/contact-us/index.html +348 -0
- package/src/resources/templates/modals/faq/index.html +9 -0
- package/src/resources/templates/modals/privacy/index.html +236 -0
- package/src/resources/templates/modals/terms/index.html +166 -0
- package/src/scripts/has-qs-params.js +6 -5
- package/src/scripts/url-cleaner.js +3 -3
- package/src/scripts/utils.js +178 -0
- package/src/styles/home.scss +1 -0
- package/src/temp/scripts/maxmind-geoip2.js +104 -0
- package/src/templates/_partials/scripts/deferred-styles.html +16 -16
- package/src/templates/_partials/scripts/vwo-redirect-callback.html +43 -45
- package/src/templates/components/head.html +70 -0
- package/tasks/clean.js +13 -0
- package/tasks/grab-cdn.js +107 -0
- package/tasks/grab-form-helpers.js +94 -0
- package/tasks/grab-shared-components.js +81 -0
- package/tasks/grab-shared-scripts.js +267 -0
- package/tasks/serve.js +15 -0
- package/tasks/templates.js +168 -0
- package/template.js +801 -0
- package/vite.config.js +56 -0
- package/.eslintrc.yml +0 -59
- package/src/data/common.js +0 -704
- package/src/data/components/qs-footer.js +0 -55
- package/src/data/components/quote-footer.js +0 -73
- package/src/scripts/apt-block.js +0 -919
- package/src/scripts/components/custom-selects.js +0 -48
- package/src/scripts/components/radio-panels.js +0 -45
- package/src/scripts/es6-1.js +0 -6
- package/src/scripts/es6-2.js +0 -2
- package/src/scripts/qs-form.js +0 -839
- package/src/scripts/vendor/maxmind-geoip2.js +0 -2
- package/src/scripts/vendor/swiper.min.js +0 -13
- package/src/styles/apt-block.scss +0 -888
- package/src/templates/_partials/apt-block.html +0 -30
- package/src/templates/_partials/scripts/analytics.html +0 -4
- package/src/templates/_partials/scripts/go-page-hiding-snippet.html +0 -8
- package/src/templates/_partials/scripts/google-maps.html +0 -1
- package/src/templates/_partials/scripts/google-optimize.html +0 -12
- package/src/templates/_partials/scripts/gtm-editorials/head/google-tag-manager-head.html +0 -10
- package/src/templates/_partials/scripts/gtm-hil/body/google-tag-manager-body.html +0 -5
- package/src/templates/_partials/scripts/gtm-hil/head/google-tag-manager-head.html +0 -10
- package/src/templates/_partials/scripts/gtm-pro/body/google-tag-manager-body.html +0 -5
- package/src/templates/_partials/scripts/gtm-pro/head/google-tag-manager-head.html +0 -10
- package/src/templates/_partials/scripts/gtm-quote/body/google-tag-manager-body.html +0 -5
- package/src/templates/_partials/scripts/gtm-quote/head/google-tag-manager-head.html +0 -9
- package/src/templates/_partials/scripts/gtm-whitelabel/body/mod-google-tag-manager-body.html +0 -5
- package/src/templates/_partials/scripts/gtm-whitelabel/body/non-mod-google-tag-manager-body.html +0 -5
- package/src/templates/_partials/scripts/gtm-whitelabel/head/mod-google-tag-manager-head.html +0 -10
- package/src/templates/_partials/scripts/gtm-whitelabel/head/non-mod-google-tag-manager-head.html +0 -9
- package/src/templates/_partials/scripts/gtm-wordpress/body/google-tag-manager-body.html +0 -5
- package/src/templates/_partials/scripts/gtm-wordpress/head/google-tag-manager-head.html +0 -9
- package/src/templates/_partials/scripts/visual-website-optimizer.html +0 -5
- package/src/templates/index.html +0 -46
- /package/{src → public}/favicon.ico +0 -0
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
<div class="apt-block apt-block--instant" id="instant-apt-block" style="display: none">
|
|
2
|
-
<div class="apt-block__suptitle">
|
|
3
|
-
Next steps
|
|
4
|
-
</div>
|
|
5
|
-
<h2 class="apt-block__title">
|
|
6
|
-
Set Appointments
|
|
7
|
-
</h2>
|
|
8
|
-
<div class="apt-block__subtitle">
|
|
9
|
-
Request up to four appointments with contractors to receive free quotes.
|
|
10
|
-
</div>
|
|
11
|
-
|
|
12
|
-
<div class="apt-block__instant-matches" id="apt-block-instant-matches"> </div>
|
|
13
|
-
</div>
|
|
14
|
-
|
|
15
|
-
<div class="apt-block" id="apt-block" style="display: none">
|
|
16
|
-
<h2 class="apt-block__title" id="apt-block-title">
|
|
17
|
-
Loading matches...
|
|
18
|
-
</h2>
|
|
19
|
-
|
|
20
|
-
<div class="apt-block__matches" id="apt-block-matches"> </div>
|
|
21
|
-
|
|
22
|
-
<div class="apt-block__loading" id="apt-block-loading">
|
|
23
|
-
<span class="apt-block__spinner"></span>
|
|
24
|
-
Searching for matches…
|
|
25
|
-
</div>
|
|
26
|
-
</div>
|
|
27
|
-
|
|
28
|
-
<script>
|
|
29
|
-
var aptBlockTCPA = '{{#x 'this.tcpa("Schedule", "Modernize")'}}{{/x}}';
|
|
30
|
-
</script>
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
<!-- Google Optimize Page-hiding snippet -->
|
|
2
|
-
<style>.async-hide { opacity: 0 !important} </style>
|
|
3
|
-
<script>(function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date;
|
|
4
|
-
h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')};
|
|
5
|
-
(a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c;
|
|
6
|
-
})(window,document.documentElement,'async-hide','dataLayer',4000,
|
|
7
|
-
{'{{optimize_GTM}}':true});</script>
|
|
8
|
-
<!-- End Google Optimize Page-hiding snippet -->
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
<script src="//maps.googleapis.com/maps/api/js?key=AIzaSyBf4HNrR12KgZeMNsdoNIjD57pwVUsZ6e4&language=en&libraries=places&callback=modForm.initAddressAutocomplete" async defer></script>
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
<!-- Google Optimize -->
|
|
2
|
-
<script>
|
|
3
|
-
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
|
4
|
-
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|
5
|
-
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
|
6
|
-
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
|
7
|
-
|
|
8
|
-
ga('create', '{{ga_tracking_ID}}', 'auto');
|
|
9
|
-
ga('require', '{{optimize_GTM}}');
|
|
10
|
-
</script>
|
|
11
|
-
<!-- End Google Optimize -->
|
|
12
|
-
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<!-- Google Tag Manager -->
|
|
2
|
-
<script>
|
|
3
|
-
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
4
|
-
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
5
|
-
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
6
|
-
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
7
|
-
})(window,document,'script','dataLayer','GTM-WPXKC8');
|
|
8
|
-
</script>
|
|
9
|
-
<!-- End Google Tag Manager -->
|
|
10
|
-
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<!-- Google Tag Manager -->
|
|
2
|
-
<script>
|
|
3
|
-
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
4
|
-
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
5
|
-
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
6
|
-
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
7
|
-
})(window,document,'script','dataLayer','GTM-TDM5ZF6');
|
|
8
|
-
</script>
|
|
9
|
-
<!-- End Google Tag Manager -->
|
|
10
|
-
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<!-- Google Tag Manager -->
|
|
2
|
-
<script>
|
|
3
|
-
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
4
|
-
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
5
|
-
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
6
|
-
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
7
|
-
})(window,document,'script','dataLayer','GTM-WPXKC8');
|
|
8
|
-
</script>
|
|
9
|
-
<!-- End Google Tag Manager -->
|
|
10
|
-
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<!-- Google Tag Manager -->
|
|
2
|
-
<script>
|
|
3
|
-
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
4
|
-
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
5
|
-
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
6
|
-
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
7
|
-
})(window,document,'script','dataLayer','GTM-NVJQBK2');
|
|
8
|
-
</script>
|
|
9
|
-
<!-- End Google Tag Manager -->
|
package/src/templates/_partials/scripts/gtm-whitelabel/head/mod-google-tag-manager-head.html
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<!-- Google Tag Manager -->
|
|
2
|
-
<script>
|
|
3
|
-
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
4
|
-
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
5
|
-
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
6
|
-
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
7
|
-
})(window,document,'script','dataLayer','GTM-TJ8BFVQ');
|
|
8
|
-
</script>
|
|
9
|
-
<!-- End Google Tag Manager -->
|
|
10
|
-
|
package/src/templates/_partials/scripts/gtm-whitelabel/head/non-mod-google-tag-manager-head.html
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<!-- Google Tag Manager -->
|
|
2
|
-
<script>
|
|
3
|
-
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
4
|
-
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
5
|
-
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
6
|
-
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
7
|
-
})(window,document,'script','dataLayer','GTM-TBC2FVC');
|
|
8
|
-
</script>
|
|
9
|
-
<!-- End Google Tag Manager -->
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<!-- Google Tag Manager -->
|
|
2
|
-
<script>
|
|
3
|
-
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
4
|
-
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
5
|
-
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
6
|
-
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
7
|
-
})(window,document,'script','dataLayer','GTM-WPXKC8');
|
|
8
|
-
</script>
|
|
9
|
-
<!-- End Google Tag Manager -->
|
package/src/templates/index.html
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
|
|
3
|
-
<head lang="en">
|
|
4
|
-
<script>
|
|
5
|
-
</script>
|
|
6
|
-
|
|
7
|
-
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
8
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
9
|
-
<meta name="viewport" content="initial-scale=1.0, width=device-width" />
|
|
10
|
-
<title>modSite</title>
|
|
11
|
-
|
|
12
|
-
<link href="/styles/home.css" rel="stylesheet" type="text/css" />
|
|
13
|
-
</head>
|
|
14
|
-
|
|
15
|
-
<body>
|
|
16
|
-
<h1>
|
|
17
|
-
It works!
|
|
18
|
-
</h1>
|
|
19
|
-
|
|
20
|
-
<form id="form" class="form" novalidate="novalidate">
|
|
21
|
-
<div id="step1" class="step step--active" data-bind="step">
|
|
22
|
-
<input type="tel" name="zip" placeholder="Zip" maxlength="5" />
|
|
23
|
-
</div>
|
|
24
|
-
</form>
|
|
25
|
-
|
|
26
|
-
<!-- build:js /scripts/vendor/jquery.js -->
|
|
27
|
-
<script src="/node_modules/jquery/dist/jquery.js"></script>
|
|
28
|
-
<!-- endbuild -->
|
|
29
|
-
|
|
30
|
-
<!-- build:js /scripts/vendor/jquery.mask.min.js -->
|
|
31
|
-
<script src="/node_modules/jquery-mask-plugin/dist/jquery.mask.min.js"></script>
|
|
32
|
-
<!-- endbuild -->
|
|
33
|
-
|
|
34
|
-
<script src="/scripts/mod-utils.js"></script>
|
|
35
|
-
|
|
36
|
-
<script src="/scripts/mod-form.js"></script>
|
|
37
|
-
|
|
38
|
-
<script src="/scripts/compiled/home.js"></script>
|
|
39
|
-
|
|
40
|
-
<!-- build:js(src) /scripts/es6.js -->
|
|
41
|
-
<script src="/scripts/es6-1.js"></script>
|
|
42
|
-
<script src="/scripts/es6-2.js"></script>
|
|
43
|
-
<!-- endbuild -->
|
|
44
|
-
</body>
|
|
45
|
-
|
|
46
|
-
</html>
|
|
File without changes
|