bhl-forms 0.6.15 → 0.7.1

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 (97) hide show
  1. package/dist/bhl-forms.es.js +1757 -1759
  2. package/dist/bhl-forms.iife.js +4 -4
  3. package/dist/bhl-forms.modern.es.js +2804 -2811
  4. package/dist/bhl-forms.modern.iife.js +6 -6
  5. package/dist/bhl-forms.modern.umd.js +6 -6
  6. package/dist/bhl-forms.umd.js +4 -4
  7. package/dist/forms/accidentsAndInjuries.es.js +314 -228
  8. package/dist/forms/accidentsAndInjuries.iife.js +1 -1
  9. package/dist/forms/accidentsAndInjuries.json +1 -1
  10. package/dist/forms/appraisals.es.js +16 -7
  11. package/dist/forms/appraisals.iife.js +1 -1
  12. package/dist/forms/business.es.js +317 -236
  13. package/dist/forms/business.iife.js +1 -1
  14. package/dist/forms/business.json +1 -1
  15. package/dist/forms/childAndFamily.es.js +303 -224
  16. package/dist/forms/childAndFamily.iife.js +1 -1
  17. package/dist/forms/childAndFamily.json +1 -1
  18. package/dist/forms/childAndFamilySingle.es.js +643 -555
  19. package/dist/forms/childAndFamilySingle.iife.js +1 -1
  20. package/dist/forms/childAndFamilySingle.json +1 -1
  21. package/dist/forms/civilLawsuit.es.js +637 -551
  22. package/dist/forms/civilLawsuit.iife.js +1 -1
  23. package/dist/forms/civilLawsuit.json +1 -1
  24. package/dist/forms/coins.es.js +16 -7
  25. package/dist/forms/coins.iife.js +1 -1
  26. package/dist/forms/contracts.es.js +307 -227
  27. package/dist/forms/contracts.iife.js +1 -1
  28. package/dist/forms/contracts.json +1 -1
  29. package/dist/forms/criminal.es.js +660 -572
  30. package/dist/forms/criminal.iife.js +1 -1
  31. package/dist/forms/criminal.json +1 -1
  32. package/dist/forms/divorce.es.js +643 -555
  33. package/dist/forms/divorce.iife.js +1 -1
  34. package/dist/forms/divorce.json +1 -1
  35. package/dist/forms/employmentAndWorkplace.es.js +584 -506
  36. package/dist/forms/employmentAndWorkplace.iife.js +1 -1
  37. package/dist/forms/employmentAndWorkplace.json +1 -1
  38. package/dist/forms/generalHomeImprovement.es.js +3015 -0
  39. package/dist/forms/generalHomeImprovement.iife.js +1 -0
  40. package/dist/forms/generalHomeImprovement.json +1 -0
  41. package/dist/forms/generalLegal.es.js +341 -244
  42. package/dist/forms/generalLegal.iife.js +1 -1
  43. package/dist/forms/generalLegal.json +1 -1
  44. package/dist/forms/generalLegalJustAnswer.es.js +4542 -0
  45. package/dist/forms/generalLegalJustAnswer.iife.js +1 -0
  46. package/dist/forms/generalLegalJustAnswer.json +1 -0
  47. package/dist/forms/generalLegalPopUnder.es.js +342 -245
  48. package/dist/forms/generalLegalPopUnder.iife.js +1 -1
  49. package/dist/forms/generalLegalPopUnder.json +1 -1
  50. package/dist/forms/generalLegalPopUnderSingle.es.js +692 -612
  51. package/dist/forms/generalLegalPopUnderSingle.iife.js +1 -1
  52. package/dist/forms/generalLegalPopUnderSingle.json +1 -1
  53. package/dist/forms/generalLegalSingle.es.js +692 -612
  54. package/dist/forms/generalLegalSingle.iife.js +1 -1
  55. package/dist/forms/generalLegalSingle.json +1 -1
  56. package/dist/forms/generalLegalThankYou.es.js +204 -158
  57. package/dist/forms/generalLegalThankYou.iife.js +1 -1
  58. package/dist/forms/generalLegalThankYou.json +1 -1
  59. package/dist/forms/generalLegalThankYouConsultation.es.js +692 -612
  60. package/dist/forms/generalLegalThankYouConsultation.iife.js +1 -1
  61. package/dist/forms/generalLegalThankYouConsultation.json +1 -1
  62. package/dist/forms/harassmentAndDiscrimination.es.js +303 -224
  63. package/dist/forms/harassmentAndDiscrimination.iife.js +1 -1
  64. package/dist/forms/harassmentAndDiscrimination.json +1 -1
  65. package/dist/forms/landlordTenant.es.js +316 -240
  66. package/dist/forms/landlordTenant.iife.js +1 -1
  67. package/dist/forms/landlordTenant.json +1 -1
  68. package/dist/forms/malpractice.es.js +308 -227
  69. package/dist/forms/malpractice.iife.js +1 -1
  70. package/dist/forms/malpractice.json +1 -1
  71. package/dist/forms/mechanics.es.js +184 -166
  72. package/dist/forms/mechanics.iife.js +1 -1
  73. package/dist/forms/mechanics.json +1 -1
  74. package/dist/forms/patentsAndIP.es.js +646 -558
  75. package/dist/forms/patentsAndIP.iife.js +1 -1
  76. package/dist/forms/patentsAndIP.json +1 -1
  77. package/dist/forms/realEstate.es.js +339 -243
  78. package/dist/forms/realEstate.iife.js +1 -1
  79. package/dist/forms/realEstate.json +1 -1
  80. package/dist/forms/repossession.es.js +307 -227
  81. package/dist/forms/repossession.iife.js +1 -1
  82. package/dist/forms/repossession.json +1 -1
  83. package/dist/forms/ssdi.es.js +156 -140
  84. package/dist/forms/ssdi.iife.js +1 -1
  85. package/dist/forms/ssdi.json +1 -1
  86. package/dist/forms/testForm.es.js +69 -51
  87. package/dist/forms/testForm.iife.js +1 -1
  88. package/dist/forms/testForm.json +1 -1
  89. package/dist/forms/testRedirects.es.js +43 -22
  90. package/dist/forms/testRedirects.iife.js +1 -1
  91. package/dist/forms/testRedirects.json +1 -1
  92. package/dist/forms/vets.es.js +16 -7
  93. package/dist/forms/vets.iife.js +1 -1
  94. package/dist/forms/willsAndTrusts.es.js +304 -223
  95. package/dist/forms/willsAndTrusts.iife.js +1 -1
  96. package/dist/forms/willsAndTrusts.json +1 -1
  97. package/package.json +3 -3
@@ -6,14 +6,97 @@ function LegalRedirectUrl() {
6
6
  return 'https://listings.ziplawyer.com/api/v1/redirect?zone_id=4&vertical=Legal&category=${properties.Type_Of_Legal_Problem}&Degree_Of_Interest=${properties.Degree_Of_Interest}&zip_code=${properties.Zip}&sub_id=${properties.vid}'
7
7
  }
8
8
 
