bhl-forms 0.7.3 → 0.7.4
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/dist/bhl-forms.es.js +551 -543
- package/dist/bhl-forms.iife.js +4 -4
- package/dist/bhl-forms.modern.es.js +649 -649
- package/dist/bhl-forms.modern.iife.js +7 -7
- package/dist/bhl-forms.modern.umd.js +7 -7
- package/dist/bhl-forms.umd.js +4 -4
- package/dist/forms/accidentsAndInjuries.es.js +1459 -1151
- package/dist/forms/accidentsAndInjuries.iife.js +1 -1
- package/dist/forms/accidentsAndInjuries.json +1 -1
- package/dist/forms/appraisals.es.js +138 -137
- package/dist/forms/appraisals.iife.js +1 -1
- package/dist/forms/business.es.js +1432 -1149
- package/dist/forms/business.iife.js +1 -1
- package/dist/forms/business.json +1 -1
- package/dist/forms/childAndFamily.es.js +1327 -1043
- package/dist/forms/childAndFamily.iife.js +1 -1
- package/dist/forms/childAndFamily.json +1 -1
- package/dist/forms/childAndFamilySingle.es.js +1526 -1378
- package/dist/forms/childAndFamilySingle.iife.js +1 -1
- package/dist/forms/childAndFamilySingle.json +1 -1
- package/dist/forms/civilLawsuit.es.js +1998 -1807
- package/dist/forms/civilLawsuit.iife.js +1 -1
- package/dist/forms/civilLawsuit.json +1 -1
- package/dist/forms/coins.es.js +138 -137
- package/dist/forms/coins.iife.js +1 -1
- package/dist/forms/contracts.es.js +1347 -1050
- package/dist/forms/contracts.iife.js +1 -1
- package/dist/forms/contracts.json +1 -1
- package/dist/forms/criminal.es.js +1830 -1711
- package/dist/forms/criminal.iife.js +1 -1
- package/dist/forms/criminal.json +1 -1
- package/dist/forms/divorce.es.js +1539 -1385
- package/dist/forms/divorce.iife.js +1 -1
- package/dist/forms/divorce.json +1 -1
- package/dist/forms/employmentAndWorkplace.es.js +1831 -1678
- package/dist/forms/employmentAndWorkplace.iife.js +1 -1
- package/dist/forms/employmentAndWorkplace.json +1 -1
- package/dist/forms/generalHomeImprovement.es.js +1361 -1971
- package/dist/forms/generalHomeImprovement.iife.js +1 -1
- package/dist/forms/generalHomeImprovement.json +1 -1
- package/dist/forms/generalHomeImprovementThankYou.es.js +1361 -1971
- package/dist/forms/generalHomeImprovementThankYou.iife.js +1 -1
- package/dist/forms/generalHomeImprovementThankYou.json +1 -1
- package/dist/forms/generalLegal.es.js +3035 -2535
- package/dist/forms/generalLegal.iife.js +1 -1
- package/dist/forms/generalLegal.json +1 -1
- package/dist/forms/generalLegalJustAnswer.es.js +3214 -2872
- package/dist/forms/generalLegalJustAnswer.iife.js +1 -1
- package/dist/forms/generalLegalJustAnswer.json +1 -1
- package/dist/forms/generalLegalPopUnder.es.js +3035 -2535
- package/dist/forms/generalLegalPopUnder.iife.js +1 -1
- package/dist/forms/generalLegalPopUnder.json +1 -1
- package/dist/forms/generalLegalPopUnderSingle.es.js +3214 -2872
- package/dist/forms/generalLegalPopUnderSingle.iife.js +1 -1
- package/dist/forms/generalLegalPopUnderSingle.json +1 -1
- package/dist/forms/generalLegalSingle.es.js +3214 -2872
- package/dist/forms/generalLegalSingle.iife.js +1 -1
- package/dist/forms/generalLegalSingle.json +1 -1
- package/dist/forms/generalLegalThankYou.es.js +2823 -2303
- package/dist/forms/generalLegalThankYou.iife.js +1 -1
- package/dist/forms/generalLegalThankYou.json +1 -1
- package/dist/forms/generalLegalThankYouConsultation.es.js +3214 -2872
- package/dist/forms/generalLegalThankYouConsultation.iife.js +1 -1
- package/dist/forms/generalLegalThankYouConsultation.json +1 -1
- package/dist/forms/harassmentAndDiscrimination.es.js +1423 -1120
- package/dist/forms/harassmentAndDiscrimination.iife.js +1 -1
- package/dist/forms/harassmentAndDiscrimination.json +1 -1
- package/dist/forms/landlordTenant.es.js +1393 -1106
- package/dist/forms/landlordTenant.iife.js +1 -1
- package/dist/forms/landlordTenant.json +1 -1
- package/dist/forms/malpractice.es.js +1529 -1223
- package/dist/forms/malpractice.iife.js +1 -1
- package/dist/forms/malpractice.json +1 -1
- package/dist/forms/mechanics.es.js +701 -530
- package/dist/forms/mechanics.iife.js +1 -1
- package/dist/forms/mechanics.json +1 -1
- package/dist/forms/patentsAndIP.es.js +1828 -1652
- package/dist/forms/patentsAndIP.iife.js +1 -1
- package/dist/forms/patentsAndIP.json +1 -1
- package/dist/forms/realEstate.es.js +2850 -2405
- package/dist/forms/realEstate.iife.js +1 -1
- package/dist/forms/realEstate.json +1 -1
- package/dist/forms/repossession.es.js +1566 -1251
- package/dist/forms/repossession.iife.js +1 -1
- package/dist/forms/repossession.json +1 -1
- package/dist/forms/ssdi.es.js +635 -520
- package/dist/forms/ssdi.iife.js +1 -1
- package/dist/forms/ssdi.json +1 -1
- package/dist/forms/testForm.es.js +409 -371
- package/dist/forms/testForm.iife.js +1 -1
- package/dist/forms/testForm.json +1 -1
- package/dist/forms/testRedirects.es.js +420 -316
- package/dist/forms/testRedirects.iife.js +1 -1
- package/dist/forms/testRedirects.json +1 -1
- package/dist/forms/vets.es.js +138 -137
- package/dist/forms/vets.iife.js +1 -1
- package/dist/forms/willsAndTrusts.es.js +1426 -1112
- package/dist/forms/willsAndTrusts.iife.js +1 -1
- package/dist/forms/willsAndTrusts.json +1 -1
- package/dist/main.css +1 -1
- package/package.json +1 -1
|
@@ -6,39 +6,46 @@ function HomeImprovementRedirectUrl() {
|
|
|
6
6
|
return 'https://listings.zipcontractor.com/api/v1/redirect?zone_id=4&vertical=HomeImprovement&category=${properties.Category}&zip_code=${properties.Zip}&sub_id=${properties.vid}'
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
const DEFAULT_COMMENTS_LABEL =
|
|
10
|
-
const DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC =
|
|
11
|
-
|
|
12
|
-
const
|
|
9
|
+
const DEFAULT_COMMENTS_LABEL = "Please briefly describe your issue in a few words:";
|
|
10
|
+
const DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC =
|
|
11
|
+
'$getKey($meta, "commentsPlaceholders." + $get(Category).value, $meta.defaultCommentsPlaceholder)';
|
|
12
|
+
const DEFAULT_FINAL_HEADLINE_DYNAMIC_LEGAL =
|
|
13
|
+
'$getKey($meta, "finalHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalHeadline)';
|
|
14
|
+
const DEFAULT_FINAL_SUBHEADLINE_DYNAMIC_LEGAL =
|
|
15
|
+
'$getKey($meta, "finalSubHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalSubHeadline)';
|
|
13
16
|
|
|
14
17
|
const DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC_HOME_IMPROVEMENT = DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC;
|
|
15
|
-
const DEFAULT_FINAL_HEADLINE_HOME_IMPROVEMENT =
|
|
16
|
-
const DEFAULT_FINAL_SUBHEADLINE_HOME_IMPROVEMENT =
|
|
17
|
-
const TCPA_LANGUAGE_HOME_IMPROVEMENT =
|
|
18
|
+
const DEFAULT_FINAL_HEADLINE_HOME_IMPROVEMENT = "We Found Contractors Near You";
|
|
19
|
+
const DEFAULT_FINAL_SUBHEADLINE_HOME_IMPROVEMENT = "Compare quotes and save! Please verify your contact info:";
|
|
20
|
+
const TCPA_LANGUAGE_HOME_IMPROVEMENT =
|
|
21
|
+
'By checking this box, I a) agree to the Terms of Use, and b) consent to be contacted by up to four <a href="/providers" target="_blank" class="t-text-blue-600 t-underline">contractors and partners</a> of this website using live, autodialed, pre-recorded, or artificial voice calls, as well as text messages. Your consent is not required as a condition of purchasing any goods or services.';
|
|
18
22
|
|
|
19
23
|
const radio = (updates) => {
|
|
20
24
|
if (updates.name && !updates.id) {
|
|
21
25
|
updates.id = updates.name;
|
|
22
26
|
}
|
|
23
|
-
return merge(
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
return merge(
|
|
28
|
+
{
|
|
29
|
+
$formkit: "radio",
|
|
30
|
+
validation: "required",
|
|
31
|
+
validationMessages: {
|
|
32
|
+
required: "Field is required",
|
|
33
|
+
},
|
|
34
|
+
optionsClass: "t-pt-3 t-pl-1",
|
|
35
|
+
legendClass: "required",
|
|
28
36
|
},
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}, updates)
|
|
37
|
+
updates
|
|
38
|
+
)
|
|
32
39
|
};
|
|
33
40
|
|
|
34
41
|
const verticalRadio = (updates) => {
|
|
35
|
-
updates.legendClass =
|
|
36
|
-
updates.fieldsetClass =
|
|
37
|
-
updates.optionsClass =
|
|
38
|
-
updates.innerClass =
|
|
39
|
-
updates.wrapperClass =
|
|
40
|
-
updates.optionClass =
|
|
41
|
-
updates.messagesClass =
|
|
42
|
+
updates.legendClass = "required";
|
|
43
|
+
updates.fieldsetClass = "$reset t-flex t-justify-center";
|
|
44
|
+
updates.optionsClass = "t-pl-2 t-pt-3";
|
|
45
|
+
updates.innerClass = "t-items-center";
|
|
46
|
+
updates.wrapperClass = "$reset t-flex t-cursor-pointer t-mb-3";
|
|
47
|
+
updates.optionClass = "t-pl-4 md:t-pl-12";
|
|
48
|
+
updates.messagesClass = "t-flex t-justify-center";
|
|
42
49
|
return radio(updates)
|
|
43
50
|
};
|
|
44
51
|
|
|
@@ -46,24 +53,27 @@ const select = (updates) => {
|
|
|
46
53
|
if (updates.name && !updates.id) {
|
|
47
54
|
updates.id = updates.name;
|
|
48
55
|
}
|
|
49
|
-
return merge(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
56
|
+
return merge(
|
|
57
|
+
{
|
|
58
|
+
$formkit: "select",
|
|
59
|
+
placeholder: "Please Select",
|
|
60
|
+
validation: "required",
|
|
61
|
+
validationMessages: {
|
|
62
|
+
required: "Field is required",
|
|
63
|
+
},
|
|
64
|
+
inputClass: "t-bg-white",
|
|
65
|
+
labelClass: "required",
|
|
55
66
|
},
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}, updates)
|
|
67
|
+
updates
|
|
68
|
+
)
|
|
59
69
|
};
|
|
60
70
|
|
|
61
71
|
const verticalSelect = (updates) => {
|
|
62
|
-
updates.labelClass =
|
|
63
|
-
updates.wrapperClass =
|
|
64
|
-
updates.messagesClass =
|
|
65
|
-
updates.inputClass =
|
|
66
|
-
updates.helpClass =
|
|
72
|
+
updates.labelClass = "required";
|
|
73
|
+
updates.wrapperClass = "t-flex t-justify-center";
|
|
74
|
+
updates.messagesClass = "t-flex t-justify-center";
|
|
75
|
+
updates.inputClass = "t-min-w-[150px] t-bg-white";
|
|
76
|
+
updates.helpClass = "t-mt-2.5 t-text-center";
|
|
67
77
|
return select(updates)
|
|
68
78
|
};
|
|
69
79
|
|
|
@@ -71,26 +81,29 @@ const text = (updates) => {
|
|
|
71
81
|
if (updates.name && !updates.id) {
|
|
72
82
|
updates.id = updates.name;
|
|
73
83
|
}
|
|
74
|
-
return merge(
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
84
|
+
return merge(
|
|
85
|
+
{
|
|
86
|
+
$formkit: "text",
|
|
87
|
+
validation: "required",
|
|
88
|
+
validationMessages: {
|
|
89
|
+
required: "Field is required",
|
|
90
|
+
},
|
|
91
|
+
labelClass: "required",
|
|
79
92
|
},
|
|
80
|
-
|
|
81
|
-
|
|
93
|
+
updates
|
|
94
|
+
)
|
|
82
95
|
};
|
|
83
96
|
|
|
84
97
|
const sbsText = (updates) => {
|
|
85
|
-
updates.wrapperClass =
|
|
98
|
+
updates.wrapperClass = "side-by-side t-items-center";
|
|
86
99
|
return text(updates)
|
|
87
100
|
};
|
|
88
101
|
|
|
89
102
|
const verticalText = (updates) => {
|
|
90
|
-
updates.wrapperClass =
|
|
91
|
-
updates.messagesClass =
|
|
92
|
-
updates.inputClass =
|
|
93
|
-
updates.helpClass =
|
|
103
|
+
updates.wrapperClass = "t-flex t-justify-center";
|
|
104
|
+
updates.messagesClass = "t-flex t-justify-center";
|
|
105
|
+
updates.inputClass = "t-text-center";
|
|
106
|
+
updates.helpClass = "t-mt-2.5 !t-text-sm t-text-center";
|
|
94
107
|
return text(updates)
|
|
95
108
|
};
|
|
96
109
|
|
|
@@ -98,671 +111,586 @@ const textArea = (updates) => {
|
|
|
98
111
|
if (updates.name && !updates.id) {
|
|
99
112
|
updates.id = updates.name;
|
|
100
113
|
}
|
|
101
|
-
return merge(
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
114
|
+
return merge(
|
|
115
|
+
{
|
|
116
|
+
$formkit: "textarea",
|
|
117
|
+
rows: 5,
|
|
118
|
+
maxlength: 500,
|
|
119
|
+
validation: "required",
|
|
120
|
+
validationMessages: {
|
|
121
|
+
required: "Field is required",
|
|
122
|
+
},
|
|
123
|
+
innerClass: "t-max-w-xl",
|
|
124
|
+
labelClass: "required",
|
|
108
125
|
},
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}, updates)
|
|
126
|
+
updates
|
|
127
|
+
)
|
|
112
128
|
};
|
|
113
129
|
|
|
114
|
-
|
|
115
130
|
// ------ Common Inputs
|
|
116
131
|
|
|
117
|
-
|
|
118
132
|
const address$1 = (scope, vertical, updates = {}) => {
|
|
119
133
|
const func = vertical ? verticalText : sbsText;
|
|
120
|
-
const label = vertical ?
|
|
134
|
+
const label = vertical ? updates.label : "Street Address:";
|
|
121
135
|
return func({
|
|
122
136
|
label,
|
|
123
|
-
placeholder:
|
|
124
|
-
name: scope ? scope +
|
|
137
|
+
placeholder: "10 Example St",
|
|
138
|
+
name: scope ? scope + ":" + "Address" : "Address",
|
|
125
139
|
autocomplete: "street-address",
|
|
126
|
-
|
|
140
|
+
"data-tf-sensitive": "false",
|
|
127
141
|
minlength: 5,
|
|
128
142
|
maxlength: 100,
|
|
129
143
|
validationMessages: {
|
|
130
|
-
minlength:
|
|
131
|
-
required:
|
|
144
|
+
minlength: "Invalid Address",
|
|
145
|
+
required: "Address is required",
|
|
132
146
|
},
|
|
133
|
-
...updates
|
|
147
|
+
...updates,
|
|
134
148
|
})
|
|
135
149
|
};
|
|
136
150
|
|
|
137
|
-
const email = (scope) =>
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
autocomplete: "given-name",
|
|
156
|
-
validationMessages: {
|
|
157
|
-
required: 'First Name is required'
|
|
158
|
-
}
|
|
159
|
-
});
|
|
151
|
+
const email = (scope, vertical, updates = {}) => {
|
|
152
|
+
const func = vertical ? verticalText : sbsText;
|
|
153
|
+
const label = vertical ? updates.label : "Email Address:";
|
|
154
|
+
return func({
|
|
155
|
+
$formkit: "email",
|
|
156
|
+
name: scope ? scope + ":" + "Email" : "Email",
|
|
157
|
+
label,
|
|
158
|
+
placeholder: "email@domain.com",
|
|
159
|
+
autocomplete: "email",
|
|
160
|
+
"data-tf-sensitive": "false",
|
|
161
|
+
validation: "required|email",
|
|
162
|
+
validationMessages: {
|
|
163
|
+
required: "Email is required",
|
|
164
|
+
email: "Invalid Email",
|
|
165
|
+
},
|
|
166
|
+
...updates,
|
|
167
|
+
})
|
|
168
|
+
};
|
|
160
169
|
|
|
161
|
-
const
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
+
const firstName = (scope, vertical, updates = {}) => {
|
|
171
|
+
const func = vertical ? verticalText : sbsText;
|
|
172
|
+
const label = vertical ? updates.label : "First Name:";
|
|
173
|
+
return func({
|
|
174
|
+
label,
|
|
175
|
+
placeholder: "First",
|
|
176
|
+
name: scope ? scope + ":" + "First_Name" : "First_Name",
|
|
177
|
+
autocomplete: "given-name",
|
|
178
|
+
validationMessages: {
|
|
179
|
+
required: "First Name is required",
|
|
180
|
+
},
|
|
181
|
+
...updates,
|
|
182
|
+
})
|
|
183
|
+
};
|
|
170
184
|
|
|
171
|
-
const
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
},
|
|
186
|
-
helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]"
|
|
187
|
-
});
|
|
185
|
+
const lastName = (scope, vertical, updates = {}) => {
|
|
186
|
+
const func = vertical ? verticalText : sbsText;
|
|
187
|
+
const label = vertical ? updates.label : "Last Name:";
|
|
188
|
+
return func({
|
|
189
|
+
label,
|
|
190
|
+
placeholder: "Last",
|
|
191
|
+
name: scope ? scope + ":" + "Last_Name" : "Last_Name",
|
|
192
|
+
autocomplete: "family-name",
|
|
193
|
+
validationMessages: {
|
|
194
|
+
required: "Last Name is required",
|
|
195
|
+
},
|
|
196
|
+
...updates,
|
|
197
|
+
})
|
|
198
|
+
};
|
|
188
199
|
|
|
200
|
+
const phone = (scope, vertical, updates = {}) => {
|
|
201
|
+
const func = vertical ? verticalText : sbsText;
|
|
202
|
+
const label = vertical ? updates.label : "Phone Number:";
|
|
203
|
+
return func({
|
|
204
|
+
$formkit: "tel",
|
|
205
|
+
name: scope ? scope + ":" + "Primary_Phone" : "Primary_Phone",
|
|
206
|
+
label,
|
|
207
|
+
placeholder: "###-###-####",
|
|
208
|
+
maxlength: 12,
|
|
209
|
+
help: "10-digit phone number, hyphens optional",
|
|
210
|
+
autocomplete: "tel-national",
|
|
211
|
+
"data-tf-sensitive": "false",
|
|
212
|
+
validation: "required|matches:/^[0-9]{3}-?[0-9]{3}-?[0-9]{4}$/|valid_phone",
|
|
213
|
+
validationMessages: {
|
|
214
|
+
required: "Phone Number is required",
|
|
215
|
+
matches: "Invalid Phone Format, use ###-###-####",
|
|
216
|
+
valid_phone: "Invalid Phone Number",
|
|
217
|
+
},
|
|
218
|
+
helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]",
|
|
219
|
+
...updates,
|
|
220
|
+
})
|
|
221
|
+
};
|
|
189
222
|
|
|
190
223
|
const zipcode$1 = (scope, vertical, updates = {}) => {
|
|
191
224
|
const func = vertical ? verticalText : sbsText;
|
|
192
|
-
const label = vertical ?
|
|
193
|
-
const help = vertical ?
|
|
225
|
+
const label = vertical ? updates.label : "Zip Code:";
|
|
226
|
+
const help = vertical ? updates.help ?? "We try to match you with local help" : null;
|
|
194
227
|
return func({
|
|
195
228
|
label,
|
|
196
229
|
help,
|
|
197
|
-
placeholder:
|
|
198
|
-
name: scope ? scope +
|
|
230
|
+
placeholder: "#####",
|
|
231
|
+
name: scope ? scope + ":" + "Zip" : "Zip",
|
|
199
232
|
maxlength: 5,
|
|
200
233
|
inputmode: "numeric",
|
|
201
|
-
autocomplete:
|
|
202
|
-
validation:
|
|
234
|
+
autocomplete: "postal-code",
|
|
235
|
+
validation: "required|matches:/^[0-9]{5}$/",
|
|
203
236
|
validationMessages: {
|
|
204
|
-
required:
|
|
205
|
-
matches:
|
|
237
|
+
required: "Zip Code is required",
|
|
238
|
+
matches: "Invalid Zip Code",
|
|
206
239
|
},
|
|
207
|
-
...updates
|
|
240
|
+
...updates,
|
|
208
241
|
})
|
|
209
242
|
};
|
|
210
243
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
244
|
+
// TODO: vertical not supported yet
|
|
245
|
+
const comments = (scope, vertical, updates) =>
|
|
246
|
+
textArea(
|
|
247
|
+
merge(
|
|
248
|
+
{
|
|
249
|
+
name: scope ? scope + ":" + "Comments" : "Comments",
|
|
250
|
+
label: "Please briefly describe your situation in a few words:",
|
|
251
|
+
placeholder:
|
|
252
|
+
'For Example: "I would like help with child support payments" or "I need help with visitation rights"',
|
|
253
|
+
},
|
|
254
|
+
updates
|
|
255
|
+
)
|
|
256
|
+
);
|
|
218
257
|
|
|
219
258
|
const TCPAConsent = (scope) => ({
|
|
220
|
-
$formkit:
|
|
221
|
-
label:
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
259
|
+
$formkit: "checkbox",
|
|
260
|
+
label: "$meta.tcpaLanguage",
|
|
261
|
+
// Necessary to get links to work in the tcpa language
|
|
262
|
+
__raw__sectionsSchema: {
|
|
263
|
+
label: { attrs: { innerHTML: "$label" } },
|
|
264
|
+
},
|
|
265
|
+
name: scope ? scope + ":" + "TCPA_Opt_In" : "TCPA_Opt_In",
|
|
266
|
+
"data-tf-sensitive": "false",
|
|
267
|
+
validation: "required|accepted",
|
|
225
268
|
validationMessages: {
|
|
226
|
-
required:
|
|
227
|
-
accepted:
|
|
269
|
+
required: "Consent is required",
|
|
270
|
+
accepted: "Consent is required",
|
|
228
271
|
},
|
|
229
272
|
classes: {
|
|
230
|
-
label: "t-text-xs t-text-slate-500 t-font-normal"
|
|
231
|
-
}
|
|
273
|
+
label: "t-text-xs t-text-slate-500 t-font-normal",
|
|
274
|
+
},
|
|
232
275
|
});
|
|
233
276
|
|
|
234
277
|
const HomeImprovementCategoryOptions = [
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
278
|
+
"Additions",
|
|
279
|
+
"Appliances",
|
|
280
|
+
"Appraisals",
|
|
281
|
+
"Cabinets",
|
|
282
|
+
"Carpentry",
|
|
283
|
+
"Carpets",
|
|
284
|
+
"Cleaning",
|
|
285
|
+
"Countertops",
|
|
286
|
+
"Decks and Porches",
|
|
287
|
+
"Demolition",
|
|
288
|
+
"Doors",
|
|
289
|
+
"Driveways",
|
|
290
|
+
"Drywall and Plaster",
|
|
291
|
+
"Electrical",
|
|
292
|
+
"Fencing",
|
|
293
|
+
"Flooring",
|
|
294
|
+
"Foundations",
|
|
295
|
+
"Garage Doors",
|
|
296
|
+
"General Contractors",
|
|
297
|
+
"Gutters",
|
|
298
|
+
"Handyman",
|
|
299
|
+
"Holiday Decorators",
|
|
300
|
+
"Smart Home",
|
|
301
|
+
"Home Builders",
|
|
302
|
+
"Home Inspection",
|
|
303
|
+
"Home Organization",
|
|
304
|
+
"Home Security",
|
|
305
|
+
"Home Staging",
|
|
306
|
+
"Home Theater",
|
|
307
|
+
"Home Warranties",
|
|
308
|
+
"Hot Tubs",
|
|
309
|
+
"Heating and Cooling",
|
|
310
|
+
"Insulation",
|
|
311
|
+
"Junk Removal",
|
|
312
|
+
"Landscaping",
|
|
313
|
+
"Locksmiths",
|
|
314
|
+
"Masonry and Concrete",
|
|
315
|
+
"Restoration",
|
|
273
316
|
// 'Moving',
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
317
|
+
"Painting",
|
|
318
|
+
"Pest Control",
|
|
319
|
+
"Pools",
|
|
320
|
+
"Plumbing",
|
|
321
|
+
"Pressure Washing",
|
|
322
|
+
"Remodeling",
|
|
323
|
+
"Roofing",
|
|
324
|
+
"Sheds",
|
|
325
|
+
"Siding",
|
|
326
|
+
"Solar",
|
|
327
|
+
"Tiling",
|
|
328
|
+
"Walk-in Tubs",
|
|
329
|
+
"Waterproofing",
|
|
330
|
+
"Window Cleaning",
|
|
331
|
+
"Windows",
|
|
289
332
|
];
|
|
290
333
|
|
|
291
|
-
const homeImprovementCategory$1 = (updates) =>
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
'1-6 Months',
|
|
303
|
-
'More than 6 Months'
|
|
304
|
-
]
|
|
305
|
-
});
|
|
306
|
-
|
|
307
|
-
const ownHome$1 = (scope) => verticalRadio({
|
|
308
|
-
name: scope ? scope + ':' + 'Own_Home' : 'Own_Home',
|
|
309
|
-
// label: 'Do you own the home?',
|
|
310
|
-
options: [
|
|
311
|
-
'Yes',
|
|
312
|
-
'No',
|
|
313
|
-
'No but authorized'
|
|
314
|
-
]
|
|
315
|
-
});
|
|
316
|
-
|
|
317
|
-
const additionsSubType$1 = (scope) => verticalSelect({
|
|
318
|
-
name: scope ? scope + ':' + 'Additions_Subtype' : 'Additions_Subtype',
|
|
319
|
-
// label: 'What type of addition?',
|
|
320
|
-
options: [
|
|
321
|
-
'Garage',
|
|
322
|
-
'In-Law Suite',
|
|
323
|
-
'Additional Rooms',
|
|
324
|
-
'Additional Stories',
|
|
325
|
-
'Bump-out',
|
|
326
|
-
'Sunroom',
|
|
327
|
-
'Accessory Dwelling Unit',
|
|
328
|
-
'Basement Remodeling',
|
|
329
|
-
'Attic Remodeling',
|
|
330
|
-
'Not Sure or Other'
|
|
331
|
-
]
|
|
332
|
-
});
|
|
333
|
-
|
|
334
|
-
const constructionAreaSize$1 = (scope) => verticalRadio({
|
|
335
|
-
name: scope ? scope + ':' + 'Construction_Area_Size' : 'Construction_Area_Size',
|
|
336
|
-
// label: 'What is the size of the construction area?',
|
|
337
|
-
options: [
|
|
338
|
-
'Less than 1000 square feet',
|
|
339
|
-
'1000 to 2000 square feet',
|
|
340
|
-
'More than 2000 square feet'
|
|
341
|
-
]
|
|
342
|
-
});
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
const homeImprovementWorkType$1 = (scope) => verticalRadio({
|
|
346
|
-
name: scope ? scope + ':' + 'Work_Type' : 'Work_Type',
|
|
347
|
-
// label: 'What type of work do you need?',
|
|
348
|
-
options: [
|
|
349
|
-
'Install or Replace',
|
|
350
|
-
'Repair',
|
|
351
|
-
'Not Sure or Other'
|
|
352
|
-
]
|
|
353
|
-
});
|
|
354
|
-
|
|
355
|
-
const applianceType$1 = (scope) => verticalSelect({
|
|
356
|
-
name: scope ? scope + ':' + 'Appliance_Type' : 'Appliance_Type',
|
|
357
|
-
// label: 'What type of appliance?',
|
|
358
|
-
options: [
|
|
359
|
-
'Cooktop',
|
|
360
|
-
'Dishwasher',
|
|
361
|
-
'Dryer',
|
|
362
|
-
'Freezer',
|
|
363
|
-
'Garbage Disposal',
|
|
364
|
-
'Ice Maker',
|
|
365
|
-
'Microwave',
|
|
366
|
-
'Range',
|
|
367
|
-
'Refrigerator',
|
|
368
|
-
'Stove',
|
|
369
|
-
'Trash Compactor',
|
|
370
|
-
'Oven',
|
|
371
|
-
'Vacuum',
|
|
372
|
-
'Washer Machine',
|
|
373
|
-
'Not Sure or Other',
|
|
374
|
-
]
|
|
375
|
-
});
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
const cabinetWorkType$1 = (scope) => verticalRadio({
|
|
379
|
-
name: scope ? scope + ':' + 'Cabinet_Work_Type' : 'Cabinet_Work_Type',
|
|
380
|
-
// label: 'What type of work do you need?',
|
|
381
|
-
options: [
|
|
382
|
-
'Install',
|
|
383
|
-
'Refinish',
|
|
384
|
-
'Reface',
|
|
385
|
-
'Repair',
|
|
386
|
-
'Not Sure or Other'
|
|
387
|
-
]
|
|
388
|
-
});
|
|
389
|
-
|
|
390
|
-
const carpentrySubtype$1 = (scope) => verticalSelect({
|
|
391
|
-
name: scope ? scope + ':' + 'Carpentry_Subtype' : 'Carpentry_Subtype',
|
|
392
|
-
// label: 'What type of carpentry work?',
|
|
393
|
-
options: [
|
|
394
|
-
'Closets',
|
|
395
|
-
'Custom Furniture',
|
|
396
|
-
'Built-ins',
|
|
397
|
-
'Framing',
|
|
398
|
-
'Interior Trim',
|
|
399
|
-
'Exterior Trim',
|
|
400
|
-
'Windows',
|
|
401
|
-
'Stairways and Railings',
|
|
402
|
-
'Gazebo or Pergola',
|
|
403
|
-
'Multiple Jobs',
|
|
404
|
-
'Not Sure or Other'
|
|
405
|
-
]
|
|
406
|
-
});
|
|
407
|
-
|
|
408
|
-
const carpetWorkType$1 = (scope) => verticalRadio({
|
|
409
|
-
name: scope ? scope + ':' + 'Carpet_Work_Type' : 'Carpet_Work_Type',
|
|
410
|
-
// label: 'What type of work do you need?',
|
|
411
|
-
options: [
|
|
412
|
-
'Install or Replace',
|
|
413
|
-
'Repair',
|
|
414
|
-
'Cleaning',
|
|
415
|
-
'Not Sure or Other'
|
|
416
|
-
]
|
|
417
|
-
});
|
|
418
|
-
|
|
419
|
-
const cleaningSubtype$1 = (scope) => verticalSelect({
|
|
420
|
-
name: scope ? scope + ':' + 'Cleaning_Subtype' : 'Cleaning_Subtype',
|
|
421
|
-
// label: 'What type of cleaning?',
|
|
422
|
-
options: [
|
|
423
|
-
'Whole Home',
|
|
424
|
-
'Office',
|
|
425
|
-
'Carpets',
|
|
426
|
-
'Windows',
|
|
427
|
-
'Air Ducts or Vents',
|
|
428
|
-
'Chimney',
|
|
429
|
-
'Deck',
|
|
430
|
-
'Tile or Grout',
|
|
431
|
-
'Garage',
|
|
432
|
-
'Shed',
|
|
433
|
-
'Gutters',
|
|
434
|
-
'Pool',
|
|
435
|
-
'Junk Removal',
|
|
436
|
-
'Not Sure or Other'
|
|
437
|
-
]
|
|
438
|
-
});
|
|
439
|
-
|
|
440
|
-
const countertopMaterial$1 = (scope) => verticalSelect({
|
|
441
|
-
name: scope ? scope + ':' + 'Countertop_Material' : 'Countertop_Material',
|
|
442
|
-
// label: 'What type of countertop?',
|
|
443
|
-
options: [
|
|
444
|
-
'Concrete',
|
|
445
|
-
'Granite',
|
|
446
|
-
'Laminate',
|
|
447
|
-
'Marble',
|
|
448
|
-
'Quartz',
|
|
449
|
-
'Stainless Steel',
|
|
450
|
-
'Wood',
|
|
451
|
-
'Not Sure or Other'
|
|
452
|
-
]
|
|
453
|
-
});
|
|
454
|
-
|
|
455
|
-
const deckWorkType$1 = (scope) => verticalRadio({
|
|
456
|
-
name: scope ? scope + ':' + 'Deck_Work_Type' : 'Deck_Work_Type',
|
|
457
|
-
// label: 'What type of work do you need?',
|
|
458
|
-
options: [
|
|
459
|
-
'Paint or Stain',
|
|
460
|
-
'Install or Replace',
|
|
461
|
-
'Repair',
|
|
462
|
-
'Not Sure or Other'
|
|
463
|
-
]
|
|
464
|
-
});
|
|
465
|
-
|
|
466
|
-
const demolitionSubtype$1 = (scope) => verticalRadio({
|
|
467
|
-
name: scope ? scope + ':' + 'Demolition_Subtype' : 'Demolition_Subtype',
|
|
468
|
-
// label: 'What type of demolition?',
|
|
469
|
-
options: [
|
|
470
|
-
'Whole Structure',
|
|
471
|
-
'Partial Home',
|
|
472
|
-
'Shed',
|
|
473
|
-
'Not Sure or Other'
|
|
474
|
-
]
|
|
475
|
-
});
|
|
476
|
-
|
|
477
|
-
const doorSubtype$1 = (scope) => verticalRadio({
|
|
478
|
-
name: scope ? scope + ':' + 'Door_Subtype' : 'Door_Subtype',
|
|
479
|
-
// label: 'What type of door?',
|
|
480
|
-
options: [
|
|
481
|
-
'Interior',
|
|
482
|
-
'Exterior',
|
|
483
|
-
'Garage',
|
|
484
|
-
'Sliding',
|
|
485
|
-
'Storm',
|
|
486
|
-
'Not Sure or Other'
|
|
487
|
-
]
|
|
488
|
-
});
|
|
489
|
-
|
|
490
|
-
const drivewayWorkType$1 = (scope) => verticalRadio({
|
|
491
|
-
name: scope ? scope + ':' + 'Driveway_Work_Type' : 'Driveway_Work_Type',
|
|
492
|
-
// label: 'What type of work do you need?',
|
|
493
|
-
options: [
|
|
494
|
-
'Install or Replace',
|
|
495
|
-
'Repair',
|
|
496
|
-
'Sealing',
|
|
497
|
-
'Not Sure or Other'
|
|
498
|
-
]
|
|
499
|
-
});
|
|
500
|
-
|
|
501
|
-
const drivewayMaterial$1 = (scope) => verticalRadio({
|
|
502
|
-
name: scope ? scope + ':' + 'Driveway_Material' : 'Driveway_Material',
|
|
503
|
-
// label: 'What type of driveway material?',
|
|
504
|
-
options: [
|
|
505
|
-
'Asphalt',
|
|
506
|
-
'Brick',
|
|
507
|
-
'Cobblestone',
|
|
508
|
-
'Pebble',
|
|
509
|
-
'Concrete',
|
|
510
|
-
'Pavers',
|
|
511
|
-
'Not Sure or Other'
|
|
512
|
-
]
|
|
513
|
-
});
|
|
514
|
-
|
|
515
|
-
const wallSurfaceType$1 = (scope) => verticalRadio({
|
|
516
|
-
name: scope ? scope + ':' + 'Wall_Surface_Type' : 'Wall_Surface_Type',
|
|
517
|
-
// label: 'What type of surface?',
|
|
518
|
-
options: [
|
|
519
|
-
'Drywall',
|
|
520
|
-
'Plaster',
|
|
521
|
-
'Stucco',
|
|
522
|
-
'Not Sure or Other'
|
|
523
|
-
]
|
|
524
|
-
});
|
|
525
|
-
|
|
526
|
-
const electricalSubtype$1 = (scope) => verticalSelect({
|
|
527
|
-
name: scope ? scope + ':' + 'Electrical_Subtype' : 'Electrical_Subtype',
|
|
528
|
-
// label: 'What type of electrical work do you need?',
|
|
529
|
-
options: [
|
|
530
|
-
'Electrical Panel',
|
|
531
|
-
'Outlets and Fixtures',
|
|
532
|
-
'Home Theater',
|
|
533
|
-
'Exhaust Fans',
|
|
534
|
-
'Ceiling Fans',
|
|
535
|
-
'EV Charging Station',
|
|
536
|
-
'Addition or Remodel',
|
|
537
|
-
'Generator',
|
|
538
|
-
'Outdoor Lighting',
|
|
539
|
-
'Pet Fence',
|
|
540
|
-
'Thermostat',
|
|
541
|
-
'Wall or Baseboard Heater',
|
|
542
|
-
'Holiday Lighting',
|
|
543
|
-
'Not Sure or Other'
|
|
544
|
-
]
|
|
545
|
-
});
|
|
546
|
-
|
|
547
|
-
const fenceMaterial$1 = (scope) => verticalRadio({
|
|
548
|
-
name: scope ? scope + ':' + 'Fence_Material' : 'Fence_Material',
|
|
549
|
-
// label: 'What type of fence material?',
|
|
550
|
-
options: [
|
|
551
|
-
'Aluminum',
|
|
552
|
-
'Chain Link',
|
|
553
|
-
'Wood',
|
|
554
|
-
'Wire',
|
|
555
|
-
'Vinyl',
|
|
556
|
-
'Iron',
|
|
557
|
-
'Not Sure or Other'
|
|
558
|
-
]
|
|
559
|
-
});
|
|
560
|
-
|
|
561
|
-
const flooringMaterial$1 = (scope) => verticalRadio({
|
|
562
|
-
name: scope ? scope + ':' + 'Flooring_Material' : 'Flooring_Material',
|
|
563
|
-
// label: 'What type of flooring material?',
|
|
564
|
-
options: [
|
|
565
|
-
'Carpet',
|
|
566
|
-
'Concrete',
|
|
567
|
-
'Hardwood',
|
|
568
|
-
'Laminate',
|
|
569
|
-
'Linoleum',
|
|
570
|
-
'Slate',
|
|
571
|
-
'Tile',
|
|
572
|
-
'Vinyl',
|
|
573
|
-
'Not Sure or Other'
|
|
574
|
-
]
|
|
575
|
-
});
|
|
576
|
-
|
|
577
|
-
const generalContractorSubtype$1 = (scope) => verticalRadio({
|
|
578
|
-
name: scope ? scope + ':' + 'General_Contractor_Subtype' : 'General_Contractor_Subtype',
|
|
579
|
-
// label: 'What type of general contractor work do you need?',
|
|
580
|
-
options: [
|
|
581
|
-
'Remodeling',
|
|
582
|
-
'Additions',
|
|
583
|
-
'Major Home Repairs',
|
|
584
|
-
'Excavation',
|
|
585
|
-
'Demolition',
|
|
586
|
-
'Dumpster Rental',
|
|
587
|
-
'Not Sure or Other'
|
|
588
|
-
]
|
|
589
|
-
});
|
|
590
|
-
|
|
591
|
-
const gutterMaterial$1 = (scope) => verticalRadio({
|
|
592
|
-
name: scope ? scope + ':' + 'Gutter_Material' : 'Gutter_Material',
|
|
593
|
-
// label: 'What type of gutter material?',
|
|
594
|
-
options: [
|
|
595
|
-
'Galvanized',
|
|
596
|
-
'Metal',
|
|
597
|
-
'PVC',
|
|
598
|
-
'Wood',
|
|
599
|
-
'Not Sure or Other'
|
|
600
|
-
]
|
|
601
|
-
});
|
|
602
|
-
|
|
603
|
-
const guttersWorkType$1 = (scope) => verticalRadio({
|
|
604
|
-
name: scope ? scope + ':' + 'Gutters_Work_Type' : 'Gutters_Work_Type',
|
|
605
|
-
options: [
|
|
606
|
-
'Install or Replace',
|
|
607
|
-
'Repair',
|
|
608
|
-
'Cleaning',
|
|
609
|
-
'Not Sure or Other'
|
|
610
|
-
]
|
|
611
|
-
});
|
|
612
|
-
|
|
613
|
-
const smartHomeSubtype$1 = (scope) => verticalRadio({
|
|
614
|
-
name: scope ? scope + ':' + 'Smart_Home_Subtype' : 'Smart_Home_Subtype',
|
|
615
|
-
// label: 'What type of smart home work do you need?',
|
|
616
|
-
options: [
|
|
617
|
-
'Thermostats',
|
|
618
|
-
'Video Doorbells',
|
|
619
|
-
'Camera Systems',
|
|
620
|
-
'Lighting',
|
|
621
|
-
'Speaker Systems',
|
|
622
|
-
'Not Sure or Other'
|
|
623
|
-
]
|
|
624
|
-
});
|
|
625
|
-
|
|
626
|
-
const homeOrganizationSubtype$1 = (scope) => verticalRadio({
|
|
627
|
-
name: scope ? scope + ':' + 'Home_Organization_Subtype' : 'Home_Organization_Subtype',
|
|
628
|
-
// label: 'What type of home organization work do you need?',
|
|
629
|
-
options: [
|
|
630
|
-
'Packing or Unpacking',
|
|
631
|
-
'Room Organization',
|
|
632
|
-
'Shed Organization',
|
|
633
|
-
'Storage Solutions',
|
|
634
|
-
'Decluttering',
|
|
635
|
-
'Not Sure or Other'
|
|
636
|
-
]
|
|
637
|
-
});
|
|
638
|
-
|
|
639
|
-
const numberOfRooms$1 = (scope) => verticalRadio({
|
|
640
|
-
name: scope ? scope + ':' + 'Number_Of_Rooms' : 'Number_Of_Rooms',
|
|
641
|
-
// label: 'How many rooms?',
|
|
642
|
-
options: [
|
|
643
|
-
'1',
|
|
644
|
-
'2',
|
|
645
|
-
'3',
|
|
646
|
-
'4',
|
|
647
|
-
'5 or more'
|
|
648
|
-
]
|
|
649
|
-
});
|
|
650
|
-
|
|
651
|
-
const homeTheaterSubtype$1 = (scope) => verticalRadio({
|
|
652
|
-
name: scope ? scope + ':' + 'Home_Theater_Subtype' : 'Home_Theater_Subtype',
|
|
653
|
-
// label: 'What type of home theater work do you need?',
|
|
654
|
-
options: [
|
|
655
|
-
'Hang TV',
|
|
656
|
-
'Install Sound System',
|
|
657
|
-
'Wiring',
|
|
658
|
-
'Troubleshooting',
|
|
659
|
-
'Not Sure or Other'
|
|
660
|
-
]
|
|
661
|
-
});
|
|
662
|
-
|
|
663
|
-
const heatingCoolingSubtype$1 = (scope) => verticalSelect({
|
|
664
|
-
name: scope ? scope + ':' + 'Heating_Cooling_Subtype' : 'Heating_Cooling_Subtype',
|
|
665
|
-
// label: 'What type of heating and cooling work do you need?',
|
|
666
|
-
options: [
|
|
667
|
-
'Central Air',
|
|
668
|
-
'Humidifier',
|
|
669
|
-
'Ducts and Vents',
|
|
670
|
-
'Furnace',
|
|
671
|
-
'Heat Pump',
|
|
672
|
-
'Radiant Floor',
|
|
673
|
-
'Swamp Cooler',
|
|
674
|
-
'Not Sure or Other'
|
|
675
|
-
]
|
|
676
|
-
});
|
|
677
|
-
|
|
678
|
-
const fuelSource$1 = (scope) => verticalRadio({
|
|
679
|
-
name: scope ? scope + ':' + 'Fuel_Source' : 'Fuel_Source',
|
|
680
|
-
// label: 'What is the fuel source?',
|
|
681
|
-
options: [
|
|
682
|
-
'Gas',
|
|
683
|
-
'Oil',
|
|
684
|
-
'Electric',
|
|
685
|
-
'Propane',
|
|
686
|
-
'Not Sure or Other'
|
|
687
|
-
]
|
|
688
|
-
});
|
|
689
|
-
|
|
690
|
-
const insulationSubtype$1 = (scope) => verticalRadio({
|
|
691
|
-
name: scope ? scope + ':' + 'Insulation_Subtype' : 'Insulation_Subtype',
|
|
692
|
-
// label: 'What type of insulation work do you need?',
|
|
693
|
-
options: [
|
|
694
|
-
'Batt or Roll',
|
|
695
|
-
'Spray Foam',
|
|
696
|
-
'Blown-in',
|
|
697
|
-
'Reflective',
|
|
698
|
-
'Not Sure or Other'
|
|
699
|
-
]
|
|
700
|
-
});
|
|
701
|
-
|
|
702
|
-
const landscapingSubtype$1 = (scope) => verticalSelect({
|
|
703
|
-
name: scope ? scope + ':' + 'Landscaping_Subtype' : 'Landscaping_Subtype',
|
|
704
|
-
// label: 'What type of landscaping work do you need?',
|
|
705
|
-
options: [
|
|
706
|
-
'Lawn Mowing',
|
|
707
|
-
'Lawn Care or Fertilization',
|
|
708
|
-
'Yard or Leaf Cleanup',
|
|
709
|
-
'Patios or Walkways',
|
|
710
|
-
'Stonework',
|
|
711
|
-
'Architects',
|
|
712
|
-
'Landscape Construction',
|
|
713
|
-
'Outdoor Lighting',
|
|
714
|
-
'Grading',
|
|
715
|
-
'Materials Delivery',
|
|
716
|
-
'Spinklers'
|
|
717
|
-
]
|
|
718
|
-
});
|
|
719
|
-
|
|
720
|
-
const masonrySubtype$1 = (scope) => verticalRadio({
|
|
721
|
-
name: scope ? scope + ':' + 'Masonry_Subtype' : 'Masonry_Subtype',
|
|
722
|
-
// label: 'What type of masonry work do you need?',
|
|
723
|
-
options: [
|
|
724
|
-
'Driveways',
|
|
725
|
-
'Walkways',
|
|
726
|
-
'Floors',
|
|
727
|
-
'Walls',
|
|
728
|
-
'Facades',
|
|
729
|
-
'Material Delivery',
|
|
730
|
-
'Not Sure or Other'
|
|
731
|
-
]
|
|
732
|
-
});
|
|
733
|
-
|
|
734
|
-
const masonryMaterial$1 = (scope) => verticalRadio({
|
|
735
|
-
name: scope ? scope + ':' + 'Masonry_Material' : 'Masonry_Material',
|
|
736
|
-
// label: 'What type of masonry material?',
|
|
737
|
-
options: [
|
|
738
|
-
'Brick or Stone',
|
|
739
|
-
'Pavers',
|
|
740
|
-
'Concrete',
|
|
741
|
-
'Not Sure or Other'
|
|
742
|
-
]
|
|
743
|
-
});
|
|
744
|
-
|
|
745
|
-
const masonryWorkType$1 = (scope) => verticalRadio({
|
|
746
|
-
name: scope ? scope + ':' + 'Masonry_Work_Type' : 'Masonry_Work_Type',
|
|
747
|
-
// label: 'What type of masonry work do you need?',
|
|
748
|
-
options: [
|
|
749
|
-
'Install or Replace',
|
|
750
|
-
'Repoint Brick or Stone',
|
|
751
|
-
'Repair',
|
|
752
|
-
'Not Sure or Other'
|
|
753
|
-
]
|
|
754
|
-
});
|
|
334
|
+
const homeImprovementCategory$1 = (updates) =>
|
|
335
|
+
verticalSelect(
|
|
336
|
+
merge(
|
|
337
|
+
{
|
|
338
|
+
name: "Category",
|
|
339
|
+
id: "Category",
|
|
340
|
+
options: HomeImprovementCategoryOptions,
|
|
341
|
+
},
|
|
342
|
+
updates
|
|
343
|
+
)
|
|
344
|
+
);
|
|
755
345
|
|
|
756
|
-
const
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
346
|
+
const timeframe$1 = (scope) =>
|
|
347
|
+
verticalRadio({
|
|
348
|
+
name: scope ? scope + ":" + "Timeframe" : "Timeframe",
|
|
349
|
+
// label: 'What is the project timeframe?',
|
|
350
|
+
options: ["Immediate", "1-6 Months", "More than 6 Months"],
|
|
351
|
+
});
|
|
352
|
+
|
|
353
|
+
const ownHome$1 = (scope) =>
|
|
354
|
+
verticalRadio({
|
|
355
|
+
name: scope ? scope + ":" + "Own_Home" : "Own_Home",
|
|
356
|
+
// label: 'Do you own the home?',
|
|
357
|
+
options: ["Yes", "No", "No but authorized"],
|
|
358
|
+
});
|
|
359
|
+
|
|
360
|
+
const additionsSubType$1 = (scope) =>
|
|
361
|
+
verticalSelect({
|
|
362
|
+
name: scope ? scope + ":" + "Additions_Subtype" : "Additions_Subtype",
|
|
363
|
+
// label: 'What type of addition?',
|
|
364
|
+
options: [
|
|
365
|
+
"Garage",
|
|
366
|
+
"In-Law Suite",
|
|
367
|
+
"Additional Rooms",
|
|
368
|
+
"Additional Stories",
|
|
369
|
+
"Bump-out",
|
|
370
|
+
"Sunroom",
|
|
371
|
+
"Accessory Dwelling Unit",
|
|
372
|
+
"Basement Remodeling",
|
|
373
|
+
"Attic Remodeling",
|
|
374
|
+
"Not Sure or Other",
|
|
375
|
+
],
|
|
376
|
+
});
|
|
377
|
+
|
|
378
|
+
const constructionAreaSize$1 = (scope) =>
|
|
379
|
+
verticalRadio({
|
|
380
|
+
name: scope ? scope + ":" + "Construction_Area_Size" : "Construction_Area_Size",
|
|
381
|
+
// label: 'What is the size of the construction area?',
|
|
382
|
+
options: ["Less than 1000 square feet", "1000 to 2000 square feet", "More than 2000 square feet"],
|
|
383
|
+
});
|
|
384
|
+
|
|
385
|
+
const homeImprovementWorkType$1 = (scope) =>
|
|
386
|
+
verticalRadio({
|
|
387
|
+
name: scope ? scope + ":" + "Work_Type" : "Work_Type",
|
|
388
|
+
// label: 'What type of work do you need?',
|
|
389
|
+
options: ["Install or Replace", "Repair", "Not Sure or Other"],
|
|
390
|
+
});
|
|
391
|
+
|
|
392
|
+
const applianceType$1 = (scope) =>
|
|
393
|
+
verticalSelect({
|
|
394
|
+
name: scope ? scope + ":" + "Appliance_Type" : "Appliance_Type",
|
|
395
|
+
// label: 'What type of appliance?',
|
|
396
|
+
options: [
|
|
397
|
+
"Cooktop",
|
|
398
|
+
"Dishwasher",
|
|
399
|
+
"Dryer",
|
|
400
|
+
"Freezer",
|
|
401
|
+
"Garbage Disposal",
|
|
402
|
+
"Ice Maker",
|
|
403
|
+
"Microwave",
|
|
404
|
+
"Range",
|
|
405
|
+
"Refrigerator",
|
|
406
|
+
"Stove",
|
|
407
|
+
"Trash Compactor",
|
|
408
|
+
"Oven",
|
|
409
|
+
"Vacuum",
|
|
410
|
+
"Washer Machine",
|
|
411
|
+
"Not Sure or Other",
|
|
412
|
+
],
|
|
413
|
+
});
|
|
414
|
+
|
|
415
|
+
const cabinetWorkType$1 = (scope) =>
|
|
416
|
+
verticalRadio({
|
|
417
|
+
name: scope ? scope + ":" + "Cabinet_Work_Type" : "Cabinet_Work_Type",
|
|
418
|
+
// label: 'What type of work do you need?',
|
|
419
|
+
options: ["Install", "Refinish", "Reface", "Repair", "Not Sure or Other"],
|
|
420
|
+
});
|
|
421
|
+
|
|
422
|
+
const carpentrySubtype$1 = (scope) =>
|
|
423
|
+
verticalSelect({
|
|
424
|
+
name: scope ? scope + ":" + "Carpentry_Subtype" : "Carpentry_Subtype",
|
|
425
|
+
// label: 'What type of carpentry work?',
|
|
426
|
+
options: [
|
|
427
|
+
"Closets",
|
|
428
|
+
"Custom Furniture",
|
|
429
|
+
"Built-ins",
|
|
430
|
+
"Framing",
|
|
431
|
+
"Interior Trim",
|
|
432
|
+
"Exterior Trim",
|
|
433
|
+
"Windows",
|
|
434
|
+
"Stairways and Railings",
|
|
435
|
+
"Gazebo or Pergola",
|
|
436
|
+
"Multiple Jobs",
|
|
437
|
+
"Not Sure or Other",
|
|
438
|
+
],
|
|
439
|
+
});
|
|
440
|
+
|
|
441
|
+
const carpetWorkType$1 = (scope) =>
|
|
442
|
+
verticalRadio({
|
|
443
|
+
name: scope ? scope + ":" + "Carpet_Work_Type" : "Carpet_Work_Type",
|
|
444
|
+
// label: 'What type of work do you need?',
|
|
445
|
+
options: ["Install or Replace", "Repair", "Cleaning", "Not Sure or Other"],
|
|
446
|
+
});
|
|
447
|
+
|
|
448
|
+
const cleaningSubtype$1 = (scope) =>
|
|
449
|
+
verticalSelect({
|
|
450
|
+
name: scope ? scope + ":" + "Cleaning_Subtype" : "Cleaning_Subtype",
|
|
451
|
+
// label: 'What type of cleaning?',
|
|
452
|
+
options: [
|
|
453
|
+
"Whole Home",
|
|
454
|
+
"Office",
|
|
455
|
+
"Carpets",
|
|
456
|
+
"Windows",
|
|
457
|
+
"Air Ducts or Vents",
|
|
458
|
+
"Chimney",
|
|
459
|
+
"Deck",
|
|
460
|
+
"Tile or Grout",
|
|
461
|
+
"Garage",
|
|
462
|
+
"Shed",
|
|
463
|
+
"Gutters",
|
|
464
|
+
"Pool",
|
|
465
|
+
"Junk Removal",
|
|
466
|
+
"Not Sure or Other",
|
|
467
|
+
],
|
|
468
|
+
});
|
|
469
|
+
|
|
470
|
+
const countertopMaterial$1 = (scope) =>
|
|
471
|
+
verticalSelect({
|
|
472
|
+
name: scope ? scope + ":" + "Countertop_Material" : "Countertop_Material",
|
|
473
|
+
// label: 'What type of countertop?',
|
|
474
|
+
options: ["Concrete", "Granite", "Laminate", "Marble", "Quartz", "Stainless Steel", "Wood", "Not Sure or Other"],
|
|
475
|
+
});
|
|
476
|
+
|
|
477
|
+
const deckWorkType$1 = (scope) =>
|
|
478
|
+
verticalRadio({
|
|
479
|
+
name: scope ? scope + ":" + "Deck_Work_Type" : "Deck_Work_Type",
|
|
480
|
+
// label: 'What type of work do you need?',
|
|
481
|
+
options: ["Paint or Stain", "Install or Replace", "Repair", "Not Sure or Other"],
|
|
482
|
+
});
|
|
483
|
+
|
|
484
|
+
const demolitionSubtype$1 = (scope) =>
|
|
485
|
+
verticalRadio({
|
|
486
|
+
name: scope ? scope + ":" + "Demolition_Subtype" : "Demolition_Subtype",
|
|
487
|
+
// label: 'What type of demolition?',
|
|
488
|
+
options: ["Whole Structure", "Partial Home", "Shed", "Not Sure or Other"],
|
|
489
|
+
});
|
|
490
|
+
|
|
491
|
+
const doorSubtype$1 = (scope) =>
|
|
492
|
+
verticalRadio({
|
|
493
|
+
name: scope ? scope + ":" + "Door_Subtype" : "Door_Subtype",
|
|
494
|
+
// label: 'What type of door?',
|
|
495
|
+
options: ["Interior", "Exterior", "Garage", "Sliding", "Storm", "Not Sure or Other"],
|
|
496
|
+
});
|
|
497
|
+
|
|
498
|
+
const drivewayWorkType$1 = (scope) =>
|
|
499
|
+
verticalRadio({
|
|
500
|
+
name: scope ? scope + ":" + "Driveway_Work_Type" : "Driveway_Work_Type",
|
|
501
|
+
// label: 'What type of work do you need?',
|
|
502
|
+
options: ["Install or Replace", "Repair", "Sealing", "Not Sure or Other"],
|
|
503
|
+
});
|
|
504
|
+
|
|
505
|
+
const drivewayMaterial$1 = (scope) =>
|
|
506
|
+
verticalRadio({
|
|
507
|
+
name: scope ? scope + ":" + "Driveway_Material" : "Driveway_Material",
|
|
508
|
+
// label: 'What type of driveway material?',
|
|
509
|
+
options: ["Asphalt", "Brick", "Cobblestone", "Pebble", "Concrete", "Pavers", "Not Sure or Other"],
|
|
510
|
+
});
|
|
511
|
+
|
|
512
|
+
const wallSurfaceType$1 = (scope) =>
|
|
513
|
+
verticalRadio({
|
|
514
|
+
name: scope ? scope + ":" + "Wall_Surface_Type" : "Wall_Surface_Type",
|
|
515
|
+
// label: 'What type of surface?',
|
|
516
|
+
options: ["Drywall", "Plaster", "Stucco", "Not Sure or Other"],
|
|
517
|
+
});
|
|
518
|
+
|
|
519
|
+
const electricalSubtype$1 = (scope) =>
|
|
520
|
+
verticalSelect({
|
|
521
|
+
name: scope ? scope + ":" + "Electrical_Subtype" : "Electrical_Subtype",
|
|
522
|
+
// label: 'What type of electrical work do you need?',
|
|
523
|
+
options: [
|
|
524
|
+
"Electrical Panel",
|
|
525
|
+
"Outlets and Fixtures",
|
|
526
|
+
"Home Theater",
|
|
527
|
+
"Exhaust Fans",
|
|
528
|
+
"Ceiling Fans",
|
|
529
|
+
"EV Charging Station",
|
|
530
|
+
"Addition or Remodel",
|
|
531
|
+
"Generator",
|
|
532
|
+
"Outdoor Lighting",
|
|
533
|
+
"Pet Fence",
|
|
534
|
+
"Thermostat",
|
|
535
|
+
"Wall or Baseboard Heater",
|
|
536
|
+
"Holiday Lighting",
|
|
537
|
+
"Not Sure or Other",
|
|
538
|
+
],
|
|
539
|
+
});
|
|
540
|
+
|
|
541
|
+
const fenceMaterial$1 = (scope) =>
|
|
542
|
+
verticalRadio({
|
|
543
|
+
name: scope ? scope + ":" + "Fence_Material" : "Fence_Material",
|
|
544
|
+
// label: 'What type of fence material?',
|
|
545
|
+
options: ["Aluminum", "Chain Link", "Wood", "Wire", "Vinyl", "Iron", "Not Sure or Other"],
|
|
546
|
+
});
|
|
547
|
+
|
|
548
|
+
const flooringMaterial$1 = (scope) =>
|
|
549
|
+
verticalRadio({
|
|
550
|
+
name: scope ? scope + ":" + "Flooring_Material" : "Flooring_Material",
|
|
551
|
+
// label: 'What type of flooring material?',
|
|
552
|
+
options: ["Carpet", "Concrete", "Hardwood", "Laminate", "Linoleum", "Slate", "Tile", "Vinyl", "Not Sure or Other"],
|
|
553
|
+
});
|
|
554
|
+
|
|
555
|
+
const generalContractorSubtype$1 = (scope) =>
|
|
556
|
+
verticalRadio({
|
|
557
|
+
name: scope ? scope + ":" + "General_Contractor_Subtype" : "General_Contractor_Subtype",
|
|
558
|
+
// label: 'What type of general contractor work do you need?',
|
|
559
|
+
options: [
|
|
560
|
+
"Remodeling",
|
|
561
|
+
"Additions",
|
|
562
|
+
"Major Home Repairs",
|
|
563
|
+
"Excavation",
|
|
564
|
+
"Demolition",
|
|
565
|
+
"Dumpster Rental",
|
|
566
|
+
"Not Sure or Other",
|
|
567
|
+
],
|
|
568
|
+
});
|
|
569
|
+
|
|
570
|
+
const gutterMaterial$1 = (scope) =>
|
|
571
|
+
verticalRadio({
|
|
572
|
+
name: scope ? scope + ":" + "Gutter_Material" : "Gutter_Material",
|
|
573
|
+
// label: 'What type of gutter material?',
|
|
574
|
+
options: ["Galvanized", "Metal", "PVC", "Wood", "Not Sure or Other"],
|
|
575
|
+
});
|
|
576
|
+
|
|
577
|
+
const guttersWorkType$1 = (scope) =>
|
|
578
|
+
verticalRadio({
|
|
579
|
+
name: scope ? scope + ":" + "Gutters_Work_Type" : "Gutters_Work_Type",
|
|
580
|
+
options: ["Install or Replace", "Repair", "Cleaning", "Not Sure or Other"],
|
|
581
|
+
});
|
|
582
|
+
|
|
583
|
+
const smartHomeSubtype$1 = (scope) =>
|
|
584
|
+
verticalRadio({
|
|
585
|
+
name: scope ? scope + ":" + "Smart_Home_Subtype" : "Smart_Home_Subtype",
|
|
586
|
+
// label: 'What type of smart home work do you need?',
|
|
587
|
+
options: ["Thermostats", "Video Doorbells", "Camera Systems", "Lighting", "Speaker Systems", "Not Sure or Other"],
|
|
588
|
+
});
|
|
589
|
+
|
|
590
|
+
const homeOrganizationSubtype$1 = (scope) =>
|
|
591
|
+
verticalRadio({
|
|
592
|
+
name: scope ? scope + ":" + "Home_Organization_Subtype" : "Home_Organization_Subtype",
|
|
593
|
+
// label: 'What type of home organization work do you need?',
|
|
594
|
+
options: [
|
|
595
|
+
"Packing or Unpacking",
|
|
596
|
+
"Room Organization",
|
|
597
|
+
"Shed Organization",
|
|
598
|
+
"Storage Solutions",
|
|
599
|
+
"Decluttering",
|
|
600
|
+
"Not Sure or Other",
|
|
601
|
+
],
|
|
602
|
+
});
|
|
603
|
+
|
|
604
|
+
const numberOfRooms$1 = (scope) =>
|
|
605
|
+
verticalRadio({
|
|
606
|
+
name: scope ? scope + ":" + "Number_Of_Rooms" : "Number_Of_Rooms",
|
|
607
|
+
// label: 'How many rooms?',
|
|
608
|
+
options: ["1", "2", "3", "4", "5 or more"],
|
|
609
|
+
});
|
|
610
|
+
|
|
611
|
+
const homeTheaterSubtype$1 = (scope) =>
|
|
612
|
+
verticalRadio({
|
|
613
|
+
name: scope ? scope + ":" + "Home_Theater_Subtype" : "Home_Theater_Subtype",
|
|
614
|
+
// label: 'What type of home theater work do you need?',
|
|
615
|
+
options: ["Hang TV", "Install Sound System", "Wiring", "Troubleshooting", "Not Sure or Other"],
|
|
616
|
+
});
|
|
617
|
+
|
|
618
|
+
const heatingCoolingSubtype$1 = (scope) =>
|
|
619
|
+
verticalSelect({
|
|
620
|
+
name: scope ? scope + ":" + "Heating_Cooling_Subtype" : "Heating_Cooling_Subtype",
|
|
621
|
+
// label: 'What type of heating and cooling work do you need?',
|
|
622
|
+
options: [
|
|
623
|
+
"Central Air",
|
|
624
|
+
"Humidifier",
|
|
625
|
+
"Ducts and Vents",
|
|
626
|
+
"Furnace",
|
|
627
|
+
"Heat Pump",
|
|
628
|
+
"Radiant Floor",
|
|
629
|
+
"Swamp Cooler",
|
|
630
|
+
"Not Sure or Other",
|
|
631
|
+
],
|
|
632
|
+
});
|
|
633
|
+
|
|
634
|
+
const fuelSource$1 = (scope) =>
|
|
635
|
+
verticalRadio({
|
|
636
|
+
name: scope ? scope + ":" + "Fuel_Source" : "Fuel_Source",
|
|
637
|
+
// label: 'What is the fuel source?',
|
|
638
|
+
options: ["Gas", "Oil", "Electric", "Propane", "Not Sure or Other"],
|
|
639
|
+
});
|
|
640
|
+
|
|
641
|
+
const insulationSubtype$1 = (scope) =>
|
|
642
|
+
verticalRadio({
|
|
643
|
+
name: scope ? scope + ":" + "Insulation_Subtype" : "Insulation_Subtype",
|
|
644
|
+
// label: 'What type of insulation work do you need?',
|
|
645
|
+
options: ["Batt or Roll", "Spray Foam", "Blown-in", "Reflective", "Not Sure or Other"],
|
|
646
|
+
});
|
|
647
|
+
|
|
648
|
+
const landscapingSubtype$1 = (scope) =>
|
|
649
|
+
verticalSelect({
|
|
650
|
+
name: scope ? scope + ":" + "Landscaping_Subtype" : "Landscaping_Subtype",
|
|
651
|
+
// label: 'What type of landscaping work do you need?',
|
|
652
|
+
options: [
|
|
653
|
+
"Lawn Mowing",
|
|
654
|
+
"Lawn Care or Fertilization",
|
|
655
|
+
"Yard or Leaf Cleanup",
|
|
656
|
+
"Patios or Walkways",
|
|
657
|
+
"Stonework",
|
|
658
|
+
"Architects",
|
|
659
|
+
"Landscape Construction",
|
|
660
|
+
"Outdoor Lighting",
|
|
661
|
+
"Grading",
|
|
662
|
+
"Materials Delivery",
|
|
663
|
+
"Spinklers",
|
|
664
|
+
],
|
|
665
|
+
});
|
|
666
|
+
|
|
667
|
+
const masonrySubtype$1 = (scope) =>
|
|
668
|
+
verticalRadio({
|
|
669
|
+
name: scope ? scope + ":" + "Masonry_Subtype" : "Masonry_Subtype",
|
|
670
|
+
// label: 'What type of masonry work do you need?',
|
|
671
|
+
options: ["Driveways", "Walkways", "Floors", "Walls", "Facades", "Material Delivery", "Not Sure or Other"],
|
|
672
|
+
});
|
|
673
|
+
|
|
674
|
+
const masonryMaterial$1 = (scope) =>
|
|
675
|
+
verticalRadio({
|
|
676
|
+
name: scope ? scope + ":" + "Masonry_Material" : "Masonry_Material",
|
|
677
|
+
// label: 'What type of masonry material?',
|
|
678
|
+
options: ["Brick or Stone", "Pavers", "Concrete", "Not Sure or Other"],
|
|
679
|
+
});
|
|
680
|
+
|
|
681
|
+
const masonryWorkType$1 = (scope) =>
|
|
682
|
+
verticalRadio({
|
|
683
|
+
name: scope ? scope + ":" + "Masonry_Work_Type" : "Masonry_Work_Type",
|
|
684
|
+
// label: 'What type of masonry work do you need?',
|
|
685
|
+
options: ["Install or Replace", "Repoint Brick or Stone", "Repair", "Not Sure or Other"],
|
|
686
|
+
});
|
|
687
|
+
|
|
688
|
+
const restorationSubtype$1 = (scope) =>
|
|
689
|
+
verticalRadio({
|
|
690
|
+
name: scope ? scope + ":" + "Restoration_Subtype" : "Restoration_Subtype",
|
|
691
|
+
// label: 'What type of restoration work do you need?',
|
|
692
|
+
options: ["Mold Remediation", "Fire Damage", "Water Damage", "Not Sure or Other"],
|
|
693
|
+
});
|
|
766
694
|
|
|
767
695
|
// TODO: need to finalize support for moving
|
|
768
696
|
|
|
@@ -800,227 +728,179 @@ const restorationSubtype$1 = (scope) => verticalRadio({
|
|
|
800
728
|
// ]
|
|
801
729
|
// })
|
|
802
730
|
|
|
803
|
-
const paintingSubtype$1 = (scope) =>
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
'
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
'
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
'
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
'
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
'
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
'
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
'
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
const
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
options: [
|
|
970
|
-
'Foundations',
|
|
971
|
-
'Basements',
|
|
972
|
-
'Drainage',
|
|
973
|
-
'Not Sure or Other'
|
|
974
|
-
]
|
|
975
|
-
});
|
|
976
|
-
|
|
977
|
-
const windowsWorkType$1 = (scope) => verticalRadio({
|
|
978
|
-
name: scope ? scope + ':' + 'Windows_Work_Type' : 'Windows_Work_Type',
|
|
979
|
-
// label: 'What type of windows work do you need?',
|
|
980
|
-
options: [
|
|
981
|
-
'Install or Replace',
|
|
982
|
-
'Repair',
|
|
983
|
-
'Cleaning',
|
|
984
|
-
'Not Sure or Other'
|
|
985
|
-
]
|
|
986
|
-
});
|
|
987
|
-
|
|
988
|
-
const windowsSubtype$1 = (scope) => verticalSelect({
|
|
989
|
-
name: scope ? scope + ':' + 'Windows_Subtype' : 'Windows_Subtype',
|
|
990
|
-
// label: 'What type of windows do you have?',
|
|
991
|
-
options: [
|
|
992
|
-
'Whole Windows',
|
|
993
|
-
'Frames',
|
|
994
|
-
'Glass',
|
|
995
|
-
'Hardware',
|
|
996
|
-
'Storm Windows',
|
|
997
|
-
'Screens',
|
|
998
|
-
'Not Sure or Other'
|
|
999
|
-
]
|
|
1000
|
-
});
|
|
1001
|
-
|
|
1002
|
-
const numberOfWindows$1 = (scope) => verticalRadio({
|
|
1003
|
-
name: scope ? scope + ':' + 'Number_Of_Windows' : 'Number_Of_Windows',
|
|
1004
|
-
// label: 'How many windows?',
|
|
1005
|
-
options: [
|
|
1006
|
-
'1',
|
|
1007
|
-
'2',
|
|
1008
|
-
'3-5',
|
|
1009
|
-
'6+'
|
|
1010
|
-
]
|
|
1011
|
-
});
|
|
1012
|
-
|
|
1013
|
-
const NEXT_ON_ENTER = '$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
|
|
1014
|
-
const NEXT_ON_INPUT = '$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
|
|
1015
|
-
|
|
1016
|
-
const isInput = (n) => { return (n.type !== 'group' && n.type !== 'section' && n.type !== 'form' && n.$formkit !== 'hidden' && !n.children) };
|
|
731
|
+
const paintingSubtype$1 = (scope) =>
|
|
732
|
+
verticalSelect({
|
|
733
|
+
name: scope ? scope + ":" + "Painting_Subtype" : "Painting_Subtype",
|
|
734
|
+
// label: 'What type of painting work do you need?',
|
|
735
|
+
options: [
|
|
736
|
+
"Whole Exterior",
|
|
737
|
+
"Exterior Touch-up",
|
|
738
|
+
"Interior Rooms",
|
|
739
|
+
"Interior Touch-up",
|
|
740
|
+
"Ceilings",
|
|
741
|
+
"Deck",
|
|
742
|
+
"Shed",
|
|
743
|
+
"Cabinets",
|
|
744
|
+
"Not Sure or Other",
|
|
745
|
+
],
|
|
746
|
+
});
|
|
747
|
+
|
|
748
|
+
const paintingRooms$1 = (scope) =>
|
|
749
|
+
verticalRadio({
|
|
750
|
+
name: scope ? scope + ":" + "Painting_Rooms" : "Painting_Rooms",
|
|
751
|
+
// label: 'How many rooms need painting?',
|
|
752
|
+
options: ["1-2", "3-4", "4-5", "5-6", "6+"],
|
|
753
|
+
});
|
|
754
|
+
|
|
755
|
+
const pestControlSubtype$1 = (scope) =>
|
|
756
|
+
verticalSelect({
|
|
757
|
+
name: scope ? scope + ":" + "Pest_Control_Subtype" : "Pest_Control_Subtype",
|
|
758
|
+
// label: 'What type of pest control work do you need?',
|
|
759
|
+
options: [
|
|
760
|
+
"Bed Bugs",
|
|
761
|
+
"Flying Animals",
|
|
762
|
+
"Insects",
|
|
763
|
+
"Rodents",
|
|
764
|
+
"Small Animals",
|
|
765
|
+
"Bees",
|
|
766
|
+
"Termites",
|
|
767
|
+
"Not Sure or Other",
|
|
768
|
+
],
|
|
769
|
+
});
|
|
770
|
+
|
|
771
|
+
const poolsWorkType$1 = (scope) =>
|
|
772
|
+
verticalRadio({
|
|
773
|
+
name: scope ? scope + ":" + "Pools_Work_Type" : "Pools_Work_Type",
|
|
774
|
+
// label: 'What type of pool work do you need?',
|
|
775
|
+
options: ["Install or Replace", "Repair", "Cleaning", "Close or Open Pool", "Not Sure or Other"],
|
|
776
|
+
});
|
|
777
|
+
|
|
778
|
+
const poolsSubtype$1 = (scope) =>
|
|
779
|
+
verticalSelect({
|
|
780
|
+
name: scope ? scope + ":" + "Pools_Subtype" : "Pools_Subtype",
|
|
781
|
+
// label: 'What type of pool do you have?',
|
|
782
|
+
options: [
|
|
783
|
+
"Above Ground",
|
|
784
|
+
"Inground Concrete",
|
|
785
|
+
"Inground Fiberglass",
|
|
786
|
+
"Inground Vinyl",
|
|
787
|
+
"Inground Gunite",
|
|
788
|
+
"Pool Liners",
|
|
789
|
+
"Pool Filters",
|
|
790
|
+
"Not Sure or Other",
|
|
791
|
+
],
|
|
792
|
+
});
|
|
793
|
+
|
|
794
|
+
const plumbingSubtype$1 = (scope) =>
|
|
795
|
+
verticalSelect({
|
|
796
|
+
name: scope ? scope + ":" + "Plumbing_Subtype" : "Plumbing_Subtype",
|
|
797
|
+
// label: 'What type of plumbing work do you need?',
|
|
798
|
+
options: [
|
|
799
|
+
"Tub or Shower",
|
|
800
|
+
"Drain",
|
|
801
|
+
"Sink",
|
|
802
|
+
"Toilet",
|
|
803
|
+
"Boiler",
|
|
804
|
+
"Water Heater",
|
|
805
|
+
"Sump Pump",
|
|
806
|
+
"Piping",
|
|
807
|
+
"Septic",
|
|
808
|
+
"Water Main",
|
|
809
|
+
"Hot Tub",
|
|
810
|
+
"Additions and Remodels",
|
|
811
|
+
"Not Sure or Other",
|
|
812
|
+
],
|
|
813
|
+
});
|
|
814
|
+
|
|
815
|
+
const remodelingSubtype$1 = (scope) =>
|
|
816
|
+
verticalSelect({
|
|
817
|
+
name: scope ? scope + ":" + "Remodeling_Subtype" : "Remodeling_Subtype",
|
|
818
|
+
// label: 'What type of remodeling work do you need?',
|
|
819
|
+
options: [
|
|
820
|
+
"Interior Designer",
|
|
821
|
+
"Interior Decorator",
|
|
822
|
+
"Kitchen Remodeling",
|
|
823
|
+
"Bathroom Remodeling",
|
|
824
|
+
"Garage Remodeling",
|
|
825
|
+
"Home Remodeling",
|
|
826
|
+
"Dumpster Rental",
|
|
827
|
+
"Landscape Architect",
|
|
828
|
+
"Outdoor Kitchen",
|
|
829
|
+
"Outdoor Enclosure",
|
|
830
|
+
"Additions",
|
|
831
|
+
"Not Sure or Other",
|
|
832
|
+
],
|
|
833
|
+
});
|
|
834
|
+
|
|
835
|
+
const roofingWorkType$1 = (scope) =>
|
|
836
|
+
verticalRadio({
|
|
837
|
+
name: scope ? scope + ":" + "Roofing_Work_Type" : "Roofing_Work_Type",
|
|
838
|
+
// label: 'What type of roofing work do you need?',
|
|
839
|
+
options: ["Install or Replace Roof", "Repair Roof", "Ice Dams", "Gutters", "Not Sure or Other"],
|
|
840
|
+
});
|
|
841
|
+
|
|
842
|
+
const roofingMaterial$1 = (scope) =>
|
|
843
|
+
verticalSelect({
|
|
844
|
+
name: scope ? scope + ":" + "Roofing_Material" : "Roofing_Material",
|
|
845
|
+
// label: 'What type of roofing material?',
|
|
846
|
+
options: ["Asphalt Shingle", "Metal", "Composite", "Flat", "Foam", "Tile", "Wood", "Slate", "Not Sure or Other"],
|
|
847
|
+
});
|
|
848
|
+
|
|
849
|
+
const sidingMaterial$1 = (scope) =>
|
|
850
|
+
verticalRadio({
|
|
851
|
+
name: scope ? scope + ":" + "Siding_Material" : "Siding_Material",
|
|
852
|
+
// label: 'What type of siding material?',
|
|
853
|
+
options: ["Vinyl", "Composite", "Brick", "Stone", "Wood", "Stucco", "Not Sure or Other"],
|
|
854
|
+
});
|
|
855
|
+
|
|
856
|
+
const tilingSubtype$1 = (scope) =>
|
|
857
|
+
verticalRadio({
|
|
858
|
+
name: scope ? scope + ":" + "Tiling_Subtype" : "Tiling_Subtype",
|
|
859
|
+
// label: 'What type of tiling work do you need?',
|
|
860
|
+
options: ["Floor", "Backsplash", "Bathroom", "Wall", "Not Sure or Other"],
|
|
861
|
+
});
|
|
862
|
+
|
|
863
|
+
const waterproofingSubtype$1 = (scope) =>
|
|
864
|
+
verticalRadio({
|
|
865
|
+
name: scope ? scope + ":" + "Waterproofing_Subtype" : "Waterproofing_Subtype",
|
|
866
|
+
// label: 'What type of waterproofing work do you need?',
|
|
867
|
+
options: ["Foundations", "Basements", "Drainage", "Not Sure or Other"],
|
|
868
|
+
});
|
|
869
|
+
|
|
870
|
+
const windowsWorkType$1 = (scope) =>
|
|
871
|
+
verticalRadio({
|
|
872
|
+
name: scope ? scope + ":" + "Windows_Work_Type" : "Windows_Work_Type",
|
|
873
|
+
// label: 'What type of windows work do you need?',
|
|
874
|
+
options: ["Install or Replace", "Repair", "Cleaning", "Not Sure or Other"],
|
|
875
|
+
});
|
|
876
|
+
|
|
877
|
+
const windowsSubtype$1 = (scope) =>
|
|
878
|
+
verticalSelect({
|
|
879
|
+
name: scope ? scope + ":" + "Windows_Subtype" : "Windows_Subtype",
|
|
880
|
+
// label: 'What type of windows do you have?',
|
|
881
|
+
options: ["Whole Windows", "Frames", "Glass", "Hardware", "Storm Windows", "Screens", "Not Sure or Other"],
|
|
882
|
+
});
|
|
883
|
+
|
|
884
|
+
const numberOfWindows$1 = (scope) =>
|
|
885
|
+
verticalRadio({
|
|
886
|
+
name: scope ? scope + ":" + "Number_Of_Windows" : "Number_Of_Windows",
|
|
887
|
+
// label: 'How many windows?',
|
|
888
|
+
options: ["1", "2", "3-5", "6+"],
|
|
889
|
+
});
|
|
890
|
+
|
|
891
|
+
const NEXT_ON_ENTER = "$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))";
|
|
892
|
+
const NEXT_ON_INPUT = "$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))";
|
|
893
|
+
|
|
894
|
+
const isInput = (n) => {
|
|
895
|
+
return n.type !== "group" && n.type !== "section" && n.type !== "form" && n.$formkit !== "hidden" && !n.children
|
|
896
|
+
};
|
|
1017
897
|
|
|
1018
898
|
const findLastInput = (n) => {
|
|
1019
899
|
if (isInput(n)) {
|
|
1020
900
|
return n
|
|
1021
901
|
}
|
|
1022
902
|
for (var i = n.children.length - 1; i >= 0; i--) {
|
|
1023
|
-
if (typeof n.children ===
|
|
903
|
+
if (typeof n.children === "string") {
|
|
1024
904
|
continue
|
|
1025
905
|
}
|
|
1026
906
|
const child = n.children[i];
|
|
@@ -1036,99 +916,114 @@ const findLastInput = (n) => {
|
|
|
1036
916
|
};
|
|
1037
917
|
|
|
1038
918
|
const secureIconDefault = {
|
|
1039
|
-
$el:
|
|
1040
|
-
if:
|
|
919
|
+
$el: "div",
|
|
920
|
+
if: "$activeStep === $lastStep()",
|
|
1041
921
|
attrs: {
|
|
1042
|
-
class:
|
|
922
|
+
class: "t-flex t-justify-center t-items-center t-text-sm t-text-gray-500",
|
|
1043
923
|
},
|
|
1044
924
|
children: [
|
|
1045
925
|
{
|
|
1046
|
-
$el:
|
|
926
|
+
$el: "img",
|
|
1047
927
|
attrs: {
|
|
1048
|
-
loading:
|
|
1049
|
-
alt:
|
|
928
|
+
loading: "lazy",
|
|
929
|
+
alt: "",
|
|
1050
930
|
style: {
|
|
1051
|
-
border: 0
|
|
931
|
+
border: 0,
|
|
1052
932
|
},
|
|
1053
|
-
width:
|
|
1054
|
-
height:
|
|
1055
|
-
src:
|
|
1056
|
-
}
|
|
933
|
+
width: "25",
|
|
934
|
+
height: "25",
|
|
935
|
+
src: "https://d27hmee62k45vz.cloudfront.net/lock_icon_1.jpeg",
|
|
936
|
+
},
|
|
1057
937
|
},
|
|
1058
938
|
{
|
|
1059
|
-
$el:
|
|
1060
|
-
children:
|
|
939
|
+
$el: "span",
|
|
940
|
+
children: "Secure & Encrypted",
|
|
1061
941
|
attrs: {
|
|
1062
|
-
class:
|
|
1063
|
-
}
|
|
1064
|
-
}
|
|
1065
|
-
]
|
|
942
|
+
class: "t-pl-2 t-pt-1 t-font-medium",
|
|
943
|
+
},
|
|
944
|
+
},
|
|
945
|
+
],
|
|
1066
946
|
};
|
|
1067
947
|
|
|
1068
948
|
function secureIcon(updates) {
|
|
1069
|
-
return merge(
|
|
1070
|
-
secureIconDefault,
|
|
1071
|
-
updates
|
|
1072
|
-
)
|
|
949
|
+
return merge(secureIconDefault, updates)
|
|
1073
950
|
}
|
|
1074
951
|
|
|
1075
952
|
function verticalStepHeadline(updates) {
|
|
1076
953
|
return {
|
|
1077
|
-
$el:
|
|
1078
|
-
children: updates.headline ||
|
|
954
|
+
$el: "h3",
|
|
955
|
+
children: updates.headline || "Tell Us About Your Situation",
|
|
1079
956
|
attrs: {
|
|
1080
|
-
class:
|
|
1081
|
-
|
|
957
|
+
class:
|
|
958
|
+
"t-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-dark t-pb-5 t-pt-0 t-px-1" +
|
|
959
|
+
" " +
|
|
960
|
+
(updates.headlineClass || ""),
|
|
961
|
+
},
|
|
1082
962
|
}
|
|
1083
963
|
}
|
|
1084
964
|
|
|
1085
965
|
function verticalStepSubHeadline(updates) {
|
|
1086
966
|
return {
|
|
1087
|
-
$el:
|
|
1088
|
-
children: updates.subheadline ||
|
|
967
|
+
$el: "h5",
|
|
968
|
+
children: updates.subheadline || "",
|
|
1089
969
|
attrs: {
|
|
1090
|
-
class:
|
|
1091
|
-
|
|
970
|
+
class:
|
|
971
|
+
"t-flex t-justify-center t-text-center !t-text-lg t-font-normal t-text-dark t-pb-5 t-pt-0 t-px-1" +
|
|
972
|
+
" " +
|
|
973
|
+
(updates.subheadlineClass || ""),
|
|
974
|
+
},
|
|
1092
975
|
}
|
|
1093
976
|
}
|
|
1094
977
|
|
|
1095
978
|
function commentsStepHeadline(updates) {
|
|
1096
979
|
return {
|
|
1097
|
-
$el:
|
|
1098
|
-
children: updates.headline ||
|
|
980
|
+
$el: "h3",
|
|
981
|
+
children: updates.headline || "Additional Details",
|
|
1099
982
|
attrs: {
|
|
1100
|
-
class:
|
|
1101
|
-
|
|
983
|
+
class:
|
|
984
|
+
"t-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1" +
|
|
985
|
+
" " +
|
|
986
|
+
(updates.headlineClass || ""),
|
|
987
|
+
},
|
|
1102
988
|
}
|
|
1103
989
|
}
|
|
1104
990
|
|
|
1105
991
|
function firstAndLastStepHeadline(updates) {
|
|
1106
992
|
return {
|
|
1107
|
-
$el:
|
|
1108
|
-
children: updates.headline ||
|
|
993
|
+
$el: "h3",
|
|
994
|
+
children: updates.headline || "Please Provide a Contact Name",
|
|
1109
995
|
attrs: {
|
|
1110
|
-
class:
|
|
1111
|
-
|
|
996
|
+
class:
|
|
997
|
+
"t-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1" +
|
|
998
|
+
" " +
|
|
999
|
+
(updates.headlineClass || ""),
|
|
1000
|
+
},
|
|
1112
1001
|
}
|
|
1113
1002
|
}
|
|
1114
1003
|
|
|
1115
1004
|
function contactStepHeadline(updates) {
|
|
1116
1005
|
return {
|
|
1117
|
-
$el:
|
|
1006
|
+
$el: "h3",
|
|
1118
1007
|
children: updates.headline || DEFAULT_FINAL_HEADLINE_DYNAMIC_LEGAL,
|
|
1119
1008
|
attrs: {
|
|
1120
|
-
class:
|
|
1121
|
-
|
|
1009
|
+
class:
|
|
1010
|
+
"t-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-3 t-pt-0 t-px-1" +
|
|
1011
|
+
" " +
|
|
1012
|
+
(updates.headlineClass || ""),
|
|
1013
|
+
},
|
|
1122
1014
|
}
|
|
1123
1015
|
}
|
|
1124
1016
|
|
|
1125
1017
|
function contactStepSubHeadline(updates) {
|
|
1126
1018
|
return {
|
|
1127
|
-
$el:
|
|
1019
|
+
$el: "h5",
|
|
1128
1020
|
children: updates.subheadline || DEFAULT_FINAL_SUBHEADLINE_DYNAMIC_LEGAL,
|
|
1129
1021
|
attrs: {
|
|
1130
|
-
class:
|
|
1131
|
-
|
|
1022
|
+
class:
|
|
1023
|
+
"t-flex t-justify-center t-text-center !t-text-lg t-font-semibold t-pb-7 t-pt-0 t-px-3" +
|
|
1024
|
+
" " +
|
|
1025
|
+
(updates.subheadlineClass || ""),
|
|
1026
|
+
},
|
|
1132
1027
|
}
|
|
1133
1028
|
}
|
|
1134
1029
|
|
|
@@ -1150,19 +1045,19 @@ const TRUSTED_FORM_JS = `(function() {
|
|
|
1150
1045
|
|
|
1151
1046
|
function trustedFormScript() {
|
|
1152
1047
|
return {
|
|
1153
|
-
$el:
|
|
1154
|
-
if:
|
|
1155
|
-
children: TRUSTED_FORM_JS
|
|
1048
|
+
$el: "script",
|
|
1049
|
+
if: "$activeStep === $lastStep()",
|
|
1050
|
+
children: TRUSTED_FORM_JS,
|
|
1156
1051
|
}
|
|
1157
1052
|
}
|
|
1158
1053
|
|
|
1159
1054
|
const stepDefaults = (step, stepKey) => ({
|
|
1160
|
-
$el:
|
|
1055
|
+
$el: "section",
|
|
1161
1056
|
if: '$stepEnabled("' + step + '")',
|
|
1162
1057
|
attrs: {
|
|
1163
1058
|
hidden: '$activeStep !== "' + step + '"',
|
|
1164
|
-
key: stepKey ? stepKey : step
|
|
1165
|
-
}
|
|
1059
|
+
key: stepKey ? stepKey : step,
|
|
1060
|
+
},
|
|
1166
1061
|
});
|
|
1167
1062
|
|
|
1168
1063
|
function step(name, inputs, updates = {}) {
|
|
@@ -1185,388 +1080,107 @@ function step(name, inputs, updates = {}) {
|
|
|
1185
1080
|
}
|
|
1186
1081
|
}
|
|
1187
1082
|
|
|
1188
|
-
return merge(
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
]
|
|
1202
|
-
}
|
|
1203
|
-
)
|
|
1083
|
+
return merge(stepDefaults(name, stepKey), {
|
|
1084
|
+
children: [
|
|
1085
|
+
{
|
|
1086
|
+
$formkit: "group",
|
|
1087
|
+
id: name,
|
|
1088
|
+
name: name,
|
|
1089
|
+
nextStepMap: nextStepMap,
|
|
1090
|
+
triggerRedirectMap: triggerRedirectMap,
|
|
1091
|
+
autoFocus: autoFocus,
|
|
1092
|
+
children: inputs,
|
|
1093
|
+
},
|
|
1094
|
+
],
|
|
1095
|
+
})
|
|
1204
1096
|
}
|
|
1205
1097
|
|
|
1206
1098
|
// Single question step
|
|
1207
1099
|
function sqstep(name, input, defaultHeadline, updates = {}) {
|
|
1208
|
-
if (typeof updates.nextOnInput ===
|
|
1100
|
+
if (typeof updates.nextOnInput === "undefined") {
|
|
1209
1101
|
updates.nextOnInput = true;
|
|
1210
1102
|
}
|
|
1211
|
-
|
|
1212
|
-
return step(
|
|
1213
|
-
name,
|
|
1214
|
-
[
|
|
1215
|
-
verticalStepHeadline({ headline: updates.headline ?? defaultHeadline, headlineClass: updates.headlineClass }),
|
|
1216
|
-
...Array.isArray(input) ? input : [input],
|
|
1217
|
-
],
|
|
1218
|
-
updates
|
|
1219
|
-
)
|
|
1220
|
-
}
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
// ------ Common Steps
|
|
1224
|
-
|
|
1225
|
-
function address(updates = {}) {
|
|
1226
|
-
updates.nextOnInput = typeof updates.nextOnInput === 'undefined' ? false : updates.nextOnInput;
|
|
1227
|
-
return sqstep(
|
|
1228
|
-
'address',
|
|
1229
|
-
address$1(updates.scope, true),
|
|
1230
|
-
'What is the street address of the home?',
|
|
1231
|
-
updates
|
|
1232
|
-
)
|
|
1233
|
-
}
|
|
1234
1103
|
|
|
1235
|
-
function commentsHeadline(updates = {}) {
|
|
1236
|
-
const mergedUpdates = { ...updates, nextOnEnter: false };
|
|
1237
|
-
|
|
1238
|
-
return step(
|
|
1239
|
-
'comments',
|
|
1240
|
-
[
|
|
1241
|
-
commentsStepHeadline(updates),
|
|
1242
|
-
comments({
|
|
1243
|
-
label: typeof updates.label === 'undefined' ? DEFAULT_COMMENTS_LABEL : updates.label,
|
|
1244
|
-
placeholder: updates.placeholder || DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
|
|
1245
|
-
inputClass: typeof updates.inputClass === 'undefined' ? '!t-h-32' : updates.inputClass,
|
|
1246
|
-
}, updates.scope),
|
|
1247
|
-
],
|
|
1248
|
-
mergedUpdates
|
|
1249
|
-
)
|
|
1250
|
-
}
|
|
1251
|
-
|
|
1252
|
-
function contactInfo(updates = {}) {
|
|
1253
|
-
return step(
|
|
1254
|
-
'contactInfo',
|
|
1255
|
-
[
|
|
1256
|
-
contactStepHeadline(updates),
|
|
1257
|
-
contactStepSubHeadline(updates),
|
|
1258
|
-
trustedFormScript(),
|
|
1259
|
-
email(updates.scope),
|
|
1260
|
-
phone(updates.scope),
|
|
1261
|
-
TCPAConsent(updates.scope),
|
|
1262
|
-
secureIcon()
|
|
1263
|
-
],
|
|
1264
|
-
{ nextOnEnter: false }
|
|
1265
|
-
)
|
|
1266
|
-
}
|
|
1267
|
-
|
|
1268
|
-
function firstAndLastV3(updates = {}, scope) {
|
|
1269
1104
|
return step(
|
|
1270
|
-
|
|
1271
|
-
[
|
|
1272
|
-
|
|
1273
|
-
headline: updates.headline ??
|
|
1274
|
-
headlineClass: updates.headlineClass
|
|
1275
|
-
}),
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
lastName(scope)
|
|
1282
|
-
],
|
|
1283
|
-
updates
|
|
1284
|
-
)
|
|
1285
|
-
}
|
|
1286
|
-
|
|
1287
|
-
function zipcode(updates = {}) {
|
|
1288
|
-
return sqstep(
|
|
1289
|
-
'zipcode',
|
|
1290
|
-
zipcode$1(updates.scope, true, updates),
|
|
1291
|
-
'Please verify your Zip Code',
|
|
1292
|
-
updates
|
|
1293
|
-
)
|
|
1294
|
-
}
|
|
1295
|
-
|
|
1296
|
-
// export function electricalCrossSellQuestions(updates = {}) {
|
|
1297
|
-
// return step(
|
|
1298
|
-
// 'electricalCrossSellQuestions',
|
|
1299
|
-
// [
|
|
1300
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Pro Electrician' }),
|
|
1301
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your electrical needs:' }),
|
|
1302
|
-
// inp.ElectricalQuestions("true", 'CrossSell:Electrical'),
|
|
1303
|
-
// inp.comments(
|
|
1304
|
-
// {
|
|
1305
|
-
// label: 'Project Description:',
|
|
1306
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1307
|
-
// inputClass: '!t-h-16'
|
|
1308
|
-
// },
|
|
1309
|
-
// 'CrossSell:Electrical'
|
|
1310
|
-
// )
|
|
1311
|
-
// ],
|
|
1312
|
-
// updates
|
|
1313
|
-
// )
|
|
1314
|
-
// }
|
|
1315
|
-
|
|
1316
|
-
// export function appliancesCrossSellQuestions(updates = {}) {
|
|
1317
|
-
// return step(
|
|
1318
|
-
// 'appliancesCrossSellQuestions',
|
|
1319
|
-
// [
|
|
1320
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With An Appliance Pro' }),
|
|
1321
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your appliance needs:' }),
|
|
1322
|
-
// inp.AppliancesQuestions("true", 'CrossSell:Appliances'),
|
|
1323
|
-
// inp.comments(
|
|
1324
|
-
// {
|
|
1325
|
-
// label: 'Project Description:',
|
|
1326
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1327
|
-
// inputClass: '!t-h-16'
|
|
1328
|
-
// },
|
|
1329
|
-
// 'CrossSell:Appliances'
|
|
1330
|
-
// )
|
|
1331
|
-
// ],
|
|
1332
|
-
// updates
|
|
1333
|
-
// )
|
|
1334
|
-
// }
|
|
1335
|
-
|
|
1336
|
-
// export function carpentryCrossSellQuestions(updates = {}) {
|
|
1337
|
-
// return step(
|
|
1338
|
-
// 'carpentryCrossSellQuestions',
|
|
1339
|
-
// [
|
|
1340
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Pro Carpenter' }),
|
|
1341
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your carpentry needs:' }),
|
|
1342
|
-
// inp.CarpentryQuestions("true", 'CrossSell:Carpentry'),
|
|
1343
|
-
// inp.comments(
|
|
1344
|
-
// {
|
|
1345
|
-
// label: 'Project Description:',
|
|
1346
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1347
|
-
// inputClass: '!t-h-16'
|
|
1348
|
-
// },
|
|
1349
|
-
// 'CrossSell:Carpentry'
|
|
1350
|
-
// )
|
|
1351
|
-
// ],
|
|
1352
|
-
// updates
|
|
1353
|
-
// )
|
|
1354
|
-
// }
|
|
1355
|
-
|
|
1356
|
-
// export function masonryAndConcreteCrossSellQuestions(updates = {}) {
|
|
1357
|
-
// return step(
|
|
1358
|
-
// 'masonryCrossSellQuestions',
|
|
1359
|
-
// [
|
|
1360
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Masonry Pro' }),
|
|
1361
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your masonry needs:' }),
|
|
1362
|
-
// inp.MasonryAndConcreteQuestions("true", 'CrossSell:Masonry and Concrete'),
|
|
1363
|
-
// inp.comments(
|
|
1364
|
-
// {
|
|
1365
|
-
// label: 'Project Description:',
|
|
1366
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1367
|
-
// inputClass: '!t-h-16'
|
|
1368
|
-
// },
|
|
1369
|
-
// 'CrossSell:Masonry and Concrete'
|
|
1370
|
-
// )
|
|
1371
|
-
// ],
|
|
1372
|
-
// updates
|
|
1373
|
-
// )
|
|
1374
|
-
// }
|
|
1375
|
-
|
|
1376
|
-
// export function drivewaysCrossSellQuestions(updates = {}) {
|
|
1377
|
-
// return step(
|
|
1378
|
-
// 'drivewayCrossSellQuestions',
|
|
1379
|
-
// [
|
|
1380
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Driveway Pro' }),
|
|
1381
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your driveway needs:' }),
|
|
1382
|
-
// inp.DrivewaysQuestions("true", 'CrossSell:Driveways'),
|
|
1383
|
-
// inp.comments(
|
|
1384
|
-
// {
|
|
1385
|
-
// label: 'Project Description:',
|
|
1386
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1387
|
-
// inputClass: '!t-h-16'
|
|
1388
|
-
// },
|
|
1389
|
-
// 'CrossSell:Driveways'
|
|
1390
|
-
// )
|
|
1391
|
-
// ],
|
|
1392
|
-
// updates
|
|
1393
|
-
// )
|
|
1394
|
-
// }
|
|
1395
|
-
|
|
1396
|
-
// export function drywallAndPlasterCrossSellQuestions(updates = {}) {
|
|
1397
|
-
// return step(
|
|
1398
|
-
// 'drywallCrossSellQuestions',
|
|
1399
|
-
// [
|
|
1400
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Drywall Pro' }),
|
|
1401
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your drywall needs:' }),
|
|
1402
|
-
// inp.DrywallAndPlasterQuestions("true", 'CrossSell:Drywall and Plaster'),
|
|
1403
|
-
// inp.comments(
|
|
1404
|
-
// {
|
|
1405
|
-
// label: 'Project Description:',
|
|
1406
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1407
|
-
// inputClass: '!t-h-16'
|
|
1408
|
-
// },
|
|
1409
|
-
// 'CrossSell:Drywall and Plaster'
|
|
1410
|
-
// )
|
|
1411
|
-
// ],
|
|
1412
|
-
// updates
|
|
1413
|
-
// )
|
|
1414
|
-
// }
|
|
1415
|
-
|
|
1416
|
-
// export function heatingAndCoolingCrossSellQuestions(updates = {}) {
|
|
1417
|
-
// return step(
|
|
1418
|
-
// 'heatingCoolingCrossSellQuestions',
|
|
1419
|
-
// [
|
|
1420
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With An HVAC Pro' }),
|
|
1421
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your heating and cooling needs:' }),
|
|
1422
|
-
// inp.HeatingAndCoolingQuestions("true", 'CrossSell:Heating and Cooling'),
|
|
1423
|
-
// inp.comments(
|
|
1424
|
-
// {
|
|
1425
|
-
// label: 'Project Description:',
|
|
1426
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1427
|
-
// },
|
|
1428
|
-
// 'CrossSell:Heating and Cooling'
|
|
1429
|
-
// )
|
|
1430
|
-
// ],
|
|
1431
|
-
// updates
|
|
1432
|
-
// )
|
|
1433
|
-
// }
|
|
1434
|
-
|
|
1435
|
-
// export function landscapingCrossSellQuestions(updates = {}) {
|
|
1436
|
-
// return step(
|
|
1437
|
-
// 'landscapingCrossSellQuestions',
|
|
1438
|
-
// [
|
|
1439
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Landscaping Pro' }),
|
|
1440
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your landscaping needs:' }),
|
|
1441
|
-
// inp.LandscapingQuestions("true", 'CrossSell:Landscaping'),
|
|
1442
|
-
// inp.comments(
|
|
1443
|
-
// {
|
|
1444
|
-
// label: 'Project Description:',
|
|
1445
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1446
|
-
// },
|
|
1447
|
-
// 'CrossSell:Landscaping'
|
|
1448
|
-
// )
|
|
1449
|
-
// ],
|
|
1450
|
-
// updates
|
|
1451
|
-
// )
|
|
1452
|
-
// }
|
|
1105
|
+
name,
|
|
1106
|
+
[
|
|
1107
|
+
verticalStepHeadline({
|
|
1108
|
+
headline: updates.headline ?? defaultHeadline,
|
|
1109
|
+
headlineClass: updates.headlineClass,
|
|
1110
|
+
}),
|
|
1111
|
+
...(Array.isArray(input) ? input : [input]),
|
|
1112
|
+
],
|
|
1113
|
+
updates
|
|
1114
|
+
)
|
|
1115
|
+
}
|
|
1453
1116
|
|
|
1454
|
-
//
|
|
1455
|
-
// return step(
|
|
1456
|
-
// 'pestControlCrossSellQuestions',
|
|
1457
|
-
// [
|
|
1458
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Pest Control Pro' }),
|
|
1459
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your pest control needs:' }),
|
|
1460
|
-
// inp.PestControlQuestions("true", 'CrossSell:Pest Control'),
|
|
1461
|
-
// inp.comments(
|
|
1462
|
-
// {
|
|
1463
|
-
// label: 'Project Description:',
|
|
1464
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1465
|
-
// },
|
|
1466
|
-
// 'CrossSell:Pest Control'
|
|
1467
|
-
// )
|
|
1468
|
-
// ],
|
|
1469
|
-
// updates
|
|
1470
|
-
// )
|
|
1471
|
-
// }
|
|
1117
|
+
// ------ Common Steps
|
|
1472
1118
|
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
// label: 'Project Description:',
|
|
1483
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1484
|
-
// },
|
|
1485
|
-
// 'CrossSell:Siding'
|
|
1486
|
-
// )
|
|
1487
|
-
// ],
|
|
1488
|
-
// updates
|
|
1489
|
-
// )
|
|
1490
|
-
// }
|
|
1119
|
+
function address(updates = {}) {
|
|
1120
|
+
updates.nextOnInput = typeof updates.nextOnInput === "undefined" ? false : updates.nextOnInput;
|
|
1121
|
+
return sqstep(
|
|
1122
|
+
"address",
|
|
1123
|
+
address$1(updates.scope, true, updates.input),
|
|
1124
|
+
"What is the street address of the home?",
|
|
1125
|
+
updates
|
|
1126
|
+
)
|
|
1127
|
+
}
|
|
1491
1128
|
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
// 'windowsCrossSellQuestions',
|
|
1495
|
-
// [
|
|
1496
|
-
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Window Pro' }),
|
|
1497
|
-
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your window needs:' }),
|
|
1498
|
-
// inp.WindowsQuestions("true", 'CrossSell:Windows'),
|
|
1499
|
-
// inp.comments(
|
|
1500
|
-
// {
|
|
1501
|
-
// label: 'Project Description:',
|
|
1502
|
-
// placeholder: 'Please describe your project in a few words...',
|
|
1503
|
-
// },
|
|
1504
|
-
// 'CrossSell:Windows'
|
|
1505
|
-
// )
|
|
1506
|
-
// ],
|
|
1507
|
-
// updates
|
|
1508
|
-
// )
|
|
1509
|
-
// }
|
|
1129
|
+
function commentsHeadline(updates = {}) {
|
|
1130
|
+
const mergedUpdates = { ...updates, nextOnEnter: false };
|
|
1510
1131
|
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
// 'CrossSell:Flooring'
|
|
1525
|
-
// )
|
|
1526
|
-
// ],
|
|
1527
|
-
// updates
|
|
1528
|
-
// )
|
|
1529
|
-
// }
|
|
1132
|
+
return step(
|
|
1133
|
+
"comments",
|
|
1134
|
+
[
|
|
1135
|
+
commentsStepHeadline(updates),
|
|
1136
|
+
comments(updates.scope, false, {
|
|
1137
|
+
label: typeof updates.label === "undefined" ? DEFAULT_COMMENTS_LABEL : updates.label,
|
|
1138
|
+
placeholder: updates.placeholder || DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
|
|
1139
|
+
inputClass: typeof updates.inputClass === "undefined" ? "!t-h-32" : updates.inputClass,
|
|
1140
|
+
}),
|
|
1141
|
+
],
|
|
1142
|
+
mergedUpdates
|
|
1143
|
+
)
|
|
1144
|
+
}
|
|
1530
1145
|
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
// ],
|
|
1547
|
-
// updates
|
|
1548
|
-
// )
|
|
1549
|
-
// }
|
|
1146
|
+
function contactInfo(updates = {}) {
|
|
1147
|
+
return step(
|
|
1148
|
+
"contactInfo",
|
|
1149
|
+
[
|
|
1150
|
+
contactStepHeadline(updates),
|
|
1151
|
+
contactStepSubHeadline(updates),
|
|
1152
|
+
trustedFormScript(),
|
|
1153
|
+
email(updates.scope),
|
|
1154
|
+
phone(updates.scope),
|
|
1155
|
+
TCPAConsent(updates.scope),
|
|
1156
|
+
secureIcon(),
|
|
1157
|
+
],
|
|
1158
|
+
{ nextOnEnter: false }
|
|
1159
|
+
)
|
|
1160
|
+
}
|
|
1550
1161
|
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1162
|
+
function firstAndLastV3(updates = {}) {
|
|
1163
|
+
return step(
|
|
1164
|
+
"firstAndLast",
|
|
1165
|
+
[
|
|
1166
|
+
firstAndLastStepHeadline({
|
|
1167
|
+
headline: updates.headline ?? "Who is looking for help?",
|
|
1168
|
+
headlineClass: updates.headlineClass,
|
|
1169
|
+
}),
|
|
1170
|
+
verticalStepSubHeadline({
|
|
1171
|
+
subheadline: updates.subheadline ?? "Note: we never share info without consent",
|
|
1172
|
+
subheadlineClass: "!t-text-sm !t-text-gray-500",
|
|
1173
|
+
}),
|
|
1174
|
+
firstName(updates.scope),
|
|
1175
|
+
lastName(updates.scope),
|
|
1176
|
+
],
|
|
1177
|
+
updates
|
|
1178
|
+
)
|
|
1179
|
+
}
|
|
1180
|
+
|
|
1181
|
+
function zipcode(updates = {}) {
|
|
1182
|
+
return sqstep("zipcode", zipcode$1(updates.scope, true, updates.input), "Please verify your Zip Code", updates)
|
|
1183
|
+
}
|
|
1570
1184
|
|
|
1571
1185
|
// export function remodelingCrossSellQuestions(updates = {}) {
|
|
1572
1186
|
// return step(
|
|
@@ -1575,13 +1189,12 @@ function zipcode(updates = {}) {
|
|
|
1575
1189
|
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Pro Remodeler' }),
|
|
1576
1190
|
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your remodeling needs:' }),
|
|
1577
1191
|
// inp.RemodelingQuestions("true", 'CrossSell:Remodeling'),
|
|
1578
|
-
// inp.comments(
|
|
1192
|
+
// inp.comments('CrossSell:Remodeling', false,
|
|
1579
1193
|
// {
|
|
1580
1194
|
// label: 'Project Description:',
|
|
1581
1195
|
// placeholder: 'Please describe your project in a few words...',
|
|
1582
1196
|
// inputClass: '!t-h-16'
|
|
1583
1197
|
// },
|
|
1584
|
-
// 'CrossSell:Remodeling'
|
|
1585
1198
|
// )
|
|
1586
1199
|
// ],
|
|
1587
1200
|
// updates
|
|
@@ -1595,13 +1208,12 @@ function zipcode(updates = {}) {
|
|
|
1595
1208
|
// crossSellQuestionsStepHeadline({ headline: 'Connect With A Pro Roofer' }),
|
|
1596
1209
|
// crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your roofing needs:' }),
|
|
1597
1210
|
// inp.RoofingQuestions("true", 'CrossSell:Roofing'),
|
|
1598
|
-
// inp.comments(
|
|
1211
|
+
// inp.comments('CrossSell:Roofing', false,
|
|
1599
1212
|
// {
|
|
1600
1213
|
// label: 'Project Description:',
|
|
1601
1214
|
// placeholder: 'Please describe your project in a few words...',
|
|
1602
1215
|
// inputClass: '!t-h-16'
|
|
1603
1216
|
// },
|
|
1604
|
-
// 'CrossSell:Roofing'
|
|
1605
1217
|
// )
|
|
1606
1218
|
// ],
|
|
1607
1219
|
// updates
|
|
@@ -1609,326 +1221,300 @@ function zipcode(updates = {}) {
|
|
|
1609
1221
|
// }
|
|
1610
1222
|
|
|
1611
1223
|
function homeImprovementCategory(updates = {}) {
|
|
1612
|
-
return step(
|
|
1613
|
-
'homeImprovementCategory',
|
|
1614
|
-
[
|
|
1615
|
-
homeImprovementCategory$1(updates.input),
|
|
1616
|
-
],
|
|
1617
|
-
updates
|
|
1618
|
-
)
|
|
1224
|
+
return step("homeImprovementCategory", [homeImprovementCategory$1(updates.scope, false, updates.input)], updates)
|
|
1619
1225
|
}
|
|
1620
1226
|
|
|
1621
1227
|
function timeframe(updates = {}) {
|
|
1622
1228
|
return sqstep(
|
|
1623
|
-
|
|
1624
|
-
timeframe$1(),
|
|
1625
|
-
|
|
1229
|
+
"timeframe",
|
|
1230
|
+
timeframe$1(updates.scope, true, updates.input),
|
|
1231
|
+
"What is the project timeframe?",
|
|
1626
1232
|
updates
|
|
1627
1233
|
)
|
|
1628
1234
|
}
|
|
1629
1235
|
|
|
1630
1236
|
function ownHome(updates = {}) {
|
|
1631
|
-
return sqstep(
|
|
1632
|
-
'ownHome',
|
|
1633
|
-
ownHome$1(),
|
|
1634
|
-
'Do you own the home?',
|
|
1635
|
-
updates
|
|
1636
|
-
)
|
|
1237
|
+
return sqstep("ownHome", ownHome$1(updates.scope, true, updates.input), "Do you own the home?", updates)
|
|
1637
1238
|
}
|
|
1638
1239
|
|
|
1639
1240
|
function additionsSubType(updates = {}) {
|
|
1640
1241
|
return sqstep(
|
|
1641
|
-
|
|
1642
|
-
additionsSubType$1(),
|
|
1643
|
-
|
|
1242
|
+
"additionsSubType",
|
|
1243
|
+
additionsSubType$1(updates.scope, true, updates.input),
|
|
1244
|
+
"What type of addition?",
|
|
1644
1245
|
updates
|
|
1645
1246
|
)
|
|
1646
1247
|
}
|
|
1647
1248
|
|
|
1648
1249
|
function constructionAreaSize(updates = {}) {
|
|
1649
1250
|
return sqstep(
|
|
1650
|
-
|
|
1651
|
-
constructionAreaSize$1(),
|
|
1652
|
-
|
|
1251
|
+
"constructionAreaSize",
|
|
1252
|
+
constructionAreaSize$1(updates.scope, true, updates.input),
|
|
1253
|
+
"What is the size of the construction area?",
|
|
1653
1254
|
updates
|
|
1654
1255
|
)
|
|
1655
1256
|
}
|
|
1656
1257
|
|
|
1657
1258
|
function homeImprovementWorkType(updates = {}) {
|
|
1658
1259
|
return sqstep(
|
|
1659
|
-
|
|
1660
|
-
homeImprovementWorkType$1(),
|
|
1661
|
-
|
|
1260
|
+
"homeImprovementWorkType",
|
|
1261
|
+
homeImprovementWorkType$1(updates.scope, true, updates.input),
|
|
1262
|
+
"What type of work?",
|
|
1662
1263
|
updates
|
|
1663
1264
|
)
|
|
1664
1265
|
}
|
|
1665
1266
|
|
|
1666
1267
|
function applianceType(updates = {}) {
|
|
1667
1268
|
return sqstep(
|
|
1668
|
-
|
|
1669
|
-
applianceType$1(),
|
|
1670
|
-
|
|
1269
|
+
"applianceType",
|
|
1270
|
+
applianceType$1(updates.scope, true, updates.input),
|
|
1271
|
+
"What type of appliance?",
|
|
1671
1272
|
updates
|
|
1672
1273
|
)
|
|
1673
1274
|
}
|
|
1674
1275
|
|
|
1675
1276
|
function cabinetWorkType(updates = {}) {
|
|
1676
1277
|
return sqstep(
|
|
1677
|
-
|
|
1678
|
-
cabinetWorkType$1(),
|
|
1679
|
-
|
|
1278
|
+
"cabinetWorkType",
|
|
1279
|
+
cabinetWorkType$1(updates.scope, true, updates.input),
|
|
1280
|
+
"What type of cabinet work?",
|
|
1680
1281
|
updates
|
|
1681
1282
|
)
|
|
1682
1283
|
}
|
|
1683
1284
|
|
|
1684
1285
|
function carpentrySubtype(updates = {}) {
|
|
1685
1286
|
return sqstep(
|
|
1686
|
-
|
|
1687
|
-
carpentrySubtype$1(),
|
|
1688
|
-
|
|
1287
|
+
"carpentrySubtype",
|
|
1288
|
+
carpentrySubtype$1(updates.scope, true, updates.input),
|
|
1289
|
+
"What type of carpentry work?",
|
|
1689
1290
|
updates
|
|
1690
1291
|
)
|
|
1691
1292
|
}
|
|
1692
1293
|
|
|
1693
1294
|
function carpetWorkType(updates = {}) {
|
|
1694
1295
|
return sqstep(
|
|
1695
|
-
|
|
1696
|
-
carpetWorkType$1(),
|
|
1697
|
-
|
|
1296
|
+
"carpetWorkType",
|
|
1297
|
+
carpetWorkType$1(updates.scope, true, updates.input),
|
|
1298
|
+
"What type of carpet work?",
|
|
1698
1299
|
updates
|
|
1699
1300
|
)
|
|
1700
1301
|
}
|
|
1701
1302
|
|
|
1702
1303
|
function cleaningSubtype(updates = {}) {
|
|
1703
1304
|
return sqstep(
|
|
1704
|
-
|
|
1705
|
-
cleaningSubtype$1(),
|
|
1706
|
-
|
|
1305
|
+
"cleaningSubtype",
|
|
1306
|
+
cleaningSubtype$1(updates.scope, true, updates.input),
|
|
1307
|
+
"What type of cleaning?",
|
|
1707
1308
|
updates
|
|
1708
1309
|
)
|
|
1709
1310
|
}
|
|
1710
1311
|
|
|
1711
1312
|
function countertopMaterial(updates = {}) {
|
|
1712
1313
|
return sqstep(
|
|
1713
|
-
|
|
1714
|
-
countertopMaterial$1(),
|
|
1715
|
-
|
|
1314
|
+
"countertopMaterial",
|
|
1315
|
+
countertopMaterial$1(updates.scope, true, updates.input),
|
|
1316
|
+
"What type of countertop material?",
|
|
1716
1317
|
updates
|
|
1717
1318
|
)
|
|
1718
1319
|
}
|
|
1719
1320
|
|
|
1720
1321
|
function deckWorkType(updates = {}) {
|
|
1721
1322
|
return sqstep(
|
|
1722
|
-
|
|
1723
|
-
deckWorkType$1(),
|
|
1724
|
-
|
|
1323
|
+
"deckWorkType",
|
|
1324
|
+
deckWorkType$1(updates.scope, true, updates.input),
|
|
1325
|
+
"What type of deck work?",
|
|
1725
1326
|
updates
|
|
1726
1327
|
)
|
|
1727
1328
|
}
|
|
1728
1329
|
|
|
1729
1330
|
function demolitionSubtype(updates = {}) {
|
|
1730
1331
|
return sqstep(
|
|
1731
|
-
|
|
1732
|
-
demolitionSubtype$1(),
|
|
1733
|
-
|
|
1332
|
+
"demolitionSubtype",
|
|
1333
|
+
demolitionSubtype$1(updates.scope, true, updates.input),
|
|
1334
|
+
"What type of demolition?",
|
|
1734
1335
|
updates
|
|
1735
1336
|
)
|
|
1736
1337
|
}
|
|
1737
1338
|
|
|
1738
1339
|
function doorSubtype(updates = {}) {
|
|
1739
|
-
return sqstep(
|
|
1740
|
-
'doorSubtype',
|
|
1741
|
-
doorSubtype$1(),
|
|
1742
|
-
'What type of door?',
|
|
1743
|
-
updates
|
|
1744
|
-
)
|
|
1340
|
+
return sqstep("doorSubtype", doorSubtype$1(updates.scope, true, updates.input), "What type of door?", updates)
|
|
1745
1341
|
}
|
|
1746
1342
|
|
|
1747
1343
|
function drivewayWorkType(updates = {}) {
|
|
1748
1344
|
return sqstep(
|
|
1749
|
-
|
|
1750
|
-
drivewayWorkType$1(),
|
|
1751
|
-
|
|
1345
|
+
"drivewayWorkType",
|
|
1346
|
+
drivewayWorkType$1(updates.scope, true, updates.input),
|
|
1347
|
+
"What type of driveway work?",
|
|
1752
1348
|
updates
|
|
1753
1349
|
)
|
|
1754
1350
|
}
|
|
1755
1351
|
|
|
1756
1352
|
function drivewayMaterial(updates = {}) {
|
|
1757
1353
|
return sqstep(
|
|
1758
|
-
|
|
1759
|
-
drivewayMaterial$1(),
|
|
1760
|
-
|
|
1354
|
+
"drivewayMaterial",
|
|
1355
|
+
drivewayMaterial$1(updates.scope, true, updates.input),
|
|
1356
|
+
"What type of driveway material?",
|
|
1761
1357
|
updates
|
|
1762
1358
|
)
|
|
1763
1359
|
}
|
|
1764
1360
|
|
|
1765
1361
|
function wallSurfaceType(updates = {}) {
|
|
1766
1362
|
return sqstep(
|
|
1767
|
-
|
|
1768
|
-
wallSurfaceType$1(),
|
|
1769
|
-
|
|
1363
|
+
"wallSurfaceType",
|
|
1364
|
+
wallSurfaceType$1(updates.scope, true, updates.input),
|
|
1365
|
+
"What type of surface?",
|
|
1770
1366
|
updates
|
|
1771
1367
|
)
|
|
1772
1368
|
}
|
|
1773
1369
|
|
|
1774
1370
|
function electricalSubtype(updates = {}) {
|
|
1775
1371
|
return sqstep(
|
|
1776
|
-
|
|
1777
|
-
electricalSubtype$1(),
|
|
1778
|
-
|
|
1372
|
+
"electricalSubtype",
|
|
1373
|
+
electricalSubtype$1(updates.scope, true, updates.input),
|
|
1374
|
+
"What type of electrical work?",
|
|
1779
1375
|
updates
|
|
1780
1376
|
)
|
|
1781
1377
|
}
|
|
1782
1378
|
|
|
1783
1379
|
function fenceMaterial(updates = {}) {
|
|
1784
1380
|
return sqstep(
|
|
1785
|
-
|
|
1786
|
-
fenceMaterial$1(),
|
|
1787
|
-
|
|
1381
|
+
"fenceMaterial",
|
|
1382
|
+
fenceMaterial$1(updates.scope, true, updates.input),
|
|
1383
|
+
"What type of fence material?",
|
|
1788
1384
|
updates
|
|
1789
1385
|
)
|
|
1790
1386
|
}
|
|
1791
1387
|
|
|
1792
1388
|
function flooringMaterial(updates = {}) {
|
|
1793
1389
|
return sqstep(
|
|
1794
|
-
|
|
1795
|
-
flooringMaterial$1(),
|
|
1796
|
-
|
|
1390
|
+
"flooringMaterial",
|
|
1391
|
+
flooringMaterial$1(updates.scope, true, updates.input),
|
|
1392
|
+
"What type of flooring material?",
|
|
1797
1393
|
updates
|
|
1798
1394
|
)
|
|
1799
1395
|
}
|
|
1800
1396
|
|
|
1801
1397
|
function generalContractorSubtype(updates = {}) {
|
|
1802
1398
|
return sqstep(
|
|
1803
|
-
|
|
1804
|
-
generalContractorSubtype$1(),
|
|
1805
|
-
|
|
1399
|
+
"generalContractorSubtype",
|
|
1400
|
+
generalContractorSubtype$1(updates.scope, true, updates.input),
|
|
1401
|
+
"What type of general contractor work?",
|
|
1806
1402
|
updates
|
|
1807
1403
|
)
|
|
1808
1404
|
}
|
|
1809
1405
|
|
|
1810
1406
|
function gutterMaterial(updates = {}) {
|
|
1811
1407
|
return sqstep(
|
|
1812
|
-
|
|
1813
|
-
gutterMaterial$1(),
|
|
1814
|
-
|
|
1408
|
+
"gutterMaterial",
|
|
1409
|
+
gutterMaterial$1(updates.scope, true, updates.input),
|
|
1410
|
+
"What type of gutter material?",
|
|
1815
1411
|
updates
|
|
1816
1412
|
)
|
|
1817
1413
|
}
|
|
1818
1414
|
|
|
1819
1415
|
function guttersWorkType(updates = {}) {
|
|
1820
1416
|
return sqstep(
|
|
1821
|
-
|
|
1822
|
-
guttersWorkType$1(),
|
|
1823
|
-
|
|
1417
|
+
"guttersWorkType",
|
|
1418
|
+
guttersWorkType$1(updates.scope, true, updates.input),
|
|
1419
|
+
"What type of gutter work?",
|
|
1824
1420
|
updates
|
|
1825
1421
|
)
|
|
1826
1422
|
}
|
|
1827
1423
|
|
|
1828
1424
|
function smartHomeSubtype(updates = {}) {
|
|
1829
1425
|
return sqstep(
|
|
1830
|
-
|
|
1831
|
-
smartHomeSubtype$1(),
|
|
1832
|
-
|
|
1426
|
+
"smartHomeSubtype",
|
|
1427
|
+
smartHomeSubtype$1(updates.scope, true, updates.input),
|
|
1428
|
+
"What type of smart home work?",
|
|
1833
1429
|
updates
|
|
1834
1430
|
)
|
|
1835
1431
|
}
|
|
1836
1432
|
|
|
1837
1433
|
function homeOrganizationSubtype(updates = {}) {
|
|
1838
1434
|
return sqstep(
|
|
1839
|
-
|
|
1840
|
-
homeOrganizationSubtype$1(),
|
|
1841
|
-
|
|
1435
|
+
"homeOrganizationSubtype",
|
|
1436
|
+
homeOrganizationSubtype$1(updates.scope, true, updates.input),
|
|
1437
|
+
"What type of home organization work?",
|
|
1842
1438
|
updates
|
|
1843
1439
|
)
|
|
1844
1440
|
}
|
|
1845
1441
|
|
|
1846
1442
|
function numberOfRooms(updates = {}) {
|
|
1847
|
-
return sqstep(
|
|
1848
|
-
'numberOfRooms',
|
|
1849
|
-
numberOfRooms$1(),
|
|
1850
|
-
'How many rooms?',
|
|
1851
|
-
updates
|
|
1852
|
-
)
|
|
1443
|
+
return sqstep("numberOfRooms", numberOfRooms$1(updates.scope, true, updates.input), "How many rooms?", updates)
|
|
1853
1444
|
}
|
|
1854
1445
|
|
|
1855
1446
|
function homeTheaterSubtype(updates = {}) {
|
|
1856
1447
|
return sqstep(
|
|
1857
|
-
|
|
1858
|
-
homeTheaterSubtype$1(),
|
|
1859
|
-
|
|
1448
|
+
"homeTheaterSubtype",
|
|
1449
|
+
homeTheaterSubtype$1(updates.scope, true, updates.input),
|
|
1450
|
+
"What type of home theater work?",
|
|
1860
1451
|
updates
|
|
1861
1452
|
)
|
|
1862
1453
|
}
|
|
1863
1454
|
|
|
1864
1455
|
function heatingCoolingSubtype(updates = {}) {
|
|
1865
1456
|
return sqstep(
|
|
1866
|
-
|
|
1867
|
-
heatingCoolingSubtype$1(),
|
|
1868
|
-
|
|
1457
|
+
"heatingCoolingSubtype",
|
|
1458
|
+
heatingCoolingSubtype$1(updates.scope, true, updates.input),
|
|
1459
|
+
"What type of heating and cooling work?",
|
|
1869
1460
|
updates
|
|
1870
1461
|
)
|
|
1871
1462
|
}
|
|
1872
1463
|
|
|
1873
1464
|
function fuelSource(updates = {}) {
|
|
1874
|
-
return sqstep(
|
|
1875
|
-
'fuelSource',
|
|
1876
|
-
fuelSource$1(),
|
|
1877
|
-
'What type of fuel source?',
|
|
1878
|
-
updates
|
|
1879
|
-
)
|
|
1465
|
+
return sqstep("fuelSource", fuelSource$1(updates.scope, true, updates.input), "What type of fuel source?", updates)
|
|
1880
1466
|
}
|
|
1881
1467
|
|
|
1882
1468
|
function insulationSubtype(updates = {}) {
|
|
1883
1469
|
return sqstep(
|
|
1884
|
-
|
|
1885
|
-
insulationSubtype$1(),
|
|
1886
|
-
|
|
1470
|
+
"insulationSubtype",
|
|
1471
|
+
insulationSubtype$1(updates.scope, true, updates.input),
|
|
1472
|
+
"What type of insulation work?",
|
|
1887
1473
|
updates
|
|
1888
1474
|
)
|
|
1889
1475
|
}
|
|
1890
1476
|
|
|
1891
1477
|
function landscapingSubtype(updates = {}) {
|
|
1892
1478
|
return sqstep(
|
|
1893
|
-
|
|
1894
|
-
landscapingSubtype$1(),
|
|
1895
|
-
|
|
1479
|
+
"landscapingSubtype",
|
|
1480
|
+
landscapingSubtype$1(updates.scope, true, updates.input),
|
|
1481
|
+
"What type of landscaping work?",
|
|
1896
1482
|
updates
|
|
1897
1483
|
)
|
|
1898
1484
|
}
|
|
1899
1485
|
|
|
1900
1486
|
function masonrySubtype(updates = {}) {
|
|
1901
1487
|
return sqstep(
|
|
1902
|
-
|
|
1903
|
-
masonrySubtype$1(),
|
|
1904
|
-
|
|
1488
|
+
"masonrySubtype",
|
|
1489
|
+
masonrySubtype$1(updates.scope, true, updates.input),
|
|
1490
|
+
"What type of masonry work?",
|
|
1905
1491
|
updates
|
|
1906
1492
|
)
|
|
1907
1493
|
}
|
|
1908
1494
|
|
|
1909
1495
|
function masonryMaterial(updates = {}) {
|
|
1910
1496
|
return sqstep(
|
|
1911
|
-
|
|
1912
|
-
masonryMaterial$1(),
|
|
1913
|
-
|
|
1497
|
+
"masonryMaterial",
|
|
1498
|
+
masonryMaterial$1(updates.scope, true, updates.input),
|
|
1499
|
+
"What type of masonry material?",
|
|
1914
1500
|
updates
|
|
1915
1501
|
)
|
|
1916
1502
|
}
|
|
1917
1503
|
|
|
1918
1504
|
function masonryWorkType(updates = {}) {
|
|
1919
1505
|
return sqstep(
|
|
1920
|
-
|
|
1921
|
-
masonryWorkType$1(),
|
|
1922
|
-
|
|
1506
|
+
"masonryWorkType",
|
|
1507
|
+
masonryWorkType$1(updates.scope, true, updates.input),
|
|
1508
|
+
"What type of masonry work?",
|
|
1923
1509
|
updates
|
|
1924
1510
|
)
|
|
1925
1511
|
}
|
|
1926
1512
|
|
|
1927
1513
|
function restorationSubtype(updates = {}) {
|
|
1928
1514
|
return sqstep(
|
|
1929
|
-
|
|
1930
|
-
restorationSubtype$1(),
|
|
1931
|
-
|
|
1515
|
+
"restorationSubtype",
|
|
1516
|
+
restorationSubtype$1(updates.scope, true, updates.input),
|
|
1517
|
+
"What type of restoration work?",
|
|
1932
1518
|
updates
|
|
1933
1519
|
)
|
|
1934
1520
|
}
|
|
@@ -1938,7 +1524,7 @@ function restorationSubtype(updates = {}) {
|
|
|
1938
1524
|
// export function movingFromAddress(updates = {}) {
|
|
1939
1525
|
// return sqstep(
|
|
1940
1526
|
// 'movingFromAddress',
|
|
1941
|
-
// inp.movingFromAddress(),
|
|
1527
|
+
// inp.movingFromAddress(updates.scope, true, updates.input),
|
|
1942
1528
|
// 'Moving from address:',
|
|
1943
1529
|
// updates
|
|
1944
1530
|
// )
|
|
@@ -1947,7 +1533,7 @@ function restorationSubtype(updates = {}) {
|
|
|
1947
1533
|
// export function movingToAddress(updates = {}) {
|
|
1948
1534
|
// return sqstep(
|
|
1949
1535
|
// 'movingToAddress',
|
|
1950
|
-
// inp.movingToAddress(),
|
|
1536
|
+
// inp.movingToAddress(updates.scope, true, updates.input),
|
|
1951
1537
|
// 'Moving to address:',
|
|
1952
1538
|
// updates
|
|
1953
1539
|
// )
|
|
@@ -1956,7 +1542,7 @@ function restorationSubtype(updates = {}) {
|
|
|
1956
1542
|
// export function movingHouseholdSize(updates = {}) {
|
|
1957
1543
|
// return sqstep(
|
|
1958
1544
|
// 'movingHouseholdSize',
|
|
1959
|
-
// inp.movingHouseholdSize(),
|
|
1545
|
+
// inp.movingHouseholdSize(updates.scope, true, updates.input),
|
|
1960
1546
|
// 'Household size:',
|
|
1961
1547
|
// updates
|
|
1962
1548
|
// )
|
|
@@ -1964,245 +1550,245 @@ function restorationSubtype(updates = {}) {
|
|
|
1964
1550
|
|
|
1965
1551
|
function paintingSubtype(updates = {}) {
|
|
1966
1552
|
return sqstep(
|
|
1967
|
-
|
|
1968
|
-
paintingSubtype$1(),
|
|
1969
|
-
|
|
1553
|
+
"paintingSubtype",
|
|
1554
|
+
paintingSubtype$1(updates.scope, true, updates.input),
|
|
1555
|
+
"What type of painting work?",
|
|
1970
1556
|
updates
|
|
1971
1557
|
)
|
|
1972
1558
|
}
|
|
1973
1559
|
|
|
1974
1560
|
function paintingRooms(updates = {}) {
|
|
1975
1561
|
return sqstep(
|
|
1976
|
-
|
|
1977
|
-
paintingRooms$1(),
|
|
1978
|
-
|
|
1562
|
+
"paintingRooms",
|
|
1563
|
+
paintingRooms$1(updates.scope, true, updates.input),
|
|
1564
|
+
"How many rooms need painting?",
|
|
1979
1565
|
updates
|
|
1980
1566
|
)
|
|
1981
1567
|
}
|
|
1982
1568
|
|
|
1983
1569
|
function pestControlSubtype(updates = {}) {
|
|
1984
1570
|
return sqstep(
|
|
1985
|
-
|
|
1986
|
-
pestControlSubtype$1(),
|
|
1987
|
-
|
|
1571
|
+
"pestControlSubtype",
|
|
1572
|
+
pestControlSubtype$1(updates.scope, true, updates.input),
|
|
1573
|
+
"What type of pest control work?",
|
|
1988
1574
|
updates
|
|
1989
1575
|
)
|
|
1990
1576
|
}
|
|
1991
1577
|
|
|
1992
1578
|
function poolsWorkType(updates = {}) {
|
|
1993
1579
|
return sqstep(
|
|
1994
|
-
|
|
1995
|
-
poolsWorkType$1(),
|
|
1996
|
-
|
|
1580
|
+
"poolsWorkType",
|
|
1581
|
+
poolsWorkType$1(updates.scope, true, updates.input),
|
|
1582
|
+
"What type of pool work?",
|
|
1997
1583
|
updates
|
|
1998
1584
|
)
|
|
1999
1585
|
}
|
|
2000
1586
|
|
|
2001
1587
|
function poolsSubtype(updates = {}) {
|
|
2002
1588
|
return sqstep(
|
|
2003
|
-
|
|
2004
|
-
poolsSubtype$1(),
|
|
2005
|
-
|
|
1589
|
+
"poolsSubtype",
|
|
1590
|
+
poolsSubtype$1(updates.scope, true, updates.input),
|
|
1591
|
+
"What type of pool work?",
|
|
2006
1592
|
updates
|
|
2007
1593
|
)
|
|
2008
1594
|
}
|
|
2009
1595
|
|
|
2010
1596
|
function plumbingSubtype(updates = {}) {
|
|
2011
1597
|
return sqstep(
|
|
2012
|
-
|
|
2013
|
-
plumbingSubtype$1(),
|
|
2014
|
-
|
|
1598
|
+
"plumbingSubtype",
|
|
1599
|
+
plumbingSubtype$1(updates.scope, true, updates.input),
|
|
1600
|
+
"What type of plumbing work?",
|
|
2015
1601
|
updates
|
|
2016
1602
|
)
|
|
2017
1603
|
}
|
|
2018
1604
|
|
|
2019
1605
|
function remodelingSubtype(updates = {}) {
|
|
2020
1606
|
return sqstep(
|
|
2021
|
-
|
|
2022
|
-
remodelingSubtype$1(),
|
|
2023
|
-
|
|
1607
|
+
"remodelingSubtype",
|
|
1608
|
+
remodelingSubtype$1(updates.scope, true, updates.input),
|
|
1609
|
+
"What type of remodeling work?",
|
|
2024
1610
|
updates
|
|
2025
1611
|
)
|
|
2026
1612
|
}
|
|
2027
1613
|
|
|
2028
1614
|
function roofingWorkType(updates = {}) {
|
|
2029
1615
|
return sqstep(
|
|
2030
|
-
|
|
2031
|
-
roofingWorkType$1(),
|
|
2032
|
-
|
|
1616
|
+
"roofingWorkType",
|
|
1617
|
+
roofingWorkType$1(updates.scope, true, updates.input),
|
|
1618
|
+
"What type of roofing work?",
|
|
2033
1619
|
updates
|
|
2034
1620
|
)
|
|
2035
1621
|
}
|
|
2036
1622
|
|
|
2037
1623
|
function roofingMaterial(updates = {}) {
|
|
2038
1624
|
return sqstep(
|
|
2039
|
-
|
|
2040
|
-
roofingMaterial$1(),
|
|
2041
|
-
|
|
1625
|
+
"roofingMaterial",
|
|
1626
|
+
roofingMaterial$1(updates.scope, true, updates.input),
|
|
1627
|
+
"What type of roofing material?",
|
|
2042
1628
|
updates
|
|
2043
1629
|
)
|
|
2044
1630
|
}
|
|
2045
1631
|
|
|
2046
1632
|
function sidingMaterial(updates = {}) {
|
|
2047
1633
|
return sqstep(
|
|
2048
|
-
|
|
2049
|
-
sidingMaterial$1(),
|
|
2050
|
-
|
|
1634
|
+
"sidingMaterial",
|
|
1635
|
+
sidingMaterial$1(updates.scope, true, updates.input),
|
|
1636
|
+
"What type of siding material?",
|
|
2051
1637
|
updates
|
|
2052
1638
|
)
|
|
2053
1639
|
}
|
|
2054
1640
|
|
|
2055
1641
|
function tilingSubtype(updates = {}) {
|
|
2056
1642
|
return sqstep(
|
|
2057
|
-
|
|
2058
|
-
tilingSubtype$1(),
|
|
2059
|
-
|
|
1643
|
+
"tilingSubtype",
|
|
1644
|
+
tilingSubtype$1(updates.scope, true, updates.input),
|
|
1645
|
+
"What type of tiling work?",
|
|
2060
1646
|
updates
|
|
2061
1647
|
)
|
|
2062
1648
|
}
|
|
2063
1649
|
|
|
2064
1650
|
function waterproofingSubtype(updates = {}) {
|
|
2065
1651
|
return sqstep(
|
|
2066
|
-
|
|
2067
|
-
waterproofingSubtype$1(),
|
|
2068
|
-
|
|
1652
|
+
"waterproofingSubtype",
|
|
1653
|
+
waterproofingSubtype$1(updates.scope, true, updates.input),
|
|
1654
|
+
"What type of waterproofing work?",
|
|
2069
1655
|
updates
|
|
2070
1656
|
)
|
|
2071
1657
|
}
|
|
2072
1658
|
|
|
2073
1659
|
function windowsWorkType(updates = {}) {
|
|
2074
1660
|
return sqstep(
|
|
2075
|
-
|
|
2076
|
-
windowsWorkType$1(),
|
|
2077
|
-
|
|
1661
|
+
"windowsWorkType",
|
|
1662
|
+
windowsWorkType$1(updates.scope, true, updates.input),
|
|
1663
|
+
"What type of windows work?",
|
|
2078
1664
|
updates
|
|
2079
1665
|
)
|
|
2080
1666
|
}
|
|
2081
1667
|
|
|
2082
1668
|
function windowsSubtype(updates = {}) {
|
|
2083
1669
|
return sqstep(
|
|
2084
|
-
|
|
2085
|
-
windowsSubtype$1(),
|
|
2086
|
-
|
|
1670
|
+
"windowsSubtype",
|
|
1671
|
+
windowsSubtype$1(updates.scope, true, updates.input),
|
|
1672
|
+
"What type of windows work?",
|
|
2087
1673
|
updates
|
|
2088
1674
|
)
|
|
2089
1675
|
}
|
|
2090
1676
|
|
|
2091
1677
|
function numberOfWindows(updates = {}) {
|
|
2092
1678
|
return sqstep(
|
|
2093
|
-
|
|
2094
|
-
numberOfWindows$1(),
|
|
2095
|
-
|
|
1679
|
+
"numberOfWindows",
|
|
1680
|
+
numberOfWindows$1(updates.scope, true, updates.input),
|
|
1681
|
+
"How many windows?",
|
|
2096
1682
|
updates
|
|
2097
1683
|
)
|
|
2098
1684
|
}
|
|
2099
1685
|
|
|
2100
1686
|
const formNavigation = (updates = {}) => ({
|
|
2101
|
-
$el:
|
|
1687
|
+
$el: "div",
|
|
2102
1688
|
attrs: {
|
|
2103
|
-
class:
|
|
1689
|
+
class: "step-nav",
|
|
2104
1690
|
},
|
|
2105
1691
|
children: [
|
|
2106
1692
|
{
|
|
2107
|
-
$formkit:
|
|
2108
|
-
name:
|
|
2109
|
-
onClick:
|
|
2110
|
-
children:
|
|
1693
|
+
$formkit: "button",
|
|
1694
|
+
name: "back_button",
|
|
1695
|
+
onClick: "$setPreviousStep($prevStepFunc($get(form)))",
|
|
1696
|
+
children: "Back",
|
|
2111
1697
|
style: {
|
|
2112
|
-
if:
|
|
2113
|
-
then:
|
|
2114
|
-
}
|
|
1698
|
+
if: "$activeStep === $firstStep()",
|
|
1699
|
+
then: "visibility: hidden;",
|
|
1700
|
+
},
|
|
2115
1701
|
},
|
|
2116
1702
|
{
|
|
2117
|
-
$formkit:
|
|
2118
|
-
name:
|
|
2119
|
-
onClick:
|
|
1703
|
+
$formkit: "button",
|
|
1704
|
+
name: "next_button",
|
|
1705
|
+
onClick: "$setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form)))",
|
|
2120
1706
|
children: {
|
|
2121
|
-
if:
|
|
2122
|
-
then:
|
|
2123
|
-
else:
|
|
1707
|
+
if: "$activeStep === $firstStep()",
|
|
1708
|
+
then: "Start",
|
|
1709
|
+
else: "Next",
|
|
2124
1710
|
},
|
|
2125
1711
|
outerClass: {
|
|
2126
|
-
if:
|
|
2127
|
-
then:
|
|
2128
|
-
else:
|
|
1712
|
+
if: "$activeStep === $lastStep()",
|
|
1713
|
+
then: "t-hidden",
|
|
1714
|
+
else: "",
|
|
2129
1715
|
},
|
|
2130
1716
|
style: {
|
|
2131
|
-
if:
|
|
2132
|
-
then:
|
|
2133
|
-
}
|
|
1717
|
+
if: "$activeStep === $lastStep()",
|
|
1718
|
+
then: "display: none;",
|
|
1719
|
+
},
|
|
2134
1720
|
},
|
|
2135
1721
|
{
|
|
2136
|
-
$formkit:
|
|
2137
|
-
name:
|
|
2138
|
-
label: updates.submitLabel ||
|
|
2139
|
-
if:
|
|
1722
|
+
$formkit: "submit",
|
|
1723
|
+
name: "submit_button",
|
|
1724
|
+
label: updates.submitLabel || "Submit",
|
|
1725
|
+
if: "$activeStep === $lastStep()",
|
|
2140
1726
|
style: {
|
|
2141
|
-
if:
|
|
2142
|
-
then:
|
|
2143
|
-
}
|
|
2144
|
-
}
|
|
2145
|
-
]
|
|
1727
|
+
if: "$activeStep !== $lastStep()",
|
|
1728
|
+
then: "display: none;",
|
|
1729
|
+
},
|
|
1730
|
+
},
|
|
1731
|
+
],
|
|
2146
1732
|
});
|
|
2147
1733
|
|
|
2148
1734
|
const formDetails = () => ({
|
|
2149
|
-
$el:
|
|
1735
|
+
$el: "pre",
|
|
2150
1736
|
if: '$urlParam("fdbg", "") == 1',
|
|
2151
1737
|
children: [
|
|
2152
1738
|
{
|
|
2153
|
-
$el:
|
|
2154
|
-
children:
|
|
1739
|
+
$el: "pre",
|
|
1740
|
+
children: "$stringify( $get(form).value )",
|
|
2155
1741
|
attrs: {
|
|
2156
|
-
class:
|
|
2157
|
-
style:
|
|
2158
|
-
}
|
|
1742
|
+
class: "t-text-xs",
|
|
1743
|
+
style: "overflow: scroll",
|
|
1744
|
+
},
|
|
2159
1745
|
},
|
|
2160
1746
|
{
|
|
2161
|
-
$el:
|
|
2162
|
-
children: [
|
|
1747
|
+
$el: "pre",
|
|
1748
|
+
children: ["activeStep: ", "$activeStep"],
|
|
2163
1749
|
attrs: {
|
|
2164
|
-
class:
|
|
2165
|
-
style:
|
|
2166
|
-
}
|
|
1750
|
+
class: "t-text-xs",
|
|
1751
|
+
style: "overflow: scroll",
|
|
1752
|
+
},
|
|
2167
1753
|
},
|
|
2168
1754
|
{
|
|
2169
|
-
$el:
|
|
2170
|
-
children: [
|
|
1755
|
+
$el: "pre",
|
|
1756
|
+
children: ["stepHistory: ", "$stepHistory"],
|
|
2171
1757
|
attrs: {
|
|
2172
|
-
class:
|
|
2173
|
-
style:
|
|
2174
|
-
}
|
|
1758
|
+
class: "t-text-xs",
|
|
1759
|
+
style: "overflow: scroll",
|
|
1760
|
+
},
|
|
2175
1761
|
},
|
|
2176
1762
|
{
|
|
2177
|
-
$el:
|
|
2178
|
-
children: [
|
|
1763
|
+
$el: "pre",
|
|
1764
|
+
children: ["stepQueue: ", "$stepQueue"],
|
|
2179
1765
|
attrs: {
|
|
2180
|
-
class:
|
|
2181
|
-
style:
|
|
2182
|
-
}
|
|
1766
|
+
class: "t-text-xs",
|
|
1767
|
+
style: "overflow: scroll",
|
|
1768
|
+
},
|
|
2183
1769
|
},
|
|
2184
1770
|
{
|
|
2185
|
-
$el:
|
|
2186
|
-
children: [
|
|
1771
|
+
$el: "pre",
|
|
1772
|
+
children: ["steps: ", "$stepKeys()"],
|
|
2187
1773
|
attrs: {
|
|
2188
|
-
class:
|
|
2189
|
-
style:
|
|
2190
|
-
}
|
|
2191
|
-
}
|
|
2192
|
-
]
|
|
1774
|
+
class: "t-text-xs",
|
|
1775
|
+
style: "overflow: scroll",
|
|
1776
|
+
},
|
|
1777
|
+
},
|
|
1778
|
+
],
|
|
2193
1779
|
});
|
|
2194
1780
|
|
|
2195
1781
|
const formPropDefaults = {
|
|
2196
|
-
type:
|
|
2197
|
-
id:
|
|
2198
|
-
config: { validationVisibility:
|
|
1782
|
+
type: "form",
|
|
1783
|
+
id: "form",
|
|
1784
|
+
config: { validationVisibility: "submit" },
|
|
2199
1785
|
onSubmit: '$submit($submitUrl, $prepData, $handleRedirect, "text/plain; charset=UTF-8")',
|
|
2200
|
-
plugins:
|
|
1786
|
+
plugins: "$plugins",
|
|
2201
1787
|
actions: false,
|
|
2202
|
-
anchorElement:
|
|
1788
|
+
anchorElement: "form-anchor",
|
|
2203
1789
|
useLocalStorage: true,
|
|
2204
1790
|
prepop: {
|
|
2205
|
-
fromURL: true
|
|
1791
|
+
fromURL: true,
|
|
2206
1792
|
},
|
|
2207
1793
|
errorCodes: {
|
|
2208
1794
|
403: { message: "An Error Occurred", abort: false },
|
|
@@ -2210,13 +1796,11 @@ const formPropDefaults = {
|
|
|
2210
1796
|
429: "An Error Occurred",
|
|
2211
1797
|
504: { message: "An Error Occurred", abort: false },
|
|
2212
1798
|
},
|
|
2213
|
-
formClass:
|
|
1799
|
+
formClass: "!t-max-w-[40rem]",
|
|
2214
1800
|
};
|
|
2215
1801
|
|
|
2216
1802
|
function filterMapByKey(obj, keyList) {
|
|
2217
|
-
return Object.fromEntries(
|
|
2218
|
-
Object.entries(obj).filter(([key]) => keyList.includes(key))
|
|
2219
|
-
);
|
|
1803
|
+
return Object.fromEntries(Object.entries(obj).filter(([key]) => keyList.includes(key)))
|
|
2220
1804
|
}
|
|
2221
1805
|
|
|
2222
1806
|
// export function filteredNextStepsMapLegal(keyList) {
|
|
@@ -2226,10 +1810,7 @@ function filterMapByKey(obj, keyList) {
|
|
|
2226
1810
|
// }
|
|
2227
1811
|
|
|
2228
1812
|
function formProps(updates) {
|
|
2229
|
-
const props = merge(
|
|
2230
|
-
formPropDefaults,
|
|
2231
|
-
updates
|
|
2232
|
-
);
|
|
1813
|
+
const props = merge(formPropDefaults, updates);
|
|
2233
1814
|
if (props.formId && !props.name) {
|
|
2234
1815
|
props.name = props.formId;
|
|
2235
1816
|
}
|
|
@@ -2239,13 +1820,10 @@ function formProps(updates) {
|
|
|
2239
1820
|
const metaDefaults = {};
|
|
2240
1821
|
|
|
2241
1822
|
function metaProps(updates) {
|
|
2242
|
-
const data = merge(
|
|
2243
|
-
metaDefaults,
|
|
2244
|
-
updates
|
|
2245
|
-
);
|
|
1823
|
+
const data = merge(metaDefaults, updates);
|
|
2246
1824
|
return {
|
|
2247
|
-
type:
|
|
2248
|
-
data
|
|
1825
|
+
type: "meta",
|
|
1826
|
+
data,
|
|
2249
1827
|
}
|
|
2250
1828
|
}
|
|
2251
1829
|
|
|
@@ -2265,236 +1843,223 @@ function defaultMetaPropsHomeImprovement(category = null) {
|
|
|
2265
1843
|
defaultFinalHeadline: DEFAULT_FINAL_HEADLINE_HOME_IMPROVEMENT,
|
|
2266
1844
|
finalHeadlines: finalHeadlines,
|
|
2267
1845
|
defaultFinalSubHeadline: DEFAULT_FINAL_SUBHEADLINE_HOME_IMPROVEMENT,
|
|
2268
|
-
finalSubHeadlines: finalSubHeadlines
|
|
1846
|
+
finalSubHeadlines: finalSubHeadlines,
|
|
2269
1847
|
})
|
|
2270
1848
|
}
|
|
2271
1849
|
|
|
2272
|
-
function dynamicSchemaNode(field =
|
|
1850
|
+
function dynamicSchemaNode(field = "Type_Of_Legal_Problem") {
|
|
2273
1851
|
return {
|
|
2274
|
-
$cmp:
|
|
2275
|
-
if:
|
|
1852
|
+
$cmp: "FormKitSchema",
|
|
1853
|
+
if: "$get(" + field + ").value",
|
|
2276
1854
|
props: {
|
|
2277
|
-
schema:
|
|
2278
|
-
data:
|
|
2279
|
-
}
|
|
1855
|
+
schema: "$meta.dynamicSchema",
|
|
1856
|
+
data: "$buildData($meta)",
|
|
1857
|
+
},
|
|
2280
1858
|
}
|
|
2281
1859
|
}
|
|
2282
1860
|
|
|
2283
1861
|
const formAnchorDefaults = {
|
|
2284
|
-
$el:
|
|
1862
|
+
$el: "div",
|
|
2285
1863
|
children: [
|
|
2286
1864
|
{
|
|
2287
|
-
$el:
|
|
1865
|
+
$el: "div",
|
|
2288
1866
|
attrs: {
|
|
2289
|
-
id:
|
|
2290
|
-
class:
|
|
2291
|
-
style: { top:
|
|
2292
|
-
}
|
|
2293
|
-
}
|
|
1867
|
+
id: "form-anchor",
|
|
1868
|
+
class: "t-absolute",
|
|
1869
|
+
style: { top: "-30px", left: 0 },
|
|
1870
|
+
},
|
|
1871
|
+
},
|
|
2294
1872
|
],
|
|
2295
1873
|
attrs: {
|
|
2296
|
-
class:
|
|
2297
|
-
}
|
|
1874
|
+
class: "t-relative",
|
|
1875
|
+
},
|
|
2298
1876
|
};
|
|
2299
1877
|
|
|
2300
1878
|
function formAnchor(updates) {
|
|
2301
|
-
return merge(
|
|
2302
|
-
formAnchorDefaults,
|
|
2303
|
-
updates
|
|
2304
|
-
)
|
|
1879
|
+
return merge(formAnchorDefaults, updates)
|
|
2305
1880
|
}
|
|
2306
1881
|
|
|
2307
1882
|
const progressBarDefaults = {
|
|
2308
|
-
$el:
|
|
1883
|
+
$el: "div",
|
|
2309
1884
|
attrs: {
|
|
2310
|
-
class:
|
|
1885
|
+
class: "t-mt-7 t-mb-5 t-w-full t-flex t-flex-col t-justify-center t-items-center",
|
|
2311
1886
|
style: {
|
|
2312
|
-
if:
|
|
2313
|
-
then:
|
|
1887
|
+
if: "$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())",
|
|
1888
|
+
then: "display: none",
|
|
2314
1889
|
},
|
|
2315
1890
|
},
|
|
2316
1891
|
children: [
|
|
2317
1892
|
{
|
|
2318
|
-
$el:
|
|
1893
|
+
$el: "div",
|
|
2319
1894
|
attrs: {
|
|
2320
|
-
class:
|
|
1895
|
+
class: "t-flex t-justify-center",
|
|
2321
1896
|
},
|
|
2322
1897
|
children: [
|
|
2323
1898
|
{
|
|
2324
|
-
$el:
|
|
1899
|
+
$el: "span",
|
|
2325
1900
|
attrs: {
|
|
2326
|
-
id:
|
|
2327
|
-
class:
|
|
1901
|
+
id: "progress-bar-text",
|
|
1902
|
+
class: "t-text-sm t-mb-1",
|
|
2328
1903
|
},
|
|
2329
|
-
children: [
|
|
2330
|
-
"0% Complete"
|
|
2331
|
-
]
|
|
1904
|
+
children: ["0% Complete"],
|
|
2332
1905
|
},
|
|
2333
|
-
]
|
|
1906
|
+
],
|
|
2334
1907
|
},
|
|
2335
1908
|
{
|
|
2336
|
-
$el:
|
|
1909
|
+
$el: "div",
|
|
2337
1910
|
attrs: {
|
|
2338
|
-
class:
|
|
1911
|
+
class: "t-bg-gray-100 t-w-9/12 t-rounded",
|
|
2339
1912
|
},
|
|
2340
1913
|
children: [
|
|
2341
1914
|
{
|
|
2342
|
-
$el:
|
|
1915
|
+
$el: "div",
|
|
2343
1916
|
attrs: {
|
|
2344
|
-
id:
|
|
2345
|
-
class:
|
|
1917
|
+
id: "progress-bar",
|
|
1918
|
+
class:
|
|
1919
|
+
"t-flex t-flex-col t-justify-center t-text-center t-whitespace-nowrap t-w-[10%] t-h-1.5 t-rounded t-text-white t-bg-[#007bff]",
|
|
2346
1920
|
style: {
|
|
2347
|
-
transition:
|
|
1921
|
+
transition: "width 0.5s ease",
|
|
2348
1922
|
},
|
|
2349
1923
|
},
|
|
2350
|
-
}
|
|
2351
|
-
]
|
|
2352
|
-
}
|
|
2353
|
-
]
|
|
1924
|
+
},
|
|
1925
|
+
],
|
|
1926
|
+
},
|
|
1927
|
+
],
|
|
2354
1928
|
};
|
|
2355
1929
|
|
|
2356
1930
|
function progressBar(updates) {
|
|
2357
|
-
return merge(
|
|
2358
|
-
progressBarDefaults,
|
|
2359
|
-
updates
|
|
2360
|
-
)
|
|
1931
|
+
return merge(progressBarDefaults, updates)
|
|
2361
1932
|
}
|
|
2362
1933
|
|
|
2363
1934
|
function headlineDefaults(updates = {}) {
|
|
2364
1935
|
return {
|
|
2365
|
-
$el:
|
|
1936
|
+
$el: "h1",
|
|
2366
1937
|
attrs: {
|
|
2367
|
-
class:
|
|
2368
|
-
|
|
1938
|
+
class:
|
|
1939
|
+
"t-flex t-justify-center t-text-center !t-text-[2rem] t-font-semibold t-pt-5 t-px-7 md:t-px-3" +
|
|
1940
|
+
" " +
|
|
1941
|
+
(updates.headlineClass || ""),
|
|
1942
|
+
},
|
|
2369
1943
|
}
|
|
2370
1944
|
}
|
|
2371
1945
|
|
|
2372
1946
|
function headline(updates = {}) {
|
|
2373
|
-
return merge(
|
|
2374
|
-
headlineDefaults(updates),
|
|
2375
|
-
updates
|
|
2376
|
-
)
|
|
1947
|
+
return merge(headlineDefaults(updates), updates)
|
|
2377
1948
|
}
|
|
2378
1949
|
|
|
2379
1950
|
function subHeadlineDefaults(updates = {}) {
|
|
2380
1951
|
return {
|
|
2381
|
-
$el:
|
|
1952
|
+
$el: "h3",
|
|
2382
1953
|
attrs: {
|
|
2383
|
-
class:
|
|
2384
|
-
|
|
1954
|
+
class:
|
|
1955
|
+
"t-flex t-justify-center t-text-center !t-text-[1.2rem] t-font-medium t-text-blue-500 t-px-10" +
|
|
1956
|
+
" " +
|
|
1957
|
+
(updates.subheadlineClass || ""),
|
|
1958
|
+
},
|
|
2385
1959
|
}
|
|
2386
1960
|
}
|
|
2387
1961
|
|
|
2388
1962
|
function subHeadline(updates = {}) {
|
|
2389
|
-
return merge(
|
|
2390
|
-
subHeadlineDefaults(updates),
|
|
2391
|
-
updates
|
|
2392
|
-
)
|
|
1963
|
+
return merge(subHeadlineDefaults(updates), updates)
|
|
2393
1964
|
}
|
|
2394
1965
|
|
|
2395
1966
|
const hiddenInputsBase = [
|
|
2396
1967
|
{
|
|
2397
|
-
$formkit:
|
|
1968
|
+
$formkit: "hidden",
|
|
2398
1969
|
name: "gclid",
|
|
2399
|
-
value: null
|
|
1970
|
+
value: null,
|
|
2400
1971
|
},
|
|
2401
1972
|
{
|
|
2402
|
-
$formkit:
|
|
1973
|
+
$formkit: "hidden",
|
|
2403
1974
|
name: "campaignid",
|
|
2404
|
-
value: null
|
|
1975
|
+
value: null,
|
|
2405
1976
|
},
|
|
2406
1977
|
{
|
|
2407
|
-
$formkit:
|
|
1978
|
+
$formkit: "hidden",
|
|
2408
1979
|
name: "s",
|
|
2409
|
-
value: null
|
|
2410
|
-
}
|
|
1980
|
+
value: null,
|
|
1981
|
+
},
|
|
2411
1982
|
];
|
|
2412
1983
|
|
|
2413
1984
|
const hiddenInputsHomeImprovement = [
|
|
2414
1985
|
{
|
|
2415
|
-
$formkit:
|
|
1986
|
+
$formkit: "hidden",
|
|
2416
1987
|
name: "vertical",
|
|
2417
|
-
value: "HomeImprovement"
|
|
1988
|
+
value: "HomeImprovement",
|
|
2418
1989
|
},
|
|
2419
1990
|
{
|
|
2420
|
-
$formkit:
|
|
1991
|
+
$formkit: "hidden",
|
|
2421
1992
|
name: "TCPA_Language",
|
|
2422
|
-
value: "$meta.tcpaLanguage"
|
|
1993
|
+
value: "$meta.tcpaLanguage",
|
|
2423
1994
|
},
|
|
2424
|
-
...hiddenInputsBase
|
|
1995
|
+
...hiddenInputsBase,
|
|
2425
1996
|
];
|
|
2426
1997
|
|
|
2427
1998
|
const homeImprovementRedirectMapDefaults = {
|
|
2428
|
-
|
|
1999
|
+
"*": HomeImprovementRedirectUrl(),
|
|
2429
2000
|
};
|
|
2430
2001
|
|
|
2431
|
-
|
|
2432
2002
|
function homeImprovementRedirectMap(updates) {
|
|
2433
|
-
return merge(
|
|
2434
|
-
homeImprovementRedirectMapDefaults,
|
|
2435
|
-
updates
|
|
2436
|
-
)
|
|
2003
|
+
return merge(homeImprovementRedirectMapDefaults, updates)
|
|
2437
2004
|
}
|
|
2438
2005
|
|
|
2439
|
-
|
|
2440
2006
|
// ------ Home Improvement
|
|
2441
2007
|
|
|
2442
|
-
|
|
2443
2008
|
const HomeImprovementCommentsPlaceholders = {
|
|
2444
|
-
|
|
2445
|
-
|
|
2446
|
-
|
|
2447
|
-
|
|
2448
|
-
|
|
2449
|
-
|
|
2450
|
-
|
|
2451
|
-
|
|
2452
|
-
|
|
2453
|
-
|
|
2454
|
-
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
|
|
2458
|
-
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
|
|
2476
|
-
|
|
2477
|
-
|
|
2478
|
-
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
|
|
2483
|
-
|
|
2484
|
-
|
|
2485
|
-
|
|
2486
|
-
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
|
|
2495
|
-
|
|
2496
|
-
|
|
2497
|
-
|
|
2009
|
+
Additions: 'Example: "I would like to add a sunroom to my home"',
|
|
2010
|
+
Appliances: 'Example: "I need to repair a dishwasher"',
|
|
2011
|
+
Appraisals: 'Example: "I need to get my home appraised"',
|
|
2012
|
+
Cabinets: 'Example: "I want to install new kitchen cabinets"',
|
|
2013
|
+
Carpentry: 'Example: "I need someone to build custom shelves"',
|
|
2014
|
+
Carpets: 'Example: "I want to replace the carpets in my living room"',
|
|
2015
|
+
Cleaning: 'Example: "I need a professional cleaning service for my home"',
|
|
2016
|
+
Countertops: 'Example: "I want to install granite countertops in my kitchen"',
|
|
2017
|
+
"Decks and Porches": 'Example: "I want to build a new deck in my backyard"',
|
|
2018
|
+
Demolition: 'Example: "I need to demolish a wall in my home"',
|
|
2019
|
+
Doors: 'Example: "I want to replace the front door of my house"',
|
|
2020
|
+
Driveways: 'Example: "I need to repair my driveway"',
|
|
2021
|
+
"Drywall and Plaster": 'Example: "I need to repair a hole in my drywall"',
|
|
2022
|
+
Electrical: 'Example: "I need an electrician to install new light fixtures"',
|
|
2023
|
+
Fencing: 'Example: "I want to install a privacy fence in my backyard"',
|
|
2024
|
+
Flooring: 'Example: "I want to install hardwood flooring in my living room"',
|
|
2025
|
+
Foundations: 'Example: "I need to repair the foundation of my house"',
|
|
2026
|
+
"Garage Doors": 'Example: "I want to replace my garage door"',
|
|
2027
|
+
"General Contractors": 'Example: "I need a general contractor for a home renovation"',
|
|
2028
|
+
Gutters: 'Example: "I need to clean and repair my gutters"',
|
|
2029
|
+
Handyman: 'Example: "I need a handyman to fix various things around my house"',
|
|
2030
|
+
"Holiday Decorators": 'Example: "I want to hire someone to decorate my home for the holidays"',
|
|
2031
|
+
"Smart Home": 'Example: "I want to install a smart home automation system"',
|
|
2032
|
+
"Home Builders": 'Example: "I want to build a custom home"',
|
|
2033
|
+
"Home Inspection": 'Example: "I need a home inspection before buying a house"',
|
|
2034
|
+
"Home Organization": 'Example: "I need help organizing my closets and storage"',
|
|
2035
|
+
"Home Security": 'Example: "I want to install a home security system"',
|
|
2036
|
+
"Home Staging": 'Example: "I need a home staging service to prepare my house for sale"',
|
|
2037
|
+
"Home Theater": 'Example: "I want to set up a home theater system"',
|
|
2038
|
+
"Home Warranties": 'Example: "I want to purchase a home warranty"',
|
|
2039
|
+
"Hot Tubs": 'Example: "I want to install a hot tub in my backyard"',
|
|
2040
|
+
"Heating and Cooling": 'Example: "I need to repair my air conditioning unit"',
|
|
2041
|
+
Insulation: 'Example: "I want to improve the insulation in my home"',
|
|
2042
|
+
"Junk Removal": 'Example: "I need a service to remove junk and debris from my property"',
|
|
2043
|
+
Landscaping: 'Example: "I want to redesign my backyard landscaping"',
|
|
2044
|
+
Locksmiths: 'Example: "I need a locksmith to change the locks on my doors"',
|
|
2045
|
+
"Masonry and Concrete": 'Example: "I need to repair a cracked concrete driveway"',
|
|
2046
|
+
Restoration: 'Example: "I need water damage restoration services"',
|
|
2047
|
+
Moving: 'Example: "I need a moving company to help me relocate"',
|
|
2048
|
+
Painting: 'Example: "I want to paint the interior walls of my house"',
|
|
2049
|
+
"Pest Control": 'Example: "I need pest control services for my home"',
|
|
2050
|
+
Pools: 'Example: "I want to install a swimming pool in my backyard"',
|
|
2051
|
+
Plumbing: 'Example: "I need a plumber to fix a leaky faucet"',
|
|
2052
|
+
"Pressure Washing": 'Example: "I want to pressure wash the exterior of my house"',
|
|
2053
|
+
Remodeling: 'Example: "I want to remodel my kitchen"',
|
|
2054
|
+
Roofing: 'Example: "I need to repair a leaky roof"',
|
|
2055
|
+
Sheds: 'Example: "I want to build a storage shed in my backyard"',
|
|
2056
|
+
Siding: 'Example: "I want to replace the siding on my house"',
|
|
2057
|
+
Solar: 'Example: "I want to install solar panels on my roof"',
|
|
2058
|
+
Tiling: 'Example: "I want to install new tiles in my bathroom"',
|
|
2059
|
+
"Walk-in Tubs": 'Example: "I want to install a walk-in tub in my bathroom"',
|
|
2060
|
+
Waterproofing: 'Example: "I need to waterproof my basement"',
|
|
2061
|
+
"Window Cleaning": 'Example: "I need a professional window cleaning service"',
|
|
2062
|
+
Windows: 'Example: "I want to replace 3 windows in my house"',
|
|
2498
2063
|
};
|
|
2499
2064
|
|
|
2500
2065
|
const HomeImprovementFinalHeadlines = {
|
|
@@ -2612,277 +2177,102 @@ const HomeImprovementFinalSubHeadlines = {
|
|
|
2612
2177
|
};
|
|
2613
2178
|
|
|
2614
2179
|
const nextStepsHomeImprovementDefault = [
|
|
2615
|
-
|
|
2616
|
-
|
|
2617
|
-
|
|
2618
|
-
|
|
2619
|
-
|
|
2180
|
+
"comments",
|
|
2181
|
+
"timeframe",
|
|
2182
|
+
"ownHome",
|
|
2183
|
+
"zipcode",
|
|
2184
|
+
"address",
|
|
2620
2185
|
// 'homeImprovementCrossSells',
|
|
2621
|
-
|
|
2622
|
-
|
|
2186
|
+
"firstAndLast",
|
|
2187
|
+
"contactInfo",
|
|
2623
2188
|
];
|
|
2624
2189
|
|
|
2625
2190
|
const nextStepsMapGeneralHomeImprovement = {
|
|
2626
2191
|
values: {
|
|
2627
|
-
|
|
2628
|
-
|
|
2629
|
-
|
|
2630
|
-
|
|
2631
|
-
|
|
2632
|
-
],
|
|
2633
|
-
|
|
2634
|
-
|
|
2635
|
-
|
|
2636
|
-
|
|
2192
|
+
Category: {
|
|
2193
|
+
Additions: ["additionsSubType", "constructionAreaSize", ...nextStepsHomeImprovementDefault],
|
|
2194
|
+
Appliances: ["homeImprovementWorkType", "applianceType", ...nextStepsHomeImprovementDefault],
|
|
2195
|
+
Appraisals: [...nextStepsHomeImprovementDefault],
|
|
2196
|
+
Cabinets: ["cabinetWorkType", ...nextStepsHomeImprovementDefault],
|
|
2197
|
+
Carpentry: ["carpentrySubtype", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2198
|
+
Carpets: ["carpetWorkType", ...nextStepsHomeImprovementDefault],
|
|
2199
|
+
Cleaning: ["cleaningSubtype", ...nextStepsHomeImprovementDefault],
|
|
2200
|
+
Countertops: ["countertopMaterial", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2201
|
+
"Decks and Porches": ["deckWorkType", ...nextStepsHomeImprovementDefault],
|
|
2202
|
+
Demolition: ["demolitionSubtype", ...nextStepsHomeImprovementDefault],
|
|
2203
|
+
Doors: ["doorSubtype", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2204
|
+
Driveways: ["drivewayWorkType", "drivewayMaterial", ...nextStepsHomeImprovementDefault],
|
|
2205
|
+
"Drywall and Plaster": ["wallSurfaceType", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2206
|
+
Electrical: ["electricalSubtype", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2207
|
+
Fencing: ["fenceMaterial", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2208
|
+
Flooring: ["flooringMaterial", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2209
|
+
Foundations: ["homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2210
|
+
"Garage Doors": ["homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2211
|
+
"General Contractors": ["generalContractorSubtype", ...nextStepsHomeImprovementDefault],
|
|
2212
|
+
Gutters: ["gutterMaterial", "guttersWorkType", ...nextStepsHomeImprovementDefault],
|
|
2213
|
+
Handyman: [...nextStepsHomeImprovementDefault],
|
|
2214
|
+
"Holiday Decorators": [...nextStepsHomeImprovementDefault],
|
|
2215
|
+
"Smart Home": ["smartHomeSubtype", ...nextStepsHomeImprovementDefault],
|
|
2216
|
+
"Home Builders": [...nextStepsHomeImprovementDefault],
|
|
2217
|
+
"Home Inspection": [...nextStepsHomeImprovementDefault],
|
|
2218
|
+
"Home Organization": ["homeOrganizationSubtype", ...nextStepsHomeImprovementDefault],
|
|
2219
|
+
"Home Security": [...nextStepsHomeImprovementDefault],
|
|
2220
|
+
"Home Staging": ["numberOfRooms", ...nextStepsHomeImprovementDefault],
|
|
2221
|
+
"Home Theater": ["homeTheaterSubtype", ...nextStepsHomeImprovementDefault],
|
|
2222
|
+
"Home Warranties": [...nextStepsHomeImprovementDefault],
|
|
2223
|
+
"Hot Tubs": ["homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2224
|
+
"Heating and Cooling": [
|
|
2225
|
+
"heatingCoolingSubtype",
|
|
2226
|
+
"fuelSource",
|
|
2227
|
+
"homeImprovementWorkType",
|
|
2228
|
+
...nextStepsHomeImprovementDefault,
|
|
2637
2229
|
],
|
|
2638
|
-
|
|
2639
|
-
|
|
2230
|
+
Insulation: ["insulationSubtype", ...nextStepsHomeImprovementDefault],
|
|
2231
|
+
"Junk Removal": [...nextStepsHomeImprovementDefault],
|
|
2232
|
+
Landscaping: ["landscapingSubtype", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2233
|
+
Locksmiths: [...nextStepsHomeImprovementDefault],
|
|
2234
|
+
"Masonry and Concrete": [
|
|
2235
|
+
"masonrySubtype",
|
|
2236
|
+
"masonryMaterial",
|
|
2237
|
+
"masonryWorkType",
|
|
2238
|
+
...nextStepsHomeImprovementDefault,
|
|
2640
2239
|
],
|
|
2641
|
-
|
|
2642
|
-
|
|
2643
|
-
|
|
2644
|
-
],
|
|
2645
|
-
|
|
2646
|
-
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
],
|
|
2650
|
-
|
|
2651
|
-
|
|
2652
|
-
|
|
2653
|
-
],
|
|
2654
|
-
|
|
2655
|
-
|
|
2656
|
-
|
|
2657
|
-
],
|
|
2658
|
-
'Countertops': [
|
|
2659
|
-
'countertopMaterial',
|
|
2660
|
-
'homeImprovementWorkType',
|
|
2661
|
-
...nextStepsHomeImprovementDefault
|
|
2662
|
-
],
|
|
2663
|
-
'Decks and Porches': [
|
|
2664
|
-
'deckWorkType',
|
|
2665
|
-
...nextStepsHomeImprovementDefault
|
|
2666
|
-
],
|
|
2667
|
-
'Demolition': [
|
|
2668
|
-
'demolitionSubtype',
|
|
2669
|
-
...nextStepsHomeImprovementDefault
|
|
2670
|
-
],
|
|
2671
|
-
'Doors': [
|
|
2672
|
-
'doorSubtype',
|
|
2673
|
-
'homeImprovementWorkType',
|
|
2674
|
-
...nextStepsHomeImprovementDefault
|
|
2675
|
-
],
|
|
2676
|
-
'Driveways': [
|
|
2677
|
-
'drivewayWorkType',
|
|
2678
|
-
'drivewayMaterial',
|
|
2679
|
-
...nextStepsHomeImprovementDefault
|
|
2680
|
-
],
|
|
2681
|
-
'Drywall and Plaster': [
|
|
2682
|
-
'wallSurfaceType',
|
|
2683
|
-
'homeImprovementWorkType',
|
|
2684
|
-
...nextStepsHomeImprovementDefault
|
|
2685
|
-
],
|
|
2686
|
-
'Electrical': [
|
|
2687
|
-
'electricalSubtype',
|
|
2688
|
-
'homeImprovementWorkType',
|
|
2689
|
-
...nextStepsHomeImprovementDefault
|
|
2690
|
-
],
|
|
2691
|
-
'Fencing': [
|
|
2692
|
-
'fenceMaterial',
|
|
2693
|
-
'homeImprovementWorkType',
|
|
2694
|
-
...nextStepsHomeImprovementDefault
|
|
2695
|
-
],
|
|
2696
|
-
'Flooring': [
|
|
2697
|
-
'flooringMaterial',
|
|
2698
|
-
'homeImprovementWorkType',
|
|
2699
|
-
...nextStepsHomeImprovementDefault
|
|
2700
|
-
],
|
|
2701
|
-
'Foundations': [
|
|
2702
|
-
'homeImprovementWorkType',
|
|
2703
|
-
...nextStepsHomeImprovementDefault
|
|
2704
|
-
],
|
|
2705
|
-
'Garage Doors': [
|
|
2706
|
-
'homeImprovementWorkType',
|
|
2707
|
-
...nextStepsHomeImprovementDefault
|
|
2708
|
-
],
|
|
2709
|
-
'General Contractors': [
|
|
2710
|
-
'generalContractorSubtype',
|
|
2711
|
-
...nextStepsHomeImprovementDefault
|
|
2712
|
-
],
|
|
2713
|
-
'Gutters': [
|
|
2714
|
-
'gutterMaterial',
|
|
2715
|
-
'guttersWorkType',
|
|
2716
|
-
...nextStepsHomeImprovementDefault
|
|
2717
|
-
],
|
|
2718
|
-
'Handyman': [
|
|
2719
|
-
...nextStepsHomeImprovementDefault
|
|
2720
|
-
],
|
|
2721
|
-
'Holiday Decorators': [
|
|
2722
|
-
...nextStepsHomeImprovementDefault
|
|
2723
|
-
],
|
|
2724
|
-
'Smart Home': [
|
|
2725
|
-
'smartHomeSubtype',
|
|
2726
|
-
...nextStepsHomeImprovementDefault
|
|
2727
|
-
],
|
|
2728
|
-
'Home Builders': [
|
|
2729
|
-
...nextStepsHomeImprovementDefault
|
|
2730
|
-
],
|
|
2731
|
-
'Home Inspection': [
|
|
2732
|
-
...nextStepsHomeImprovementDefault
|
|
2733
|
-
],
|
|
2734
|
-
'Home Organization': [
|
|
2735
|
-
'homeOrganizationSubtype',
|
|
2736
|
-
...nextStepsHomeImprovementDefault
|
|
2737
|
-
],
|
|
2738
|
-
'Home Security': [
|
|
2739
|
-
...nextStepsHomeImprovementDefault
|
|
2740
|
-
],
|
|
2741
|
-
'Home Staging': [
|
|
2742
|
-
'numberOfRooms',
|
|
2743
|
-
...nextStepsHomeImprovementDefault
|
|
2744
|
-
],
|
|
2745
|
-
'Home Theater': [
|
|
2746
|
-
'homeTheaterSubtype',
|
|
2747
|
-
...nextStepsHomeImprovementDefault
|
|
2748
|
-
],
|
|
2749
|
-
'Home Warranties': [
|
|
2750
|
-
...nextStepsHomeImprovementDefault
|
|
2751
|
-
],
|
|
2752
|
-
'Hot Tubs': [
|
|
2753
|
-
'homeImprovementWorkType',
|
|
2754
|
-
...nextStepsHomeImprovementDefault
|
|
2755
|
-
],
|
|
2756
|
-
'Heating and Cooling': [
|
|
2757
|
-
'heatingCoolingSubtype',
|
|
2758
|
-
'fuelSource',
|
|
2759
|
-
'homeImprovementWorkType',
|
|
2760
|
-
...nextStepsHomeImprovementDefault
|
|
2761
|
-
],
|
|
2762
|
-
'Insulation': [
|
|
2763
|
-
'insulationSubtype',
|
|
2764
|
-
...nextStepsHomeImprovementDefault
|
|
2765
|
-
],
|
|
2766
|
-
'Junk Removal': [
|
|
2767
|
-
...nextStepsHomeImprovementDefault
|
|
2768
|
-
],
|
|
2769
|
-
'Landscaping': [
|
|
2770
|
-
'landscapingSubtype',
|
|
2771
|
-
'homeImprovementWorkType',
|
|
2772
|
-
...nextStepsHomeImprovementDefault
|
|
2773
|
-
],
|
|
2774
|
-
'Locksmiths': [
|
|
2775
|
-
...nextStepsHomeImprovementDefault
|
|
2776
|
-
],
|
|
2777
|
-
'Masonry and Concrete': [
|
|
2778
|
-
'masonrySubtype',
|
|
2779
|
-
'masonryMaterial',
|
|
2780
|
-
'masonryWorkType',
|
|
2781
|
-
...nextStepsHomeImprovementDefault
|
|
2782
|
-
],
|
|
2783
|
-
'Restoration': [
|
|
2784
|
-
'restorationSubtype',
|
|
2785
|
-
...nextStepsHomeImprovementDefault
|
|
2786
|
-
],
|
|
2787
|
-
'Moving': [
|
|
2788
|
-
'movingFromAddress',
|
|
2789
|
-
'movingToAddress',
|
|
2790
|
-
'movingHouseholdSize',
|
|
2791
|
-
...nextStepsHomeImprovementDefault
|
|
2792
|
-
],
|
|
2793
|
-
'Painting': [
|
|
2794
|
-
'paintingSubtype',
|
|
2795
|
-
'paintingRooms',
|
|
2796
|
-
...nextStepsHomeImprovementDefault
|
|
2797
|
-
],
|
|
2798
|
-
'Pest Control': [
|
|
2799
|
-
'pestControlSubtype',
|
|
2800
|
-
...nextStepsHomeImprovementDefault
|
|
2801
|
-
],
|
|
2802
|
-
'Pools': [
|
|
2803
|
-
'poolsWorkType',
|
|
2804
|
-
'poolsSubtype',
|
|
2805
|
-
...nextStepsHomeImprovementDefault
|
|
2806
|
-
],
|
|
2807
|
-
'Plumbing': [
|
|
2808
|
-
'plumbingSubtype',
|
|
2809
|
-
'homeImprovementWorkType',
|
|
2810
|
-
...nextStepsHomeImprovementDefault
|
|
2811
|
-
],
|
|
2812
|
-
'Pressure Washing': [
|
|
2813
|
-
...nextStepsHomeImprovementDefault
|
|
2814
|
-
],
|
|
2815
|
-
'Remodeling': [
|
|
2816
|
-
'remodelingSubtype',
|
|
2817
|
-
...nextStepsHomeImprovementDefault
|
|
2818
|
-
],
|
|
2819
|
-
'Roofing': [
|
|
2820
|
-
'roofingWorkType',
|
|
2821
|
-
'roofingMaterial',
|
|
2822
|
-
...nextStepsHomeImprovementDefault
|
|
2823
|
-
],
|
|
2824
|
-
'Sheds': [
|
|
2825
|
-
'homeImprovementWorkType',
|
|
2826
|
-
...nextStepsHomeImprovementDefault
|
|
2827
|
-
],
|
|
2828
|
-
'Siding': [
|
|
2829
|
-
'sidingMaterial',
|
|
2830
|
-
'homeImprovementWorkType',
|
|
2831
|
-
...nextStepsHomeImprovementDefault
|
|
2832
|
-
],
|
|
2833
|
-
'Solar': [
|
|
2834
|
-
'homeImprovementWorkType',
|
|
2835
|
-
...nextStepsHomeImprovementDefault
|
|
2836
|
-
],
|
|
2837
|
-
'Tiling': [
|
|
2838
|
-
'tilingSubtype',
|
|
2839
|
-
'homeImprovementWorkType',
|
|
2840
|
-
...nextStepsHomeImprovementDefault
|
|
2841
|
-
],
|
|
2842
|
-
'Walk-in Tubs': [
|
|
2843
|
-
...nextStepsHomeImprovementDefault
|
|
2844
|
-
],
|
|
2845
|
-
'Waterproofing': [
|
|
2846
|
-
'waterproofingSubtype',
|
|
2847
|
-
...nextStepsHomeImprovementDefault
|
|
2848
|
-
],
|
|
2849
|
-
'Window Cleaning': [
|
|
2850
|
-
...nextStepsHomeImprovementDefault
|
|
2851
|
-
],
|
|
2852
|
-
'Windows': [
|
|
2853
|
-
'windowsWorkType',
|
|
2854
|
-
'windowsSubtype',
|
|
2855
|
-
'numberOfWindows',
|
|
2856
|
-
...nextStepsHomeImprovementDefault
|
|
2857
|
-
]
|
|
2240
|
+
Restoration: ["restorationSubtype", ...nextStepsHomeImprovementDefault],
|
|
2241
|
+
Moving: ["movingFromAddress", "movingToAddress", "movingHouseholdSize", ...nextStepsHomeImprovementDefault],
|
|
2242
|
+
Painting: ["paintingSubtype", "paintingRooms", ...nextStepsHomeImprovementDefault],
|
|
2243
|
+
"Pest Control": ["pestControlSubtype", ...nextStepsHomeImprovementDefault],
|
|
2244
|
+
Pools: ["poolsWorkType", "poolsSubtype", ...nextStepsHomeImprovementDefault],
|
|
2245
|
+
Plumbing: ["plumbingSubtype", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2246
|
+
"Pressure Washing": [...nextStepsHomeImprovementDefault],
|
|
2247
|
+
Remodeling: ["remodelingSubtype", ...nextStepsHomeImprovementDefault],
|
|
2248
|
+
Roofing: ["roofingWorkType", "roofingMaterial", ...nextStepsHomeImprovementDefault],
|
|
2249
|
+
Sheds: ["homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2250
|
+
Siding: ["sidingMaterial", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2251
|
+
Solar: ["homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2252
|
+
Tiling: ["tilingSubtype", "homeImprovementWorkType", ...nextStepsHomeImprovementDefault],
|
|
2253
|
+
"Walk-in Tubs": [...nextStepsHomeImprovementDefault],
|
|
2254
|
+
Waterproofing: ["waterproofingSubtype", ...nextStepsHomeImprovementDefault],
|
|
2255
|
+
"Window Cleaning": [...nextStepsHomeImprovementDefault],
|
|
2256
|
+
Windows: ["windowsWorkType", "windowsSubtype", "numberOfWindows", ...nextStepsHomeImprovementDefault],
|
|
2858
2257
|
},
|
|
2859
|
-
|
|
2860
|
-
}
|
|
2258
|
+
"*": nextStepsHomeImprovementDefault,
|
|
2259
|
+
},
|
|
2861
2260
|
};
|
|
2862
2261
|
|
|
2863
2262
|
const nextStepsMapPainting = {
|
|
2864
2263
|
values: {
|
|
2865
|
-
|
|
2866
|
-
|
|
2867
|
-
|
|
2868
|
-
|
|
2869
|
-
|
|
2870
|
-
|
|
2871
|
-
|
|
2872
|
-
|
|
2873
|
-
|
|
2874
|
-
|
|
2875
|
-
|
|
2876
|
-
|
|
2877
|
-
'paintingRooms',
|
|
2878
|
-
...nextStepsHomeImprovementDefault
|
|
2879
|
-
],
|
|
2880
|
-
'Deck': nextStepsHomeImprovementDefault,
|
|
2881
|
-
'Shed': nextStepsHomeImprovementDefault,
|
|
2882
|
-
'Cabinets': nextStepsHomeImprovementDefault,
|
|
2883
|
-
'Not Sure or Other': nextStepsHomeImprovementDefault,
|
|
2884
|
-
}
|
|
2885
|
-
}
|
|
2264
|
+
Painting_Subtype: {
|
|
2265
|
+
"Whole Exterior": nextStepsHomeImprovementDefault,
|
|
2266
|
+
"Exterior Touch-up": nextStepsHomeImprovementDefault,
|
|
2267
|
+
"Interior Rooms": ["paintingRooms", ...nextStepsHomeImprovementDefault],
|
|
2268
|
+
"Interior Touch-up": ["paintingRooms", ...nextStepsHomeImprovementDefault],
|
|
2269
|
+
Ceilings: ["paintingRooms", ...nextStepsHomeImprovementDefault],
|
|
2270
|
+
Deck: nextStepsHomeImprovementDefault,
|
|
2271
|
+
Shed: nextStepsHomeImprovementDefault,
|
|
2272
|
+
Cabinets: nextStepsHomeImprovementDefault,
|
|
2273
|
+
"Not Sure or Other": nextStepsHomeImprovementDefault,
|
|
2274
|
+
},
|
|
2275
|
+
},
|
|
2886
2276
|
};
|
|
2887
2277
|
|
|
2888
2278
|
const meta = defaultMetaPropsHomeImprovement();
|
|
@@ -2930,7 +2320,7 @@ meta.data.dynamicSchema = [
|
|
|
2930
2320
|
// steps.movingToAddress(),
|
|
2931
2321
|
// steps.movingHouseholdSize(),
|
|
2932
2322
|
paintingSubtype({
|
|
2933
|
-
nextStepMap: nextStepsMapPainting
|
|
2323
|
+
nextStepMap: nextStepsMapPainting,
|
|
2934
2324
|
}),
|
|
2935
2325
|
paintingRooms(),
|
|
2936
2326
|
pestControlSubtype(),
|
|
@@ -2949,15 +2339,15 @@ meta.data.dynamicSchema = [
|
|
|
2949
2339
|
// steps.plumbingCrossSellQuestions(),
|
|
2950
2340
|
commentsHeadline({
|
|
2951
2341
|
label: null,
|
|
2952
|
-
headline:
|
|
2953
|
-
headlineClass:
|
|
2954
|
-
}),
|
|
2342
|
+
headline: "Please briefly describe your project:",
|
|
2343
|
+
headlineClass: "!t-text-dark",
|
|
2344
|
+
}),
|
|
2955
2345
|
// steps.homeImprovementCrossSells({
|
|
2956
|
-
// headlineClass:
|
|
2346
|
+
// headlineClass: "!t-text-dark",
|
|
2957
2347
|
// nextStepMap: forms.nextStepsMapHomeImprovementCrossSells,
|
|
2958
2348
|
// }),
|
|
2959
2349
|
firstAndLastV3({
|
|
2960
|
-
headlineClass:
|
|
2350
|
+
headlineClass: "!t-text-dark",
|
|
2961
2351
|
}),
|
|
2962
2352
|
];
|
|
2963
2353
|
|
|
@@ -2965,47 +2355,47 @@ const schema = [
|
|
|
2965
2355
|
meta,
|
|
2966
2356
|
formAnchor(),
|
|
2967
2357
|
{
|
|
2968
|
-
$cmp:
|
|
2358
|
+
$cmp: "FormKit",
|
|
2969
2359
|
props: formProps({
|
|
2970
|
-
formId:
|
|
2360
|
+
formId: "generalHomeImprovement",
|
|
2971
2361
|
redirectMap: homeImprovementRedirectMap(),
|
|
2972
2362
|
// valueOverrideMap: forms.homeImprovementAllValueOverrideMap,
|
|
2973
|
-
// crossSellOptionMap: forms.homeImprovementCrossSellOptionMap
|
|
2363
|
+
// crossSellOptionMap: forms.homeImprovementCrossSellOptionMap,
|
|
2974
2364
|
}),
|
|
2975
2365
|
children: [
|
|
2976
2366
|
progressBar(),
|
|
2977
2367
|
headline({
|
|
2978
2368
|
children: '$urlParam("hl", "Get Started Here!")',
|
|
2979
|
-
if:
|
|
2369
|
+
if: "$activeStep === $firstStep()",
|
|
2980
2370
|
}),
|
|
2981
2371
|
subHeadline({
|
|
2982
2372
|
children: '$urlParam("shl", "Fast. Reliable. Local. Free")',
|
|
2983
|
-
if:
|
|
2373
|
+
if: "$activeStep === $firstStep()",
|
|
2984
2374
|
}),
|
|
2985
2375
|
...hiddenInputsHomeImprovement,
|
|
2986
2376
|
{
|
|
2987
|
-
$el:
|
|
2377
|
+
$el: "div",
|
|
2988
2378
|
attrs: {
|
|
2989
|
-
class:
|
|
2379
|
+
class: "form-body",
|
|
2990
2380
|
},
|
|
2991
2381
|
children: [
|
|
2992
2382
|
homeImprovementCategory({
|
|
2993
2383
|
nextOnInput: false,
|
|
2994
2384
|
nextStepMap: nextStepsMapGeneralHomeImprovement,
|
|
2995
|
-
headlineClass:
|
|
2385
|
+
headlineClass: "t-text-lg",
|
|
2996
2386
|
input: {
|
|
2997
|
-
placeholder:
|
|
2998
|
-
innerClass:
|
|
2999
|
-
}
|
|
2387
|
+
placeholder: "Select a Category",
|
|
2388
|
+
innerClass: "!t-max-w-[275px] md:!t-max-w-xl",
|
|
2389
|
+
},
|
|
3000
2390
|
}),
|
|
3001
|
-
dynamicSchemaNode(
|
|
2391
|
+
dynamicSchemaNode("Category"),
|
|
3002
2392
|
contactInfo(),
|
|
3003
2393
|
formNavigation(),
|
|
3004
|
-
formDetails()
|
|
3005
|
-
]
|
|
3006
|
-
}
|
|
3007
|
-
]
|
|
3008
|
-
}
|
|
2394
|
+
formDetails(),
|
|
2395
|
+
],
|
|
2396
|
+
},
|
|
2397
|
+
],
|
|
2398
|
+
},
|
|
3009
2399
|
];
|
|
3010
2400
|
|
|
3011
2401
|
export { schema as default };
|