bhl-forms 0.6.6 → 0.6.8

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 (74) hide show
  1. package/dist/bhl-forms.es.js +904 -902
  2. package/dist/bhl-forms.iife.js +4 -4
  3. package/dist/bhl-forms.modern.es.js +2043 -2036
  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 +27 -1
  8. package/dist/forms/accidentsAndInjuries.iife.js +1 -1
  9. package/dist/forms/accidentsAndInjuries.json +1 -1
  10. package/dist/forms/appraisals.es.js +3 -2
  11. package/dist/forms/appraisals.iife.js +1 -1
  12. package/dist/forms/business.es.js +2152 -0
  13. package/dist/forms/business.iife.js +1 -0
  14. package/dist/forms/business.json +1 -0
  15. package/dist/forms/childAndFamily.es.js +1 -1
  16. package/dist/forms/childAndFamily.iife.js +1 -1
  17. package/dist/forms/childAndFamily.json +1 -1
  18. package/dist/forms/childAndFamilySingle.es.js +425 -56
  19. package/dist/forms/childAndFamilySingle.iife.js +1 -1
  20. package/dist/forms/childAndFamilySingle.json +1 -1
  21. package/dist/forms/civilLawsuit.es.js +904 -260
  22. package/dist/forms/civilLawsuit.iife.js +1 -1
  23. package/dist/forms/civilLawsuit.json +1 -1
  24. package/dist/forms/coins.es.js +3 -2
  25. package/dist/forms/coins.iife.js +1 -1
  26. package/dist/forms/contracts.es.js +1 -1
  27. package/dist/forms/contracts.iife.js +1 -1
  28. package/dist/forms/contracts.json +1 -1
  29. package/dist/forms/criminal.es.js +870 -1482
  30. package/dist/forms/criminal.iife.js +1 -1
  31. package/dist/forms/criminal.json +1 -1
  32. package/dist/forms/employmentAndWorkplace.es.js +815 -184
  33. package/dist/forms/employmentAndWorkplace.iife.js +1 -1
  34. package/dist/forms/employmentAndWorkplace.json +1 -1
  35. package/dist/forms/generalLegal.es.js +28 -2
  36. package/dist/forms/generalLegal.iife.js +1 -1
  37. package/dist/forms/generalLegal.json +1 -1
  38. package/dist/forms/generalLegalPopUnder.es.js +28 -2
  39. package/dist/forms/generalLegalPopUnder.iife.js +1 -1
  40. package/dist/forms/generalLegalPopUnder.json +1 -1
  41. package/dist/forms/generalLegalPopUnderSingle.es.js +4409 -0
  42. package/dist/forms/generalLegalPopUnderSingle.iife.js +1 -0
  43. package/dist/forms/generalLegalPopUnderSingle.json +1 -0
  44. package/dist/forms/generalLegalSingle.es.js +53 -8
  45. package/dist/forms/generalLegalSingle.iife.js +1 -1
  46. package/dist/forms/generalLegalSingle.json +1 -1
  47. package/dist/forms/generalLegalThankYou.es.js +28 -2
  48. package/dist/forms/generalLegalThankYou.iife.js +1 -1
  49. package/dist/forms/generalLegalThankYou.json +1 -1
  50. package/dist/forms/harassmentAndDiscrimination.es.js +1 -1
  51. package/dist/forms/harassmentAndDiscrimination.iife.js +1 -1
  52. package/dist/forms/harassmentAndDiscrimination.json +1 -1
  53. package/dist/forms/malpractice.es.js +27 -1
  54. package/dist/forms/malpractice.iife.js +1 -1
  55. package/dist/forms/malpractice.json +1 -1
  56. package/dist/forms/mechanics.es.js +3 -2
  57. package/dist/forms/mechanics.iife.js +1 -1
  58. package/dist/forms/realEstate.es.js +27 -1
  59. package/dist/forms/realEstate.iife.js +1 -1
  60. package/dist/forms/realEstate.json +1 -1
  61. package/dist/forms/repossession.es.js +27 -1
  62. package/dist/forms/repossession.iife.js +1 -1
  63. package/dist/forms/repossession.json +1 -1
  64. package/dist/forms/ssdi.es.js +2 -2
  65. package/dist/forms/ssdi.iife.js +1 -1
  66. package/dist/forms/testRedirects.es.js +1 -1
  67. package/dist/forms/testRedirects.iife.js +1 -1
  68. package/dist/forms/testRedirects.json +1 -1
  69. package/dist/forms/vets.es.js +3 -2
  70. package/dist/forms/vets.iife.js +1 -1
  71. package/dist/forms/willsAndTrusts.es.js +1 -1
  72. package/dist/forms/willsAndTrusts.iife.js +1 -1
  73. package/dist/forms/willsAndTrusts.json +1 -1
  74. package/package.json +1 -1
@@ -65,21 +65,17 @@ const radio = (updates) => {
65
65
  }, updates)
66
66
  };
67
67
 
68
- const col2Radio = (updates) => {
69
- updates.legendClass = 'required';
70
- updates.fieldsetClass = '$reset';
71
- updates.optionsClass = 't-pl-2 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2';
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';
72
+ }
73
+ updates.optionsClass = 't-pl-4 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2';
72
74
  updates.innerClass = 't-items-start';
73
75
  updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
74
- return radio(updates)
75
- };
76
-
77
- const sbsRadio = (updates) => {
78
- updates.legendClass = 'legend-left required';
79
- updates.fieldsetClass = '$reset side-by-side';
80
- updates.optionsClass = 't-pl-1';
81
- updates.innerClass = 't-flex t-items-center';
82
- updates.wrapperClass = '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';
83
79
  return radio(updates)
84
80
  };
85
81
 
@@ -106,6 +102,37 @@ const sbsYesNoRadio = (updates) => {
106
102
  return sbs2ItemRadio(updates)
107
103
  };
