bhl-forms 0.13.0 → 0.13.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bhl-forms.es.js +35 -35
- package/dist/bhl-forms.iife.js +4 -4
- package/dist/bhl-forms.modern.es.js +524 -522
- 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/applianceRepair.es.js +6 -6
- package/dist/forms/applianceRepair.iife.js +1 -1
- package/dist/forms/applianceRepairMinimal.es.js +6 -6
- package/dist/forms/applianceRepairMinimal.iife.js +1 -1
- package/dist/forms/applianceRepairMinimal.json +1 -1
- package/dist/forms/electrical.es.js +49 -291
- package/dist/forms/electrical.iife.js +1 -1
- package/dist/forms/electrical.json +1 -1
- package/dist/forms/generalContractors.es.js +6 -6
- package/dist/forms/generalContractors.iife.js +1 -1
- package/dist/forms/generalContractors.json +1 -1
- package/dist/forms/generalHomeImprovement.es.js +6 -6
- package/dist/forms/generalHomeImprovement.iife.js +1 -1
- package/dist/forms/generalHomeImprovement.json +1 -1
- package/dist/forms/generalHomeImprovementThankYou.es.js +6 -6
- package/dist/forms/generalHomeImprovementThankYou.iife.js +1 -1
- package/dist/forms/generalHomeImprovementThankYou.json +1 -1
- package/dist/forms/painting.es.js +6 -6
- package/dist/forms/painting.iife.js +1 -1
- package/dist/forms/painting.json +1 -1
- package/dist/forms/plumbing.es.js +50 -291
- package/dist/forms/plumbing.iife.js +1 -1
- package/dist/forms/plumbing.json +1 -1
- package/dist/forms/remodeling.es.js +6 -6
- package/dist/forms/remodeling.iife.js +1 -1
- package/dist/forms/remodeling.json +1 -1
- package/dist/forms/restoration.es.js +1553 -0
- package/dist/forms/restoration.iife.js +1 -0
- package/dist/forms/restoration.json +1 -0
- package/dist/forms/restorationCall.es.js +6 -6
- package/dist/forms/restorationCall.iife.js +1 -1
- package/dist/forms/restorationCall.json +1 -1
- package/dist/forms/roofing.es.js +49 -286
- package/dist/forms/roofing.iife.js +1 -1
- package/dist/forms/roofing.json +1 -1
- package/dist/forms/windows.es.js +6 -6
- package/dist/forms/windows.iife.js +1 -1
- package/dist/forms/windows.json +1 -1
- package/dist/main.css +1 -1
- package/package.json +1 -1
package/dist/forms/roofing.es.js
CHANGED
|
@@ -2,6 +2,10 @@ function merge() {
|
|
|
2
2
|
return Object.assign({}, ...arguments)
|
|
3
3
|
}
|
|
4
4
|
|
|
5
|
+
function HomeImprovementRedirectUrl() {
|
|
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
|
+
}
|
|
8
|
+
|
|
5
9
|
const DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC =
|
|
6
10
|
'$getKey($meta, "commentsPlaceholders." + $get(Category).value, $meta.defaultCommentsPlaceholder)';
|
|
7
11
|
const DEFAULT_FINAL_HEADLINE_DYNAMIC =
|
|
@@ -26,76 +30,6 @@ const ensureIds = (cfg) => {
|
|
|
26
30
|
return cfg
|
|
27
31
|
};
|
|
28
32
|
|
|
29
|
-
const radio = (updates) => {
|
|
30
|
-
ensureIds(updates);
|
|
31
|
-
return merge(
|
|
32
|
-
{
|
|
33
|
-
$formkit: "radio",
|
|
34
|
-
validation: "required",
|
|
35
|
-
validationMessages: {
|
|
36
|
-
required: "Field is required",
|
|
37
|
-
},
|
|
38
|
-
optionsClass: "t-pt-3 t-pl-1",
|
|
39
|
-
legendClass: "required",
|
|
40
|
-
},
|
|
41
|
-
updates
|
|
42
|
-
)
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
const sbsRadio = (updates) => {
|
|
46
|
-
updates.legendClass = "legend-left required";
|
|
47
|
-
updates.fieldsetClass = "$reset side-by-side";
|
|
48
|
-
updates.optionsClass = "t-pl-1";
|
|
49
|
-
updates.innerClass = "t-flex t-items-center";
|
|
50
|
-
updates.wrapperClass = "t-mb-3";
|
|
51
|
-
return radio(updates)
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
const verticalRadio = (updates) => {
|
|
55
|
-
updates.legendClass = "required";
|
|
56
|
-
updates.fieldsetClass = "$reset t-flex t-justify-center";
|
|
57
|
-
updates.optionsClass = "t-pl-2 t-pt-3";
|
|
58
|
-
updates.innerClass = "t-items-center";
|
|
59
|
-
updates.wrapperClass = "$reset t-flex t-cursor-pointer t-mb-3";
|
|
60
|
-
updates.optionClass = "t-pl-4 md:t-pl-12";
|
|
61
|
-
updates.messagesClass = "t-flex t-justify-center";
|
|
62
|
-
return radio(updates)
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
const select = (updates) => {
|
|
66
|
-
ensureIds(updates);
|
|
67
|
-
return merge(
|
|
68
|
-
{
|
|
69
|
-
$formkit: "select",
|
|
70
|
-
placeholder: "Please Select",
|
|
71
|
-
validation: "required",
|
|
72
|
-
validationMessages: {
|
|
73
|
-
required: "Field is required",
|
|
74
|
-
},
|
|
75
|
-
inputClass: "t-bg-white",
|
|
76
|
-
labelClass: "required",
|
|
77
|
-
},
|
|
78
|
-
updates
|
|
79
|
-
)
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
const sbsSelect = (updates) => {
|
|
83
|
-
updates.labelClass = "required";
|
|
84
|
-
updates.wrapperClass = "side-by-side t-items-center";
|
|
85
|
-
updates.innerClass = "select-height-content";
|
|
86
|
-
updates.helpClass = "t-mt-2.5 md:t-text-right md:t-mt-[-5px]";
|
|
87
|
-
return select(updates)
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
const verticalSelect = (updates) => {
|
|
91
|
-
updates.labelClass = "required";
|
|
92
|
-
updates.wrapperClass = "t-flex t-justify-center";
|
|
93
|
-
updates.messagesClass = "t-flex t-justify-center";
|
|
94
|
-
updates.inputClass = "t-min-w-[150px] t-bg-white " + (updates.inputClass || "");
|
|
95
|
-
updates.helpClass = "t-mt-2.5 t-text-center";
|
|
96
|
-
return select(updates)
|
|
97
|
-
};
|
|
98
|
-
|
|
99
33
|
const text = (updates) => {
|
|
100
34
|
ensureIds(updates);
|
|
101
35
|
return merge(
|
|
@@ -124,31 +58,6 @@ const verticalText = (updates) => {
|
|
|
124
58
|
return text(updates)
|
|
125
59
|
};
|
|
126
60
|
|
|
127
|
-
// ------ Common Inputs
|
|
128
|
-
|
|
129
|
-
const address$1 = (scope, vertical, updates = {}) => {
|
|
130
|
-
const func = vertical ? verticalText : sbsText;
|
|
131
|
-
const label = vertical ? updates.label : "Street Address:";
|
|
132
|
-
return func({
|
|
133
|
-
label,
|
|
134
|
-
placeholder: "10 Example St",
|
|
135
|
-
name: scope ? scope + ":" + "Address" : "Address",
|
|
136
|
-
autocomplete: "street-address",
|
|
137
|
-
"data-tf-sensitive": "false",
|
|
138
|
-
minlength: 5,
|
|
139
|
-
maxlength: 100,
|
|
140
|
-
validation: [
|
|
141
|
-
["required"],
|
|
142
|
-
["matches", /^(?=.*\d)(?=.*[A-Za-z])(?=.*\s).{6,100}$/], // digit + space + letter, N chars
|
|
143
|
-
],
|
|
144
|
-
validationMessages: {
|
|
145
|
-
matches: "Invalid Address",
|
|
146
|
-
required: "Address is required",
|
|
147
|
-
},
|
|
148
|
-
...updates,
|
|
149
|
-
})
|
|
150
|
-
};
|
|
151
|
-
|
|
152
61
|
const emailFL = (scope, updates = {}) => {
|
|
153
62
|
return text({
|
|
154
63
|
$formkit: "FloatingLabelText",
|
|
@@ -252,100 +161,6 @@ const zipcode = (scope, vertical, updates = {}) => {
|
|
|
252
161
|
})
|
|
253
162
|
};
|
|
254
163
|
|
|
255
|
-
const TCPAConsent = (scope, updates = {}) => ({
|
|
256
|
-
$formkit: "checkbox",
|
|
257
|
-
label: "$meta.tcpaLanguage",
|
|
258
|
-
// Necessary to get links to work in the tcpa language
|
|
259
|
-
__raw__sectionsSchema: {
|
|
260
|
-
label: { attrs: { innerHTML: "$label" } },
|
|
261
|
-
},
|
|
262
|
-
name: scope ? scope + ":" + "TCPA_Opt_In" : "TCPA_Opt_In",
|
|
263
|
-
"data-tf-sensitive": "false",
|
|
264
|
-
validation: "required|accepted",
|
|
265
|
-
validationMessages: {
|
|
266
|
-
required: "Consent is required",
|
|
267
|
-
accepted: "Consent is required",
|
|
268
|
-
},
|
|
269
|
-
classes: {
|
|
270
|
-
outer: updates.outerClass ? updates.outerClass : "",
|
|
271
|
-
wrapper: updates.wrapperClass ? updates.wrapperClass : "",
|
|
272
|
-
messages: updates.messagesClass ? updates.messagesClass : "",
|
|
273
|
-
label:
|
|
274
|
-
"!t-text-[0.7rem] t-text-slate-500 t-font-normal !t-leading-[0.9rem]" +
|
|
275
|
-
(updates.labelClass ? " " + updates.labelClass : ""),
|
|
276
|
-
},
|
|
277
|
-
});
|
|
278
|
-
|
|
279
|
-
const timeframe$1 = (scope, vertical, updates = {}) => {
|
|
280
|
-
const func = vertical ? verticalRadio : sbsRadio;
|
|
281
|
-
const label = vertical ? updates.label : "What is the project timeframe?";
|
|
282
|
-
return func(
|
|
283
|
-
merge(
|
|
284
|
-
{
|
|
285
|
-
label,
|
|
286
|
-
name: scope ? scope + ":" + "Timeframe" : "Timeframe",
|
|
287
|
-
options: ["Immediate", "1-6 Months", "More than 6 Months"],
|
|
288
|
-
},
|
|
289
|
-
updates
|
|
290
|
-
)
|
|
291
|
-
)
|
|
292
|
-
};
|
|
293
|
-
|
|
294
|
-
const ownHome$1 = (scope, vertical, updates = {}) => {
|
|
295
|
-
const func = vertical ? verticalRadio : sbsRadio;
|
|
296
|
-
const label = vertical ? updates.label : "Do you own the home?";
|
|
297
|
-
return func(
|
|
298
|
-
merge(
|
|
299
|
-
{
|
|
300
|
-
label,
|
|
301
|
-
name: scope ? scope + ":" + "Own_Home" : "Own_Home",
|
|
302
|
-
options: ["Yes", "No", "No but authorized"],
|
|
303
|
-
},
|
|
304
|
-
updates
|
|
305
|
-
)
|
|
306
|
-
)
|
|
307
|
-
};
|
|
308
|
-
|
|
309
|
-
const roofingWorkType$1 = (scope, vertical, updates = {}) => {
|
|
310
|
-
const func = vertical ? verticalRadio : sbsRadio;
|
|
311
|
-
const label = vertical ? updates.label : "What type of work?";
|
|
312
|
-
return func(
|
|
313
|
-
merge(
|
|
314
|
-
{
|
|
315
|
-
label,
|
|
316
|
-
name: scope ? scope + ":" + "Roofing_Work_Type" : "Roofing_Work_Type",
|
|
317
|
-
options: ["Install or Replace Roof", "Repair Roof", "Ice Dams", "Gutters", "Not Sure or Other"],
|
|
318
|
-
},
|
|
319
|
-
updates
|
|
320
|
-
)
|
|
321
|
-
)
|
|
322
|
-
};
|
|
323
|
-
|
|
324
|
-
const roofingMaterial$1 = (scope, vertical, updates = {}) => {
|
|
325
|
-
const func = vertical ? verticalSelect : sbsSelect;
|
|
326
|
-
const label = vertical ? updates.label : "What roofing material?";
|
|
327
|
-
return func(
|
|
328
|
-
merge(
|
|
329
|
-
{
|
|
330
|
-
label,
|
|
331
|
-
name: scope ? scope + ":" + "Roofing_Material" : "Roofing_Material",
|
|
332
|
-
options: [
|
|
333
|
-
"Asphalt Shingle",
|
|
334
|
-
"Composite",
|
|
335
|
-
"Flat",
|
|
336
|
-
"Foam",
|
|
337
|
-
"Metal",
|
|
338
|
-
"Slate",
|
|
339
|
-
"Tile",
|
|
340
|
-
"Wood",
|
|
341
|
-
"Not Sure or Other",
|
|
342
|
-
],
|
|
343
|
-
},
|
|
344
|
-
updates
|
|
345
|
-
)
|
|
346
|
-
)
|
|
347
|
-
};
|
|
348
|
-
|
|
349
164
|
const NEXT_ON_ENTER = "$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))";
|
|
350
165
|
const NEXT_ON_INPUT = "$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))";
|
|
351
166
|
|
|
@@ -425,16 +240,23 @@ function secureIconStandalone(updates = {}) {
|
|
|
425
240
|
}
|
|
426
241
|
}
|
|
427
242
|
|
|
428
|
-
function
|
|
243
|
+
function tcpaLanguageStandalone(updates = {}) {
|
|
429
244
|
return {
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
"t-flex t-justify-center t-text-center t-text-lg sm:t-text-xl t-font-bold t-text-dark t-pb-5 t-pt-0 t-px-1" +
|
|
435
|
-
" " +
|
|
436
|
-
(updates.headlineClass || ""),
|
|
245
|
+
if: "$activeStep === $lastStep()",
|
|
246
|
+
style: {
|
|
247
|
+
if: "$activeStep !== $lastStep()",
|
|
248
|
+
then: "display: none;",
|
|
437
249
|
},
|
|
250
|
+
children: [
|
|
251
|
+
{
|
|
252
|
+
$el: "div",
|
|
253
|
+
attrs: {
|
|
254
|
+
class:
|
|
255
|
+
"!t-text-[0.7rem] t-text-slate-500 t-font-normal !t-leading-tight !t-pt-0 !t-pb-3 !t-max-w-[95%] !t-w-[96%] sm:!t-w-[70%] !t-mx-auto",
|
|
256
|
+
innerHTML: "$meta.tcpaLanguage",
|
|
257
|
+
},
|
|
258
|
+
},
|
|
259
|
+
],
|
|
438
260
|
}
|
|
439
261
|
}
|
|
440
262
|
|
|
@@ -553,38 +375,7 @@ function step(name, inputs, updates = {}) {
|
|
|
553
375
|
return merge(stepDefaults(name, stepKey), mergeUpdates)
|
|
554
376
|
}
|
|
555
377
|
|
|
556
|
-
|
|
557
|
-
function sqstep(name, input, defaultHeadline, updates = {}) {
|
|
558
|
-
if (typeof updates.nextOnInput === "undefined") {
|
|
559
|
-
updates.nextOnInput = true;
|
|
560
|
-
}
|
|
561
|
-
|
|
562
|
-
return step(
|
|
563
|
-
name,
|
|
564
|
-
[
|
|
565
|
-
verticalStepHeadline({
|
|
566
|
-
headline: updates.headline ?? defaultHeadline,
|
|
567
|
-
headlineClass: updates.headlineClass,
|
|
568
|
-
}),
|
|
569
|
-
...(Array.isArray(input) ? input : [input]),
|
|
570
|
-
],
|
|
571
|
-
updates
|
|
572
|
-
)
|
|
573
|
-
}
|
|
574
|
-
|
|
575
|
-
// ------ Common Steps
|
|
576
|
-
|
|
577
|
-
function address(updates = {}) {
|
|
578
|
-
updates.nextOnInput = typeof updates.nextOnInput === "undefined" ? false : updates.nextOnInput;
|
|
579
|
-
return sqstep(
|
|
580
|
-
"address",
|
|
581
|
-
address$1(updates.scope, true, updates.input),
|
|
582
|
-
"What is the street address of the home?",
|
|
583
|
-
updates
|
|
584
|
-
)
|
|
585
|
-
}
|
|
586
|
-
|
|
587
|
-
function contactInfoV2(updates = {}) {
|
|
378
|
+
function contactInfoNoTCPA(updates = {}) {
|
|
588
379
|
return step(
|
|
589
380
|
"contactInfo",
|
|
590
381
|
[
|
|
@@ -607,11 +398,6 @@ function contactInfoV2(updates = {}) {
|
|
|
607
398
|
}),
|
|
608
399
|
],
|
|
609
400
|
},
|
|
610
|
-
TCPAConsent(updates.scope, {
|
|
611
|
-
outerClass: "!t-flex !t-flex-col !t-justify-center !t-items-center",
|
|
612
|
-
wrapperClass: "t-w-[95%] sm:t-w-[80%]",
|
|
613
|
-
messagesClass: "t-w-[95%] sm:t-w-[80%]",
|
|
614
|
-
}),
|
|
615
401
|
],
|
|
616
402
|
{ nextOnEnter: false }
|
|
617
403
|
)
|
|
@@ -637,19 +423,6 @@ function firstAndLastV4(updates = {}) {
|
|
|
637
423
|
)
|
|
638
424
|
}
|
|
639
425
|
|
|
640
|
-
function timeframe(updates = {}) {
|
|
641
|
-
return sqstep(
|
|
642
|
-
"timeframe",
|
|
643
|
-
timeframe$1(updates.scope, true, updates.input),
|
|
644
|
-
"What is the project timeframe?",
|
|
645
|
-
updates
|
|
646
|
-
)
|
|
647
|
-
}
|
|
648
|
-
|
|
649
|
-
function ownHome(updates = {}) {
|
|
650
|
-
return sqstep("ownHome", ownHome$1(updates.scope, true, updates.input), "Do you own the home?", updates)
|
|
651
|
-
}
|
|
652
|
-
|
|
653
426
|
function roofingFirstStep(updates = {}) {
|
|
654
427
|
return step(
|
|
655
428
|
"roofingFirstStep",
|
|
@@ -666,24 +439,6 @@ function roofingFirstStep(updates = {}) {
|
|
|
666
439
|
)
|
|
667
440
|
}
|
|
668
441
|
|
|
669
|
-
function roofingWorkType(updates = {}) {
|
|
670
|
-
return sqstep(
|
|
671
|
-
"roofingWorkType",
|
|
672
|
-
roofingWorkType$1(updates.scope, true, updates.input),
|
|
673
|
-
"What type of roofing work?",
|
|
674
|
-
updates
|
|
675
|
-
)
|
|
676
|
-
}
|
|
677
|
-
|
|
678
|
-
function roofingMaterial(updates = {}) {
|
|
679
|
-
return sqstep(
|
|
680
|
-
"roofingMaterial",
|
|
681
|
-
roofingMaterial$1(updates.scope, true, updates.input),
|
|
682
|
-
"What type of roofing material?",
|
|
683
|
-
updates
|
|
684
|
-
)
|
|
685
|
-
}
|
|
686
|
-
|
|
687
442
|
const formNavigationNoFinalBack = (updates = {}) => ({
|
|
688
443
|
$el: "div",
|
|
689
444
|
attrs: {
|
|
@@ -996,12 +751,17 @@ const hiddenInputsBase = [
|
|
|
996
751
|
},
|
|
997
752
|
];
|
|
998
753
|
|
|
999
|
-
const
|
|
754
|
+
const hiddenInputsHomeImprovementTCPA = [
|
|
1000
755
|
{
|
|
1001
756
|
$formkit: "hidden",
|
|
1002
757
|
name: "vertical",
|
|
1003
758
|
value: "HomeImprovement",
|
|
1004
759
|
},
|
|
760
|
+
{
|
|
761
|
+
$formkit: "hidden",
|
|
762
|
+
name: "TCPA_Opt_In",
|
|
763
|
+
value: true,
|
|
764
|
+
},
|
|
1005
765
|
{
|
|
1006
766
|
$formkit: "hidden",
|
|
1007
767
|
name: "TCPA_Language",
|
|
@@ -1523,7 +1283,7 @@ const HomeImprovementFinalHeadlines = {
|
|
|
1523
1283
|
// 'Landscaping': '',
|
|
1524
1284
|
// 'Locksmiths': '',
|
|
1525
1285
|
// 'Masonry and Concrete': '',
|
|
1526
|
-
|
|
1286
|
+
Restoration: "Restoration Pros Are Standing By!",
|
|
1527
1287
|
// 'Moving': '',
|
|
1528
1288
|
// 'Painting': '',
|
|
1529
1289
|
// 'Pest Control': '',
|
|
@@ -1556,7 +1316,7 @@ const HomeImprovementFinalSubHeadlines = {
|
|
|
1556
1316
|
Doors: "Enhance your home with new doors.",
|
|
1557
1317
|
Driveways: "Repair or install a new driveway.",
|
|
1558
1318
|
"Drywall and Plaster": "Expert drywall and plaster services.",
|
|
1559
|
-
Electrical: "
|
|
1319
|
+
Electrical: "Confirm your contact information:",
|
|
1560
1320
|
Fencing: "Secure your property with new fencing.",
|
|
1561
1321
|
Flooring: "Install stunning new floors.",
|
|
1562
1322
|
Foundations: "Foundation repair and maintenance.",
|
|
@@ -1574,21 +1334,21 @@ const HomeImprovementFinalSubHeadlines = {
|
|
|
1574
1334
|
"Home Theater": "Create the ultimate home theater.",
|
|
1575
1335
|
"Home Warranties": "Get a warranty for your home.",
|
|
1576
1336
|
"Hot Tubs": "Install a relaxing hot tub.",
|
|
1577
|
-
"Heating and Cooling": "
|
|
1337
|
+
"Heating and Cooling": "Confirm your contact information:",
|
|
1578
1338
|
Insulation: "Improve your home's insulation.",
|
|
1579
1339
|
"Junk Removal": "Remove unwanted junk from your property.",
|
|
1580
1340
|
Landscaping: "Transform your yard with expert landscaping.",
|
|
1581
1341
|
Locksmiths: "Professional locksmith services.",
|
|
1582
1342
|
"Masonry and Concrete": "Expert masonry and concrete work.",
|
|
1583
|
-
Restoration: "
|
|
1343
|
+
Restoration: "Confirm your contact information:",
|
|
1584
1344
|
Moving: "Reliable moving services.",
|
|
1585
1345
|
Painting: "Professional painting services.",
|
|
1586
1346
|
"Pest Control": "Effective pest control solutions.",
|
|
1587
1347
|
Pools: "Install or repair your pool.",
|
|
1588
|
-
Plumbing: "
|
|
1348
|
+
Plumbing: "Confirm your contact information:",
|
|
1589
1349
|
"Pressure Washing": "Pressure wash your home's exterior.",
|
|
1590
1350
|
Remodeling: "Remodel your home with top professionals.",
|
|
1591
|
-
Roofing: "
|
|
1351
|
+
Roofing: "Confirm your contact information:",
|
|
1592
1352
|
Sheds: "Build a new shed for extra storage.",
|
|
1593
1353
|
Siding: "Upgrade your home's siding.",
|
|
1594
1354
|
Solar: "Install solar panels and save on energy.",
|
|
@@ -1599,7 +1359,7 @@ const HomeImprovementFinalSubHeadlines = {
|
|
|
1599
1359
|
Windows: "Replace your windows with energy-efficient options.",
|
|
1600
1360
|
};
|
|
1601
1361
|
|
|
1602
|
-
const meta = defaultMetaPropsHomeImprovement();
|
|
1362
|
+
const meta = defaultMetaPropsHomeImprovement("Roofing", true);
|
|
1603
1363
|
|
|
1604
1364
|
const schema = [
|
|
1605
1365
|
meta,
|
|
@@ -1621,13 +1381,14 @@ const schema = [
|
|
|
1621
1381
|
props: formProps({
|
|
1622
1382
|
formId: "roofing",
|
|
1623
1383
|
redirectMap: {
|
|
1624
|
-
"*": "/thank-you?zip_code=${properties.Zip}&s=${properties.s}",
|
|
1384
|
+
// "*": "/thank-you?zip_code=${properties.Zip}&s=${properties.s}",
|
|
1385
|
+
"*": HomeImprovementRedirectUrl(),
|
|
1625
1386
|
},
|
|
1626
1387
|
}),
|
|
1627
1388
|
children: [
|
|
1628
1389
|
progressBar(),
|
|
1629
1390
|
headline({
|
|
1630
|
-
children: '$urlParam("hl", "
|
|
1391
|
+
children: '$urlParam("hl", "Compare Quotes and Save")',
|
|
1631
1392
|
if: "$activeStep === $firstStep()",
|
|
1632
1393
|
}),
|
|
1633
1394
|
subHeadline({
|
|
@@ -1635,7 +1396,7 @@ const schema = [
|
|
|
1635
1396
|
if: "$activeStep === $firstStep()",
|
|
1636
1397
|
subheadlineClass: "!t-font-bold !t-text-[#465f87]",
|
|
1637
1398
|
}),
|
|
1638
|
-
...
|
|
1399
|
+
...hiddenInputsHomeImprovementTCPA,
|
|
1639
1400
|
{
|
|
1640
1401
|
$el: "div",
|
|
1641
1402
|
attrs: {
|
|
@@ -1649,20 +1410,20 @@ const schema = [
|
|
|
1649
1410
|
help: null,
|
|
1650
1411
|
},
|
|
1651
1412
|
}),
|
|
1652
|
-
roofingWorkType(),
|
|
1653
|
-
roofingMaterial({
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
}),
|
|
1658
|
-
timeframe(),
|
|
1659
|
-
ownHome(),
|
|
1660
|
-
address(),
|
|
1413
|
+
// steps.roofingWorkType(),
|
|
1414
|
+
// steps.roofingMaterial({
|
|
1415
|
+
// input: {
|
|
1416
|
+
// inputClass: "t-text-center",
|
|
1417
|
+
// },
|
|
1418
|
+
// }),
|
|
1419
|
+
// steps.timeframe(),
|
|
1420
|
+
// steps.ownHome(),
|
|
1421
|
+
// steps.address(),
|
|
1661
1422
|
firstAndLastV4({
|
|
1662
1423
|
headlineClass: "!t-text-dark",
|
|
1663
1424
|
headline: "Who is looking for a roofer?",
|
|
1664
1425
|
}),
|
|
1665
|
-
|
|
1426
|
+
contactInfoNoTCPA({
|
|
1666
1427
|
headlineClass: "!t-text-[#465f87]",
|
|
1667
1428
|
subheadlineClass: "!t-text-[#353739]",
|
|
1668
1429
|
}),
|
|
@@ -1671,7 +1432,9 @@ const schema = [
|
|
|
1671
1432
|
submitLabel: "Get A Quote",
|
|
1672
1433
|
inputClass: "!t-text-black !t-font-extrabold !t-bg-[#ffce51]",
|
|
1673
1434
|
firstStepButtonClass: "!t-justify-center",
|
|
1435
|
+
lastStepButtonClass: "!t-justify-center !t-my-0 !t-py-0",
|
|
1674
1436
|
}),
|
|
1437
|
+
tcpaLanguageStandalone(),
|
|
1675
1438
|
secureIconStandalone(),
|
|
1676
1439
|
formDetails(),
|
|
1677
1440
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var roofing=function(){"use strict";function e(){return Object.assign({},...arguments)}const t=e=>(e.name&&!e.id&&(e.id=e.name),e),a=a=>(t(a),e({$formkit:"radio",validation:"required",validationMessages:{required:"Field is required"},optionsClass:"t-pt-3 t-pl-1",legendClass:"required"},a)),n=e=>(e.legendClass="legend-left required",e.fieldsetClass="$reset side-by-side",e.optionsClass="t-pl-1",e.innerClass="t-flex t-items-center",e.wrapperClass="t-mb-3",a(e)),s=e=>(e.legendClass="required",e.fieldsetClass="$reset t-flex t-justify-center",e.optionsClass="t-pl-2 t-pt-3",e.innerClass="t-items-center",e.wrapperClass="$reset t-flex t-cursor-pointer t-mb-3",e.optionClass="t-pl-4 md:t-pl-12",e.messagesClass="t-flex t-justify-center",a(e)),r=a=>(t(a),e({$formkit:"select",placeholder:"Please Select",validation:"required",validationMessages:{required:"Field is required"},inputClass:"t-bg-white",labelClass:"required"},a)),i=e=>(e.labelClass="required",e.wrapperClass="side-by-side t-items-center",e.innerClass="select-height-content",e.helpClass="t-mt-2.5 md:t-text-right md:t-mt-[-5px]",r(e)),o=e=>(e.labelClass="required",e.wrapperClass="t-flex t-justify-center",e.messagesClass="t-flex t-justify-center",e.inputClass="t-min-w-[150px] t-bg-white "+(e.inputClass||""),e.helpClass="t-mt-2.5 t-text-center",r(e)),l=a=>(t(a),e({$formkit:"text",validation:"required",validationMessages:{required:"Field is required"},labelClass:"required"},a)),m=e=>(e.wrapperClass="side-by-side t-items-center",l(e)),c=e=>(e.wrapperClass="t-flex t-justify-center",e.messagesClass="t-flex t-justify-center",e.inputClass="t-text-center",e.helpClass="t-mt-2.5 !t-text-sm t-text-center",l(e)),d=(e,t={})=>l({$formkit:"FloatingLabelText",name:e?e+":Email":"Email",placeholder:"Email Address",autocomplete:"email","data-tf-sensitive":"false",validation:"required|email",validationMessages:{required:"Email is required",email:"Invalid Email"},inputClass:"t-text-center",wrapperClass:"t-flex t-justify-center",...t}),p=(e,t={})=>l({$formkit:"FloatingLabelText",placeholder:"First Name",name:e?e+":First_Name":"First_Name",autocomplete:"given-name",validationMessages:{required:"First Name is required"},inputClass:"t-text-center",...t}),u=(e,t={})=>l({$formkit:"FloatingLabelText",placeholder:"Last Name",name:e?e+":Last_Name":"Last_Name",autocomplete:"family-name",validationMessages:{required:"Last Name is required"},inputClass:"t-text-center",...t}),f=(e,t={})=>({$el:"div",attrs:{class:"t-flex t-flex-col sm:t-flex-row t-flex-wrap t-gap-x-[2%] t-justify-center sm:!t-max-w-[70%]"},children:[p(e,{outerClass:"sm:!t-max-w-[49%]",...t}),u(e,{outerClass:"sm:!t-max-w-[49%]",...t})]}),h=(e,t={})=>l({$formkit:"FloatingLabelText",datatype:"tel",name:e?e+":Primary_Phone":"Primary_Phone",placeholder:t.placeholder||"Phone Number",maxlength:14,help:t.help||null,autocomplete:"tel-national","data-tf-sensitive":"false",validation:"required|matches:/^[0-9]{3}[0-9]{3}[0-9]{4}$/|valid_phone",validationMessages:{required:"Phone Number is required",matches:"Invalid Phone Format, use (XXX) YYY-ZZZZ",valid_phone:"Invalid Phone Number"},helpClass:"t-mt-2.5 md:t-text-right md:t-mt-[-2px]",inputClass:"t-text-center",wrapperClass:"t-flex t-justify-center",...t}),y=(e,t,a={})=>(t?c:m)({label:t?a.label:"Zip Code:",help:t?a.help??"We try to match you with local help":null,placeholder:"#####",name:e?e+":Zip":"Zip",maxlength:5,inputmode:"numeric",autocomplete:"postal-code",validation:"required|matches:/^[0-9]{5}$/",validationMessages:{required:"Zip Code is required",matches:"Invalid Zip Code"},...a}),g=(e,t={})=>({$formkit:"checkbox",label:"$meta.tcpaLanguage",__raw__sectionsSchema:{label:{attrs:{innerHTML:"$label"}}},name:e?e+":TCPA_Opt_In":"TCPA_Opt_In","data-tf-sensitive":"false",validation:"required|accepted",validationMessages:{required:"Consent is required",accepted:"Consent is required"},classes:{outer:t.outerClass?t.outerClass:"",wrapper:t.wrapperClass?t.wrapperClass:"",messages:t.messagesClass?t.messagesClass:"",label:"!t-text-[0.7rem] t-text-slate-500 t-font-normal !t-leading-[0.9rem]"+(t.labelClass?" "+t.labelClass:"")}}),x=e=>"group"!==e.type&&"section"!==e.type&&"form"!==e.type&&"hidden"!==e.$formkit&&!e.children,v=e=>{if(x(e))return e;for(var t=e.children.length-1;t>=0;t--){if("string"==typeof e.children)continue;const a=e.children[t];if(x(a))return a;const n=v(a);if(n)return n}return null},C={$el:"div",if:"$activeStep === $lastStep()",attrs:{class:"t-flex t-justify-center t-items-center t-text-sm t-text-gray-500"},children:[{$el:"img",attrs:{loading:"lazy",alt:"",style:{border:0},width:"25",height:"25",src:"https://d27hmee62k45vz.cloudfront.net/lock_icon_1.jpeg"}},{$el:"span",children:"Secure & Encrypted",attrs:{class:"t-pl-2 t-pt-1 t-font-medium"}}]};function w(t={}){return e(C,t)}function b(e){return{$el:"h3",children:e.headline||"Tell Us About Your Situation",attrs:{class:"t-flex t-justify-center t-text-center t-text-lg sm:t-text-xl t-font-bold t-text-dark t-pb-5 t-pt-0 t-px-1 "+(e.headlineClass||"")}}}function $(e){return{$el:"h3",children:e.headline||"Please Provide a Contact Name",attrs:{class:"t-flex t-justify-center t-text-center t-text-xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1 "+(e.headlineClass||"")}}}function I(e){return{$el:"h3",children:e.headline||'$getKey($meta, "finalHeadlines." + ($get(Type_Of_Legal_Problem).value || $get(Category).value), $meta.defaultFinalHeadline)',attrs:{class:"t-flex t-justify-center t-text-center !t-text-xl md:!t-text-2xl t-font-bold t-text-blue-500 t-pb-3 t-pt-4 t-px-1 "+(e.headlineClass||"")+" f-contact-info-headline"}}}function S(e){return{$el:"h5",children:e.subheadline||'$getKey($meta, "finalSubHeadlines." + ($get(Type_Of_Legal_Problem).value || $get(Category).value), $meta.defaultFinalSubHeadline)',attrs:{class:"t-flex t-justify-center t-text-center !t-text-base md:!t-text-lg t-font-semibold t-pb-6 t-pt-0 t-px-3 "+(e.subheadlineClass||"")+" f-contact-info-subheadline"}}}function E(t,a,n={}){const{nextOnEnter:s=!0,nextOnInput:r=!1,stepKey:i,nextStepMap:o,triggerRedirectMap:l,autoFocus:m}=n;if(a&&a.length&&(s||r)){const e=v(a[a.length-1]);e&&!0===s&&(e.onKeypress="$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))"),e&&!0===r&&(e.onInput="$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))")}const c={children:[{$formkit:"group",id:t,name:t,nextStepMap:o,triggerRedirectMap:l,autoFocus:m,children:a}]};return void 0!==n.if&&(c.if=n.if),e(((e,t)=>({$el:"section",if:'$stepEnabled("'+e+'")',attrs:{hidden:'$activeStep !== "'+e+'"',key:t||e}}))(t,i),c)}function k(e,t,a,n={}){return void 0===n.nextOnInput&&(n.nextOnInput=!0),E(e,[b({headline:n.headline??a,headlineClass:n.headlineClass}),...Array.isArray(t)?t:[t]],n)}const P={type:"form",id:"form",config:{validationVisibility:"submit"},onSubmit:'$submit($submitUrl, $prepData, $handleRedirect, "text/plain; charset=UTF-8")',plugins:"$plugins",actions:!1,anchorElement:"form-anchor",useLocalStorage:!0,prepop:{fromURL:!0},errorCodes:{403:{message:"An Error Occurred",abort:!1},409:{abort:!1},429:"An Error Occurred",504:{message:"An Error Occurred",abort:!1}},formClass:"!t-max-w-[40rem]"};function T(e,t){return Object.fromEntries(Object.entries(e).filter((([e])=>t.includes(e))))}const D={};const L={$el:"div",children:[{$el:"div",attrs:{id:"form-anchor",class:"t-absolute",style:{top:"-30px",left:0}}}],attrs:{class:"t-relative"}};const A={$el:"div",attrs:{class:"t-mt-7 t-mb-5 t-w-full t-flex t-flex-col t-justify-center t-items-center",style:{if:"$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())",then:"display: none"}},children:[{$el:"div",attrs:{class:"t-flex t-justify-center"},children:[{$el:"span",attrs:{id:"progress-bar-text",class:"t-text-sm t-mb-1"},children:["0% Complete"]}]},{$el:"div",attrs:{class:"t-bg-gray-100 t-w-9/12 t-rounded"},children:[{$el:"div",attrs:{id:"progress-bar",class:"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]",style:{transition:"width 0.5s ease"}}}]}]};const O=[{$formkit:"hidden",name:"vertical",value:"HomeImprovement"},{$formkit:"hidden",name:"TCPA_Language",value:"$meta.tcpaLanguage"},{$formkit:"hidden",name:"gclid",value:null},{$formkit:"hidden",name:"campaignid",value:null},{$formkit:"hidden",name:"s",value:null}],_=["haveAttorney","degreeOfInterest","commentsWithBankruptcy","zipcode","legalCrossSells","firstAndLast","contactInfo"],W=["haveAttorney","degreeOfInterest","lawyerPaymentMethod","commentsWithBankruptcy","zipcode","legalCrossSells","firstAndLast","contactInfo"],j=["haveAttorney","commentsWithBankruptcy","zipcode","legalCrossSells","firstAndLast","contactInfo"],F={values:{Type_Of_Legal_Problem:{Adoption:["maritalStatus","haveChildren",...W],"Asbestos and Mesothelioma":["incidentDate","doctorTreatment",..._],"Auto and Car Accidents":["incidentDate","atFault","primaryInjury","doctorTreatment","policeReportFiled",...j],Bankruptcy:["totalMonthlyIncome","totalDebt","ownRealEstate","valueOfAssets",..._],"Business Lawyers":["businessServices","businessType","numEmployeesOfBusiness",..._],"Child Custody":["childRelationship","childHome","childPrimaryCaregiver",...W],"Child Support":["childRelationship","childHome","childPrimaryCaregiver",...W],"Civil Rights and Discrimination":["civilRightsType",..._],"Civil Lawsuit":["civilDefense","lawsuitOtherParty",..._],"File a Lawsuit":["civilLawsuitTOLPDisplay","lawsuitOtherParty",..._],"Defend a Lawsuit":["lawsuitOtherParty",..._],"Consumer Lawyers":["consumerLawyerType","incidentDate","lawsuitOtherParty",..._],"Criminal and Felony":["criminalTOLPDisplay","crimeCommittedDate","roleInMatterCriminal","pendingCharges",...W],"Debt and Collections":["totalMonthlyIncome","totalDebt","ownRealEstate","valueOfAssets",..._],"Divorce and Separation":["maritalStatus","haveChildren",...W],"DUI and DWI":["incidentDate","priorAlcoholOffenses","typeOfAlcoholTest","bloodContentAlcoholTest","pendingCharges",..._],"Employment and Workplace":["employmentAndWorkplaceTOLPDisplay","numEmployeesOfBusiness","employerType","employeeAtCompany",..._],Expungement:["incidentDate","criminalChargeType",...W],"Family Issues":["maritalStatus","haveChildren",...W],Foreclosure:["ownRealEstate","typeOfProperty","amountPaymentsPastDue","loanAmount","defaultNotice",..._],Guardianship:["maritalStatus","haveChildren",...W],"Immigration and Visas":["countryOfCitizenship","immigrationLocation","immigrationEntry","immigrationType","immigrationStatus","immigrationDetails",..._],"Landlord and Tenant":["landlordTenantIssue","landlordTenantParty",..._],"Lemon Law":["incidentDate","lawsuitOtherParty",..._],"Long Term Disability":["applicantOccupation","applicantAge","applicantLTDisabilityPolicy","applicantDisabilityHowObtain","applicantPreviouslyAppliedLtdBenefits","applicantReceivedDisabilityBenefits","applicantMonthlySalary",...j],"Medical Malpractice":["incidentDate","claimStatus","doctorTreatment","medicalMalpracticeInjuries",..._],"Patents and Intellectual Property":["patentAssistanceType","patentFor",..._],"Personal Injury":["incidentDate","claimStatus","atFault","primaryInjury","doctorTreatment",...j],"Probate and Estates":["valueOfAssets","typeOfAssets","roleInMatterProbate","estateLegalServicesNeeded",..._],"Property Damage":["wouldLikeLawyerTo",..._],"Real Estate":["realEstateTOLPDisplay","realEstateArea","wouldLikeLawyerTo",..._],"Social Security Disability and Insurance":["applicantAge","disabilityConditionStopWork","disabilityWorkHistory","socialSecurityDisabilityReceivingBenefits","doctorTreatment",...j],"Tax and IRS":["totalDebt","taxProblemDetails","taxLevel","taxIssueType",..._],"Traffic and Tickets":["driversLicenseType","trafficViolations","haveCourtDate",..._],Unemployment:["numEmployeesOfBusiness","employerType","degreeOfInterest","commentsWithBankruptcy","zipcode","legalCrossSells","firstAndLast","contactInfo"],"Victim of a Crime":["crimeCommittedDate","roleInMatterCriminal","pendingCharges",...W],"Wills and Trusts":["valueOfAssets","typeOfAssets","roleInMatterProbate","estateLegalServicesNeeded",..._],"Workers Compensation":["incidentDate","claimStatus","primaryInjury","causeOfInjury","doctorTreatment",...j],"Workplace Harassment":["numEmployeesOfBusiness","employerType","employeeAtCompany",..._],"Workplace Discrimination":["numEmployeesOfBusiness","employerType","employeeAtCompany",..._],"Wrongful Death":["incidentDate","relationshipToVictim","criminalChargesFiled","causeOfDeath",...j],"Wrongful Termination":["numEmployeesOfBusiness","employerType",..._]},"*":_}};function q(e,t=[],a={}){const n={...e};return n.values=function e(n){const s={};for(const r in n)Array.isArray(n[r])?s[r]=n[r].filter((e=>!t.includes(e))).map((e=>a[e]||e)):"object"==typeof n[r]?s[r]=e(n[r]):s[r]=n[r];return s}(e.values),n}q(F,["legalCrossSells"],{commentsWithBankruptcy:"comments"});const H=F.values.Type_Of_Legal_Problem;H["Auto and Car Accidents"].filter((e=>"legalCrossSells"!==e)),H["Workers Compensation"].filter((e=>"legalCrossSells"!==e)),H["Personal Injury"].filter((e=>"legalCrossSells"!==e)),H["Personal Injury"].filter((e=>"legalCrossSells"!==e)),H["Auto and Car Accidents"].filter((e=>"legalCrossSells"!==e)),H["Auto and Car Accidents"].filter((e=>"legalCrossSells"!==e)),H["Personal Injury"].filter((e=>"legalCrossSells"!==e)),H["Personal Injury"].filter((e=>"legalCrossSells"!==e)),H["Child Custody"],H["Child Support"],F.values["*"],H["Family Issues"],H["Child Support"],H["Child Custody"],F.values["*"],H["Divorce and Separation"],H["Defend a Lawsuit"],H["File a Lawsuit"];q({values:{Type_Of_Legal_Problem:{"Defend a Lawsuit":H["Defend a Lawsuit"],"File a Lawsuit":H["File a Lawsuit"]},"*":["lawsuitOtherParty",..._]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"});q({values:{Type_Of_Legal_Problem_Display:{"Automobile Accident":H["Auto and Car Accidents"],"Contract Disputes":H["Business Lawyers"],"Dog Bite":H["Personal Injury"],"Employment and Workplace":H["Employment and Workplace"],Fraud:H["Consumer Lawyers"],"Medical Malpractice":H["Medical Malpractice"],"Personal Injury":H["Personal Injury"],"Property Damage":H["Property Damage"],"Real Estate":H["Real Estate"],"Not Sure or Other":F.values["*"]},"*":["lawsuitOtherParty",..._]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"});q({values:{Type_Of_Legal_Problem_Display:{"Victim of a Crime":H["Victim of a Crime"],"DUI and DWI":H["DUI and DWI"],Expungement:H.Expungement,"Not Sure or Other":F.values["*"]},"*":["crimeCommittedDate","roleInMatterCriminal","pendingCharges",...W]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"});q({values:{Type_Of_Legal_Problem_Display:{"Wrongful Termination":H["Wrongful Termination"],"Workers Compensation":H["Workers Compensation"],"Personal Injury":H["Personal Injury"],Unemployment:H.Unemployment},"*":["numEmployeesOfBusiness","employerType","employeeAtCompany",..._]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"}),H["Workplace Harassment"],H["Workplace Discrimination"],H["Probate and Estates"],H["Wills and Trusts"],H["Wrongful Death"],H["Patents and Intellectual Property"],H["Business Lawyers"],H["Business Lawyers"],F.values["*"];q({values:{Type_Of_Legal_Problem_Display:{Foreclosure:H.Foreclosure,"Landlord and Tenant":H["Landlord and Tenant"],"Wills, Trusts, and Estates":H["Wills and Trusts"],"Property Damage":H["Property Damage"]},"*":["realEstateArea","wouldLikeLawyerTo",..._]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"});const M={Additions:'Example: "I would like to add a sunroom to my home"',Appliances:'Example: "I need to repair a dishwasher"',Appraisals:'Example: "I need to get my home appraised"',Cabinets:'Example: "I want to install new kitchen cabinets"',Carpentry:'Example: "I need someone to build custom shelves"',Carpets:'Example: "I want to replace the carpets in my living room"',Cleaning:'Example: "I need a professional cleaning service for my home"',Countertops:'Example: "I want to install granite countertops in my kitchen"',"Decks and Porches":'Example: "I want to build a new deck in my backyard"',Demolition:'Example: "I need to demolish a wall in my home"',Doors:'Example: "I want to replace the front door of my house"',Driveways:'Example: "I need to repair my driveway"',"Drywall and Plaster":'Example: "I need to repair a hole in my drywall"',Electrical:'Example: "I need an electrician to install new light fixtures"',Fencing:'Example: "I want to install a privacy fence in my backyard"',Flooring:'Example: "I want to install hardwood flooring in my living room"',Foundations:'Example: "I need to repair the foundation of my house"',"Garage Doors":'Example: "I want to replace my garage door"',"General Contractors":'Example: "I need a general contractor for a home renovation"',Gutters:'Example: "I need to clean and repair my gutters"',Handyman:'Examples: "I need two rooms painted" or "I need to replace a faucet", etc',"Holiday Decorators":'Example: "I want to hire someone to decorate my home for the holidays"',"Smart Home":'Example: "I want to install a smart home automation system"',"Home Builders":'Example: "I want to build a custom home"',"Home Inspection":'Example: "I need a home inspection before buying a house"',"Home Organization":'Example: "I need help organizing my closets and storage"',"Home Security":'Example: "I want to install a home security system"',"Home Staging":'Example: "I need a home staging service to prepare my house for sale"',"Home Theater":'Example: "I want to set up a home theater system"',"Home Warranties":'Example: "I want to purchase a home warranty"',"Hot Tubs":'Example: "I want to install a hot tub in my backyard"',"Heating and Cooling":'Example: "I need to repair my air conditioning unit"',Insulation:'Example: "I want to improve the insulation in my home"',"Junk Removal":'Example: "I need a service to remove junk and debris from my property"',Landscaping:'Example: "I want to redesign my backyard landscaping"',Locksmiths:'Example: "I need a locksmith to change the locks on my doors"',"Masonry and Concrete":'Example: "I need to repair a cracked concrete driveway"',Restoration:'Example: "My basement is flooded and needs restoration"',Moving:'Example: "I need a moving company to help me relocate"',Painting:'Example: "I want to paint the interior walls of my house"',"Pest Control":'Example: "I need pest control services for my home"',Pools:'Example: "I want to install a swimming pool in my backyard"',Plumbing:'Example: "I need a plumber to fix a leaky faucet"',"Pressure Washing":'Example: "I want to pressure wash the exterior of my house"',Remodeling:'Example: "I want to remodel my kitchen"',Roofing:'Example: "I need to repair a leaky roof"',Sheds:'Example: "I want to build a storage shed in my backyard"',Siding:'Example: "I want to replace the siding on my house"',Solar:'Example: "I want to install solar panels on my roof"',Tiling:'Example: "I want to install new tiles in my bathroom"',"Tree Services":'Example: "I need a large tree removed"',"Walk-in Tubs":'Example: "I want to install a walk-in tub in my bathroom"',Waterproofing:'Example: "I need to waterproof my basement"',"Window Cleaning":'Example: "I need a professional window cleaning service"',Windows:'Example: "I want to replace 3 windows in my house"',"Not Sure or Other":'Example: "I need general handyman services"'},R={Appliances:"Our Pros Are Ready To Help",Electrical:"Electricians Are Standing By!",Plumbing:"Plumbers Are Standing By!",Roofing:"Roofers Are Standing By!"},B={Additions:"Get your dream addition started today!",Appliances:"Confirm your contact information:",Appraisals:"Accurate home appraisals at your service.",Cabinets:"Transform your kitchen with new cabinets.",Carpentry:"Custom carpentry solutions for your home.",Carpets:"Upgrade your home with new carpets.",Cleaning:"Professional cleaning services for a spotless home.",Countertops:"Install beautiful countertops in your kitchen.","Decks and Porches":"Build the perfect outdoor space.",Demolition:"Safe and efficient demolition services.",Doors:"Enhance your home with new doors.",Driveways:"Repair or install a new driveway.","Drywall and Plaster":"Expert drywall and plaster services.",Electrical:"Get a quote from a trusted pro.",Fencing:"Secure your property with new fencing.",Flooring:"Install stunning new floors.",Foundations:"Foundation repair and maintenance.","Garage Doors":"Upgrade your garage with new doors.","General Contractors":"Top contractors for your home projects.",Gutters:"Clean and repair your gutters.",Handyman:"Handyman services for all your needs.","Holiday Decorators":"Get your home ready for the holidays.","Smart Home":"Upgrade to a smart home today.","Home Builders":"Build your custom dream home.","Home Inspection":"Thorough home inspections for peace of mind.","Home Organization":"Organize your home with expert help.","Home Security":"Protect your home with a security system.","Home Staging":"Stage your home for a quick sale.","Home Theater":"Create the ultimate home theater.","Home Warranties":"Get a warranty for your home.","Hot Tubs":"Install a relaxing hot tub.","Heating and Cooling":"HVAC repair and installation.",Insulation:"Improve your home's insulation.","Junk Removal":"Remove unwanted junk from your property.",Landscaping:"Transform your yard with expert landscaping.",Locksmiths:"Professional locksmith services.","Masonry and Concrete":"Expert masonry and concrete work.",Restoration:"Restore your home after damage.",Moving:"Reliable moving services.",Painting:"Professional painting services.","Pest Control":"Effective pest control solutions.",Pools:"Install or repair your pool.",Plumbing:"Get a quote from a trusted pro.","Pressure Washing":"Pressure wash your home's exterior.",Remodeling:"Remodel your home with top professionals.",Roofing:"Get a quote from a local roofer.",Sheds:"Build a new shed for extra storage.",Siding:"Upgrade your home's siding.",Solar:"Install solar panels and save on energy.",Tiling:"Install beautiful new tiles.","Walk-in Tubs":"Install a convenient walk-in tub.",Waterproofing:"Waterproof your home to prevent damage.","Window Cleaning":"Professional window cleaning services.",Windows:"Replace your windows with energy-efficient options."};var N;return[function(t=null,a=!1){let n=M,s=R,r=B;return t&&(n=T(M,t),s=T(R,t),r=T(B,t)),{type:"meta",data:e(D,{tcpaLanguage:a?'By clicking this button, I agree to the Terms of Use, and consent to be contacted by up to four home service <a href="/providers" target="_blank" class="t-underline">companies 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.':'By checking this box, I a) agree to the Terms of Use, and b) consent to be contacted by up to four home service <a href="/providers" target="_blank" class="t-underline">companies 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.',defaultCommentsPlaceholder:'$getKey($meta, "commentsPlaceholders." + $get(Category).value, $meta.defaultCommentsPlaceholder)',commentsPlaceholders:n,defaultFinalHeadline:"We Found Matching Contractors!",finalHeadlines:s,defaultFinalSubHeadline:"Compare quotes and save. Verify contact info:",finalSubHeadlines:r})}}(),(N={children:[{$el:"div",attrs:{id:"form-anchor",class:"t-absolute",style:{top:"-80px",left:0}}}]},e(L,N)),{$cmp:"FormKit",props:function(t){const a=e(P,t);return a.formId&&!a.name&&(a.name=a.formId),a}({formId:"roofing",redirectMap:{"*":"/thank-you?zip_code=${properties.Zip}&s=${properties.s}"}}),children:[function(t){return e(A,t)}(),function(t={}){return e(function(e={}){return{$el:"h1",attrs:{class:"t-flex t-justify-center t-text-center t-text-[1.7rem] sm:t-text-[2rem] t-font-semibold t-pt-5 t-px-7 md:t-px-3 "+(e.headlineClass||"")+" f-first-headline"}}}(t),t)}({children:'$urlParam("hl", "Get Roofing Quotes")',if:"$activeStep === $firstStep()"}),function(t={}){return e(function(e={}){return{$el:"h3",attrs:{class:"t-flex t-justify-center t-text-center t-text-[1.1rem] md:t-text-[1.2rem] t-font-medium t-text-blue-500 t-px-10 t-pb-3 "+(e.subheadlineClass||"")+" f-first-subheadline"}}}(t),t)}({children:'$urlParam("shl", "Please Enter Your Zip Code:")',if:"$activeStep === $firstStep()",subheadlineClass:"!t-font-bold !t-text-[#465f87]"}),...O,{$el:"div",attrs:{class:"form-body"},children:[function(e={}){return E("roofingFirstStep",[{$formkit:"hidden",name:"Category",id:"Category",value:"Roofing"},y(e.scope,!0,e.input)],e)}({nextOnInput:!1,headlineClass:"t-text-lg",input:{help:null}}),function(t={}){return k("roofingWorkType",((t,a,r={})=>(a?s:n)(e({label:a?r.label:"What type of work?",name:t?t+":Roofing_Work_Type":"Roofing_Work_Type",options:["Install or Replace Roof","Repair Roof","Ice Dams","Gutters","Not Sure or Other"]},r)))(t.scope,!0,t.input),"What type of roofing work?",t)}(),function(t={}){return k("roofingMaterial",((t,a,n={})=>(a?o:i)(e({label:a?n.label:"What roofing material?",name:t?t+":Roofing_Material":"Roofing_Material",options:["Asphalt Shingle","Composite","Flat","Foam","Metal","Slate","Tile","Wood","Not Sure or Other"]},n)))(t.scope,!0,t.input),"What type of roofing material?",t)}({input:{inputClass:"t-text-center"}}),function(t={}){return k("timeframe",((t,a,r={})=>(a?s:n)(e({label:a?r.label:"What is the project timeframe?",name:t?t+":Timeframe":"Timeframe",options:["Immediate","1-6 Months","More than 6 Months"]},r)))(t.scope,!0,t.input),"What is the project timeframe?",t)}(),function(t={}){return k("ownHome",((t,a,r={})=>(a?s:n)(e({label:a?r.label:"Do you own the home?",name:t?t+":Own_Home":"Own_Home",options:["Yes","No","No but authorized"]},r)))(t.scope,!0,t.input),"Do you own the home?",t)}(),function(e={}){return e.nextOnInput=void 0!==e.nextOnInput&&e.nextOnInput,k("address",((e,t,a={})=>(t?c:m)({label:t?a.label:"Street Address:",placeholder:"10 Example St",name:e?e+":Address":"Address",autocomplete:"street-address","data-tf-sensitive":"false",minlength:5,maxlength:100,validation:[["required"],["matches",/^(?=.*\d)(?=.*[A-Za-z])(?=.*\s).{6,100}$/]],validationMessages:{matches:"Invalid Address",required:"Address is required"},...a}))(e.scope,!0,e.input),"What is the street address of the home?",e)}(),function(e={}){return E("firstAndLast",[$({headline:e.headline??"Who is looking for help?",headlineClass:e.headlineClass}),{$el:"div",attrs:{class:"t-flex t-flex-col t-justify-center t-items-center t-pt-3"},children:[f(e.scope)]}],e)}({headlineClass:"!t-text-dark",headline:"Who is looking for a roofer?"}),function(e={}){return E("contactInfo",[I(e),S(e),{$el:"script",if:"$activeStep === $lastStep()",children:"(function() {\n if (window.xxTrustedFormLoaded) {\n return\n }\n var vid = '';\n if (typeof window.zar !== 'undefined') {\n vid = window.zar.getVID();\n }\n window.xxTrustedFormLoaded = true;\n var sandbox = document.location.hostname.indexOf('localhost') > -1 ? 'true' : 'false'\n var tf = document.createElement('script');\n tf.type = 'text/javascript'; tf.async = true;\n tf.src = (\"https:\" == document.location.protocol ? 'https' : 'http') + \"://api.trustedform.com/trustedform.js?field=xxTrustedFormCertUrl&identifier=\" + vid + \"&ping_field=xxTrustedFormPingUrl&provideReferrer=false&invert_field_sensitivity=true&sandbox=\" + sandbox + \"&l=\" + new Date().getTime() + Math.random();\n var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(tf, s);\n})();"},{$el:"div",attrs:{class:"t-flex t-flex-col t-justify-center t-items-center"},children:[d(e.scope,{outerClass:"!t-max-w-[95%] !t-w-[96%] sm:!t-w-[70%]",innerClass:"!t-w-[98%] !t-max-w-[98%] sm:!t-w-[100%] sm:!t-max-w-[100%]"}),h(e.scope,{outerClass:"!t-max-w-[95%] !t-w-[96%] sm:!t-w-[70%]",innerClass:"!t-w-[98%] !t-max-w-[98%] sm:!t-w-[100%] sm:!t-max-w-[100%]"})]},g(e.scope,{outerClass:"!t-flex !t-flex-col !t-justify-center !t-items-center",wrapperClass:"t-w-[95%] sm:t-w-[80%]",messagesClass:"t-w-[95%] sm:t-w-[80%]"})],{nextOnEnter:!1})}({headlineClass:"!t-text-[#465f87]",subheadlineClass:"!t-text-[#353739]"}),((e={})=>({$el:"div",attrs:{class:{if:"$activeStep === $firstStep()",then:"step-nav "+(e.firstStepButtonClass||"!t-justify-center sm:!t-justify-between"),else:{if:"$activeStep === $lastStep()",then:"step-nav "+(e.lastStepButtonClass||"!t-justify-center"),else:"step-nav !t-justify-between"}}},children:[{$formkit:"button",name:"back_button",onClick:"$setPreviousStep($prevStepFunc($get(form)))",children:"Back",outerClass:{if:"$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())",then:"t-hidden sm:t-block",else:""},style:{if:"$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())",then:"display: none;"},classes:{input:(e.inputClass||"")+" f-navigation-input"}},{$formkit:"button",name:"next_button",onClick:"$setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form)))",children:{if:"$activeStep === $firstStep()",then:e.startText||"Start",else:"Next"},outerClass:{if:"$activeStep === $lastStep()",then:"t-hidden",else:""},style:{if:"$activeStep === $lastStep()",then:"display: none;"},classes:{input:(e.inputClass||"")+" f-navigation-input"}},{$formkit:"submit",name:"submit_button",label:e.submitLabel||"Submit",if:"$activeStep === $lastStep()",style:{if:"$activeStep !== $lastStep()",then:"display: none;"},classes:{input:(e.inputClass||"")+" f-navigation-input !t-w-60",outer:"!t-mt-0 !t-mb-0"}}]}))({startText:"Get Quotes Now",submitLabel:"Get A Quote",inputClass:"!t-text-black !t-font-extrabold !t-bg-[#ffce51]",firstStepButtonClass:"!t-justify-center"}),function(e={}){return{if:"$activeStep === $lastStep()",style:{if:"$activeStep !== $lastStep()",then:"display: none;"},children:[w({attrs:{class:"t-flex t-justify-center t-items-center t-text-sm t-text-gray-500 t-pb-6 sm:t-pb-8"},...e})]}}(),{$el:"pre",if:'$urlParam("fdbg", "") == 1',children:[{$el:"pre",children:"$stringify( $get(form).value )",attrs:{class:"t-text-xs",style:"overflow: scroll"}},{$el:"pre",children:["activeStep: ","$activeStep"],attrs:{class:"t-text-xs",style:"overflow: scroll"}},{$el:"pre",children:["stepHistory: ","$stepHistory"],attrs:{class:"t-text-xs",style:"overflow: scroll"}},{$el:"pre",children:["stepQueue: ","$stepQueue"],attrs:{class:"t-text-xs",style:"overflow: scroll"}},{$el:"pre",children:["steps: ","$stepKeys()"],attrs:{class:"t-text-xs",style:"overflow: scroll"}}]}]}]}]}();
|
|
1
|
+
var roofing=function(){"use strict";function e(){return Object.assign({},...arguments)}const t=t=>{var a;return(a=t).name&&!a.id&&(a.id=a.name),e({$formkit:"text",validation:"required",validationMessages:{required:"Field is required"},labelClass:"required"},t)},a=e=>(e.wrapperClass="side-by-side t-items-center",t(e)),n=e=>(e.wrapperClass="t-flex t-justify-center",e.messagesClass="t-flex t-justify-center",e.inputClass="t-text-center",e.helpClass="t-mt-2.5 !t-text-sm t-text-center",t(e)),r=(e,a={})=>t({$formkit:"FloatingLabelText",name:e?e+":Email":"Email",placeholder:"Email Address",autocomplete:"email","data-tf-sensitive":"false",validation:"required|email",validationMessages:{required:"Email is required",email:"Invalid Email"},inputClass:"t-text-center",wrapperClass:"t-flex t-justify-center",...a}),i=(e,a={})=>t({$formkit:"FloatingLabelText",placeholder:"First Name",name:e?e+":First_Name":"First_Name",autocomplete:"given-name",validationMessages:{required:"First Name is required"},inputClass:"t-text-center",...a}),s=(e,a={})=>t({$formkit:"FloatingLabelText",placeholder:"Last Name",name:e?e+":Last_Name":"Last_Name",autocomplete:"family-name",validationMessages:{required:"Last Name is required"},inputClass:"t-text-center",...a}),o=(e,t={})=>({$el:"div",attrs:{class:"t-flex t-flex-col sm:t-flex-row t-flex-wrap t-gap-x-[2%] t-justify-center sm:!t-max-w-[70%]"},children:[i(e,{outerClass:"sm:!t-max-w-[49%]",...t}),s(e,{outerClass:"sm:!t-max-w-[49%]",...t})]}),l=(e,a={})=>t({$formkit:"FloatingLabelText",datatype:"tel",name:e?e+":Primary_Phone":"Primary_Phone",placeholder:a.placeholder||"Phone Number",maxlength:14,help:a.help||null,autocomplete:"tel-national","data-tf-sensitive":"false",validation:"required|matches:/^[0-9]{3}[0-9]{3}[0-9]{4}$/|valid_phone",validationMessages:{required:"Phone Number is required",matches:"Invalid Phone Format, use (XXX) YYY-ZZZZ",valid_phone:"Invalid Phone Number"},helpClass:"t-mt-2.5 md:t-text-right md:t-mt-[-2px]",inputClass:"t-text-center",wrapperClass:"t-flex t-justify-center",...a}),m=(e,t,r={})=>(t?n:a)({label:t?r.label:"Zip Code:",help:t?r.help??"We try to match you with local help":null,placeholder:"#####",name:e?e+":Zip":"Zip",maxlength:5,inputmode:"numeric",autocomplete:"postal-code",validation:"required|matches:/^[0-9]{5}$/",validationMessages:{required:"Zip Code is required",matches:"Invalid Zip Code"},...r}),c=e=>"group"!==e.type&&"section"!==e.type&&"form"!==e.type&&"hidden"!==e.$formkit&&!e.children,d=e=>{if(c(e))return e;for(var t=e.children.length-1;t>=0;t--){if("string"==typeof e.children)continue;const a=e.children[t];if(c(a))return a;const n=d(a);if(n)return n}return null},p={$el:"div",if:"$activeStep === $lastStep()",attrs:{class:"t-flex t-justify-center t-items-center t-text-sm t-text-gray-500"},children:[{$el:"img",attrs:{loading:"lazy",alt:"",style:{border:0},width:"25",height:"25",src:"https://d27hmee62k45vz.cloudfront.net/lock_icon_1.jpeg"}},{$el:"span",children:"Secure & Encrypted",attrs:{class:"t-pl-2 t-pt-1 t-font-medium"}}]};function u(t={}){return e(p,t)}function f(e){return{$el:"h3",children:e.headline||"Please Provide a Contact Name",attrs:{class:"t-flex t-justify-center t-text-center t-text-xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1 "+(e.headlineClass||"")}}}function y(e){return{$el:"h3",children:e.headline||'$getKey($meta, "finalHeadlines." + ($get(Type_Of_Legal_Problem).value || $get(Category).value), $meta.defaultFinalHeadline)',attrs:{class:"t-flex t-justify-center t-text-center !t-text-xl md:!t-text-2xl t-font-bold t-text-blue-500 t-pb-3 t-pt-4 t-px-1 "+(e.headlineClass||"")+" f-contact-info-headline"}}}function h(e){return{$el:"h5",children:e.subheadline||'$getKey($meta, "finalSubHeadlines." + ($get(Type_Of_Legal_Problem).value || $get(Category).value), $meta.defaultFinalSubHeadline)',attrs:{class:"t-flex t-justify-center t-text-center !t-text-base md:!t-text-lg t-font-semibold t-pb-6 t-pt-0 t-px-3 "+(e.subheadlineClass||"")+" f-contact-info-subheadline"}}}function g(t,a,n={}){const{nextOnEnter:r=!0,nextOnInput:i=!1,stepKey:s,nextStepMap:o,triggerRedirectMap:l,autoFocus:m}=n;if(a&&a.length&&(r||i)){const e=d(a[a.length-1]);e&&!0===r&&(e.onKeypress="$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))"),e&&!0===i&&(e.onInput="$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))")}const c={children:[{$formkit:"group",id:t,name:t,nextStepMap:o,triggerRedirectMap:l,autoFocus:m,children:a}]};return void 0!==n.if&&(c.if=n.if),e(((e,t)=>({$el:"section",if:'$stepEnabled("'+e+'")',attrs:{hidden:'$activeStep !== "'+e+'"',key:t||e}}))(t,s),c)}const x={type:"form",id:"form",config:{validationVisibility:"submit"},onSubmit:'$submit($submitUrl, $prepData, $handleRedirect, "text/plain; charset=UTF-8")',plugins:"$plugins",actions:!1,anchorElement:"form-anchor",useLocalStorage:!0,prepop:{fromURL:!0},errorCodes:{403:{message:"An Error Occurred",abort:!1},409:{abort:!1},429:"An Error Occurred",504:{message:"An Error Occurred",abort:!1}},formClass:"!t-max-w-[40rem]"};function v(e,t){return Object.fromEntries(Object.entries(e).filter((([e])=>t.includes(e))))}const w={};const b={$el:"div",children:[{$el:"div",attrs:{id:"form-anchor",class:"t-absolute",style:{top:"-30px",left:0}}}],attrs:{class:"t-relative"}};const C={$el:"div",attrs:{class:"t-mt-7 t-mb-5 t-w-full t-flex t-flex-col t-justify-center t-items-center",style:{if:"$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())",then:"display: none"}},children:[{$el:"div",attrs:{class:"t-flex t-justify-center"},children:[{$el:"span",attrs:{id:"progress-bar-text",class:"t-text-sm t-mb-1"},children:["0% Complete"]}]},{$el:"div",attrs:{class:"t-bg-gray-100 t-w-9/12 t-rounded"},children:[{$el:"div",attrs:{id:"progress-bar",class:"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]",style:{transition:"width 0.5s ease"}}}]}]};const $=[{$formkit:"hidden",name:"vertical",value:"HomeImprovement"},{$formkit:"hidden",name:"TCPA_Opt_In",value:!0},{$formkit:"hidden",name:"TCPA_Language",value:"$meta.tcpaLanguage"},{$formkit:"hidden",name:"gclid",value:null},{$formkit:"hidden",name:"campaignid",value:null},{$formkit:"hidden",name:"s",value:null}],S=["haveAttorney","degreeOfInterest","commentsWithBankruptcy","zipcode","legalCrossSells","firstAndLast","contactInfo"],I=["haveAttorney","degreeOfInterest","lawyerPaymentMethod","commentsWithBankruptcy","zipcode","legalCrossSells","firstAndLast","contactInfo"],E=["haveAttorney","commentsWithBankruptcy","zipcode","legalCrossSells","firstAndLast","contactInfo"],P={values:{Type_Of_Legal_Problem:{Adoption:["maritalStatus","haveChildren",...I],"Asbestos and Mesothelioma":["incidentDate","doctorTreatment",...S],"Auto and Car Accidents":["incidentDate","atFault","primaryInjury","doctorTreatment","policeReportFiled",...E],Bankruptcy:["totalMonthlyIncome","totalDebt","ownRealEstate","valueOfAssets",...S],"Business Lawyers":["businessServices","businessType","numEmployeesOfBusiness",...S],"Child Custody":["childRelationship","childHome","childPrimaryCaregiver",...I],"Child Support":["childRelationship","childHome","childPrimaryCaregiver",...I],"Civil Rights and Discrimination":["civilRightsType",...S],"Civil Lawsuit":["civilDefense","lawsuitOtherParty",...S],"File a Lawsuit":["civilLawsuitTOLPDisplay","lawsuitOtherParty",...S],"Defend a Lawsuit":["lawsuitOtherParty",...S],"Consumer Lawyers":["consumerLawyerType","incidentDate","lawsuitOtherParty",...S],"Criminal and Felony":["criminalTOLPDisplay","crimeCommittedDate","roleInMatterCriminal","pendingCharges",...I],"Debt and Collections":["totalMonthlyIncome","totalDebt","ownRealEstate","valueOfAssets",...S],"Divorce and Separation":["maritalStatus","haveChildren",...I],"DUI and DWI":["incidentDate","priorAlcoholOffenses","typeOfAlcoholTest","bloodContentAlcoholTest","pendingCharges",...S],"Employment and Workplace":["employmentAndWorkplaceTOLPDisplay","numEmployeesOfBusiness","employerType","employeeAtCompany",...S],Expungement:["incidentDate","criminalChargeType",...I],"Family Issues":["maritalStatus","haveChildren",...I],Foreclosure:["ownRealEstate","typeOfProperty","amountPaymentsPastDue","loanAmount","defaultNotice",...S],Guardianship:["maritalStatus","haveChildren",...I],"Immigration and Visas":["countryOfCitizenship","immigrationLocation","immigrationEntry","immigrationType","immigrationStatus","immigrationDetails",...S],"Landlord and Tenant":["landlordTenantIssue","landlordTenantParty",...S],"Lemon Law":["incidentDate","lawsuitOtherParty",...S],"Long Term Disability":["applicantOccupation","applicantAge","applicantLTDisabilityPolicy","applicantDisabilityHowObtain","applicantPreviouslyAppliedLtdBenefits","applicantReceivedDisabilityBenefits","applicantMonthlySalary",...E],"Medical Malpractice":["incidentDate","claimStatus","doctorTreatment","medicalMalpracticeInjuries",...S],"Patents and Intellectual Property":["patentAssistanceType","patentFor",...S],"Personal Injury":["incidentDate","claimStatus","atFault","primaryInjury","doctorTreatment",...E],"Probate and Estates":["valueOfAssets","typeOfAssets","roleInMatterProbate","estateLegalServicesNeeded",...S],"Property Damage":["wouldLikeLawyerTo",...S],"Real Estate":["realEstateTOLPDisplay","realEstateArea","wouldLikeLawyerTo",...S],"Social Security Disability and Insurance":["applicantAge","disabilityConditionStopWork","disabilityWorkHistory","socialSecurityDisabilityReceivingBenefits","doctorTreatment",...E],"Tax and IRS":["totalDebt","taxProblemDetails","taxLevel","taxIssueType",...S],"Traffic and Tickets":["driversLicenseType","trafficViolations","haveCourtDate",...S],Unemployment:["numEmployeesOfBusiness","employerType","degreeOfInterest","commentsWithBankruptcy","zipcode","legalCrossSells","firstAndLast","contactInfo"],"Victim of a Crime":["crimeCommittedDate","roleInMatterCriminal","pendingCharges",...I],"Wills and Trusts":["valueOfAssets","typeOfAssets","roleInMatterProbate","estateLegalServicesNeeded",...S],"Workers Compensation":["incidentDate","claimStatus","primaryInjury","causeOfInjury","doctorTreatment",...E],"Workplace Harassment":["numEmployeesOfBusiness","employerType","employeeAtCompany",...S],"Workplace Discrimination":["numEmployeesOfBusiness","employerType","employeeAtCompany",...S],"Wrongful Death":["incidentDate","relationshipToVictim","criminalChargesFiled","causeOfDeath",...E],"Wrongful Termination":["numEmployeesOfBusiness","employerType",...S]},"*":S}};function k(e,t=[],a={}){const n={...e};return n.values=function e(n){const r={};for(const i in n)Array.isArray(n[i])?r[i]=n[i].filter((e=>!t.includes(e))).map((e=>a[e]||e)):"object"==typeof n[i]?r[i]=e(n[i]):r[i]=n[i];return r}(e.values),n}k(P,["legalCrossSells"],{commentsWithBankruptcy:"comments"});const T=P.values.Type_Of_Legal_Problem;T["Auto and Car Accidents"].filter((e=>"legalCrossSells"!==e)),T["Workers Compensation"].filter((e=>"legalCrossSells"!==e)),T["Personal Injury"].filter((e=>"legalCrossSells"!==e)),T["Personal Injury"].filter((e=>"legalCrossSells"!==e)),T["Auto and Car Accidents"].filter((e=>"legalCrossSells"!==e)),T["Auto and Car Accidents"].filter((e=>"legalCrossSells"!==e)),T["Personal Injury"].filter((e=>"legalCrossSells"!==e)),T["Personal Injury"].filter((e=>"legalCrossSells"!==e)),T["Child Custody"],T["Child Support"],P.values["*"],T["Family Issues"],T["Child Support"],T["Child Custody"],P.values["*"],T["Divorce and Separation"],T["Defend a Lawsuit"],T["File a Lawsuit"];k({values:{Type_Of_Legal_Problem:{"Defend a Lawsuit":T["Defend a Lawsuit"],"File a Lawsuit":T["File a Lawsuit"]},"*":["lawsuitOtherParty",...S]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"});k({values:{Type_Of_Legal_Problem_Display:{"Automobile Accident":T["Auto and Car Accidents"],"Contract Disputes":T["Business Lawyers"],"Dog Bite":T["Personal Injury"],"Employment and Workplace":T["Employment and Workplace"],Fraud:T["Consumer Lawyers"],"Medical Malpractice":T["Medical Malpractice"],"Personal Injury":T["Personal Injury"],"Property Damage":T["Property Damage"],"Real Estate":T["Real Estate"],"Not Sure or Other":P.values["*"]},"*":["lawsuitOtherParty",...S]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"});k({values:{Type_Of_Legal_Problem_Display:{"Victim of a Crime":T["Victim of a Crime"],"DUI and DWI":T["DUI and DWI"],Expungement:T.Expungement,"Not Sure or Other":P.values["*"]},"*":["crimeCommittedDate","roleInMatterCriminal","pendingCharges",...I]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"});k({values:{Type_Of_Legal_Problem_Display:{"Wrongful Termination":T["Wrongful Termination"],"Workers Compensation":T["Workers Compensation"],"Personal Injury":T["Personal Injury"],Unemployment:T.Unemployment},"*":["numEmployeesOfBusiness","employerType","employeeAtCompany",...S]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"}),T["Workplace Harassment"],T["Workplace Discrimination"],T["Probate and Estates"],T["Wills and Trusts"],T["Wrongful Death"],T["Patents and Intellectual Property"],T["Business Lawyers"],T["Business Lawyers"],P.values["*"];k({values:{Type_Of_Legal_Problem_Display:{Foreclosure:T.Foreclosure,"Landlord and Tenant":T["Landlord and Tenant"],"Wills, Trusts, and Estates":T["Wills and Trusts"],"Property Damage":T["Property Damage"]},"*":["realEstateArea","wouldLikeLawyerTo",...S]}},["legalCrossSells"],{commentsWithBankruptcy:"comments"});const D={Additions:'Example: "I would like to add a sunroom to my home"',Appliances:'Example: "I need to repair a dishwasher"',Appraisals:'Example: "I need to get my home appraised"',Cabinets:'Example: "I want to install new kitchen cabinets"',Carpentry:'Example: "I need someone to build custom shelves"',Carpets:'Example: "I want to replace the carpets in my living room"',Cleaning:'Example: "I need a professional cleaning service for my home"',Countertops:'Example: "I want to install granite countertops in my kitchen"',"Decks and Porches":'Example: "I want to build a new deck in my backyard"',Demolition:'Example: "I need to demolish a wall in my home"',Doors:'Example: "I want to replace the front door of my house"',Driveways:'Example: "I need to repair my driveway"',"Drywall and Plaster":'Example: "I need to repair a hole in my drywall"',Electrical:'Example: "I need an electrician to install new light fixtures"',Fencing:'Example: "I want to install a privacy fence in my backyard"',Flooring:'Example: "I want to install hardwood flooring in my living room"',Foundations:'Example: "I need to repair the foundation of my house"',"Garage Doors":'Example: "I want to replace my garage door"',"General Contractors":'Example: "I need a general contractor for a home renovation"',Gutters:'Example: "I need to clean and repair my gutters"',Handyman:'Examples: "I need two rooms painted" or "I need to replace a faucet", etc',"Holiday Decorators":'Example: "I want to hire someone to decorate my home for the holidays"',"Smart Home":'Example: "I want to install a smart home automation system"',"Home Builders":'Example: "I want to build a custom home"',"Home Inspection":'Example: "I need a home inspection before buying a house"',"Home Organization":'Example: "I need help organizing my closets and storage"',"Home Security":'Example: "I want to install a home security system"',"Home Staging":'Example: "I need a home staging service to prepare my house for sale"',"Home Theater":'Example: "I want to set up a home theater system"',"Home Warranties":'Example: "I want to purchase a home warranty"',"Hot Tubs":'Example: "I want to install a hot tub in my backyard"',"Heating and Cooling":'Example: "I need to repair my air conditioning unit"',Insulation:'Example: "I want to improve the insulation in my home"',"Junk Removal":'Example: "I need a service to remove junk and debris from my property"',Landscaping:'Example: "I want to redesign my backyard landscaping"',Locksmiths:'Example: "I need a locksmith to change the locks on my doors"',"Masonry and Concrete":'Example: "I need to repair a cracked concrete driveway"',Restoration:'Example: "My basement is flooded and needs restoration"',Moving:'Example: "I need a moving company to help me relocate"',Painting:'Example: "I want to paint the interior walls of my house"',"Pest Control":'Example: "I need pest control services for my home"',Pools:'Example: "I want to install a swimming pool in my backyard"',Plumbing:'Example: "I need a plumber to fix a leaky faucet"',"Pressure Washing":'Example: "I want to pressure wash the exterior of my house"',Remodeling:'Example: "I want to remodel my kitchen"',Roofing:'Example: "I need to repair a leaky roof"',Sheds:'Example: "I want to build a storage shed in my backyard"',Siding:'Example: "I want to replace the siding on my house"',Solar:'Example: "I want to install solar panels on my roof"',Tiling:'Example: "I want to install new tiles in my bathroom"',"Tree Services":'Example: "I need a large tree removed"',"Walk-in Tubs":'Example: "I want to install a walk-in tub in my bathroom"',Waterproofing:'Example: "I need to waterproof my basement"',"Window Cleaning":'Example: "I need a professional window cleaning service"',Windows:'Example: "I want to replace 3 windows in my house"',"Not Sure or Other":'Example: "I need general handyman services"'},L={Appliances:"Our Pros Are Ready To Help",Electrical:"Electricians Are Standing By!",Restoration:"Restoration Pros Are Standing By!",Plumbing:"Plumbers Are Standing By!",Roofing:"Roofers Are Standing By!"},A={Additions:"Get your dream addition started today!",Appliances:"Confirm your contact information:",Appraisals:"Accurate home appraisals at your service.",Cabinets:"Transform your kitchen with new cabinets.",Carpentry:"Custom carpentry solutions for your home.",Carpets:"Upgrade your home with new carpets.",Cleaning:"Professional cleaning services for a spotless home.",Countertops:"Install beautiful countertops in your kitchen.","Decks and Porches":"Build the perfect outdoor space.",Demolition:"Safe and efficient demolition services.",Doors:"Enhance your home with new doors.",Driveways:"Repair or install a new driveway.","Drywall and Plaster":"Expert drywall and plaster services.",Electrical:"Confirm your contact information:",Fencing:"Secure your property with new fencing.",Flooring:"Install stunning new floors.",Foundations:"Foundation repair and maintenance.","Garage Doors":"Upgrade your garage with new doors.","General Contractors":"Top contractors for your home projects.",Gutters:"Clean and repair your gutters.",Handyman:"Handyman services for all your needs.","Holiday Decorators":"Get your home ready for the holidays.","Smart Home":"Upgrade to a smart home today.","Home Builders":"Build your custom dream home.","Home Inspection":"Thorough home inspections for peace of mind.","Home Organization":"Organize your home with expert help.","Home Security":"Protect your home with a security system.","Home Staging":"Stage your home for a quick sale.","Home Theater":"Create the ultimate home theater.","Home Warranties":"Get a warranty for your home.","Hot Tubs":"Install a relaxing hot tub.","Heating and Cooling":"Confirm your contact information:",Insulation:"Improve your home's insulation.","Junk Removal":"Remove unwanted junk from your property.",Landscaping:"Transform your yard with expert landscaping.",Locksmiths:"Professional locksmith services.","Masonry and Concrete":"Expert masonry and concrete work.",Restoration:"Confirm your contact information:",Moving:"Reliable moving services.",Painting:"Professional painting services.","Pest Control":"Effective pest control solutions.",Pools:"Install or repair your pool.",Plumbing:"Confirm your contact information:","Pressure Washing":"Pressure wash your home's exterior.",Remodeling:"Remodel your home with top professionals.",Roofing:"Confirm your contact information:",Sheds:"Build a new shed for extra storage.",Siding:"Upgrade your home's siding.",Solar:"Install solar panels and save on energy.",Tiling:"Install beautiful new tiles.","Walk-in Tubs":"Install a convenient walk-in tub.",Waterproofing:"Waterproof your home to prevent damage.","Window Cleaning":"Professional window cleaning services.",Windows:"Replace your windows with energy-efficient options."};var O;return[function(t=null,a=!1){let n=D,r=L,i=A;return t&&(n=v(D,t),r=v(L,t),i=v(A,t)),{type:"meta",data:e(w,{tcpaLanguage:a?'By clicking this button, I agree to the Terms of Use, and consent to be contacted by up to four home service <a href="/providers" target="_blank" class="t-underline">companies 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.':'By checking this box, I a) agree to the Terms of Use, and b) consent to be contacted by up to four home service <a href="/providers" target="_blank" class="t-underline">companies 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.',defaultCommentsPlaceholder:'$getKey($meta, "commentsPlaceholders." + $get(Category).value, $meta.defaultCommentsPlaceholder)',commentsPlaceholders:n,defaultFinalHeadline:"We Found Matching Contractors!",finalHeadlines:r,defaultFinalSubHeadline:"Compare quotes and save. Verify contact info:",finalSubHeadlines:i})}}("Roofing",!0),(O={children:[{$el:"div",attrs:{id:"form-anchor",class:"t-absolute",style:{top:"-80px",left:0}}}]},e(b,O)),{$cmp:"FormKit",props:function(t){const a=e(x,t);return a.formId&&!a.name&&(a.name=a.formId),a}({formId:"roofing",redirectMap:{"*":"https://listings.zipcontractor.com/api/v1/redirect?zone_id=4&vertical=HomeImprovement&category=${properties.Category}&zip_code=${properties.Zip}&sub_id=${properties.vid}"}}),children:[function(t){return e(C,t)}(),function(t={}){return e(function(e={}){return{$el:"h1",attrs:{class:"t-flex t-justify-center t-text-center t-text-[1.7rem] sm:t-text-[2rem] t-font-semibold t-pt-5 t-px-7 md:t-px-3 "+(e.headlineClass||"")+" f-first-headline"}}}(t),t)}({children:'$urlParam("hl", "Compare Quotes and Save")',if:"$activeStep === $firstStep()"}),function(t={}){return e(function(e={}){return{$el:"h3",attrs:{class:"t-flex t-justify-center t-text-center t-text-[1.1rem] md:t-text-[1.2rem] t-font-medium t-text-blue-500 t-px-10 t-pb-3 "+(e.subheadlineClass||"")+" f-first-subheadline"}}}(t),t)}({children:'$urlParam("shl", "Please Enter Your Zip Code:")',if:"$activeStep === $firstStep()",subheadlineClass:"!t-font-bold !t-text-[#465f87]"}),...$,{$el:"div",attrs:{class:"form-body"},children:[function(e={}){return g("roofingFirstStep",[{$formkit:"hidden",name:"Category",id:"Category",value:"Roofing"},m(e.scope,!0,e.input)],e)}({nextOnInput:!1,headlineClass:"t-text-lg",input:{help:null}}),function(e={}){return g("firstAndLast",[f({headline:e.headline??"Who is looking for help?",headlineClass:e.headlineClass}),{$el:"div",attrs:{class:"t-flex t-flex-col t-justify-center t-items-center t-pt-3"},children:[o(e.scope)]}],e)}({headlineClass:"!t-text-dark",headline:"Who is looking for a roofer?"}),function(e={}){return g("contactInfo",[y(e),h(e),{$el:"script",if:"$activeStep === $lastStep()",children:"(function() {\n if (window.xxTrustedFormLoaded) {\n return\n }\n var vid = '';\n if (typeof window.zar !== 'undefined') {\n vid = window.zar.getVID();\n }\n window.xxTrustedFormLoaded = true;\n var sandbox = document.location.hostname.indexOf('localhost') > -1 ? 'true' : 'false'\n var tf = document.createElement('script');\n tf.type = 'text/javascript'; tf.async = true;\n tf.src = (\"https:\" == document.location.protocol ? 'https' : 'http') + \"://api.trustedform.com/trustedform.js?field=xxTrustedFormCertUrl&identifier=\" + vid + \"&ping_field=xxTrustedFormPingUrl&provideReferrer=false&invert_field_sensitivity=true&sandbox=\" + sandbox + \"&l=\" + new Date().getTime() + Math.random();\n var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(tf, s);\n})();"},{$el:"div",attrs:{class:"t-flex t-flex-col t-justify-center t-items-center"},children:[r(e.scope,{outerClass:"!t-max-w-[95%] !t-w-[96%] sm:!t-w-[70%]",innerClass:"!t-w-[98%] !t-max-w-[98%] sm:!t-w-[100%] sm:!t-max-w-[100%]"}),l(e.scope,{outerClass:"!t-max-w-[95%] !t-w-[96%] sm:!t-w-[70%]",innerClass:"!t-w-[98%] !t-max-w-[98%] sm:!t-w-[100%] sm:!t-max-w-[100%]"})]}],{nextOnEnter:!1})}({headlineClass:"!t-text-[#465f87]",subheadlineClass:"!t-text-[#353739]"}),((e={})=>({$el:"div",attrs:{class:{if:"$activeStep === $firstStep()",then:"step-nav "+(e.firstStepButtonClass||"!t-justify-center sm:!t-justify-between"),else:{if:"$activeStep === $lastStep()",then:"step-nav "+(e.lastStepButtonClass||"!t-justify-center"),else:"step-nav !t-justify-between"}}},children:[{$formkit:"button",name:"back_button",onClick:"$setPreviousStep($prevStepFunc($get(form)))",children:"Back",outerClass:{if:"$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())",then:"t-hidden sm:t-block",else:""},style:{if:"$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())",then:"display: none;"},classes:{input:(e.inputClass||"")+" f-navigation-input"}},{$formkit:"button",name:"next_button",onClick:"$setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form)))",children:{if:"$activeStep === $firstStep()",then:e.startText||"Start",else:"Next"},outerClass:{if:"$activeStep === $lastStep()",then:"t-hidden",else:""},style:{if:"$activeStep === $lastStep()",then:"display: none;"},classes:{input:(e.inputClass||"")+" f-navigation-input"}},{$formkit:"submit",name:"submit_button",label:e.submitLabel||"Submit",if:"$activeStep === $lastStep()",style:{if:"$activeStep !== $lastStep()",then:"display: none;"},classes:{input:(e.inputClass||"")+" f-navigation-input !t-w-60",outer:"!t-mt-0 !t-mb-0"}}]}))({startText:"Get Quotes Now",submitLabel:"Get A Quote",inputClass:"!t-text-black !t-font-extrabold !t-bg-[#ffce51]",firstStepButtonClass:"!t-justify-center",lastStepButtonClass:"!t-justify-center !t-my-0 !t-py-0"}),{if:"$activeStep === $lastStep()",style:{if:"$activeStep !== $lastStep()",then:"display: none;"},children:[{$el:"div",attrs:{class:"!t-text-[0.7rem] t-text-slate-500 t-font-normal !t-leading-tight !t-pt-0 !t-pb-3 !t-max-w-[95%] !t-w-[96%] sm:!t-w-[70%] !t-mx-auto",innerHTML:"$meta.tcpaLanguage"}}]},function(e={}){return{if:"$activeStep === $lastStep()",style:{if:"$activeStep !== $lastStep()",then:"display: none;"},children:[u({attrs:{class:"t-flex t-justify-center t-items-center t-text-sm t-text-gray-500 t-pb-6 sm:t-pb-8"},...e})]}}(),{$el:"pre",if:'$urlParam("fdbg", "") == 1',children:[{$el:"pre",children:"$stringify( $get(form).value )",attrs:{class:"t-text-xs",style:"overflow: scroll"}},{$el:"pre",children:["activeStep: ","$activeStep"],attrs:{class:"t-text-xs",style:"overflow: scroll"}},{$el:"pre",children:["stepHistory: ","$stepHistory"],attrs:{class:"t-text-xs",style:"overflow: scroll"}},{$el:"pre",children:["stepQueue: ","$stepQueue"],attrs:{class:"t-text-xs",style:"overflow: scroll"}},{$el:"pre",children:["steps: ","$stepKeys()"],attrs:{class:"t-text-xs",style:"overflow: scroll"}}]}]}]}]}();
|