bhl-forms 0.6.5 → 0.6.7
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.iife.js +1 -1
- package/dist/bhl-forms.modern.iife.js +1 -1
- package/dist/bhl-forms.modern.umd.js +1 -1
- package/dist/bhl-forms.umd.js +1 -1
- package/dist/forms/accidentsAndInjuries.es.js +1442 -862
- package/dist/forms/accidentsAndInjuries.iife.js +1 -1
- package/dist/forms/accidentsAndInjuries.json +1 -1
- package/dist/forms/appraisals.es.js +115 -115
- package/dist/forms/appraisals.iife.js +1 -1
- package/dist/forms/childAndFamily.es.js +790 -764
- package/dist/forms/childAndFamily.iife.js +1 -1
- package/dist/forms/childAndFamily.json +1 -1
- package/dist/forms/childAndFamilySingle.es.js +1136 -757
- package/dist/forms/childAndFamilySingle.iife.js +1 -1
- package/dist/forms/childAndFamilySingle.json +1 -1
- package/dist/forms/civilLawsuit.es.js +2001 -1352
- package/dist/forms/civilLawsuit.iife.js +1 -1
- package/dist/forms/civilLawsuit.json +1 -1
- package/dist/forms/coins.es.js +115 -115
- package/dist/forms/coins.iife.js +1 -1
- package/dist/forms/contracts.es.js +1454 -715
- package/dist/forms/contracts.iife.js +1 -1
- package/dist/forms/contracts.json +1 -1
- package/dist/forms/criminal.es.js +1891 -2482
- package/dist/forms/criminal.iife.js +1 -1
- package/dist/forms/criminal.json +1 -1
- package/dist/forms/employmentAndWorkplace.es.js +2178 -934
- package/dist/forms/employmentAndWorkplace.iife.js +1 -1
- package/dist/forms/employmentAndWorkplace.json +1 -1
- package/dist/forms/generalLegal.es.js +854 -808
- package/dist/forms/generalLegal.iife.js +1 -1
- package/dist/forms/generalLegal.json +1 -1
- package/dist/forms/generalLegalPopUnder.es.js +854 -807
- package/dist/forms/generalLegalPopUnder.iife.js +1 -1
- package/dist/forms/generalLegalPopUnder.json +1 -1
- package/dist/forms/generalLegalPopUnderSingle.es.js +4383 -0
- package/dist/forms/generalLegalPopUnderSingle.iife.js +1 -0
- package/dist/forms/generalLegalPopUnderSingle.json +1 -0
- package/dist/forms/generalLegalSingle.es.js +1672 -1629
- package/dist/forms/generalLegalSingle.iife.js +1 -1
- package/dist/forms/generalLegalSingle.json +1 -1
- package/dist/forms/generalLegalThankYou.es.js +710 -695
- package/dist/forms/generalLegalThankYou.iife.js +1 -1
- package/dist/forms/generalLegalThankYou.json +1 -1
- package/dist/forms/harassmentAndDiscrimination.es.js +1465 -681
- package/dist/forms/harassmentAndDiscrimination.iife.js +1 -1
- package/dist/forms/harassmentAndDiscrimination.json +1 -1
- package/dist/forms/malpractice.es.js +1764 -1066
- package/dist/forms/malpractice.iife.js +1 -1
- package/dist/forms/malpractice.json +1 -1
- package/dist/forms/mechanics.es.js +115 -115
- package/dist/forms/mechanics.iife.js +1 -1
- package/dist/forms/realEstate.es.js +1557 -1209
- package/dist/forms/realEstate.iife.js +1 -1
- package/dist/forms/realEstate.json +1 -1
- package/dist/forms/repossession.es.js +1811 -1085
- package/dist/forms/repossession.iife.js +1 -1
- package/dist/forms/repossession.json +1 -1
- package/dist/forms/ssdi.es.js +672 -672
- package/dist/forms/ssdi.iife.js +1 -1
- package/dist/forms/ssdi.json +1 -1
- package/dist/forms/testForm.es.js +473 -468
- package/dist/forms/testForm.iife.js +1 -1
- package/dist/forms/testForm.json +1 -1
- package/dist/forms/testRedirects.es.js +105 -102
- package/dist/forms/testRedirects.iife.js +1 -1
- package/dist/forms/testRedirects.json +1 -1
- package/dist/forms/vets.es.js +115 -115
- package/dist/forms/vets.iife.js +1 -1
- package/dist/forms/willsAndTrusts.es.js +1298 -705
- 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
- package/dist/forms/generalLegalPopUnderTF.es.js +0 -3087
- package/dist/forms/generalLegalPopUnderTF.iife.js +0 -1
- package/dist/forms/generalLegalPopUnderTF.json +0 -1
|
@@ -10,135 +10,166 @@ const DEFAULT_FINAL_HEADLINE_DYNAMIC = '$getKey($meta, "finalHeadlines." + $get(
|
|
|
10
10
|
const DEFAULT_FINAL_SUBHEADLINE = 'You may benefit from speaking with a legal professional. Please verify your contact information.';
|
|
11
11
|
const DEFAULT_FINAL_SUBHEADLINE_DYNAMIC = '$getKey($meta, "finalSubHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalSubHeadline)';
|
|
12
12
|
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
409: { abort: false },
|
|
28
|
-
429: "An Error Occurred",
|
|
29
|
-
504: { message: "An Error Occurred", abort: false },
|
|
30
|
-
},
|
|
31
|
-
formClass: '!t-max-w-[40rem]'
|
|
13
|
+
const select = (updates) => {
|
|
14
|
+
if (updates.name && !updates.id) {
|
|
15
|
+
updates.id = updates.name;
|
|
16
|
+
}
|
|
17
|
+
return merge({
|
|
18
|
+
$formkit: 'select',
|
|
19
|
+
placeholder: "Please Select",
|
|
20
|
+
validation: 'required',
|
|
21
|
+
validationMessages: {
|
|
22
|
+
required: 'Field is required'
|
|
23
|
+
},
|
|
24
|
+
inputClass: 't-bg-white',
|
|
25
|
+
labelClass: 'required'
|
|
26
|
+
}, updates)
|
|
32
27
|
};
|
|
33
28
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
29
|
+
const sbsSelect = (updates) => {
|
|
30
|
+
updates.labelClass = 'required';
|
|
31
|
+
updates.wrapperClass = 'side-by-side t-items-center';
|
|
32
|
+
updates.innerClass = 'select-height-content';
|
|
33
|
+
updates.helpClass = 't-mt-2.5 md:t-text-right md:t-mt-[-5px]';
|
|
34
|
+
return select(updates)
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
const text = (updates) => {
|
|
38
|
+
if (updates.name && !updates.id) {
|
|
39
|
+
updates.id = updates.name;
|
|
41
40
|
}
|
|
42
|
-
return
|
|
43
|
-
|
|
41
|
+
return merge({
|
|
42
|
+
$formkit: 'text',
|
|
43
|
+
validation: 'required',
|
|
44
|
+
validationMessages: {
|
|
45
|
+
required: 'Field is required'
|
|
46
|
+
},
|
|
47
|
+
labelClass: 'required'
|
|
48
|
+
}, updates)
|
|
49
|
+
};
|
|
44
50
|
|
|
45
|
-
const
|
|
46
|
-
|
|
51
|
+
const sbsText = (updates) => {
|
|
52
|
+
updates.wrapperClass = 'side-by-side t-items-center';
|
|
53
|
+
return text(updates)
|
|
47
54
|
};
|
|
48
55
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
56
|
+
const category = () => sbsSelect({
|
|
57
|
+
label: 'Category:',
|
|
58
|
+
name: 'category',
|
|
59
|
+
id: 'category',
|
|
60
|
+
options: [
|
|
61
|
+
'Fruits',
|
|
62
|
+
'Vegetables'
|
|
63
|
+
]
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
const email = () => sbsText({
|
|
67
|
+
$formkit: 'email',
|
|
68
|
+
name: 'Email',
|
|
69
|
+
label: 'Email Address:',
|
|
70
|
+
placeholder: 'email@domain.com',
|
|
71
|
+
autocomplete: 'email',
|
|
72
|
+
'data-tf-sensitive': 'false',
|
|
73
|
+
validation: 'required|email',
|
|
74
|
+
validationMessages: {
|
|
75
|
+
required: 'Email is required',
|
|
76
|
+
email: 'Invalid Email'
|
|
57
77
|
}
|
|
58
|
-
}
|
|
78
|
+
});
|
|
59
79
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
})
|
|
71
|
-
}
|
|
80
|
+
const firstName = () => sbsText({
|
|
81
|
+
$formkit: 'text',
|
|
82
|
+
label: 'First Name:',
|
|
83
|
+
placeholder: 'First',
|
|
84
|
+
name: 'First_Name',
|
|
85
|
+
autocomplete: "given-name",
|
|
86
|
+
validationMessages: {
|
|
87
|
+
required: 'First Name is required'
|
|
88
|
+
}
|
|
89
|
+
});
|
|
72
90
|
|
|
73
|
-
const
|
|
74
|
-
$
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
style: { top: '-30px', left: 0 }
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
],
|
|
85
|
-
attrs: {
|
|
86
|
-
class: 't-relative'
|
|
91
|
+
const lastName = () => sbsText({
|
|
92
|
+
$formkit: 'text',
|
|
93
|
+
label: 'Last Name:',
|
|
94
|
+
placeholder: 'Last',
|
|
95
|
+
name: 'Last_Name',
|
|
96
|
+
autocomplete: "family-name",
|
|
97
|
+
validationMessages: {
|
|
98
|
+
required: 'Last Name is required'
|
|
87
99
|
}
|
|
88
|
-
};
|
|
100
|
+
});
|
|
89
101
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
102
|
+
const phone = () => sbsText({
|
|
103
|
+
$formkit: 'tel',
|
|
104
|
+
name: 'Primary_Phone',
|
|
105
|
+
label: 'Phone Number:',
|
|
106
|
+
placeholder: '###-###-####',
|
|
107
|
+
maxlength: 12,
|
|
108
|
+
help: '10-digit phone number, hyphens optional',
|
|
109
|
+
autocomplete: 'tel-national',
|
|
110
|
+
'data-tf-sensitive': 'false',
|
|
111
|
+
validation: 'required|matches:/^[0-9]{3}-?[0-9]{3}-?[0-9]{4}$/|valid_phone',
|
|
112
|
+
validationMessages: {
|
|
113
|
+
required: 'Field is required',
|
|
114
|
+
matches: 'Invalid Phone Format, use ###-###-####',
|
|
115
|
+
valid_phone: 'Invalid Phone Number'
|
|
116
|
+
},
|
|
117
|
+
helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]"
|
|
118
|
+
});
|
|
96
119
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
120
|
+
const TCPAConsent = () => ({
|
|
121
|
+
$formkit: 'checkbox',
|
|
122
|
+
label: '$meta.tcpaLanguage',
|
|
123
|
+
name: 'TCPA_Opt_In',
|
|
124
|
+
'data-tf-sensitive': 'false',
|
|
125
|
+
validation: 'required|accepted',
|
|
126
|
+
validationMessages: {
|
|
127
|
+
required: 'Consent is required',
|
|
128
|
+
accepted: 'Consent is required'
|
|
129
|
+
},
|
|
130
|
+
classes: {
|
|
131
|
+
label: "t-text-xs t-text-slate-500 t-font-normal"
|
|
103
132
|
}
|
|
104
|
-
}
|
|
133
|
+
});
|
|
105
134
|
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
135
|
+
const zipcode = () => sbsText({
|
|
136
|
+
label: 'Zip Code:',
|
|
137
|
+
placeholder: '#####',
|
|
138
|
+
name: 'Zip',
|
|
139
|
+
maxlength: 5,
|
|
140
|
+
inputmode: "numeric",
|
|
141
|
+
autocomplete: 'postal-code',
|
|
142
|
+
validation: 'required|matches:/^[0-9]{5}$/',
|
|
143
|
+
validationMessages: {
|
|
144
|
+
required: 'Zip Code is required',
|
|
145
|
+
matches: 'Invalid Zip Code'
|
|
146
|
+
}
|
|
147
|
+
});
|
|
112
148
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
children: '$urlParam("hl", "Start Here For a Free Consultation")',
|
|
116
|
-
if: '$activeStep === $firstStep()'
|
|
117
|
-
})
|
|
118
|
-
}
|
|
149
|
+
const NEXT_ON_ENTER = '$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
|
|
150
|
+
const NEXT_ON_INPUT = '$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
|
|
119
151
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
152
|
+
const isInput = (n) => { return (n.type !== 'group' && n.type !== 'section' && n.type !== 'form' && n.$formkit !== 'hidden' && !n.children) };
|
|
153
|
+
|
|
154
|
+
const findLastInput = (n) => {
|
|
155
|
+
if (isInput(n)) {
|
|
156
|
+
return n
|
|
157
|
+
}
|
|
158
|
+
for (var i = n.children.length - 1; i >= 0; i--) {
|
|
159
|
+
if (typeof n.children === 'string') {
|
|
160
|
+
continue
|
|
161
|
+
}
|
|
162
|
+
const child = n.children[i];
|
|
163
|
+
if (isInput(child)) {
|
|
164
|
+
return child
|
|
165
|
+
}
|
|
166
|
+
const res = findLastInput(child);
|
|
167
|
+
if (res) {
|
|
168
|
+
return res
|
|
125
169
|
}
|
|
126
170
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
function subHeadline(updates = {}) {
|
|
130
|
-
return merge(
|
|
131
|
-
subHeadlineDefaults(updates),
|
|
132
|
-
updates
|
|
133
|
-
)
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
function defaultSubHeadline() {
|
|
137
|
-
return subHeadline({
|
|
138
|
-
children: '$urlParam("shl", "Our Service is Fast and Free!")',
|
|
139
|
-
if: '$activeStep === $firstStep()'
|
|
140
|
-
})
|
|
141
|
-
}
|
|
171
|
+
return null
|
|
172
|
+
};
|
|
142
173
|
|
|
143
174
|
const secureIconDefault = {
|
|
144
175
|
$el: 'div',
|
|
@@ -170,7 +201,6 @@ const secureIconDefault = {
|
|
|
170
201
|
]
|
|
171
202
|
};
|
|
172
203
|
|
|
173
|
-
|
|
174
204
|
function secureIcon(updates) {
|
|
175
205
|
return merge(
|
|
176
206
|
secureIconDefault,
|
|
@@ -178,365 +208,56 @@ function secureIcon(updates) {
|
|
|
178
208
|
)
|
|
179
209
|
}
|
|
180
210
|
|
|
181
|
-
|
|
182
|
-
{
|
|
183
|
-
$
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
$formkit: 'hidden',
|
|
189
|
-
name: "campaignid",
|
|
190
|
-
value: null
|
|
191
|
-
},
|
|
192
|
-
{
|
|
193
|
-
$formkit: 'hidden',
|
|
194
|
-
name: "s",
|
|
195
|
-
value: null
|
|
211
|
+
function contactStepHeadline(updates) {
|
|
212
|
+
return {
|
|
213
|
+
$el: 'h3',
|
|
214
|
+
children: updates.headline || DEFAULT_FINAL_HEADLINE_DYNAMIC,
|
|
215
|
+
attrs: {
|
|
216
|
+
class: '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' + ' ' + (updates.headlineClass || '')
|
|
217
|
+
}
|
|
196
218
|
}
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
const hiddenInputsLegal = [
|
|
200
|
-
{
|
|
201
|
-
$formkit: 'hidden',
|
|
202
|
-
name: "vertical",
|
|
203
|
-
value: "Legal"
|
|
204
|
-
},
|
|
205
|
-
{
|
|
206
|
-
$formkit: 'hidden',
|
|
207
|
-
name: "TCPA_Language",
|
|
208
|
-
value: "$meta.tcpaLanguage"
|
|
209
|
-
},
|
|
210
|
-
...hiddenInputsBase
|
|
211
|
-
];
|
|
212
|
-
|
|
213
|
-
const TOLPCommentsPlaceholders = {
|
|
214
|
-
'Adoption': 'Example: "I need help with adoption forms"',
|
|
215
|
-
'Asbestos and Mesothelioma': 'Example: "I was exposed to asbestos at work and would like to file a claim"',
|
|
216
|
-
'Auto and Car Accidents': 'Example: "A truck crashed into my car on the highway" or "I\'ve been involved in a hit and run accident"',
|
|
217
|
-
'Bankruptcy': 'Example: "I need help filing for bankruptcy"',
|
|
218
|
-
'Birth Certificate and Name Change': 'Example: "Just married and would like to change my last name"',
|
|
219
|
-
'Business Lawyers': 'Example: "I need help incorporating a business" or "I would like a legal contract reviewed"',
|
|
220
|
-
'Child Custody and Support': 'Example: "Need help getting custody" or "Issues with child support payments"',
|
|
221
|
-
'Child Custody': 'Example: "Need help getting custody"',
|
|
222
|
-
'Child Support': 'Example: "Issues with child support payments"',
|
|
223
|
-
'Civil Rights and Discrimination': 'Example: "Police brutality" or "Coworker keeps harassing me"',
|
|
224
|
-
'Civil Lawsuit': 'Example: "A contractor took my money and never completed the job" or "I am being sued by a neighbor"',
|
|
225
|
-
'File a Lawsuit': 'Example: "A contractor took my money and never completed the job"',
|
|
226
|
-
'Defend a Lawsuit': 'Example: "I am being sued by a neighbor"',
|
|
227
|
-
'Consumer Lawyers': 'Example: "Someone committed fraud against me" or "A contractor took my money and never completed the job"',
|
|
228
|
-
'Copyrights and Trademarks': 'Example: "I would like to register a trademark or copyright a name"',
|
|
229
|
-
'Criminal and Felony': 'Example: "I was arrested for DUI and need legal defense" or "I am being charged with assault"',
|
|
230
|
-
'Debt and Collections': 'Example: "I would like to consolidate my debt" or "A collection agency is harassing me"',
|
|
231
|
-
'Divorce and Separation': 'Example: "I would like to file for an uncontested divorce"',
|
|
232
|
-
'DUI and DWI': 'Example: "I was arrested for DUI and need legal defense"',
|
|
233
|
-
'Elder Law': 'Example: "I would like help with Estate Planning" or "I need help with a guardianship"',
|
|
234
|
-
'Employment and Workplace': 'Example: "I was injured while on the job" or "My company is discriminating against me"',
|
|
235
|
-
'Expungement': 'Example: "I would like to file for an expungement and clear my record"',
|
|
236
|
-
'Family Issues': 'Example: "I need help with guardianship" or "I need a simple will created"',
|
|
237
|
-
'Foreclosure': 'Example: "I need help to avoid foreclosure on my house"',
|
|
238
|
-
'Guardianship': 'Example: "I need help with guardianship documents"',
|
|
239
|
-
'Harassment and Discrimination': 'Example: "I am being discriminated at work" or "My neighbor is harassing me"',
|
|
240
|
-
'Sexual Harassment': 'Example: "I am being sexually harassed by a coworker"',
|
|
241
|
-
'Workplace Harassment': 'Example: "My coworker is being aggressive towards me"',
|
|
242
|
-
'Non-Workplace Harassment': 'Example: "My neighbor is harassing me"',
|
|
243
|
-
'Workplace Discrimination': 'Example: "I am being discriminated at work based on my age"',
|
|
244
|
-
'Non-Workplace Discrimination': 'Example: "I am being discriminated against by a local official"',
|
|
245
|
-
'Identity Theft': 'Example: "Someone stole my identity and I need help fixing the issue"',
|
|
246
|
-
'Immigration and Visas': 'Example: "I need help filing for a visa" or "Help with a green card"',
|
|
247
|
-
'Insurance': 'Example: "I need help filing an insurance claim for damage to my house"',
|
|
248
|
-
'Landlord and Tenant': 'Example: "I need help to fight an eviction" or "I would like a lawyer to review a rental contract"',
|
|
249
|
-
'Lemon Law': 'Example: "I purchased a new vehicle that broke down already and seller will not assist"',
|
|
250
|
-
'Long Term Disability': 'Example: "I was injured on the job and would like to file for benefits" or "I need help filing for disability benefits"',
|
|
251
|
-
'Medical Malpractice': 'Example: "A doctor performed surgery on the wrong limb and I would like to file a lawsuit"',
|
|
252
|
-
'Patents and Intellectual Property': 'Example: "I would like to file for a patent" or "I need to copyright a name"',
|
|
253
|
-
'Personal Injury': 'Example: "I was bit by the neighbor\'s dog" or "I fell in the icy grocery store parking lot"',
|
|
254
|
-
'Power of Attorney': 'Example: "I need help with a limited or general power of attorney"',
|
|
255
|
-
'Probate and Estates': 'Example: "I need help with planning for my estate" or "A family member passed without a will in place"',
|
|
256
|
-
'Product Liability': 'Example: "My car battery caught on fire" or "I purchased a faulty product"',
|
|
257
|
-
'Property Damage': 'Example: "The neighbor\'s tree fell on my fence" or "My car was hit in the parking lot"',
|
|
258
|
-
'Real Estate': 'Example: "I need help with a quitclaim deed" or "I need a lawyer to review a purchase and sales agreement"',
|
|
259
|
-
'Social Security Disability and Insurance': 'Example: "I would like help filing for disability benefits" or "I\'ve been denied for SSDI and would like to appeal"',
|
|
260
|
-
'Tax and IRS': 'Example: "I need help fighting an IRS tax claim" or "I need audit defense"',
|
|
261
|
-
'Traffic and Tickets': 'Example: "I need help reinstating a supsended license" or "I would like to fight a traffic ticket"',
|
|
262
|
-
'Unemployment': 'Example: "I need help filing for unemployment benefits"',
|
|
263
|
-
'Victim of a Crime': 'Example: "I was assaulted in the store" or "I am being discriminated against at work"',
|
|
264
|
-
'Wills and Trusts': 'Example: "I need a simple will created" or "I would like guidance on creating a trust fund"',
|
|
265
|
-
'Workers Compensation': 'Example: "I was injured at work and would like to file for workers compensation benefits"',
|
|
266
|
-
'Wrongful Death': 'Example: "A family member was killed on the job and we need legal representation"',
|
|
267
|
-
'Wrongful Termination': 'Example: "I was fired by my employer without cause"',
|
|
268
|
-
'Not Sure or Other': 'Example: "I was involved in a car accident" or "I need help setting up power of attorney"'
|
|
269
|
-
};
|
|
270
|
-
|
|
271
|
-
const TOLPFinalHeadlines = {
|
|
272
|
-
// 'Adoption': '',
|
|
273
|
-
};
|
|
274
|
-
|
|
275
|
-
const TOLPFinalSubHeadlines = {
|
|
276
|
-
'Adoption': 'You may benefit from speaking with an adoption professional. Please verify your contact information.',
|
|
277
|
-
// 'Asbestos and Mesothelioma': '',
|
|
278
|
-
'Auto and Car Accidents': 'You may benefit from speaking with an accident professional. Please verify your contact information.',
|
|
279
|
-
'Bankruptcy': 'You may benefit from speaking with a bankruptcy professional. Please verify your contact information.',
|
|
280
|
-
// 'Birth Certificate and Name Change': '',
|
|
281
|
-
// 'Business Lawyers': '',
|
|
282
|
-
// 'Child Custody and Support': '',
|
|
283
|
-
// 'Civil Rights and Discrimination': '',
|
|
284
|
-
// 'Civil Lawsuit': '',
|
|
285
|
-
// 'Consumer Lawyers': '',
|
|
286
|
-
'Copyrights and Trademarks': 'You may benefit from speaking with a copyright and trademark professional. Please verify your contact information.',
|
|
287
|
-
// 'Criminal and Felony': '',
|
|
288
|
-
// 'Debt and Collections': '',
|
|
289
|
-
'Divorce and Separation': 'You may benefit from speaking with a divorce professional. Please verify your contact information.',
|
|
290
|
-
'DUI and DWI': 'You may benefit from speaking with a DUI professional. Please verify your contact information.',
|
|
291
|
-
'Elder Law': 'You may benefit from speaking with an elder law professional. Please verify your contact information.',
|
|
292
|
-
// 'Employment and Workplace': '',
|
|
293
|
-
// 'Expungement': '',
|
|
294
|
-
// 'Family Issues': '',
|
|
295
|
-
'Foreclosure': 'You may benefit from speaking with a foreclosure professional. Please verify your contact information.',
|
|
296
|
-
'Guardianship': 'You may benefit from speaking with a guardianship professional. Please verify your contact information.',
|
|
297
|
-
// 'Harassment and Discrimination': '',
|
|
298
|
-
// 'Identity Theft': '',
|
|
299
|
-
'Immigration and Visas': 'You may benefit from speaking with a immigration professional. Please verify your contact information.',
|
|
300
|
-
// 'Insurance': '',
|
|
301
|
-
'Landlord and Tenant': 'You may benefit from speaking with a landlord and tenant legal professional. Please verify your contact information.',
|
|
302
|
-
// 'Lemon Law': '',
|
|
303
|
-
'Long Term Disability': 'You may benefit from speaking with a disability legal professional. Please verify your contact information.',
|
|
304
|
-
'Medical Malpractice': 'You may benefit from speaking with a malpractice professional. Please verify your contact information.',
|
|
305
|
-
'Patents and Intellectual Property': 'You may benefit from speaking with a patent professional. Please verify your contact information.',
|
|
306
|
-
'Personal Injury': 'You may benefit from speaking with a personal injury professional. Please verify your contact information.',
|
|
307
|
-
// 'Power of Attorney': '',
|
|
308
|
-
'Probate and Estates': 'You may benefit from speaking with a probate and estate professional. Please verify your contact information.',
|
|
309
|
-
// 'Product Liability': '',
|
|
310
|
-
// 'Property Damage': '',
|
|
311
|
-
'Real Estate': 'You may benefit from speaking with a real estate professional. Please verify your contact information.',
|
|
312
|
-
'Social Security Disability and Insurance': 'You may benefit from speaking with an SSDI professional. Please verify your contact information.',
|
|
313
|
-
'Tax and IRS': 'You may benefit from speaking with a tax professional. Please verify your contact information.',
|
|
314
|
-
// 'Traffic and Tickets': '',
|
|
315
|
-
'Unemployment': 'You may benefit from speaking with an unemployment professional. Please verify your contact information.',
|
|
316
|
-
// 'Victim of a Crime': '',
|
|
317
|
-
// 'Wills and Trusts': '',
|
|
318
|
-
'Workers Compensation': 'You may benefit from speaking with a workers compensation professional. Please verify your contact information.',
|
|
319
|
-
// 'Wrongful Death': '',
|
|
320
|
-
// 'Wrongful Termination': '',
|
|
321
|
-
// 'Not Sure or Other': ''
|
|
322
|
-
// 'Sexual Harassment': '',
|
|
323
|
-
// 'Workplace Harassment': '',
|
|
324
|
-
// 'Non-Workplace Harassment': '',
|
|
325
|
-
// 'Workplace Discrimination': '',
|
|
326
|
-
// 'Non-Workplace Discrimination': '',
|
|
327
|
-
};
|
|
219
|
+
}
|
|
328
220
|
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
221
|
+
function contactStepSubHeadline(updates) {
|
|
222
|
+
return {
|
|
223
|
+
$el: 'h5',
|
|
224
|
+
children: updates.subheadline || DEFAULT_FINAL_SUBHEADLINE_DYNAMIC,
|
|
225
|
+
attrs: {
|
|
226
|
+
class: 't-flex t-justify-center t-text-center !t-text-lg t-font-semibold t-pb-7 t-pt-0 t-px-3' + ' ' + (updates.subheadlineClass || '')
|
|
227
|
+
}
|
|
332
228
|
}
|
|
333
|
-
|
|
334
|
-
$formkit: 'select',
|
|
335
|
-
placeholder: "Please Select",
|
|
336
|
-
validation: 'required',
|
|
337
|
-
validationMessages: {
|
|
338
|
-
required: 'Field is required'
|
|
339
|
-
},
|
|
340
|
-
inputClass: 't-bg-white',
|
|
341
|
-
labelClass: 'required'
|
|
342
|
-
}, updates)
|
|
343
|
-
};
|
|
344
|
-
|
|
345
|
-
const sbsSelect = (updates) => {
|
|
346
|
-
updates.labelClass = 'required';
|
|
347
|
-
updates.wrapperClass = 'side-by-side t-items-center';
|
|
348
|
-
updates.innerClass = 'select-height-content';
|
|
349
|
-
updates.helpClass = 't-mt-2.5 md:t-text-right md:t-mt-[-5px]';
|
|
350
|
-
return select(updates)
|
|
351
|
-
};
|
|
229
|
+
}
|
|
352
230
|
|
|
353
|
-
const
|
|
354
|
-
if (
|
|
355
|
-
|
|
231
|
+
const TRUSTED_FORM_JS = `(function() {
|
|
232
|
+
if (window.xxTrustedFormLoaded) {
|
|
233
|
+
return
|
|
356
234
|
}
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
updates.wrapperClass = 'side-by-side t-items-center';
|
|
369
|
-
return text(updates)
|
|
370
|
-
};
|
|
371
|
-
|
|
372
|
-
const category = () => sbsSelect({
|
|
373
|
-
label: 'Category:',
|
|
374
|
-
name: 'category',
|
|
375
|
-
id: 'category',
|
|
376
|
-
options: [
|
|
377
|
-
'Fruits',
|
|
378
|
-
'Vegetables'
|
|
379
|
-
]
|
|
380
|
-
});
|
|
235
|
+
var vid = '';
|
|
236
|
+
if (typeof window.zar !== 'undefined') {
|
|
237
|
+
vid = window.zar.getVID();
|
|
238
|
+
}
|
|
239
|
+
window.xxTrustedFormLoaded = true;
|
|
240
|
+
var sandbox = document.location.hostname.indexOf('localhost') > -1 ? 'true' : 'false'
|
|
241
|
+
var tf = document.createElement('script');
|
|
242
|
+
tf.type = 'text/javascript'; tf.async = true;
|
|
243
|
+
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();
|
|
244
|
+
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(tf, s);
|
|
245
|
+
})();`;
|
|
381
246
|
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
autocomplete: 'email',
|
|
388
|
-
'data-tf-sensitive': 'false',
|
|
389
|
-
validation: 'required|email',
|
|
390
|
-
validationMessages: {
|
|
391
|
-
required: 'Email is required',
|
|
392
|
-
email: 'Invalid Email'
|
|
247
|
+
function trustedFormScript() {
|
|
248
|
+
return {
|
|
249
|
+
$el: 'script',
|
|
250
|
+
if: '$activeStep === $lastStep()',
|
|
251
|
+
children: TRUSTED_FORM_JS
|
|
393
252
|
}
|
|
394
|
-
}
|
|
253
|
+
}
|
|
395
254
|
|
|
396
|
-
const
|
|
397
|
-
$
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
validationMessages: {
|
|
403
|
-
required: 'First Name is required'
|
|
404
|
-
}
|
|
405
|
-
});
|
|
406
|
-
|
|
407
|
-
const lastName = () => sbsText({
|
|
408
|
-
$formkit: 'text',
|
|
409
|
-
label: 'Last Name:',
|
|
410
|
-
placeholder: 'Last',
|
|
411
|
-
name: 'Last_Name',
|
|
412
|
-
autocomplete: "family-name",
|
|
413
|
-
validationMessages: {
|
|
414
|
-
required: 'Last Name is required'
|
|
415
|
-
}
|
|
416
|
-
});
|
|
417
|
-
|
|
418
|
-
const phone = () => sbsText({
|
|
419
|
-
$formkit: 'tel',
|
|
420
|
-
name: 'Primary_Phone',
|
|
421
|
-
label: 'Phone Number:',
|
|
422
|
-
placeholder: '###-###-####',
|
|
423
|
-
maxlength: 12,
|
|
424
|
-
help: '10-digit phone number, hyphens optional',
|
|
425
|
-
autocomplete: 'tel-national',
|
|
426
|
-
'data-tf-sensitive': 'false',
|
|
427
|
-
validation: 'required|matches:/^[0-9]{3}-?[0-9]{3}-?[0-9]{4}$/|valid_phone',
|
|
428
|
-
validationMessages: {
|
|
429
|
-
required: 'Field is required',
|
|
430
|
-
matches: 'Invalid Phone Format, use ###-###-####',
|
|
431
|
-
valid_phone: 'Invalid Phone Number'
|
|
432
|
-
},
|
|
433
|
-
helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]"
|
|
434
|
-
});
|
|
435
|
-
|
|
436
|
-
const TCPAConsent = () => ({
|
|
437
|
-
$formkit: 'checkbox',
|
|
438
|
-
label: '$meta.tcpaLanguage',
|
|
439
|
-
name: 'TCPA_Opt_In',
|
|
440
|
-
'data-tf-sensitive': 'false',
|
|
441
|
-
validation: 'required|accepted',
|
|
442
|
-
validationMessages: {
|
|
443
|
-
required: 'Consent is required',
|
|
444
|
-
accepted: 'Consent is required'
|
|
445
|
-
},
|
|
446
|
-
classes: {
|
|
447
|
-
label: "t-text-xs t-text-slate-500 t-font-normal"
|
|
448
|
-
}
|
|
449
|
-
});
|
|
450
|
-
|
|
451
|
-
const zipcode = () => sbsText({
|
|
452
|
-
label: 'Zip Code:',
|
|
453
|
-
placeholder: '#####',
|
|
454
|
-
name: 'Zip',
|
|
455
|
-
maxlength: 5,
|
|
456
|
-
inputmode: "numeric",
|
|
457
|
-
autocomplete: 'postal-code',
|
|
458
|
-
validation: 'required|matches:/^[0-9]{5}$/',
|
|
459
|
-
validationMessages: {
|
|
460
|
-
required: 'Zip Code is required',
|
|
461
|
-
matches: 'Invalid Zip Code'
|
|
462
|
-
}
|
|
463
|
-
});
|
|
464
|
-
|
|
465
|
-
const NEXT_ON_ENTER = '$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
|
|
466
|
-
const NEXT_ON_INPUT = '$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
|
|
467
|
-
|
|
468
|
-
const isInput = (n) => { return (n.type !== 'group' && n.type !== 'section' && n.type !== 'form' && n.$formkit !== 'hidden' && !n.children) };
|
|
469
|
-
|
|
470
|
-
const findLastInput = (n) => {
|
|
471
|
-
if (isInput(n)) {
|
|
472
|
-
return n
|
|
473
|
-
}
|
|
474
|
-
for (var i = n.children.length - 1; i >= 0; i--) {
|
|
475
|
-
if (typeof n.children === 'string') {
|
|
476
|
-
continue
|
|
477
|
-
}
|
|
478
|
-
const child = n.children[i];
|
|
479
|
-
if (isInput(child)) {
|
|
480
|
-
return child
|
|
481
|
-
}
|
|
482
|
-
const res = findLastInput(child);
|
|
483
|
-
if (res) {
|
|
484
|
-
return res
|
|
485
|
-
}
|
|
486
|
-
}
|
|
487
|
-
return null
|
|
488
|
-
};
|
|
489
|
-
|
|
490
|
-
function contactStepHeadline(updates) {
|
|
491
|
-
return {
|
|
492
|
-
$el: 'h3',
|
|
493
|
-
children: updates.headline || DEFAULT_FINAL_HEADLINE_DYNAMIC,
|
|
494
|
-
attrs: {
|
|
495
|
-
class: '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' + ' ' + (updates.headlineClass || '')
|
|
496
|
-
}
|
|
497
|
-
}
|
|
498
|
-
}
|
|
499
|
-
|
|
500
|
-
function contactStepSubHeadline(updates) {
|
|
501
|
-
return {
|
|
502
|
-
$el: 'h5',
|
|
503
|
-
children: updates.subheadline || DEFAULT_FINAL_SUBHEADLINE_DYNAMIC,
|
|
504
|
-
attrs: {
|
|
505
|
-
class: 't-flex t-justify-center t-text-center !t-text-lg t-font-semibold t-pb-7 t-pt-0 t-px-3' + ' ' + (updates.subheadlineClass || '')
|
|
506
|
-
}
|
|
507
|
-
}
|
|
508
|
-
}
|
|
509
|
-
|
|
510
|
-
const TRUSTED_FORM_JS = `(function() {
|
|
511
|
-
if (window.xxTrustedFormLoaded) {
|
|
512
|
-
return
|
|
513
|
-
}
|
|
514
|
-
var vid = '';
|
|
515
|
-
if (typeof window.zar !== 'undefined') {
|
|
516
|
-
vid = window.zar.getVID();
|
|
517
|
-
}
|
|
518
|
-
window.xxTrustedFormLoaded = true;
|
|
519
|
-
var sandbox = document.location.hostname.indexOf('localhost') > -1 ? 'true' : 'false'
|
|
520
|
-
var tf = document.createElement('script');
|
|
521
|
-
tf.type = 'text/javascript'; tf.async = true;
|
|
522
|
-
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();
|
|
523
|
-
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(tf, s);
|
|
524
|
-
})();`;
|
|
525
|
-
|
|
526
|
-
function trustedFormScript() {
|
|
527
|
-
return {
|
|
528
|
-
$el: 'script',
|
|
529
|
-
if: '$activeStep === $lastStep()',
|
|
530
|
-
children: TRUSTED_FORM_JS
|
|
531
|
-
}
|
|
532
|
-
}
|
|
533
|
-
|
|
534
|
-
const stepDefaults = (step, stepKey) => ({
|
|
535
|
-
$el: 'section',
|
|
536
|
-
if: '$stepEnabled("' + step + '")',
|
|
537
|
-
attrs: {
|
|
538
|
-
hidden: '$activeStep !== "' + step + '"',
|
|
539
|
-
key: stepKey ? stepKey : step
|
|
255
|
+
const stepDefaults = (step, stepKey) => ({
|
|
256
|
+
$el: 'section',
|
|
257
|
+
if: '$stepEnabled("' + step + '")',
|
|
258
|
+
attrs: {
|
|
259
|
+
hidden: '$activeStep !== "' + step + '"',
|
|
260
|
+
key: stepKey ? stepKey : step
|
|
540
261
|
}
|
|
541
262
|
});
|
|
542
263
|
|
|
@@ -582,20 +303,19 @@ function categoryAndZip(updates = {}) {
|
|
|
582
303
|
)
|
|
583
304
|
}
|
|
584
305
|
|
|
585
|
-
function
|
|
306
|
+
function contactInfo(updates = {}) {
|
|
586
307
|
return step(
|
|
587
308
|
'contactInfo',
|
|
588
309
|
[
|
|
589
310
|
contactStepHeadline(updates),
|
|
590
311
|
contactStepSubHeadline(updates),
|
|
591
|
-
// Added TF everywhere
|
|
592
312
|
trustedFormScript(),
|
|
593
313
|
email(),
|
|
594
314
|
phone(),
|
|
595
315
|
TCPAConsent(),
|
|
596
316
|
secureIcon()
|
|
597
317
|
],
|
|
598
|
-
|
|
318
|
+
false, // nextOnEnter
|
|
599
319
|
)
|
|
600
320
|
}
|
|
601
321
|
|
|
@@ -632,7 +352,16 @@ const formNavigation = () => ({
|
|
|
632
352
|
$formkit: 'button',
|
|
633
353
|
name: 'next_button',
|
|
634
354
|
onClick: '$setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form)))',
|
|
635
|
-
children:
|
|
355
|
+
children: {
|
|
356
|
+
if: '$activeStep === $firstStep()',
|
|
357
|
+
then: 'Start',
|
|
358
|
+
else: 'Next'
|
|
359
|
+
},
|
|
360
|
+
outerClass: {
|
|
361
|
+
if: '$activeStep === $lastStep()',
|
|
362
|
+
then: 't-hidden',
|
|
363
|
+
else: ''
|
|
364
|
+
},
|
|
636
365
|
style: {
|
|
637
366
|
if: '$activeStep === $lastStep()',
|
|
638
367
|
then: 'display: none;'
|
|
@@ -698,6 +427,282 @@ const formDetails = () => ({
|
|
|
698
427
|
]
|
|
699
428
|
});
|
|
700
429
|
|
|
430
|
+
const formPropDefaults = {
|
|
431
|
+
type: 'form',
|
|
432
|
+
id: 'form',
|
|
433
|
+
config: { validationVisibility: 'submit' },
|
|
434
|
+
onSubmit: '$submit($submitUrl, $prepData, $handleRedirect, "text/plain; charset=UTF-8")',
|
|
435
|
+
plugins: '$plugins',
|
|
436
|
+
actions: false,
|
|
437
|
+
anchorElement: 'form-anchor',
|
|
438
|
+
useLocalStorage: true,
|
|
439
|
+
prepop: {
|
|
440
|
+
fromURL: true
|
|
441
|
+
},
|
|
442
|
+
errorCodes: {
|
|
443
|
+
403: { message: "An Error Occurred", abort: false },
|
|
444
|
+
409: { abort: false },
|
|
445
|
+
429: "An Error Occurred",
|
|
446
|
+
504: { message: "An Error Occurred", abort: false },
|
|
447
|
+
},
|
|
448
|
+
formClass: '!t-max-w-[40rem]'
|
|
449
|
+
};
|
|
450
|
+
|
|
451
|
+
function formProps(updates) {
|
|
452
|
+
const props = merge(
|
|
453
|
+
formPropDefaults,
|
|
454
|
+
updates
|
|
455
|
+
);
|
|
456
|
+
if (props.formId && !props.name) {
|
|
457
|
+
props.name = props.formId;
|
|
458
|
+
}
|
|
459
|
+
return props
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
const metaDefaults = {
|
|
463
|
+
tcpaLanguage: TCPA_LANGUAGE
|
|
464
|
+
};
|
|
465
|
+
|
|
466
|
+
function metaProps(updates) {
|
|
467
|
+
const data = merge(
|
|
468
|
+
metaDefaults,
|
|
469
|
+
updates
|
|
470
|
+
);
|
|
471
|
+
return {
|
|
472
|
+
type: 'meta',
|
|
473
|
+
data
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
function defaultMetaProps() {
|
|
478
|
+
return metaProps({
|
|
479
|
+
defaultCommentsPlaceholder: DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
|
|
480
|
+
commentsPlaceholders: TOLPCommentsPlaceholders,
|
|
481
|
+
defaultFinalHeadline: DEFAULT_FINAL_HEADLINE,
|
|
482
|
+
finalHeadlines: TOLPFinalHeadlines,
|
|
483
|
+
defaultFinalSubHeadline: DEFAULT_FINAL_SUBHEADLINE,
|
|
484
|
+
finalSubHeadlines: TOLPFinalSubHeadlines,
|
|
485
|
+
})
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
const formAnchorDefaults = {
|
|
489
|
+
$el: 'div',
|
|
490
|
+
children: [
|
|
491
|
+
{
|
|
492
|
+
$el: 'div',
|
|
493
|
+
attrs: {
|
|
494
|
+
id: 'form-anchor',
|
|
495
|
+
class: 't-absolute',
|
|
496
|
+
style: { top: '-30px', left: 0 }
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
],
|
|
500
|
+
attrs: {
|
|
501
|
+
class: 't-relative'
|
|
502
|
+
}
|
|
503
|
+
};
|
|
504
|
+
|
|
505
|
+
function formAnchor(updates) {
|
|
506
|
+
return merge(
|
|
507
|
+
formAnchorDefaults,
|
|
508
|
+
updates
|
|
509
|
+
)
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
function headlineDefaults(updates = {}) {
|
|
513
|
+
return {
|
|
514
|
+
$el: 'h1',
|
|
515
|
+
attrs: {
|
|
516
|
+
class: 't-flex t-justify-center t-text-center !t-text-[2rem] t-font-semibold t-pt-5 t-px-7 md:t-px-3' + ' ' + (updates.headlineClass || '')
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
function headline(updates = {}) {
|
|
522
|
+
return merge(
|
|
523
|
+
headlineDefaults(updates),
|
|
524
|
+
updates
|
|
525
|
+
)
|
|
526
|
+
}
|
|
527
|
+
|
|
528
|
+
function defaultHeadline() {
|
|
529
|
+
return headline({
|
|
530
|
+
children: '$urlParam("hl", "Start Here For a Free Consultation")',
|
|
531
|
+
if: '$activeStep === $firstStep()'
|
|
532
|
+
})
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
function subHeadlineDefaults(updates = {}) {
|
|
536
|
+
return {
|
|
537
|
+
$el: 'h3',
|
|
538
|
+
attrs: {
|
|
539
|
+
class: 't-flex t-justify-center t-text-center !t-text-[1.2rem] t-font-medium t-text-blue-500 t-px-10' + ' ' + (updates.subheadlineClass || '')
|
|
540
|
+
}
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
function subHeadline(updates = {}) {
|
|
545
|
+
return merge(
|
|
546
|
+
subHeadlineDefaults(updates),
|
|
547
|
+
updates
|
|
548
|
+
)
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
function defaultSubHeadline() {
|
|
552
|
+
return subHeadline({
|
|
553
|
+
children: '$urlParam("shl", "Our Service is Fast and Free!")',
|
|
554
|
+
if: '$activeStep === $firstStep()'
|
|
555
|
+
})
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
const hiddenInputsBase = [
|
|
559
|
+
{
|
|
560
|
+
$formkit: 'hidden',
|
|
561
|
+
name: "gclid",
|
|
562
|
+
value: null
|
|
563
|
+
},
|
|
564
|
+
{
|
|
565
|
+
$formkit: 'hidden',
|
|
566
|
+
name: "campaignid",
|
|
567
|
+
value: null
|
|
568
|
+
},
|
|
569
|
+
{
|
|
570
|
+
$formkit: 'hidden',
|
|
571
|
+
name: "s",
|
|
572
|
+
value: null
|
|
573
|
+
}
|
|
574
|
+
];
|
|
575
|
+
|
|
576
|
+
const hiddenInputsLegal = [
|
|
577
|
+
{
|
|
578
|
+
$formkit: 'hidden',
|
|
579
|
+
name: "vertical",
|
|
580
|
+
value: "Legal"
|
|
581
|
+
},
|
|
582
|
+
{
|
|
583
|
+
$formkit: 'hidden',
|
|
584
|
+
name: "TCPA_Language",
|
|
585
|
+
value: "$meta.tcpaLanguage"
|
|
586
|
+
},
|
|
587
|
+
...hiddenInputsBase
|
|
588
|
+
];
|
|
589
|
+
|
|
590
|
+
const TOLPCommentsPlaceholders = {
|
|
591
|
+
'Adoption': 'Example: "I need help with adoption forms"',
|
|
592
|
+
'Asbestos and Mesothelioma': 'Example: "I was exposed to asbestos at work and would like to file a claim"',
|
|
593
|
+
'Auto and Car Accidents': 'Example: "A truck crashed into my car on the highway" or "I\'ve been involved in a hit and run accident"',
|
|
594
|
+
'Bankruptcy': 'Example: "I need help filing for bankruptcy"',
|
|
595
|
+
'Birth Certificate and Name Change': 'Example: "Just married and would like to change my last name"',
|
|
596
|
+
'Business Lawyers': 'Example: "I need help incorporating a business" or "I would like a legal contract reviewed"',
|
|
597
|
+
'Child Custody and Support': 'Example: "Need help getting custody" or "Issues with child support payments"',
|
|
598
|
+
'Child Custody': 'Example: "Need help getting custody"',
|
|
599
|
+
'Child Support': 'Example: "Issues with child support payments"',
|
|
600
|
+
'Civil Rights and Discrimination': 'Example: "Police brutality" or "Coworker keeps harassing me"',
|
|
601
|
+
'Civil Lawsuit': 'Example: "A contractor took my money and never completed the job" or "I am being sued by a neighbor"',
|
|
602
|
+
'File a Lawsuit': 'Example: "A contractor took my money and never completed the job"',
|
|
603
|
+
'Defend a Lawsuit': 'Example: "I am being sued by a neighbor"',
|
|
604
|
+
'Consumer Lawyers': 'Example: "Someone committed fraud against me" or "A contractor took my money and never completed the job"',
|
|
605
|
+
'Copyrights and Trademarks': 'Example: "I would like to register a trademark or copyright a name"',
|
|
606
|
+
'Criminal and Felony': 'Example: "I was arrested for DUI and need legal defense" or "I am being charged with assault"',
|
|
607
|
+
'Debt and Collections': 'Example: "I would like to consolidate my debt" or "A collection agency is harassing me"',
|
|
608
|
+
'Divorce and Separation': 'Example: "I would like to file for an uncontested divorce"',
|
|
609
|
+
'DUI and DWI': 'Example: "I was arrested for DUI and need legal defense"',
|
|
610
|
+
'Elder Law': 'Example: "I would like help with Estate Planning" or "I need help with a guardianship"',
|
|
611
|
+
'Employment and Workplace': 'Example: "I was injured while on the job" or "My company is discriminating against me"',
|
|
612
|
+
'Expungement': 'Example: "I would like to file for an expungement and clear my record"',
|
|
613
|
+
'Family Issues': 'Example: "I need help with guardianship" or "I need a simple will created"',
|
|
614
|
+
'Foreclosure': 'Example: "I need help to avoid foreclosure on my house"',
|
|
615
|
+
'Guardianship': 'Example: "I need help with guardianship documents"',
|
|
616
|
+
'Harassment and Discrimination': 'Example: "I am being discriminated at work" or "My neighbor is harassing me"',
|
|
617
|
+
'Sexual Harassment': 'Example: "I am being sexually harassed by a coworker"',
|
|
618
|
+
'Workplace Harassment': 'Example: "My coworker is being aggressive towards me"',
|
|
619
|
+
'Non-Workplace Harassment': 'Example: "My neighbor is harassing me"',
|
|
620
|
+
'Workplace Discrimination': 'Example: "I am being discriminated at work based on my age"',
|
|
621
|
+
'Non-Workplace Discrimination': 'Example: "I am being discriminated against by a local official"',
|
|
622
|
+
'Identity Theft': 'Example: "Someone stole my identity and I need help fixing the issue"',
|
|
623
|
+
'Immigration and Visas': 'Example: "I need help filing for a visa" or "Help with a green card"',
|
|
624
|
+
'Insurance': 'Example: "I need help filing an insurance claim for damage to my house"',
|
|
625
|
+
'Landlord and Tenant': 'Example: "I need help to fight an eviction" or "I would like a lawyer to review a rental contract"',
|
|
626
|
+
'Lemon Law': 'Example: "I purchased a new vehicle that broke down already and seller will not assist"',
|
|
627
|
+
'Long Term Disability': 'Example: "I was injured on the job and would like to file for benefits" or "I need help filing for disability benefits"',
|
|
628
|
+
'Medical Malpractice': 'Example: "A doctor performed surgery on the wrong limb and I would like to file a lawsuit"',
|
|
629
|
+
'Patents and Intellectual Property': 'Example: "I would like to file for a patent" or "I need to copyright a name"',
|
|
630
|
+
'Personal Injury': 'Example: "I was bit by the neighbor\'s dog" or "I fell in the icy grocery store parking lot"',
|
|
631
|
+
'Power of Attorney': 'Example: "I need help with a limited or general power of attorney"',
|
|
632
|
+
'Probate and Estates': 'Example: "I need help with planning for my estate" or "A family member passed without a will in place"',
|
|
633
|
+
'Product Liability': 'Example: "My car battery caught on fire" or "I purchased a faulty product"',
|
|
634
|
+
'Property Damage': 'Example: "The neighbor\'s tree fell on my fence" or "My car was hit in the parking lot"',
|
|
635
|
+
'Real Estate': 'Example: "I need help with a quitclaim deed" or "I need a lawyer to review a purchase and sales agreement"',
|
|
636
|
+
'Social Security Disability and Insurance': 'Example: "I would like help filing for disability benefits" or "I\'ve been denied for SSDI and would like to appeal"',
|
|
637
|
+
'Tax and IRS': 'Example: "I need help fighting an IRS tax claim" or "I need audit defense"',
|
|
638
|
+
'Traffic and Tickets': 'Example: "I need help reinstating a supsended license" or "I would like to fight a traffic ticket"',
|
|
639
|
+
'Unemployment': 'Example: "I need help filing for unemployment benefits"',
|
|
640
|
+
'Victim of a Crime': 'Example: "I was assaulted in the store" or "I am being discriminated against at work"',
|
|
641
|
+
'Wills and Trusts': 'Example: "I need a simple will created" or "I would like guidance on creating a trust fund"',
|
|
642
|
+
'Workers Compensation': 'Example: "I was injured at work and would like to file for workers compensation benefits"',
|
|
643
|
+
'Wrongful Death': 'Example: "A family member was killed on the job and we need legal representation"',
|
|
644
|
+
'Wrongful Termination': 'Example: "I was fired by my employer without cause"',
|
|
645
|
+
'Not Sure or Other': 'Example: "I was involved in a car accident" or "I need help setting up power of attorney"'
|
|
646
|
+
};
|
|
647
|
+
|
|
648
|
+
const TOLPFinalHeadlines = {
|
|
649
|
+
// 'Adoption': '',
|
|
650
|
+
};
|
|
651
|
+
|
|
652
|
+
const TOLPFinalSubHeadlines = {
|
|
653
|
+
'Adoption': 'You may benefit from speaking with an adoption professional. Please verify your contact information.',
|
|
654
|
+
// 'Asbestos and Mesothelioma': '',
|
|
655
|
+
'Auto and Car Accidents': 'You may benefit from speaking with an accident professional. Please verify your contact information.',
|
|
656
|
+
'Bankruptcy': 'You may benefit from speaking with a bankruptcy professional. Please verify your contact information.',
|
|
657
|
+
// 'Birth Certificate and Name Change': '',
|
|
658
|
+
// 'Business Lawyers': '',
|
|
659
|
+
// 'Child Custody and Support': '',
|
|
660
|
+
// 'Civil Rights and Discrimination': '',
|
|
661
|
+
// 'Civil Lawsuit': '',
|
|
662
|
+
// 'Consumer Lawyers': '',
|
|
663
|
+
'Copyrights and Trademarks': 'You may benefit from speaking with a copyright and trademark professional. Please verify your contact information.',
|
|
664
|
+
// 'Criminal and Felony': '',
|
|
665
|
+
// 'Debt and Collections': '',
|
|
666
|
+
'Divorce and Separation': 'You may benefit from speaking with a divorce professional. Please verify your contact information.',
|
|
667
|
+
'DUI and DWI': 'You may benefit from speaking with a DUI professional. Please verify your contact information.',
|
|
668
|
+
'Elder Law': 'You may benefit from speaking with an elder law professional. Please verify your contact information.',
|
|
669
|
+
// 'Employment and Workplace': '',
|
|
670
|
+
// 'Expungement': '',
|
|
671
|
+
// 'Family Issues': '',
|
|
672
|
+
'Foreclosure': 'You may benefit from speaking with a foreclosure professional. Please verify your contact information.',
|
|
673
|
+
'Guardianship': 'You may benefit from speaking with a guardianship professional. Please verify your contact information.',
|
|
674
|
+
// 'Harassment and Discrimination': '',
|
|
675
|
+
// 'Identity Theft': '',
|
|
676
|
+
'Immigration and Visas': 'You may benefit from speaking with a immigration professional. Please verify your contact information.',
|
|
677
|
+
// 'Insurance': '',
|
|
678
|
+
'Landlord and Tenant': 'You may benefit from speaking with a landlord and tenant legal professional. Please verify your contact information.',
|
|
679
|
+
// 'Lemon Law': '',
|
|
680
|
+
'Long Term Disability': 'You may benefit from speaking with a disability legal professional. Please verify your contact information.',
|
|
681
|
+
'Medical Malpractice': 'You may benefit from speaking with a malpractice professional. Please verify your contact information.',
|
|
682
|
+
'Patents and Intellectual Property': 'You may benefit from speaking with a patent professional. Please verify your contact information.',
|
|
683
|
+
'Personal Injury': 'You may benefit from speaking with a personal injury professional. Please verify your contact information.',
|
|
684
|
+
// 'Power of Attorney': '',
|
|
685
|
+
'Probate and Estates': 'You may benefit from speaking with a probate and estate professional. Please verify your contact information.',
|
|
686
|
+
// 'Product Liability': '',
|
|
687
|
+
// 'Property Damage': '',
|
|
688
|
+
'Real Estate': 'You may benefit from speaking with a real estate professional. Please verify your contact information.',
|
|
689
|
+
'Social Security Disability and Insurance': 'You may benefit from speaking with an SSDI professional. Please verify your contact information.',
|
|
690
|
+
'Tax and IRS': 'You may benefit from speaking with a tax professional. Please verify your contact information.',
|
|
691
|
+
// 'Traffic and Tickets': '',
|
|
692
|
+
'Unemployment': 'You may benefit from speaking with an unemployment professional. Please verify your contact information.',
|
|
693
|
+
// 'Victim of a Crime': '',
|
|
694
|
+
// 'Wills and Trusts': '',
|
|
695
|
+
'Workers Compensation': 'You may benefit from speaking with a workers compensation professional. Please verify your contact information.',
|
|
696
|
+
// 'Wrongful Death': '',
|
|
697
|
+
// 'Wrongful Termination': '',
|
|
698
|
+
// 'Not Sure or Other': ''
|
|
699
|
+
// 'Sexual Harassment': '',
|
|
700
|
+
// 'Workplace Harassment': '',
|
|
701
|
+
// 'Non-Workplace Harassment': '',
|
|
702
|
+
// 'Workplace Discrimination': '',
|
|
703
|
+
// 'Non-Workplace Discrimination': '',
|
|
704
|
+
};
|
|
705
|
+
|
|
701
706
|
const schema = [
|
|
702
707
|
defaultMetaProps(),
|
|
703
708
|
formAnchor(),
|
|
@@ -718,7 +723,7 @@ const schema = [
|
|
|
718
723
|
children: [
|
|
719
724
|
categoryAndZip(),
|
|
720
725
|
firstAndLast(),
|
|
721
|
-
|
|
726
|
+
contactInfo(),
|
|
722
727
|
formNavigation(),
|
|
723
728
|
formDetails()
|
|
724
729
|
]
|