9
- var TCPA_LANGUAGE = "By checking this box, I a) agree to the Terms of Use, and b) consent to be contacted by lawyers, lawyer networks, and partners of this website using live, autodialed, pre-recorded, or artificial voice calls, as well as text messages. Your consent is not required as a condition of purchasing any goods or services. To submit this request without this consent, call 878-213-4937.";
10
-
11
- const DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC = '$getKey($meta, "commentsPlaceholders." + $get(Type_Of_Legal_Problem).value, $meta.defaultCommentsPlaceholder)';
12
- const DEFAULT_COMMENTS_LABEL = 'Please briefly describe your legal issue in a few words:';
13
- const DEFAULT_FINAL_HEADLINE = 'Submit Your Case';
14
- const DEFAULT_FINAL_HEADLINE_DYNAMIC = '$getKey($meta, "finalHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalHeadline)';
15
- const DEFAULT_FINAL_SUBHEADLINE = 'You may benefit from speaking with a legal professional. Please verify your contact information.';
16
- const DEFAULT_FINAL_SUBHEADLINE_DYNAMIC = '$getKey($meta, "finalSubHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalSubHeadline)';
9
+ const DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC_LEGAL = '$getKey($meta, "commentsPlaceholders." + $get(Type_Of_Legal_Problem).value, $meta.defaultCommentsPlaceholder)';
10
+ const DEFAULT_COMMENTS_LABEL_LEGAL = 'Please briefly describe your legal issue in a few words:';
11
+ const DEFAULT_FINAL_HEADLINE_LEGAL = 'Submit Your Case';
12
+ const DEFAULT_FINAL_HEADLINE_DYNAMIC_LEGAL = '$getKey($meta, "finalHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalHeadline)';
13
+ const DEFAULT_FINAL_SUBHEADLINE_LEGAL = 'You may benefit from speaking with a legal professional. Please verify your contact information.';
14
+ const DEFAULT_FINAL_SUBHEADLINE_DYNAMIC_LEGAL = '$getKey($meta, "finalSubHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalSubHeadline)';
15
+ const TCPA_LANGUAGE_LEGAL = "By checking this box, I a) agree to the Terms of Use, and b) consent to be contacted by lawyers, lawyer networks, and partners of this website using live, autodialed, pre-recorded, or artificial voice calls, as well as text messages. Your consent is not required as a condition of purchasing any goods or services. To submit this request without this consent, call 878-213-4937.";
16
+ const defaultLegalImprovementCrossSells = {
17
+ 'Auto and Car Accidents': 'Injured in a Car Accident',
18
+ 'Personal Injury': 'Personal or Workplace Injury',
19
+ 'DUI and DWI': 'Involved in a DUI/DWI',
20
+ 'Wills and Trusts': 'Need a Will or Trust',
21
+ 'Power of Attorney': 'Update Power of Attorney',
22
+ 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
23
+ };
24
+ const CROSS_SELL_OPTION_MAP_LEGAL = {
25
+ // Values can be a list or a map of value -> display value
26
+ 'Auto and Car Accidents': {
27
+ 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
28
+ 'Wills and Trusts': 'Need a Will or Trust',
29
+ 'Workers Compensation': 'Workplace Injury',
30
+ 'Power of Attorney': 'Update Power of Attorney',
31
+ 'Divorce and Separation': 'Need a Divorce or Separation',
32
+ 'Child Custody': 'Need help with Child Custody',
33
+ },
34
+ "Personal Injury": {
35
+ 'DUI and DWI': 'Involved in a DUI/DWI',
36
+ 'Wills and Trusts': 'Need a Will or Trust',
37
+ 'Power of Attorney': 'Update Power of Attorney',
38
+ 'Divorce and Separation': 'Need a Divorce or Separation',
39
+ 'Child Custody': 'Need help with Child Custody',
40
+ // TODO add one more?
41
+ },
42
+ "Workers Compensation": {
43
+ 'DUI and DWI': 'Involved in a DUI/DWI',
44
+ 'Wills and Trusts': 'Need a Will or Trust',
45
+ 'Power of Attorney': 'Update Power of Attorney',
46
+ 'Divorce and Separation': 'Need a Divorce or Separation',
47
+ 'Child Custody': 'Need help with Child Custody',
48
+ // TODO add one more?
49
+ },
50
+ "DUI and DWI": {
51
+ 'Personal Injury': 'Personal or Workplace Injury',
52
+ 'Wills and Trusts': 'Need a Will or Trust',
53
+ 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
54
+ 'Power of Attorney': 'Update Power of Attorney',
55
+ 'Divorce and Separation': 'Need a Divorce or Separation',
56
+ 'Child Custody': 'Need help with Child Custody',
57
+ },
58
+ "Wills and Trusts": {
59
+ 'Auto and Car Accidents': 'Injured in a Car Accident',
60
+ 'Personal Injury': 'Personal or Workplace Injury',
61
+ 'DUI and DWI': 'Involved in a DUI/DWI',
62
+ 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
63
+ 'Divorce and Separation': 'Need a Divorce or Separation',
64
+ 'Child Custody': 'Need help with Child Custody',
65
+ },
66
+ "Probate and Estates": {
67
+ 'Auto and Car Accidents': 'Injured in a Car Accident',
68
+ 'Personal Injury': 'Personal or Workplace Injury',
69
+ 'DUI and DWI': 'Involved in a DUI/DWI',
70
+ 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
71
+ 'Divorce and Separation': 'Need a Divorce or Separation',
72
+ 'Child Custody': 'Need help with Child Custody',
73
+ },
74
+ "Power of Attorney": {
75
+ 'Auto and Car Accidents': 'Injured in a Car Accident',
76
+ 'Personal Injury': 'Personal or Workplace Injury',
77
+ 'DUI and DWI': 'Involved in a DUI/DWI',
78
+ 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
79
+ 'Divorce and Separation': 'Need a Divorce or Separation',
80
+ 'Child Custody': 'Need help with Child Custody',
81
+ },
82
+ "Long Term Disability": {
83
+ 'Auto and Car Accidents': 'Injured in a Car Accident',
84
+ 'DUI and DWI': 'Involved in a DUI/DWI',
85
+ 'Wills and Trusts': 'Need a Will or Trust',
86
+ 'Power of Attorney': 'Update Power of Attorney',
87
+ 'Divorce and Separation': 'Need a Divorce or Separation',
88
+ 'Child Custody': 'Need help with Child Custody',
89
+ },
90
+ "Social Security Disability and Insurance": {
91
+ 'Auto and Car Accidents': 'Injured in a Car Accident',
92
+ 'DUI and DWI': 'Involved in a DUI/DWI',
93
+ 'Wills and Trusts': 'Need a Will or Trust',
94
+ 'Power of Attorney': 'Update Power of Attorney',
95
+ 'Divorce and Separation': 'Need a Divorce or Separation',
96
+ 'Child Custody': 'Need help with Child Custody',
97
+ },
98
+ '*': defaultLegalImprovementCrossSells,
99
+ };
17
100
 
18
101
  // ------ Common Base Settings
19
102
 
@@ -186,6 +269,14 @@ const sbsText = (updates) => {
186
269
  return text(updates)
187
270
  };
188
271
 
