mod-build 4.0.91 → 4.0.92

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.
Files changed (137) hide show
  1. package/package.json +1 -2
  2. package/public/resources/scripts/abandonment/abandonment-a4bbb36fbc8ed64042b8.min.js +2 -0
  3. package/public/resources/scripts/abandonment/abandonment.min.js +2 -0
  4. package/public/resources/scripts/callrail/callrail-14011d73b50a928de4b4.min.js +2 -0
  5. package/public/resources/scripts/callrail/callrail.min.js +2 -0
  6. package/public/resources/scripts/footer/footer-component-46dc0d7ca6af4fc3b76b.min.js +2 -0
  7. package/public/resources/scripts/footer/footer-component.min.js +2 -0
  8. package/public/resources/scripts/geolocation/geolocation.min.js +2 -0
  9. package/public/resources/scripts/helpers/addVWOTestQueryParam.min.js +2 -0
  10. package/public/resources/scripts/helpers/addVWOTestQueryParam.min.js.map +1 -0
  11. package/public/resources/scripts/helpers/additionalOpts.min.js +2 -0
  12. package/public/resources/scripts/helpers/additionalOpts.min.js.map +1 -0
  13. package/public/resources/scripts/helpers/calls-only.min.js +2 -0
  14. package/public/resources/scripts/helpers/calls-only.min.js.map +1 -0
  15. package/public/resources/scripts/helpers/getPhoneAssignmentData.min.js +2 -0
  16. package/public/resources/scripts/helpers/getPhoneAssignmentData.min.js.map +1 -0
  17. package/public/resources/scripts/helpers/initNumericOnlyFields.min.js +2 -0
  18. package/public/resources/scripts/helpers/initNumericOnlyFields.min.js.map +1 -0
  19. package/public/resources/scripts/helpers/initQSForm.min.js +2 -0
  20. package/public/resources/scripts/helpers/initQSForm.min.js.map +1 -0
  21. package/public/resources/scripts/helpers/initQuadTransform.min.js +2 -0
  22. package/public/resources/scripts/helpers/initQuadTransform.min.js.map +1 -0
  23. package/public/resources/scripts/helpers/isZipCodeValid.min.js +2 -0
  24. package/public/resources/scripts/helpers/isZipCodeValid.min.js.map +1 -0
  25. package/public/resources/scripts/helpers/observeVWOVariation.min.js +2 -0
  26. package/public/resources/scripts/helpers/observeVWOVariation.min.js.map +1 -0
  27. package/public/resources/scripts/helpers/opts.min.js +2 -0
  28. package/public/resources/scripts/helpers/opts.min.js.map +1 -0
  29. package/public/resources/scripts/jornaya.hbs +35 -0
  30. package/public/resources/scripts/jornaya.html +35 -0
  31. package/public/resources/scripts/mod-alytics/modalytics-be44027508c0438f6709.min.js +2 -0
  32. package/public/resources/scripts/mod-alytics/modalytics.min.js +2 -0
  33. package/public/resources/scripts/mod-form/form/contractor-0918337caf3dfede1609.min.js +2 -0
  34. package/public/resources/scripts/mod-form/form/contractor.min.js +2 -0
  35. package/public/resources/scripts/mod-form/form/homeowner-19a121b0e596042326f4.min.js +2 -0
  36. package/public/resources/scripts/mod-form/form/homeowner.min.js +2 -0
  37. package/public/resources/scripts/mod-utils/modutils-bc275eb41af515f626ef.min.js +2 -0
  38. package/public/resources/scripts/mod-utils/modutils.min.js +2 -0
  39. package/public/resources/scripts/trusted-form.hbs +38 -0
  40. package/public/resources/scripts/trusted-form.html +38 -0
  41. package/public/resources/styles/components/abandonment/abandonment-8a673f060817db6cb7dc.min.css +1 -0
  42. package/public/resources/styles/components/abandonment/abandonment.min.css +1 -0
  43. package/public/resources/styles/components/footer/mod-footer-d233fa64b6c8297c70ec.min.css +1 -0
  44. package/public/resources/styles/components/footer/mod-footer.min.css +1 -0
  45. package/public/resources/styles/components/footer/qs-footer-926e67c28d10c729db46.min.css +1 -0
  46. package/public/resources/styles/components/footer/qs-footer.min.css +1 -0
  47. package/src/resources/data/tcpa.json +4 -0
  48. package/src/resources/templates/modals/about/index.hbs +9 -0
  49. package/src/resources/templates/modals/about/index.html +9 -0
  50. package/src/resources/templates/modals/contact-us/index.hbs +348 -0
  51. package/src/resources/templates/modals/contact-us/index.html +348 -0
  52. package/src/resources/templates/modals/e-sign-consent/index.hbs +35 -0
  53. package/src/resources/templates/modals/e-sign-consent/index.html +35 -0
  54. package/src/resources/templates/modals/faq/index.hbs +9 -0
  55. package/src/resources/templates/modals/faq/index.html +9 -0
  56. package/src/resources/templates/modals/privacy/index.hbs +237 -0
  57. package/src/resources/templates/modals/privacy/index.html +237 -0
  58. package/src/resources/templates/modals/terms/index.hbs +167 -0
  59. package/src/resources/templates/modals/terms/index.html +167 -0
  60. package/src/scripts/retry-fetch.js +39 -0
  61. package/src/shared-components/call-tracking/_call-tracking.scss +311 -0
  62. package/src/shared-components/call-tracking/call-tracking-icon.html +8 -0
  63. package/src/shared-components/call-tracking/call-tracking.html +81 -0
  64. package/src/shared-components/call-tracking/phone.svg +6 -0
  65. package/src/shared-components/card-button/_card-button.scss +49 -0
  66. package/src/shared-components/card-button/card-button.html +9 -0
  67. package/src/shared-components/carousel/_carousel.scss +106 -0
  68. package/src/shared-components/carousel/carousel.html +23 -0
  69. package/src/shared-components/carousel/carousel.js +3573 -0
  70. package/src/shared-components/carousel/carousel.js.map +1 -0
  71. package/src/shared-components/carousel/carousel.min.js +2 -0
  72. package/src/shared-components/carousel/carousel.min.js.map +1 -0
  73. package/src/shared-components/carousel/carousel.min.min.js +2 -0
  74. package/src/shared-components/carousel/carousel.min.min.js.map +1 -0
  75. package/src/shared-components/checkbox/_checkbox.scss +130 -0
  76. package/src/shared-components/checkbox/checkbox.html +10 -0
  77. package/src/shared-components/consent-capture/tcpa.html +12 -0
  78. package/src/shared-components/expand-collapse/_expand-collapse.scss +93 -0
  79. package/src/shared-components/expand-collapse/expand-collapse.html +8 -0
  80. package/src/shared-components/expand-collapse/expand-collapse.js +40 -0
  81. package/src/shared-components/expand-collapse/expand-collapse.min.js +2 -0
  82. package/src/shared-components/expand-collapse/expand-collapse.min.js.map +1 -0
  83. package/src/shared-components/featured-block/_featured-block.scss +191 -0
  84. package/src/shared-components/featured-block/featured-block.html +80 -0
  85. package/src/shared-components/foot-assets/foot-assets.html +107 -0
  86. package/src/shared-components/form-tcpa/form-tcpa-spanish.html +61 -0
  87. package/src/shared-components/form-tcpa/form-tcpa.html +55 -0
  88. package/src/shared-components/gtm-body/gtm-body.html +4 -0
  89. package/src/shared-components/head/head.html +195 -0
  90. package/src/shared-components/header/_header.scss +200 -0
  91. package/src/shared-components/header/header.html +79 -0
  92. package/src/shared-components/hero/_hero.scss +276 -0
  93. package/src/shared-components/hero/hero.html +136 -0
  94. package/src/shared-components/how-it-works/_how-it-works.scss +138 -0
  95. package/src/shared-components/how-it-works/how-it-works.html +19 -0
  96. package/src/shared-components/input/_input.scss +242 -0
  97. package/src/shared-components/input/input.html +30 -0
  98. package/src/shared-components/preloader/_preloader.scss +61 -0
  99. package/src/shared-components/preloader/preloader.html +49 -0
  100. package/src/shared-components/progress-bar/_progress-bar.scss +142 -0
  101. package/src/shared-components/progress-bar/progress-bar.html +20 -0
  102. package/src/shared-components/progress-bar/progress-bar.js +26 -0
  103. package/src/shared-components/progress-bar/progress-bar.min.js +2 -0
  104. package/src/shared-components/progress-bar/progress-bar.min.js.map +1 -0
  105. package/src/shared-components/radio-button/_radio-button.scss +577 -0
  106. package/src/shared-components/radio-button/radio-button.html +25 -0
  107. package/src/shared-components/reviews/_reviews.scss +79 -0
  108. package/src/shared-components/reviews/reviews.html +27 -0
  109. package/src/shared-components/section-deals/sitemap.xml +9 -0
  110. package/src/shared-components/select/_select.scss +61 -0
  111. package/src/shared-components/select/select.html +8 -0
  112. package/src/shared-components/steps/_steps.scss +431 -0
  113. package/src/shared-components/steps/defaultFormFieldConfig.json +64 -0
  114. package/src/shared-components/steps/step-fields.html +36 -0
  115. package/src/shared-components/steps/steps.html +136 -0
  116. package/src/shared-components/textarea/_textarea.scss +96 -0
  117. package/src/shared-components/textarea/textarea.html +13 -0
  118. package/src/shared-components/theme-toggle/_theme-toggle.scss +68 -0
  119. package/src/shared-components/theme-toggle/theme-toggle.html +34 -0
  120. package/src/shared-components/tile/_tile.scss +117 -0
  121. package/src/shared-components/tile/tile.html +27 -0
  122. package/src/shared-components/value-props/_value-props.scss +99 -0
  123. package/src/shared-components/value-props/value-props.html +17 -0
  124. package/src/shared-components/zip-control/_zip-control.scss +42 -0
  125. package/src/shared-components/zip-control/zip-control.html +21 -0
  126. package/tasks/add-editorconfig.js +3 -3
  127. package/tasks/get-default-trade-questions.js +8 -8
  128. package/tasks/grab-b2b-data.js +9 -30
  129. package/tasks/grab-cdn.js +4 -13
  130. package/tasks/grab-code-review-rules.js +4 -3
  131. package/tasks/grab-form-helpers.js +11 -27
  132. package/tasks/grab-global-fonts.js +7 -13
  133. package/tasks/grab-jsdoc.js +10 -30
  134. package/tasks/grab-shared-components.js +10 -19
  135. package/tasks/grab-shared-scripts.js +8 -21
  136. package/tasks/templates.js +28 -41
  137. package/src/scripts/retry-axios.js +0 -23
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
3
+ {{#each this.sitemap}}
4
+ <url>
5
+ <loc>{{this.link}}</loc>
6
+ <lastmod>{{this.lastMod}}</lastmod>
7
+ </url>
8
+ {{/each}}
9
+ </urlset>
@@ -0,0 +1,61 @@
1
+ $select-bg-color: transparent !default;
2
+ $select-border: 1px solid $color-charcoal1 !default;
3
+ $select-border-raius: 4px !default;
4
+ $select-box-shadow: inset 2px 1px 2px 0 rgba($color-black, .08), inset -2px 0px 2px 0 rgba($color-black, .08) !default;
5
+ $select-font-size: 16px !default;
6
+ $select-line-height: 1.1875 !default;
7
+ $select-margin: 0 0 15px !default;
8
+ $select-padding: 14px 15px 13px !default;
9
+ $select-text-color: $color-charcoal5 !default;
10
+ $select-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s !default;
11
+
12
+ $select-focus-border: 1px solid $color-charcoal2 !default;
13
+ $select-focus-box-shadow: none !default;
14
+
15
+ $select-option-bg-color: $color-white !default;
16
+ $select-option-color: $color-charcoal5 !default;
17
+
18
+ $select-arrow-position-right: 15px !default;
19
+ $select-arrow-position-top: calc(50% - 7px) !default;
20
+ $select-arrow-color: $select-text-color !default;
21
+
22
+ .select-wrapper {
23
+ color: $select-text-color;
24
+ margin: $select-margin;
25
+ position: relative;
26
+ }
27
+
28
+ .select {
29
+ appearance: none;
30
+ background: $select-bg-color;
31
+ border: $select-border;
32
+ border-radius: $select-border-raius;
33
+ box-shadow: $select-box-shadow;
34
+ cursor: pointer;
35
+ font-size: $select-font-size;
36
+ line-height: $select-line-height;
37
+ margin: 0;
38
+ padding: $select-padding;
39
+ position: relative;
40
+ transition: $select-transition;
41
+ width: 100%;
42
+
43
+ &:focus {
44
+ border: $select-focus-border;
45
+ box-shadow: $select-focus-box-shadow;
46
+ }
47
+
48
+ option {
49
+ background: $select-option-bg-color;
50
+ color: $select-option-color;
51
+ }
52
+
53
+ .select-caret {
54
+ color: $select-arrow-color;
55
+ margin-top: 0;
56
+ pointer-events: none;
57
+ position: absolute;
58
+ right: $select-arrow-position-right;
59
+ top: $select-arrow-position-top;
60
+ }
61
+ }
@@ -0,0 +1,8 @@
1
+ <div class="select-wrapper{{#if this.field.class}} this.field.class{{/if}}">
2
+ <select class="select" name="{{this.field.name}}" id="{{#if this.field.id}}{{this.field.id}}{{else}}{{this.field.name}}{{/if}}" data-required="nonempty">
3
+ {{#each this.field.options}}
4
+ <option value="{{this.value}}">{{this.text}}</option>
5
+ {{/each}}
6
+ </select>
7
+ <span class="select-caret icon icon-caret-down"></span>
8
+ </div>
@@ -0,0 +1,431 @@
1
+ $step-supertitle-bg-color: $color-blue5 !default;
2
+ $step-supertitle-color: $color-white !default;
3
+ $step-supertitle-font-size: 22px !default;
4
+ $step-supertitle-font-size-mobile: 18px !default;
5
+ $step-supertitle-font-weight: 300 !default;
6
+ $step-supertitle-line-height: 1.36 !default;
7
+ $step-supertitle-padding: 20px !default;
8
+ $step-supertitle-padding-mobile: 15px !default;
9
+
10
+ $step-supertitle-arrow-animation: AnimateArrowUpDown 10s linear 2s infinite !default;
11
+ $step-supertitle-arrow-background-color: $step-supertitle-bg-color !default;
12
+ $step-supertitle-arrow-color: $step-supertitle-color !default;
13
+ $step-supertitle-arrow-content: '\e900' !default;
14
+ $step-supertitle-arrow-font-size: 22px !default;
15
+ $step-supertitle-arrow-font-family: modicons-basic !default;
16
+ $step-supertitle-arrow-position: absolute !default;
17
+ $step-supertitle-arrow-bottom: -24px !default;
18
+ $step-supertitle-arrow-left: 50% !default;
19
+ $step-supertitle-arrow-transform: translateX(-50%) !default;
20
+ $step-supertitle-arrow-container-height: 75px !default;
21
+ $step-supertitle-arrow-container-width: 140px !default;
22
+ $step-supertitle-arrow-container-position: absolute !default;
23
+ $step-supertitle-arrow-container-bottom: -40px !default;
24
+ $step-supertitle-arrow-container-left: 50% !default;
25
+ $step-supertitle-arrow-container-transform: translateX(-50%) !default;
26
+ $step-supertitle-arrow-container-z-index: -1 !default;
27
+ $step-supertitle-arrow-border-radius: 0 0 $step-supertitle-arrow-container-height $step-supertitle-arrow-container-height !default;
28
+ $step-animated-arrow-title-margin-top: 75px !default;
29
+
30
+ $step-title-container-bg-color: transparent !default;
31
+ $step-title-container-margin: 0 !default;
32
+ $step-title-container-padding: 0 20px !default;
33
+ $step-title-container-text-align: center !default;
34
+
35
+ $step-title-color: $color-blue5 !default;
36
+ $step-title-font-size: 22px !default;
37
+ $step-title-font-size-mobile: $step-title-font-size !default;
38
+ $step-title-font-weight: bold !default;
39
+ $step-title-line-height: 1.55 !default;
40
+ $step-title-margin: 0 !default;
41
+ $step-title-text-align-form-inprogress: left !default;
42
+
43
+ $step-subtitle-color: $color-charcoal5 !default;
44
+ $step-subtitle-font-size: 16px !default;
45
+ $step-subtitle-font-size-mobile: $step-subtitle-font-size !default;
46
+ $step-subtitle-font-weight: normal !default;
47
+ $step-subtitle-line-height: $step-title-line-height !default;
48
+ $step-subtitle-margin: 5px 0 25px !default;
49
+
50
+ $step-subtitle-list-color: $color-white !default;
51
+ $step-subtitle-list-font-size: 14px !default;
52
+ $step-subtitle-list-font-weight: normal !default;
53
+ $step-subtitle-list-icon: '\e920' !default;
54
+ $step-subtitle-list-icon-margin: 0 10px 0 0 !default;
55
+ $step-subtitle-list-line-height: 1.29 !default;
56
+ $step-subtitle-list-margin: 0 !default;
57
+
58
+ $step-overview-border: 1px solid $color-charcoal1 !default;
59
+ $step-overview-color: $color-charcoal5 !default;
60
+ $step-overview-font-size: 13px !default;
61
+ $step-overview-letter-spacing: .1px !default;
62
+ $step-overview-line-height: 1.38 !default;
63
+ $step-overview-margin: 0 auto 20px !default;
64
+ $step-overview-padding: 8px 0 !default;
65
+ $step-overview-text-align: center !default;
66
+
67
+ $step-overview-number-background: $step-overview-color !default;
68
+ $step-overview-number-color: $color-white !default;
69
+ $step-overview-number-font-size: 14px !default;
70
+ $step-overview-number-font-weight: 700 !default;
71
+ $step-overview-number-height: 22px !default;
72
+ $step-overview-number-line-height: $step-overview-number-height !default;
73
+ $step-overview-number-margin-right: 5px !default;
74
+ $step-overview-number-width: $step-overview-number-height !default;
75
+
76
+ $form-group-margin: 0 !default;
77
+ $form-group-label-color: $color-charcoal5 !default;
78
+ $form-group-label-font-size: 17px !default;
79
+ $form-group-label-font-weight: normal !default;
80
+ $form-group-label-margin: 10px 0 15px !default;
81
+
82
+ $form-group-label-in-input-cursor: text !default;
83
+ $form-group-label-in-input-top-position: 18px !default;
84
+ $form-group-label-in-input-left-position: 17px !default;
85
+ $form-group-label-in-input-z-index: -1 !default;
86
+
87
+ $label-tool-tip-cursor: help !default;
88
+ $label-tool-tip-bg-color: $color-charcoal5 !default;
89
+ $label-tool-tip-border-radius: 6px !default;
90
+ $label-tool-tip-color: $color-white !default;
91
+ $label-tool-tip-font-size: 14px !default;
92
+ $label-tool-tip-line-height: 1.2 !default;
93
+ $label-tool-tip-margin-left: 15px !default;
94
+ $label-tool-tip-padding: 15px !default;
95
+ $label-tool-tip-width: 280px !default;
96
+ $label-tool-tip-z-index: 10 !default;
97
+ $label-tool-tip-arrow-margin: -5px 0 0 -5px !default;
98
+ $label-tool-tip-arrow-size: 10px !default;
99
+
100
+ $form-group-error-message-color: $color-red5 !default;
101
+ $form-group-error-message-font-size: 14px !default;
102
+ $form-group-error-message-margin: -10px 0 10px 2px !default;
103
+ $form-group-error-message-text-align: left !default;
104
+
105
+ $form-group-city-state-color: $color-charcoal4 !default;
106
+ $form-group-city-state-font-size: 13px !default;
107
+ $form-group-city-state-font-weight: bold !default;
108
+ $form-group-city-state-margin: -10px 0 0 !default;
109
+ $form-group-city-state-padding: 0 2px 0 0 !default;
110
+ $form-group-city-state-text-align: right !default;
111
+
112
+ $form-group-note-color: #8a8a8a !default;
113
+ $form-group-note-font-size: 11px !default;
114
+ $form-group-note-font-style: italic !default;
115
+ $form-group-note-margin: -7px 0 0 !default;
116
+
117
+ @keyframes AnimateArrowUpDown {
118
+ 0%,
119
+ 20%,
120
+ 40% {
121
+ bottom: -26%;
122
+ opacity: 1;
123
+ }
124
+
125
+ 10%,
126
+ 30%,
127
+ 50% {
128
+ bottom: -10%;
129
+ opacity: 0;
130
+ }
131
+
132
+ 60% {
133
+ bottom: -26%;
134
+ opacity: 1;
135
+ }
136
+ }
137
+
138
+ .step {
139
+ flex: 0 0 100%;
140
+
141
+ &__supertitle {
142
+ background-color: $step-supertitle-bg-color;
143
+ color: $step-supertitle-color;
144
+ font-size: $step-supertitle-font-size-mobile;
145
+ font-weight: $step-supertitle-font-weight;
146
+ line-height: $step-supertitle-line-height;
147
+ padding: $step-supertitle-padding-mobile;
148
+ }
149
+
150
+ &__title-container {
151
+ background-color: $step-title-container-bg-color;
152
+ margin: $step-title-container-margin;
153
+ padding: $step-title-container-padding;
154
+ text-align: $step-title-container-text-align;
155
+ }
156
+
157
+ &__title {
158
+ color: $step-title-color;
159
+ font-size: $step-title-font-size-mobile;
160
+ font-weight: $step-title-font-weight;
161
+ line-height: $step-title-line-height;
162
+ margin: $step-title-margin;
163
+ }
164
+
165
+ &__subtitle {
166
+ color: $step-subtitle-color;
167
+ font-size: $step-subtitle-font-size-mobile;
168
+ font-weight: $step-subtitle-font-weight;
169
+ line-height: $step-subtitle-line-height;
170
+ margin: $step-subtitle-margin;
171
+ }
172
+
173
+ &__subtitle-list {
174
+ list-style: none;
175
+ margin: $step-subtitle-list-margin;
176
+ padding-left: 0;
177
+
178
+ li {
179
+ color: $step-subtitle-list-color;
180
+ font-size: $step-subtitle-list-font-size;
181
+ font-weight: $step-subtitle-list-font-weight;
182
+ line-height: $step-subtitle-list-line-height;
183
+
184
+ &:before {
185
+ content: $step-subtitle-list-icon;
186
+ display: inline-block;
187
+ font-family: modicons-fill;
188
+ font-style: normal;
189
+ font-variant: normal;
190
+ font-weight: 400;
191
+ line-height: 1;
192
+ margin: $step-subtitle-list-icon-margin;
193
+ text-transform: none;
194
+ }
195
+ }
196
+ }
197
+
198
+ &__overview {
199
+ border-bottom: $step-overview-border;
200
+ border-top: $step-overview-border;
201
+ color: $step-overview-color;
202
+ font-size: $step-overview-font-size;
203
+ letter-spacing: $step-overview-letter-spacing;
204
+ line-height: $step-overview-line-height;
205
+ margin: $step-overview-margin;
206
+ padding: $step-overview-padding;
207
+ text-align: $step-overview-text-align;
208
+
209
+ span {
210
+ padding: 0;
211
+ }
212
+ }
213
+
214
+ &__overview-number {
215
+ background: $step-overview-number-background;
216
+ border-radius: 100%;
217
+ color: $step-overview-number-color;
218
+ display: inline-block;
219
+ font-size: $step-overview-number-font-size;
220
+ font-weight: $step-overview-number-font-weight;
221
+ height: $step-overview-number-height;
222
+ line-height: $step-overview-number-line-height;
223
+ margin-right: $step-overview-number-margin-right;
224
+ text-align: center;
225
+ width: $step-overview-number-width;
226
+ }
227
+ }
228
+
229
+ .form-group {
230
+ margin: $form-group-margin;
231
+
232
+ &__label {
233
+ color: $form-group-label-color;
234
+ font-size: $form-group-label-font-size;
235
+ font-weight: $form-group-label-font-weight;
236
+ margin: $form-group-label-margin;
237
+ }
238
+
239
+ &__label-input {
240
+ color: $form-group-label-color;
241
+ cursor: $form-group-label-in-input-cursor;
242
+ font-size: $form-group-label-font-size;
243
+ font-weight: $form-group-label-font-weight;
244
+ left: $form-group-label-in-input-left-position;
245
+ position: absolute;
246
+ top: $form-group-label-in-input-top-position;
247
+ transition: color 200ms ease, font-size 200ms ease;
248
+ user-select: none;
249
+ z-index: $form-group-label-in-input-z-index;
250
+ }
251
+
252
+ &__error-message {
253
+ color: $form-group-error-message-color;
254
+ font-size: $form-group-error-message-font-size;
255
+ display: none;
256
+ margin: $form-group-error-message-margin;
257
+ text-align: $form-group-error-message-text-align;
258
+ }
259
+
260
+ &__city-state {
261
+ color: $form-group-city-state-color;
262
+ font-size: $form-group-city-state-font-size;
263
+ font-weight: $form-group-city-state-font-weight;
264
+ margin: $form-group-city-state-margin;
265
+ padding: $form-group-city-state-padding;
266
+ text-align: $form-group-city-state-text-align;
267
+ }
268
+
269
+ &__note {
270
+ color: $form-group-note-color;
271
+ display: inline-block;
272
+ font-size: $form-group-note-font-size;
273
+ font-style: $form-group-note-font-style;
274
+ margin: $form-group-note-margin;
275
+ }
276
+
277
+ &__label-tooltip {
278
+ cursor: $label-tool-tip-cursor;
279
+ position: relative;
280
+
281
+ &-text {
282
+ background: $label-tool-tip-bg-color;
283
+ border-radius: $label-tool-tip-border-radius;
284
+ color: $label-tool-tip-color;
285
+ display: none;
286
+ font-size: $label-tool-tip-font-size;
287
+ left: 100%;
288
+ line-height: $label-tool-tip-line-height;
289
+ margin-left: $label-tool-tip-margin-left;
290
+ padding: $label-tool-tip-padding;
291
+ position: absolute;
292
+ text-align: center;
293
+ top: 50%;
294
+ transform: translateY(-50%);
295
+ width: $label-tool-tip-width;
296
+ z-index: $label-tool-tip-z-index;
297
+
298
+ &::before {
299
+ background: $label-tool-tip-bg-color;
300
+ content: '';
301
+ display: block;
302
+ height: $label-tool-tip-arrow-size;
303
+ left: 0;
304
+ margin: $label-tool-tip-arrow-margin;
305
+ position: absolute;
306
+ top: 50%;
307
+ transform: rotate(-45deg);
308
+ width: $label-tool-tip-arrow-size;
309
+ }
310
+ }
311
+
312
+ &:hover {
313
+ .form-group__label-tooltip-text {
314
+ display: block;
315
+ }
316
+ }
317
+ }
318
+ }
319
+
320
+ .has-error {
321
+ .form-group__error-message {
322
+ display: block;
323
+ }
324
+
325
+ .form-group__label-input {
326
+ color: $form-group-error-message-color;
327
+ }
328
+
329
+ &:focus-within {
330
+ .form-group__label-input {
331
+ color: $form-group-error-message-color;
332
+ }
333
+ }
334
+ }
335
+
336
+ .swiper--dynamic-step-height {
337
+ .step {
338
+ .step-inner {
339
+ max-height: 0;
340
+ opacity: 0;
341
+ transition: opacity 250ms 250ms ease-in;
342
+ }
343
+
344
+ &--active .step-inner {
345
+ max-height: 999px;
346
+ opacity: 1;
347
+ }
348
+ }
349
+ }
350
+
351
+ .disableAutofill {
352
+ .step-inner {
353
+ visibility: hidden;
354
+ }
355
+
356
+ .step--active {
357
+ .step-inner {
358
+ visibility: visible;
359
+ }
360
+ }
361
+ }
362
+
363
+ @include breakpoint-sm {
364
+ .step {
365
+ &__supertitle {
366
+ font-size: $step-supertitle-font-size;
367
+ padding: $step-supertitle-padding;
368
+ }
369
+
370
+ &__title {
371
+ font-size: $step-title-font-size;
372
+ }
373
+
374
+ &__subtitle {
375
+ font-size: $step-subtitle-font-size;
376
+ }
377
+ }
378
+ }
379
+
380
+ @include breakpoint-md {
381
+ .form {
382
+ &--inverted {
383
+ .text-aligned-left {
384
+ .step__title,
385
+ .step__subtitle,
386
+ .step__supertitle {
387
+ text-align: $step-title-text-align-form-inprogress;
388
+ }
389
+ }
390
+ }
391
+ }
392
+ }
393
+
394
+ @include breakpoint-lg {
395
+ .step {
396
+ &__supertitle {
397
+ &--show-animated-arrow {
398
+ position: relative;
399
+
400
+ &:before {
401
+ animation: $step-supertitle-arrow-animation;
402
+ bottom: $step-supertitle-arrow-bottom;
403
+ color: $step-supertitle-arrow-color;
404
+ content: $step-supertitle-arrow-content;
405
+ font-size: $step-supertitle-arrow-font-size;
406
+ font-family: $step-supertitle-arrow-font-family;
407
+ left: $step-supertitle-arrow-left;
408
+ position: $step-supertitle-arrow-position;
409
+ transform: $step-supertitle-arrow-transform;
410
+ }
411
+
412
+ &:after {
413
+ background-color: $step-supertitle-arrow-background-color;
414
+ border-radius: $step-supertitle-arrow-border-radius;
415
+ bottom: $step-supertitle-arrow-container-bottom;
416
+ content: '';
417
+ height: $step-supertitle-arrow-container-height;
418
+ left: $step-supertitle-arrow-container-left;
419
+ position: $step-supertitle-arrow-container-position;
420
+ transform: $step-supertitle-arrow-container-transform;
421
+ width: $step-supertitle-arrow-container-width;
422
+ z-index: $step-supertitle-arrow-container-z-index;
423
+ }
424
+
425
+ + .step__title {
426
+ margin-top: $step-animated-arrow-title-margin-top;
427
+ }
428
+ }
429
+ }
430
+ }
431
+ }
@@ -0,0 +1,64 @@
1
+ {
2
+ "zip": {
3
+ "fieldType": "input",
4
+ "type": "tel",
5
+ "placeholder": "Enter Zip Code",
6
+ "required": "zip",
7
+ "maxLength": "5",
8
+ "errorMessage": "Please enter a valid zip code."
9
+ },
10
+ "firstName": {
11
+ "fieldType": "input",
12
+ "name": "firstName",
13
+ "min": "2",
14
+ "maxLength": "30",
15
+ "type": "text",
16
+ "placeholder": "First Name",
17
+ "required": "name",
18
+ "errorMessage": "Please enter a valid first name."
19
+ },
20
+ "lastName": {
21
+ "fieldType": "input",
22
+ "name": "lastName",
23
+ "min": "2",
24
+ "maxLength": "30",
25
+ "type": "text",
26
+ "placeholder": "Last Name",
27
+ "required": "name",
28
+ "errorMessage": "Please enter a valid last name."
29
+ },
30
+ "zip1": {
31
+ "fieldType": "input",
32
+ "name": "zip1",
33
+ "type": "tel",
34
+ "placeholder": "Enter Zip Code",
35
+ "required": "zip",
36
+ "maxLength": "5",
37
+ "errorMessage": "Please enter a valid zip code."
38
+ },
39
+ "homePhone": {
40
+ "fieldType": "input",
41
+ "name": "homePhone",
42
+ "type": "tel",
43
+ "placeholder": "Phone Number",
44
+ "required": "phone",
45
+ "maxLength": "14",
46
+ "errorMessage": "Please enter a valid phone number."
47
+ },
48
+ "email": {
49
+ "fieldType": "input",
50
+ "name": "email",
51
+ "type": "email",
52
+ "placeholder": "Email",
53
+ "required": "email",
54
+ "errorMessage": "Please enter a valid email address."
55
+ },
56
+ "address": {
57
+ "fieldType": "input",
58
+ "name": "address",
59
+ "type": "text",
60
+ "placeholder": "123 Your St.",
61
+ "required": "address",
62
+ "errorMessage": "Please enter a valid address."
63
+ }
64
+ }
@@ -0,0 +1,36 @@
1
+ {{#xif "this.stepFields.fieldType === 'radio'"}}
2
+ {{ fileInclude 'src/shared-components/radio-button/radio-button.html'
3
+ field = this.stepFields
4
+ }}
5
+ {{/xif}}
6
+
7
+ {{#xif "this.stepFields.fieldType === 'input'"}}
8
+ {{ fileInclude 'src/shared-components/input/input.html'
9
+ field = this.stepFields
10
+ }}
11
+ {{/xif}}
12
+ {{#xif "this.stepFields.fieldType === 'textarea'"}}
13
+ {{#if this.stepFields.labelInInput}}<div class="form-input-group form-input-group--includes-label">{{/if}}
14
+ {{ fileInclude 'src/shared-components/textarea/textarea.html'
15
+ field = this.stepFields
16
+ }}
17
+ {{#if this.stepFields.labelInInput}}<label class="form-group__label-input">{{{this.stepFields.labelInInput}}}</label></div>{{/if}}
18
+ {{/xif}}
19
+ {{#xif "this.stepFields.fieldType === 'select'"}}
20
+ {{ fileInclude 'src/shared-components/select/select.html'
21
+ field = this.stepFields
22
+ }}
23
+ {{/xif}}
24
+ {{#xif "this.stepFields.fieldType === 'checkbox'"}}
25
+ {{ fileInclude 'src/shared-components/checkbox/checkbox.html'
26
+ field = this.stepFields
27
+ }}
28
+ {{/xif}}
29
+ {{#xif "this.stepFields.fieldType === 'zip-control'"}}
30
+ {{ fileInclude 'src/shared-components/zip-control/zip-control.html'
31
+ field = this.stepFields
32
+ }}
33
+ {{/xif}}
34
+ {{#xif "this.stepFields.fieldType == 'utility-providers'"}}
35
+ <div class="utility-provider-wrapper"></div>
36
+ {{/xif}}