108
104
 
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
+ };
118
+
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
+ };
124
+
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
+
109
136
  const select = (updates) => {
110
137
  if (updates.name && !updates.id) {
111
138
  updates.id = updates.name;
@@ -130,6 +157,15 @@ const sbsSelect = (updates) => {
130
157
  return select(updates)
131
158
  };
132
159
 
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
+ };
168
+
133
169
  const text = (updates) => {
134
170
  if (updates.name && !updates.id) {
135
171
  updates.id = updates.name;
@@ -186,6 +222,13 @@ const sbsDate = (updates) => {
186
222
  return date(updates)
187
223
  };
188
224
 
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
+ };
231
+
189
232
  const applicantAge = (scope) => sbsText({
190
233
  name: scope ? scope + ':' + 'Applicant_Age' : 'Applicant_Age',
191
234
  label: 'Age of Applicant?',
@@ -200,11 +243,15 @@ const applicantAge = (scope) => sbsText({
200
243
  }
201
244
  });
202
245
 
203
- const atFault = (scope) => sbsYesNoRadio({
246
+ const atFault$1 = (scope) => sbsYesNoRadio({
204
247
  name: scope ? scope + ':' + 'At_Fault' : 'At_Fault',
205
248
  label: 'Were You at Fault?'
206
249
  });
207
250
 
251
+ const atFaultCenter = (scope) => verticalYesNoRadio({
252
+ name: scope ? scope + ':' + 'At_Fault' : 'At_Fault',
253
+ });
254
+
208
255
  const bankruptcyCrossSell = () => sbsCheckbox({
209
256
  label: "I'd also like a consult for bankruptcy or debt elimination (optional)",
210
257
  help: "Note: you will be contacted separately by a bankruptcy/debt expert",
@@ -230,8 +277,7 @@ const bloodContentAlcoholTest = (scope) => sbsSelect({
230
277
  ]
231
278
  });
232
279
 
233
- const businessServices = () => sbsSelect({
234
- label: 'Legal Services Needed for Your Business:',
280
+ const businessServicesCenter = () => col2RadioCenter({
235
281
  id: 'Business_Services',
236
282
  name: 'Business_Services',
237
283
  options: [
@@ -245,8 +291,7 @@ const businessServices = () => sbsSelect({
245
291
  ]
246
292
  });
247
293
 
248
- const businessType = () => sbs2ColRadio({
249
- label: 'Is the Business Public or Private?',
294
+ const businessTypeCenter = () => verticalButtonRadio({
250
295
  name: 'Business_Type',
251
296
  options: [
252
297
  "Public",
@@ -266,21 +311,17 @@ const causeOfInjury = (scope) => sbsSelect({
266
311
  ]
267
312
  });
268
313
 
269
- const civilDefense = (updates) => sbs2ItemRadio(merge({
270
- name: 'Civil_Defense',
271
- id: 'Civil_Defense',
272
- if: '$get(Type_Of_Legal_Problem).value == "Civil Lawsuit"',
273
- label: 'Do You Need Representation to File a Lawsuit or Defend One?',
314
+ const civilLawsuitTOLPCenter = (updates) => verticalButtonRadio(merge({
315
+ name: 'Type_Of_Legal_Problem',
316
+ id: 'Type_Of_Legal_Problem',
274
317
  options: {
275
- Yes: 'Defend a Lawsuit',
276
- No: 'File a Lawsuit'
318
+ 'Defend a Lawsuit': 'Defend Lawsuit',
319
+ 'File a Lawsuit': 'File Lawsuit'
277
320
  }
278
321
  }, updates));
279
322
 
280
- const civilLawsuitTOLPDisplay = (updates) => col2Radio(merge({
323
+ const civilLawsuitTOLPDisplayCenter = (updates) => col2RadioCenter(merge({
281
324
  name: 'Type_Of_Legal_Problem_Display',
282
- if: '$get(Type_Of_Legal_Problem).value == "Civil Lawsuit" && $get(Civil_Defense).value == "No"',
283
- label: 'Select The Type of Lawsuit You Would Like to File:',
284
325
  options: [
285
326
  'Automobile Accident',
286
327
  'Contract Disputes',
@@ -293,7 +334,7 @@ const civilLawsuitTOLPDisplay = (updates) => col2Radio(merge({
293
334
  'Property Damage',
294
335
  'Small Claims',
295
336
  'Real Estate',
296
- 'Other (describe on next page)'
337
+ 'Not Sure or Other'
297
338
  ]
298
339
  }, updates));
299
340
 
@@ -330,7 +371,7 @@ const childRelationship = (scope) => sbsSelect({
330
371
  ]
331
372
  });
332
373
 
333
- const claimStatus = (scope) => sbsSelect({
374
+ const claimStatus$1 = (scope) => sbsSelect({
334
375
  name: scope ? scope + ':' + 'Claim_Status' : 'Claim_Status',
335
376
  label: "Status of Claim:",
336
377
  options: [
@@ -341,6 +382,16 @@ const claimStatus = (scope) => sbsSelect({
341
382
  ]
342
383
  });
343
384
 
385
+ const claimStatusCenter = (scope) => col2RadioCenter({
386
+ name: scope ? scope + ':' + 'Claim_Status' : 'Claim_Status',
387
+ options: [
388
+ "No action taken yet",
389
+ "Demand for compensation made",
390
+ "Lawsuit filed",
391
+ "Other"
392
+ ]
393
+ });
394
+
344
395
  const comments = (updates, scope) => textArea(
345
396
  merge({
346
397
  name: scope ? scope + ':' + 'Comments' : 'Comments',
@@ -349,8 +400,7 @@ const comments = (updates, scope) => textArea(
349
400
  }, updates)
350
401
  );
351
402
 
352
- const consumerLawyerType = () => sbsSelect({
353
- label: 'What best describes your issue?',
403
+ const consumerLawyerTypeCenter = () => verticalSelect({
354
404
  name: 'Consumer_Lawyer_Type',
355
405
  options: [
356
406
  "Unsafe Environment",
@@ -367,7 +417,7 @@ const consumerLawyerType = () => sbsSelect({
367
417
  ]
368
418
  });
369
419
 
370
- const degreeOfInterest = (scope, help) => sbsSelect({
420
+ const degreeOfInterest$1 = (scope, help) => sbsSelect({
371
421
  name: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
372
422
  id: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
373
423
  label: 'How Likely Are You to Pay if Your Issue Could be Resolved?',
@@ -380,7 +430,19 @@ const degreeOfInterest = (scope, help) => sbsSelect({
380
430
  ]
381
431
  });
382
432
 
383
- const degreeOfInterestHelp = (scope) => degreeOfInterest(scope, 'No payment necessary to speak with lawyers.');
433
+ const degreeOfInterestCenter = (scope, help) => col2RadioCenter({
434
+ name: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
435
+ id: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
436
+ help: help,
437
+ options: [
438
+ 'Definitely',
439
+ 'Probably',
440
+ 'Maybe',
441
+ "Absolutely Can't Afford"
442
+ ]
443
+ });
444
+
445
+ const degreeOfInterestHelp = (scope) => degreeOfInterest$1(scope, 'No payment necessary to speak with lawyers.');
384
446
 
385
447
  const disabilityConditionStopWork = (scope) => sbsYesNoRadio({
386
448
  name: scope ? scope + ':' + 'Disability_Condition_Stop_Work' : 'Disability_Condition_Stop_Work',
@@ -392,11 +454,15 @@ const disabilityWorkHistory = (scope) => sbsYesNoRadio({
392
454
  label: 'Have You Had a Full-Time Job Within the Past 5 Years?'
393
455
  });
394
456
 
395
- const doctorTreatment = (scope) => sbsYesNoRadio({
457
+ const doctorTreatment$1 = (scope) => sbsYesNoRadio({
396
458
  name: scope ? scope + ':' + 'Doctor_Treatment' : 'Doctor_Treatment',
397
459
  label: 'Have You Recently Been Treated by a Doctor, Hospital or Clinic?',
398
460
  });
399
461
 
462
+ const doctorTreatmentCenter = () => verticalYesNoRadio({
463
+ name: 'Doctor_Treatment',
464
+ });
465
+
400
466
  const email = () => sbsText({
401
467
  $formkit: 'email',
402
468
  name: 'Email',
@@ -411,8 +477,7 @@ const email = () => sbsText({
411
477
  }
412
478
  });
413
479
 
414
- const employerType = () => sbsSelect({
415
- label: 'The Employer Is a:',
480
+ const employerTypeCenter = () => col2RadioCenter({
416
481
  name: 'Employer_Type',
417
482
  options: [
418
483
  "Sole proprietorship (mom and pop)",
@@ -425,9 +490,8 @@ const employerType = () => sbsSelect({
425
490
  ]
426
491
  });
427
492
 
428
- const employeeAtCompany = (scope) => sbsYesNoRadio({
493
+ const employeeAtCompanyCenter = (scope) => verticalYesNoRadio({
429
494
  name: scope ? scope + ':' + 'Employee_At_Company' : 'Employee_At_Company',
430
- label: 'Do you/they still work at the company?'
431
495
  });
432
496
 
433
497
  const estateLegalServicesNeeded = (scope) => sbsSelect({
@@ -454,21 +518,29 @@ const firstName = () => sbsText({
454
518
  }
455
519
  });
456
520
 
457
- const haveAttorney = (scope) => sbsYesNoRadio({
521
+ const haveAttorney$1 = (scope) => sbsYesNoRadio({
458
522
  name: scope ? scope + ':' + 'Have_Attorney' : 'Have_Attorney',
459
523
  label: 'Already Working with An Attorney?'
460
524
  });
461
525
 
526
+ const haveAttorneyCenter = () => verticalYesNoRadio({
527
+ name: 'Have_Attorney',
528
+ });
529
+
462
530
  const haveChildren = (scope) => sbsYesNoRadio({
463
531
  name: scope ? scope + ':' + 'Have_Children' : 'Have_Children',
464
532
  label: 'Do You Have Children?'
465
533
  });
466
534
 
467
- const incidentDate = (scope) => sbsDate({
535
+ const incidentDate$1 = (scope) => sbsDate({
468
536
  name: scope ? scope + ':' + 'Incident_Date' : 'Incident_Date',
469
537
  label: 'Date of Incident:',
470
538
  });
471
539
 
540
+ const incidentDateCenter = (scope) => verticalDate({
541
+ name: scope ? scope + ':' + 'Incident_Date' : 'Incident_Date',
542
+ });
543
+
472
544
  const lastName = () => sbsText({
473
545
  $formkit: 'text',
474
546
  label: 'Last Name:',
@@ -480,8 +552,7 @@ const lastName = () => sbsText({
480
552
  }
481
553
  });
482
554
 
483
- const lawsuitOtherParty = () => sbsSelect({
484
- label: 'The Other Party is a:',
555
+ const lawsuitOtherPartyCenter = () => col2RadioCenter({
485
556
  name: 'Lawsuit_Other_Party',
486
557
  options: [
487
558
  "Individual",
@@ -589,8 +660,7 @@ const maritalStatus = (scope) => sbsSelect({
589
660
  ]
590
661
  });
591
662
 
592
- const medicalMalpracticeInjuries = () => sbsSelect({
593
- label: "Injuries from Medical Malpractice:",
663
+ const medicalMalpracticeInjuriesCenter = () => verticalSelect({
594
664
  name: 'Medical_Malpractice_Injuries',
595
665
  options: [
596
666
  "No Injury",
@@ -603,9 +673,7 @@ const medicalMalpracticeInjuries = () => sbsSelect({
603
673
  ]
604
674
  });
605
675
 
606
-
607
- const numEmployeesOfBusiness = () => sbsSelect({
608
- label: 'Total Employees of Business? (estimated)',
676
+ const numEmployeesOfBusinessCenter = () => col2RadioCenter({
609
677
  name: 'Num_Employees_Of_Business',
610
678
  options: [
611
679
  "1-5",
@@ -641,7 +709,7 @@ const phone = () => sbsText({
641
709
  helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]"
642
710
  });
643
711
 
644
- const primaryInjury = (scope) => sbs2ColRadio({
712
+ const primaryInjury$1 = (scope) => sbs2ColRadio({
645
713
  name: scope ? scope + ':' + 'Primary_Injury' : 'Primary_Injury',
646
714
  label: 'Primary Injury:',
647
715
  options: [
@@ -652,7 +720,21 @@ const primaryInjury = (scope) => sbs2ColRadio({
652
720
  "Headaches",
653
721
  "Memory Loss",
654
722
  "Loss of Limb",
655
- "Other (describe on next page)"
723
+ "Not Sure or Other"
724
+ ]
725
+ });
726
+
727
+ const primaryInjuryCenter = (scope) => col2RadioCenter({
728
+ name: scope ? scope + ':' + 'Primary_Injury' : 'Primary_Injury',
729
+ options: [
730
+ "Anxiety",
731
+ "Back or Neck Pain",
732
+ "Broken Bones",
733
+ "Cuts and Bruises",
734
+ "Headaches",
735
+ "Memory Loss",
736
+ "Loss of Limb",
737
+ "Not Sure or Other"
656
738
  ]
657
739
  });
658
740
 
@@ -661,13 +743,16 @@ const priorAlcoholOffenses = (scope) => sbsYesNoRadio({
661
743
  label: 'Any Prior Alcohol Related Offenses?'
662
744
  });
663
745
 
664
- const policeReportFiled = (scope) => sbsYesNoRadio({
746
+ const policeReportFiled$1 = (scope) => sbsYesNoRadio({
665
747
  name: scope ? scope + ':' + 'Police_Report_Filed' : 'Police_Report_Filed',
666
748
  label: 'Was a Police Report Filed?'
667
749
  });
668
750
 
669
- const realEstateArea = () => sbsSelect({
670
- label: "Area of Real Estate:",
751
+ const policeReportFiledCenter = (scope) => verticalYesNoRadio({
752
+ name: scope ? scope + ':' + 'Police_Report_Filed' : 'Police_Report_Filed',
753
+ });
754
+
755
+ const realEstateAreaCenter = () => col2RadioCenter({
671
756
  name: 'Real_Estate_Area',
672
757
  options: [
673
758
  "Condos and Coops",
@@ -753,8 +838,7 @@ const valueOfAssets = (scope) => sbsSelect({
753
838
  ]
754
839
  });
755
840
 
756
- const wouldLikeLawyerTo = () => sbsRadio({
757
- label: 'I Would Like a Lawyer to:',
841
+ const wouldLikeLawyerToCenter = () => verticalRadio({
758
842
  name: 'Would_Like_Lawyer_To',
759
843
  options: [
760
844
  "Give me general advice to protect my interests",
@@ -766,9 +850,9 @@ const wouldLikeLawyerTo = () => sbsRadio({
766
850
  ]
767
851
  });
768
852
 
769
- const zipcode = () => sbsText({
770
- label: 'Zip Code:',
853
+ const zipcodeCenter = (updates = {}) => text({
771
854
  placeholder: '#####',
855
+ help: updates.help ?? "We try to match you with local legal help",
772
856
  name: 'Zip',
773
857
  maxlength: 5,
774
858
  inputmode: "numeric",
@@ -777,7 +861,11 @@ const zipcode = () => sbsText({
777
861
  validationMessages: {
778
862
  required: 'Zip Code is required',
779
863
  matches: 'Invalid Zip Code'
780
- }
864
+ },
865
+ wrapperClass: 't-flex t-justify-center',
866
+ messagesClass: 't-flex t-justify-center',
867
+ inputClass: 't-text-center',
868
+ helpClass: 't-mt-2.5 !t-text-sm t-text-center'
781
869
  });
782
870
 
783
871
 
@@ -801,26 +889,12 @@ const AutoAndCarAccidentsQuestions = (condition, scope) => group(
801
889
  {
802
890
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Auto and Car Accidents"'),
803
891
  children: [
804
- haveAttorney(scope),
805
- incidentDate(scope),
806
- atFault(scope),
807
- primaryInjury(scope),
808
- doctorTreatment(scope),
809
- policeReportFiled(scope)
810
- ]
811
- }
812
- );
813
-
814
- const BusinessLawyersQuestions = () => group(
815
- 'BusinessLawyersQuestions',
816
- {
817
- if: '$get(Type_Of_Legal_Problem).value == "Business Lawyers"',
818
- children: [
819
- haveAttorney(),
820
- businessServices(),
821
- businessType(),
822
- numEmployeesOfBusiness(),
823
- degreeOfInterestHelp()
892
+ haveAttorney$1(scope),
893
+ incidentDate$1(scope),
894
+ atFault$1(scope),
895
+ primaryInjury$1(scope),
896
+ doctorTreatment$1(scope),
897
+ policeReportFiled$1(scope)
824
898
  ]
825
899
  }
826
900
  );
@@ -830,63 +904,25 @@ const ChildCustodyQuestions = (condition, scope) => group(
830
904
  {
831
905
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Child Custody"'),
832
906
  children: [
833
- haveAttorney(scope),
907
+ haveAttorney$1(scope),
834
908
  childRelationship(scope),
835
909
  childHome(scope),
836
910
  childPrimaryCaregiver(scope),
837
- degreeOfInterest(scope),
911
+ degreeOfInterest$1(scope),
838
912
  lawyerPaymentMethod(scope)
839
913
  ]
840
914
  }
841
915
  );
842
916
 
843
- const FileLawsuitQuestions = () => group(
844
- 'FileLawsuitQuestions',
845
- {
846
- if: '$get(Type_Of_Legal_Problem).value == "File a Lawsuit"',
847
- children: [
848
- haveAttorney(),
849
- lawsuitOtherParty(),
850
- degreeOfInterestHelp()
851
- ]
852
- }
853
- );
854
-
855
- const DefendLawsuitQuestions = () => group(
856
- 'DefendLawsuitQuestions',
857
- {
858
- if: '$get(Type_Of_Legal_Problem).value == "Defend a Lawsuit"',
859
- children: [
860
- haveAttorney(),
861
- lawsuitOtherParty(),
862
- degreeOfInterestHelp()
863
- ]
864
- }
865
- );
866
-
867
- const ConsumerLawyersQuestions = () => group(
868
- 'ConsumerLawyersQuestions',
869
- {
870
- if: '$get(Type_Of_Legal_Problem).value == "Consumer Lawyers"',
871
- children: [
872
- consumerLawyerType(),
873
- incidentDate(),
874
- haveAttorney(),
875
- lawsuitOtherParty(),
876
- degreeOfInterestHelp()
877
- ]
878
- }
879
- );
880
-
881
917
  const DivorceQuestions = (condition, scope) => group(
882
918
  'DivorceQuestions',
883
919
  {
884
920
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Divorce and Separation"'),
885
921
  children: [
886
- haveAttorney(scope),
922
+ haveAttorney$1(scope),
887
923
  maritalStatus(scope),
888
924
  haveChildren(scope),
889
- degreeOfInterest(scope),
925
+ degreeOfInterest$1(scope),
890
926
  lawyerPaymentMethod(scope)
891
927
  ]
892
928
  }
@@ -897,8 +933,8 @@ const DUIAndDWIQuestions = (condition, scope) => group(
897
933
  {
898
934
  if: (condition || '$get(Type_Of_Legal_Problem).value == "DUI and DWI"'),
899
935
  children: [
900
- haveAttorney(scope),
901
- incidentDate(scope),
936
+ haveAttorney$1(scope),
937
+ incidentDate$1(scope),
902
938
  priorAlcoholOffenses(scope),
903
939
  typeOfAlcoholTest(scope),
904
940
  bloodContentAlcoholTest(scope),
@@ -908,46 +944,17 @@ const DUIAndDWIQuestions = (condition, scope) => group(
908
944
  }
909
945
  );
910
946
 
911
- const EmploymentAndWorkplaceQuestions = () => group(
912
- 'EmploymentAndWorkplaceQuestions',
913
- {
914
- if: '$get(Type_Of_Legal_Problem).value == "Employment and Workplace"',
915
- children: [
916
- haveAttorney(),
917
- numEmployeesOfBusiness(),
918
- employerType(),
919
- employeeAtCompany(),
920
- degreeOfInterestHelp()
921
- ]
922
- }
923
- );
924
-
925
- const MedicalMalpracticeQuestions = () => group(
926
- 'MedicalMalpracticeQuestions',
927
- {
928
- if: '$get(Type_Of_Legal_Problem).value == "Medical Malpractice"',
929
- children: [
930
- haveAttorney(),
931
- incidentDate(),
932
- claimStatus(),
933
- doctorTreatment(),
934
- medicalMalpracticeInjuries(),
935
- degreeOfInterestHelp()
936
- ]
937
- }
938
- );
939
-
940
947
  const PersonalInjuryQuestions = (condition, scope) => group(
941
948
  'PersonalInjuryQuestions',
942
949
  {
943
950
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Personal Injury"'),
944
951
  children: [
945
- haveAttorney(scope),
946
- incidentDate(scope),
947
- claimStatus(scope),
948
- atFault(scope),
949
- primaryInjury(scope),
950
- doctorTreatment(scope)
952
+ haveAttorney$1(scope),
953
+ incidentDate$1(scope),
954
+ claimStatus$1(scope),
955
+ atFault$1(scope),
956
+ primaryInjury$1(scope),
957
+ doctorTreatment$1(scope)
951
958
  ]
952
959
  }
953
960
  );
@@ -957,49 +964,23 @@ const PowerofAttorneyQuestions = (condition, scope) => group(
957
964
  {
958
965
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Power of Attorney"'),
959
966
  children: [
960
- haveAttorney(scope),
967
+ haveAttorney$1(scope),
961
968
  degreeOfInterestHelp(scope)
962
969
  ]
963
970
  }
964
971
  );
965
972
 
966
- const PropertyDamageQuestions = () => group(
967
- 'PropertyDamageQuestions',
968
- {
969
- if: '$get(Type_Of_Legal_Problem).value == "Property Damage"',
970
- children: [
971
- haveAttorney(),
972
- realEstateArea(),
973
- wouldLikeLawyerTo(),
974
- degreeOfInterestHelp()
975
- ]
976
- }
977
- );
978
-
979
- const RealEstateQuestions = () => group(
980
- 'RealEstateQuestions',
981
- {
982
- if: '$get(Type_Of_Legal_Problem).value == "Real Estate"',
983
- children: [
984
- haveAttorney(),
985
- realEstateArea(),
986
- wouldLikeLawyerTo(),
987
- degreeOfInterestHelp()
988
- ]
989
- }
990
- );
991
-
992
973
  const SocialSecurityDisabilityAndInsuranceQuestions = (condition, scope) => group(
993
974
  'SocialSecurityDisabilityAndInsuranceQuestions',
994
975
  {
995
976
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Social Security Disability and Insurance"'),
996
977
  children: [
997
- haveAttorney(scope),
978
+ haveAttorney$1(scope),
998
979
  applicantAge(scope),
999
980
  disabilityConditionStopWork(scope),
1000
981
  disabilityWorkHistory(scope),
1001
982
  socialSecurityDisabilityReceivingBenefits(scope),
1002
- doctorTreatment(scope)
983
+ doctorTreatment$1(scope)
1003
984
  ]
1004
985
  }
1005
986
  );
@@ -1009,7 +990,7 @@ const WillsAndTrustsQuestions = (condition, scope) => group(
1009
990
  {
1010
991
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Wills and Trusts"'),
1011
992
  children: [
1012
- haveAttorney(scope),
993
+ haveAttorney$1(scope),
1013
994
  valueOfAssets(scope),
1014
995
  typeOfAssets(scope),
1015
996
  roleInMatterProbate(scope),
@@ -1024,23 +1005,12 @@ const WorkersCompensationQuestions = (condition, scope) => group(
1024
1005
  {
1025
1006
  if: (condition || '$get(Type_Of_Legal_Problem).value == "Workers Compensation"'),
1026
1007
  children: [
1027
- haveAttorney(scope),
1028
- incidentDate(scope),
1029
- claimStatus(scope),
1030
- primaryInjury(scope),
1008
+ haveAttorney$1(scope),
1009
+ incidentDate$1(scope),
1010
+ claimStatus$1(scope),
1011
+ primaryInjury$1(scope),
1031
1012
  causeOfInjury(scope),
1032
- doctorTreatment(scope)
1033
- ]
1034
- }
1035
- );
1036
-
1037
- const NotSureOrOtherQuestions = () => group(
1038
- 'NotSureOrOtherQuestions',
1039
- {
1040
- if: '$get(Type_Of_Legal_Problem).value == "Not Sure or Other"',
1041
- children: [
1042
- haveAttorney(),
1043
- degreeOfInterestHelp()
1013
+ doctorTreatment$1(scope)
1044
1014
  ]
1045
1015
  }
1046
1016
  );
@@ -1107,7 +1077,7 @@ function secureIcon(updates) {
1107
1077
  )
1108
1078
  }
1109
1079
 
1110
- function questionsStepHeadline(updates) {
1080
+ function crossSellQuestionsStepHeadline(updates) {
1111
1081
  return {
1112
1082
  $el: 'h3',
1113
1083
  children: updates.headline || 'Tell Us About Your Situation',
@@ -1117,22 +1087,32 @@ function questionsStepHeadline(updates) {
1117
1087
  }
1118
1088
  }
1119
1089
 
1120
- function crossSellQuestionsStepHeadline(updates) {
1090
+ function crossSellQuestionsStepSubHeadline(updates) {
1091
+ return {
1092
+ $el: 'h5',
1093
+ children: updates.subheadline || 'Tell us about your situation:',
1094
+ attrs: {
1095
+ 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'
1096
+ }
1097
+ }
1098
+ }
1099
+
1100
+ function verticalStepHeadline(updates) {
1121
1101
  return {
1122
1102
  $el: 'h3',
1123
1103
  children: updates.headline || 'Tell Us About Your Situation',
1124
1104
  attrs: {
1125
- 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'
1105
+ 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 || '')
1126
1106
  }
1127
1107
  }
1128
1108
  }
1129
1109
 
1130
- function crossSellQuestionsStepSubHeadline(updates) {
1110
+ function verticalStepSubHeadline(updates) {
1131
1111
  return {
1132
1112
  $el: 'h5',
1133
- children: updates.subheadline || 'Tell us about your situation:',
1113
+ children: updates.subheadline || '',
1134
1114
  attrs: {
1135
- 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'
1115
+ 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 || '')
1136
1116
  }
1137
1117
  }
1138
1118
  }
@@ -1251,26 +1231,16 @@ function step(name, inputs, nextOnEnter = true, nextOnInput = false, stepKey = u
1251
1231
  )
1252
1232
  }
1253
1233
 
1254
- function civilLawsuitTOLPAndZip(updates = {}) {
1234
+ // Single question step
1235
+ function sqstep(name, input, defaultHeadline, updates = {}) {
1255
1236
  return step(
1256
- 'civilLawsuitTOLPAndZip',
1237
+ name,
1257
1238
  [
1258
- {
1259
- $formkit: 'hidden',
1260
- name: "Type_Of_Legal_Problem",
1261
- id: "Type_Of_Legal_Problem",
1262
- value: "Civil Lawsuit"
1263
- },
1264
- civilDefense({
1265
- if: 'true'
1266
- }),
1267
- civilLawsuitTOLPDisplay({
1268
- if: '$get(Civil_Defense).value == "No"'
1269
- }),
1270
- zipcode()
1239
+ verticalStepHeadline({ headline: updates.headline ?? defaultHeadline, headlineClass: updates.headlineClass }),
1240
+ ...Array.isArray(input) ? input : [input],
1271
1241
  ],
1272
1242
  updates.nextOnEnter,
1273
- updates.nextOnInput,
1243
+ typeof updates.nextOnInput === 'undefined' ? true : updates.nextOnInput,
1274
1244
  updates.stepKey,
1275
1245
  updates.nextStepMap
1276
1246
  )
@@ -1319,11 +1289,18 @@ function contactInfo(updates = {}) {
1319
1289
  )
1320
1290
  }
1321
1291
 
1322
- function firstAndLastV2(updates = {}) {
1292
+ function firstAndLastV3(updates = {}) {
1323
1293
  return step(
1324
1294
  'firstAndLast',
1325
1295
  [
1326
- firstAndLastStepHeadline(updates),
1296
+ firstAndLastStepHeadline({
1297
+ headline: updates.headline ?? 'Who is looking for help?',
1298
+ headlineClass: updates.headlineClass
1299
+ }),
1300
+ verticalStepSubHeadline({
1301
+ subheadline: updates.subheadline ?? 'Note: we never share info without consent',
1302
+ subheadlineClass: '!t-text-sm !t-text-gray-500'
1303
+ }),
1327
1304
  firstName(),
1328
1305
  lastName()
1329
1306
  ],
@@ -1507,27 +1484,6 @@ function workersCompensationCrossSellQuestions(updates = {}) {
1507
1484
  )
1508
1485
  }
1509
1486
 
1510
- function civilLawsuitTOLPQuestions(updates = {}) {
1511
- return step(
1512
- 'TOLPQuestions',
1513
- [
1514
- questionsStepHeadline(updates),
1515
- AutoAndCarAccidentsQuestions(),
1516
- BusinessLawyersQuestions(),
1517
- DefendLawsuitQuestions(),
1518
- FileLawsuitQuestions(),
1519
- PersonalInjuryQuestions(),
1520
- EmploymentAndWorkplaceQuestions(),
1521
- ConsumerLawyersQuestions(),
1522
- MedicalMalpracticeQuestions(),
1523
- PropertyDamageQuestions(),
1524
- RealEstateQuestions(),
1525
- NotSureOrOtherQuestions()
1526
- ],
1527
- updates.nextOnEnter
1528
- )
1529
- }
1530
-
1531
1487
  function legalCrossSells(updates = {}) {
1532
1488
  return step(
1533
1489
  'legalCrossSells',
@@ -1542,6 +1498,199 @@ function legalCrossSells(updates = {}) {
1542
1498
  )
1543
1499
  }
1544
1500
 
1501
+ function zipcode(updates = {}) {
1502
+ return sqstep(
1503
+ 'zipcode',
1504
+ zipcodeCenter(updates),
1505
+ 'Please verify your Zip Code',
1506
+ updates
1507
+ )
1508
+ }
1509
+
1510
+ function civilLawsuitTOLP(updates = {}) {
1511
+ return step(
1512
+ 'civilLawsuitTOLP',
1513
+ [
1514
+ civilLawsuitTOLPCenter(),
1515
+ ],
1516
+ updates.nextOnEnter,
1517
+ updates.nextOnInput,
1518
+ updates.stepKey,
1519
+ updates.nextStepMap
1520
+ )
1521
+ }
1522
+
1523
+ function civilLawsuitTOLPDisplay(updates = {}) {
1524
+ return sqstep(
1525
+ 'civilLawsuitTOLPDisplay',
1526
+ civilLawsuitTOLPDisplayCenter(),
1527
+ 'What type of lawsuit would you like to file?',
1528
+ updates
1529
+ )
1530
+ }
1531
+
1532
+ function haveAttorney(updates = {}) {
1533
+ return sqstep(
1534
+ 'haveAttorney',
1535
+ haveAttorneyCenter(),
1536
+ 'Already working with an attorney?',
1537
+ updates
1538
+ )
1539
+ }
1540
+
1541
+ function degreeOfInterest(updates = {}) {
1542
+ return sqstep(
1543
+ 'degreeOfInterest',
1544
+ degreeOfInterestCenter(),
1545
+ 'Could you pay if your issue could be resolved?',
1546
+ updates
1547
+ )
1548
+ }
1549
+
1550
+ function incidentDate(updates = {}) {
1551
+ return sqstep(
1552
+ 'incidentDate',
1553
+ incidentDateCenter(),
1554
+ 'When did the incident occur?',
1555
+ updates
1556
+ )
1557
+ }
1558
+
1559
+ function doctorTreatment(updates = {}) {
1560
+ return sqstep(
1561
+ 'doctorTreatment',
1562
+ doctorTreatmentCenter(),
1563
+ 'Have you seen a doctor about this?',
1564
+ updates
1565
+ )
1566
+ }
1567
+
1568
+ function medicalMalpracticeInjuries(updates = {}) {
1569
+ return sqstep(
1570
+ 'medicalMalpracticeInjuries',
1571
+ medicalMalpracticeInjuriesCenter(),
1572
+ 'What injuries did you suffer?',
1573
+ updates
1574
+ )
1575
+ }
1576
+
1577
+ function atFault(updates = {}) {
1578
+ return sqstep(
1579
+ 'atFault',
1580
+ atFaultCenter(),
1581
+ 'Were you at fault?',
1582
+ updates
1583
+ )
1584
+ }
1585
+
1586
+ function primaryInjury(updates = {}) {
1587
+ return sqstep(
1588
+ 'primaryInjury',
1589
+ primaryInjuryCenter(),
1590
+ 'What was the primary injury?',
1591
+ updates
1592
+ )
1593
+ }
1594
+
1595
+ function policeReportFiled(updates = {}) {
1596
+ return sqstep(
1597
+ 'policeReportFiled',
1598
+ policeReportFiledCenter(),
1599
+ 'Was a police report filed?',
1600
+ updates
1601
+ )
1602
+ }
1603
+
1604
+ function businessServices(updates = {}) {
1605
+ return sqstep(
1606
+ 'businessServices',
1607
+ businessServicesCenter(),
1608
+ 'What legal services do you need?',
1609
+ updates
1610
+ )
1611
+ }
1612
+
1613
+ function businessType(updates = {}) {
1614
+ return sqstep(
1615
+ 'businessType',
1616
+ businessTypeCenter(),
1617
+ 'Is the business public or private?',
1618
+ updates
1619
+ )
1620
+ }
1621
+
1622
+ function employerType(updates = {}) {
1623
+ return sqstep(
1624
+ 'employerType',
1625
+ employerTypeCenter(),
1626
+ 'What type of employer is it?',
1627
+ updates
1628
+ )
1629
+ }
1630
+
1631
+ function employeeAtCompany(updates = {}) {
1632
+ return sqstep(
1633
+ 'employeeAtCompany',
1634
+ employeeAtCompanyCenter(),
1635
+ 'Do you/they still work at the company?',
1636
+ updates
1637
+ )
1638
+ }
1639
+
1640
+ function numEmployeesOfBusiness(updates = {}) {
1641
+ return sqstep(
1642
+ 'numEmployeesOfBusiness',
1643
+ numEmployeesOfBusinessCenter(),
1644
+ 'How many employees does the business have?',
1645
+ updates
1646
+ )
1647
+ }
1648
+
1649
+ function lawsuitOtherParty(updates = {}) {
1650
+ return sqstep(
1651
+ 'lawsuitOtherParty',
1652
+ lawsuitOtherPartyCenter(),
1653
+ 'What describes the other party in the lawsuit?',
1654
+ updates
1655
+ )
1656
+ }
1657
+
1658
+ function consumerLawyerType(updates = {}) {
1659
+ return sqstep(
1660
+ 'consumerLawyerType',
1661
+ consumerLawyerTypeCenter(),
1662
+ 'What best describes your issue?',
1663
+ updates
1664
+ )
1665
+ }
1666
+
1667
+ function claimStatus(updates = {}) {
1668
+ return sqstep(
1669
+ 'claimStatus',
1670
+ claimStatusCenter(),
1671
+ 'What is the status of the claim?',
1672
+ updates
1673
+ )
1674
+ }
1675
+
1676
+ function realEstateArea(updates = {}) {
1677
+ return sqstep(
1678
+ 'realEstateArea',
1679
+ realEstateAreaCenter(),
1680
+ 'What area of real estate?',
1681
+ updates
1682
+ )
1683
+ }
1684
+
1685
+ function wouldLikeLawyerTo(updates = {}) {
1686
+ return sqstep(
1687
+ 'wouldLikeLawyerTo',
1688
+ wouldLikeLawyerToCenter(),
1689
+ 'I would like the lawyer to:',
1690
+ updates
1691
+ )
1692
+ }
1693
+
1545
1694
  // ------ Common
1546
1695
 
1547
1696
  const formNavigation = () => ({
@@ -1730,6 +1879,62 @@ function formAnchor(updates) {
1730
1879
  )
1731
1880
  }
1732
1881
 
1882
+ const progressBarDefaults = {
1883
+ $el: 'div',
1884
+ attrs: {
1885
+ class: 't-mt-7 t-mb-5 t-w-full t-flex t-flex-col t-justify-center t-items-center',
1886
+ style: {
1887
+ if: '$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())',
1888
+ then: 'display: none'
1889
+ },
1890
+ },
1891
+ children: [
1892
+ {
1893
+ $el: 'div',
1894
+ attrs: {
1895
+ class: 't-flex t-justify-center'
1896
+ },
1897
+ children: [
1898
+ {
1899
+ $el: 'span',
1900
+ attrs: {
1901
+ id: 'progress-bar-text',
1902
+ class: 't-text-sm t-mb-1'
1903
+ },
1904
+ children: [
1905
+ "0% Complete"
1906
+ ]
1907
+ },
1908
+ ]
1909
+ },
1910
+ {
1911
+ $el: 'div',
1912
+ attrs: {
1913
+ class: 't-bg-gray-100 t-w-9/12 t-rounded'
1914
+ },
1915
+ children: [
1916
+ {
1917
+ $el: 'div',
1918
+ attrs: {
1919
+ id: 'progress-bar',
1920
+ 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]',
1921
+ style: {
1922
+ transition: 'width 0.5s ease'
1923
+ },
1924
+ },
1925
+ }
1926
+ ]
1927
+ }
1928
+ ]
1929
+ };
1930
+
1931
+ function progressBar(updates) {
1932
+ return merge(
1933
+ progressBarDefaults,
1934
+ updates
1935
+ )
1936
+ }
1937
+
1733
1938
  function headlineDefaults(updates = {}) {
1734
1939
  return {
1735
1940
  $el: 'h1',
@@ -1822,6 +2027,32 @@ const legalAllValueOverrideMap = {
1822
2027
  'Type_Of_Legal_Problem': 'File a Lawsuit'
1823
2028
  }
1824
2029
  },
2030
+ 'Business_Services_Display': {
2031
+ "Business Formation": {
2032
+ 'Business_Services': 'Business Formation'
2033
+ },
2034
+ "Contracts": {
2035
+ 'Business_Services': 'Contracts'
2036
+ },
2037
+ "Insurance and Liability": {
2038
+ 'Business_Services': 'Insurance and Liability'
2039
+ },
2040
+ "Mergers and Acquisition": {
2041
+ 'Business_Services': 'Mergers and Acquisition'
2042
+ },
2043
+ "Regulatory Compliance": {
2044
+ 'Business_Services': 'Regulatory Compliance'
2045
+ },
2046
+ "Employee Dispute": {
2047
+ 'Business_Services': 'Employee Dispute'
2048
+ },
2049
+ "Advice and Consulting": {
2050
+ 'Business_Services': 'Other',
2051
+ },
2052
+ "Other": {
2053
+ 'Business_Services': 'Other'
2054
+ }
2055
+ },
1825
2056
  'Type_Of_Legal_Problem_Display': {
1826
2057
  // Accidents and PI
1827
2058
  'Auto Accident': {
@@ -2112,23 +2343,432 @@ const TOLPFinalSubHeadlines = {
2112
2343
  // 'Non-Workplace Discrimination': '',
2113
2344
  };
2114
2345
 
2346
+ const nextStepsLegalDefault = [
2347
+ 'haveAttorney',
2348
+ 'degreeOfInterest',
2349
+ 'commentsWithBankruptcy',
2350
+ 'zipcode',
2351
+ 'legalCrossSells',
2352
+ 'firstAndLast',
2353
+ 'contactInfo',
2354
+ ];
2355
+
2356
+ const nextStepsLegalDefaultLPM = [
2357
+ 'haveAttorney',
2358
+ 'degreeOfInterest',
2359
+ 'lawyerPaymentMethod',
2360
+ 'commentsWithBankruptcy',
2361
+ 'zipcode',
2362
+ 'legalCrossSells',
2363
+ 'firstAndLast',
2364
+ 'contactInfo',
2365
+ ];
2366
+
2367
+ const nextStepsLegalNoDOI = [
2368
+ 'haveAttorney',
2369
+ 'commentsWithBankruptcy',
2370
+ 'zipcode',
2371
+ 'legalCrossSells',
2372
+ 'firstAndLast',
2373
+ 'contactInfo',
2374
+ ];
2375
+
2376
+ const nextStepsLegalNoHA = [
2377
+ 'degreeOfInterest',
2378
+ 'commentsWithBankruptcy',
2379
+ 'zipcode',
2380
+ 'legalCrossSells',
2381
+ 'firstAndLast',
2382
+ 'contactInfo',
2383
+ ];
2115
2384
 
2116
- const nextStepsMapLegalLegacy = {
2385
+ const nextStepsMapGeneralLegal = {
2386
+ 'Type_Of_Legal_Problem': {
2387
+ 'Adoption': [
2388
+ 'maritalStatus',
2389
+ 'haveChildren',
2390
+ ...nextStepsLegalDefaultLPM
2391
+ ],
2392
+ 'Asbestos and Mesothelioma': [
2393
+ 'incidentDate',
2394
+ 'doctorTreatment',
2395
+ ...nextStepsLegalDefault
2396
+ ],
2397
+ 'Auto and Car Accidents': [
2398
+ 'incidentDate',
2399
+ 'atFault',
2400
+ 'primaryInjury',
2401
+ 'doctorTreatment',
2402
+ 'policeReportFiled',
2403
+ ...nextStepsLegalNoDOI
2404
+ ],
2405
+ 'Bankruptcy': [
2406
+ 'totalMonthlyIncome',
2407
+ 'totalDebt',
2408
+ 'ownRealEstate',
2409
+ 'valueOfAssets',
2410
+ ...nextStepsLegalDefault
2411
+ ],
2412
+ 'Business Lawyers': [
2413
+ 'businessServices',
2414
+ 'businessType',
2415
+ 'numEmployeesOfBusiness',
2416
+ ...nextStepsLegalDefault
2417
+ ],
2418
+ 'Child Custody': [
2419
+ 'childRelationship',
2420
+ 'childHome',
2421
+ 'childPrimaryCaregiver',
2422
+ ...nextStepsLegalDefaultLPM
2423
+ ],
2424
+ 'Child Support': [
2425
+ 'childRelationship',
2426
+ 'childHome',
2427
+ 'childPrimaryCaregiver',
2428
+ ...nextStepsLegalDefaultLPM
2429
+ ],
2430
+ 'Civil Rights and Discrimination': [
2431
+ 'civilRightsType',
2432
+ ...nextStepsLegalDefault
2433
+ ],
2434
+ 'Civil Lawsuit': [
2435
+ 'civilDefense',
2436
+ 'lawsuitOtherParty',
2437
+ ...nextStepsLegalDefault
2438
+ ],
2439
+ 'File a Lawsuit': [
2440
+ 'civilLawsuitTOLPDisplay',
2441
+ 'lawsuitOtherParty',
2442
+ ...nextStepsLegalDefault
2443
+ ],
2444
+ 'Defend a Lawsuit': [
2445
+ 'lawsuitOtherParty',
2446
+ ...nextStepsLegalDefault
2447
+ ],
2448
+ 'Consumer Lawyers': [
2449
+ 'consumerLawyerType',
2450
+ 'incidentDate',
2451
+ 'lawsuitOtherParty',
2452
+ ...nextStepsLegalDefault
2453
+ ],
2454
+ 'Criminal and Felony': [
2455
+ 'criminalTOLPDisplay',
2456
+ 'crimeCommittedDate',
2457
+ 'roleInMatterCriminal',
2458
+ 'pendingCharges',
2459
+ ...nextStepsLegalDefaultLPM
2460
+ ],
2461
+ 'Debt and Collections': [
2462
+ 'totalMonthlyIncome',
2463
+ 'totalDebt',
2464
+ 'ownRealEstate',
2465
+ 'valueOfAssets',
2466
+ ...nextStepsLegalDefault
2467
+ ],
2468
+ 'Divorce and Separation': [
2469
+ 'maritalStatus',
2470
+ 'haveChildren',
2471
+ ...nextStepsLegalDefaultLPM
2472
+ ],
2473
+ 'DUI and DWI': [
2474
+ 'incidentDate',
2475
+ 'priorAlcoholOffenses',
2476
+ 'typeOfAlcoholTest',
2477
+ 'bloodContentAlcoholTest',
2478
+ 'pendingCharges',
2479
+ ...nextStepsLegalDefault
2480
+ ],
2481
+ 'Employment and Workplace': [
2482
+ 'employmentAndWorkplaceTOLPDisplay',
2483
+ 'numEmployeesOfBusiness',
2484
+ 'employerType',
2485
+ 'employeeAtCompany',
2486
+ ...nextStepsLegalDefault
2487
+ ],
2488
+ 'Expungement': [
2489
+ 'incidentDate',
2490
+ 'criminalChargeType',
2491
+ ...nextStepsLegalDefaultLPM
2492
+ ],
2493
+ 'Family Issues': [
2494
+ 'maritalStatus',
2495
+ 'haveChildren',
2496
+ ...nextStepsLegalDefaultLPM
2497
+ ],
2498
+ 'Foreclosure': [
2499
+ 'ownRealEstate',
2500
+ 'typeOfProperty',
2501
+ 'amountPaymentsPastDue',
2502
+ 'loanAmount',
2503
+ 'defaultNotice',
2504
+ ...nextStepsLegalDefault
2505
+ ],
2506
+ 'Guardianship': [
2507
+ 'maritalStatus',
2508
+ 'haveChildren',
2509
+ ...nextStepsLegalDefaultLPM
2510
+ ],
2511
+ 'Immigration and Visas': [
2512
+ 'countryOfCitizenship',
2513
+ 'immigrationLocation',
2514
+ 'immigrationEntry',
2515
+ 'immigrationType',
2516
+ 'immigrationStatus',
2517
+ 'immigrationDetails',
2518
+ ...nextStepsLegalDefault
2519
+ ],
2520
+ 'Landlord and Tenant': [
2521
+ 'landlordTenantIssue',
2522
+ 'landlordTenantParty',
2523
+ ...nextStepsLegalDefault
2524
+ ],
2525
+ 'Lemon Law': [
2526
+ 'incidentDate',
2527
+ 'lawsuitOtherParty',
2528
+ ...nextStepsLegalDefault
2529
+ ],
2530
+ 'Long Term Disability': [
2531
+ 'applicantOccupation',
2532
+ 'applicantAge',
2533
+ 'applicantLTDisabilityPolicy',
2534
+ 'applicantDisabilityHowObtain',
2535
+ 'applicantPreviouslyAppliedLtdBenefits',
2536
+ 'applicantReceivedDisabilityBenefits',
2537
+ 'applicantMonthlySalary',
2538
+ ...nextStepsLegalNoDOI
2539
+ ],
2540
+ 'Medical Malpractice': [
2541
+ 'incidentDate',
2542
+ 'claimStatus',
2543
+ 'doctorTreatment',
2544
+ 'medicalMalpracticeInjuries',
2545
+ ...nextStepsLegalDefault
2546
+ ],
2547
+ 'Patents and Intellectual Property': [
2548
+ 'patentAssistanceType',
2549
+ 'patentFor',
2550
+ ...nextStepsLegalDefault
2551
+ ],
2552
+ 'Personal Injury': [
2553
+ 'incidentDate',
2554
+ 'claimStatus',
2555
+ 'atFault',
2556
+ 'primaryInjury',
2557
+ 'doctorTreatment',
2558
+ ...nextStepsLegalNoDOI
2559
+ ],
2560
+ 'Probate and Estates': [
2561
+ 'valueOfAssets',
2562
+ 'typeOfAssets',
2563
+ 'roleInMatterProbate',
2564
+ 'estateLegalServicesNeeded',
2565
+ ...nextStepsLegalDefault
2566
+ ],
2567
+ 'Property Damage': [
2568
+ 'realEstateArea',
2569
+ 'wouldLikeLawyerTo',
2570
+ ...nextStepsLegalDefault
2571
+ ],
2572
+ 'Real Estate': [
2573
+ 'realEstateTOLPDisplay',
2574
+ 'realEstateArea',
2575
+ 'wouldLikeLawyerTo',
2576
+ ...nextStepsLegalDefault
2577
+ ],
2578
+ 'Social Security Disability and Insurance': [
2579
+ 'applicantAge',
2580
+ 'disabilityConditionStopWork',
2581
+ 'disabilityWorkHistory',
2582
+ 'socialSecurityDisabilityReceivingBenefits',
2583
+ 'doctorTreatment',
2584
+ ...nextStepsLegalNoDOI
2585
+ ],
2586
+ 'Tax and IRS': [
2587
+ 'totalDebt',
2588
+ 'taxProblemDetails',
2589
+ 'taxLevel',
2590
+ 'taxIssueType',
2591
+ ...nextStepsLegalDefault
2592
+ ],
2593
+ 'Traffic and Tickets': [
2594
+ 'driversLicenseType',
2595
+ 'trafficViolations',
2596
+ 'haveCourtDate',
2597
+ ...nextStepsLegalDefault
2598
+ ],
2599
+ 'Unemployment': [
2600
+ 'numEmployeesOfBusiness',
2601
+ 'employerType',
2602
+ ...nextStepsLegalNoHA
2603
+ ],
2604
+ 'Victim of a Crime': [
2605
+ 'crimeCommittedDate',
2606
+ 'roleInMatterCriminal',
2607
+ 'pendingCharges',
2608
+ ...nextStepsLegalDefaultLPM
2609
+ ],
2610
+ 'Wills and Trusts': [
2611
+ 'valueOfAssets',
2612
+ 'typeOfAssets',
2613
+ 'roleInMatterProbate',
2614
+ 'estateLegalServicesNeeded',
2615
+ ...nextStepsLegalDefault
2616
+ ],
2617
+ 'Workers Compensation': [
2618
+ 'incidentDate',
2619
+ 'claimStatus',
2620
+ 'primaryInjury',
2621
+ 'causeOfInjury',
2622
+ 'doctorTreatment',
2623
+ ...nextStepsLegalNoDOI
2624
+ ],
2625
+ 'Workplace Harassment': [
2626
+ 'numEmployeesOfBusiness',
2627
+ 'employerType',
2628
+ 'employeeAtCompany',
2629
+ ...nextStepsLegalDefault
2630
+ ],
2631
+ 'Workplace Discrimination': [
2632
+ 'numEmployeesOfBusiness',
2633
+ 'employerType',
2634
+ 'employeeAtCompany',
2635
+ ...nextStepsLegalDefault
2636
+ ],
2637
+ 'Wrongful Death': [
2638
+ 'incidentDate',
2639
+ 'relationshipToVictim',
2640
+ 'criminalChargesFiled',
2641
+ 'causeOfDeath',
2642
+ ...nextStepsLegalNoDOI
2643
+ ],
2644
+ 'Wrongful Termination': [
2645
+ 'numEmployeesOfBusiness',
2646
+ 'employerType',
2647
+ ...nextStepsLegalDefault
2648
+ ],
2649
+ },
2650
+ '*': nextStepsLegalDefault
2651
+ };
2652
+
2653
+ // function filterMapByKey(obj, keyList) {
2654
+ // return Object.fromEntries(
2655
+ // Object.entries(obj).filter(([key]) => keyList.includes(key))
2656
+ // );
2657
+ // }
2658
+
2659
+ // export function filteredNextStepsMapLegal(keyList) {
2660
+ // const res = { Type_Of_Legal_Problem: filterMapByKey(nextStepsMapGeneralLegal["Type_Of_Legal_Problem"], keyList) }
2661
+ // res["*"] = nextStepsMapGeneralLegal["*"]
2662
+ // return res
2663
+ // }
2664
+
2665
+ const TOLPNextSteps = nextStepsMapGeneralLegal["Type_Of_Legal_Problem"];
2666
+
2667
+ ({
2668
+ 'Civil_Defense': {
2669
+ 'Yes': TOLPNextSteps["Defend a Lawsuit"],
2670
+ 'No': TOLPNextSteps["File a Lawsuit"],
2671
+ },
2117
2672
  '*': [
2118
- 'TOLPQuestions',
2119
- 'commentsWithBankruptcy',
2120
- 'legalCrossSells',
2121
- 'firstAndLast',
2122
- 'contactInfo',
2673
+ 'lawsuitOtherParty',
2674
+ ...nextStepsLegalDefault
2675
+ ]
2676
+ });
2677
+
2678
+ const nextStepsMapCivilTolp = {
2679
+ 'Type_Of_Legal_Problem': {
2680
+ 'Defend a Lawsuit': TOLPNextSteps["Defend a Lawsuit"],
2681
+ 'File a Lawsuit': TOLPNextSteps["File a Lawsuit"],
2682
+ },
2683
+ '*': [
2684
+ 'lawsuitOtherParty',
2685
+ ...nextStepsLegalDefault
2686
+ ]
2687
+ };
2688
+
2689
+ const nextStepsMapCivilTOLPDisplay = {
2690
+ 'Type_Of_Legal_Problem_Display': {
2691
+ 'Automobile Accident': TOLPNextSteps["Auto and Car Accidents"],
2692
+ 'Contract Disputes': TOLPNextSteps["Business Lawyers"],
2693
+ 'Dog Bite': TOLPNextSteps["Personal Injury"],
2694
+ 'Employment and Workplace': TOLPNextSteps["Employment and Workplace"],
2695
+ 'Fraud': TOLPNextSteps["Consumer Lawyers"],
2696
+ 'Medical Malpractice': TOLPNextSteps["Medical Malpractice"],
2697
+ 'Personal Injury': TOLPNextSteps["Personal Injury"],
2698
+ 'Property Damage': TOLPNextSteps["Property Damage"],
2699
+ 'Real Estate': TOLPNextSteps["Real Estate"],
2700
+ 'Not Sure or Other': nextStepsMapGeneralLegal["*"],
2701
+ },
2702
+ '*': [
2703
+ 'lawsuitOtherParty',
2704
+ ...nextStepsLegalDefault
2123
2705
  ]
2124
2706
  };
2125
2707
 
2708
+ ({
2709
+ 'Type_Of_Legal_Problem_Display': {
2710
+ 'Wrongful Termination': TOLPNextSteps["Wrongful Termination"],
2711
+ 'Workers Compensation': TOLPNextSteps["Workers Compensation"],
2712
+ 'Personal Injury': TOLPNextSteps["Personal Injury"],
2713
+ 'Unemployment': TOLPNextSteps["Unemployment"],
2714
+ },
2715
+ '*': [
2716
+ 'numEmployeesOfBusiness',
2717
+ 'employerType',
2718
+ 'employeeAtCompany',
2719
+ ...nextStepsLegalDefault
2720
+ ]
2721
+ });
2722
+
2723
+ ({
2724
+ 'Type_Of_Legal_Problem_Display': {
2725
+ 'Foreclosure': TOLPNextSteps["Foreclosure"],
2726
+ 'Landlord and Tenant': TOLPNextSteps["Landlord and Tenant"],
2727
+ 'Wills, Trusts, and Estates': TOLPNextSteps["Wills and Trusts"],
2728
+ 'Property Damage': TOLPNextSteps['Property Damage'],
2729
+ },
2730
+ '*': [
2731
+ 'realEstateArea',
2732
+ 'wouldLikeLawyerTo',
2733
+ ...nextStepsLegalDefault
2734
+ ]
2735
+ });
2736
+
2126
2737
  const meta = defaultMetaProps();
2127
2738
 
2128
2739
  meta.data.dynamicSchema = [
2129
- civilLawsuitTOLPQuestions(),
2130
- commentsWithBankruptcy(),
2131
- legalCrossSells(),
2740
+ atFault(),
2741
+ businessServices(),
2742
+ businessType(),
2743
+ civilLawsuitTOLPDisplay({
2744
+ nextStepMap: nextStepsMapCivilTOLPDisplay
2745
+ }),
2746
+ claimStatus(),
2747
+ consumerLawyerType(),
2748
+ degreeOfInterest(),
2749
+ doctorTreatment(),
2750
+ employerType(),
2751
+ employeeAtCompany(),
2752
+ haveAttorney(),
2753
+ incidentDate({
2754
+ nextOnInput: false
2755
+ }),
2756
+ lawsuitOtherParty(),
2757
+ medicalMalpracticeInjuries(),
2758
+ numEmployeesOfBusiness(),
2759
+ policeReportFiled(),
2760
+ primaryInjury(),
2761
+ realEstateArea(),
2762
+ wouldLikeLawyerTo(),
2763
+ zipcode(),
2764
+ commentsWithBankruptcy({
2765
+ label: null,
2766
+ headline: 'Please briefly describe your situation:',
2767
+ headlineClass: '!t-text-dark',
2768
+ }),
2769
+ legalCrossSells({
2770
+ headlineClass: '!t-text-dark'
2771
+ }),
2132
2772
  autoAndCarAccidentCrossSellQuestions(),
2133
2773
  personalInjuryCrossSellQuestions(),
2134
2774
  workersCompensationCrossSellQuestions(),
@@ -2138,7 +2778,9 @@ meta.data.dynamicSchema = [
2138
2778
  willsAndTrustsCrossSellQuestions(),
2139
2779
  divorceAndSeparationCrossSellQuestions(),
2140
2780
  childCustodyCrossSellQuestions(),
2141
- firstAndLastV2()
2781
+ firstAndLastV3({
2782
+ headlineClass: '!t-text-dark'
2783
+ }),
2142
2784
  ];
2143
2785
 
2144
2786
  const schema = [
@@ -2152,6 +2794,7 @@ const schema = [
2152
2794
  valueOverrideMap: legalAllValueOverrideMap
2153
2795
  }),
2154
2796
  children: [
2797
+ progressBar(),
2155
2798
  headline({
2156
2799
  children: '$urlParam("hl", "Schedule a Lawsuit Consultation")',
2157
2800
  if: '$activeStep === $firstStep()'
@@ -2164,8 +2807,9 @@ const schema = [
2164
2807
  class: 'form-body'
2165
2808
  },
2166
2809
  children: [
2167
- civilLawsuitTOLPAndZip({
2168
- nextStepMap: nextStepsMapLegalLegacy
2810
+ civilLawsuitTOLP({
2811
+ nextOnInput: false,
2812
+ nextStepMap: nextStepsMapCivilTolp
2169
2813
  }),
2170
2814
  dynamicSchemaNode,
2171
2815
  contactInfo(),