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.
Files changed (77) hide show
  1. package/dist/bhl-forms.iife.js +1 -1
  2. package/dist/bhl-forms.modern.iife.js +1 -1
  3. package/dist/bhl-forms.modern.umd.js +1 -1
  4. package/dist/bhl-forms.umd.js +1 -1
  5. package/dist/forms/accidentsAndInjuries.es.js +1442 -862
  6. package/dist/forms/accidentsAndInjuries.iife.js +1 -1
  7. package/dist/forms/accidentsAndInjuries.json +1 -1
  8. package/dist/forms/appraisals.es.js +115 -115
  9. package/dist/forms/appraisals.iife.js +1 -1
  10. package/dist/forms/childAndFamily.es.js +790 -764
  11. package/dist/forms/childAndFamily.iife.js +1 -1
  12. package/dist/forms/childAndFamily.json +1 -1
  13. package/dist/forms/childAndFamilySingle.es.js +1136 -757
  14. package/dist/forms/childAndFamilySingle.iife.js +1 -1
  15. package/dist/forms/childAndFamilySingle.json +1 -1
  16. package/dist/forms/civilLawsuit.es.js +2001 -1352
  17. package/dist/forms/civilLawsuit.iife.js +1 -1
  18. package/dist/forms/civilLawsuit.json +1 -1
  19. package/dist/forms/coins.es.js +115 -115
  20. package/dist/forms/coins.iife.js +1 -1
  21. package/dist/forms/contracts.es.js +1454 -715
  22. package/dist/forms/contracts.iife.js +1 -1
  23. package/dist/forms/contracts.json +1 -1
  24. package/dist/forms/criminal.es.js +1891 -2482
  25. package/dist/forms/criminal.iife.js +1 -1
  26. package/dist/forms/criminal.json +1 -1
  27. package/dist/forms/employmentAndWorkplace.es.js +2178 -934
  28. package/dist/forms/employmentAndWorkplace.iife.js +1 -1
  29. package/dist/forms/employmentAndWorkplace.json +1 -1
  30. package/dist/forms/generalLegal.es.js +854 -808
  31. package/dist/forms/generalLegal.iife.js +1 -1
  32. package/dist/forms/generalLegal.json +1 -1
  33. package/dist/forms/generalLegalPopUnder.es.js +854 -807
  34. package/dist/forms/generalLegalPopUnder.iife.js +1 -1
  35. package/dist/forms/generalLegalPopUnder.json +1 -1
  36. package/dist/forms/generalLegalPopUnderSingle.es.js +4383 -0
  37. package/dist/forms/generalLegalPopUnderSingle.iife.js +1 -0
  38. package/dist/forms/generalLegalPopUnderSingle.json +1 -0
  39. package/dist/forms/generalLegalSingle.es.js +1672 -1629
  40. package/dist/forms/generalLegalSingle.iife.js +1 -1
  41. package/dist/forms/generalLegalSingle.json +1 -1
  42. package/dist/forms/generalLegalThankYou.es.js +710 -695
  43. package/dist/forms/generalLegalThankYou.iife.js +1 -1
  44. package/dist/forms/generalLegalThankYou.json +1 -1
  45. package/dist/forms/harassmentAndDiscrimination.es.js +1465 -681
  46. package/dist/forms/harassmentAndDiscrimination.iife.js +1 -1
  47. package/dist/forms/harassmentAndDiscrimination.json +1 -1
  48. package/dist/forms/malpractice.es.js +1764 -1066
  49. package/dist/forms/malpractice.iife.js +1 -1
  50. package/dist/forms/malpractice.json +1 -1
  51. package/dist/forms/mechanics.es.js +115 -115
  52. package/dist/forms/mechanics.iife.js +1 -1
  53. package/dist/forms/realEstate.es.js +1557 -1209
  54. package/dist/forms/realEstate.iife.js +1 -1
  55. package/dist/forms/realEstate.json +1 -1
  56. package/dist/forms/repossession.es.js +1811 -1085
  57. package/dist/forms/repossession.iife.js +1 -1
  58. package/dist/forms/repossession.json +1 -1
  59. package/dist/forms/ssdi.es.js +672 -672
  60. package/dist/forms/ssdi.iife.js +1 -1
  61. package/dist/forms/ssdi.json +1 -1
  62. package/dist/forms/testForm.es.js +473 -468
  63. package/dist/forms/testForm.iife.js +1 -1
  64. package/dist/forms/testForm.json +1 -1
  65. package/dist/forms/testRedirects.es.js +105 -102
  66. package/dist/forms/testRedirects.iife.js +1 -1
  67. package/dist/forms/testRedirects.json +1 -1
  68. package/dist/forms/vets.es.js +115 -115
  69. package/dist/forms/vets.iife.js +1 -1
  70. package/dist/forms/willsAndTrusts.es.js +1298 -705
  71. package/dist/forms/willsAndTrusts.iife.js +1 -1
  72. package/dist/forms/willsAndTrusts.json +1 -1
  73. package/dist/main.css +1 -1
  74. package/package.json +1 -1
  75. package/dist/forms/generalLegalPopUnderTF.es.js +0 -3087
  76. package/dist/forms/generalLegalPopUnderTF.iife.js +0 -1
  77. package/dist/forms/generalLegalPopUnderTF.json +0 -1
@@ -15,635 +15,160 @@ const DEFAULT_FINAL_HEADLINE_DYNAMIC = '$getKey($meta, "finalHeadlines." + $get(
15
15
  const DEFAULT_FINAL_SUBHEADLINE = 'You may benefit from speaking with a legal professional. Please verify your contact information.';
16
16
  const DEFAULT_FINAL_SUBHEADLINE_DYNAMIC = '$getKey($meta, "finalSubHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalSubHeadline)';
17
17
 
18
- const formPropDefaults = {
19
- type: 'form',
20
- id: 'form',
21
- config: { validationVisibility: 'submit' },
22
- onSubmit: '$submit($submitUrl, $prepData, $handleRedirect, "text/plain; charset=UTF-8")',
23
- plugins: '$plugins',
24
- actions: false,
25
- anchorElement: 'form-anchor',
26
- useLocalStorage: true,
27
- prepop: {
28
- fromURL: true
29
- },
30
- errorCodes: {
31
- 403: { message: "An Error Occurred", abort: false },
32
- 409: { abort: false },
33
- 429: "An Error Occurred",
34
- 504: { message: "An Error Occurred", abort: false },
35
- },
36
- formClass: '!t-max-w-[40rem]'
37
- };
18
+ // ------ Common Base Settings
38
19
 