272
+ const verticalText = (updates) => {
273
+ updates.wrapperClass = 't-flex t-justify-center';
274
+ updates.messagesClass = 't-flex t-justify-center';
275
+ updates.inputClass = 't-text-center';
276
+ updates.helpClass = 't-mt-2.5 !t-text-sm t-text-center';
277
+ return text(updates)
278
+ };
279
+
189
280
  const textArea = (updates) => {
190
281
  if (updates.name && !updates.id) {
191
282
  updates.id = updates.name;
@@ -230,20 +321,101 @@ const verticalDate = (updates) => {
230
321
  return date(updates)
231
322
  };
232
323
 
233
- const applicantAge = (scope) => sbsText({
234
- name: scope ? scope + ':' + 'Applicant_Age' : 'Applicant_Age',
235
- label: 'Age of Applicant?',
236
- placeholder: 'Age between 18 and 65',
237
- maxlength: 2,
238
- inputmode: "numeric",
239
- validation: "required|min:18,max:65",
324
+ const email = (scope) => sbsText({
325
+ $formkit: 'email',
326
+ name: scope ? scope + ':' + 'Email' : 'Email',
327
+ label: 'Email Address:',
328
+ placeholder: 'email@domain.com',
329
+ autocomplete: 'email',
330
+ 'data-tf-sensitive': 'false',
331
+ validation: 'required|email',
240
332
  validationMessages: {
241
- required: 'Applicant Age is required',
242
- min: 'Invalid Age - must be between 18 and 65',
243
- max: 'Invalid Age - must be between 18 and 65',
333
+ required: 'Email is required',
334
+ email: 'Invalid Email'
335
+ }
336
+ });
337
+
338
+ const firstName = (scope) => sbsText({
339
+ label: 'First Name:',
340
+ placeholder: 'First',
341
+ name: scope ? scope + ':' + 'First_Name' : 'First_Name',
342
+ autocomplete: "given-name",
343
+ validationMessages: {
344
+ required: 'First Name is required'
244
345
  }
245
346
  });
246
347
 
348
+ const lastName = (scope) => sbsText({
349
+ label: 'Last Name:',
350
+ placeholder: 'Last',
351
+ name: scope ? scope + ':' + 'Last_Name' : 'Last_Name',
352
+ autocomplete: "family-name",
353
+ validationMessages: {
354
+ required: 'Last Name is required'
355
+ }
356
+ });
357
+
358
+ const phone = (scope) => sbsText({
359
+ $formkit: 'tel',
360
+ name: scope ? scope + ':' + 'Primary_Phone' : 'Primary_Phone',
361
+ label: 'Phone Number:',
362
+ placeholder: '###-###-####',
363
+ maxlength: 12,
364
+ help: '10-digit phone number, hyphens optional',
365
+ autocomplete: 'tel-national',
366
+ 'data-tf-sensitive': 'false',
367
+ validation: 'required|matches:/^[0-9]{3}-?[0-9]{3}-?[0-9]{4}$/|valid_phone',
368
+ validationMessages: {
369
+ required: 'Field is required',
370
+ matches: 'Invalid Phone Format, use ###-###-####',
371
+ valid_phone: 'Invalid Phone Number'
372
+ },
373
+ helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]"
374
+ });
375
+
376
+
377
+ const zipcode$1 = (scope, vertical, updates = {}) => {
378
+ const func = vertical ? verticalText : sbsText;
379
+ const label = vertical ? (updates.label) : 'Zip Code:';
380
+ const help = vertical ? (updates.help ?? "We try to match you with local help") : null;
381
+ return func({
382
+ label,
383
+ help,
384
+ placeholder: '#####',
385
+ name: scope ? scope + ':' + 'Zip' : 'Zip',
386
+ maxlength: 5,
387
+ inputmode: "numeric",
388
+ autocomplete: 'postal-code',
389
+ validation: 'required|matches:/^[0-9]{5}$/',
390
+ validationMessages: {
391
+ required: 'Zip Code is required',
392
+ matches: 'Invalid Zip Code'
393
+ },
394
+ ...updates
395
+ })
396
+ };
397
+
398
+ const applicantAge = (scope, vertical, updates = {}) => {
399
+ const func = vertical ? verticalText : sbsText;
400
+ const label = vertical ? (updates.label) : 'Age of Applicant?';
401
+ const value = vertical ? (updates.value ?? "50") : null;
402
+ return func(merge({
403
+ label,
404
+ placeholder: 'Age between 18 and 65',
405
+ name: scope ? scope + ':' + 'Applicant_Age' : 'Applicant_Age',
406
+ value,
407
+ maxlength: 2,
408
+ inputmode: "numeric",
409
+ validation: "required|min:18,max:65",
410
+ validationMessages: {
411
+ required: 'Applicant Age is required',
412
+ min: 'Invalid Age - must be between 18 and 65',
413
+ max: 'Invalid Age - must be between 18 and 65',
414
+ },
415
+ ...updates
416
+ }))
417
+ };
418
+
247
419
  const atFault = (scope) => sbsYesNoRadio({
248
420
  name: scope ? scope + ':' + 'At_Fault' : 'At_Fault',
249
421
  label: 'Were You at Fault?'
@@ -417,20 +589,6 @@ const doctorTreatment = (scope) => sbsYesNoRadio({
417
589
  label: 'Have You Recently Been Treated by a Doctor, Hospital or Clinic?',
418
590
  });
419
591
 
420
- const email = (scope) => sbsText({
421
- $formkit: 'email',
422
- name: scope ? scope + ':' + 'Email' : 'Email',
423
- label: 'Email Address:',
424
- placeholder: 'email@domain.com',
425
- autocomplete: 'email',
426
- 'data-tf-sensitive': 'false',
427
- validation: 'required|email',
428
- validationMessages: {
429
- required: 'Email is required',
430
- email: 'Invalid Email'
431
- }
432
- });
433
-
434
592
  const estateLegalServicesNeeded = (scope) => sbsSelect({
435
593
  name: scope ? scope + ':' + 'Estate_Legal_Services_Needed' : 'Estate_Legal_Services_Needed',
436
594
  label: "Legal Services Needed for Your Estate:",
@@ -444,17 +602,6 @@ const estateLegalServicesNeeded = (scope) => sbsSelect({
444
602
  ]
445
603
  });
446
604
 
447
- const firstName = (scope) => sbsText({
448
- $formkit: 'text',
449
- label: 'First Name:',
450
- placeholder: 'First',
451
- name: scope ? scope + ':' + 'First_Name' : 'First_Name',
452
- autocomplete: "given-name",
453
- validationMessages: {
454
- required: 'First Name is required'
455
- }
456
- });
457
-
458
605
  const haveAttorney$1 = (scope) => sbsYesNoRadio({
459
606
  name: scope ? scope + ':' + 'Have_Attorney' : 'Have_Attorney',
460
607
  label: 'Already Working with An Attorney?'
@@ -478,17 +625,6 @@ const incidentDateCenter = (scope) => verticalDate({
478
625
  name: scope ? scope + ':' + 'Incident_Date' : 'Incident_Date',
479
626
  });
480
627
 
481
- const lastName = (scope) => sbsText({
482
- $formkit: 'text',
483
- label: 'Last Name:',
484
- placeholder: 'Last',
485
- name: scope ? scope + ':' + 'Last_Name' : 'Last_Name',
486
- autocomplete: "family-name",
487
- validationMessages: {
488
- required: 'Last Name is required'
489
- }
490
- });
491
-
492
628
  const lawyerPaymentMethod$1 = (scope) => sbsSelect({
493
629
  name: scope ? scope + ':' + 'Lawyer_Payment_Method' : 'Lawyer_Payment_Method',
494
630
  label: 'How Will You Pay for Legal Fees if You Hire a Lawyer?',
@@ -521,69 +657,7 @@ const legalCrossSells$1 = () => col2Checkbox({
521
657
  help: 'Just hit "Next" if none apply',
522
658
  helpClass: 't-text-center !t-text-sm',
523
659
  validation: null,
524
- options: {
525
- if: '$getVal($get(form), "Type_Of_Legal_Problem") === "Auto and Car Accidents"',
526
- then: {
527
- 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
528
- 'Wills and Trusts': 'Need a Will or Trust',
529
- 'Workers Compensation': 'Workplace Injury',
530
- 'Power of Attorney': 'Update Power of Attorney',
531
- 'Divorce and Separation': 'Need a Divorce or Separation',
532
- 'Child Custody': 'Need help with Child Custody',
533
- },
534
- else: {
535
- if: '$getVal($get(form), "Type_Of_Legal_Problem") === "Personal Injury" || $getVal($get(form), "Type_Of_Legal_Problem") === "Workers Compensation"',
536
- then: {
537
- 'DUI and DWI': 'Involved in a DUI/DWI',
538
- 'Wills and Trusts': 'Need a Will or Trust',
539
- 'Power of Attorney': 'Update Power of Attorney',
540
- 'Divorce and Separation': 'Need a Divorce or Separation',
541
- 'Child Custody': 'Need help with Child Custody',
542
- // TODO add one more?
543
- },
544
- else: {
545
- if: '$getVal($get(form), "Type_Of_Legal_Problem") === "DUI and DWI"',
546
- then: {
547
- 'Personal Injury': 'Personal or Workplace Injury',
548
- 'Wills and Trusts': 'Need a Will or Trust',
549
- 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
550
- 'Power of Attorney': 'Update Power of Attorney',
551
- 'Divorce and Separation': 'Need a Divorce or Separation',
552
- 'Child Custody': 'Need help with Child Custody',
553
- },
554
- else: {
555
- if: '$getVal($get(form), "Type_Of_Legal_Problem") === "Wills and Trusts" || $getVal($get(form), "Type_Of_Legal_Problem") === "Probate and Estates" || $getVal($get(form), "Type_Of_Legal_Problem") === "Power of Attorney"',
556
- then: {
557
- 'Auto and Car Accidents': 'Injured in a Car Accident',
558
- 'Personal Injury': 'Personal or Workplace Injury',
559
- 'DUI and DWI': 'Involved in a DUI/DWI',
560
- 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
561
- 'Divorce and Separation': 'Need a Divorce or Separation',
562
- 'Child Custody': 'Need help with Child Custody',
563
- },
564
- else: {
565
- if: '$getVal($get(form), "Type_Of_Legal_Problem") === "Long Term Disability" || $getVal($get(form), "Type_Of_Legal_Problem") === "Social Security Disability and Insurance"',
566
- then: {
567
- 'Auto and Car Accidents': 'Injured in a Car Accident',
568
- 'DUI and DWI': 'Involved in a DUI/DWI',
569
- 'Wills and Trusts': 'Need a Will or Trust',
570
- 'Power of Attorney': 'Update Power of Attorney',
571
- 'Divorce and Separation': 'Need a Divorce or Separation',
572
- 'Child Custody': 'Need help with Child Custody',
573
- },
574
- else: {
575
- 'Auto and Car Accidents': 'Injured in a Car Accident',
576
- 'Personal Injury': 'Personal or Workplace Injury',
577
- 'DUI and DWI': 'Involved in a DUI/DWI',
578
- 'Wills and Trusts': 'Need a Will or Trust',
579
- 'Power of Attorney': 'Update Power of Attorney',
580
- 'Social Security Disability and Insurance': 'Interest in Disability Benefits',
581
- }
582
- }
583
- }
584
- }
585
- }
586
- }
660
+ options: '$getCrossSellOptions($get(form), $getVal($get(form), "Type_Of_Legal_Problem"))',
587
661
  });
588
662
 
589
663
  const maritalStatus = (scope) => sbsSelect({
@@ -608,24 +682,6 @@ const pendingChargesCenter = (scope) => verticalYesNoRadio({
608
682
  name: scope ? scope + ':' + 'Pending_Charges' : 'Pending_Charges',
609
683
  });
610
684
 
611
- const phone = (scope) => sbsText({
612
- $formkit: 'tel',
613
- name: scope ? scope + ':' + 'Primary_Phone' : 'Primary_Phone',
614
- label: 'Phone Number:',
615
- placeholder: '###-###-####',
616
- maxlength: 12,
617
- help: '10-digit phone number, hyphens optional',
618
- autocomplete: 'tel-national',
619
- 'data-tf-sensitive': 'false',
620
- validation: 'required|matches:/^[0-9]{3}-?[0-9]{3}-?[0-9]{4}$/|valid_phone',
621
- validationMessages: {
622
- required: 'Field is required',
623
- matches: 'Invalid Phone Format, use ###-###-####',
624
- valid_phone: 'Invalid Phone Number'
625
- },
626
- helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]"
627
- });
628
-
629
685
  const primaryInjury = (scope) => sbs2ColRadio({
630
686
  name: scope ? scope + ':' + 'Primary_Injury' : 'Primary_Injury',
631
687
  label: 'Primary Injury:',
@@ -747,25 +803,6 @@ const valueOfAssets = (scope) => sbsSelect({
747
803
  ]
748
804
  });
749
805
 
750
- const zipcodeCenter = (updates = {}, scope) => text({
751
- placeholder: '#####',
752
- help: updates.help ?? "We try to match you with local legal help",
753
- name: scope ? scope + ':' + 'Zip' : 'Zip',
754
- maxlength: 5,
755
- inputmode: "numeric",
756
- autocomplete: 'postal-code',
757
- validation: 'required|matches:/^[0-9]{5}$/',
758
- validationMessages: {
759
- required: 'Zip Code is required',
760
- matches: 'Invalid Zip Code'
761
- },
762
- wrapperClass: 't-flex t-justify-center',
763
- messagesClass: 't-flex t-justify-center',
764
- inputClass: 't-text-center',
765
- helpClass: 't-mt-2.5 !t-text-sm t-text-center'
766
- });
767
-
768
-
769
806
  // ------ Question Groups
770
807
 
771
808
  // NOTE: name must be unique within a form!
@@ -1029,13 +1066,20 @@ function verticalStepSubHeadline(updates) {
1029
1066
  function commentsStepHeadline(updates) {
1030
1067
  return {
1031
1068
  $el: 'h3',
1032
- children: updates.headline || 'Additional Case Details',
1069
+ children: updates.headline || 'Additional Details',
1033
1070
  attrs: {
1034
1071
  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 || '')
1035
1072
  }
1036
1073
  }
1037
1074
  }
1038
1075
 
1076
+ function commentsStepHeadlineLegal(updates) {
1077
+ return commentsStepHeadline({
1078
+ headline: updates.headline || 'Additional Case Details',
1079
+ headlineClass: updates.headlineClass
1080
+ })
1081
+ }
1082
+
1039
1083
  function firstAndLastStepHeadline(updates) {
1040
1084
  return {
1041
1085
  $el: 'h3',
@@ -1059,7 +1103,7 @@ function legalCrossSellsStepHeadline(updates) {
1059
1103
  function contactStepHeadline(updates) {
1060
1104
  return {
1061
1105
  $el: 'h3',
1062
- children: updates.headline || DEFAULT_FINAL_HEADLINE_DYNAMIC,
1106
+ children: updates.headline || DEFAULT_FINAL_HEADLINE_DYNAMIC_LEGAL,
1063
1107
  attrs: {
1064
1108
  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 || '')
1065
1109
  }
@@ -1069,7 +1113,7 @@ function contactStepHeadline(updates) {
1069
1113
  function contactStepSubHeadline(updates) {
1070
1114
  return {
1071
1115
  $el: 'h5',
1072
- children: updates.subheadline || DEFAULT_FINAL_SUBHEADLINE_DYNAMIC,
1116
+ children: updates.subheadline || DEFAULT_FINAL_SUBHEADLINE_DYNAMIC_LEGAL,
1073
1117
  attrs: {
1074
1118
  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 || '')
1075
1119
  }
@@ -1109,10 +1153,16 @@ const stepDefaults = (step, stepKey) => ({
1109
1153
  }
1110
1154
  });
1111
1155
 
1112
- function step(name, inputs, nextOnEnter = true, nextOnInput = false, stepKey = undefined, nextStepMap = undefined, autoFocus = undefined) {
1113
- if (typeof nextOnEnter === 'undefined') {
1114
- nextOnEnter = true;
1115
- }
1156
+ function step(name, inputs, updates = {}) {
1157
+ const {
1158
+ nextOnEnter = true,
1159
+ nextOnInput = false,
1160
+ stepKey = undefined,
1161
+ nextStepMap = undefined,
1162
+ triggerRedirectMap = undefined,
1163
+ autoFocus = undefined,
1164
+ } = updates;
1165
+
1116
1166
  if (inputs && inputs.length && (nextOnEnter || nextOnInput)) {
1117
1167
  const lastInput = findLastInput(inputs[inputs.length - 1]);
1118
1168
  if (lastInput && nextOnEnter === true) {
@@ -1132,6 +1182,7 @@ function step(name, inputs, nextOnEnter = true, nextOnInput = false, stepKey = u
1132
1182
  id: name,
1133
1183
  name: name,
1134
1184
  nextStepMap: nextStepMap,
1185
+ triggerRedirectMap: triggerRedirectMap,
1135
1186
  autoFocus: autoFocus,
1136
1187
  children: inputs
1137
1188
  }
@@ -1142,16 +1193,61 @@ function step(name, inputs, nextOnEnter = true, nextOnInput = false, stepKey = u
1142
1193
 
1143
1194
  // Single question step
1144
1195
  function sqstep(name, input, defaultHeadline, updates = {}) {
1196
+ if (typeof updates.nextOnInput === 'undefined') {
1197
+ updates.nextOnInput = true;
1198
+ }
1199
+
1145
1200
  return step(
1146
1201
  name,
1147
1202
  [
1148
1203
  verticalStepHeadline({ headline: updates.headline ?? defaultHeadline, headlineClass: updates.headlineClass }),
1149
1204
  ...Array.isArray(input) ? input : [input],
1150
1205
  ],
1151
- updates.nextOnEnter,
1152
- typeof updates.nextOnInput === 'undefined' ? true : updates.nextOnInput,
1153
- updates.stepKey,
1154
- updates.nextStepMap
1206
+ updates
1207
+ )
1208
+ }
1209
+
1210
+ function contactInfo(updates = {}) {
1211
+ return step(
1212
+ 'contactInfo',
1213
+ [
1214
+ contactStepHeadline(updates),
1215
+ contactStepSubHeadline(updates),
1216
+ trustedFormScript(),
1217
+ email(updates.scope),
1218
+ phone(updates.scope),
1219
+ TCPAConsent(updates.scope),
1220
+ secureIcon()
1221
+ ],
1222
+ { nextOnEnter: false }
1223
+ )
1224
+ }
1225
+
1226
+ function firstAndLastV3(updates = {}, scope) {
1227
+ return step(
1228
+ 'firstAndLast',
1229
+ [
1230
+ firstAndLastStepHeadline({
1231
+ headline: updates.headline ?? 'Who is looking for help?',
1232
+ headlineClass: updates.headlineClass
1233
+ }),
1234
+ verticalStepSubHeadline({
1235
+ subheadline: updates.subheadline ?? 'Note: we never share info without consent',
1236
+ subheadlineClass: '!t-text-sm !t-text-gray-500'
1237
+ }),
1238
+ firstName(scope),
1239
+ lastName(scope)
1240
+ ],
1241
+ updates
1242
+ )
1243
+ }
1244
+
1245
+ function zipcode(updates = {}) {
1246
+ return sqstep(
1247
+ 'zipcode',
1248
+ zipcode$1(updates.scope, true, updates),
1249
+ 'Please verify your Zip Code',
1250
+ updates
1155
1251
  )
1156
1252
  }
1157
1253
 
@@ -1159,10 +1255,10 @@ function commentsWithBankruptcy(updates = {}) {
1159
1255
  return step(
1160
1256
  'commentsWithBankruptcy',
1161
1257
  [
1162
- commentsStepHeadline(updates),
1258
+ commentsStepHeadlineLegal(updates),
1163
1259
  comments({
1164
- label: typeof updates.label === 'undefined' ? DEFAULT_COMMENTS_LABEL : updates.label,
1165
- placeholder: updates.placeholder || DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
1260
+ label: typeof updates.label === 'undefined' ? DEFAULT_COMMENTS_LABEL_LEGAL : updates.label,
1261
+ placeholder: updates.placeholder || DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC_LEGAL,
1166
1262
  inputClass: typeof updates.inputClass === 'undefined' ? '!t-h-32' : updates.inputClass,
1167
1263
  }, updates.scope),
1168
1264
  // TODO: needs scope support
@@ -1179,23 +1275,7 @@ function commentsWithBankruptcy(updates = {}) {
1179
1275
  ],
1180
1276
  }
1181
1277
  ],
1182
- false // nextOnEnter
1183
- )
1184
- }
1185
-
1186
- function contactInfo(updates = {}) {
1187
- return step(
1188
- 'contactInfo',
1189
- [
1190
- contactStepHeadline(updates),
1191
- contactStepSubHeadline(updates),
1192
- trustedFormScript(),
1193
- email(updates.scope),
1194
- phone(updates.scope),
1195
- TCPAConsent(updates.scope),
1196
- secureIcon()
1197
- ],
1198
- false, // nextOnEnter
1278
+ { nextOnEnter: false }
1199
1279
  )
1200
1280
  }
1201
1281
 
@@ -1211,33 +1291,10 @@ function criminalTOLP(updates = {}) {
1211
1291
  },
1212
1292
  criminalTOLPDisplayCenter(),
1213
1293
  ],
1214
- updates.nextOnEnter,
1215
- updates.nextOnInput,
1216
- updates.stepKey,
1217
- updates.nextStepMap
1218
- )
1219
- }
1220
-
1221
- function firstAndLastV3(updates = {}, scope) {
1222
- return step(
1223
- 'firstAndLast',
1224
- [
1225
- firstAndLastStepHeadline({
1226
- headline: updates.headline ?? 'Who is looking for help?',
1227
- headlineClass: updates.headlineClass
1228
- }),
1229
- verticalStepSubHeadline({
1230
- subheadline: updates.subheadline ?? 'Note: we never share info without consent',
1231
- subheadlineClass: '!t-text-sm !t-text-gray-500'
1232
- }),
1233
- firstName(scope),
1234
- lastName(scope)
1235
- ],
1236
- updates.nextOnEnter
1294
+ updates
1237
1295
  )
1238
1296
  }
1239
1297
 
1240
-
1241
1298
  function autoAndCarAccidentCrossSellQuestions(updates = {}) {
1242
1299
  return step(
1243
1300
  'autoAndCarAccidentCrossSellQuestions',
@@ -1254,7 +1311,7 @@ function autoAndCarAccidentCrossSellQuestions(updates = {}) {
1254
1311
  'CrossSell:Auto_and_Car_Accidents'
1255
1312
  )
1256
1313
  ],
1257
- updates.nextOnEnter
1314
+ updates
1258
1315
  )
1259
1316
  }
1260
1317
 
@@ -1273,7 +1330,7 @@ function childCustodyCrossSellQuestions(updates = {}) {
1273
1330
  'CrossSell:Child_Custody'
1274
1331
  )
1275
1332
  ],
1276
- updates.nextOnEnter
1333
+ updates
1277
1334
  )
1278
1335
  }
1279
1336
 
@@ -1292,7 +1349,7 @@ function divorceAndSeparationCrossSellQuestions(updates = {}) {
1292
1349
  'CrossSell:Divorce_and_Separation'
1293
1350
  )
1294
1351
  ],
1295
- updates.nextOnEnter
1352
+ updates
1296
1353
  )
1297
1354
  }
1298
1355
 
@@ -1311,7 +1368,7 @@ function duiAndDWICrossSellQuestions(updates = {}) {
1311
1368
  'CrossSell:DUI_and_DWI'
1312
1369
  )
1313
1370
  ],
1314
- updates.nextOnEnter
1371
+ updates
1315
1372
  )
1316
1373
  }
1317
1374
 
@@ -1331,7 +1388,7 @@ function ssdiCrossSellQuestions(updates = {}) {
1331
1388
  'CrossSell:Social_Security_Disability_and_Insurance'
1332
1389
  )
1333
1390
  ],
1334
- updates.nextOnEnter
1391
+ updates
1335
1392
  )
1336
1393
  }
1337
1394
 
@@ -1351,7 +1408,7 @@ function personalInjuryCrossSellQuestions(updates = {}) {
1351
1408
  'CrossSell:Personal_Injury'
1352
1409
  )
1353
1410
  ],
1354
- updates.nextOnEnter
1411
+ updates
1355
1412
  )
1356
1413
  }
1357
1414
 
@@ -1370,7 +1427,7 @@ function powerOfAttorneyCrossSellQuestions(updates = {}) {
1370
1427
  'CrossSell:Power_of_Attorney'
1371
1428
  )
1372
1429
  ],
1373
- updates.nextOnEnter
1430
+ updates
1374
1431
  )