39
- function formProps(updates) {
40
- const props = merge(
41
- formPropDefaults,
42
- updates
43
- );
44
- if (props.formId && !props.name) {
45
- props.name = props.formId;
20
+ const checkbox = (updates) => {
21
+ if (updates.name && !updates.id) {
22
+ updates.id = updates.name;
46
23
  }
47
- return props
48
- }
24
+ return merge({
25
+ $formkit: 'checkbox',
26
+ validation: 'required',
27
+ validationMessages: {
28
+ required: 'Field is required'
29
+ }
30
+ }, updates)
31
+ };
49
32
 
50
- const metaDefaults = {
51
- tcpaLanguage: TCPA_LANGUAGE
33
+ const sbsCheckbox = (updates) => {
34
+ updates.legendClass = 'legend-left required';
35
+ updates.fieldsetClass = '$reset side-by-side';
36
+ updates.optionsClass = 't-pl-1';
37
+ updates.innerClass = 't-flex t-items-center';
38
+ updates.wrapperClass = 't-mb-3';
39
+ return checkbox(updates)
52
40
  };
53
41
 
54
- function metaProps(updates) {
55
- const data = merge(
56
- metaDefaults,
57
- updates
58
- );
59
- return {
60
- type: 'meta',
61
- data
42
+ const col2Checkbox = (updates) => {
43
+ if (!updates || !updates.legendClass) {
44
+ updates.legendClass = 'required';
62
45
  }
63
- }
64
-
65
- function defaultMetaProps() {
66
- return metaProps({
67
- defaultCommentsPlaceholder: DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
68
- commentsPlaceholders: TOLPCommentsPlaceholders,
69
- defaultFinalHeadline: DEFAULT_FINAL_HEADLINE,
70
- finalHeadlines: TOLPFinalHeadlines,
71
- defaultFinalSubHeadline: DEFAULT_FINAL_SUBHEADLINE,
72
- finalSubHeadlines: TOLPFinalSubHeadlines,
73
- // Added everywhere for now
74
- // trustedFormTOLPs: trustedFormTOLPs
75
- })
76
- }
46
+ updates.fieldsetClass = '$reset';
47
+ updates.optionsClass = 't-pl-8 md:t-pl-2 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2';
48
+ updates.innerClass = 't-items-start';
49
+ updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
50
+ return checkbox(updates)
51
+ };
77
52
 
78
- const formAnchorDefaults = {
79
- $el: 'div',
80
- children: [
81
- {
82
- $el: 'div',
83
- attrs: {
84
- id: 'form-anchor',
85
- class: 't-absolute',
86
- style: { top: '-30px', left: 0 }
87
- }
88
- }
89
- ],
90
- attrs: {
91
- class: 't-relative'
53
+ const radio = (updates) => {
54
+ if (updates.name && !updates.id) {
55
+ updates.id = updates.name;
92
56
  }
57
+ return merge({
58
+ $formkit: 'radio',
59
+ validation: 'required',
60
+ validationMessages: {
61
+ required: 'Field is required'
62
+ },
63
+ optionsClass: 't-pt-3 t-pl-1',
64
+ legendClass: 'required'
65
+ }, updates)
93
66
  };
94
67
 
95
- function formAnchor(updates) {
96
- return merge(
97
- formAnchorDefaults,
98
- updates
99
- )
100
- }
101
-
102
- function headlineDefaults(updates = {}) {
103
- return {
104
- $el: 'h1',
105
- attrs: {
106
- 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 || '')
107
- }
68
+ const col2RadioCenter = (updates) => {
69
+ updates.legendClass = 'required t-w-[100%] t-text-center';
70
+ if (typeof updates.fieldsetClass === 'undefined') {
71
+ updates.fieldsetClass = '$reset t-flex t-justify-center';
108
72
  }
109
- }
73
+ updates.optionsClass = 't-pl-4 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2';
74
+ updates.innerClass = 't-items-start';
75
+ updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
76
+ updates.optionClass = 't-pl-4 md:t-pl-8 md:t-min-w-[200px]';
77
+ updates.messagesClass = 't-flex t-justify-center';
78
+ updates.helpClass = 't-mt-0 t-mb-4 !t-text-sm t-text-center';
79
+ return radio(updates)
80
+ };
110
81
 
111
- function headline(updates = {}) {
112
- return merge(
113
- headlineDefaults(updates),
114
- updates
115
- )
116
- }
82
+ const sbs2ColRadio = (updates) => {
83
+ updates.legendClass = 'legend-left-flex md:t-max-w-[40%] required';
84
+ updates.fieldsetClass = '$reset side-by-side-flex';
85
+ updates.optionsClass = 'md:t-ml-4 md:t-mt-2 t-grid t-grid-cols-1 md:t-grid-cols-2-125';
86
+ updates.innerClass = 't-flex t-items-start';
87
+ updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
88
+ return radio(updates)
89
+ };
117
90
 
118
- function defaultHeadline() {
119
- return headline({
120
- children: '$urlParam("hl", "Start Here For a Free Consultation")',
121
- if: '$activeStep === $firstStep()'
122
- })
123
- }
91
+ const sbs2ItemRadio = (updates) => {
92
+ updates.legendClass = 'legend-left t-pb-1 required';
93
+ updates.fieldsetClass = '$reset side-by-side t-items-center';
94
+ updates.optionsClass = 't-mt-1 t-grid t-grid-cols-1 md:t-grid-cols-2-125 t-items-center';
95
+ updates.innerClass = 't-flex t-items-center';
96
+ updates.optionClass = 't-pr-1';
97
+ return radio(updates)
98
+ };
124
99
 
125
- function subHeadlineDefaults(updates = {}) {
126
- return {
127
- $el: 'h3',
128
- attrs: {
129
- 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 || '')
130
- }
131
- }
132
- }
100
+ const sbsYesNoRadio = (updates) => {
101
+ updates.options = ['Yes', 'No'];
102
+ return sbs2ItemRadio(updates)
103
+ };
133
104
 
134
- function subHeadline(updates = {}) {
135
- return merge(
136
- subHeadlineDefaults(updates),
137
- updates
138
- )
139
- }
105
+ const verticalButtonRadio = (updates) => {
106
+ updates.legendClass = 'legend-left';
107
+ updates.fieldsetClass = '$reset t-flex t-justify-center t-items-center';
108
+ if (typeof updates.optionsClass === 'undefined') {
109
+ updates.optionsClass = 't-flex t-flex-col sm:t-flex-row t-justify-center t-my-3';
110
+ }
111
+ updates.optionClass = 'radiobtn t-my-2 sm:t-my-0 t-mx-2 md:t-mx-5';
112
+ updates.wrapperClass = '$reset formkit-wrapper t-mb-0 t-flex t-items-center t-h-[100%]';
113
+ updates.labelClass = 't-font-semibold t-text-[#1e448f] t-w-[100%]';
114
+ updates.decoratorIcon = false;
115
+ updates.messagesClass = 't-flex t-justify-center';
116
+ return radio(updates)
117
+ };
140
118
 
141
- function defaultSubHeadline() {
142
- return subHeadline({
143
- children: '$urlParam("shl", "Our Service is Fast and Free!")',
144
- if: '$activeStep === $firstStep()'
145
- })
146
- }
119
+ const verticalYesNoRadio = (updates) => {
120
+ updates.options = ['Yes', 'No'];
121
+ updates.optionsClass = 't-flex t-justify-center t-my-3';
122
+ return verticalButtonRadio(updates)
123
+ };
147
124
 
148
- const secureIconDefault = {
149
- $el: 'div',
150
- if: '$activeStep === $lastStep()',
151
- attrs: {
152
- class: 't-flex t-justify-center t-items-center t-text-sm t-text-gray-500'
153
- },
154
- children: [
155
- {
156
- $el: 'img',
157
- attrs: {
158
- loading: 'lazy',
159
- alt: '',
160
- style: {
161
- border: 0
162
- },
163
- width: '25',
164
- height: '25',
165
- src: 'https://d27hmee62k45vz.cloudfront.net/lock_icon_1.jpeg',
166
- }
125
+ const verticalRadio = (updates) => {
126
+ updates.legendClass = 'required';
127
+ updates.fieldsetClass = '$reset t-flex t-justify-center';
128
+ updates.optionsClass = 't-pl-2 t-pt-3';
129
+ updates.innerClass = 't-items-center';
130
+ updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
131
+ updates.optionClass = 't-pl-4 md:t-pl-12';
132
+ updates.messagesClass = 't-flex t-justify-center';
133
+ return radio(updates)
134
+ };
135
+
136
+ const select = (updates) => {
137
+ if (updates.name && !updates.id) {
138
+ updates.id = updates.name;
139
+ }
140
+ return merge({
141
+ $formkit: 'select',
142
+ placeholder: "Please Select",
143
+ validation: 'required',
144
+ validationMessages: {
145
+ required: 'Field is required'
167
146
  },
168
- {
169
- $el: 'span',
170
- children: 'Secure & Encrypted',
171
- attrs: {
172
- class: 't-pl-2 t-pt-1 t-font-medium'
173
- }
174
- }
175
- ]
147
+ inputClass: 't-bg-white',
148
+ labelClass: 'required'
149
+ }, updates)
176
150
  };
177
151
 
152
+ const sbsSelect = (updates) => {
153
+ updates.labelClass = 'required';
154
+ updates.wrapperClass = 'side-by-side t-items-center';
155
+ updates.innerClass = 'select-height-content';
156
+ updates.helpClass = 't-mt-2.5 md:t-text-right md:t-mt-[-5px]';
157
+ return select(updates)
158
+ };
178
159
 
179
- function secureIcon(updates) {
180
- return merge(
181
- secureIconDefault,
182
- updates
183
- )
184
- }
160
+ const verticalSelect = (updates) => {
161
+ updates.labelClass = 'required';
162
+ updates.wrapperClass = 't-flex t-justify-center';
163
+ updates.messagesClass = 't-flex t-justify-center';
164
+ updates.inputClass = 't-min-w-[150px] t-bg-white';
165
+ updates.helpClass = 't-mt-2.5 t-text-center';
166
+ return select(updates)
167
+ };
185
168
 
186
- const hiddenInputsBase = [
187
- {
188
- $formkit: 'hidden',
189
- name: "gclid",
190
- value: null
191
- },
192
- {
193
- $formkit: 'hidden',
194
- name: "campaignid",
195
- value: null
196
- },
197
- {
198
- $formkit: 'hidden',
199
- name: "s",
200
- value: null
201
- }
202
- ];
203
-
204
- const hiddenInputsLegal = [
205
- {
206
- $formkit: 'hidden',
207
- name: "vertical",
208
- value: "Legal"
209
- },
210
- {
211
- $formkit: 'hidden',
212
- name: "TCPA_Language",
213
- value: "$meta.tcpaLanguage"
214
- },
215
- ...hiddenInputsBase
216
- ];
217
-
218
- const legalRedirectMapDefaults = {
219
- '*': LegalRedirectUrl()
220
- };
221
-
222
-
223
- function legalRedirectMap(updates) {
224
- return merge(
225
- legalRedirectMapDefaults,
226
- updates
227
- )
228
- }
229
-
230
- const legalAllValueOverrideMap = {
231
- 'Civil_Defense': {
232
- 'Yes': {
233
- 'Type_Of_Legal_Problem': 'Defend a Lawsuit'
234
- },
235
- 'No': {
236
- 'Type_Of_Legal_Problem': 'File a Lawsuit'
237
- }
238
- },
239
- 'Type_Of_Legal_Problem_Display': {
240
- // Accidents and PI
241
- 'Auto Accident': {
242
- 'Type_Of_Legal_Problem': 'Auto and Car Accidents'
243
- },
244
- 'Dog Bite': {
245
- 'Type_Of_Legal_Problem': 'Personal Injury'
246
- },
247
- 'Slip and Fall': {
248
- 'Type_Of_Legal_Problem': 'Personal Injury'
249
- },
250
- 'Workplace Injury': {
251
- 'Type_Of_Legal_Problem': 'Workers Compensation'
252
- },
253
- 'Trucking Accident': {
254
- 'Type_Of_Legal_Problem': 'Auto and Car Accidents'
255
- },
256
- 'Motorcycle Accident': {
257
- 'Type_Of_Legal_Problem': 'Auto and Car Accidents',
258
- },
259
- 'Other Accidents or Injuries': {
260
- 'Type_Of_Legal_Problem': 'Personal Injury'
261
- },
262
- // Civil
263
- 'Automobile Accident': {
264
- 'Type_Of_Legal_Problem': 'Auto and Car Accidents'
265
- },
266
- 'Contract Disputes': {
267
- 'Type_Of_Legal_Problem': 'Business Lawyers'
268
- },
269
- 'Defamation and Slander': {
270
- 'Type_Of_Legal_Problem': 'File a Lawsuit'
271
- },
272
- 'Dog Bite': {
273
- 'Type_Of_Legal_Problem': 'Personal Injury'
274
- },
275
- 'Employment and Workplace': {
276
- 'Type_Of_Legal_Problem': 'Employment and Workplace'
277
- },
278
- 'Fraud': {
279
- 'Type_Of_Legal_Problem': 'Consumer Lawyers'
280
- },
281
- 'Medical Malpractice': {
282
- 'Type_Of_Legal_Problem': 'Medical Malpractice'
283
- },
284
- 'Personal Injury': {
285
- 'Type_Of_Legal_Problem': 'Personal Injury'
286
- },
287
- 'Property Damage': {
288
- 'Type_Of_Legal_Problem': 'Property Damage'
289
- },
290
- 'Small Claims': {
291
- 'Type_Of_Legal_Problem': 'File a Lawsuit'
292
- },
293
- 'Real Estate': {
294
- 'Type_Of_Legal_Problem': 'Real Estate'
295
- },
296
- 'Other (describe on next page)': {
297
- 'Type_Of_Legal_Problem': 'Not Sure or Other'
298
- },
299
- // Contracts
300
- 'Contract Creation': {
301
- 'Type_Of_Legal_Problem': 'Business Lawyers',
302
- 'Business_Services': 'Contracts'
303
- },
304
- 'Contract Enforcement': {
305
- 'Type_Of_Legal_Problem': 'Business Lawyers',
306
- 'Business_Services': 'Contracts'
307
- },
308
- 'Contract Cancellation': {
309
- 'Type_Of_Legal_Problem': 'Business Lawyers',
310
- 'Business_Services': 'Contracts'
311
- },
312
- 'Contract Fraud': {
313
- 'Type_Of_Legal_Problem': 'Business Lawyers',
314
- 'Business_Services': 'Contracts'
315
- },
316
- 'Breach of Contract': {
317
- 'Type_Of_Legal_Problem': 'Business Lawyers',
318
- 'Business_Services': 'Contracts'
319
- },
320
- 'Other Contract Issues': {
321
- 'Type_Of_Legal_Problem': 'Business Lawyers',
322
- 'Business_Services': 'Contracts'
323
- },
324
- // Criminal
325
- 'Criminal Defense': {
326
- 'Type_Of_Legal_Problem': 'Criminal and Felony'
327
- },
328
- 'Victim of a Crime': {
329
- 'Type_Of_Legal_Problem': 'Victim of a Crime'
330
- },
331
- 'DUI and DWI': {
332
- 'Type_Of_Legal_Problem': 'DUI and DWI'
333
- },
334
- 'Expungement': {
335
- 'Type_Of_Legal_Problem': 'Expungement'
336
- },
337
- 'Harassment': {
338
- 'Type_Of_Legal_Problem': 'Criminal and Felony'
339
- },
340
- 'Not Sure or Other': {
341
- 'Type_Of_Legal_Problem': 'Not Sure or Other'
342
- },
343
- // Employment and Workplace
344
- 'Workplace Harassment': {
345
- 'Type_Of_Legal_Problem': 'Workplace Harassment'
346
- },
347
- 'Workplace Discrimination': {
348
- 'Type_Of_Legal_Problem': 'Workplace Discrimination'
349
- },
350
- 'Wrongful Termination': {
351
- 'Type_Of_Legal_Problem': 'Wrongful Termination'
352
- },
353
- 'Payment Disputes': {
354
- 'Type_Of_Legal_Problem': 'Employment and Workplace'
355
- },
356
- 'Workers Compensation': {
357
- 'Type_Of_Legal_Problem': 'Workers Compensation'
358
- },
359
- 'Unemployment': {
360
- 'Type_Of_Legal_Problem': 'Unemployment'
361
- },
362
- 'Other Workplace Issues': {
363
- 'Type_Of_Legal_Problem': 'Employment and Workplace'
364
- },
365
- // Malpractice
366
- 'Attorney Malpractice': {
367
- 'Type_Of_Legal_Problem': 'Civil Lawsuit'
368
- },
369
- 'Other Malpractice Issues': {
370
- 'Type_Of_Legal_Problem': 'Not Sure or Other'
371
- },
372
- // Repossession
373
- 'Vehicle Repossession': {
374
- 'Type_Of_Legal_Problem': 'Bankruptcy'
375
- },
376
- 'Property Repossession': {
377
- 'Type_Of_Legal_Problem': 'Bankruptcy'
378
- },
379
- 'Other Repossession Issues': {
380
- 'Type_Of_Legal_Problem': 'Not Sure or Other'
381
- },
382
- // Real Estate
383
- 'Contracts and Agreements': {
384
- 'Type_Of_Legal_Problem': 'Real Estate'
385
- },
386
- 'Deeds, Liens, and Titles': {
387
- 'Type_Of_Legal_Problem': 'Real Estate'
388
- },
389
- 'Foreclosure': {
390
- 'Type_Of_Legal_Problem': 'Foreclosure'
391
- },
392
- 'Insurance': {
393
- 'Type_Of_Legal_Problem': 'Insurance'
394
- },
395
- 'Landlord and Tenant': {
396
- 'Type_Of_Legal_Problem': 'Landlord and Tenant',
397
- },
398
- 'Loans and Mortgages': {
399
- 'Type_Of_Legal_Problem': 'Real Estate',
400
- },
401
- 'Wills, Trusts, and Estates': {
402
- 'Type_Of_Legal_Problem': 'Wills and Trusts'
403
- },
404
- 'Property Damage': {
405
- 'Type_Of_Legal_Problem': 'Property Damage'
406
- },
407
- 'Other Real Estate Issues': {
408
- 'Type_Of_Legal_Problem': 'Real Estate'
409
- }
410
- }
411
- };
412
-
413
- const TOLPCommentsPlaceholders = {
414
- 'Adoption': 'Example: "I need help with adoption forms"',
415
- 'Asbestos and Mesothelioma': 'Example: "I was exposed to asbestos at work and would like to file a claim"',
416
- '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"',
417
- 'Bankruptcy': 'Example: "I need help filing for bankruptcy"',
418
- 'Birth Certificate and Name Change': 'Example: "Just married and would like to change my last name"',
419
- 'Business Lawyers': 'Example: "I need help incorporating a business" or "I would like a legal contract reviewed"',
420
- 'Child Custody and Support': 'Example: "Need help getting custody" or "Issues with child support payments"',
421
- 'Child Custody': 'Example: "Need help getting custody"',
422
- 'Child Support': 'Example: "Issues with child support payments"',
423
- 'Civil Rights and Discrimination': 'Example: "Police brutality" or "Coworker keeps harassing me"',
424
- 'Civil Lawsuit': 'Example: "A contractor took my money and never completed the job" or "I am being sued by a neighbor"',
425
- 'File a Lawsuit': 'Example: "A contractor took my money and never completed the job"',
426
- 'Defend a Lawsuit': 'Example: "I am being sued by a neighbor"',
427
- 'Consumer Lawyers': 'Example: "Someone committed fraud against me" or "A contractor took my money and never completed the job"',
428
- 'Copyrights and Trademarks': 'Example: "I would like to register a trademark or copyright a name"',
429
- 'Criminal and Felony': 'Example: "I was arrested for DUI and need legal defense" or "I am being charged with assault"',
430
- 'Debt and Collections': 'Example: "I would like to consolidate my debt" or "A collection agency is harassing me"',
431
- 'Divorce and Separation': 'Example: "I would like to file for an uncontested divorce"',
432
- 'DUI and DWI': 'Example: "I was arrested for DUI and need legal defense"',
433
- 'Elder Law': 'Example: "I would like help with Estate Planning" or "I need help with a guardianship"',
434
- 'Employment and Workplace': 'Example: "I was injured while on the job" or "My company is discriminating against me"',
435
- 'Expungement': 'Example: "I would like to file for an expungement and clear my record"',
436
- 'Family Issues': 'Example: "I need help with guardianship" or "I need a simple will created"',
437
- 'Foreclosure': 'Example: "I need help to avoid foreclosure on my house"',
438
- 'Guardianship': 'Example: "I need help with guardianship documents"',
439
- 'Harassment and Discrimination': 'Example: "I am being discriminated at work" or "My neighbor is harassing me"',
440
- 'Sexual Harassment': 'Example: "I am being sexually harassed by a coworker"',
441
- 'Workplace Harassment': 'Example: "My coworker is being aggressive towards me"',
442
- 'Non-Workplace Harassment': 'Example: "My neighbor is harassing me"',
443
- 'Workplace Discrimination': 'Example: "I am being discriminated at work based on my age"',
444
- 'Non-Workplace Discrimination': 'Example: "I am being discriminated against by a local official"',
445
- 'Identity Theft': 'Example: "Someone stole my identity and I need help fixing the issue"',
446
- 'Immigration and Visas': 'Example: "I need help filing for a visa" or "Help with a green card"',
447
- 'Insurance': 'Example: "I need help filing an insurance claim for damage to my house"',
448
- 'Landlord and Tenant': 'Example: "I need help to fight an eviction" or "I would like a lawyer to review a rental contract"',
449
- 'Lemon Law': 'Example: "I purchased a new vehicle that broke down already and seller will not assist"',
450
- '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"',
451
- 'Medical Malpractice': 'Example: "A doctor performed surgery on the wrong limb and I would like to file a lawsuit"',
452
- 'Patents and Intellectual Property': 'Example: "I would like to file for a patent" or "I need to copyright a name"',
453
- 'Personal Injury': 'Example: "I was bit by the neighbor\'s dog" or "I fell in the icy grocery store parking lot"',
454
- 'Power of Attorney': 'Example: "I need help with a limited or general power of attorney"',
455
- 'Probate and Estates': 'Example: "I need help with planning for my estate" or "A family member passed without a will in place"',
456
- 'Product Liability': 'Example: "My car battery caught on fire" or "I purchased a faulty product"',
457
- 'Property Damage': 'Example: "The neighbor\'s tree fell on my fence" or "My car was hit in the parking lot"',
458
- 'Real Estate': 'Example: "I need help with a quitclaim deed" or "I need a lawyer to review a purchase and sales agreement"',
459
- '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"',
460
- 'Tax and IRS': 'Example: "I need help fighting an IRS tax claim" or "I need audit defense"',
461
- 'Traffic and Tickets': 'Example: "I need help reinstating a supsended license" or "I would like to fight a traffic ticket"',
462
- 'Unemployment': 'Example: "I need help filing for unemployment benefits"',
463
- 'Victim of a Crime': 'Example: "I was assaulted in the store" or "I am being discriminated against at work"',
464
- 'Wills and Trusts': 'Example: "I need a simple will created" or "I would like guidance on creating a trust fund"',
465
- 'Workers Compensation': 'Example: "I was injured at work and would like to file for workers compensation benefits"',
466
- 'Wrongful Death': 'Example: "A family member was killed on the job and we need legal representation"',
467
- 'Wrongful Termination': 'Example: "I was fired by my employer without cause"',
468
- 'Not Sure or Other': 'Example: "I was involved in a car accident" or "I need help setting up power of attorney"'
469
- };
470
-
471
- const TOLPFinalHeadlines = {
472
- // 'Adoption': '',
473
- };
474
-
475
- const TOLPFinalSubHeadlines = {
476
- 'Adoption': 'You may benefit from speaking with an adoption professional. Please verify your contact information.',
477
- // 'Asbestos and Mesothelioma': '',
478
- 'Auto and Car Accidents': 'You may benefit from speaking with an accident professional. Please verify your contact information.',
479
- 'Bankruptcy': 'You may benefit from speaking with a bankruptcy professional. Please verify your contact information.',
480
- // 'Birth Certificate and Name Change': '',
481
- // 'Business Lawyers': '',
482
- // 'Child Custody and Support': '',
483
- // 'Civil Rights and Discrimination': '',
484
- // 'Civil Lawsuit': '',
485
- // 'Consumer Lawyers': '',
486
- 'Copyrights and Trademarks': 'You may benefit from speaking with a copyright and trademark professional. Please verify your contact information.',
487
- // 'Criminal and Felony': '',
488
- // 'Debt and Collections': '',
489
- 'Divorce and Separation': 'You may benefit from speaking with a divorce professional. Please verify your contact information.',
490
- 'DUI and DWI': 'You may benefit from speaking with a DUI professional. Please verify your contact information.',
491
- 'Elder Law': 'You may benefit from speaking with an elder law professional. Please verify your contact information.',
492
- // 'Employment and Workplace': '',
493
- // 'Expungement': '',
494
- // 'Family Issues': '',
495
- 'Foreclosure': 'You may benefit from speaking with a foreclosure professional. Please verify your contact information.',
496
- 'Guardianship': 'You may benefit from speaking with a guardianship professional. Please verify your contact information.',
497
- // 'Harassment and Discrimination': '',
498
- // 'Identity Theft': '',
499
- 'Immigration and Visas': 'You may benefit from speaking with a immigration professional. Please verify your contact information.',
500
- // 'Insurance': '',
501
- 'Landlord and Tenant': 'You may benefit from speaking with a landlord and tenant legal professional. Please verify your contact information.',
502
- // 'Lemon Law': '',
503
- 'Long Term Disability': 'You may benefit from speaking with a disability legal professional. Please verify your contact information.',
504
- 'Medical Malpractice': 'You may benefit from speaking with a malpractice professional. Please verify your contact information.',
505
- 'Patents and Intellectual Property': 'You may benefit from speaking with a patent professional. Please verify your contact information.',
506
- 'Personal Injury': 'You may benefit from speaking with a personal injury professional. Please verify your contact information.',
507
- // 'Power of Attorney': '',
508
- 'Probate and Estates': 'You may benefit from speaking with a probate and estate professional. Please verify your contact information.',
509
- // 'Product Liability': '',
510
- // 'Property Damage': '',
511
- 'Real Estate': 'You may benefit from speaking with a real estate professional. Please verify your contact information.',
512
- 'Social Security Disability and Insurance': 'You may benefit from speaking with an SSDI professional. Please verify your contact information.',
513
- 'Tax and IRS': 'You may benefit from speaking with a tax professional. Please verify your contact information.',
514
- // 'Traffic and Tickets': '',
515
- 'Unemployment': 'You may benefit from speaking with an unemployment professional. Please verify your contact information.',
516
- // 'Victim of a Crime': '',
517
- // 'Wills and Trusts': '',
518
- 'Workers Compensation': 'You may benefit from speaking with a workers compensation professional. Please verify your contact information.',
519
- // 'Wrongful Death': '',
520
- // 'Wrongful Termination': '',
521
- // 'Not Sure or Other': ''
522
- // 'Sexual Harassment': '',
523
- // 'Workplace Harassment': '',
524
- // 'Non-Workplace Harassment': '',
525
- // 'Workplace Discrimination': '',
526
- // 'Non-Workplace Discrimination': '',
527
- };
528
-
529
- // ------ Common Base Settings
530
-
531
- const checkbox = (updates) => {
532
- if (updates.name && !updates.id) {
533
- updates.id = updates.name;
534
- }
535
- return merge({
536
- $formkit: 'checkbox',
537
- validation: 'required',
538
- validationMessages: {
539
- required: 'Field is required'
540
- }
541
- }, updates)
542
- };
543
-
544
- const sbsCheckbox = (updates) => {
545
- updates.legendClass = 'legend-left required';
546
- updates.fieldsetClass = '$reset side-by-side';
547
- updates.optionsClass = 't-pl-1';
548
- updates.innerClass = 't-flex t-items-center';
549
- updates.wrapperClass = 't-mb-3';
550
- return checkbox(updates)
551
- };
552
-
553
- const col2Checkbox = (updates) => {
554
- if (!updates || !updates.legendClass) {
555
- updates.legendClass = 'required';
556
- }
557
- updates.fieldsetClass = '$reset';
558
- updates.optionsClass = 't-pl-8 md:t-pl-2 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2';
559
- updates.innerClass = 't-items-start';
560
- updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
561
- return checkbox(updates)
562
- };
563
-
564
- const radio = (updates) => {
565
- if (updates.name && !updates.id) {
566
- updates.id = updates.name;
567
- }
568
- return merge({
569
- $formkit: 'radio',
570
- validation: 'required',
571
- validationMessages: {
572
- required: 'Field is required'
573
- },
574
- optionsClass: 't-pt-3 t-pl-1',
575
- legendClass: 'required'
576
- }, updates)
577
- };
578
-
579
- const col2Radio = (updates) => {
580
- updates.legendClass = 'required';
581
- updates.fieldsetClass = '$reset';
582
- updates.optionsClass = 't-pl-2 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2';
583
- updates.innerClass = 't-items-start';
584
- updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
585
- return radio(updates)
586
- };
587
-
588
- const sbsRadio = (updates) => {
589
- updates.legendClass = 'legend-left required';
590
- updates.fieldsetClass = '$reset side-by-side';
591
- updates.optionsClass = 't-pl-1';
592
- updates.innerClass = 't-flex t-items-center';
593
- updates.wrapperClass = 't-mb-3';
594
- return radio(updates)
595
- };
596
-
597
- const sbs2ColRadio = (updates) => {
598
- updates.legendClass = 'legend-left-flex md:t-max-w-[40%] required';
599
- updates.fieldsetClass = '$reset side-by-side-flex';
600
- updates.optionsClass = 'md:t-ml-4 md:t-mt-2 t-grid t-grid-cols-1 md:t-grid-cols-2-125';
601
- updates.innerClass = 't-flex t-items-start';
602
- updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
603
- return radio(updates)
604
- };
605
-
606
- const sbs2ItemRadio = (updates) => {
607
- updates.legendClass = 'legend-left t-pb-1 required';
608
- updates.fieldsetClass = '$reset side-by-side t-items-center';
609
- updates.optionsClass = 't-mt-1 t-grid t-grid-cols-1 md:t-grid-cols-2-125 t-items-center';
610
- updates.innerClass = 't-flex t-items-center';
611
- updates.optionClass = 't-pr-1';
612
- return radio(updates)
613
- };
614
-
615
- const sbsYesNoRadio = (updates) => {
616
- updates.options = ['Yes', 'No'];
617
- return sbs2ItemRadio(updates)
618
- };
619
-
620
- const select = (updates) => {
621
- if (updates.name && !updates.id) {
622
- updates.id = updates.name;
623
- }
624
- return merge({
625
- $formkit: 'select',
626
- placeholder: "Please Select",
627
- validation: 'required',
628
- validationMessages: {
629
- required: 'Field is required'
630
- },
631
- inputClass: 't-bg-white',
632
- labelClass: 'required'
633
- }, updates)
634
- };
635
-
636
- const sbsSelect = (updates) => {
637
- updates.labelClass = 'required';
638
- updates.wrapperClass = 'side-by-side t-items-center';
639
- updates.innerClass = 'select-height-content';
640
- updates.helpClass = 't-mt-2.5 md:t-text-right md:t-mt-[-5px]';
641
- return select(updates)
642
- };
643
-
644
- const text = (updates) => {
645
- if (updates.name && !updates.id) {
646
- updates.id = updates.name;
169
+ const text = (updates) => {
170
+ if (updates.name && !updates.id) {
171
+ updates.id = updates.name;
647
172
  }
648
173
  return merge({
649
174
  $formkit: 'text',
@@ -697,27 +222,12 @@ const sbsDate = (updates) => {
697
222
  return date(updates)
698
223
  };
699
224
 
700
- const amountPaymentsPastDue = () => sbsSelect({
701
- label: 'Total Amount of Payments that are Past Due:',
702
- name: 'Amount_Payments_Past_Due',
703
- options: [
704
- "$0 - $499",
705
- "$500 - $999",
706
- "$1,000 - $2,499",
707
- "$2,500 - $4,999",
708
- "$5,000 - $9,999",
709
- "$10,000 - $24,999",
710
- "$25,000 - $49,999",
711
- "$50,000 - $99,999",
712
- "More than $100,000"
713
- ]
714
- });
715
-
716
- const applicantOccupation = (scope) => sbsText({
717
- name: scope ? scope + ':' + 'Applicant_Occupation' : 'Applicant_Occupation',
718
- label: "What is the Applicant's Occupation?",
719
- placeholder: "Occupation"
720
- });
225
+ const verticalDate = (updates) => {
226
+ updates.wrapperClass = 't-flex t-justify-center';
227
+ updates.inputClass = 't-text-center';
228
+ updates.messagesClass = 't-flex t-justify-center';
229
+ return date(updates)
230
+ };
721
231
 
722
232
  const applicantAge = (scope) => sbsText({
723
233
  name: scope ? scope + ':' + 'Applicant_Age' : 'Applicant_Age',
@@ -733,59 +243,6 @@ const applicantAge = (scope) => sbsText({
733
243
  }
734
244
  });
735
245
 
736
- const applicantDisabilityHowObtain = (scope) => sbsSelect({
737
- name: scope ? scope + ':' + 'Applicant_Disability_How_Obtain' : 'Applicant_Disability_How_Obtain',
738
- label: 'How Did Applicant Obtain the Disability Policy?',
739
- options: [
740
- "Employer",
741
- "Self",
742
- "Other"
743
- ]
744
- });
745
-
746
- const applicantPreviouslyAppliedLtdBenefits = (scope) => sbsRadio({
747
- name: scope ? scope + ':' + 'Applicant_Previously_Apply_Ltd_Benefits' : 'Applicant_Previously_Apply_Ltd_Benefits',
748
- label: 'Has Applicant Previously Applied for Long Term Disability Benefits?',
749
- options: [
750
- "Yes, claim pending",
751
- "Yes, claim denied",
752
- "No"
753
- ]
754
- });
755
-
756
- const applicantMonthlySalary = (scope) => sbsSelect({
757
- name: scope ? scope + ':' + 'Applicant_Monthly_Salary' : 'Applicant_Monthly_Salary',
758
- label: "Applicant's Monthly Salary/Pay When Last at Work:",
759
- options: [
760
- "< $1,000",
761
- "$1,000 - $2,000",
762
- "$2,000 - $3,000",
763
- "$3,000 - $4,000",
764
- "$4,000 - $5,000",
765
- "$5,000 - $6,000",
766
- "$6,000 - $7,000",
767
- "$7,000 - $8,000",
768
- "$8,000 - $9,000",
769
- "$9,000 - $10,000",
770
- ">$10,000"
771
- ]
772
- });
773
-
774
- const applicantReceivedDisabilityBenefits = (scope) => sbsRadio({
775
- name: scope ? scope + ':' + 'Applicant_Received_Disability_Benefits' : 'Applicant_Received_Disability_Benefits',
776
- label: 'Has Applicant Ever Received Long Term Disability Benefits for this Claim?',
777
- options: [
778
- "Yes, currently receiving",
779
- "Yes, appealing a decision to stop payment of benefits",
780
- "No"
781
- ]
782
- });
783
-
784
- const applicantLTDisabilityPolicy = (scope) => sbsYesNoRadio({
785
- name: scope ? scope + ':' + 'Applicant_Lt_Disability_Policy' : 'Applicant_Lt_Disability_Policy',
786
- label: 'Does Applicant have a Long Term Disability Policy?'
787
- });
788
-
789
246
  const atFault = (scope) => sbsYesNoRadio({
790
247
  name: scope ? scope + ':' + 'At_Fault' : 'At_Fault',
791
248
  label: 'Were You at Fault?'
@@ -801,7 +258,7 @@ const bankruptcyCrossSell = () => sbsCheckbox({
801
258
  helpClass: "!t-text-sm"
802
259
  });
803
260
 
804
- const bloodContentAlcoholTest = (scope) => sbsSelect({
261
+ const bloodContentAlcoholTest$1 = (scope) => sbsSelect({
805
262
  name: scope ? scope + ':' + 'Blood_Alcohol_Content_Test' : 'Blood_Alcohol_Content_Test',
806
263
  label: 'Blood Alcohol Content Measured by Test:',
807
264
  options: [
@@ -816,27 +273,17 @@ const bloodContentAlcoholTest = (scope) => sbsSelect({
816
273
  ]
817
274
  });
818
275
 
819
- const businessServices = () => sbsSelect({
820
- label: 'Legal Services Needed for Your Business:',
821
- id: 'Business_Services',
822
- name: 'Business_Services',
823
- options: [
824
- "Business Formation",
825
- "Contracts",
826
- "Insurance and Liability",
827
- "Mergers and Acquisition",
828
- "Regulatory Compliance",
829
- "Employee Dispute",
830
- "Other"
831
- ]
832
- });
833
-
834
- const businessType = () => sbs2ColRadio({
835
- label: 'Is the Business Public or Private?',
836
- name: 'Business_Type',
276
+ const bloodContentAlcoholTestCenter = (scope) => verticalSelect({
277
+ name: scope ? scope + ':' + 'Blood_Alcohol_Content_Test' : 'Blood_Alcohol_Content_Test',
837
278
  options: [
838
- "Public",
839
- "Private"
279
+ "No Test",
280
+ "0.00% - 0.04%",
281
+ "0.05% - 0.08%",
282
+ "0.09% - 0.12%",
283
+ "0.13% - 0.16%",
284
+ "0.17% - 0.20%",
285
+ "More than 0.20%",
286
+ "Don't know"
840
287
  ]
841
288
  });
842
289
 
@@ -852,30 +299,6 @@ const causeOfInjury = (scope) => sbsSelect({
852
299
  ]
853
300
  });
854
301
 
855
- const causeOfDeath = () => sbsSelect({
856
- label: "What was the Cause of the Victim's Death?",
857
- name: 'Cause_Of_Death',
858
- options: [
859
- "Vehicle Accident",
860
- "Negligent/Careless Act",
861
- "Reckless Act",
862
- "Other"
863
- ]
864
- });
865
-
866
- const civilRightsType = () => sbsSelect({
867
- label: 'On what basis were your rights violated?',
868
- name: 'Civil_Rights_Type',
869
- options: [
870
- "Age",
871
- "Disability",
872
- "Gender",
873
- "Race",
874
- "Religion",
875
- "Other"
876
- ]
877
- });
878
-
879
302
  const childHome = (scope) => sbsSelect({
880
303
  name: scope ? scope + ':' + 'Child_Home' : 'Child_Home',
881
304
  label: 'With Whom Do the Children Currently Live?',
@@ -920,239 +343,19 @@ const claimStatus = (scope) => sbsSelect({
920
343
  ]
921
344
  });
922
345
 
923
- const comments = (updates, scope) => textArea(
924
- merge({
925
- name: scope ? scope + ':' + 'Comments' : 'Comments',
926
- label: 'Please briefly describe your situation in a few words:',
927
- placeholder: 'For Example: "I would like help with child support payments" or "I need help with visitation rights"'
928
- }, updates)
929
- );
930
-
931
- const consumerLawyerType = () => sbsSelect({
932
- label: 'What best describes your issue?',
933
- name: 'Consumer_Lawyer_Type',
934
- options: [
935
- "Unsafe Environment",
936
- "Unsafe Products",
937
- "Auto Fraud",
938
- "Credit Reporting Issues",
939
- "Debt Collection Abuse",
940
- "Identity Theft",
941
- "Lemon Law",
942
- "Military Consumer Rights",
943
- "Predatory Lending",
944
- "Student Loans",
945
- "Other"
946
- ]
947
- });
948
-
949
- const countryOfCitizenship = (scope) => sbsSelect({
950
- name: scope ? scope + ':' + 'Country_Of_Citizenship' : 'Country_Of_Citizenship',
951
- label: 'What is Your Current Country of Citizenship?',
952
- options: [
953
- "Afghanistan",
954
- "Albania",
955
- "Algeria",
956
- "Andorra",
957
- "Angola",
958
- "Antigua and Barbuda",
959
- "Argentina",
960
- "Armenia",
961
- "Australia",
962
- "Austria",
963
- "Azerbaijan",
964
- "Bahamas",
965
- "The Bahrain",
966
- "Bangladesh",
967
- "Barbados",
968
- "Belarus",
969
- "Belgium",
970
- "Belize",
971
- "Benin",
972
- "Bhutan",
973
- "Bolivia",
974
- "Bosnia and Herzegovina",
975
- "Botswana",
976
- "Brazil",
977
- "Brunei",
978
- "Bulgaria",
979
- "Burkina Faso",
980
- "Burundi",
981
- "Cambodia",
982
- "Cameroon",
983
- "Canada",
984
- "Cape Verde",
985
- "Central African Republic",
986
- "Chad",
987
- "Chile",
988
- "China",
989
- "Colombia",
990
- "Comoros",
991
- "Congo (Congoâ Kinshasa)",
992
- "Congo (Congoâ Brazzaville)",
993
- "Costa Rica",
994
- "Coted'Ivoire (Ivory Coast)",
995
- "Croatia",
996
- "Cuba",
997
- "Cyprus",
998
- "Czech Republic",
999
- "Denmark",
1000
- "Djibouti",
1001
- "Dominica",
1002
- "Dominican Republic",
1003
- "Ecuador",
1004
- "Egypt",
1005
- "El Salvador",
1006
- "Equatorial Guinea",
1007
- "Eritrea",
1008
- "Estonia",
1009
- "Ethiopia",
1010
- "Fiji",
1011
- "Finland",
1012
- "France",
1013
- "Gabon",
1014
- "Gambia",
1015
- "Georgia",
1016
- "Germany",
1017
- "Ghana",
1018
- "Greece",
1019
- "Grenada",
1020
- "Guatemala",
1021
- "Guinea",
1022
- "Guinea-Bissau",
1023
- "Guyana",
1024
- "Haiti",
1025
- "Honduras",
1026
- "Hungary",
1027
- "Iceland",
1028
- "India",
1029
- "Indonesia",
1030
- "Iran",
1031
- "Iraq",
1032
- "Ireland",
1033
- "Israel",
1034
- "Italy",
1035
- "Jamaica",
1036
- "Japan",
1037
- "Jordan",
1038
- "Kazakhstan",
1039
- "Kenya",
1040
- "Kiribati",
1041
- "Korea (North Korea)",
1042
- "Korea (South Korea)",
1043
- "Kuwait",
1044
- "Kyrgyzstan",
1045
- "Laos",
1046
- "Latvia",
1047
- "Lebanon",
1048
- "Lesotho",
1049
- "Liberia",
1050
- "Libya",
1051
- "Liechtenstein",
1052
- "Lithuania",
1053
- "Luxembourg",
1054
- "Macedonia",
1055
- "Madagascar",
1056
- "Malawi",
1057
- "Malaysia",
1058
- "Maldives",
1059
- "Mali",
1060
- "Malta",
1061
- "Marshall Islands",
1062
- "Mauritania",
1063
- "Mauritius",
1064
- "Mexico",
1065
- "Micronesia",
1066
- "Moldova",
1067
- "Monaco",
1068
- "Mongolia",
1069
- "Montenegro",
1070
- "Morocco",
1071
- "Mozambique",
1072
- "Myanmar (Burma)",
1073
- "Namibia",
1074
- "Nauru",
1075
- "Nepal",
1076
- "Netherlands",
1077
- "New Zealand",
1078
- "Nicaragua",
1079
- "Niger",
1080
- "Nigeria",
1081
- "Norway",
1082
- "Oman",
1083
- "Pakistan",
1084
- "Palau",
1085
- "Panama",
1086
- "Papua New Guinea",
1087
- "Paraguay",
1088
- "Peru",
1089
- "Philippines",
1090
- "Poland",
1091
- "Portugal",
1092
- "Qatar",
1093
- "Romania",
1094
- "Russia",
1095
- "Rwanda",
1096
- "Saint Kitts and Nevis",
1097
- "SaintLucia",
1098
- "Saint Vincent and the Grenadines",
1099
- "Samoa",
1100
- "San Marino",
1101
- "Sao Tome and Principe",
1102
- "Saudi Arabia",
1103
- "Senegal",
1104
- "Serbia",
1105
- "Seychelles",
1106
- "Sierra Leone",
1107
- "Singapore",
1108
- "Slovakia",
1109
- "Slovenia",
1110
- "Solomon Islands",
1111
- "Somalia",
1112
- "South Africa",
1113
- "Spain",
1114
- "SriLanka",
1115
- "Sudan",
1116
- "Suriname",
1117
- "Swaziland",
1118
- "Sweden",
1119
- "Switzerland",
1120
- "Syria",
1121
- "Tajikistan",
1122
- "Tanzania",
1123
- "Thailand",
1124
- "Timor-Leste (East Timor)",
1125
- "Togo",
1126
- "Tonga",
1127
- "Trinidad and Tobago",
1128
- "Tunisia",
1129
- "Turkey",
1130
- "Turkmenistan",
1131
- "Tuvalu",
1132
- "Uganda",
1133
- "Ukraine",
1134
- "United Arab Emirates",
1135
- "United Kingdom",
1136
- "United States",
1137
- "Uruguay",
1138
- "Uzbekistan",
1139
- "Vanuatu",
1140
- "Vatican City",
1141
- "Venezuela",
1142
- "Vietnam",
1143
- "Yemen",
1144
- "Zambia",
1145
- "Zimbabwe"
1146
- ]
1147
- });
1148
-
1149
- const crimeCommittedDate = () => sbsDate({
1150
- label: 'When was the Alleged Crime?',
346
+ const comments = (updates, scope) => textArea(
347
+ merge({
348
+ name: scope ? scope + ':' + 'Comments' : 'Comments',
349
+ label: 'Please briefly describe your situation in a few words:',
350
+ placeholder: 'For Example: "I would like help with child support payments" or "I need help with visitation rights"'
351
+ }, updates)
352
+ );
353
+
354
+ const crimeCommittedDateCenter = () => verticalDate({
1151
355
  name: 'Crime_Committed_Date'
1152
356
  });
1153
357
 
1154
- const criminalChargeType = () => sbsSelect({
1155
- label: 'What Type of Charge?',
358
+ const criminalChargeTypeCenter = () => col2RadioCenter({
1156
359
  name: 'Criminal_Charge_Type',
1157
360
  options: [
1158
361
  "Felony",
@@ -1162,9 +365,8 @@ const criminalChargeType = () => sbsSelect({
1162
365
  ]
1163
366
  });
1164
367
 
1165
- const criminalChargesFiled = () => sbsRadio({
368
+ const criminalChargesFiledCenter = () => verticalRadio({
1166
369
  name: 'Criminal_Charges_Filed',
1167
- label: "Were Criminal Charges Filed?",
1168
370
  options: [
1169
371
  "Yes",
1170
372
  "No",
@@ -1172,7 +374,7 @@ const criminalChargesFiled = () => sbsRadio({
1172
374
  ]
1173
375
  });
1174
376
 
1175
- const degreeOfInterest = (scope, help) => sbsSelect({
377
+ const degreeOfInterest$1 = (scope, help) => sbsSelect({
1176
378
  name: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
1177
379
  id: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
1178
380
  label: 'How Likely Are You to Pay if Your Issue Could be Resolved?',
@@ -1185,12 +387,19 @@ const degreeOfInterest = (scope, help) => sbsSelect({
1185
387
  ]
1186
388
  });
1187
389
 
1188
- const defaultNotice = () => sbsYesNoRadio({
1189
- name: 'Default_Notice',
1190
- label: 'Have You Received a Notice of Default from the Lender?'
390
+ const degreeOfInterestCenter = (scope, help) => col2RadioCenter({
391
+ name: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
392
+ id: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
393
+ help: help,
394
+ options: [
395
+ 'Definitely',
396
+ 'Probably',
397
+ 'Maybe',
398
+ "Absolutely Can't Afford"
399
+ ]
1191
400
  });
1192
401
 
1193
- const degreeOfInterestHelp = (scope) => degreeOfInterest(scope, 'No payment necessary to speak with lawyers.');
402
+ const degreeOfInterestHelp = (scope) => degreeOfInterest$1(scope, 'No payment necessary to speak with lawyers.');
1194
403
 
1195
404
  const disabilityConditionStopWork = (scope) => sbsYesNoRadio({
1196
405
  name: scope ? scope + ':' + 'Disability_Condition_Stop_Work' : 'Disability_Condition_Stop_Work',
@@ -1207,15 +416,6 @@ const doctorTreatment = (scope) => sbsYesNoRadio({
1207
416
  label: 'Have You Recently Been Treated by a Doctor, Hospital or Clinic?',
1208
417
  });
1209
418
 
1210
- const driversLicenseType = () => sbs2ItemRadio({
1211
- name: 'Drivers_License_Type',
1212
- label: "Type of Driver's License:",
1213
- options: [
1214
- "Private",
1215
- "Commercial"
1216
- ]
1217
- });
1218
-
1219
419
  const email = () => sbsText({
1220
420
  $formkit: 'email',
1221
421
  name: 'Email',
@@ -1230,20 +430,6 @@ const email = () => sbsText({
1230
430
  }
1231
431
  });
1232
432
 
1233
- const employerType = () => sbsSelect({
1234
- label: 'The Employer Is a:',
1235
- name: 'Employer_Type',
1236
- options: [
1237
- "Sole proprietorship (mom and pop)",
1238
- "Partnership",
1239
- "Franchise",
1240
- "Privately held company",
1241
- "Public corporation",
1242
- "Government Agency",
1243
- "Don't know"
1244
- ]
1245
- });
1246
-
1247
433
  const estateLegalServicesNeeded = (scope) => sbsSelect({
1248
434
  name: scope ? scope + ':' + 'Estate_Legal_Services_Needed' : 'Estate_Legal_Services_Needed',
1249
435
  label: "Legal Services Needed for Your Estate:",
@@ -1268,87 +454,27 @@ const firstName = () => sbsText({
1268
454
  }
1269
455
  });
1270
456
 
1271
- const haveAttorney = (scope) => sbsYesNoRadio({
457
+ const haveAttorney$1 = (scope) => sbsYesNoRadio({
1272
458
  name: scope ? scope + ':' + 'Have_Attorney' : 'Have_Attorney',
1273
459
  label: 'Already Working with An Attorney?'
1274
460
  });
1275
461
 
462
+ const haveAttorneyCenter = () => verticalYesNoRadio({
463
+ name: 'Have_Attorney',
464
+ });
465
+
1276
466
  const haveChildren = (scope) => sbsYesNoRadio({
1277
467
  name: scope ? scope + ':' + 'Have_Children' : 'Have_Children',
1278
468
  label: 'Do You Have Children?'
1279
469
  });
1280
470
 
1281
- const haveCourtDate = () => sbsYesNoRadio({
1282
- name: 'Have_Court_Date',
1283
- label: 'Do You Have a Court Date?'
1284
- });
1285
-
1286
- const immigrationDetails = (scope) => sbsSelect({
1287
- name: scope ? scope + ':' + 'Immigration_Details' : 'Immigration_Details',
1288
- label: 'Where is the Person Seeking Immigration Located?',
1289
- options: [
1290
- "In the USA with proper documentation",
1291
- "In the USA without proper documentation",
1292
- "Not in the USA",
1293
- "In Deportation/Removal Proceedings",
1294
- "Currently Detained (friend or family submitting this request)",
1295
- "Out on Bond",
1296
- "None Apply"
1297
- ]
1298
- });
1299
-
1300
- const immigrationEntry = (scope) => sbsSelect({
1301
- name: scope ? scope + ':' + 'Immigration_Entry' : 'Immigration_Entry',
1302
- label: 'How are you Trying to Enter the Country?',
1303
- options: [
1304
- "With Proper Documents/Visa and Inspection through Customs Border Patrol",
1305
- "Illegally",
1306
- "No Entry",
1307
- "Other"
1308
- ]
1309
- });
1310
-
1311
- const immigrationLocation = (scope) => sbsSelect({
1312
- name: scope ? scope + ':' + 'Immigration_Location' : 'Immigration_Location',
1313
- label: 'Where Are You Migrating To?',
1314
- options: [
1315
- "In the USA",
1316
- "Outside the USA"
1317
- ]
1318
- });
1319
-
1320
- const immigrationType = (scope) => sbsSelect({
1321
- name: scope ? scope + ':' + 'Immigration_Type' : 'Immigration_Type',
1322
- label: 'What Type of Immigration Issue?',
1323
- options: [
1324
- "Citizenship (for current green card holders)",
1325
- "Permanent Visa Family Based (green cards)",
1326
- "Permanent Visa Business Based (green cards)",
1327
- "Temporary Business Visa",
1328
- "Temporary Tourist Visa",
1329
- "Investor",
1330
- "Asylum",
1331
- "Self Petition (violence & abuse victims)",
1332
- "Removal/Deportation Proceeding",
1333
- "Other"
1334
- ]
1335
- });
1336
-
1337
- const immigrationStatus = (scope) => sbsSelect({
1338
- name: scope ? scope + ':' + 'Immigration_Status' : 'Immigration_Status',
1339
- label: 'What is the Current Status of the Immigration Case?',
1340
- options: [
1341
- "Out of Status (overstayed my visa)",
1342
- "Current Visa Holder (in status)",
1343
- "Lawful Permanent Resident (green card)",
1344
- "Not Applicable (outside the USA)",
1345
- "Other"
1346
- ]
471
+ const incidentDate$1 = (scope) => sbsDate({
472
+ name: scope ? scope + ':' + 'Incident_Date' : 'Incident_Date',
473
+ label: 'Date of Incident:',
1347
474
  });
1348
475
 
1349
- const incidentDate = (scope) => sbsDate({
476
+ const incidentDateCenter = (scope) => verticalDate({
1350
477
  name: scope ? scope + ':' + 'Incident_Date' : 'Incident_Date',
1351
- label: 'Date of Incident:',
1352
478
  });
1353
479
 
1354
480
  const lastName = () => sbsText({
@@ -1362,28 +488,7 @@ const lastName = () => sbsText({
1362
488
  }
1363
489
  });
1364
490
 
1365
- const landlordTenantParty = () => sbsSelect({
1366
- label: 'I am the:',
1367
- name: 'Landlord_Tenant_Party',
1368
- options: [
1369
- "Landlord",
1370
- "Tenant",
1371
- "Other"
1372
- ]
1373
- });
1374
-
1375
- const lawsuitOtherParty = () => sbsSelect({
1376
- label: 'The Other Party is a:',
1377
- name: 'Lawsuit_Other_Party',
1378
- options: [
1379
- "Individual",
1380
- "Small Business",
1381
- "Large Corporation",
1382
- "Government Entity"
1383
- ]
1384
- });
1385
-
1386
- const lawyerPaymentMethod = (scope) => sbsSelect({
491
+ const lawyerPaymentMethod$1 = (scope) => sbsSelect({
1387
492
  name: scope ? scope + ':' + 'Lawyer_Payment_Method' : 'Lawyer_Payment_Method',
1388
493
  label: 'How Will You Pay for Legal Fees if You Hire a Lawyer?',
1389
494
  help: 'No payment necessary to speak with lawyers.',
@@ -1397,6 +502,18 @@ const lawyerPaymentMethod = (scope) => sbsSelect({
1397
502
  ]
1398
503
  });
1399
504
 
505
+ const lawyerPaymentMethodCenter = (scope) => col2RadioCenter({
506
+ name: scope ? scope + ':' + 'Lawyer_Payment_Method' : 'Lawyer_Payment_Method',
507
+ help: 'No payment necessary to start a consultation.',
508
+ options: {
509
+ 'Cash': 'Cash',
510
+ 'Credit Card': 'Credit Card',
511
+ 'Family': 'Family or Friend',
512
+ 'Other': 'Other'
513
+ },
514
+ fieldsetClass: '$reset t-flex t-flex-col t-items-center'
515
+ });
516
+
1400
517
  const legalCrossSells$1 = () => col2Checkbox({
1401
518
  id: 'Legal_CrossSells',
1402
519
  name: 'Legal_CrossSells',
@@ -1468,23 +585,6 @@ const legalCrossSells$1 = () => col2Checkbox({
1468
585
  }
1469
586
  });
1470
587
 
1471
- const loanAmount = () => sbsSelect({
1472
- label: 'Total Amount of Loan?',
1473
- name: 'Loan_Amount',
1474
- options: [
1475
- "Less than $10,000",
1476
- "$10,000 - $24,999",
1477
- "$25,000 - $49,999",
1478
- "$50,000 - $99,999",
1479
- "$100,000 - $199,999",
1480
- "$200,000 - $299,999",
1481
- "$300,000 - $399,999",
1482
- "$400,000 - $499,999",
1483
- "$500,000 - $599,999",
1484
- "More than $600,000"
1485
- ]
1486
- });
1487
-
1488
588
  const maritalStatus = (scope) => sbsSelect({
1489
589
  name: scope ? scope + ':' + 'Marital_Status' : 'Marital_Status',
1490
590
  label: 'Marital Status:',
@@ -1498,68 +598,13 @@ const maritalStatus = (scope) => sbsSelect({
1498
598
  ]
1499
599
  });
1500
600
 
1501
- const medicalMalpracticeInjuries = () => sbsSelect({
1502
- label: "Injuries from Medical Malpractice:",
1503
- name: 'Medical_Malpractice_Injuries',
1504
- options: [
1505
- "No Injury",
1506
- "Minor Injury",
1507
- "Disfigurement or cosmetic injury",
1508
- "Short term loss of physical ability",
1509
- "Long term loss of physical injury",
1510
- "Possibility of future harm",
1511
- "Death of Patient"
1512
- ]
1513
- });
1514
-
1515
-
1516
- const numEmployeesOfBusiness = () => sbsSelect({
1517
- label: 'Total Employees of Business? (estimated)',
1518
- name: 'Num_Employees_Of_Business',
1519
- options: [
1520
- "1-5",
1521
- "6-20",
1522
- "21-50",
1523
- "51-100",
1524
- "101-500",
1525
- "501-1,000",
1526
- "More than 1,000"
1527
- ]
1528
- });
1529
-
1530
- const ownRealEstate = () => sbsYesNoRadio({
1531
- name: 'Own_Real_Estate',
1532
- label: 'Do You Own Real Estate?'
1533
- });
1534
-
1535
- const patentAssistanceType = () => sbsSelect({
1536
- label: "Legal Assistance Needed:",
1537
- name: 'Patent_Assistance_Type',
1538
- options: [
1539
- "Obtaining a Patent",
1540
- "Avoiding Patent Infringement",
1541
- "Suing for Patent Infringement",
1542
- "Defending Against a Claim of Patent Infringement",
1543
- "Other"
1544
- ]
1545
- });
1546
-
1547
- const patentFor = () => sbsSelect({
1548
- label: "The Patent is for a:",
1549
- name: 'Patent_For',
1550
- options: [
1551
- "Product or Machine",
1552
- "Process",
1553
- "Computer Software",
1554
- "Living Organism or Plant",
1555
- "Ornamental Design",
1556
- "Other"
1557
- ]
601
+ const pendingCharges$1 = (scope) => sbsYesNoRadio({
602
+ name: scope ? scope + ':' + 'Pending_Charges' : 'Pending_Charges',
603
+ label: 'Do you currently have any pending charges?'
1558
604
  });
1559
605
 
1560
- const pendingCharges = (scope) => sbsYesNoRadio({
606
+ const pendingChargesCenter = (scope) => verticalYesNoRadio({
1561
607
  name: scope ? scope + ':' + 'Pending_Charges' : 'Pending_Charges',
1562
- label: 'Do you currently have any pending charges?'
1563
608
  });
1564
609
 
1565
610
  const phone = () => sbsText({
@@ -1591,50 +636,25 @@ const primaryInjury = (scope) => sbs2ColRadio({
1591
636
  "Headaches",
1592
637
  "Memory Loss",
1593
638
  "Loss of Limb",
1594
- "Other (describe on next page)"
639
+ "Not Sure or Other"
1595
640
  ]
1596
641
  });
1597
642
 
1598
- const priorAlcoholOffenses = (scope) => sbsYesNoRadio({
643
+ const priorAlcoholOffenses$1 = (scope) => sbsYesNoRadio({
1599
644
  name: scope ? scope + ':' + 'Prior_Alcohol_Offenses' : 'Prior_Alcohol_Offenses',
1600
645
  label: 'Any Prior Alcohol Related Offenses?'
1601
646
  });
1602
647
 
648
+ const priorAlcoholOffensesCenter = (scope) => verticalYesNoRadio({
649
+ name: scope ? scope + ':' + 'Prior_Alcohol_Offenses' : 'Prior_Alcohol_Offenses',
650
+ });
651
+
1603
652
  const policeReportFiled = (scope) => sbsYesNoRadio({
1604
653
  name: scope ? scope + ':' + 'Police_Report_Filed' : 'Police_Report_Filed',
1605
654
  label: 'Was a Police Report Filed?'
1606
655
  });
1607
656
 
1608
- const realEstateArea = () => sbsSelect({
1609
- label: "Area of Real Estate:",
1610
- name: 'Real_Estate_Area',
1611
- options: [
1612
- "Condos and Coops",
1613
- "Construction Disputes",
1614
- "Purchase/Sale Contract",
1615
- "Refinancing Agreement",
1616
- "Title and Boundary Disputes",
1617
- "Zoning, Planning and Land Use",
1618
- "Property Deeds and Transfers",
1619
- "Liens",
1620
- "Other"
1621
- ]
1622
- });
1623
-
1624
- const relationshipToVictim = () => sbsSelect({
1625
- label: 'Relationship to the Victim:',
1626
- name: 'Relationship_To_Victim',
1627
- options: [
1628
- "Parent",
1629
- "Spouse",
1630
- "Sibling",
1631
- "Friend",
1632
- "Other"
1633
- ]
1634
- });
1635
-
1636
- const roleInMatterCriminal = () => sbsRadio({
1637
- label: 'What is Your Role in this Matter?',
657
+ const roleInMatterCriminalCenter = () => verticalRadio({
1638
658
  name: 'Role_In_Matter_Criminal',
1639
659
  options: [
1640
660
  "I have been accused",
@@ -1659,71 +679,6 @@ const socialSecurityDisabilityReceivingBenefits = (scope) => sbsYesNoRadio({
1659
679
  label: 'Are You Currently Receiving Social Security Disability Benefits?'
1660
680
  });
1661
681
 
1662
- const taxLevel = () => sbsSelect({
1663
- label: 'Which Level of Tax Issue?',
1664
- name: 'Tax_Level',
1665
- options: [
1666
- "Federal",
1667
- "State",
1668
- "Local"
1669
- ]
1670
- });
1671
-
1672
- const taxIssueType = () => sbsSelect({
1673
- label: 'Type of Tax Issue:',
1674
- name: 'Tax_Issue_Type',
1675
- options: [
1676
- "Income",
1677
- "Property",
1678
- "Corporate"
1679
- ]
1680
- });
1681
-
1682
- const taxProblemDetails = () => sbsSelect({
1683
- label: 'Details of Tax Problem:',
1684
- name: 'Tax_Problem_Details',
1685
- options: [
1686
- "Assets Seized",
1687
- "Bank Account Levied",
1688
- "Cannot Pay Taxes",
1689
- "Innocent Spouse",
1690
- "Lien Filed",
1691
- "Received Audit Notice",
1692
- "Unpaid Interest",
1693
- "Wage Garnishment",
1694
- "Other"
1695
- ]
1696
- });
1697
-
1698
- const totalDebt = () => sbsSelect({
1699
- label: 'Total Debt?',
1700
- name: 'Total_Debt',
1701
- options: [
1702
- "Less than 5K",
1703
- "5K to 10K",
1704
- "10K to 20K",
1705
- "20K to 50K",
1706
- "More than 50K"
1707
- ]
1708
- });
1709
-
1710
-
1711
- const totalMonthlyIncome = () => sbsSelect({
1712
- label: 'Total Monthly Income?',
1713
- name: 'Total_Monthly_Income',
1714
- options: [
1715
- "Less than 1K",
1716
- "1K to 2K",
1717
- "2K to 3K",
1718
- "3K to 4K",
1719
- "4K to 5K",
1720
- "5K to 7K",
1721
- "7K to 10K",
1722
- "10K to 15K",
1723
- "More than 15K"
1724
- ]
1725
- });
1726
-
1727
682
  const TCPAConsent = () => ({
1728
683
  $formkit: 'checkbox',
1729
684
  label: '$meta.tcpaLanguage',
@@ -1739,7 +694,7 @@ const TCPAConsent = () => ({
1739
694
  }
1740
695
  });
1741
696
 
1742
- const typeOfAlcoholTest = (scope) => sbsSelect({
697
+ const typeOfAlcoholTest$1 = (scope) => sbsSelect({
1743
698
  name: scope ? scope + ':' + 'Type_Of_Alcohol_Test' : 'Type_Of_Alcohol_Test',
1744
699
  label: 'Type of Alcohol Test Performed?',
1745
700
  options: [
@@ -1752,6 +707,18 @@ const typeOfAlcoholTest = (scope) => sbsSelect({
1752
707
  ]
1753
708
  });
1754
709
 
710
+ const typeOfAlcoholTestCenter = (scope) => col2RadioCenter({
711
+ name: scope ? scope + ':' + 'Type_Of_Alcohol_Test' : 'Type_Of_Alcohol_Test',
712
+ options: [
713
+ "No Test",
714
+ "Refused Test",
715
+ "Breath Test",
716
+ "Blood Test",
717
+ "Urine Test",
718
+ "Don't Know"
719
+ ]
720
+ });
721
+
1755
722
  const typeOfAssets = (scope) => col2Checkbox({
1756
723
  name: scope ? scope + ':' + 'Type_Of_Assets' : 'Type_Of_Assets',
1757
724
  label: 'Type of Assets:',
@@ -1766,43 +733,6 @@ const typeOfAssets = (scope) => col2Checkbox({
1766
733
  ]
1767
734
  });
1768
735
 
1769
- const typeOfProperty = () => sbsSelect({
1770
- label: 'Type of Property:',
1771
- name: 'Type_Of_Property',
1772
- options: [
1773
- "Residential",
1774
- "Commercial",
1775
- "Industrial",
1776
- "Agricultural",
1777
- "Recreational",
1778
- "Other"
1779
- ]
1780
- });
1781
-
1782
- const trafficViolations = () => sbsSelect({
1783
- label: 'Which Type of Violation?',
1784
- name: 'Traffic_Violations',
1785
- options: [
1786
- "Disregarding a Red Light",
1787
- "Disregarding a Stop Sign",
1788
- "DMV Letter About License",
1789
- "DUI/DWI",
1790
- "Failure to Appear in Court",
1791
- "License Suspended/Revoked",
1792
- "Minor in Possession of Alcohol",
1793
- "No Child Safety Seat",
1794
- "No Liability Insurance",
1795
- "No Seat Belt",
1796
- "Open Container of Alcohol",
1797
- "Parking Ticket",
1798
- "Racing",
1799
- "Speeding",
1800
- "Unpaid Traffic Tickets",
1801
- "Warrant Issue for Arrest",
1802
- "Other Violation"
1803
- ]
1804
- });
1805
-
1806
736
  const valueOfAssets = (scope) => sbsSelect({
1807
737
  name: scope ? scope + ':' + 'Value_Of_Assets' : 'Value_Of_Assets',
1808
738
  label: 'Value of Your Assets?',
@@ -1816,22 +746,9 @@ const valueOfAssets = (scope) => sbsSelect({
1816
746
  ]
1817
747
  });
1818
748
 
1819
- const wouldLikeLawyerTo = () => sbsRadio({
1820
- label: 'I Would Like a Lawyer to:',
1821
- name: 'Would_Like_Lawyer_To',
1822
- options: [
1823
- "Give me general advice to protect my interests",
1824
- "Act as my agent in the transaction",
1825
- "Assist me in the remaining stages of the transaction",
1826
- "Bring a lawsuit against another party",
1827
- "Defend against a lawsuit filed by another party",
1828
- "Other"
1829
- ]
1830
- });
1831
-
1832
- const zipcode = () => sbsText({
1833
- label: 'Zip Code:',
749
+ const zipcodeCenter = () => text({
1834
750
  placeholder: '#####',
751
+ help: "We try to match you with local legal help",
1835
752
  name: 'Zip',
1836
753
  maxlength: 5,
1837
754
  inputmode: "numeric",
@@ -1840,7 +757,11 @@ const zipcode = () => sbsText({
1840
757
  validationMessages: {
1841
758
  required: 'Zip Code is required',
1842
759
  matches: 'Invalid Zip Code'
1843
- }
760
+ },
761
+ wrapperClass: 't-flex t-justify-center',
762
+ messagesClass: 't-flex t-justify-center',
763
+ inputClass: 't-text-center',
764
+ helpClass: 't-mt-2.5 !t-text-sm t-text-center'
1844
765
  });
1845
766
 
1846
767
 
@@ -1859,230 +780,38 @@ const group = (name, updates) => {
1859
780
  }, updates)
1860
781
  };
1861
782
 
1862
- const defaultQuestions = () => [
1863
- haveAttorney(),
1864
- degreeOfInterestHelp()
1865
- ];
1866
-
1867
- const AdoptionQuestions = () => group(
1868
- 'AdoptionQuestions',
1869
- {
1870
- if: '$get(Type_Of_Legal_Problem).value == "Adoption"',
1871
- children: [
1872
- haveAttorney(),
1873
- maritalStatus(),
1874
- haveChildren(),
1875
- degreeOfInterest(),
1876
- lawyerPaymentMethod()
1877
- ]
1878
- }
1879
- );
1880
-
1881
- const AsbestosAndMesotheliomaQuestions = () => group(
1882
- 'AsbestosAndMesotheliomaQuestions',
1883
- {
1884
- if: '$get(Type_Of_Legal_Problem).value == "Asbestos and Mesothelioma"',
1885
- children: [
1886
- haveAttorney(),
1887
- incidentDate(),
1888
- doctorTreatment(),
1889
- degreeOfInterestHelp()
1890
- ]
1891
- }
1892
- );
1893
-
1894
783
  const AutoAndCarAccidentsQuestions = (condition, scope) => group(
1895
784
  'AutoAndCarAccidentsQuestions',
1896
785
  {
1897
786
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Auto and Car Accidents"'),
1898
787
  children: [
1899
- haveAttorney(scope),
1900
- incidentDate(scope),
788
+ haveAttorney$1(scope),
789
+ incidentDate$1(scope),
1901
790
  atFault(scope),
1902
791
  primaryInjury(scope),
1903
792
  doctorTreatment(scope),
1904
- policeReportFiled(scope)
1905
- ]
1906
- }
1907
- );
1908
-
1909
- const BankruptcyQuestions = (condition, scope) => group(
1910
- 'BankruptcyQuestions',
1911
- {
1912
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Bankruptcy"'),
1913
- children: [
1914
- haveAttorney(scope),
1915
- totalMonthlyIncome(),
1916
- totalDebt(),
1917
- ownRealEstate(),
1918
- valueOfAssets(scope),
1919
- degreeOfInterestHelp(scope)
1920
- ]
1921
- }
1922
- );
1923
-
1924
- const BirthCertificateAndNameChangeQuestions = () => group(
1925
- 'BirthCertificateAndNameChangeQuestions',
1926
- {
1927
- if: '$get(Type_Of_Legal_Problem).value == "Birth Certificate and Name Change"',
1928
- children: [
1929
- haveAttorney(),
1930
- degreeOfInterestHelp()
1931
- ]
1932
- }
1933
- );
1934
-
1935
- const BusinessLawyersQuestions = () => group(
1936
- 'BusinessLawyersQuestions',
1937
- {
1938
- if: '$get(Type_Of_Legal_Problem).value == "Business Lawyers"',
1939
- children: [
1940
- haveAttorney(),
1941
- businessServices(),
1942
- businessType(),
1943
- numEmployeesOfBusiness(),
1944
- degreeOfInterestHelp()
1945
- ]
1946
- }
1947
- );
1948
-
1949
- const ChildCustodyAndSupportQuestions = (condition, scope) => group(
1950
- 'ChildCustodyAndSupportQuestions',
1951
- {
1952
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Child Custody and Support"'),
1953
- children: [
1954
- haveAttorney(scope),
1955
- childRelationship(scope),
1956
- childHome(scope),
1957
- childPrimaryCaregiver(scope),
1958
- degreeOfInterest(scope),
1959
- lawyerPaymentMethod(scope)
1960
- ]
1961
- }
1962
- );
1963
-
1964
- const ChildCustodyQuestions = (condition, scope) => group(
1965
- 'ChildCustodyQuestions',
1966
- {
1967
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Child Custody"'),
1968
- children: [
1969
- haveAttorney(scope),
1970
- childRelationship(scope),
1971
- childHome(scope),
1972
- childPrimaryCaregiver(scope),
1973
- degreeOfInterest(scope),
1974
- lawyerPaymentMethod(scope)
1975
- ]
1976
- }
1977
- );
1978
-
1979
- const ChildSupportQuestions = () => group(
1980
- 'ChildSupportQuestions',
1981
- {
1982
- if: '$get(Type_Of_Legal_Problem).value == "Child Support"',
1983
- children: [
1984
- haveAttorney(),
1985
- childRelationship(),
1986
- childHome(),
1987
- childPrimaryCaregiver(),
1988
- degreeOfInterest(),
1989
- lawyerPaymentMethod()
1990
- ]
1991
- }
1992
- );
1993
-
1994
- const CivilRightsAndDiscriminationQuestions = () => group(
1995
- 'CivilRightsAndDiscriminationQuestions',
1996
- {
1997
- if: '$get(Type_Of_Legal_Problem).value == "Civil Rights and Discrimination"',
1998
- children: [
1999
- civilRightsType(),
2000
- haveAttorney(),
2001
- degreeOfInterestHelp()
2002
- ]
2003
- }
2004
- );
2005
-
2006
- const CivilLawsuitQuestions = () => group(
2007
- 'CivilLawsuitQuestions',
2008
- {
2009
- if: '$get(Type_Of_Legal_Problem).value == "Civil Lawsuit"',
2010
- children: [
2011
- haveAttorney(),
2012
- lawsuitOtherParty(),
2013
- degreeOfInterestHelp()
2014
- ]
2015
- }
2016
- );
2017
-
2018
- const FileLawsuitQuestions = () => group(
2019
- 'FileLawsuitQuestions',
2020
- {
2021
- if: '$get(Type_Of_Legal_Problem).value == "File a Lawsuit"',
2022
- children: [
2023
- haveAttorney(),
2024
- lawsuitOtherParty(),
2025
- degreeOfInterestHelp()
2026
- ]
2027
- }
2028
- );
2029
-
2030
- const DefendLawsuitQuestions = () => group(
2031
- 'DefendLawsuitQuestions',
2032
- {
2033
- if: '$get(Type_Of_Legal_Problem).value == "Defend a Lawsuit"',
2034
- children: [
2035
- haveAttorney(),
2036
- lawsuitOtherParty(),
2037
- degreeOfInterestHelp()
2038
- ]
2039
- }
2040
- );
2041
-
2042
- const ConsumerLawyersQuestions = () => group(
2043
- 'ConsumerLawyersQuestions',
2044
- {
2045
- if: '$get(Type_Of_Legal_Problem).value == "Consumer Lawyers"',
2046
- children: [
2047
- consumerLawyerType(),
2048
- incidentDate(),
2049
- haveAttorney(),
2050
- lawsuitOtherParty(),
2051
- degreeOfInterestHelp()
2052
- ]
2053
- }
2054
- );
2055
-
2056
- const CopyrightsAndTrademarksQuestions = () => group(
2057
- 'CopyrightsAndTrademarksQuestions',
2058
- {
2059
- if: '$get(Type_Of_Legal_Problem).value == "Copyrights and Trademarks"',
2060
- children: [
2061
- haveAttorney(),
2062
- degreeOfInterestHelp()
793
+ policeReportFiled(scope)
2063
794
  ]
2064
795
  }
2065
796
  );
2066
797
 
2067
- const CriminalAndFelonyQuestions = () => group(
2068
- 'CriminalAndFelonyQuestions',
798
+ const ChildCustodyQuestions = (condition, scope) => group(
799
+ 'ChildCustodyQuestions',
2069
800
  {
2070
- if: '$get(Type_Of_Legal_Problem).value == "Criminal and Felony"',
801
+ if: (condition || '$get(Type_Of_Legal_Problem).value == "Child Custody"'),
2071
802
  children: [
2072
- haveAttorney(),
2073
- crimeCommittedDate(),
2074
- roleInMatterCriminal(),
2075
- pendingCharges(),
2076
- degreeOfInterest(),
2077
- lawyerPaymentMethod()
803
+ haveAttorney$1(scope),
804
+ childRelationship(scope),
805
+ childHome(scope),
806
+ childPrimaryCaregiver(scope),
807
+ degreeOfInterest$1(scope),
808
+ lawyerPaymentMethod$1(scope)
2078
809
  ]
2079
810
  }
2080
811
  );
2081
812
 
2082
- const criminalTOLPDisplay = (updates) => col2Radio(merge({
813
+ const criminalTOLPDisplayCenter = (updates) => col2RadioCenter(merge({
2083
814
  name: 'Type_Of_Legal_Problem_Display',
2084
- if: '$get(Type_Of_Legal_Problem).value == "Criminal and Felony"',
2085
- label: 'Which Type of Criminal Issue?',
2086
815
  options: [
2087
816
  'Criminal Defense',
2088
817
  'Victim of a Crime',
@@ -2093,31 +822,16 @@ const criminalTOLPDisplay = (updates) => col2Radio(merge({
2093
822
  ]
2094
823
  }, updates));
2095
824
 
2096
- const DebtAndCollectionsQuestions = () => group(
2097
- 'DebtAndCollectionsQuestions',
2098
- {
2099
- if: '$get(Type_Of_Legal_Problem).value == "Debt and Collections"',
2100
- children: [
2101
- haveAttorney(),
2102
- totalMonthlyIncome(),
2103
- totalDebt(),
2104
- ownRealEstate(),
2105
- valueOfAssets(),
2106
- degreeOfInterestHelp()
2107
- ]
2108
- }
2109
- );
2110
-
2111
825
  const DivorceQuestions = (condition, scope) => group(
2112
826
  'DivorceQuestions',
2113
827
  {
2114
828
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Divorce and Separation"'),
2115
829
  children: [
2116
- haveAttorney(scope),
830
+ haveAttorney$1(scope),
2117
831
  maritalStatus(scope),
2118
832
  haveChildren(scope),
2119
- degreeOfInterest(scope),
2120
- lawyerPaymentMethod(scope)
833
+ degreeOfInterest$1(scope),
834
+ lawyerPaymentMethod$1(scope)
2121
835
  ]
2122
836
  }
2123
837
  );
@@ -2127,1079 +841,1783 @@ const DUIAndDWIQuestions = (condition, scope) => group(
2127
841
  {
2128
842
  if: (condition || '$get(Type_Of_Legal_Problem).value == "DUI and DWI"'),
2129
843
  children: [
2130
- haveAttorney(scope),
2131
- incidentDate(scope),
2132
- priorAlcoholOffenses(scope),
2133
- typeOfAlcoholTest(scope),
2134
- bloodContentAlcoholTest(scope),
2135
- pendingCharges(scope),
844
+ haveAttorney$1(scope),
845
+ incidentDate$1(scope),
846
+ priorAlcoholOffenses$1(scope),
847
+ typeOfAlcoholTest$1(scope),
848
+ bloodContentAlcoholTest$1(scope),
849
+ pendingCharges$1(scope),
2136
850
  degreeOfInterestHelp(scope)
2137
851
  ]
2138
852
  }
2139
853
  );
2140
854
 
2141
- const ElderLawQuestions = () => group(
2142
- 'ElderLawQuestions',
855
+ const PersonalInjuryQuestions = (condition, scope) => group(
856
+ 'PersonalInjuryQuestions',
2143
857
  {
2144
- if: '$get(Type_Of_Legal_Problem).value == "Elder Law"',
858
+ if: (condition || '$get(Type_Of_Legal_Problem).value == "Personal Injury"'),
2145
859
  children: [
2146
- haveAttorney(),
2147
- degreeOfInterestHelp()
860
+ haveAttorney$1(scope),
861
+ incidentDate$1(scope),
862
+ claimStatus(scope),
863
+ atFault(scope),
864
+ primaryInjury(scope),
865
+ doctorTreatment(scope)
2148
866
  ]
2149
867
  }
2150
868
  );
2151
869
 
2152
- const EmploymentAndWorkplaceQuestions = () => group(
2153
- 'EmploymentAndWorkplaceQuestions',
870
+ const PowerofAttorneyQuestions = (condition, scope) => group(
871
+ 'PowerofAttorneyQuestions',
2154
872
  {
2155
- if: '$get(Type_Of_Legal_Problem).value == "Employment and Workplace"',
873
+ if: (condition || '$get(Type_Of_Legal_Problem).value == "Power of Attorney"'),
2156
874
  children: [
2157
- haveAttorney(),
2158
- numEmployeesOfBusiness(),
2159
- employerType(),
2160
- degreeOfInterestHelp()
875
+ haveAttorney$1(scope),
876
+ degreeOfInterestHelp(scope)
2161
877
  ]
2162
878
  }
2163
879
  );
2164
880
 
2165
- const ExpungementQuestions = () => group(
2166
- 'ExpungementQuestions',
881
+ const SocialSecurityDisabilityAndInsuranceQuestions = (condition, scope) => group(
882
+ 'SocialSecurityDisabilityAndInsuranceQuestions',
2167
883
  {
2168
- if: '$get(Type_Of_Legal_Problem).value == "Expungement"',
884
+ if: (condition || '$get(Type_Of_Legal_Problem).value == "Social Security Disability and Insurance"'),
2169
885
  children: [
2170
- haveAttorney(),
2171
- incidentDate(),
2172
- criminalChargeType(),
2173
- degreeOfInterest(),
2174
- lawyerPaymentMethod()
886
+ haveAttorney$1(scope),
887
+ applicantAge(scope),
888
+ disabilityConditionStopWork(scope),
889
+ disabilityWorkHistory(scope),
890
+ socialSecurityDisabilityReceivingBenefits(scope),
891
+ doctorTreatment(scope)
2175
892
  ]
2176
893
  }
2177
894
  );
2178
895
 
2179
- const FamilyIssuesQuestions = () => group(
2180
- 'FamilyIssuesQuestions',
896
+ const WillsAndTrustsQuestions = (condition, scope) => group(
897
+ 'WillsAndTrustsQuestions',
2181
898
  {
2182
- if: '$get(Type_Of_Legal_Problem).value == "Family Issues"',
899
+ if: (condition || '$get(Type_Of_Legal_Problem).value == "Wills and Trusts"'),
2183
900
  children: [
2184
- haveAttorney(),
2185
- maritalStatus(),
2186
- haveChildren(),
2187
- degreeOfInterest(),
2188
- lawyerPaymentMethod()
901
+ haveAttorney$1(scope),
902
+ valueOfAssets(scope),
903
+ typeOfAssets(scope),
904
+ roleInMatterProbate(scope),
905
+ estateLegalServicesNeeded(scope),
906
+ degreeOfInterestHelp(scope)
2189
907
  ]
2190
908
  }
2191
909
  );
2192
910
 
2193
- const ForeclosureQuestions = () => group(
2194
- 'ForeclosureQuestions',
911
+ const WorkersCompensationQuestions = (condition, scope) => group(
912
+ 'WorkersCompensationQuestions',
2195
913
  {
2196
- if: '$get(Type_Of_Legal_Problem).value == "Foreclosure"',
914
+ if: (condition || '$get(Type_Of_Legal_Problem).value == "Workers Compensation"'),
2197
915
  children: [
2198
- haveAttorney(),
2199
- ownRealEstate(),
2200
- typeOfProperty(),
2201
- amountPaymentsPastDue(),
2202
- loanAmount(),
2203
- defaultNotice(),
2204
- degreeOfInterestHelp()
916
+ haveAttorney$1(scope),
917
+ incidentDate$1(scope),
918
+ claimStatus(scope),
919
+ primaryInjury(scope),
920
+ causeOfInjury(scope),
921
+ doctorTreatment(scope)
2205
922
  ]
2206
923
  }
2207
924
  );
2208
925
 
2209
- const GuardianshipQuestions = () => group(
2210
- 'GuardianshipQuestions',
2211
- {
2212
- if: '$get(Type_Of_Legal_Problem).value == "Guardianship"',
2213
- children: [
2214
- haveAttorney(),
2215
- maritalStatus(),
2216
- haveChildren(),
2217
- degreeOfInterest(),
2218
- lawyerPaymentMethod()
2219
- ]
926
+ const NEXT_ON_ENTER = '$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
927
+ const NEXT_ON_INPUT = '$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
928
+
929
+ const isInput = (n) => { return (n.type !== 'group' && n.type !== 'section' && n.type !== 'form' && n.$formkit !== 'hidden' && !n.children) };
930
+
931
+ const findLastInput = (n) => {
932
+ if (isInput(n)) {
933
+ return n
2220
934
  }
2221
- );
935
+ for (var i = n.children.length - 1; i >= 0; i--) {
936
+ if (typeof n.children === 'string') {
937
+ continue
938
+ }
939
+ const child = n.children[i];
940
+ if (isInput(child)) {
941
+ return child
942
+ }
943
+ const res = findLastInput(child);
944
+ if (res) {
945
+ return res
946
+ }
947
+ }
948
+ return null
949
+ };
2222
950
 
2223
- const HarassmentAndDiscriminationQuestions = () => group(
2224
- 'HarassmentAndDiscriminationQuestions',
2225
- {
2226
- if: '$get(Type_Of_Legal_Problem).value == "Harassment and Discrimination"',
2227
- children: defaultQuestions()
951
+ const secureIconDefault = {
952
+ $el: 'div',
953
+ if: '$activeStep === $lastStep()',
954
+ attrs: {
955
+ class: 't-flex t-justify-center t-items-center t-text-sm t-text-gray-500'
956
+ },
957
+ children: [
958
+ {
959
+ $el: 'img',
960
+ attrs: {
961
+ loading: 'lazy',
962
+ alt: '',
963
+ style: {
964
+ border: 0
965
+ },
966
+ width: '25',
967
+ height: '25',
968
+ src: 'https://d27hmee62k45vz.cloudfront.net/lock_icon_1.jpeg',
969
+ }
970
+ },
971
+ {
972
+ $el: 'span',
973
+ children: 'Secure & Encrypted',
974
+ attrs: {
975
+ class: 't-pl-2 t-pt-1 t-font-medium'
976
+ }
977
+ }
978
+ ]
979
+ };
980
+
981
+ function secureIcon(updates) {
982
+ return merge(
983
+ secureIconDefault,
984
+ updates
985
+ )
986
+ }
987
+
988
+ function crossSellQuestionsStepHeadline(updates) {
989
+ return {
990
+ $el: 'h3',
991
+ children: updates.headline || 'Tell Us About Your Situation',
992
+ attrs: {
993
+ class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1'
994
+ }
2228
995
  }
2229
- );
996
+ }
2230
997
 
2231
- const SexualHarassmentQuestions = () => group(
2232
- 'SexualHarassmentQuestions',
2233
- {
2234
- if: '$get(Type_Of_Legal_Problem).value == "Sexual Harassment"',
2235
- children: defaultQuestions()
998
+ function crossSellQuestionsStepSubHeadline(updates) {
999
+ return {
1000
+ $el: 'h5',
1001
+ children: updates.subheadline || 'Tell us about your situation:',
1002
+ attrs: {
1003
+ class: 't-flex t-justify-center t-text-dark t-text-center !t-text-lg t-font-semibold t-pb-4 t-pt-0 t-px-3'
1004
+ }
2236
1005
  }
2237
- );
1006
+ }
1007
+
1008
+ function verticalStepHeadline(updates) {
1009
+ return {
1010
+ $el: 'h3',
1011
+ children: updates.headline || 'Tell Us About Your Situation',
1012
+ attrs: {
1013
+ class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-dark t-pb-5 t-pt-0 t-px-1' + ' ' + (updates.headlineClass || '')
1014
+ }
1015
+ }
1016
+ }
1017
+
1018
+ function verticalStepSubHeadline(updates) {
1019
+ return {
1020
+ $el: 'h5',
1021
+ children: updates.subheadline || '',
1022
+ attrs: {
1023
+ class: 't-flex t-justify-center t-text-center !t-text-lg t-font-normal t-text-dark t-pb-5 t-pt-0 t-px-1' + ' ' + (updates.subheadlineClass || '')
1024
+ }
1025
+ }
1026
+ }
1027
+
1028
+ function commentsStepHeadline(updates) {
1029
+ return {
1030
+ $el: 'h3',
1031
+ children: updates.headline || 'Additional Case Details',
1032
+ attrs: {
1033
+ class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1' + ' ' + (updates.headlineClass || '')
1034
+ }
1035
+ }
1036
+ }
1037
+
1038
+ function firstAndLastStepHeadline(updates) {
1039
+ return {
1040
+ $el: 'h3',
1041
+ children: updates.headline || 'Please Provide a Contact Name',
1042
+ attrs: {
1043
+ class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1' + ' ' + (updates.headlineClass || '')
1044
+ }
1045
+ }
1046
+ }
1047
+
1048
+ function legalCrossSellsStepHeadline(updates) {
1049
+ return {
1050
+ $el: 'h3',
1051
+ children: updates.headline || 'Do any of the following situations apply?',
1052
+ attrs: {
1053
+ class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1' + ' ' + (updates.headlineClass || '')
1054
+ }
1055
+ }
1056
+ }
1057
+
1058
+ function contactStepHeadline(updates) {
1059
+ return {
1060
+ $el: 'h3',
1061
+ children: updates.headline || DEFAULT_FINAL_HEADLINE_DYNAMIC,
1062
+ attrs: {
1063
+ 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 || '')
1064
+ }
1065
+ }
1066
+ }
1067
+
1068
+ function contactStepSubHeadline(updates) {
1069
+ return {
1070
+ $el: 'h5',
1071
+ children: updates.subheadline || DEFAULT_FINAL_SUBHEADLINE_DYNAMIC,
1072
+ attrs: {
1073
+ 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 || '')
1074
+ }
1075
+ }
1076
+ }
1077
+
1078
+ const TRUSTED_FORM_JS = `(function() {
1079
+ if (window.xxTrustedFormLoaded) {
1080
+ return
1081
+ }
1082
+ var vid = '';
1083
+ if (typeof window.zar !== 'undefined') {
1084
+ vid = window.zar.getVID();
1085
+ }
1086
+ window.xxTrustedFormLoaded = true;
1087
+ var sandbox = document.location.hostname.indexOf('localhost') > -1 ? 'true' : 'false'
1088
+ var tf = document.createElement('script');
1089
+ tf.type = 'text/javascript'; tf.async = true;
1090
+ 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();
1091
+ var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(tf, s);
1092
+ })();`;
1093
+
1094
+ function trustedFormScript() {
1095
+ return {
1096
+ $el: 'script',
1097
+ if: '$activeStep === $lastStep()',
1098
+ children: TRUSTED_FORM_JS
1099
+ }
1100
+ }
1101
+
1102
+ const stepDefaults = (step, stepKey) => ({
1103
+ $el: 'section',
1104
+ if: '$stepEnabled("' + step + '")',
1105
+ attrs: {
1106
+ hidden: '$activeStep !== "' + step + '"',
1107
+ key: stepKey ? stepKey : step
1108
+ }
1109
+ });
1110
+
1111
+ function step(name, inputs, nextOnEnter = true, nextOnInput = false, stepKey = undefined, nextStepMap = undefined, autoFocus = undefined) {
1112
+ if (typeof nextOnEnter === 'undefined') {
1113
+ nextOnEnter = true;
1114
+ }
1115
+ if (inputs && inputs.length && (nextOnEnter || nextOnInput)) {
1116
+ const lastInput = findLastInput(inputs[inputs.length - 1]);
1117
+ if (lastInput && nextOnEnter === true) {
1118
+ lastInput.onKeypress = NEXT_ON_ENTER;
1119
+ }
1120
+ if (lastInput && nextOnInput === true) {
1121
+ lastInput.onInput = NEXT_ON_INPUT;
1122
+ }
1123
+ }
1124
+
1125
+ return merge(
1126
+ stepDefaults(name, stepKey),
1127
+ {
1128
+ children: [
1129
+ {
1130
+ $formkit: 'group',
1131
+ id: name,
1132
+ name: name,
1133
+ nextStepMap: nextStepMap,
1134
+ autoFocus: autoFocus,
1135
+ children: inputs
1136
+ }
1137
+ ]
1138
+ }
1139
+ )
1140
+ }
2238
1141
 
2239
- const WorkplaceHarassmentQuestions = () => group(
2240
- 'WorkplaceHarassmentQuestions',
2241
- {
2242
- if: '$get(Type_Of_Legal_Problem).value == "Workplace Harassment"',
2243
- children: defaultQuestions()
2244
- }
2245
- );
1142
+ // Single question step
1143
+ function sqstep(name, input, defaultHeadline, updates = {}) {
1144
+ return step(
1145
+ name,
1146
+ [
1147
+ verticalStepHeadline({ headline: updates.headline ?? defaultHeadline, headlineClass: updates.headlineClass }),
1148
+ ...Array.isArray(input) ? input : [input],
1149
+ ],
1150
+ updates.nextOnEnter,
1151
+ typeof updates.nextOnInput === 'undefined' ? true : updates.nextOnInput,
1152
+ updates.stepKey,
1153
+ updates.nextStepMap
1154
+ )
1155
+ }
2246
1156
 
2247
- const NonWorkplaceHarassmentQuestions = () => group(
2248
- 'NonWorkplaceHarassmentQuestions',
2249
- {
2250
- if: '$get(Type_Of_Legal_Problem).value == "Non-Workplace Harassment"',
2251
- children: defaultQuestions()
2252
- }
2253
- );
1157
+ function commentsWithBankruptcy(updates = {}) {
1158
+ return step(
1159
+ 'commentsWithBankruptcy',
1160
+ [
1161
+ commentsStepHeadline(updates),
1162
+ comments({
1163
+ label: typeof updates.label === 'undefined' ? DEFAULT_COMMENTS_LABEL : updates.label,
1164
+ placeholder: updates.placeholder || DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
1165
+ inputClass: typeof updates.inputClass === 'undefined' ? '!t-h-32' : updates.inputClass,
1166
+ }),
1167
+ bankruptcyCrossSell(),
1168
+ {
1169
+ $el: 'div',
1170
+ if: '$get(CrossSell_Bankruptcy).value == true',
1171
+ children: [
1172
+ comments({
1173
+ label: 'Bankruptcy or debt details:',
1174
+ placeholder: 'Please describe your bankrtupcy or debt situation in a few words...',
1175
+ inputClass: '!t-h-16'
1176
+ }, 'CrossSell:Bankruptcy')
1177
+ ],
1178
+ }
1179
+ ],
1180
+ false // nextOnEnter
1181
+ )
1182
+ }
2254
1183
 
2255
- const WorkplaceDiscriminationQuestions = () => group(
2256
- 'WorkplaceDiscriminationQuestions',
2257
- {
2258
- if: '$get(Type_Of_Legal_Problem).value == "Workplace Discrimination"',
2259
- children: defaultQuestions()
2260
- }
2261
- );
1184
+ function contactInfo(updates = {}) {
1185
+ return step(
1186
+ 'contactInfo',
1187
+ [
1188
+ contactStepHeadline(updates),
1189
+ contactStepSubHeadline(updates),
1190
+ trustedFormScript(),
1191
+ email(),
1192
+ phone(),
1193
+ TCPAConsent(),
1194
+ secureIcon()
1195
+ ],
1196
+ false, // nextOnEnter
1197
+ )
1198
+ }
2262
1199
 
2263
- const NonWorkplaceDiscriminationQuestions = () => group(
2264
- 'NonWorkplaceDiscriminationQuestions',
2265
- {
2266
- if: '$get(Type_Of_Legal_Problem).value == "Non-Workplace Discrimination"',
2267
- children: defaultQuestions()
2268
- }
2269
- );
1200
+ function criminalTOLP(updates = {}) {
1201
+ return step(
1202
+ 'criminalTOLP',
1203
+ [
1204
+ {
1205
+ $formkit: 'hidden',
1206
+ name: "Type_Of_Legal_Problem",
1207
+ id: "Type_Of_Legal_Problem",
1208
+ value: "Criminal and Felony"
1209
+ },
1210
+ criminalTOLPDisplayCenter(),
1211
+ ],
1212
+ updates.nextOnEnter,
1213
+ updates.nextOnInput,
1214
+ updates.stepKey,
1215
+ updates.nextStepMap
1216
+ )
1217
+ }
2270
1218
 
2271
- const IdentityTheftQuestions = () => group(
2272
- 'IdentityTheftQuestions',
2273
- {
2274
- if: '$get(Type_Of_Legal_Problem).value == "Identity Theft"',
2275
- children: [
2276
- haveAttorney(),
2277
- degreeOfInterestHelp()
2278
- ]
2279
- }
2280
- );
1219
+ function firstAndLastV3(updates = {}) {
1220
+ return step(
1221
+ 'firstAndLast',
1222
+ [
1223
+ firstAndLastStepHeadline({
1224
+ headline: updates.headline ?? 'Who is looking for help?',
1225
+ headlineClass: updates.headlineClass
1226
+ }),
1227
+ verticalStepSubHeadline({
1228
+ subheadline: updates.subheadline ?? 'Note: we never share info without consent',
1229
+ subheadlineClass: '!t-text-sm !t-text-gray-500'
1230
+ }),
1231
+ firstName(),
1232
+ lastName()
1233
+ ],
1234
+ updates.nextOnEnter
1235
+ )
1236
+ }
2281
1237
 
2282
- const ImmigrationAndVisasQuestions = (condition, scope) => group(
2283
- 'ImmigrationAndVisasQuestions',
2284
- {
2285
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Immigration and Visas"'),
2286
- children: [
2287
- haveAttorney(scope),
2288
- countryOfCitizenship(scope),
2289
- immigrationLocation(scope),
2290
- immigrationEntry(scope),
2291
- immigrationType(scope),
2292
- immigrationStatus(scope),
2293
- immigrationDetails(scope),
2294
- degreeOfInterestHelp(scope)
2295
- ]
2296
- }
2297
- );
2298
1238
 
2299
- const InsuranceQuestions = () => group(
2300
- 'InsuranceQuestions',
2301
- {
2302
- if: '$get(Type_Of_Legal_Problem).value == "Insurance"',
2303
- children: [
2304
- haveAttorney(),
2305
- degreeOfInterestHelp()
2306
- ]
2307
- }
2308
- );
1239
+ function autoAndCarAccidentCrossSellQuestions(updates = {}) {
1240
+ return step(
1241
+ 'autoAndCarAccidentCrossSellQuestions',
1242
+ [
1243
+ crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Compensation' }),
1244
+ crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your accident:' }),
1245
+ AutoAndCarAccidentsQuestions("true", 'CrossSell:Auto_and_Car_Accidents'),
1246
+ comments(
1247
+ {
1248
+ label: 'Accident Description:',
1249
+ placeholder: 'Please describe your accident in a few words...',
1250
+ inputClass: '!t-h-16'
1251
+ },
1252
+ 'CrossSell:Auto_and_Car_Accidents'
1253
+ )
1254
+ ],
1255
+ updates.nextOnEnter
1256
+ )
1257
+ }
2309
1258
 
2310
- const LandlordAndTenantQuestions = () => group(
2311
- 'LandlordAndTenantQuestions',
2312
- {
2313
- if: '$get(Type_Of_Legal_Problem).value == "Landlord and Tenant"',
2314
- children: [
2315
- haveAttorney(),
2316
- landlordTenantParty(),
2317
- degreeOfInterestHelp()
2318
- ]
2319
- }
2320
- );
1259
+ function childCustodyCrossSellQuestions(updates = {}) {
1260
+ return step(
1261
+ 'childCustodyCrossSellQuestions',
1262
+ [
1263
+ crossSellQuestionsStepHeadline({ headline: 'Child Custody Information' }),
1264
+ ChildCustodyQuestions("true", 'CrossSell:Child_Custody'),
1265
+ comments(
1266
+ {
1267
+ label: 'Description:',
1268
+ placeholder: 'Please describe your situation in a few words...',
1269
+ inputClass: '!t-h-16'
1270
+ },
1271
+ 'CrossSell:Child_Custody'
1272
+ )
1273
+ ],
1274
+ updates.nextOnEnter
1275
+ )
1276
+ }
2321
1277
 
2322
- const LemonLawQuestions = () => group(
2323
- 'LemonLawQuestions',
2324
- {
2325
- if: '$get(Type_Of_Legal_Problem).value == "Lemon Law"',
2326
- children: [
2327
- haveAttorney(),
2328
- incidentDate(),
2329
- lawsuitOtherParty(),
2330
- degreeOfInterestHelp()
2331
- ]
2332
- }
2333
- );
1278
+ function divorceAndSeparationCrossSellQuestions(updates = {}) {
1279
+ return step(
1280
+ 'divorceAndSeparationCrossSellQuestions',
1281
+ [
1282
+ crossSellQuestionsStepHeadline({ headline: 'Divorce or Separation Information' }),
1283
+ DivorceQuestions("true", 'CrossSell:Divorce_and_Separation'),
1284
+ comments(
1285
+ {
1286
+ label: 'Description:',
1287
+ placeholder: 'Please describe your situation in a few words...',
1288
+ inputClass: '!t-h-16'
1289
+ },
1290
+ 'CrossSell:Divorce_and_Separation'
1291
+ )
1292
+ ],
1293
+ updates.nextOnEnter
1294
+ )
1295
+ }
2334
1296
 
2335
- const LongTermDisabilityQuestions = (condition, scope) => group(
2336
- 'LongTermDisabilityQuestions',
2337
- {
2338
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Long Term Disability"'),
2339
- children: [
2340
- haveAttorney(scope),
2341
- applicantOccupation(scope),
2342
- applicantAge(scope),
2343
- applicantLTDisabilityPolicy(scope),
2344
- applicantDisabilityHowObtain(scope),
2345
- applicantPreviouslyAppliedLtdBenefits(scope),
2346
- applicantReceivedDisabilityBenefits(scope),
2347
- applicantMonthlySalary(scope)
2348
- ]
2349
- }
2350
- );
1297
+ function duiAndDWICrossSellQuestions(updates = {}) {
1298
+ return step(
1299
+ 'duiAndDWICrossSellQuestions',
1300
+ [
1301
+ crossSellQuestionsStepHeadline({ headline: 'About Your DUI/DWI' }),
1302
+ DUIAndDWIQuestions("true", 'CrossSell:DUI_and_DWI'),
1303
+ comments(
1304
+ {
1305
+ label: 'Incident Description:',
1306
+ placeholder: 'Please describe your incident in a few words...',
1307
+ inputClass: '!t-h-16'
1308
+ },
1309
+ 'CrossSell:DUI_and_DWI'
1310
+ )
1311
+ ],
1312
+ updates.nextOnEnter
1313
+ )
1314
+ }
2351
1315
 
2352
- const MedicalMalpracticeQuestions = () => group(
2353
- 'MedicalMalpracticeQuestions',
2354
- {
2355
- if: '$get(Type_Of_Legal_Problem).value == "Medical Malpractice"',
2356
- children: [
2357
- haveAttorney(),
2358
- incidentDate(),
2359
- claimStatus(),
2360
- doctorTreatment(),
2361
- medicalMalpracticeInjuries(),
2362
- degreeOfInterestHelp()
2363
- ]
2364
- }
2365
- );
1316
+ function ssdiCrossSellQuestions(updates = {}) {
1317
+ return step(
1318
+ 'ssdiCrossSellQuestions',
1319
+ [
1320
+ crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Benefits' }),
1321
+ crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your disability:' }),
1322
+ SocialSecurityDisabilityAndInsuranceQuestions("true", 'CrossSell:Social_Security_Disability_and_Insurance'),
1323
+ comments(
1324
+ {
1325
+ label: 'Description:',
1326
+ placeholder: 'Please describe your situation in a few words...',
1327
+ inputClass: '!t-h-16'
1328
+ },
1329
+ 'CrossSell:Social_Security_Disability_and_Insurance'
1330
+ )
1331
+ ],
1332
+ updates.nextOnEnter
1333
+ )
1334
+ }
2366
1335
 
2367
- const PatentsAndIntellectualPropertyQuestions = () => group(
2368
- 'PatentsAndIntellectualPropertyQuestions',
2369
- {
2370
- if: '$get(Type_Of_Legal_Problem).value == "Patents and Intellectual Property"',
2371
- children: [
2372
- haveAttorney(),
2373
- patentAssistanceType(),
2374
- patentFor(),
2375
- degreeOfInterestHelp()
2376
- ]
2377
- }
2378
- );
1336
+ function personalInjuryCrossSellQuestions(updates = {}) {
1337
+ return step(
1338
+ 'personalInjuryCrossSellQuestions',
1339
+ [
1340
+ crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Compensation' }),
1341
+ crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your injury:' }),
1342
+ PersonalInjuryQuestions("true", 'CrossSell:Personal_Injury'),
1343
+ comments(
1344
+ {
1345
+ label: 'Injury Description:',
1346
+ placeholder: 'Please describe your injury in a few words...',
1347
+ inputClass: '!t-h-16'
1348
+ },
1349
+ 'CrossSell:Personal_Injury'
1350
+ )
1351
+ ],
1352
+ updates.nextOnEnter
1353
+ )
1354
+ }
2379
1355
 
2380
- const PersonalInjuryQuestions = (condition, scope) => group(
2381
- 'PersonalInjuryQuestions',
2382
- {
2383
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Personal Injury"'),
2384
- children: [
2385
- haveAttorney(scope),
2386
- incidentDate(scope),
2387
- claimStatus(scope),
2388
- atFault(scope),
2389
- primaryInjury(scope),
2390
- doctorTreatment(scope)
2391
- ]
2392
- }
2393
- );
1356
+ function powerOfAttorneyCrossSellQuestions(updates = {}) {
1357
+ return step(
1358
+ 'powerOfAttorneyCrossSellQuestions',
1359
+ [
1360
+ crossSellQuestionsStepHeadline({ headline: 'Power of Attorney Information' }),
1361
+ PowerofAttorneyQuestions("true", 'CrossSell:Power_of_Attorney'),
1362
+ comments(
1363
+ {
1364
+ label: 'Description:',
1365
+ placeholder: 'Please describe your situation in a few words...',
1366
+ inputClass: '!t-h-16'
1367
+ },
1368
+ 'CrossSell:Power_of_Attorney'
1369
+ )
1370
+ ],
1371
+ updates.nextOnEnter
1372
+ )
1373
+ }
2394
1374
 
2395
- const PowerofAttorneyQuestions = (condition, scope) => group(
2396
- 'PowerofAttorneyQuestions',
2397
- {
2398
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Power of Attorney"'),
2399
- children: [
2400
- haveAttorney(scope),
2401
- degreeOfInterestHelp(scope)
2402
- ]
2403
- }
2404
- );
1375
+ function willsAndTrustsCrossSellQuestions(updates = {}) {
1376
+ return step(
1377
+ 'willsAndTrustsCrossSellQuestions',
1378
+ [
1379
+ crossSellQuestionsStepHeadline({ headline: 'Will or Trust Information' }),
1380
+ WillsAndTrustsQuestions("true", 'CrossSell:Wills_and_Trusts'),
1381
+ comments(
1382
+ {
1383
+ label: 'Description:',
1384
+ placeholder: 'Please describe your situation in a few words...',
1385
+ inputClass: '!t-h-16'
1386
+ },
1387
+ 'CrossSell:Wills_and_Trusts'
1388
+ )
1389
+ ],
1390
+ updates.nextOnEnter
1391
+ )
1392
+ }
2405
1393
 
2406
- const ProbateAndEstatesQuestions = () => group(
2407
- 'ProbateAndEstatesQuestions',
2408
- {
2409
- if: '$get(Type_Of_Legal_Problem).value == "Probate and Estates"',
2410
- children: [
2411
- haveAttorney(),
2412
- valueOfAssets(),
2413
- typeOfAssets(),
2414
- roleInMatterProbate(),
2415
- estateLegalServicesNeeded(),
2416
- degreeOfInterestHelp()
2417
- ]
2418
- }
2419
- );
1394
+ function workersCompensationCrossSellQuestions(updates = {}) {
1395
+ return step(
1396
+ 'workersCompensationCrossSellQuestions',
1397
+ [
1398
+ crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Benefits' }),
1399
+ crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your injury:' }),
1400
+ WorkersCompensationQuestions("true", 'CrossSell:Workers_Compensation'),
1401
+ comments(
1402
+ {
1403
+ label: 'Injury Description:',
1404
+ placeholder: 'Please describe your injury in a few words...',
1405
+ inputClass: '!t-h-16'
1406
+ },
1407
+ 'CrossSell:Workers_Compensation'
1408
+ )
1409
+ ],
1410
+ updates.nextOnEnter
1411
+ )
1412
+ }
2420
1413
 
2421
- const ProductLiabilityQuestions = () => group(
2422
- 'ProductLiabilityQuestions',
2423
- {
2424
- if: '$get(Type_Of_Legal_Problem).value == "Product Liability"',
2425
- children: [
2426
- haveAttorney(),
2427
- degreeOfInterestHelp()
2428
- ]
2429
- }
2430
- );
1414
+ function legalCrossSells(updates = {}) {
1415
+ return step(
1416
+ 'legalCrossSells',
1417
+ [
1418
+ legalCrossSellsStepHeadline(updates),
1419
+ legalCrossSells$1(),
1420
+ ],
1421
+ updates.nextOnEnter,
1422
+ false,
1423
+ // Note: we should probably scope this stepKey to this step name
1424
+ '$get(Type_Of_Legal_Problem).value'
1425
+ )
1426
+ }
2431
1427
 
2432
- const PropertyDamageQuestions = () => group(
2433
- 'PropertyDamageQuestions',
2434
- {
2435
- if: '$get(Type_Of_Legal_Problem).value == "Property Damage"',
2436
- children: [
2437
- haveAttorney(),
2438
- realEstateArea(),
2439
- wouldLikeLawyerTo(),
2440
- degreeOfInterestHelp()
2441
- ]
2442
- }
2443
- );
1428
+ function zipcode(updates = {}) {
1429
+ return sqstep(
1430
+ 'zipcode',
1431
+ zipcodeCenter(),
1432
+ 'Please verify your Zip Code',
1433
+ updates
1434
+ )
1435
+ }
2444
1436
 
2445
- const RealEstateQuestions = () => group(
2446
- 'RealEstateQuestions',
2447
- {
2448
- if: '$get(Type_Of_Legal_Problem).value == "Real Estate"',
2449
- children: [
2450
- haveAttorney(),
2451
- realEstateArea(),
2452
- wouldLikeLawyerTo(),
2453
- degreeOfInterestHelp()
2454
- ]
2455
- }
2456
- );
1437
+ function haveAttorney(updates = {}) {
1438
+ return sqstep(
1439
+ 'haveAttorney',
1440
+ haveAttorneyCenter(),
1441
+ 'Already working with an attorney?',
1442
+ updates
1443
+ )
1444
+ }
2457
1445
 
2458
- const SocialSecurityDisabilityAndInsuranceQuestions = (condition, scope) => group(
2459
- 'SocialSecurityDisabilityAndInsuranceQuestions',
2460
- {
2461
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Social Security Disability and Insurance"'),
2462
- children: [
2463
- haveAttorney(scope),
2464
- applicantAge(scope),
2465
- disabilityConditionStopWork(scope),
2466
- disabilityWorkHistory(scope),
2467
- socialSecurityDisabilityReceivingBenefits(scope),
2468
- doctorTreatment(scope)
2469
- ]
2470
- }
2471
- );
1446
+ function degreeOfInterest(updates = {}) {
1447
+ return sqstep(
1448
+ 'degreeOfInterest',
1449
+ degreeOfInterestCenter(),
1450
+ 'Could you pay if your issue could be resolved?',
1451
+ updates
1452
+ )
1453
+ }
2472
1454
 
2473
- const TaxAndIRSQuestions = () => group(
2474
- 'TaxAndIRSQuestions',
2475
- {
2476
- if: '$get(Type_Of_Legal_Problem).value == "Tax and IRS"',
2477
- children: [
2478
- haveAttorney(),
2479
- totalDebt(),
2480
- taxProblemDetails(),
2481
- taxLevel(),
2482
- taxIssueType(),
2483
- degreeOfInterestHelp()
2484
- ]
2485
- }
2486
- );
1455
+ function lawyerPaymentMethod(updates = {}) {
1456
+ return sqstep(
1457
+ 'lawyerPaymentMethod',
1458
+ lawyerPaymentMethodCenter(),
1459
+ 'How would you pay if a solution required it?',
1460
+ updates
1461
+ )
1462
+ }
2487
1463
 
2488
- const TrafficAndTicketsQuestions = () => group(
2489
- 'TrafficAndTicketsQuestions',
2490
- {
2491
- if: '$get(Type_Of_Legal_Problem).value == "Traffic and Tickets"',
2492
- children: [
2493
- haveAttorney(),
2494
- driversLicenseType(),
2495
- trafficViolations(),
2496
- haveCourtDate(),
2497
- degreeOfInterestHelp()
2498
- ]
2499
- }
2500
- );
1464
+ function incidentDate(updates = {}) {
1465
+ return sqstep(
1466
+ 'incidentDate',
1467
+ incidentDateCenter(),
1468
+ 'When did the incident occur?',
1469
+ updates
1470
+ )
1471
+ }
2501
1472
 
2502
- const UnemploymentQuestions = () => group(
2503
- 'UnemploymentQuestions',
2504
- {
2505
- if: '$get(Type_Of_Legal_Problem).value == "Unemployment"',
2506
- children: [
2507
- numEmployeesOfBusiness(),
2508
- employerType(),
2509
- degreeOfInterestHelp()
2510
- ]
2511
- }
2512
- );
1473
+ function crimeCommittedDate(updates = {}) {
1474
+ return sqstep(
1475
+ 'crimeCommittedDate',
1476
+ crimeCommittedDateCenter(),
1477
+ 'When was the alleged crime?',
1478
+ updates
1479
+ )
1480
+ }
2513
1481
 
2514
- const VictimOfACrimeQuestions = () => group(
2515
- 'VictimOfACrimeQuestions',
2516
- {
2517
- if: '$get(Type_Of_Legal_Problem).value == "Victim of a Crime"',
2518
- children: [
2519
- haveAttorney(),
2520
- crimeCommittedDate(),
2521
- roleInMatterCriminal(),
2522
- pendingCharges(),
2523
- degreeOfInterest(),
2524
- lawyerPaymentMethod()
2525
- ]
2526
- }
2527
- );
1482
+ function roleInMatterCriminal(updates = {}) {
1483
+ return sqstep(
1484
+ 'roleInMatterCriminal',
1485
+ roleInMatterCriminalCenter(),
1486
+ 'What is your role in this matter?',
1487
+ updates
1488
+ )
1489
+ }
2528
1490
 
2529
- const WillsAndTrustsQuestions = (condition, scope) => group(
2530
- 'WillsAndTrustsQuestions',
2531
- {
2532
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Wills and Trusts"'),
2533
- children: [
2534
- haveAttorney(scope),
2535
- valueOfAssets(scope),
2536
- typeOfAssets(scope),
2537
- roleInMatterProbate(scope),
2538
- estateLegalServicesNeeded(scope),
2539
- degreeOfInterestHelp(scope)
2540
- ]
2541
- }
2542
- );
1491
+ function pendingCharges(updates = {}) {
1492
+ return sqstep(
1493
+ 'pendingCharges',
1494
+ pendingChargesCenter(),
1495
+ 'Do you have any pending charges?',
1496
+ updates
1497
+ )
1498
+ }
2543
1499
 
2544
- const WorkersCompensationQuestions = (condition, scope) => group(
2545
- 'WorkersCompensationQuestions',
2546
- {
2547
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Workers Compensation"'),
2548
- children: [
2549
- haveAttorney(scope),
2550
- incidentDate(scope),
2551
- claimStatus(scope),
2552
- primaryInjury(scope),
2553
- causeOfInjury(scope),
2554
- doctorTreatment(scope)
2555
- ]
2556
- }
2557
- );
1500
+ function bloodContentAlcoholTest(updates = {}) {
1501
+ return sqstep(
1502
+ 'bloodContentAlcoholTest',
1503
+ bloodContentAlcoholTestCenter(),
1504
+ 'What was your blood alcohol content?',
1505
+ updates
1506
+ )
1507
+ }
2558
1508
 
2559
- const WrongfulDeathQuestions = () => group(
2560
- 'WrongfulDeathQuestions',
2561
- {
2562
- if: '$get(Type_Of_Legal_Problem).value == "Wrongful Death"',
2563
- children: [
2564
- haveAttorney(),
2565
- incidentDate(),
2566
- relationshipToVictim(),
2567
- criminalChargesFiled(),
2568
- causeOfDeath()
2569
- ]
2570
- }
2571
- );
1509
+ function priorAlcoholOffenses(updates = {}) {
1510
+ return sqstep(
1511
+ 'priorAlcoholOffenses',
1512
+ priorAlcoholOffensesCenter(),
1513
+ 'Do you have prior alcohol offenses?',
1514
+ updates
1515
+ )
1516
+ }
2572
1517
 
2573
- const WrongfulTerminationQuestions = () => group(
2574
- 'WrongfulTerminationQuestions',
2575
- {
2576
- if: '$get(Type_Of_Legal_Problem).value == "Wrongful Termination"',
2577
- children: [
2578
- haveAttorney(),
2579
- numEmployeesOfBusiness(),
2580
- employerType(),
2581
- degreeOfInterestHelp()
2582
- ]
2583
- }
2584
- );
1518
+ function typeOfAlcoholTest(updates = {}) {
1519
+ return sqstep(
1520
+ 'typeOfAlcoholTest',
1521
+ typeOfAlcoholTestCenter(),
1522
+ 'What type of alcohol test was performed?',
1523
+ updates
1524
+ )
1525
+ }
2585
1526
 
2586
- const NotSureOrOtherQuestions = () => group(
2587
- 'NotSureOrOtherQuestions',
2588
- {
2589
- if: '$get(Type_Of_Legal_Problem).value == "Not Sure or Other"',
2590
- children: [
2591
- haveAttorney(),
2592
- degreeOfInterestHelp()
2593
- ]
2594
- }
2595
- );
1527
+ function criminalChargeType(updates = {}) {
1528
+ return sqstep(
1529
+ 'criminalChargeType',
1530
+ criminalChargeTypeCenter(),
1531
+ 'What type of criminal charge?',
1532
+ updates
1533
+ )
1534
+ }
2596
1535
 
2597
- const NEXT_ON_ENTER = '$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
2598
- const NEXT_ON_INPUT = '$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
1536
+ function criminalChargesFiled(updates = {}) {
1537
+ return sqstep(
1538
+ 'criminalChargesFiled',
1539
+ criminalChargesFiledCenter(),
1540
+ 'Have criminal charges been filed?',
1541
+ updates
1542
+ )
1543
+ }
2599
1544
 
2600
- const isInput = (n) => { return (n.type !== 'group' && n.type !== 'section' && n.type !== 'form' && n.$formkit !== 'hidden' && !n.children) };
1545
+ // ------ Common
2601
1546
 
2602
- const findLastInput = (n) => {
2603
- if (isInput(n)) {
2604
- return n
2605
- }
2606
- for (var i = n.children.length - 1; i >= 0; i--) {
2607
- if (typeof n.children === 'string') {
2608
- continue
2609
- }
2610
- const child = n.children[i];
2611
- if (isInput(child)) {
2612
- return child
1547
+ const formNavigation = () => ({
1548
+ $el: 'div',
1549
+ attrs: {
1550
+ class: 'step-nav'
1551
+ },
1552
+ children: [
1553
+ {
1554
+ $formkit: 'button',
1555
+ name: 'back_button',
1556
+ onClick: '$setPreviousStep($prevStepFunc($get(form)))',
1557
+ children: 'Back',
1558
+ style: {
1559
+ if: '$activeStep === $firstStep()',
1560
+ then: 'visibility: hidden;'
1561
+ }
1562
+ },
1563
+ {
1564
+ $formkit: 'button',
1565
+ name: 'next_button',
1566
+ onClick: '$setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form)))',
1567
+ children: {
1568
+ if: '$activeStep === $firstStep()',
1569
+ then: 'Start',
1570
+ else: 'Next'
1571
+ },
1572
+ outerClass: {
1573
+ if: '$activeStep === $lastStep()',
1574
+ then: 't-hidden',
1575
+ else: ''
1576
+ },
1577
+ style: {
1578
+ if: '$activeStep === $lastStep()',
1579
+ then: 'display: none;'
1580
+ }
1581
+ },
1582
+ {
1583
+ $formkit: 'submit',
1584
+ name: 'submit_button',
1585
+ label: 'Submit',
1586
+ if: '$activeStep === $lastStep()',
1587
+ style: {
1588
+ if: '$activeStep !== $lastStep()',
1589
+ then: 'display: none;'
1590
+ }
2613
1591
  }
2614
- const res = findLastInput(child);
2615
- if (res) {
2616
- return res
1592
+ ]
1593
+ });
1594
+
1595
+ const formDetails = () => ({
1596
+ $el: 'pre',
1597
+ if: '$urlParam("fdbg", "") == 1',
1598
+ children: [
1599
+ {
1600
+ $el: 'pre',
1601
+ children: '$stringify( $get(form).value )',
1602
+ attrs: {
1603
+ class: 't-text-xs',
1604
+ style: 'overflow: scroll'
1605
+ }
1606
+ },
1607
+ {
1608
+ $el: 'pre',
1609
+ children: ['activeStep: ', '$activeStep'],
1610
+ attrs: {
1611
+ class: 't-text-xs',
1612
+ style: 'overflow: scroll'
1613
+ }
1614
+ },
1615
+ {
1616
+ $el: 'pre',
1617
+ children: ['stepHistory: ', '$stepHistory'],
1618
+ attrs: {
1619
+ class: 't-text-xs',
1620
+ style: 'overflow: scroll'
1621
+ }
1622
+ },
1623
+ {
1624
+ $el: 'pre',
1625
+ children: ['stepQueue: ', '$stepQueue'],
1626
+ attrs: {
1627
+ class: 't-text-xs',
1628
+ style: 'overflow: scroll'
1629
+ }
1630
+ },
1631
+ {
1632
+ $el: 'pre',
1633
+ children: ['steps: ', '$stepKeys()'],
1634
+ attrs: {
1635
+ class: 't-text-xs',
1636
+ style: 'overflow: scroll'
1637
+ }
2617
1638
  }
2618
- }
2619
- return null
1639
+ ]
1640
+ });
1641
+
1642
+ const formPropDefaults = {
1643
+ type: 'form',
1644
+ id: 'form',
1645
+ config: { validationVisibility: 'submit' },
1646
+ onSubmit: '$submit($submitUrl, $prepData, $handleRedirect, "text/plain; charset=UTF-8")',
1647
+ plugins: '$plugins',
1648
+ actions: false,
1649
+ anchorElement: 'form-anchor',
1650
+ useLocalStorage: true,
1651
+ prepop: {
1652
+ fromURL: true
1653
+ },
1654
+ errorCodes: {
1655
+ 403: { message: "An Error Occurred", abort: false },
1656
+ 409: { abort: false },
1657
+ 429: "An Error Occurred",
1658
+ 504: { message: "An Error Occurred", abort: false },
1659
+ },
1660
+ formClass: '!t-max-w-[40rem]'
2620
1661
  };
2621
1662
 
2622
- function questionsStepHeadline(updates) {
2623
- return {
2624
- $el: 'h3',
2625
- children: updates.headline || 'Tell Us About Your Situation',
2626
- attrs: {
2627
- class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1'
2628
- }
1663
+ function formProps(updates) {
1664
+ const props = merge(
1665
+ formPropDefaults,
1666
+ updates
1667
+ );
1668
+ if (props.formId && !props.name) {
1669
+ props.name = props.formId;
2629
1670
  }
1671
+ return props
2630
1672
  }
2631
1673
 
2632
- function crossSellQuestionsStepHeadline(updates) {
2633
- return {
2634
- $el: 'h3',
2635
- children: updates.headline || 'Tell Us About Your Situation',
2636
- attrs: {
2637
- class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1'
2638
- }
2639
- }
2640
- }
1674
+ const metaDefaults = {
1675
+ tcpaLanguage: TCPA_LANGUAGE
1676
+ };
2641
1677
 
2642
- function crossSellQuestionsStepSubHeadline(updates) {
1678
+ function metaProps(updates) {
1679
+ const data = merge(
1680
+ metaDefaults,
1681
+ updates
1682
+ );
2643
1683
  return {
2644
- $el: 'h5',
2645
- children: updates.subheadline || 'Tell us about your situation:',
2646
- attrs: {
2647
- class: 't-flex t-justify-center t-text-dark t-text-center !t-text-lg t-font-semibold t-pb-4 t-pt-0 t-px-3'
2648
- }
1684
+ type: 'meta',
1685
+ data
2649
1686
  }
2650
1687
  }
2651
1688
 
2652
- function commentsStepHeadline(updates) {
2653
- return {
2654
- $el: 'h3',
2655
- children: updates.headline || 'Additional Case Details',
2656
- attrs: {
2657
- class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1' + ' ' + (updates.headlineClass || '')
2658
- }
2659
- }
1689
+ function defaultMetaProps() {
1690
+ return metaProps({
1691
+ defaultCommentsPlaceholder: DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
1692
+ commentsPlaceholders: TOLPCommentsPlaceholders,
1693
+ defaultFinalHeadline: DEFAULT_FINAL_HEADLINE,
1694
+ finalHeadlines: TOLPFinalHeadlines,
1695
+ defaultFinalSubHeadline: DEFAULT_FINAL_SUBHEADLINE,
1696
+ finalSubHeadlines: TOLPFinalSubHeadlines,
1697
+ })
2660
1698
  }
2661
1699
 
2662
- function firstAndLastStepHeadline(updates) {
2663
- return {
2664
- $el: 'h3',
2665
- children: updates.headline || 'Please Provide a Contact Name',
2666
- attrs: {
2667
- class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1' + ' ' + (updates.headlineClass || '')
2668
- }
1700
+ const dynamicSchemaNode = {
1701
+ $cmp: 'FormKitSchema',
1702
+ if: '$get(Type_Of_Legal_Problem).value',
1703
+ props: {
1704
+ schema: '$meta.dynamicSchema',
1705
+ data: '$buildData($meta)'
2669
1706
  }
2670
- }
1707
+ };
2671
1708
 
2672
- function legalCrossSellsStepHeadline(updates) {
2673
- return {
2674
- $el: 'h3',
2675
- children: updates.headline || 'Do any of the following situations apply?',
2676
- attrs: {
2677
- class: 't-flex t-justify-center t-text-center t-text-2xl t-font-bold t-text-blue-500 t-pb-5 t-pt-0 t-px-1' + ' ' + (updates.headlineClass || '')
1709
+ const formAnchorDefaults = {
1710
+ $el: 'div',
1711
+ children: [
1712
+ {
1713
+ $el: 'div',
1714
+ attrs: {
1715
+ id: 'form-anchor',
1716
+ class: 't-absolute',
1717
+ style: { top: '-30px', left: 0 }
1718
+ }
2678
1719
  }
1720
+ ],
1721
+ attrs: {
1722
+ class: 't-relative'
2679
1723
  }
2680
- }
1724
+ };
2681
1725
 
2682
- function contactStepHeadline(updates) {
2683
- return {
2684
- $el: 'h3',
2685
- children: updates.headline || DEFAULT_FINAL_HEADLINE_DYNAMIC,
2686
- attrs: {
2687
- 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 || '')
2688
- }
2689
- }
1726
+ function formAnchor(updates) {
1727
+ return merge(
1728
+ formAnchorDefaults,
1729
+ updates
1730
+ )
2690
1731
  }
2691
1732
 
2692
- function contactStepSubHeadline(updates) {
2693
- return {
2694
- $el: 'h5',
2695
- children: updates.subheadline || DEFAULT_FINAL_SUBHEADLINE_DYNAMIC,
2696
- attrs: {
2697
- 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 || '')
1733
+ const progressBarDefaults = {
1734
+ $el: 'div',
1735
+ attrs: {
1736
+ class: 't-mt-7 t-mb-5 t-w-full t-flex t-flex-col t-justify-center t-items-center',
1737
+ style: {
1738
+ if: '$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())',
1739
+ then: 'display: none'
1740
+ },
1741
+ },
1742
+ children: [
1743
+ {
1744
+ $el: 'div',
1745
+ attrs: {
1746
+ class: 't-flex t-justify-center'
1747
+ },
1748
+ children: [
1749
+ {
1750
+ $el: 'span',
1751
+ attrs: {
1752
+ id: 'progress-bar-text',
1753
+ class: 't-text-sm t-mb-1'
1754
+ },
1755
+ children: [
1756
+ "0% Complete"
1757
+ ]
1758
+ },
1759
+ ]
1760
+ },
1761
+ {
1762
+ $el: 'div',
1763
+ attrs: {
1764
+ class: 't-bg-gray-100 t-w-9/12 t-rounded'
1765
+ },
1766
+ children: [
1767
+ {
1768
+ $el: 'div',
1769
+ attrs: {
1770
+ id: 'progress-bar',
1771
+ 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]',
1772
+ style: {
1773
+ transition: 'width 0.5s ease'
1774
+ },
1775
+ },
1776
+ }
1777
+ ]
2698
1778
  }
2699
- }
2700
- }
2701
-
2702
- const TRUSTED_FORM_JS = `(function() {
2703
- if (window.xxTrustedFormLoaded) {
2704
- return
2705
- }
2706
- var vid = '';
2707
- if (typeof window.zar !== 'undefined') {
2708
- vid = window.zar.getVID();
2709
- }
2710
- window.xxTrustedFormLoaded = true;
2711
- var sandbox = document.location.hostname.indexOf('localhost') > -1 ? 'true' : 'false'
2712
- var tf = document.createElement('script');
2713
- tf.type = 'text/javascript'; tf.async = true;
2714
- 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();
2715
- var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(tf, s);
2716
- })();`;
1779
+ ]
1780
+ };
2717
1781
 
2718
- function trustedFormScript() {
2719
- return {
2720
- $el: 'script',
2721
- if: '$activeStep === $lastStep()',
2722
- children: TRUSTED_FORM_JS
2723
- }
1782
+ function progressBar(updates) {
1783
+ return merge(
1784
+ progressBarDefaults,
1785
+ updates
1786
+ )
2724
1787
  }
2725
1788
 
2726
- const stepDefaults = (step, stepKey) => ({
2727
- $el: 'section',
2728
- if: '$stepEnabled("' + step + '")',
2729
- attrs: {
2730
- hidden: '$activeStep !== "' + step + '"',
2731
- key: stepKey ? stepKey : step
2732
- }
2733
- });
2734
-
2735
- function step(name, inputs, nextOnEnter = true, nextOnInput = false, stepKey = undefined, nextStepMap = undefined, autoFocus = undefined) {
2736
- if (typeof nextOnEnter === 'undefined') {
2737
- nextOnEnter = true;
2738
- }
2739
- if (inputs && inputs.length && (nextOnEnter || nextOnInput)) {
2740
- const lastInput = findLastInput(inputs[inputs.length - 1]);
2741
- if (lastInput && nextOnEnter === true) {
2742
- lastInput.onKeypress = NEXT_ON_ENTER;
2743
- }
2744
- if (lastInput && nextOnInput === true) {
2745
- lastInput.onInput = NEXT_ON_INPUT;
1789
+ function headlineDefaults(updates = {}) {
1790
+ return {
1791
+ $el: 'h1',
1792
+ attrs: {
1793
+ 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 || '')
2746
1794
  }
2747
1795
  }
1796
+ }
2748
1797
 
1798
+ function headline(updates = {}) {
2749
1799
  return merge(
2750
- stepDefaults(name, stepKey),
2751
- {
2752
- children: [
2753
- {
2754
- $formkit: 'group',
2755
- id: name,
2756
- name: name,
2757
- nextStepMap: nextStepMap,
2758
- autoFocus: autoFocus,
2759
- children: inputs
2760
- }
2761
- ]
2762
- }
1800
+ headlineDefaults(updates),
1801
+ updates
2763
1802
  )
2764
1803
  }
2765
1804
 
2766
- function commentsWithBankruptcyV2(updates = {}) {
2767
- return step(
2768
- 'commentsWithBankruptcy',
2769
- [
2770
- commentsStepHeadline(updates),
2771
- comments({
2772
- label: typeof updates.label === 'undefined' ? DEFAULT_COMMENTS_LABEL : updates.label,
2773
- placeholder: updates.placeholder || DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
2774
- inputClass: typeof updates.inputClass === 'undefined' ? '!t-h-40' : updates.inputClass,
2775
- }),
2776
- bankruptcyCrossSell(),
2777
- {
2778
- $el: 'div',
2779
- if: '$get(CrossSell_Bankruptcy).value == true',
2780
- children: [
2781
- comments({
2782
- label: 'Bankruptcy or debt details:',
2783
- placeholder: 'Please describe your bankrtupcy or debt situation in a few words...',
2784
- inputClass: '!t-h-16'
2785
- }, 'CrossSell:Bankruptcy')
2786
- ],
2787
- }
2788
- ],
2789
- updates.nextOnEnter,
2790
- )
1805
+ function defaultHeadline() {
1806
+ return headline({
1807
+ children: '$urlParam("hl", "Start Here For a Free Consultation")',
1808
+ if: '$activeStep === $firstStep()'
1809
+ })
2791
1810
  }
2792
1811
 
2793
- function contactInfoV2(updates = {}) {
2794
- return step(
2795
- 'contactInfo',
2796
- [
2797
- contactStepHeadline(updates),
2798
- contactStepSubHeadline(updates),
2799
- // Added TF everywhere
2800
- trustedFormScript(),
2801
- email(),
2802
- phone(),
2803
- TCPAConsent(),
2804
- secureIcon()
2805
- ],
2806
- updates.nextOnEnter
1812
+ function subHeadlineDefaults(updates = {}) {
1813
+ return {
1814
+ $el: 'h3',
1815
+ attrs: {
1816
+ 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 || '')
1817
+ }
1818
+ }
1819
+ }
1820
+
1821
+ function subHeadline(updates = {}) {
1822
+ return merge(
1823
+ subHeadlineDefaults(updates),
1824
+ updates
2807
1825
  )
2808
1826
  }
2809
1827
 
2810
- function criminalTOLPAndZip(updates = {}) {
2811
- return step(
2812
- 'criminalTOLPAndZip',
2813
- [
2814
- {
2815
- $formkit: 'hidden',
2816
- name: "Type_Of_Legal_Problem",
2817
- id: "Type_Of_Legal_Problem",
2818
- value: "Criminal and Felony"
2819
- },
2820
- criminalTOLPDisplay({
2821
- if: 'true'
2822
- }),
2823
- zipcode()
2824
- ],
2825
- updates.nextOnEnter
1828
+ const hiddenInputsBase = [
1829
+ {
1830
+ $formkit: 'hidden',
1831
+ name: "gclid",
1832
+ value: null
1833
+ },
1834
+ {
1835
+ $formkit: 'hidden',
1836
+ name: "campaignid",
1837
+ value: null
1838
+ },
1839
+ {
1840
+ $formkit: 'hidden',
1841
+ name: "s",
1842
+ value: null
1843
+ }
1844
+ ];
1845
+
1846
+ const hiddenInputsLegal = [
1847
+ {
1848
+ $formkit: 'hidden',
1849
+ name: "vertical",
1850
+ value: "Legal"
1851
+ },
1852
+ {
1853
+ $formkit: 'hidden',
1854
+ name: "TCPA_Language",
1855
+ value: "$meta.tcpaLanguage"
1856
+ },
1857
+ ...hiddenInputsBase
1858
+ ];
1859
+
1860
+ const legalRedirectMapDefaults = {
1861
+ '*': LegalRedirectUrl()
1862
+ };
1863
+
1864
+
1865
+ function legalRedirectMap(updates) {
1866
+ return merge(
1867
+ legalRedirectMapDefaults,
1868
+ updates
2826
1869
  )
2827
1870
  }
2828
1871
 
2829
- function firstAndLastV2(updates = {}) {
2830
- return step(
2831
- 'firstAndLast',
2832
- [
2833
- firstAndLastStepHeadline(updates),
2834
- firstName(),
2835
- lastName()
2836
- ],
2837
- updates.nextOnEnter
2838
- )
2839
- }
1872
+ const legalAllValueOverrideMap = {
1873
+ 'Civil_Defense': {
1874
+ 'Yes': {
1875
+ 'Type_Of_Legal_Problem': 'Defend a Lawsuit'
1876
+ },
1877
+ 'No': {
1878
+ 'Type_Of_Legal_Problem': 'File a Lawsuit'
1879
+ }
1880
+ },
1881
+ 'Type_Of_Legal_Problem_Display': {
1882
+ // Accidents and PI
1883
+ 'Auto Accident': {
1884
+ 'Type_Of_Legal_Problem': 'Auto and Car Accidents'
1885
+ },
1886
+ 'Dog Bite': {
1887
+ 'Type_Of_Legal_Problem': 'Personal Injury'
1888
+ },
1889
+ 'Slip and Fall': {
1890
+ 'Type_Of_Legal_Problem': 'Personal Injury'
1891
+ },
1892
+ 'Workplace Injury': {
1893
+ 'Type_Of_Legal_Problem': 'Workers Compensation'
1894
+ },
1895
+ 'Trucking Accident': {
1896
+ 'Type_Of_Legal_Problem': 'Auto and Car Accidents'
1897
+ },
1898
+ 'Motorcycle Accident': {
1899
+ 'Type_Of_Legal_Problem': 'Auto and Car Accidents',
1900
+ },
1901
+ 'Other Accidents or Injuries': {
1902
+ 'Type_Of_Legal_Problem': 'Personal Injury'
1903
+ },
1904
+ // Civil
1905
+ 'Automobile Accident': {
1906
+ 'Type_Of_Legal_Problem': 'Auto and Car Accidents'
1907
+ },
1908
+ 'Contract Disputes': {
1909
+ 'Type_Of_Legal_Problem': 'Business Lawyers'
1910
+ },
1911
+ 'Defamation and Slander': {
1912
+ 'Type_Of_Legal_Problem': 'File a Lawsuit'
1913
+ },
1914
+ 'Dog Bite': {
1915
+ 'Type_Of_Legal_Problem': 'Personal Injury'
1916
+ },
1917
+ 'Employment and Workplace': {
1918
+ 'Type_Of_Legal_Problem': 'Employment and Workplace'
1919
+ },
1920
+ 'Fraud': {
1921
+ 'Type_Of_Legal_Problem': 'Consumer Lawyers'
1922
+ },
1923
+ 'Medical Malpractice': {
1924
+ 'Type_Of_Legal_Problem': 'Medical Malpractice'
1925
+ },
1926
+ 'Personal Injury': {
1927
+ 'Type_Of_Legal_Problem': 'Personal Injury'
1928
+ },
1929
+ 'Property Damage': {
1930
+ 'Type_Of_Legal_Problem': 'Property Damage'
1931
+ },
1932
+ 'Small Claims': {
1933
+ 'Type_Of_Legal_Problem': 'File a Lawsuit'
1934
+ },
1935
+ 'Real Estate': {
1936
+ 'Type_Of_Legal_Problem': 'Real Estate'
1937
+ },
1938
+ 'Other (describe on next page)': {
1939
+ 'Type_Of_Legal_Problem': 'Not Sure or Other'
1940
+ },
1941
+ // Contracts
1942
+ 'Contract Creation': {
1943
+ 'Type_Of_Legal_Problem': 'Business Lawyers',
1944
+ 'Business_Services': 'Contracts'
1945
+ },
1946
+ 'Contract Enforcement': {
1947
+ 'Type_Of_Legal_Problem': 'Business Lawyers',
1948
+ 'Business_Services': 'Contracts'
1949
+ },
1950
+ 'Contract Cancellation': {
1951
+ 'Type_Of_Legal_Problem': 'Business Lawyers',
1952
+ 'Business_Services': 'Contracts'
1953
+ },
1954
+ 'Contract Fraud': {
1955
+ 'Type_Of_Legal_Problem': 'Business Lawyers',
1956
+ 'Business_Services': 'Contracts'
1957
+ },
1958
+ 'Breach of Contract': {
1959
+ 'Type_Of_Legal_Problem': 'Business Lawyers',
1960
+ 'Business_Services': 'Contracts'
1961
+ },
1962
+ 'Other Contract Issues': {
1963
+ 'Type_Of_Legal_Problem': 'Business Lawyers',
1964
+ 'Business_Services': 'Contracts'
1965
+ },
1966
+ // Criminal
1967
+ 'Criminal Defense': {
1968
+ 'Type_Of_Legal_Problem': 'Criminal and Felony'
1969
+ },
1970
+ 'Victim of a Crime': {
1971
+ 'Type_Of_Legal_Problem': 'Victim of a Crime'
1972
+ },
1973
+ 'DUI and DWI': {
1974
+ 'Type_Of_Legal_Problem': 'DUI and DWI'
1975
+ },
1976
+ 'Expungement': {
1977
+ 'Type_Of_Legal_Problem': 'Expungement'
1978
+ },
1979
+ 'Harassment': {
1980
+ 'Type_Of_Legal_Problem': 'Criminal and Felony'
1981
+ },
1982
+ 'Not Sure or Other': {
1983
+ 'Type_Of_Legal_Problem': 'Not Sure or Other'
1984
+ },
1985
+ // Employment and Workplace
1986
+ 'Workplace Harassment': {
1987
+ 'Type_Of_Legal_Problem': 'Workplace Harassment'
1988
+ },
1989
+ 'Workplace Discrimination': {
1990
+ 'Type_Of_Legal_Problem': 'Workplace Discrimination'
1991
+ },
1992
+ 'Wrongful Termination': {
1993
+ 'Type_Of_Legal_Problem': 'Wrongful Termination'
1994
+ },
1995
+ 'Payment Disputes': {
1996
+ 'Type_Of_Legal_Problem': 'Employment and Workplace'
1997
+ },
1998
+ 'Workers Compensation': {
1999
+ 'Type_Of_Legal_Problem': 'Workers Compensation'
2000
+ },
2001
+ 'Unemployment': {
2002
+ 'Type_Of_Legal_Problem': 'Unemployment'
2003
+ },
2004
+ 'Other Workplace Issues': {
2005
+ 'Type_Of_Legal_Problem': 'Employment and Workplace'
2006
+ },
2007
+ // Malpractice
2008
+ 'Attorney Malpractice': {
2009
+ 'Type_Of_Legal_Problem': 'Civil Lawsuit'
2010
+ },
2011
+ 'Other Malpractice Issues': {
2012
+ 'Type_Of_Legal_Problem': 'Not Sure or Other'
2013
+ },
2014
+ // Repossession
2015
+ 'Vehicle Repossession': {
2016
+ 'Type_Of_Legal_Problem': 'Bankruptcy'
2017
+ },
2018
+ 'Property Repossession': {
2019
+ 'Type_Of_Legal_Problem': 'Bankruptcy'
2020
+ },
2021
+ 'Other Repossession Issues': {
2022
+ 'Type_Of_Legal_Problem': 'Not Sure or Other'
2023
+ },
2024
+ // Real Estate
2025
+ 'Contracts and Agreements': {
2026
+ 'Type_Of_Legal_Problem': 'Real Estate'
2027
+ },
2028
+ 'Deeds, Liens, and Titles': {
2029
+ 'Type_Of_Legal_Problem': 'Real Estate'
2030
+ },
2031
+ 'Foreclosure': {
2032
+ 'Type_Of_Legal_Problem': 'Foreclosure'
2033
+ },
2034
+ 'Insurance': {
2035
+ 'Type_Of_Legal_Problem': 'Insurance'
2036
+ },
2037
+ 'Landlord and Tenant': {
2038
+ 'Type_Of_Legal_Problem': 'Landlord and Tenant',
2039
+ },
2040
+ 'Loans and Mortgages': {
2041
+ 'Type_Of_Legal_Problem': 'Real Estate',
2042
+ },
2043
+ 'Wills, Trusts, and Estates': {
2044
+ 'Type_Of_Legal_Problem': 'Wills and Trusts'
2045
+ },
2046
+ 'Property Damage': {
2047
+ 'Type_Of_Legal_Problem': 'Property Damage'
2048
+ },
2049
+ 'Other Real Estate Issues': {
2050
+ 'Type_Of_Legal_Problem': 'Real Estate'
2051
+ }
2052
+ }
2053
+ };
2054
+
2055
+ const TOLPCommentsPlaceholders = {
2056
+ 'Adoption': 'Example: "I need help with adoption forms"',
2057
+ 'Asbestos and Mesothelioma': 'Example: "I was exposed to asbestos at work and would like to file a claim"',
2058
+ '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"',
2059
+ 'Bankruptcy': 'Example: "I need help filing for bankruptcy"',
2060
+ 'Birth Certificate and Name Change': 'Example: "Just married and would like to change my last name"',
2061
+ 'Business Lawyers': 'Example: "I need help incorporating a business" or "I would like a legal contract reviewed"',
2062
+ 'Child Custody and Support': 'Example: "Need help getting custody" or "Issues with child support payments"',
2063
+ 'Child Custody': 'Example: "Need help getting custody"',
2064
+ 'Child Support': 'Example: "Issues with child support payments"',
2065
+ 'Civil Rights and Discrimination': 'Example: "Police brutality" or "Coworker keeps harassing me"',
2066
+ 'Civil Lawsuit': 'Example: "A contractor took my money and never completed the job" or "I am being sued by a neighbor"',
2067
+ 'File a Lawsuit': 'Example: "A contractor took my money and never completed the job"',
2068
+ 'Defend a Lawsuit': 'Example: "I am being sued by a neighbor"',
2069
+ 'Consumer Lawyers': 'Example: "Someone committed fraud against me" or "A contractor took my money and never completed the job"',
2070
+ 'Copyrights and Trademarks': 'Example: "I would like to register a trademark or copyright a name"',
2071
+ 'Criminal and Felony': 'Example: "I was arrested for DUI and need legal defense" or "I am being charged with assault"',
2072
+ 'Debt and Collections': 'Example: "I would like to consolidate my debt" or "A collection agency is harassing me"',
2073
+ 'Divorce and Separation': 'Example: "I would like to file for an uncontested divorce"',
2074
+ 'DUI and DWI': 'Example: "I was arrested for DUI and need legal defense"',
2075
+ 'Elder Law': 'Example: "I would like help with Estate Planning" or "I need help with a guardianship"',
2076
+ 'Employment and Workplace': 'Example: "I was injured while on the job" or "My company is discriminating against me"',
2077
+ 'Expungement': 'Example: "I would like to file for an expungement and clear my record"',
2078
+ 'Family Issues': 'Example: "I need help with guardianship" or "I need a simple will created"',
2079
+ 'Foreclosure': 'Example: "I need help to avoid foreclosure on my house"',
2080
+ 'Guardianship': 'Example: "I need help with guardianship documents"',
2081
+ 'Harassment and Discrimination': 'Example: "I am being discriminated at work" or "My neighbor is harassing me"',
2082
+ 'Sexual Harassment': 'Example: "I am being sexually harassed by a coworker"',
2083
+ 'Workplace Harassment': 'Example: "My coworker is being aggressive towards me"',
2084
+ 'Non-Workplace Harassment': 'Example: "My neighbor is harassing me"',
2085
+ 'Workplace Discrimination': 'Example: "I am being discriminated at work based on my age"',
2086
+ 'Non-Workplace Discrimination': 'Example: "I am being discriminated against by a local official"',
2087
+ 'Identity Theft': 'Example: "Someone stole my identity and I need help fixing the issue"',
2088
+ 'Immigration and Visas': 'Example: "I need help filing for a visa" or "Help with a green card"',
2089
+ 'Insurance': 'Example: "I need help filing an insurance claim for damage to my house"',
2090
+ 'Landlord and Tenant': 'Example: "I need help to fight an eviction" or "I would like a lawyer to review a rental contract"',
2091
+ 'Lemon Law': 'Example: "I purchased a new vehicle that broke down already and seller will not assist"',
2092
+ '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"',
2093
+ 'Medical Malpractice': 'Example: "A doctor performed surgery on the wrong limb and I would like to file a lawsuit"',
2094
+ 'Patents and Intellectual Property': 'Example: "I would like to file for a patent" or "I need to copyright a name"',
2095
+ 'Personal Injury': 'Example: "I was bit by the neighbor\'s dog" or "I fell in the icy grocery store parking lot"',
2096
+ 'Power of Attorney': 'Example: "I need help with a limited or general power of attorney"',
2097
+ 'Probate and Estates': 'Example: "I need help with planning for my estate" or "A family member passed without a will in place"',
2098
+ 'Product Liability': 'Example: "My car battery caught on fire" or "I purchased a faulty product"',
2099
+ 'Property Damage': 'Example: "The neighbor\'s tree fell on my fence" or "My car was hit in the parking lot"',
2100
+ 'Real Estate': 'Example: "I need help with a quitclaim deed" or "I need a lawyer to review a purchase and sales agreement"',
2101
+ '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"',
2102
+ 'Tax and IRS': 'Example: "I need help fighting an IRS tax claim" or "I need audit defense"',
2103
+ 'Traffic and Tickets': 'Example: "I need help reinstating a supsended license" or "I would like to fight a traffic ticket"',
2104
+ 'Unemployment': 'Example: "I need help filing for unemployment benefits"',
2105
+ 'Victim of a Crime': 'Example: "I was assaulted in the store" or "I am being discriminated against at work"',
2106
+ 'Wills and Trusts': 'Example: "I need a simple will created" or "I would like guidance on creating a trust fund"',
2107
+ 'Workers Compensation': 'Example: "I was injured at work and would like to file for workers compensation benefits"',
2108
+ 'Wrongful Death': 'Example: "A family member was killed on the job and we need legal representation"',
2109
+ 'Wrongful Termination': 'Example: "I was fired by my employer without cause"',
2110
+ 'Not Sure or Other': 'Example: "I was involved in a car accident" or "I need help setting up power of attorney"'
2111
+ };
2840
2112
 
2113
+ const TOLPFinalHeadlines = {
2114
+ // 'Adoption': '',
2115
+ };
2841
2116
 
2842
- const AllTOLPQuestions = () => {
2843
- return [
2844
- AdoptionQuestions(),
2845
- AsbestosAndMesotheliomaQuestions(),
2846
- AutoAndCarAccidentsQuestions(),
2847
- BankruptcyQuestions(),
2848
- BirthCertificateAndNameChangeQuestions(),
2849
- BusinessLawyersQuestions(),
2850
- ChildCustodyAndSupportQuestions(),
2851
- ChildCustodyQuestions(),
2852
- ChildSupportQuestions(),
2853
- CivilRightsAndDiscriminationQuestions(),
2854
- CivilLawsuitQuestions(),
2855
- FileLawsuitQuestions(),
2856
- DefendLawsuitQuestions(),
2857
- ConsumerLawyersQuestions(),
2858
- CopyrightsAndTrademarksQuestions(),
2859
- CriminalAndFelonyQuestions(),
2860
- DebtAndCollectionsQuestions(),
2861
- DivorceQuestions(),
2862
- DUIAndDWIQuestions(),
2863
- ElderLawQuestions(),
2864
- EmploymentAndWorkplaceQuestions(),
2865
- ExpungementQuestions(),
2866
- FamilyIssuesQuestions(),
2867
- ForeclosureQuestions(),
2868
- GuardianshipQuestions(),
2869
- HarassmentAndDiscriminationQuestions(),
2870
- SexualHarassmentQuestions(),
2871
- WorkplaceHarassmentQuestions(),
2872
- NonWorkplaceHarassmentQuestions(),
2873
- WorkplaceDiscriminationQuestions(),
2874
- NonWorkplaceDiscriminationQuestions(),
2875
- IdentityTheftQuestions(),
2876
- ImmigrationAndVisasQuestions(),
2877
- InsuranceQuestions(),
2878
- LandlordAndTenantQuestions(),
2879
- LemonLawQuestions(),
2880
- LongTermDisabilityQuestions(),
2881
- MedicalMalpracticeQuestions(),
2882
- PatentsAndIntellectualPropertyQuestions(),
2883
- PersonalInjuryQuestions(),
2884
- PowerofAttorneyQuestions(),
2885
- ProbateAndEstatesQuestions(),
2886
- ProductLiabilityQuestions(),
2887
- PropertyDamageQuestions(),
2888
- RealEstateQuestions(),
2889
- SocialSecurityDisabilityAndInsuranceQuestions(),
2890
- TaxAndIRSQuestions(),
2891
- TrafficAndTicketsQuestions(),
2892
- UnemploymentQuestions(),
2893
- VictimOfACrimeQuestions(),
2894
- WillsAndTrustsQuestions(),
2895
- WorkersCompensationQuestions(),
2896
- WrongfulDeathQuestions(),
2897
- WrongfulTerminationQuestions(),
2898
- NotSureOrOtherQuestions()
2899
- ]
2117
+ const TOLPFinalSubHeadlines = {
2118
+ 'Adoption': 'You may benefit from speaking with an adoption professional. Please verify your contact information.',
2119
+ // 'Asbestos and Mesothelioma': '',
2120
+ 'Auto and Car Accidents': 'You may benefit from speaking with an accident professional. Please verify your contact information.',
2121
+ 'Bankruptcy': 'You may benefit from speaking with a bankruptcy professional. Please verify your contact information.',
2122
+ // 'Birth Certificate and Name Change': '',
2123
+ // 'Business Lawyers': '',
2124
+ // 'Child Custody and Support': '',
2125
+ // 'Civil Rights and Discrimination': '',
2126
+ // 'Civil Lawsuit': '',
2127
+ // 'Consumer Lawyers': '',
2128
+ 'Copyrights and Trademarks': 'You may benefit from speaking with a copyright and trademark professional. Please verify your contact information.',
2129
+ // 'Criminal and Felony': '',
2130
+ // 'Debt and Collections': '',
2131
+ 'Divorce and Separation': 'You may benefit from speaking with a divorce professional. Please verify your contact information.',
2132
+ 'DUI and DWI': 'You may benefit from speaking with a DUI professional. Please verify your contact information.',
2133
+ 'Elder Law': 'You may benefit from speaking with an elder law professional. Please verify your contact information.',
2134
+ // 'Employment and Workplace': '',
2135
+ // 'Expungement': '',
2136
+ // 'Family Issues': '',
2137
+ 'Foreclosure': 'You may benefit from speaking with a foreclosure professional. Please verify your contact information.',
2138
+ 'Guardianship': 'You may benefit from speaking with a guardianship professional. Please verify your contact information.',
2139
+ // 'Harassment and Discrimination': '',
2140
+ // 'Identity Theft': '',
2141
+ 'Immigration and Visas': 'You may benefit from speaking with a immigration professional. Please verify your contact information.',
2142
+ // 'Insurance': '',
2143
+ 'Landlord and Tenant': 'You may benefit from speaking with a landlord and tenant legal professional. Please verify your contact information.',
2144
+ // 'Lemon Law': '',
2145
+ 'Long Term Disability': 'You may benefit from speaking with a disability legal professional. Please verify your contact information.',
2146
+ 'Medical Malpractice': 'You may benefit from speaking with a malpractice professional. Please verify your contact information.',
2147
+ 'Patents and Intellectual Property': 'You may benefit from speaking with a patent professional. Please verify your contact information.',
2148
+ 'Personal Injury': 'You may benefit from speaking with a personal injury professional. Please verify your contact information.',
2149
+ // 'Power of Attorney': '',
2150
+ 'Probate and Estates': 'You may benefit from speaking with a probate and estate professional. Please verify your contact information.',
2151
+ // 'Product Liability': '',
2152
+ // 'Property Damage': '',
2153
+ 'Real Estate': 'You may benefit from speaking with a real estate professional. Please verify your contact information.',
2154
+ 'Social Security Disability and Insurance': 'You may benefit from speaking with an SSDI professional. Please verify your contact information.',
2155
+ 'Tax and IRS': 'You may benefit from speaking with a tax professional. Please verify your contact information.',
2156
+ // 'Traffic and Tickets': '',
2157
+ 'Unemployment': 'You may benefit from speaking with an unemployment professional. Please verify your contact information.',
2158
+ // 'Victim of a Crime': '',
2159
+ // 'Wills and Trusts': '',
2160
+ 'Workers Compensation': 'You may benefit from speaking with a workers compensation professional. Please verify your contact information.',
2161
+ // 'Wrongful Death': '',
2162
+ // 'Wrongful Termination': '',
2163
+ // 'Not Sure or Other': ''
2164
+ // 'Sexual Harassment': '',
2165
+ // 'Workplace Harassment': '',
2166
+ // 'Non-Workplace Harassment': '',
2167
+ // 'Workplace Discrimination': '',
2168
+ // 'Non-Workplace Discrimination': '',
2900
2169
  };
2901
2170
 
2902
- function generalLegalTOLPQuestions(updates = {}) {
2903
- var questions = AllTOLPQuestions();
2171
+ const nextStepsLegalDefault = [
2172
+ 'haveAttorney',
2173
+ 'degreeOfInterest',
2174
+ 'commentsWithBankruptcy',
2175
+ 'zipcode',
2176
+ 'legalCrossSells',
2177
+ 'firstAndLast',
2178
+ 'contactInfo',
2179
+ ];
2904
2180
 
2905
- questions.unshift(
2906
- questionsStepHeadline(updates)
2907
- );
2181
+ const nextStepsLegalDefaultLPM = [
2182
+ 'haveAttorney',
2183
+ 'degreeOfInterest',
2184
+ 'lawyerPaymentMethod',
2185
+ 'commentsWithBankruptcy',
2186
+ 'zipcode',
2187
+ 'legalCrossSells',
2188
+ 'firstAndLast',
2189
+ 'contactInfo',
2190
+ ];
2908
2191
 
2909
- return step(
2910
- 'TOLPQuestions',
2911
- questions,
2912
- updates.nextOnEnter
2913
- )
2914
- }
2192
+ const nextStepsLegalNoDOI = [
2193
+ 'haveAttorney',
2194
+ 'commentsWithBankruptcy',
2195
+ 'zipcode',
2196
+ 'legalCrossSells',
2197
+ 'firstAndLast',
2198
+ 'contactInfo',
2199
+ ];
2915
2200
 
2201
+ const nextStepsLegalNoHA = [
2202
+ 'degreeOfInterest',
2203
+ 'commentsWithBankruptcy',
2204
+ 'zipcode',
2205
+ 'legalCrossSells',
2206
+ 'firstAndLast',
2207
+ 'contactInfo',
2208
+ ];
2916
2209
 
2917
- function autoAndCarAccidentCrossSellQuestions(updates = {}) {
2918
- return step(
2919
- 'autoAndCarAccidentCrossSellQuestions',
2920
- [
2921
- crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Compensation' }),
2922
- crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your accident:' }),
2923
- AutoAndCarAccidentsQuestions("true", 'CrossSell:Auto_and_Car_Accidents'),
2924
- comments(
2925
- {
2926
- label: 'Accident Description:',
2927
- placeholder: 'Please describe your accident in a few words...',
2928
- inputClass: '!t-h-16'
2929
- },
2930
- 'CrossSell:Auto_and_Car_Accidents'
2931
- )
2210
+ const nextStepsMapGeneralLegal = {
2211
+ 'Type_Of_Legal_Problem': {
2212
+ 'Adoption': [
2213
+ 'maritalStatus',
2214
+ 'haveChildren',
2215
+ ...nextStepsLegalDefaultLPM
2932
2216
  ],
2933
- updates.nextOnEnter
2934
- )
2935
- }
2936
-
2937
- function childCustodyCrossSellQuestions(updates = {}) {
2938
- return step(
2939
- 'childCustodyCrossSellQuestions',
2940
- [
2941
- crossSellQuestionsStepHeadline({ headline: 'Child Custody Information' }),
2942
- ChildCustodyQuestions("true", 'CrossSell:Child_Custody'),
2943
- comments(
2944
- {
2945
- label: 'Description:',
2946
- placeholder: 'Please describe your situation in a few words...',
2947
- inputClass: '!t-h-16'
2948
- },
2949
- 'CrossSell:Child_Custody'
2950
- )
2217
+ 'Asbestos and Mesothelioma': [
2218
+ 'incidentDate',
2219
+ 'doctorTreatment',
2220
+ ...nextStepsLegalDefault
2951
2221
  ],
2952
- updates.nextOnEnter
2953
- )
2954
- }
2955
-
2956
- function divorceAndSeparationCrossSellQuestions(updates = {}) {
2957
- return step(
2958
- 'divorceAndSeparationCrossSellQuestions',
2959
- [
2960
- crossSellQuestionsStepHeadline({ headline: 'Divorce or Separation Information' }),
2961
- DivorceQuestions("true", 'CrossSell:Divorce_and_Separation'),
2962
- comments(
2963
- {
2964
- label: 'Description:',
2965
- placeholder: 'Please describe your situation in a few words...',
2966
- inputClass: '!t-h-16'
2967
- },
2968
- 'CrossSell:Divorce_and_Separation'
2969
- )
2222
+ 'Auto and Car Accidents': [
2223
+ 'incidentDate',
2224
+ 'atFault',
2225
+ 'primaryInjury',
2226
+ 'doctorTreatment',
2227
+ 'policeReportFiled',
2228
+ ...nextStepsLegalNoDOI
2229
+ ],
2230
+ 'Bankruptcy': [
2231
+ 'totalMonthlyIncome',
2232
+ 'totalDebt',
2233
+ 'ownRealEstate',
2234
+ 'valueOfAssets',
2235
+ ...nextStepsLegalDefault
2236
+ ],
2237
+ 'Business Lawyers': [
2238
+ 'businessServices',
2239
+ 'businessType',
2240
+ 'numEmployeesOfBusiness',
2241
+ ...nextStepsLegalDefault
2242
+ ],
2243
+ 'Child Custody': [
2244
+ 'childRelationship',
2245
+ 'childHome',
2246
+ 'childPrimaryCaregiver',
2247
+ ...nextStepsLegalDefaultLPM
2248
+ ],
2249
+ 'Child Support': [
2250
+ 'childRelationship',
2251
+ 'childHome',
2252
+ 'childPrimaryCaregiver',
2253
+ ...nextStepsLegalDefaultLPM
2254
+ ],
2255
+ 'Civil Rights and Discrimination': [
2256
+ 'civilRightsType',
2257
+ ...nextStepsLegalDefault
2258
+ ],
2259
+ 'Civil Lawsuit': [
2260
+ 'civilDefense',
2261
+ 'lawsuitOtherParty',
2262
+ ...nextStepsLegalDefault
2263
+ ],
2264
+ 'File a Lawsuit': [
2265
+ 'civilLawsuitTOLPDisplay',
2266
+ 'lawsuitOtherParty',
2267
+ ...nextStepsLegalDefault
2268
+ ],
2269
+ 'Defend a Lawsuit': [
2270
+ 'lawsuitOtherParty',
2271
+ ...nextStepsLegalDefault
2272
+ ],
2273
+ 'Consumer Lawyers': [
2274
+ 'consumerLawyerType',
2275
+ 'incidentDate',
2276
+ 'lawsuitOtherParty',
2277
+ ...nextStepsLegalDefault
2278
+ ],
2279
+ 'Criminal and Felony': [
2280
+ 'criminalTOLPDisplay',
2281
+ 'crimeCommittedDate',
2282
+ 'roleInMatterCriminal',
2283
+ 'pendingCharges',
2284
+ ...nextStepsLegalDefaultLPM
2285
+ ],
2286
+ 'Debt and Collections': [
2287
+ 'totalMonthlyIncome',
2288
+ 'totalDebt',
2289
+ 'ownRealEstate',
2290
+ 'valueOfAssets',
2291
+ ...nextStepsLegalDefault
2292
+ ],
2293
+ 'Divorce and Separation': [
2294
+ 'maritalStatus',
2295
+ 'haveChildren',
2296
+ ...nextStepsLegalDefaultLPM
2297
+ ],
2298
+ 'DUI and DWI': [
2299
+ 'incidentDate',
2300
+ 'priorAlcoholOffenses',
2301
+ 'typeOfAlcoholTest',
2302
+ 'bloodContentAlcoholTest',
2303
+ 'pendingCharges',
2304
+ ...nextStepsLegalDefault
2305
+ ],
2306
+ 'Employment and Workplace': [
2307
+ 'employmentAndWorkplaceTOLPDisplay',
2308
+ 'numEmployeesOfBusiness',
2309
+ 'employerType',
2310
+ 'employeeAtCompany',
2311
+ ...nextStepsLegalDefault
2312
+ ],
2313
+ 'Expungement': [
2314
+ 'incidentDate',
2315
+ 'criminalChargeType',
2316
+ ...nextStepsLegalDefaultLPM
2317
+ ],
2318
+ 'Family Issues': [
2319
+ 'maritalStatus',
2320
+ 'haveChildren',
2321
+ ...nextStepsLegalDefaultLPM
2322
+ ],
2323
+ 'Foreclosure': [
2324
+ 'ownRealEstate',
2325
+ 'typeOfProperty',
2326
+ 'amountPaymentsPastDue',
2327
+ 'loanAmount',
2328
+ 'defaultNotice',
2329
+ ...nextStepsLegalDefault
2330
+ ],
2331
+ 'Guardianship': [
2332
+ 'maritalStatus',
2333
+ 'haveChildren',
2334
+ ...nextStepsLegalDefaultLPM
2335
+ ],
2336
+ 'Immigration and Visas': [
2337
+ 'countryOfCitizenship',
2338
+ 'immigrationLocation',
2339
+ 'immigrationEntry',
2340
+ 'immigrationType',
2341
+ 'immigrationStatus',
2342
+ 'immigrationDetails',
2343
+ ...nextStepsLegalDefault
2344
+ ],
2345
+ 'Landlord and Tenant': [
2346
+ 'landlordTenantIssue',
2347
+ 'landlordTenantParty',
2348
+ ...nextStepsLegalDefault
2349
+ ],
2350
+ 'Lemon Law': [
2351
+ 'incidentDate',
2352
+ 'lawsuitOtherParty',
2353
+ ...nextStepsLegalDefault
2354
+ ],
2355
+ 'Long Term Disability': [
2356
+ 'applicantOccupation',
2357
+ 'applicantAge',
2358
+ 'applicantLTDisabilityPolicy',
2359
+ 'applicantDisabilityHowObtain',
2360
+ 'applicantPreviouslyAppliedLtdBenefits',
2361
+ 'applicantReceivedDisabilityBenefits',
2362
+ 'applicantMonthlySalary',
2363
+ ...nextStepsLegalNoDOI
2364
+ ],
2365
+ 'Medical Malpractice': [
2366
+ 'incidentDate',
2367
+ 'claimStatus',
2368
+ 'doctorTreatment',
2369
+ 'medicalMalpracticeInjuries',
2370
+ ...nextStepsLegalDefault
2371
+ ],
2372
+ 'Patents and Intellectual Property': [
2373
+ 'patentAssistanceType',
2374
+ 'patentFor',
2375
+ ...nextStepsLegalDefault
2970
2376
  ],
2971
- updates.nextOnEnter
2972
- )
2973
- }
2974
-
2975
- function duiAndDWICrossSellQuestions(updates = {}) {
2976
- return step(
2977
- 'duiAndDWICrossSellQuestions',
2978
- [
2979
- crossSellQuestionsStepHeadline({ headline: 'About Your DUI/DWI' }),
2980
- DUIAndDWIQuestions("true", 'CrossSell:DUI_and_DWI'),
2981
- comments(
2982
- {
2983
- label: 'Incident Description:',
2984
- placeholder: 'Please describe your incident in a few words...',
2985
- inputClass: '!t-h-16'
2986
- },
2987
- 'CrossSell:DUI_and_DWI'
2988
- )
2377
+ 'Personal Injury': [
2378
+ 'incidentDate',
2379
+ 'claimStatus',
2380
+ 'atFault',
2381
+ 'primaryInjury',
2382
+ 'doctorTreatment',
2383
+ ...nextStepsLegalNoDOI
2989
2384
  ],
2990
- updates.nextOnEnter
2991
- )
2992
- }
2993
-
2994
- function ssdiCrossSellQuestions(updates = {}) {
2995
- return step(
2996
- 'ssdiCrossSellQuestions',
2997
- [
2998
- crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Benefits' }),
2999
- crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your disability:' }),
3000
- SocialSecurityDisabilityAndInsuranceQuestions("true", 'CrossSell:Social_Security_Disability_and_Insurance'),
3001
- comments(
3002
- {
3003
- label: 'Description:',
3004
- placeholder: 'Please describe your situation in a few words...',
3005
- inputClass: '!t-h-16'
3006
- },
3007
- 'CrossSell:Social_Security_Disability_and_Insurance'
3008
- )
2385
+ 'Probate and Estates': [
2386
+ 'valueOfAssets',
2387
+ 'typeOfAssets',
2388
+ 'roleInMatterProbate',
2389
+ 'estateLegalServicesNeeded',
2390
+ ...nextStepsLegalDefault
3009
2391
  ],
3010
- updates.nextOnEnter
3011
- )
3012
- }
3013
-
3014
- function personalInjuryCrossSellQuestions(updates = {}) {
3015
- return step(
3016
- 'personalInjuryCrossSellQuestions',
3017
- [
3018
- crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Compensation' }),
3019
- crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your injury:' }),
3020
- PersonalInjuryQuestions("true", 'CrossSell:Personal_Injury'),
3021
- comments(
3022
- {
3023
- label: 'Injury Description:',
3024
- placeholder: 'Please describe your injury in a few words...',
3025
- inputClass: '!t-h-16'
3026
- },
3027
- 'CrossSell:Personal_Injury'
3028
- )
2392
+ 'Property Damage': [
2393
+ 'realEstateArea',
2394
+ 'wouldLikeLawyerTo',
2395
+ ...nextStepsLegalDefault
3029
2396
  ],
3030
- updates.nextOnEnter
3031
- )
3032
- }
3033
-
3034
- function powerOfAttorneyCrossSellQuestions(updates = {}) {
3035
- return step(
3036
- 'powerOfAttorneyCrossSellQuestions',
3037
- [
3038
- crossSellQuestionsStepHeadline({ headline: 'Power of Attorney Information' }),
3039
- PowerofAttorneyQuestions("true", 'CrossSell:Power_of_Attorney'),
3040
- comments(
3041
- {
3042
- label: 'Description:',
3043
- placeholder: 'Please describe your situation in a few words...',
3044
- inputClass: '!t-h-16'
3045
- },
3046
- 'CrossSell:Power_of_Attorney'
3047
- )
2397
+ 'Real Estate': [
2398
+ 'realEstateTOLPDisplay',
2399
+ 'realEstateArea',
2400
+ 'wouldLikeLawyerTo',
2401
+ ...nextStepsLegalDefault
3048
2402
  ],
3049
- updates.nextOnEnter
3050
- )
3051
- }
3052
-
3053
- function willsAndTrustsCrossSellQuestions(updates = {}) {
3054
- return step(
3055
- 'willsAndTrustsCrossSellQuestions',
3056
- [
3057
- crossSellQuestionsStepHeadline({ headline: 'Will or Trust Information' }),
3058
- WillsAndTrustsQuestions("true", 'CrossSell:Wills_and_Trusts'),
3059
- comments(
3060
- {
3061
- label: 'Description:',
3062
- placeholder: 'Please describe your situation in a few words...',
3063
- inputClass: '!t-h-16'
3064
- },
3065
- 'CrossSell:Wills_and_Trusts'
3066
- )
2403
+ 'Social Security Disability and Insurance': [
2404
+ 'applicantAge',
2405
+ 'disabilityConditionStopWork',
2406
+ 'disabilityWorkHistory',
2407
+ 'socialSecurityDisabilityReceivingBenefits',
2408
+ 'doctorTreatment',
2409
+ ...nextStepsLegalNoDOI
3067
2410
  ],
3068
- updates.nextOnEnter
3069
- )
3070
- }
3071
-
3072
- function workersCompensationCrossSellQuestions(updates = {}) {
3073
- return step(
3074
- 'workersCompensationCrossSellQuestions',
3075
- [
3076
- crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Benefits' }),
3077
- crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your injury:' }),
3078
- WorkersCompensationQuestions("true", 'CrossSell:Workers_Compensation'),
3079
- comments(
3080
- {
3081
- label: 'Injury Description:',
3082
- placeholder: 'Please describe your injury in a few words...',
3083
- inputClass: '!t-h-16'
3084
- },
3085
- 'CrossSell:Workers_Compensation'
3086
- )
2411
+ 'Tax and IRS': [
2412
+ 'totalDebt',
2413
+ 'taxProblemDetails',
2414
+ 'taxLevel',
2415
+ 'taxIssueType',
2416
+ ...nextStepsLegalDefault
3087
2417
  ],
3088
- updates.nextOnEnter
3089
- )
3090
- }
3091
-
3092
- function legalCrossSells(updates = {}) {
3093
- return step(
3094
- 'legalCrossSells',
3095
- [
3096
- legalCrossSellsStepHeadline(updates),
3097
- legalCrossSells$1(),
2418
+ 'Traffic and Tickets': [
2419
+ 'driversLicenseType',
2420
+ 'trafficViolations',
2421
+ 'haveCourtDate',
2422
+ ...nextStepsLegalDefault
3098
2423
  ],
3099
- updates.nextOnEnter,
3100
- false,
3101
- // Note: we should probably scope this stepKey to this step name
3102
- '$get(Type_Of_Legal_Problem).value'
3103
- )
3104
- }
2424
+ 'Unemployment': [
2425
+ 'numEmployeesOfBusiness',
2426
+ 'employerType',
2427
+ ...nextStepsLegalNoHA
2428
+ ],
2429
+ 'Victim of a Crime': [
2430
+ 'crimeCommittedDate',
2431
+ 'roleInMatterCriminal',
2432
+ 'pendingCharges',
2433
+ ...nextStepsLegalDefaultLPM
2434
+ ],
2435
+ 'Wills and Trusts': [
2436
+ 'valueOfAssets',
2437
+ 'typeOfAssets',
2438
+ 'roleInMatterProbate',
2439
+ 'estateLegalServicesNeeded',
2440
+ ...nextStepsLegalDefault
2441
+ ],
2442
+ 'Workers Compensation': [
2443
+ 'incidentDate',
2444
+ 'claimStatus',
2445
+ 'primaryInjury',
2446
+ 'causeOfInjury',
2447
+ 'doctorTreatment',
2448
+ ...nextStepsLegalNoDOI
2449
+ ],
2450
+ 'Workplace Harassment': [
2451
+ 'numEmployeesOfBusiness',
2452
+ 'employerType',
2453
+ 'employeeAtCompany',
2454
+ ...nextStepsLegalDefault
2455
+ ],
2456
+ 'Workplace Discrimination': [
2457
+ 'numEmployeesOfBusiness',
2458
+ 'employerType',
2459
+ 'employeeAtCompany',
2460
+ ...nextStepsLegalDefault
2461
+ ],
2462
+ 'Wrongful Death': [
2463
+ 'incidentDate',
2464
+ 'relationshipToVictim',
2465
+ 'criminalChargesFiled',
2466
+ 'causeOfDeath',
2467
+ ...nextStepsLegalNoDOI
2468
+ ],
2469
+ 'Wrongful Termination': [
2470
+ 'numEmployeesOfBusiness',
2471
+ 'employerType',
2472
+ ...nextStepsLegalDefault
2473
+ ],
2474
+ },
2475
+ '*': nextStepsLegalDefault
2476
+ };
3105
2477
 
3106
- const formNavigationV2 = () => ({
3107
- $el: 'div',
3108
- attrs: {
3109
- class: 'step-nav'
2478
+ // function filterMapByKey(obj, keyList) {
2479
+ // return Object.fromEntries(
2480
+ // Object.entries(obj).filter(([key]) => keyList.includes(key))
2481
+ // );
2482
+ // }
2483
+
2484
+ // export function filteredNextStepsMapLegal(keyList) {
2485
+ // const res = { Type_Of_Legal_Problem: filterMapByKey(nextStepsMapGeneralLegal["Type_Of_Legal_Problem"], keyList) }
2486
+ // res["*"] = nextStepsMapGeneralLegal["*"]
2487
+ // return res
2488
+ // }
2489
+
2490
+ const TOLPNextSteps = nextStepsMapGeneralLegal["Type_Of_Legal_Problem"];
2491
+
2492
+ ({
2493
+ 'Civil_Defense': {
2494
+ 'Yes': TOLPNextSteps["Defend a Lawsuit"],
2495
+ 'No': TOLPNextSteps["File a Lawsuit"],
3110
2496
  },
3111
- children: [
3112
- {
3113
- $formkit: 'button',
3114
- name: 'back_button',
3115
- onClick: '$setPreviousStep($prevStepFunc($get(form)))',
3116
- children: 'Back',
3117
- style: {
3118
- if: '$activeStep === $firstStep()',
3119
- then: 'visibility: hidden;'
3120
- }
3121
- },
3122
- {
3123
- $formkit: 'button',
3124
- name: 'next_button',
3125
- onClick: '$setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form)))',
3126
- children: {
3127
- if: '$activeStep === $firstStep()',
3128
- then: 'Start',
3129
- else: 'Next'
3130
- },
3131
- outerClass: {
3132
- if: '$activeStep === $lastStep()',
3133
- then: 't-hidden',
3134
- else: ''
3135
- },
3136
- style: {
3137
- if: '$activeStep === $lastStep()',
3138
- then: 'display: none;'
3139
- }
3140
- },
3141
- {
3142
- $formkit: 'submit',
3143
- name: 'submit_button',
3144
- label: 'Submit',
3145
- if: '$activeStep === $lastStep()',
3146
- style: {
3147
- if: '$activeStep !== $lastStep()',
3148
- then: 'display: none;'
3149
- }
3150
- }
2497
+ '*': [
2498
+ 'lawsuitOtherParty',
2499
+ ...nextStepsLegalDefault
3151
2500
  ]
3152
2501
  });
3153
2502
 
3154
- const formDetails = () => ({
3155
- $el: 'pre',
3156
- if: '$urlParam("fdbg", "") == 1',
3157
- children: [
3158
- {
3159
- $el: 'pre',
3160
- children: '$stringify( $get(form).value )',
3161
- attrs: {
3162
- class: 't-text-xs',
3163
- style: 'overflow: scroll'
3164
- }
3165
- },
3166
- {
3167
- $el: 'pre',
3168
- children: ['activeStep: ', '$activeStep'],
3169
- attrs: {
3170
- class: 't-text-xs',
3171
- style: 'overflow: scroll'
3172
- }
3173
- },
3174
- {
3175
- $el: 'pre',
3176
- children: ['stepHistory: ', '$stepHistory'],
3177
- attrs: {
3178
- class: 't-text-xs',
3179
- style: 'overflow: scroll'
3180
- }
3181
- },
3182
- {
3183
- $el: 'pre',
3184
- children: ['stepQueue: ', '$stepQueue'],
3185
- attrs: {
3186
- class: 't-text-xs',
3187
- style: 'overflow: scroll'
3188
- }
3189
- },
3190
- {
3191
- $el: 'pre',
3192
- children: ['steps: ', '$stepKeys()'],
3193
- attrs: {
3194
- class: 't-text-xs',
3195
- style: 'overflow: scroll'
3196
- }
3197
- }
2503
+ ({
2504
+ 'Type_Of_Legal_Problem': {
2505
+ 'Defend a Lawsuit': TOLPNextSteps["Defend a Lawsuit"],
2506
+ 'File a Lawsuit': TOLPNextSteps["File a Lawsuit"],
2507
+ },
2508
+ '*': [
2509
+ 'lawsuitOtherParty',
2510
+ ...nextStepsLegalDefault
2511
+ ]
2512
+ });
2513
+
2514
+ ({
2515
+ 'Type_Of_Legal_Problem_Display': {
2516
+ 'Automobile Accident': TOLPNextSteps["Auto and Car Accidents"],
2517
+ 'Contract Disputes': TOLPNextSteps["Business Lawyers"],
2518
+ 'Dog Bite': TOLPNextSteps["Personal Injury"],
2519
+ 'Employment and Workplace': TOLPNextSteps["Employment and Workplace"],
2520
+ 'Fraud': TOLPNextSteps["Consumer Lawyers"],
2521
+ 'Medical Malpractice': TOLPNextSteps["Medical Malpractice"],
2522
+ 'Personal Injury': TOLPNextSteps["Personal Injury"],
2523
+ 'Property Damage': TOLPNextSteps["Property Damage"],
2524
+ 'Real Estate': TOLPNextSteps["Real Estate"],
2525
+ 'Not Sure or Other': nextStepsMapGeneralLegal["*"],
2526
+ },
2527
+ '*': [
2528
+ 'lawsuitOtherParty',
2529
+ ...nextStepsLegalDefault
2530
+ ]
2531
+ });
2532
+
2533
+ const nextStepsMapCriminalTOLPDisplay = {
2534
+ 'Type_Of_Legal_Problem_Display': {
2535
+ 'Victim of a Crime': TOLPNextSteps["Victim of a Crime"],
2536
+ 'DUI and DWI': TOLPNextSteps["DUI and DWI"],
2537
+ 'Expungement': TOLPNextSteps["Expungement"],
2538
+ 'Not Sure or Other': nextStepsMapGeneralLegal["*"],
2539
+ },
2540
+ '*': [
2541
+ 'crimeCommittedDate',
2542
+ 'roleInMatterCriminal',
2543
+ 'pendingCharges',
2544
+ ...nextStepsLegalDefaultLPM
2545
+ ]
2546
+ };
2547
+
2548
+ ({
2549
+ 'Type_Of_Legal_Problem_Display': {
2550
+ 'Wrongful Termination': TOLPNextSteps["Wrongful Termination"],
2551
+ 'Workers Compensation': TOLPNextSteps["Workers Compensation"],
2552
+ 'Personal Injury': TOLPNextSteps["Personal Injury"],
2553
+ 'Unemployment': TOLPNextSteps["Unemployment"],
2554
+ },
2555
+ '*': [
2556
+ 'numEmployeesOfBusiness',
2557
+ 'employerType',
2558
+ 'employeeAtCompany',
2559
+ ...nextStepsLegalDefault
2560
+ ]
2561
+ });
2562
+
2563
+ ({
2564
+ 'Type_Of_Legal_Problem_Display': {
2565
+ 'Foreclosure': TOLPNextSteps["Foreclosure"],
2566
+ 'Landlord and Tenant': TOLPNextSteps["Landlord and Tenant"],
2567
+ 'Wills, Trusts, and Estates': TOLPNextSteps["Wills and Trusts"],
2568
+ 'Property Damage': TOLPNextSteps['Property Damage'],
2569
+ },
2570
+ '*': [
2571
+ 'realEstateArea',
2572
+ 'wouldLikeLawyerTo',
2573
+ ...nextStepsLegalDefault
3198
2574
  ]
3199
2575
  });
3200
2576
 
2577
+ const meta = defaultMetaProps();
2578
+
2579
+ meta.data.dynamicSchema = [
2580
+ bloodContentAlcoholTest(),
2581
+ crimeCommittedDate({
2582
+ nextOnInput: false
2583
+ }),
2584
+ criminalChargeType(),
2585
+ criminalChargesFiled(),
2586
+ degreeOfInterest(),
2587
+ haveAttorney(),
2588
+ incidentDate({
2589
+ nextOnInput: false
2590
+ }),
2591
+ lawyerPaymentMethod(),
2592
+ pendingCharges(),
2593
+ priorAlcoholOffenses(),
2594
+ roleInMatterCriminal(),
2595
+ typeOfAlcoholTest(),
2596
+ zipcode(),
2597
+ commentsWithBankruptcy({
2598
+ label: null,
2599
+ headline: 'Please briefly describe your situation:',
2600
+ headlineClass: '!t-text-dark',
2601
+ }),
2602
+ legalCrossSells({
2603
+ headlineClass: '!t-text-dark'
2604
+ }),
2605
+ autoAndCarAccidentCrossSellQuestions(),
2606
+ personalInjuryCrossSellQuestions(),
2607
+ workersCompensationCrossSellQuestions(),
2608
+ duiAndDWICrossSellQuestions(),
2609
+ ssdiCrossSellQuestions(),
2610
+ powerOfAttorneyCrossSellQuestions(),
2611
+ willsAndTrustsCrossSellQuestions(),
2612
+ divorceAndSeparationCrossSellQuestions(),
2613
+ childCustodyCrossSellQuestions(),
2614
+ firstAndLastV3({
2615
+ headlineClass: '!t-text-dark'
2616
+ }),
2617
+ ];
2618
+
3201
2619
  const schema = [
3202
- defaultMetaProps(),
2620
+ meta,
3203
2621
  formAnchor(),
3204
2622
  {
3205
2623
  $cmp: 'FormKit',
@@ -3209,8 +2627,12 @@ const schema = [
3209
2627
  valueOverrideMap: legalAllValueOverrideMap
3210
2628
  }),
3211
2629
  children: [
2630
+ progressBar(),
3212
2631
  defaultHeadline(),
3213
- defaultSubHeadline(),
2632
+ subHeadline({
2633
+ children: '$urlParam("shl", "Select a Category Below to Get Started!")',
2634
+ if: '$activeStep === $firstStep()',
2635
+ }),
3214
2636
  ...hiddenInputsLegal,
3215
2637
  {
3216
2638
  $el: 'div',
@@ -3218,26 +2640,13 @@ const schema = [
3218
2640
  class: 'form-body'
3219
2641
  },
3220
2642
  children: [
3221
- criminalTOLPAndZip(),
3222
- generalLegalTOLPQuestions(),
3223
- commentsWithBankruptcyV2({
3224
- nextOnEnter: false
3225
- }),
3226
- legalCrossSells(),
3227
- autoAndCarAccidentCrossSellQuestions(),
3228
- personalInjuryCrossSellQuestions(),
3229
- workersCompensationCrossSellQuestions(),
3230
- duiAndDWICrossSellQuestions(),
3231
- ssdiCrossSellQuestions(),
3232
- powerOfAttorneyCrossSellQuestions(),
3233
- willsAndTrustsCrossSellQuestions(),
3234
- divorceAndSeparationCrossSellQuestions(),
3235
- childCustodyCrossSellQuestions(),
3236
- firstAndLastV2(),
3237
- contactInfoV2({
3238
- nextOnEnter: false
2643
+ criminalTOLP({
2644
+ nextOnInput: false,
2645
+ nextStepMap: nextStepsMapCriminalTOLPDisplay
3239
2646
  }),
3240
- formNavigationV2(),
2647
+ dynamicSchemaNode,
2648
+ contactInfo(),
2649
+ formNavigation(),
3241
2650
  formDetails()
3242
2651
  ]
3243
2652
  }