1375
1432
  }
1376
1433
 
@@ -1389,7 +1446,7 @@ function willsAndTrustsCrossSellQuestions(updates = {}) {
1389
1446
  'CrossSell:Wills_and_Trusts'
1390
1447
  )
1391
1448
  ],
1392
- updates.nextOnEnter
1449
+ updates
1393
1450
  )
1394
1451
  }
1395
1452
 
@@ -1409,29 +1466,19 @@ function workersCompensationCrossSellQuestions(updates = {}) {
1409
1466
  'CrossSell:Workers_Compensation'
1410
1467
  )
1411
1468
  ],
1412
- updates.nextOnEnter
1469
+ updates
1413
1470
  )
1414
1471
  }
1415
1472
 
1416
1473
  function legalCrossSells(updates = {}) {
1474
+ updates.nextOnInput = false;
1475
+ updates.stepKey = '$get(Type_Of_Legal_Problem).value';
1417
1476
  return step(
1418
1477
  'legalCrossSells',
1419
1478
  [
1420
1479
  legalCrossSellsStepHeadline(updates),
1421
1480
  legalCrossSells$1(),
1422
1481
  ],
1423
- updates.nextOnEnter,
1424
- false,
1425
- // Note: we should probably scope this stepKey to this step name
1426
- '$get(Type_Of_Legal_Problem).value'
1427
- )
1428
- }
1429
-
1430
- function zipcode(updates = {}) {
1431
- return sqstep(
1432
- 'zipcode',
1433
- zipcodeCenter(updates, updates.scope),
1434
- 'Please verify your Zip Code',
1435
1482
  updates
1436
1483
  )
1437
1484
  }
@@ -1683,9 +1730,7 @@ function formProps(updates) {
1683
1730
  return props
1684
1731
  }
1685
1732
 
1686
- const metaDefaults = {
1687
- tcpaLanguage: TCPA_LANGUAGE
1688
- };
1733
+ const metaDefaults = {};
1689
1734
 
1690
1735
  function metaProps(updates) {
1691
1736
  const data = merge(
@@ -1698,7 +1743,7 @@ function metaProps(updates) {
1698
1743
  }
1699
1744
  }
1700
1745
 
1701
- function defaultMetaProps(tolps = null) {
1746
+ function defaultMetaPropsLegal(tolps = null) {
1702
1747
  let commentsPlaceholders = TOLPCommentsPlaceholders;
1703
1748
  let finalHeadlines = TOLPFinalHeadlines;
1704
1749
  let finalSubHeadlines = TOLPFinalSubHeadlines;
@@ -1708,12 +1753,13 @@ function defaultMetaProps(tolps = null) {
1708
1753
  finalSubHeadlines = filterMapByKey(TOLPFinalSubHeadlines, tolps);
1709
1754
  }
1710
1755
  return metaProps({
1711
- defaultCommentsPlaceholder: DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC,
1756
+ tcpaLanguage: TCPA_LANGUAGE_LEGAL,
1757
+ defaultCommentsPlaceholder: DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC_LEGAL,
1712
1758
  commentsPlaceholders: commentsPlaceholders,
1713
- defaultFinalHeadline: DEFAULT_FINAL_HEADLINE,
1759
+ defaultFinalHeadline: DEFAULT_FINAL_HEADLINE_LEGAL,
1714
1760
  finalHeadlines: finalHeadlines,
1715
- defaultFinalSubHeadline: DEFAULT_FINAL_SUBHEADLINE,
1716
- finalSubHeadlines: finalSubHeadlines,
1761
+ defaultFinalSubHeadline: DEFAULT_FINAL_SUBHEADLINE_LEGAL,
1762
+ finalSubHeadlines: finalSubHeadlines
1717
1763
  })
1718
1764
  }
1719
1765
 
@@ -2282,361 +2328,401 @@ const nextStepsLegalNoHA = [
2282
2328
  ];
2283
2329
 
2284
2330
  const nextStepsMapGeneralLegal = {
2285
- 'Type_Of_Legal_Problem': {
2286
- 'Adoption': [
2287
- 'maritalStatus',
2288
- 'haveChildren',
2289
- ...nextStepsLegalDefaultLPM
2290
- ],
2291
- 'Asbestos and Mesothelioma': [
2292
- 'incidentDate',
2293
- 'doctorTreatment',
2294
- ...nextStepsLegalDefault
2295
- ],
2296
- 'Auto and Car Accidents': [
2297
- 'incidentDate',
2298
- 'atFault',
2299
- 'primaryInjury',
2300
- 'doctorTreatment',
2301
- 'policeReportFiled',
2302
- ...nextStepsLegalNoDOI
2303
- ],
2304
- 'Bankruptcy': [
2305
- 'totalMonthlyIncome',
2306
- 'totalDebt',
2307
- 'ownRealEstate',
2308
- 'valueOfAssets',
2309
- ...nextStepsLegalDefault
2310
- ],
2311
- 'Business Lawyers': [
2312
- 'businessServices',
2313
- 'businessType',
2314
- 'numEmployeesOfBusiness',
2315
- ...nextStepsLegalDefault
2316
- ],
2317
- 'Child Custody': [
2318
- 'childRelationship',
2319
- 'childHome',
2320
- 'childPrimaryCaregiver',
2321
- ...nextStepsLegalDefaultLPM
2322
- ],
2323
- 'Child Support': [
2324
- 'childRelationship',
2325
- 'childHome',
2326
- 'childPrimaryCaregiver',
2327
- ...nextStepsLegalDefaultLPM
2328
- ],
2329
- 'Civil Rights and Discrimination': [
2330
- 'civilRightsType',
2331
- ...nextStepsLegalDefault
2332
- ],
2333
- 'Civil Lawsuit': [
2334
- 'civilDefense',
2335
- 'lawsuitOtherParty',
2336
- ...nextStepsLegalDefault
2337
- ],
2338
- 'File a Lawsuit': [
2339
- 'civilLawsuitTOLPDisplay',
2340
- 'lawsuitOtherParty',
2341
- ...nextStepsLegalDefault
2342
- ],
2343
- 'Defend a Lawsuit': [
2331
+ values: {
2332
+ 'Type_Of_Legal_Problem': {
2333
+ 'Adoption': [
2334
+ 'maritalStatus',
2335
+ 'haveChildren',
2336
+ ...nextStepsLegalDefaultLPM
2337
+ ],
2338
+ 'Asbestos and Mesothelioma': [
2339
+ 'incidentDate',
2340
+ 'doctorTreatment',
2341
+ ...nextStepsLegalDefault
2342
+ ],
2343
+ 'Auto and Car Accidents': [
2344
+ 'incidentDate',
2345
+ 'atFault',
2346
+ 'primaryInjury',
2347
+ 'doctorTreatment',
2348
+ 'policeReportFiled',
2349
+ ...nextStepsLegalNoDOI
2350
+ ],
2351
+ 'Bankruptcy': [
2352
+ 'totalMonthlyIncome',
2353
+ 'totalDebt',
2354
+ 'ownRealEstate',
2355
+ 'valueOfAssets',
2356
+ ...nextStepsLegalDefault
2357
+ ],
2358
+ 'Business Lawyers': [
2359
+ 'businessServices',
2360
+ 'businessType',
2361
+ 'numEmployeesOfBusiness',
2362
+ ...nextStepsLegalDefault
2363
+ ],
2364
+ 'Child Custody': [
2365
+ 'childRelationship',
2366
+ 'childHome',
2367
+ 'childPrimaryCaregiver',
2368
+ ...nextStepsLegalDefaultLPM
2369
+ ],
2370
+ 'Child Support': [
2371
+ 'childRelationship',
2372
+ 'childHome',
2373
+ 'childPrimaryCaregiver',
2374
+ ...nextStepsLegalDefaultLPM
2375
+ ],
2376
+ 'Civil Rights and Discrimination': [
2377
+ 'civilRightsType',
2378
+ ...nextStepsLegalDefault
2379
+ ],
2380
+ 'Civil Lawsuit': [
2381
+ 'civilDefense',
2382
+ 'lawsuitOtherParty',
2383
+ ...nextStepsLegalDefault
2384
+ ],
2385
+ 'File a Lawsuit': [
2386
+ 'civilLawsuitTOLPDisplay',
2387
+ 'lawsuitOtherParty',
2388
+ ...nextStepsLegalDefault
2389
+ ],
2390
+ 'Defend a Lawsuit': [
2391
+ 'lawsuitOtherParty',
2392
+ ...nextStepsLegalDefault
2393
+ ],
2394
+ 'Consumer Lawyers': [
2395
+ 'consumerLawyerType',
2396
+ 'incidentDate',
2397
+ 'lawsuitOtherParty',
2398
+ ...nextStepsLegalDefault
2399
+ ],
2400
+ 'Criminal and Felony': [
2401
+ 'criminalTOLPDisplay',
2402
+ 'crimeCommittedDate',
2403
+ 'roleInMatterCriminal',
2404
+ 'pendingCharges',
2405
+ ...nextStepsLegalDefaultLPM
2406
+ ],
2407
+ 'Debt and Collections': [
2408
+ 'totalMonthlyIncome',
2409
+ 'totalDebt',
2410
+ 'ownRealEstate',
2411
+ 'valueOfAssets',
2412
+ ...nextStepsLegalDefault
2413
+ ],
2414
+ 'Divorce and Separation': [
2415
+ 'maritalStatus',
2416
+ 'haveChildren',
2417
+ ...nextStepsLegalDefaultLPM
2418
+ ],
2419
+ 'DUI and DWI': [
2420
+ 'incidentDate',
2421
+ 'priorAlcoholOffenses',
2422
+ 'typeOfAlcoholTest',
2423
+ 'bloodContentAlcoholTest',
2424
+ 'pendingCharges',
2425
+ ...nextStepsLegalDefault
2426
+ ],
2427
+ 'Employment and Workplace': [
2428
+ 'employmentAndWorkplaceTOLPDisplay',
2429
+ 'numEmployeesOfBusiness',
2430
+ 'employerType',
2431
+ 'employeeAtCompany',
2432
+ ...nextStepsLegalDefault
2433
+ ],
2434
+ 'Expungement': [
2435
+ 'incidentDate',
2436
+ 'criminalChargeType',
2437
+ ...nextStepsLegalDefaultLPM
2438
+ ],
2439
+ 'Family Issues': [
2440
+ 'maritalStatus',
2441
+ 'haveChildren',
2442
+ ...nextStepsLegalDefaultLPM
2443
+ ],
2444
+ 'Foreclosure': [
2445
+ 'ownRealEstate',
2446
+ 'typeOfProperty',
2447
+ 'amountPaymentsPastDue',
2448
+ 'loanAmount',
2449
+ 'defaultNotice',
2450
+ ...nextStepsLegalDefault
2451
+ ],
2452
+ 'Guardianship': [
2453
+ 'maritalStatus',
2454
+ 'haveChildren',
2455
+ ...nextStepsLegalDefaultLPM
2456
+ ],
2457
+ 'Immigration and Visas': [
2458
+ 'countryOfCitizenship',
2459
+ 'immigrationLocation',
2460
+ 'immigrationEntry',
2461
+ 'immigrationType',
2462
+ 'immigrationStatus',
2463
+ 'immigrationDetails',
2464
+ ...nextStepsLegalDefault
2465
+ ],
2466
+ 'Landlord and Tenant': [
2467
+ 'landlordTenantIssue',
2468
+ 'landlordTenantParty',
2469
+ ...nextStepsLegalDefault
2470
+ ],
2471
+ 'Lemon Law': [
2472
+ 'incidentDate',
2473
+ 'lawsuitOtherParty',
2474
+ ...nextStepsLegalDefault
2475
+ ],
2476
+ 'Long Term Disability': [
2477
+ 'applicantOccupation',
2478
+ 'applicantAge',
2479
+ 'applicantLTDisabilityPolicy',
2480
+ 'applicantDisabilityHowObtain',
2481
+ 'applicantPreviouslyAppliedLtdBenefits',
2482
+ 'applicantReceivedDisabilityBenefits',
2483
+ 'applicantMonthlySalary',
2484
+ ...nextStepsLegalNoDOI
2485
+ ],
2486
+ 'Medical Malpractice': [
2487
+ 'incidentDate',
2488
+ 'claimStatus',
2489
+ 'doctorTreatment',
2490
+ 'medicalMalpracticeInjuries',
2491
+ ...nextStepsLegalDefault
2492
+ ],
2493
+ 'Patents and Intellectual Property': [
2494
+ 'patentAssistanceType',
2495
+ 'patentFor',
2496
+ ...nextStepsLegalDefault
2497
+ ],
2498
+ 'Personal Injury': [
2499
+ 'incidentDate',
2500
+ 'claimStatus',
2501
+ 'atFault',
2502
+ 'primaryInjury',
2503
+ 'doctorTreatment',
2504
+ ...nextStepsLegalNoDOI
2505
+ ],
2506
+ 'Probate and Estates': [
2507
+ 'valueOfAssets',
2508
+ 'typeOfAssets',
2509
+ 'roleInMatterProbate',
2510
+ 'estateLegalServicesNeeded',
2511
+ ...nextStepsLegalDefault
2512
+ ],
2513
+ 'Property Damage': [
2514
+ 'realEstateArea',
2515
+ 'wouldLikeLawyerTo',
2516
+ ...nextStepsLegalDefault
2517
+ ],
2518
+ 'Real Estate': [
2519
+ 'realEstateTOLPDisplay',
2520
+ 'realEstateArea',
2521
+ 'wouldLikeLawyerTo',
2522
+ ...nextStepsLegalDefault
2523
+ ],
2524
+ 'Social Security Disability and Insurance': [
2525
+ 'applicantAge',
2526
+ 'disabilityConditionStopWork',
2527
+ 'disabilityWorkHistory',
2528
+ 'socialSecurityDisabilityReceivingBenefits',
2529
+ 'doctorTreatment',
2530
+ ...nextStepsLegalNoDOI
2531
+ ],
2532
+ 'Tax and IRS': [
2533
+ 'totalDebt',
2534
+ 'taxProblemDetails',
2535
+ 'taxLevel',
2536
+ 'taxIssueType',
2537
+ ...nextStepsLegalDefault
2538
+ ],
2539
+ 'Traffic and Tickets': [
2540
+ 'driversLicenseType',
2541
+ 'trafficViolations',
2542
+ 'haveCourtDate',
2543
+ ...nextStepsLegalDefault
2544
+ ],
2545
+ 'Unemployment': [
2546
+ 'numEmployeesOfBusiness',
2547
+ 'employerType',
2548
+ ...nextStepsLegalNoHA
2549
+ ],
2550
+ 'Victim of a Crime': [
2551
+ 'crimeCommittedDate',
2552
+ 'roleInMatterCriminal',
2553
+ 'pendingCharges',
2554
+ ...nextStepsLegalDefaultLPM
2555
+ ],
2556
+ 'Wills and Trusts': [
2557
+ 'valueOfAssets',
2558
+ 'typeOfAssets',
2559
+ 'roleInMatterProbate',
2560
+ 'estateLegalServicesNeeded',
2561
+ ...nextStepsLegalDefault
2562
+ ],
2563
+ 'Workers Compensation': [
2564
+ 'incidentDate',
2565
+ 'claimStatus',
2566
+ 'primaryInjury',
2567
+ 'causeOfInjury',
2568
+ 'doctorTreatment',
2569
+ ...nextStepsLegalNoDOI
2570
+ ],
2571
+ 'Workplace Harassment': [
2572
+ 'numEmployeesOfBusiness',
2573
+ 'employerType',
2574
+ 'employeeAtCompany',
2575
+ ...nextStepsLegalDefault
2576
+ ],
2577
+ 'Workplace Discrimination': [
2578
+ 'numEmployeesOfBusiness',
2579
+ 'employerType',
2580
+ 'employeeAtCompany',
2581
+ ...nextStepsLegalDefault
2582
+ ],
2583
+ 'Wrongful Death': [
2584
+ 'incidentDate',
2585
+ 'relationshipToVictim',
2586
+ 'criminalChargesFiled',
2587
+ 'causeOfDeath',
2588
+ ...nextStepsLegalNoDOI
2589
+ ],
2590
+ 'Wrongful Termination': [
2591
+ 'numEmployeesOfBusiness',
2592
+ 'employerType',
2593
+ ...nextStepsLegalDefault
2594
+ ],
2595
+ },
2596
+ '*': nextStepsLegalDefault
2597
+ }
2598
+ };
2599
+
2600
+ const TOLPNextSteps = nextStepsMapGeneralLegal["values"]["Type_Of_Legal_Problem"];
2601
+
2602
+ ({
2603
+ values: {
2604
+ 'Civil_Defense': {
2605
+ 'Yes': TOLPNextSteps["Defend a Lawsuit"],
2606
+ 'No': TOLPNextSteps["File a Lawsuit"],
2607
+ },
2608
+ '*': [
2344
2609
  'lawsuitOtherParty',
2345
2610
  ...nextStepsLegalDefault
2346
- ],
2347
- 'Consumer Lawyers': [
2348
- 'consumerLawyerType',
2349
- 'incidentDate',
2611
+ ]
2612
+ }
2613
+ });
2614
+
2615
+ ({
2616
+ values: {
2617
+ 'Type_Of_Legal_Problem': {
2618
+ 'Defend a Lawsuit': TOLPNextSteps["Defend a Lawsuit"],
2619
+ 'File a Lawsuit': TOLPNextSteps["File a Lawsuit"],
2620
+ },
2621
+ '*': [
2350
2622
  'lawsuitOtherParty',
2351
2623
  ...nextStepsLegalDefault
2352
- ],
2353
- 'Criminal and Felony': [
2354
- 'criminalTOLPDisplay',
2355
- 'crimeCommittedDate',
2356
- 'roleInMatterCriminal',
2357
- 'pendingCharges',
2358
- ...nextStepsLegalDefaultLPM
2359
- ],
2360
- 'Debt and Collections': [
2361
- 'totalMonthlyIncome',
2362
- 'totalDebt',
2363
- 'ownRealEstate',
2364
- 'valueOfAssets',
2365
- ...nextStepsLegalDefault
2366
- ],
2367
- 'Divorce and Separation': [
2368
- 'maritalStatus',
2369
- 'haveChildren',
2370
- ...nextStepsLegalDefaultLPM
2371
- ],
2372
- 'DUI and DWI': [
2373
- 'incidentDate',
2374
- 'priorAlcoholOffenses',
2375
- 'typeOfAlcoholTest',
2376
- 'bloodContentAlcoholTest',
2377
- 'pendingCharges',
2378
- ...nextStepsLegalDefault
2379
- ],
2380
- 'Employment and Workplace': [
2381
- 'employmentAndWorkplaceTOLPDisplay',
2382
- 'numEmployeesOfBusiness',
2383
- 'employerType',
2384
- 'employeeAtCompany',
2385
- ...nextStepsLegalDefault
2386
- ],
2387
- 'Expungement': [
2388
- 'incidentDate',
2389
- 'criminalChargeType',
2390
- ...nextStepsLegalDefaultLPM
2391
- ],
2392
- 'Family Issues': [
2393
- 'maritalStatus',
2394
- 'haveChildren',
2395
- ...nextStepsLegalDefaultLPM
2396
- ],
2397
- 'Foreclosure': [
2398
- 'ownRealEstate',
2399
- 'typeOfProperty',
2400
- 'amountPaymentsPastDue',
2401
- 'loanAmount',
2402
- 'defaultNotice',
2403
- ...nextStepsLegalDefault
2404
- ],
2405
- 'Guardianship': [
2406
- 'maritalStatus',
2407
- 'haveChildren',
2408
- ...nextStepsLegalDefaultLPM
2409
- ],
2410
- 'Immigration and Visas': [
2411
- 'countryOfCitizenship',
2412
- 'immigrationLocation',
2413
- 'immigrationEntry',
2414
- 'immigrationType',
2415
- 'immigrationStatus',
2416
- 'immigrationDetails',
2417
- ...nextStepsLegalDefault
2418
- ],
2419
- 'Landlord and Tenant': [
2420
- 'landlordTenantIssue',
2421
- 'landlordTenantParty',
2422
- ...nextStepsLegalDefault
2423
- ],
2424
- 'Lemon Law': [
2425
- 'incidentDate',
2624
+ ]
2625
+ }
2626
+ });
2627
+
2628
+ ({
2629
+ values: {
2630
+ 'Type_Of_Legal_Problem_Display': {
2631
+ 'Automobile Accident': TOLPNextSteps["Auto and Car Accidents"],
2632
+ 'Contract Disputes': TOLPNextSteps["Business Lawyers"],
2633
+ 'Dog Bite': TOLPNextSteps["Personal Injury"],
2634
+ 'Employment and Workplace': TOLPNextSteps["Employment and Workplace"],
2635
+ 'Fraud': TOLPNextSteps["Consumer Lawyers"],
2636
+ 'Medical Malpractice': TOLPNextSteps["Medical Malpractice"],
2637
+ 'Personal Injury': TOLPNextSteps["Personal Injury"],
2638
+ 'Property Damage': TOLPNextSteps["Property Damage"],
2639
+ 'Real Estate': TOLPNextSteps["Real Estate"],
2640
+ 'Not Sure or Other': nextStepsMapGeneralLegal["values"]["*"],
2641
+ },
2642
+ '*': [
2426
2643
  'lawsuitOtherParty',
2427
2644
  ...nextStepsLegalDefault
2428
- ],
2429
- 'Long Term Disability': [
2430
- 'applicantOccupation',
2431
- 'applicantAge',
2432
- 'applicantLTDisabilityPolicy',
2433
- 'applicantDisabilityHowObtain',
2434
- 'applicantPreviouslyAppliedLtdBenefits',
2435
- 'applicantReceivedDisabilityBenefits',
2436
- 'applicantMonthlySalary',
2437
- ...nextStepsLegalNoDOI
2438
- ],
2439
- 'Medical Malpractice': [
2440
- 'incidentDate',
2441
- 'claimStatus',
2442
- 'doctorTreatment',
2443
- 'medicalMalpracticeInjuries',
2444
- ...nextStepsLegalDefault
2445
- ],
2446
- 'Patents and Intellectual Property': [
2447
- 'patentAssistanceType',
2448
- 'patentFor',
2449
- ...nextStepsLegalDefault
2450
- ],
2451
- 'Personal Injury': [
2452
- 'incidentDate',
2453
- 'claimStatus',
2454
- 'atFault',
2455
- 'primaryInjury',
2456
- 'doctorTreatment',
2457
- ...nextStepsLegalNoDOI
2458
- ],
2459
- 'Probate and Estates': [
2460
- 'valueOfAssets',
2461
- 'typeOfAssets',
2462
- 'roleInMatterProbate',
2463
- 'estateLegalServicesNeeded',
2464
- ...nextStepsLegalDefault
2465
- ],
2466
- 'Property Damage': [
2467
- 'realEstateArea',
2468
- 'wouldLikeLawyerTo',
2469
- ...nextStepsLegalDefault
2470
- ],
2471
- 'Real Estate': [
2472
- 'realEstateTOLPDisplay',
2473
- 'realEstateArea',
2474
- 'wouldLikeLawyerTo',
2475
- ...nextStepsLegalDefault
2476
- ],
2477
- 'Social Security Disability and Insurance': [
2478
- 'applicantAge',
2479
- 'disabilityConditionStopWork',
2480
- 'disabilityWorkHistory',
2481
- 'socialSecurityDisabilityReceivingBenefits',
2482
- 'doctorTreatment',
2483
- ...nextStepsLegalNoDOI
2484
- ],
2485
- 'Tax and IRS': [
2486
- 'totalDebt',
2487
- 'taxProblemDetails',
2488
- 'taxLevel',
2489
- 'taxIssueType',
2490
- ...nextStepsLegalDefault
2491
- ],
2492
- 'Traffic and Tickets': [
2493
- 'driversLicenseType',
2494
- 'trafficViolations',
2495
- 'haveCourtDate',
2496
- ...nextStepsLegalDefault
2497
- ],
2498
- 'Unemployment': [
2499
- 'numEmployeesOfBusiness',
2500
- 'employerType',
2501
- ...nextStepsLegalNoHA
2502
- ],
2503
- 'Victim of a Crime': [
2645
+ ]
2646
+ }
2647
+ });
2648
+
2649
+ const nextStepsMapCriminalTOLPDisplay = {
2650
+ values: {
2651
+ 'Type_Of_Legal_Problem_Display': {
2652
+ 'Victim of a Crime': TOLPNextSteps["Victim of a Crime"],
2653
+ 'DUI and DWI': TOLPNextSteps["DUI and DWI"],
2654
+ 'Expungement': TOLPNextSteps["Expungement"],
2655
+ 'Not Sure or Other': nextStepsMapGeneralLegal["values"]["*"],
2656
+ },
2657
+ '*': [
2504
2658
  'crimeCommittedDate',
2505
2659
  'roleInMatterCriminal',
2506
2660
  'pendingCharges',
2507
2661
  ...nextStepsLegalDefaultLPM
2508
- ],
2509
- 'Wills and Trusts': [
2510
- 'valueOfAssets',
2511
- 'typeOfAssets',
2512
- 'roleInMatterProbate',
2513
- 'estateLegalServicesNeeded',
2514
- ...nextStepsLegalDefault
2515
- ],
2516
- 'Workers Compensation': [
2517
- 'incidentDate',
2518
- 'claimStatus',
2519
- 'primaryInjury',
2520
- 'causeOfInjury',
2521
- 'doctorTreatment',
2522
- ...nextStepsLegalNoDOI
2523
- ],
2524
- 'Workplace Harassment': [
2525
- 'numEmployeesOfBusiness',
2526
- 'employerType',
2527
- 'employeeAtCompany',
2528
- ...nextStepsLegalDefault
2529
- ],
2530
- 'Workplace Discrimination': [
2662
+ ]
2663
+ }
2664
+ };
2665
+
2666
+ ({
2667
+ values: {
2668
+ 'Type_Of_Legal_Problem_Display': {
2669
+ 'Wrongful Termination': TOLPNextSteps["Wrongful Termination"],
2670
+ 'Workers Compensation': TOLPNextSteps["Workers Compensation"],
2671
+ 'Personal Injury': TOLPNextSteps["Personal Injury"],
2672
+ 'Unemployment': TOLPNextSteps["Unemployment"],
2673
+ },
2674
+ '*': [
2531
2675
  'numEmployeesOfBusiness',
2532
2676
  'employerType',
2533
2677
  'employeeAtCompany',
2534
2678
  ...nextStepsLegalDefault
2535
- ],
2536
- 'Wrongful Death': [
2537
- 'incidentDate',
2538
- 'relationshipToVictim',
2539
- 'criminalChargesFiled',
2540
- 'causeOfDeath',
2541
- ...nextStepsLegalNoDOI
2542
- ],
2543
- 'Wrongful Termination': [
2544
- 'numEmployeesOfBusiness',
2545
- 'employerType',
2546
- ...nextStepsLegalDefault
2547
- ],
2548
- },
2549
- '*': nextStepsLegalDefault
2550
- };
2551
-
2552
- const TOLPNextSteps = nextStepsMapGeneralLegal["Type_Of_Legal_Problem"];
2553
-
2554
- ({
2555
- 'Civil_Defense': {
2556
- 'Yes': TOLPNextSteps["Defend a Lawsuit"],
2557
- 'No': TOLPNextSteps["File a Lawsuit"],
2558
- },
2559
- '*': [
2560
- 'lawsuitOtherParty',
2561
- ...nextStepsLegalDefault
2562
- ]
2563
- });
2564
-
2565
- ({
2566
- 'Type_Of_Legal_Problem': {
2567
- 'Defend a Lawsuit': TOLPNextSteps["Defend a Lawsuit"],
2568
- 'File a Lawsuit': TOLPNextSteps["File a Lawsuit"],
2569
- },
2570
- '*': [
2571
- 'lawsuitOtherParty',
2572
- ...nextStepsLegalDefault
2573
- ]
2679
+ ]
2680
+ }
2574
2681
  });
2575
2682
 
2576
2683
  ({
2577
- 'Type_Of_Legal_Problem_Display': {
2578
- 'Automobile Accident': TOLPNextSteps["Auto and Car Accidents"],
2579
- 'Contract Disputes': TOLPNextSteps["Business Lawyers"],
2580
- 'Dog Bite': TOLPNextSteps["Personal Injury"],
2581
- 'Employment and Workplace': TOLPNextSteps["Employment and Workplace"],
2582
- 'Fraud': TOLPNextSteps["Consumer Lawyers"],
2583
- 'Medical Malpractice': TOLPNextSteps["Medical Malpractice"],
2584
- 'Personal Injury': TOLPNextSteps["Personal Injury"],
2585
- 'Property Damage': TOLPNextSteps["Property Damage"],
2586
- 'Real Estate': TOLPNextSteps["Real Estate"],
2587
- 'Not Sure or Other': nextStepsMapGeneralLegal["*"],
2588
- },
2589
- '*': [
2590
- 'lawsuitOtherParty',
2591
- ...nextStepsLegalDefault
2592
- ]
2684
+ values: {
2685
+ 'Type_Of_Legal_Problem_Display': {
2686
+ 'Foreclosure': TOLPNextSteps["Foreclosure"],
2687
+ 'Landlord and Tenant': TOLPNextSteps["Landlord and Tenant"],
2688
+ 'Wills, Trusts, and Estates': TOLPNextSteps["Wills and Trusts"],
2689
+ 'Property Damage': TOLPNextSteps['Property Damage'],
2690
+ },
2691
+ '*': [
2692
+ 'realEstateArea',
2693
+ 'wouldLikeLawyerTo',
2694
+ ...nextStepsLegalDefault
2695
+ ]
2696
+ }
2593
2697
  });
2594
2698
 
2595
- const nextStepsMapCriminalTOLPDisplay = {
2596
- 'Type_Of_Legal_Problem_Display': {
2597
- 'Victim of a Crime': TOLPNextSteps["Victim of a Crime"],
2598
- 'DUI and DWI': TOLPNextSteps["DUI and DWI"],
2599
- 'Expungement': TOLPNextSteps["Expungement"],
2600
- 'Not Sure or Other': nextStepsMapGeneralLegal["*"],
2699
+ const nextStepsMapLegalCrossSells = {
2700
+ values: {
2701
+ 'Legal_CrossSells': {
2702
+ 'Auto and Car Accidents': ['autoAndCarAccidentCrossSellQuestions'],
2703
+ 'Personal Injury': ['personalInjuryCrossSellQuestions'],
2704
+ 'Workers Compensation': ['workersCompensationCrossSellQuestions'],
2705
+ 'DUI and DWI': ['duiAndDWICrossSellQuestions'],
2706
+ 'Long Term Disability': ['longTermDisabilityCrossSellQuestions'],
2707
+ 'Social Security Disability and Insurance': ['ssdiCrossSellQuestions'],
2708
+ 'Bankruptcy': ['bankruptcyCrossSellQuestions'],
2709
+ 'Power of Attorney': ['powerOfAttorneyCrossSellQuestions'],
2710
+ 'Wills and Trusts': ['willsAndTrustsCrossSellQuestions'],
2711
+ 'Divorce and Separation': ['divorceAndSeparationCrossSellQuestions'],
2712
+ 'Child Custody': ['childCustodyCrossSellQuestions'],
2713
+ },
2714
+ '*': ['firstAndLast', 'contactInfo'],
2601
2715
  },
2602
- '*': [
2603
- 'crimeCommittedDate',
2604
- 'roleInMatterCriminal',
2605
- 'pendingCharges',
2606
- ...nextStepsLegalDefaultLPM
2607
- ]
2716
+
2717
+ // NOTE: this assumes a certain placement of the cross sell question
2718
+ // in the form flow.
2719
+ appendSteps: ['firstAndLast', 'contactInfo'],
2720
+ matchesAllowed: 1,
2608
2721
  };
2609
2722
 
2610
- ({
2611
- 'Type_Of_Legal_Problem_Display': {
2612
- 'Wrongful Termination': TOLPNextSteps["Wrongful Termination"],
2613
- 'Workers Compensation': TOLPNextSteps["Workers Compensation"],
2614
- 'Personal Injury': TOLPNextSteps["Personal Injury"],
2615
- 'Unemployment': TOLPNextSteps["Unemployment"],
2616
- },
2617
- '*': [
2618
- 'numEmployeesOfBusiness',
2619
- 'employerType',
2620
- 'employeeAtCompany',
2621
- ...nextStepsLegalDefault
2622
- ]
2623
- });
2624
-
2625
- ({
2626
- 'Type_Of_Legal_Problem_Display': {
2627
- 'Foreclosure': TOLPNextSteps["Foreclosure"],
2628
- 'Landlord and Tenant': TOLPNextSteps["Landlord and Tenant"],
2629
- 'Wills, Trusts, and Estates': TOLPNextSteps["Wills and Trusts"],
2630
- 'Property Damage': TOLPNextSteps['Property Damage'],
2631
- },
2632
- '*': [
2633
- 'realEstateArea',
2634
- 'wouldLikeLawyerTo',
2635
- ...nextStepsLegalDefault
2636
- ]
2637
- });
2723
+ const legalCrossSellOptionMap = CROSS_SELL_OPTION_MAP_LEGAL;
2638
2724
 
2639
- const meta = defaultMetaProps();
2725
+ const meta = defaultMetaPropsLegal();
2640
2726
 
2641
2727
  meta.data.dynamicSchema = [
2642
2728
  bloodContentAlcoholTest(),
@@ -2662,7 +2748,8 @@ meta.data.dynamicSchema = [
2662
2748
  headlineClass: '!t-text-dark',
2663
2749
  }),
2664
2750
  legalCrossSells({
2665
- headlineClass: '!t-text-dark'
2751
+ headlineClass: '!t-text-dark',
2752
+ nextStepMap: nextStepsMapLegalCrossSells,
2666
2753
  }),
2667
2754
  autoAndCarAccidentCrossSellQuestions(),
2668
2755
  personalInjuryCrossSellQuestions(),
@@ -2686,7 +2773,8 @@ const schema = [
2686
2773
  props: formProps({
2687
2774
  formId: 'criminal',
2688
2775
  redirectMap: legalRedirectMap(),
2689
- valueOverrideMap: legalAllValueOverrideMap
2776
+ valueOverrideMap: legalAllValueOverrideMap,
2777
+ crossSellOptionMap: legalCrossSellOptionMap
2690
2778
  }),
2691
2779
  children: [
2692
2780
  progressBar(),