bhl-forms 0.7.3 → 0.7.4

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 (101) hide show
  1. package/dist/bhl-forms.es.js +551 -543
  2. package/dist/bhl-forms.iife.js +4 -4
  3. package/dist/bhl-forms.modern.es.js +649 -649
  4. package/dist/bhl-forms.modern.iife.js +7 -7
  5. package/dist/bhl-forms.modern.umd.js +7 -7
  6. package/dist/bhl-forms.umd.js +4 -4
  7. package/dist/forms/accidentsAndInjuries.es.js +1459 -1151
  8. package/dist/forms/accidentsAndInjuries.iife.js +1 -1
  9. package/dist/forms/accidentsAndInjuries.json +1 -1
  10. package/dist/forms/appraisals.es.js +138 -137
  11. package/dist/forms/appraisals.iife.js +1 -1
  12. package/dist/forms/business.es.js +1432 -1149
  13. package/dist/forms/business.iife.js +1 -1
  14. package/dist/forms/business.json +1 -1
  15. package/dist/forms/childAndFamily.es.js +1327 -1043
  16. package/dist/forms/childAndFamily.iife.js +1 -1
  17. package/dist/forms/childAndFamily.json +1 -1
  18. package/dist/forms/childAndFamilySingle.es.js +1526 -1378
  19. package/dist/forms/childAndFamilySingle.iife.js +1 -1
  20. package/dist/forms/childAndFamilySingle.json +1 -1
  21. package/dist/forms/civilLawsuit.es.js +1998 -1807
  22. package/dist/forms/civilLawsuit.iife.js +1 -1
  23. package/dist/forms/civilLawsuit.json +1 -1
  24. package/dist/forms/coins.es.js +138 -137
  25. package/dist/forms/coins.iife.js +1 -1
  26. package/dist/forms/contracts.es.js +1347 -1050
  27. package/dist/forms/contracts.iife.js +1 -1
  28. package/dist/forms/contracts.json +1 -1
  29. package/dist/forms/criminal.es.js +1830 -1711
  30. package/dist/forms/criminal.iife.js +1 -1
  31. package/dist/forms/criminal.json +1 -1
  32. package/dist/forms/divorce.es.js +1539 -1385
  33. package/dist/forms/divorce.iife.js +1 -1
  34. package/dist/forms/divorce.json +1 -1
  35. package/dist/forms/employmentAndWorkplace.es.js +1831 -1678
  36. package/dist/forms/employmentAndWorkplace.iife.js +1 -1
  37. package/dist/forms/employmentAndWorkplace.json +1 -1
  38. package/dist/forms/generalHomeImprovement.es.js +1361 -1971
  39. package/dist/forms/generalHomeImprovement.iife.js +1 -1
  40. package/dist/forms/generalHomeImprovement.json +1 -1
  41. package/dist/forms/generalHomeImprovementThankYou.es.js +1361 -1971
  42. package/dist/forms/generalHomeImprovementThankYou.iife.js +1 -1
  43. package/dist/forms/generalHomeImprovementThankYou.json +1 -1
  44. package/dist/forms/generalLegal.es.js +3035 -2535
  45. package/dist/forms/generalLegal.iife.js +1 -1
  46. package/dist/forms/generalLegal.json +1 -1
  47. package/dist/forms/generalLegalJustAnswer.es.js +3214 -2872
  48. package/dist/forms/generalLegalJustAnswer.iife.js +1 -1
  49. package/dist/forms/generalLegalJustAnswer.json +1 -1
  50. package/dist/forms/generalLegalPopUnder.es.js +3035 -2535
  51. package/dist/forms/generalLegalPopUnder.iife.js +1 -1
  52. package/dist/forms/generalLegalPopUnder.json +1 -1
  53. package/dist/forms/generalLegalPopUnderSingle.es.js +3214 -2872
  54. package/dist/forms/generalLegalPopUnderSingle.iife.js +1 -1
  55. package/dist/forms/generalLegalPopUnderSingle.json +1 -1
  56. package/dist/forms/generalLegalSingle.es.js +3214 -2872
  57. package/dist/forms/generalLegalSingle.iife.js +1 -1
  58. package/dist/forms/generalLegalSingle.json +1 -1
  59. package/dist/forms/generalLegalThankYou.es.js +2823 -2303
  60. package/dist/forms/generalLegalThankYou.iife.js +1 -1
  61. package/dist/forms/generalLegalThankYou.json +1 -1
  62. package/dist/forms/generalLegalThankYouConsultation.es.js +3214 -2872
  63. package/dist/forms/generalLegalThankYouConsultation.iife.js +1 -1
  64. package/dist/forms/generalLegalThankYouConsultation.json +1 -1
  65. package/dist/forms/harassmentAndDiscrimination.es.js +1423 -1120
  66. package/dist/forms/harassmentAndDiscrimination.iife.js +1 -1
  67. package/dist/forms/harassmentAndDiscrimination.json +1 -1
  68. package/dist/forms/landlordTenant.es.js +1393 -1106
  69. package/dist/forms/landlordTenant.iife.js +1 -1
  70. package/dist/forms/landlordTenant.json +1 -1
  71. package/dist/forms/malpractice.es.js +1529 -1223
  72. package/dist/forms/malpractice.iife.js +1 -1
  73. package/dist/forms/malpractice.json +1 -1
  74. package/dist/forms/mechanics.es.js +701 -530
  75. package/dist/forms/mechanics.iife.js +1 -1
  76. package/dist/forms/mechanics.json +1 -1
  77. package/dist/forms/patentsAndIP.es.js +1828 -1652
  78. package/dist/forms/patentsAndIP.iife.js +1 -1
  79. package/dist/forms/patentsAndIP.json +1 -1
  80. package/dist/forms/realEstate.es.js +2850 -2405
  81. package/dist/forms/realEstate.iife.js +1 -1
  82. package/dist/forms/realEstate.json +1 -1
  83. package/dist/forms/repossession.es.js +1566 -1251
  84. package/dist/forms/repossession.iife.js +1 -1
  85. package/dist/forms/repossession.json +1 -1
  86. package/dist/forms/ssdi.es.js +635 -520
  87. package/dist/forms/ssdi.iife.js +1 -1
  88. package/dist/forms/ssdi.json +1 -1
  89. package/dist/forms/testForm.es.js +409 -371
  90. package/dist/forms/testForm.iife.js +1 -1
  91. package/dist/forms/testForm.json +1 -1
  92. package/dist/forms/testRedirects.es.js +420 -316
  93. package/dist/forms/testRedirects.iife.js +1 -1
  94. package/dist/forms/testRedirects.json +1 -1
  95. package/dist/forms/vets.es.js +138 -137
  96. package/dist/forms/vets.iife.js +1 -1
  97. package/dist/forms/willsAndTrusts.es.js +1426 -1112
  98. package/dist/forms/willsAndTrusts.iife.js +1 -1
  99. package/dist/forms/willsAndTrusts.json +1 -1
  100. package/dist/main.css +1 -1
  101. package/package.json +1 -1
@@ -6,96 +6,101 @@ 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
- 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.";
9
+ const DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC_LEGAL =
10
+ '$getKey($meta, "commentsPlaceholders." + $get(Type_Of_Legal_Problem).value, $meta.defaultCommentsPlaceholder)';
11
+ const DEFAULT_COMMENTS_LABEL_LEGAL = "Please briefly describe your legal issue in a few words:";
12
+ const DEFAULT_FINAL_HEADLINE_LEGAL = "Submit Your Case";
13
+ const DEFAULT_FINAL_HEADLINE_DYNAMIC_LEGAL =
14
+ '$getKey($meta, "finalHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalHeadline)';
15
+ const DEFAULT_FINAL_SUBHEADLINE_LEGAL =
16
+ "You may benefit from speaking with a legal professional. Please verify your contact information.";
17
+ const DEFAULT_FINAL_SUBHEADLINE_DYNAMIC_LEGAL =
18
+ '$getKey($meta, "finalSubHeadlines." + $get(Type_Of_Legal_Problem).value, $meta.defaultFinalSubHeadline)';
19
+ const TCPA_LANGUAGE_LEGAL =
20
+ "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
21
  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',
22
+ "Auto and Car Accidents": "Injured in a Car Accident",
23
+ "Personal Injury": "Personal or Workplace Injury",
24
+ "DUI and DWI": "Involved in a DUI/DWI",
25
+ "Wills and Trusts": "Need a Will or Trust",
26
+ "Power of Attorney": "Update Power of Attorney",
27
+ "Social Security Disability and Insurance": "Interest in Disability Benefits",
23
28
  };
24
29
  const CROSS_SELL_OPTION_MAP_LEGAL = {
25
30
  // 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',
31
+ "Auto and Car Accidents": {
32
+ "Social Security Disability and Insurance": "Interest in Disability Benefits",
33
+ "Wills and Trusts": "Need a Will or Trust",
34
+ "Workers Compensation": "Workplace Injury",
35
+ "Power of Attorney": "Update Power of Attorney",
36
+ "Divorce and Separation": "Need a Divorce or Separation",
37
+ "Child Custody": "Need help with Child Custody",
33
38
  },
34
39
  "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
+ "DUI and DWI": "Involved in a DUI/DWI",
41
+ "Wills and Trusts": "Need a Will or Trust",
42
+ "Power of Attorney": "Update Power of Attorney",
43
+ "Divorce and Separation": "Need a Divorce or Separation",
44
+ "Child Custody": "Need help with Child Custody",
40
45
  // TODO add one more?
41
46
  },
42
47
  "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
+ "DUI and DWI": "Involved in a DUI/DWI",
49
+ "Wills and Trusts": "Need a Will or Trust",
50
+ "Power of Attorney": "Update Power of Attorney",
51
+ "Divorce and Separation": "Need a Divorce or Separation",
52
+ "Child Custody": "Need help with Child Custody",
48
53
  // TODO add one more?
49
54
  },
50
55
  "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',
56
+ "Personal Injury": "Personal or Workplace Injury",
57
+ "Wills and Trusts": "Need a Will or Trust",
58
+ "Social Security Disability and Insurance": "Interest in Disability Benefits",
59
+ "Power of Attorney": "Update Power of Attorney",
60
+ "Divorce and Separation": "Need a Divorce or Separation",
61
+ "Child Custody": "Need help with Child Custody",
57
62
  },
58
63
  "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',
64
+ "Auto and Car Accidents": "Injured in a Car Accident",
65
+ "Personal Injury": "Personal or Workplace Injury",
66
+ "DUI and DWI": "Involved in a DUI/DWI",
67
+ "Social Security Disability and Insurance": "Interest in Disability Benefits",
68
+ "Divorce and Separation": "Need a Divorce or Separation",
69
+ "Child Custody": "Need help with Child Custody",
65
70
  },
66
71
  "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',
72
+ "Auto and Car Accidents": "Injured in a Car Accident",
73
+ "Personal Injury": "Personal or Workplace Injury",
74
+ "DUI and DWI": "Involved in a DUI/DWI",
75
+ "Social Security Disability and Insurance": "Interest in Disability Benefits",
76
+ "Divorce and Separation": "Need a Divorce or Separation",
77
+ "Child Custody": "Need help with Child Custody",
73
78
  },
74
79
  "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',
80
+ "Auto and Car Accidents": "Injured in a Car Accident",
81
+ "Personal Injury": "Personal or Workplace Injury",
82
+ "DUI and DWI": "Involved in a DUI/DWI",
83
+ "Social Security Disability and Insurance": "Interest in Disability Benefits",
84
+ "Divorce and Separation": "Need a Divorce or Separation",
85
+ "Child Custody": "Need help with Child Custody",
81
86
  },
82
87
  "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',
88
+ "Auto and Car Accidents": "Injured in a Car Accident",
89
+ "DUI and DWI": "Involved in a DUI/DWI",
90
+ "Wills and Trusts": "Need a Will or Trust",
91
+ "Power of Attorney": "Update Power of Attorney",
92
+ "Divorce and Separation": "Need a Divorce or Separation",
93
+ "Child Custody": "Need help with Child Custody",
89
94
  },
90
95
  "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',
96
+ "Auto and Car Accidents": "Injured in a Car Accident",
97
+ "DUI and DWI": "Involved in a DUI/DWI",
98
+ "Wills and Trusts": "Need a Will or Trust",
99
+ "Power of Attorney": "Update Power of Attorney",
100
+ "Divorce and Separation": "Need a Divorce or Separation",
101
+ "Child Custody": "Need help with Child Custody",
97
102
  },
98
- '*': defaultLegalImprovementCrossSells,
103
+ "*": defaultLegalImprovementCrossSells,
99
104
  };
100
105
 
101
106
  // ------ Common Base Settings
@@ -104,32 +109,48 @@ const checkbox = (updates) => {
104
109
  if (updates.name && !updates.id) {
105
110
  updates.id = updates.name;
106
111
  }
107
- return merge({
108
- $formkit: 'checkbox',
109
- validation: 'required',
110
- validationMessages: {
111
- required: 'Field is required'
112
- }
113
- }, updates)
112
+ return merge(
113
+ {
114
+ $formkit: "checkbox",
115
+ validation: "required",
116
+ validationMessages: {
117
+ required: "Field is required",
118
+ },
119
+ },
120
+ updates
121
+ )
114
122
  };
115
123
 
116
124
  const sbsCheckbox = (updates) => {
117
- updates.legendClass = 'legend-left required';
118
- updates.fieldsetClass = '$reset side-by-side';
119
- updates.optionsClass = 't-pl-1';
120
- updates.innerClass = 't-flex t-items-center';
121
- updates.wrapperClass = 't-mb-3';
125
+ updates.legendClass = "legend-left required";
126
+ updates.fieldsetClass = "$reset side-by-side";
127
+ updates.optionsClass = "t-pl-1";
128
+ updates.innerClass = "t-flex t-items-center";
129
+ updates.wrapperClass = "t-mb-3";
122
130
  return checkbox(updates)
123
131
  };
124
132
 
125
133
  const col2Checkbox = (updates) => {
126
134
  if (!updates || !updates.legendClass) {
127
- updates.legendClass = 'required';
135
+ updates.legendClass = "required";
128
136
  }
129
- updates.fieldsetClass = '$reset';
130
- updates.optionsClass = 't-pl-8 md:t-pl-2 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2';
131
- updates.innerClass = 't-items-start';
132
- updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
137
+ updates.fieldsetClass = "$reset";
138
+ updates.optionsClass = "t-pl-8 md:t-pl-2 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2";
139
+ updates.innerClass = "t-items-start";
140
+ updates.wrapperClass = "$reset t-flex t-cursor-pointer t-mb-3";
141
+ return checkbox(updates)
142
+ };
143
+
144
+ const verticalCol2Checkbox = (updates) => {
145
+ if (!updates || !updates.legendClass) {
146
+ updates.legendClass = "required";
147
+ }
148
+ updates.fieldsetClass = "$reset t-flex t-justify-center";
149
+ updates.optionClass = "t-mx-5";
150
+ updates.optionsClass = "t-pl-2 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2";
151
+ updates.innerClass = "t-items-center";
152
+ updates.wrapperClass = "$reset t-flex t-cursor-pointer t-mb-3";
153
+ updates.messagesClass = "t-flex t-justify-center";
133
154
  return checkbox(updates)
134
155
  };
135
156
 
@@ -137,72 +158,84 @@ const radio = (updates) => {
137
158
  if (updates.name && !updates.id) {
138
159
  updates.id = updates.name;
139
160
  }
140
- return merge({
141
- $formkit: 'radio',
142
- validation: 'required',
143
- validationMessages: {
144
- required: 'Field is required'
161
+ return merge(
162
+ {
163
+ $formkit: "radio",
164
+ validation: "required",
165
+ validationMessages: {
166
+ required: "Field is required",
167
+ },
168
+ optionsClass: "t-pt-3 t-pl-1",
169
+ legendClass: "required",
145
170
  },
146
- optionsClass: 't-pt-3 t-pl-1',
147
- legendClass: 'required'
148
- }, updates)
171
+ updates
172
+ )
173
+ };
174
+
175
+ const col2Radio = (updates) => {
176
+ updates.legendClass = "required";
177
+ updates.fieldsetClass = "$reset";
178
+ updates.optionsClass = "t-pl-2 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2";
179
+ updates.innerClass = "t-items-start";
180
+ updates.wrapperClass = "$reset t-flex t-cursor-pointer t-mb-3";
181
+ return radio(updates)
149
182
  };
150
183
 
151
184
  const col2RadioCenter = (updates) => {
152
- updates.legendClass = 'required t-w-[100%] t-text-center';
153
- if (typeof updates.fieldsetClass === 'undefined') {
154
- updates.fieldsetClass = '$reset t-flex t-justify-center';
185
+ updates.legendClass = "required t-w-[100%] t-text-center";
186
+ if (typeof updates.fieldsetClass === "undefined") {
187
+ updates.fieldsetClass = "$reset t-flex t-justify-center";
155
188
  }
156
- updates.optionsClass = 't-pl-4 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2';
157
- updates.innerClass = 't-items-start';
158
- updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
159
- updates.optionClass = 't-pl-4 md:t-pl-8 md:t-min-w-[200px]';
160
- updates.messagesClass = 't-flex t-justify-center';
161
- updates.helpClass = 't-mt-0 t-mb-4 !t-text-sm t-text-center';
189
+ updates.optionsClass = "t-pl-4 t-pt-3 t-grid t-grid-cols-1 md:t-grid-cols-2";
190
+ updates.innerClass = "t-items-start";
191
+ updates.wrapperClass = "$reset t-flex t-cursor-pointer t-mb-3";
192
+ updates.optionClass = "t-pl-4 md:t-pl-8 md:t-min-w-[200px]";
193
+ updates.messagesClass = "t-flex t-justify-center";
194
+ updates.helpClass = "t-mt-0 t-mb-4 !t-text-sm t-text-center";
162
195
  return radio(updates)
163
196
  };
164
197
 
165
198
  const sbs2ColRadio = (updates) => {
166
- updates.legendClass = 'legend-left-flex md:t-max-w-[40%] required';
167
- updates.fieldsetClass = '$reset side-by-side-flex';
168
- updates.optionsClass = 'md:t-ml-4 md:t-mt-2 t-grid t-grid-cols-1 md:t-grid-cols-2-125';
169
- updates.innerClass = 't-flex t-items-start';
170
- updates.wrapperClass = '$reset t-flex t-cursor-pointer t-mb-3';
199
+ updates.legendClass = "legend-left-flex md:t-max-w-[40%] required";
200
+ updates.fieldsetClass = "$reset side-by-side-flex";
201
+ updates.optionsClass = "md:t-ml-4 md:t-mt-2 t-grid t-grid-cols-1 md:t-grid-cols-2-125";
202
+ updates.innerClass = "t-flex t-items-start";
203
+ updates.wrapperClass = "$reset t-flex t-cursor-pointer t-mb-3";
171
204
  return radio(updates)
172
205
  };
173
206
 
174
207
  const sbs2ItemRadio = (updates) => {
175
- updates.legendClass = 'legend-left t-pb-1 required';
176
- updates.fieldsetClass = '$reset side-by-side t-items-center';
177
- updates.optionsClass = 't-mt-1 t-grid t-grid-cols-1 md:t-grid-cols-2-125 t-items-center';
178
- updates.innerClass = 't-flex t-items-center';
179
- updates.optionClass = 't-pr-1';
208
+ updates.legendClass = "legend-left t-pb-1 required";
209
+ updates.fieldsetClass = "$reset side-by-side t-items-center";
210
+ updates.optionsClass = "t-mt-1 t-grid t-grid-cols-1 md:t-grid-cols-2-125 t-items-center";
211
+ updates.innerClass = "t-flex t-items-center";
212
+ updates.optionClass = "t-pr-1";
180
213
  return radio(updates)
181
214
  };
182
215
 
183
216
  const sbsYesNoRadio = (updates) => {
184
- updates.options = ['Yes', 'No'];
217
+ updates.options = ["Yes", "No"];
185
218
  return sbs2ItemRadio(updates)
186
219
  };
187
220
 
188
221
  const verticalButtonRadio = (updates) => {
189
- updates.legendClass = 'legend-left';
190
- updates.fieldsetClass = '$reset t-flex t-justify-center t-flex-col-reverse t-items-center';
191
- if (typeof updates.optionsClass === 'undefined') {
192
- updates.optionsClass = 't-flex t-flex-col sm:t-flex-row t-justify-center t-my-3';
222
+ updates.legendClass = "legend-left";
223
+ updates.fieldsetClass = "$reset t-flex t-justify-center t-flex-col-reverse t-items-center";
224
+ if (typeof updates.optionsClass === "undefined") {
225
+ updates.optionsClass = "t-flex t-flex-col sm:t-flex-row t-justify-center t-my-3";
193
226
  }
194
- updates.optionClass = 'radiobtn t-my-2 sm:t-my-0 t-mx-2 md:t-mx-5';
195
- updates.wrapperClass = '$reset formkit-wrapper t-mb-0 t-flex t-items-center t-h-[100%]';
196
- updates.labelClass = 't-font-semibold t-text-[#1e448f] t-w-[100%]';
227
+ updates.optionClass = "radiobtn t-my-2 sm:t-my-0 t-mx-2 md:t-mx-5";
228
+ updates.wrapperClass = "$reset formkit-wrapper t-mb-0 t-flex t-items-center t-h-[100%]";
229
+ updates.labelClass = "t-font-semibold t-text-[#1e448f] t-w-[100%]";
197
230
  updates.decoratorIcon = false;
198
- updates.messagesClass = 't-flex t-justify-center';
199
- updates.helpClass = 't-mt-2.5 !t-text-sm t-text-center';
231
+ updates.messagesClass = "t-flex t-justify-center";
232
+ updates.helpClass = "t-mt-2.5 !t-text-sm t-text-center";
200
233
  return radio(updates)
201
234
  };
202
235
 
203
236
  const verticalYesNoRadio = (updates) => {
204
- updates.options = ['Yes', 'No'];
205
- updates.optionsClass = 't-flex t-justify-center t-my-3';
237
+ updates.options = ["Yes", "No"];
238
+ updates.optionsClass = "t-flex t-justify-center t-my-3";
206
239
  return verticalButtonRadio(updates)
207
240
  };
208
241
 
@@ -210,23 +243,35 @@ const select = (updates) => {
210
243
  if (updates.name && !updates.id) {
211
244
  updates.id = updates.name;
212
245
  }
213
- return merge({
214
- $formkit: 'select',
215
- placeholder: "Please Select",
216
- validation: 'required',
217
- validationMessages: {
218
- required: 'Field is required'
246
+ return merge(
247
+ {
248
+ $formkit: "select",
249
+ placeholder: "Please Select",
250
+ validation: "required",
251
+ validationMessages: {
252
+ required: "Field is required",
253
+ },
254
+ inputClass: "t-bg-white",
255
+ labelClass: "required",
219
256
  },
220
- inputClass: 't-bg-white',
221
- labelClass: 'required'
222
- }, updates)
257
+ updates
258
+ )
223
259
  };
224
260
 
225
261
  const sbsSelect = (updates) => {
226
- updates.labelClass = 'required';
227
- updates.wrapperClass = 'side-by-side t-items-center';
228
- updates.innerClass = 'select-height-content';
229
- updates.helpClass = 't-mt-2.5 md:t-text-right md:t-mt-[-5px]';
262
+ updates.labelClass = "required";
263
+ updates.wrapperClass = "side-by-side t-items-center";
264
+ updates.innerClass = "select-height-content";
265
+ updates.helpClass = "t-mt-2.5 md:t-text-right md:t-mt-[-5px]";
266
+ return select(updates)
267
+ };
268
+
269
+ const verticalSelect = (updates) => {
270
+ updates.labelClass = "required";
271
+ updates.wrapperClass = "t-flex t-justify-center";
272
+ updates.messagesClass = "t-flex t-justify-center";
273
+ updates.inputClass = "t-min-w-[150px] t-bg-white";
274
+ updates.helpClass = "t-mt-2.5 t-text-center";
230
275
  return select(updates)
231
276
  };
232
277
 
@@ -234,26 +279,29 @@ const text = (updates) => {
234
279
  if (updates.name && !updates.id) {
235
280
  updates.id = updates.name;
236
281
  }
237
- return merge({
238
- $formkit: 'text',
239
- validation: 'required',
240
- validationMessages: {
241
- required: 'Field is required'
282
+ return merge(
283
+ {
284
+ $formkit: "text",
285
+ validation: "required",
286
+ validationMessages: {
287
+ required: "Field is required",
288
+ },
289
+ labelClass: "required",
242
290
  },
243
- labelClass: 'required'
244
- }, updates)
291
+ updates
292
+ )
245
293
  };
246
294
 
247
295
  const sbsText = (updates) => {
248
- updates.wrapperClass = 'side-by-side t-items-center';
296
+ updates.wrapperClass = "side-by-side t-items-center";
249
297
  return text(updates)
250
298
  };
251
299
 
252
300
  const verticalText = (updates) => {
253
- updates.wrapperClass = 't-flex t-justify-center';
254
- updates.messagesClass = 't-flex t-justify-center';
255
- updates.inputClass = 't-text-center';
256
- updates.helpClass = 't-mt-2.5 !t-text-sm t-text-center';
301
+ updates.wrapperClass = "t-flex t-justify-center";
302
+ updates.messagesClass = "t-flex t-justify-center";
303
+ updates.inputClass = "t-text-center";
304
+ updates.helpClass = "t-mt-2.5 !t-text-sm t-text-center";
257
305
  return text(updates)
258
306
  };
259
307
 
@@ -261,526 +309,772 @@ const textArea = (updates) => {
261
309
  if (updates.name && !updates.id) {
262
310
  updates.id = updates.name;
263
311
  }
264
- return merge({
265
- $formkit: 'textarea',
266
- rows: 5,
267
- maxlength: 500,
268
- validation: 'required',
269
- validationMessages: {
270
- required: 'Field is required'
312
+ return merge(
313
+ {
314
+ $formkit: "textarea",
315
+ rows: 5,
316
+ maxlength: 500,
317
+ validation: "required",
318
+ validationMessages: {
319
+ required: "Field is required",
320
+ },
321
+ innerClass: "t-max-w-xl",
322
+ labelClass: "required",
271
323
  },
272
- innerClass: 't-max-w-xl',
273
- labelClass: 'required'
274
- }, updates)
324
+ updates
325
+ )
275
326
  };
276
327
 
277
328
  const date = (updates) => {
278
329
  if (updates.name && !updates.id) {
279
330
  updates.id = updates.name;
280
331
  }
281
- return merge({
282
- $formkit: 'DatePicker',
283
- validation: 'required',
284
- validationMessages: {
285
- required: 'Field is required'
332
+ return merge(
333
+ {
334
+ $formkit: "DatePicker",
335
+ validation: "required",
336
+ validationMessages: {
337
+ required: "Field is required",
338
+ },
339
+ labelClass: "required t-block t-mb-3 t-font-semibold t-text-base formkit-invalid:t-text-red-500",
340
+ innerClass:
341
+ "t-border t-border-gray-400 formkit-invalid:t-border-red-500 t-rounded t-mb-1 focus-within:t-border-blue-500",
286
342
  },
287
- labelClass: 'required t-block t-mb-3 t-font-semibold t-text-base formkit-invalid:t-text-red-500',
288
- innerClass: 't-border t-border-gray-400 formkit-invalid:t-border-red-500 t-rounded t-mb-1 focus-within:t-border-blue-500'
289
- }, updates)
343
+ updates
344
+ )
290
345
  };
291
346
 
292
347
  const sbsDate = (updates) => {
293
- updates.wrapperClass = 'side-by-side t-items-center';
348
+ updates.wrapperClass = "side-by-side t-items-center";
294
349
  return date(updates)
295
350
  };
296
351
 
297
- const email = (scope) => sbsText({
298
- $formkit: 'email',
299
- name: scope ? scope + ':' + 'Email' : 'Email',
300
- label: 'Email Address:',
301
- placeholder: 'email@domain.com',
302
- autocomplete: 'email',
303
- 'data-tf-sensitive': 'false',
304
- validation: 'required|email',
305
- validationMessages: {
306
- required: 'Email is required',
307
- email: 'Invalid Email'
308
- }
309
- });
352
+ const verticalDate = (updates) => {
353
+ updates.wrapperClass = "t-flex t-justify-center";
354
+ updates.inputClass = "t-text-center";
355
+ updates.messagesClass = "t-flex t-justify-center";
356
+ return date(updates)
357
+ };
310
358
 
311
- const firstName = (scope) => sbsText({
312
- label: 'First Name:',
313
- placeholder: 'First',
314
- name: scope ? scope + ':' + 'First_Name' : 'First_Name',
315
- autocomplete: "given-name",
316
- validationMessages: {
317
- required: 'First Name is required'
318
- }
319
- });
359
+ const email = (scope, vertical, updates = {}) => {
360
+ const func = vertical ? verticalText : sbsText;
361
+ const label = vertical ? updates.label : "Email Address:";
362
+ return func({
363
+ $formkit: "email",
364
+ name: scope ? scope + ":" + "Email" : "Email",
365
+ label,
366
+ placeholder: "email@domain.com",
367
+ autocomplete: "email",
368
+ "data-tf-sensitive": "false",
369
+ validation: "required|email",
370
+ validationMessages: {
371
+ required: "Email is required",
372
+ email: "Invalid Email",
373
+ },
374
+ ...updates,
375
+ })
376
+ };
320
377
 
321
- const lastName = (scope) => sbsText({
322
- label: 'Last Name:',
323
- placeholder: 'Last',
324
- name: scope ? scope + ':' + 'Last_Name' : 'Last_Name',
325
- autocomplete: "family-name",
326
- validationMessages: {
327
- required: 'Last Name is required'
328
- }
329
- });
378
+ const firstName = (scope, vertical, updates = {}) => {
379
+ const func = vertical ? verticalText : sbsText;
380
+ const label = vertical ? updates.label : "First Name:";
381
+ return func({
382
+ label,
383
+ placeholder: "First",
384
+ name: scope ? scope + ":" + "First_Name" : "First_Name",
385
+ autocomplete: "given-name",
386
+ validationMessages: {
387
+ required: "First Name is required",
388
+ },
389
+ ...updates,
390
+ })
391
+ };
330
392
 
331
- const phone = (scope) => sbsText({
332
- $formkit: 'tel',
333
- name: scope ? scope + ':' + 'Primary_Phone' : 'Primary_Phone',
334
- label: 'Phone Number:',
335
- placeholder: '###-###-####',
336
- maxlength: 12,
337
- help: '10-digit phone number, hyphens optional',
338
- autocomplete: 'tel-national',
339
- 'data-tf-sensitive': 'false',
340
- validation: 'required|matches:/^[0-9]{3}-?[0-9]{3}-?[0-9]{4}$/|valid_phone',
341
- validationMessages: {
342
- required: 'Field is required',
343
- matches: 'Invalid Phone Format, use ###-###-####',
344
- valid_phone: 'Invalid Phone Number'
345
- },
346
- helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]"
347
- });
393
+ const lastName = (scope, vertical, updates = {}) => {
394
+ const func = vertical ? verticalText : sbsText;
395
+ const label = vertical ? updates.label : "Last Name:";
396
+ return func({
397
+ label,
398
+ placeholder: "Last",
399
+ name: scope ? scope + ":" + "Last_Name" : "Last_Name",
400
+ autocomplete: "family-name",
401
+ validationMessages: {
402
+ required: "Last Name is required",
403
+ },
404
+ ...updates,
405
+ })
406
+ };
348
407
 
408
+ const phone = (scope, vertical, updates = {}) => {
409
+ const func = vertical ? verticalText : sbsText;
410
+ const label = vertical ? updates.label : "Phone Number:";
411
+ return func({
412
+ $formkit: "tel",
413
+ name: scope ? scope + ":" + "Primary_Phone" : "Primary_Phone",
414
+ label,
415
+ placeholder: "###-###-####",
416
+ maxlength: 12,
417
+ help: "10-digit phone number, hyphens optional",
418
+ autocomplete: "tel-national",
419
+ "data-tf-sensitive": "false",
420
+ validation: "required|matches:/^[0-9]{3}-?[0-9]{3}-?[0-9]{4}$/|valid_phone",
421
+ validationMessages: {
422
+ required: "Phone Number is required",
423
+ matches: "Invalid Phone Format, use ###-###-####",
424
+ valid_phone: "Invalid Phone Number",
425
+ },
426
+ helpClass: "t-mt-2.5 md:t-text-right md:t-mt-[-2px]",
427
+ ...updates,
428
+ })
429
+ };
349
430
 
350
431
  const zipcode$1 = (scope, vertical, updates = {}) => {
351
432
  const func = vertical ? verticalText : sbsText;
352
- const label = vertical ? (updates.label) : 'Zip Code:';
353
- const help = vertical ? (updates.help ?? "We try to match you with local help") : null;
433
+ const label = vertical ? updates.label : "Zip Code:";
434
+ const help = vertical ? updates.help ?? "We try to match you with local help" : null;
354
435
  return func({
355
436
  label,
356
437
  help,
357
- placeholder: '#####',
358
- name: scope ? scope + ':' + 'Zip' : 'Zip',
438
+ placeholder: "#####",
439
+ name: scope ? scope + ":" + "Zip" : "Zip",
359
440
  maxlength: 5,
360
441
  inputmode: "numeric",
361
- autocomplete: 'postal-code',
362
- validation: 'required|matches:/^[0-9]{5}$/',
442
+ autocomplete: "postal-code",
443
+ validation: "required|matches:/^[0-9]{5}$/",
363
444
  validationMessages: {
364
- required: 'Zip Code is required',
365
- matches: 'Invalid Zip Code'
445
+ required: "Zip Code is required",
446
+ matches: "Invalid Zip Code",
366
447
  },
367
- ...updates
448
+ ...updates,
368
449
  })
369
450
  };
370
451
 
371
452
  const applicantAge = (scope, vertical, updates = {}) => {
372
453
  const func = vertical ? verticalText : sbsText;
373
- const label = vertical ? (updates.label) : 'Age of Applicant?';
374
- const value = vertical ? (updates.value ?? "50") : null;
375
- return func(merge({
376
- label,
377
- placeholder: 'Age between 18 and 65',
378
- name: scope ? scope + ':' + 'Applicant_Age' : 'Applicant_Age',
379
- value,
380
- maxlength: 2,
381
- inputmode: "numeric",
382
- validation: "required|min:18,max:65",
383
- validationMessages: {
384
- required: 'Applicant Age is required',
385
- min: 'Invalid Age - must be between 18 and 65',
386
- max: 'Invalid Age - must be between 18 and 65',
387
- },
388
- ...updates
389
- }))
454
+ const label = vertical ? updates.label : "Age of Applicant?";
455
+ const value = vertical ? updates.value ?? "50" : null;
456
+ return func(
457
+ merge({
458
+ label,
459
+ placeholder: "Age between 18 and 65",
460
+ name: scope ? scope + ":" + "Applicant_Age" : "Applicant_Age",
461
+ value,
462
+ maxlength: 2,
463
+ inputmode: "numeric",
464
+ validation: "required|min:18,max:65",
465
+ validationMessages: {
466
+ required: "Applicant Age is required",
467
+ min: "Invalid Age - must be between 18 and 65",
468
+ max: "Invalid Age - must be between 18 and 65",
469
+ },
470
+ ...updates,
471
+ })
472
+ )
390
473
  };
391
474
 
392
- const atFault = (scope) => sbsYesNoRadio({
393
- name: scope ? scope + ':' + 'At_Fault' : 'At_Fault',
394
- label: 'Were You at Fault?'
395
- });
396
-
397
- const bankruptcyCrossSell = () => sbsCheckbox({
398
- label: "I'd also like a consult for bankruptcy or debt elimination (optional)",
399
- help: "Note: you will be contacted separately by a bankruptcy/debt expert",
400
- name: 'CrossSell_Bankruptcy',
401
- id: 'CrossSell_Bankruptcy',
402
- if: '$getVal($get(form), "Type_Of_Legal_Problem") != "Bankruptcy" && ($getVal($get(form), "Degree_Of_Interest") == "Absolutely Can\'t Afford" || $getVal($get(form), "Degree_Of_Interest") == "Maybe" || $getVal($get(form), "Degree_Of_Interest") == "Probably")',
403
- validation: null,
404
- helpClass: "!t-text-sm"
405
- });
406
-
407
- const bloodContentAlcoholTest = (scope) => sbsSelect({
408
- name: scope ? scope + ':' + 'Blood_Alcohol_Content_Test' : 'Blood_Alcohol_Content_Test',
409
- label: 'Blood Alcohol Content Measured by Test:',
410
- options: [
411
- "No Test",
412
- "0.00% - 0.04%",
413
- "0.05% - 0.08%",
414
- "0.09% - 0.12%",
415
- "0.13% - 0.16%",
416
- "0.17% - 0.20%",
417
- "More than 0.20%",
418
- "Don't know"
419
- ]
420
- });
475
+ const atFault = (scope, vertical, updates = {}) => {
476
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
477
+ const label = vertical ? updates.label : "Were You at Fault?";
478
+ return func(
479
+ merge(
480
+ {
481
+ label,
482
+ name: scope ? scope + ":" + "At_Fault" : "At_Fault",
483
+ },
484
+ updates
485
+ )
486
+ )
487
+ };
421
488
 
422
- const causeOfInjury = (scope) => sbsSelect({
423
- name: scope ? scope + ':' + 'Cause_Of_Injury' : 'Cause_Of_Injury',
424
- label: 'Cause of Injury:',
425
- options: [
426
- "Traumatic Physical Injury (Accident)",
427
- "Repeated Trauma Injury",
428
- "Mental Injury",
429
- "Occupational Disease",
430
- "Not Sure"
431
- ]
432
- });
489
+ const bankruptcyCrossSell = (scope) =>
490
+ sbsCheckbox({
491
+ label: "I'd also like a consult for bankruptcy or debt elimination (optional)",
492
+ help: "Note: you will be contacted separately by a bankruptcy/debt expert",
493
+ name: scope ? scope + ":CrossSell_Bankruptcy" : "CrossSell_Bankruptcy",
494
+ id: scope ? scope + ":CrossSell_Bankruptcy" : "CrossSell_Bankruptcy",
495
+ if: '$getVal($get(form), "Type_Of_Legal_Problem") != "Bankruptcy" && ($getVal($get(form), "Degree_Of_Interest") == "Absolutely Can\'t Afford" || $getVal($get(form), "Degree_Of_Interest") == "Maybe" || $getVal($get(form), "Degree_Of_Interest") == "Probably")',
496
+ validation: null,
497
+ helpClass: "!t-text-sm",
498
+ });
499
+
500
+ const bloodContentAlcoholTest = (scope, vertical, updates = {}) => {
501
+ const func = vertical ? verticalSelect : sbsSelect;
502
+ const label = vertical ? updates.label : "Blood Alcohol Content Measured by Test:";
503
+ return func(
504
+ merge(
505
+ {
506
+ label,
507
+ name: scope ? scope + ":" + "Blood_Alcohol_Content_Test" : "Blood_Alcohol_Content_Test",
508
+ options: [
509
+ "No Test",
510
+ "0.00% - 0.04%",
511
+ "0.05% - 0.08%",
512
+ "0.09% - 0.12%",
513
+ "0.13% - 0.16%",
514
+ "0.17% - 0.20%",
515
+ "More than 0.20%",
516
+ "Don't know",
517
+ ],
518
+ },
519
+ updates
520
+ )
521
+ )
522
+ };
433
523
 
434
- const childHome = (scope) => sbsSelect({
435
- name: scope ? scope + ':' + 'Child_Home' : 'Child_Home',
436
- label: 'With Whom Do the Children Currently Live?',
437
- options: [
438
- 'Mother',
439
- 'Father',
440
- 'Grandparents',
441
- 'Other'
442
- ]
443
- });
524
+ const causeOfInjury = (scope, vertical, updates = {}) => {
525
+ const func = vertical ? col2RadioCenter : sbsSelect;
526
+ const label = vertical ? updates.label : "Cause of Injury:";
527
+ return func(
528
+ merge(
529
+ {
530
+ label,
531
+ name: scope ? scope + ":" + "Cause_Of_Injury" : "Cause_Of_Injury",
532
+ options: [
533
+ "Traumatic Physical Injury (Accident)",
534
+ "Repeated Trauma Injury",
535
+ "Mental Injury",
536
+ "Occupational Disease",
537
+ "Not Sure",
538
+ ],
539
+ },
540
+ updates
541
+ )
542
+ )
543
+ };
444
544
 
445
- const childPrimaryCaregiver = (scope) => sbsSelect({
446
- name: scope ? scope + ':' + 'Child_Primary_Caregiver' : 'Child_Primary_Caregiver',
447
- label: 'Who is the Primary Caregiver?',
448
- options: [
449
- 'Mother',
450
- 'Father',
451
- 'Other'
452
- ]
453
- });
545
+ const childHome = (scope, vertical, updates = {}) => {
546
+ const func = vertical ? col2RadioCenter : sbsSelect;
547
+ const label = vertical ? updates.label : "With Whom Do the Children Currently Live?";
548
+ return func(
549
+ merge(
550
+ {
551
+ label,
552
+ name: scope ? scope + ":" + "Child_Home" : "Child_Home",
553
+ options: ["Mother", "Father", "Grandparents", "Other"],
554
+ },
555
+ updates
556
+ )
557
+ )
558
+ };
454
559
 
455
- const childRelationship = (scope) => sbsSelect({
456
- name: scope ? scope + ':' + 'Child_Relationship' : 'Child_Relationship',
457
- label: 'Your Relationship to Child(ren):',
458
- options: [
459
- 'Father',
460
- 'Mother',
461
- 'Grandparent',
462
- 'Aunt/Uncle',
463
- 'Other'
464
- ]
465
- });
560
+ const childPrimaryCaregiver = (scope, vertical, updates = {}) => {
561
+ const func = vertical ? verticalButtonRadio : sbsSelect;
562
+ const label = vertical ? updates.label : "Who is the Primary Caregiver?";
563
+ return func(
564
+ merge(
565
+ {
566
+ label,
567
+ name: scope ? scope + ":" + "Child_Primary_Caregiver" : "Child_Primary_Caregiver",
568
+ options: ["Mother", "Father", "Other"],
569
+ },
570
+ updates
571
+ )
572
+ )
573
+ };
466
574
 
467
- const claimStatus = (scope) => sbsSelect({
468
- name: scope ? scope + ':' + 'Claim_Status' : 'Claim_Status',
469
- label: "Status of Claim:",
470
- options: [
471
- "No action taken yet",
472
- "Demand for compensation made",
473
- "Lawsuit filed",
474
- "Other"
475
- ]
476
- });
575
+ const childRelationship = (scope, vertical, updates = {}) => {
576
+ const func = vertical ? col2RadioCenter : sbsSelect;
577
+ const label = vertical ? updates.label : "Your Relationship to Child(ren):";
578
+ return func(
579
+ merge(
580
+ {
581
+ label,
582
+ name: scope ? scope + ":" + "Child_Relationship" : "Child_Relationship",
583
+ options: ["Father", "Mother", "Grandparent", "Aunt/Uncle", "Other"],
584
+ },
585
+ updates
586
+ )
587
+ )
588
+ };
477
589
 
478
- const comments = (updates, scope) => textArea(
479
- merge({
480
- name: scope ? scope + ':' + 'Comments' : 'Comments',
481
- label: 'Please briefly describe your situation in a few words:',
482
- placeholder: 'For Example: "I would like help with child support payments" or "I need help with visitation rights"'
483
- }, updates)
484
- );
485
-
486
- const degreeOfInterest$1 = (scope, help) => sbsSelect({
487
- name: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
488
- id: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
489
- label: 'How Likely Are You to Pay if Your Issue Could be Resolved?',
490
- help: help,
491
- options: [
492
- 'Definitely',
493
- 'Probably',
494
- 'Maybe',
495
- "Absolutely Can't Afford"
496
- ]
497
- });
590
+ const claimStatus = (scope, vertical, updates = {}) => {
591
+ const func = vertical ? col2RadioCenter : sbsSelect;
592
+ const label = vertical ? updates.label : "Status of Claim:";
593
+ return func(
594
+ merge(
595
+ {
596
+ label,
597
+ name: scope ? scope + ":" + "Claim_Status" : "Claim_Status",
598
+ options: ["No action taken yet", "Demand for compensation made", "Lawsuit filed", "Other"],
599
+ },
600
+ updates
601
+ )
602
+ )
603
+ };
498
604
 
499
- const degreeOfInterestCenter = (scope, help) => col2RadioCenter({
500
- name: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
501
- id: scope ? scope + ':' + 'Degree_Of_Interest' : 'Degree_Of_Interest',
502
- help: help,
503
- options: [
504
- 'Definitely',
505
- 'Probably',
506
- 'Maybe',
507
- "Absolutely Can't Afford"
508
- ]
509
- });
605
+ // TODO: vertical not supported yet
606
+ const comments = (scope, vertical, updates) =>
607
+ textArea(
608
+ merge(
609
+ {
610
+ name: scope ? scope + ":" + "Comments" : "Comments",
611
+ label: "Please briefly describe your situation in a few words:",
612
+ placeholder:
613
+ 'For Example: "I would like help with child support payments" or "I need help with visitation rights"',
614
+ },
615
+ updates
616
+ )
617
+ );
510
618
 
511
- const degreeOfInterestHelp = (scope) => degreeOfInterest$1(scope, 'No payment necessary to speak with lawyers.');
619
+ const degreeOfInterest$1 = (scope, vertical, updates = {}) => {
620
+ const func = vertical ? col2RadioCenter : sbsSelect;
621
+ const label = vertical ? updates.label : "How Likely Are You to Pay if Your Issue Could be Resolved?";
622
+ const help = vertical ? updates.help : "No payment necessary to speak with lawyers.";
623
+ return func(
624
+ merge(
625
+ {
626
+ name: scope ? scope + ":" + "Degree_Of_Interest" : "Degree_Of_Interest",
627
+ id: scope ? scope + ":" + "Degree_Of_Interest" : "Degree_Of_Interest",
628
+ label,
629
+ help,
630
+ options: ["Definitely", "Probably", "Maybe", "Absolutely Can't Afford"],
631
+ },
632
+ updates
633
+ )
634
+ )
635
+ };
512
636
 
513
- const disabilityConditionStopWork = (scope) => sbsYesNoRadio({
514
- name: scope ? scope + ':' + 'Disability_Condition_Stop_Work' : 'Disability_Condition_Stop_Work',
515
- label: 'Do You Expect To Be Out Of Work For At Least a Year Due To Your Health?'
516
- });
637
+ const degreeOfInterestHelp = (scope, vertical, updates = {}) =>
638
+ degreeOfInterest$1(scope, vertical, merge(updates, { help: "No payment necessary to speak with lawyers." }));
517
639
 
518
- const disabilityWorkHistory = (scope) => sbsYesNoRadio({
519
- name: scope ? scope + ':' + 'Disability_Work_History' : 'Disability_Work_History',
520
- label: 'Have You Had a Full-Time Job Within the Past 5 Years?'
521
- });
640
+ const disabilityConditionStopWork = (scope, vertical, updates = {}) => {
641
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
642
+ const label = vertical
643
+ ? updates.label
644
+ : "Do You Expect To Be Out Of Work For At Least a Year Due To Your Health?";
645
+ return func(
646
+ merge(
647
+ {
648
+ name: scope ? scope + ":" + "Disability_Condition_Stop_Work" : "Disability_Condition_Stop_Work",
649
+ label,
650
+ },
651
+ updates
652
+ )
653
+ )
654
+ };
522
655
 
523
- const doctorTreatment = (scope) => sbsYesNoRadio({
524
- name: scope ? scope + ':' + 'Doctor_Treatment' : 'Doctor_Treatment',
525
- label: 'Have You Recently Been Treated by a Doctor, Hospital or Clinic?',
526
- });
656
+ const disabilityWorkHistory = (scope, vertical, updates = {}) => {
657
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
658
+ const label = vertical ? updates.label : "Have You Had a Full-Time Job Within the Past 5 Years?";
659
+ return func(
660
+ merge(
661
+ {
662
+ name: scope ? scope + ":" + "Disability_Work_History" : "Disability_Work_History",
663
+ label,
664
+ },
665
+ updates
666
+ )
667
+ )
668
+ };
527
669
 
528
- const estateLegalServicesNeeded = (scope) => sbsSelect({
529
- name: scope ? scope + ':' + 'Estate_Legal_Services_Needed' : 'Estate_Legal_Services_Needed',
530
- label: "Legal Services Needed for Your Estate:",
531
- options: [
532
- "Charitable Giving",
533
- "Contested Wills",
534
- "Drafting Wills or Trust",
535
- "Estate Administration",
536
- "Asset Protection",
537
- "Other"
538
- ]
539
- });
670
+ const doctorTreatment = (scope, vertical, updates = {}) => {
671
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
672
+ const label = vertical ? updates.label : "Have You Recently Been Treated by a Doctor, Hospital or Clinic?";
673
+ return func(
674
+ merge(
675
+ {
676
+ name: scope ? scope + ":" + "Doctor_Treatment" : "Doctor_Treatment",
677
+ label,
678
+ },
679
+ updates
680
+ )
681
+ )
682
+ };
540
683
 
541
- const haveAttorney$1 = (scope) => sbsYesNoRadio({
542
- name: scope ? scope + ':' + 'Have_Attorney' : 'Have_Attorney',
543
- label: 'Already Working with An Attorney?'
544
- });
684
+ const estateLegalServicesNeeded = (scope, vertical, updates = {}) => {
685
+ const func = vertical ? col2RadioCenter : sbsSelect;
686
+ const label = vertical ? updates.label : "Legal Services Needed for Your Estate:";
687
+ return func(
688
+ merge(
689
+ {
690
+ name: scope ? scope + ":" + "Estate_Legal_Services_Needed" : "Estate_Legal_Services_Needed",
691
+ label,
692
+ options: [
693
+ "Charitable Giving",
694
+ "Contested Wills",
695
+ "Drafting Wills or Trust",
696
+ "Estate Administration",
697
+ "Asset Protection",
698
+ "Other",
699
+ ],
700
+ },
701
+ updates
702
+ )
703
+ )
704
+ };
545
705
 
546
- const haveAttorneyCenter = (scope) => verticalYesNoRadio({
547
- name: scope ? scope + ':' + 'Have_Attorney' : 'Have_Attorney',
548
- });
706
+ const haveAttorney$1 = (scope, vertical, updates = {}) => {
707
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
708
+ const label = vertical ? updates.label : "Already Working with An Attorney?";
709
+ return func(
710
+ merge(
711
+ {
712
+ label,
713
+ name: scope ? scope + ":" + "Have_Attorney" : "Have_Attorney",
714
+ },
715
+ updates
716
+ )
717
+ )
718
+ };
549
719
 
550
- const haveChildren = (scope) => sbsYesNoRadio({
551
- name: scope ? scope + ':' + 'Have_Children' : 'Have_Children',
552
- label: 'Do You Have Children?'
553
- });
720
+ const haveChildren = (scope, vertical, updates = {}) => {
721
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
722
+ const label = vertical ? updates.label : "Do You Have Children?";
723
+ return func(
724
+ merge(
725
+ {
726
+ name: scope ? scope + ":" + "Have_Children" : "Have_Children",
727
+ label,
728
+ },
729
+ updates
730
+ )
731
+ )
732
+ };
554
733
 
555
- const incidentDate = (scope) => sbsDate({
556
- name: scope ? scope + ':' + 'Incident_Date' : 'Incident_Date',
557
- label: 'Date of Incident:',
558
- });
734
+ const incidentDate = (scope, vertical, updates = {}) => {
735
+ const func = vertical ? verticalDate : sbsDate;
736
+ const label = vertical ? updates.label : "Date of Incident:";
737
+ return func(
738
+ merge(
739
+ {
740
+ label,
741
+ name: scope ? scope + ":" + "Incident_Date" : "Incident_Date",
742
+ },
743
+ updates
744
+ )
745
+ )
746
+ };
559
747
 
560
- const landlordTenantPartyCenter = () => verticalButtonRadio({
561
- name: 'Landlord_Tenant_Party',
562
- options: [
563
- "Landlord",
564
- "Tenant",
565
- "Other"
566
- ]
567
- });
748
+ const landlordTenantParty$1 = (scope, vertical, updates = {}) => {
749
+ const func = vertical ? verticalButtonRadio : sbsSelect;
750
+ const label = vertical ? updates.label : "I am the:";
751
+ return func(
752
+ merge(
753
+ {
754
+ label,
755
+ name: scope ? scope + ":" + "Landlord_Tenant_Party" : "Landlord_Tenant_Party",
756
+ options: ["Landlord", "Tenant", "Other"],
757
+ },
758
+ updates
759
+ )
760
+ )
761
+ };
568
762
 
569
- const landlordTenantIssueRadioCenter = () => col2RadioCenter({
570
- id: 'Landlord_Tenant_Issue',
571
- name: 'Landlord_Tenant_Issue',
572
- options: [
573
- "Eviction",
574
- "Repairs and Maintenance",
575
- "Lease and Rental Agreements",
576
- "Discrimination",
577
- "Right of Entry and Privacy",
578
- "Screening and Applications",
579
- "Environmental Hazards",
580
- "Other Dispute"
581
- ]
582
- });
763
+ const landlordTenantIssueRadio = (scope, vertical, updates = {}) => {
764
+ const func = vertical ? col2RadioCenter : col2Radio;
765
+ const label = vertical ? updates.label : "What is the Landlord / Tenant Issue?";
766
+ const _if = vertical ? updates.if : '$get(Type_Of_Legal_Problem).value == "Landlord and Tenant"';
767
+ return func(
768
+ merge(
769
+ {
770
+ label,
771
+ if: _if,
772
+ id: scope ? scope + ":" + "Landlord_Tenant_Issue" : "Landlord_Tenant_Issue",
773
+ name: scope ? scope + ":" + "Landlord_Tenant_Issue" : "Landlord_Tenant_Issue",
774
+ options: [
775
+ "Eviction",
776
+ "Repairs and Maintenance",
777
+ "Lease and Rental Agreements",
778
+ "Discrimination",
779
+ "Right of Entry and Privacy",
780
+ "Screening and Applications",
781
+ "Environmental Hazards",
782
+ "Other Dispute",
783
+ ],
784
+ },
785
+ updates
786
+ )
787
+ )
788
+ };
583
789
 
584
- const lawyerPaymentMethod = (scope) => sbsSelect({
585
- name: scope ? scope + ':' + 'Lawyer_Payment_Method' : 'Lawyer_Payment_Method',
586
- label: 'How Will You Pay for Legal Fees if You Hire a Lawyer?',
587
- help: 'No payment necessary to speak with lawyers.',
588
- options: [
589
- 'Cash',
590
- 'Check',
591
- 'Credit Card',
592
- 'Friend',
593
- 'Family',
594
- 'Other'
595
- ]
596
- });
790
+ const lawyerPaymentMethod = (scope, vertical, updates = {}) => {
791
+ const func = vertical ? col2RadioCenter : sbsSelect;
792
+ const label = vertical ? updates.label : "How Will You Pay for Legal Fees if You Hire a Lawyer?";
793
+ const help = vertical ? updates.help : "No payment necessary to start a consultation.";
794
+ const options = vertical
795
+ ? {
796
+ Cash: "Cash",
797
+ "Credit Card": "Credit Card",
798
+ Family: "Family or Friend",
799
+ Other: "Other",
800
+ }
801
+ : ["Cash", "Check", "Credit Card", "Friend", "Family", "Other"];
802
+ return func(
803
+ merge(
804
+ {
805
+ label,
806
+ help,
807
+ name: scope ? scope + ":" + "Lawyer_Payment_Method" : "Lawyer_Payment_Method",
808
+ options,
809
+ fieldsetClass: vertical ? "$reset t-flex t-flex-col t-items-center" : undefined,
810
+ },
811
+ updates
812
+ )
813
+ )
814
+ };
597
815
 
598
- const legalCrossSells$1 = () => col2Checkbox({
599
- id: 'Legal_CrossSells',
600
- name: 'Legal_CrossSells',
601
- help: 'Just hit "Next" if none apply',
602
- helpClass: 't-text-center !t-text-sm',
603
- validation: null,
604
- options: '$getCrossSellOptions($get(form), $getVal($get(form), "Type_Of_Legal_Problem"))',
605
- });
816
+ const legalCrossSells$1 = () =>
817
+ col2Checkbox({
818
+ id: "Legal_CrossSells",
819
+ name: "Legal_CrossSells",
820
+ help: 'Just hit "Next" if none apply',
821
+ helpClass: "t-text-center !t-text-sm",
822
+ validation: null,
823
+ options: '$getCrossSellOptions($get(form), $getVal($get(form), "Type_Of_Legal_Problem"))',
824
+ });
825
+
826
+ const maritalStatus = (scope, vertical, updates = {}) => {
827
+ const func = vertical ? col2RadioCenter : sbsSelect;
828
+ const label = vertical ? updates.label : "Marital Status:";
829
+ return func(
830
+ merge(
831
+ {
832
+ label,
833
+ name: scope ? scope + ":" + "Marital_Status" : "Marital_Status",
834
+ options: [
835
+ "Unmarried, Living Together",
836
+ "Unmarried, Do Not Live Together",
837
+ "Married, Living Together",
838
+ "Separated",
839
+ "Divorced",
840
+ "Other",
841
+ ],
842
+ },
843
+ updates
844
+ )
845
+ )
846
+ };
606
847
 
607
- const maritalStatus = (scope) => sbsSelect({
608
- name: scope ? scope + ':' + 'Marital_Status' : 'Marital_Status',
609
- label: 'Marital Status:',
610
- options: [
611
- 'Unmarried, Living Together',
612
- 'Unmarried, Do Not Live Together',
613
- 'Married, Living Together',
614
- 'Separated',
615
- 'Divorced',
616
- 'Other'
617
- ]
618
- });
848
+ // XXX HERE
619
849
 
620
- const pendingCharges = (scope) => sbsYesNoRadio({
621
- name: scope ? scope + ':' + 'Pending_Charges' : 'Pending_Charges',
622
- label: 'Do you currently have any pending charges?'
623
- });
850
+ const pendingCharges = (scope, vertical, updates = {}) => {
851
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
852
+ const label = vertical ? updates.label : "Do you currently have any pending charges?";
853
+ return func(
854
+ merge(
855
+ {
856
+ name: scope ? scope + ":" + "Pending_Charges" : "Pending_Charges",
857
+ label,
858
+ },
859
+ updates
860
+ )
861
+ )
862
+ };
624
863
 
625
- const primaryInjury = (scope) => sbs2ColRadio({
626
- name: scope ? scope + ':' + 'Primary_Injury' : 'Primary_Injury',
627
- label: 'Primary Injury:',
628
- options: [
629
- "Anxiety",
630
- "Back or Neck Pain",
631
- "Broken Bones",
632
- "Cuts and Bruises",
633
- "Headaches",
634
- "Memory Loss",
635
- "Loss of Limb",
636
- "Not Sure or Other"
637
- ]
638
- });
864
+ const primaryInjury = (scope, vertical, updates = {}) => {
865
+ const func = vertical ? col2RadioCenter : sbs2ColRadio;
866
+ const label = vertical ? updates.label : "Primary Injury:";
867
+ return func(
868
+ merge(
869
+ {
870
+ label,
871
+ name: scope ? scope + ":" + "Primary_Injury" : "Primary_Injury",
872
+ options: [
873
+ "Anxiety",
874
+ "Back or Neck Pain",
875
+ "Broken Bones",
876
+ "Cuts and Bruises",
877
+ "Headaches",
878
+ "Memory Loss",
879
+ "Loss of Limb",
880
+ "Not Sure or Other",
881
+ ],
882
+ },
883
+ updates
884
+ )
885
+ )
886
+ };
639
887
 
640
- const priorAlcoholOffenses = (scope) => sbsYesNoRadio({
641
- name: scope ? scope + ':' + 'Prior_Alcohol_Offenses' : 'Prior_Alcohol_Offenses',
642
- label: 'Any Prior Alcohol Related Offenses?'
643
- });
888
+ const priorAlcoholOffenses = (scope, vertical, updates = {}) => {
889
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
890
+ const label = vertical ? updates.label : "Any Prior Alcohol Related Offenses?";
891
+ return func(
892
+ merge(
893
+ {
894
+ name: scope ? scope + ":" + "Prior_Alcohol_Offenses" : "Prior_Alcohol_Offenses",
895
+ label,
896
+ },
897
+ updates
898
+ )
899
+ )
900
+ };
644
901
 
645
- const policeReportFiled = (scope) => sbsYesNoRadio({
646
- name: scope ? scope + ':' + 'Police_Report_Filed' : 'Police_Report_Filed',
647
- label: 'Was a Police Report Filed?'
648
- });
902
+ const policeReportFiled = (scope, vertical, updates = {}) => {
903
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
904
+ const label = vertical ? updates.label : "Was a Police Report Filed?";
905
+ return func(
906
+ merge(
907
+ {
908
+ name: scope ? scope + ":" + "Police_Report_Filed" : "Police_Report_Filed",
909
+ label,
910
+ },
911
+ updates
912
+ )
913
+ )
914
+ };
649
915
 
650
- const roleInMatterProbate = (scope) => sbsSelect({
651
- name: scope ? scope + ':' + 'Role_In_Matter_Probate' : 'Role_In_Matter_Probate',
652
- label: "What Is Your Role in this Matter?",
653
- options: [
654
- "Preparing My Will",
655
- "Executor",
656
- "Heir",
657
- "Other"
658
- ]
659
- });
916
+ const roleInMatterProbate = (scope, vertical, updates = {}) => {
917
+ const func = vertical ? col2RadioCenter : sbsSelect;
918
+ const label = vertical ? updates.label : "What is Your Role in this Matter?";
919
+ return func(
920
+ merge(
921
+ {
922
+ label,
923
+ name: scope ? scope + ":" + "Role_In_Matter_Probate" : "Role_In_Matter_Probate",
924
+ options: ["Preparing My Will", "Executor", "Heir", "Other"],
925
+ },
926
+ updates
927
+ )
928
+ )
929
+ };
660
930
 
661
- const socialSecurityDisabilityReceivingBenefits = (scope) => sbsYesNoRadio({
662
- name: scope ? scope + ':' + 'Social_Security_Disability_Receiving_Benefits' : 'Social_Security_Disability_Receiving_Benefits',
663
- label: 'Are You Currently Receiving Social Security Disability Benefits?'
664
- });
931
+ const socialSecurityDisabilityReceivingBenefits = (scope, vertical, updates = {}) => {
932
+ const func = vertical ? verticalYesNoRadio : sbsYesNoRadio;
933
+ const label = vertical ? updates.label : "Are You Currently Receiving Social Security Disability Benefits?";
934
+ return func(
935
+ merge(
936
+ {
937
+ name: scope
938
+ ? scope + ":" + "Social_Security_Disability_Receiving_Benefits"
939
+ : "Social_Security_Disability_Receiving_Benefits",
940
+ label,
941
+ },
942
+ updates
943
+ )
944
+ )
945
+ };
665
946
 
666
947
  const TCPAConsent = (scope) => ({
667
- $formkit: 'checkbox',
668
- label: '$meta.tcpaLanguage',
669
- name: scope ? scope + ':' + 'TCPA_Opt_In' : 'TCPA_Opt_In',
670
- 'data-tf-sensitive': 'false',
671
- validation: 'required|accepted',
948
+ $formkit: "checkbox",
949
+ label: "$meta.tcpaLanguage",
950
+ // Necessary to get links to work in the tcpa language
951
+ __raw__sectionsSchema: {
952
+ label: { attrs: { innerHTML: "$label" } },
953
+ },
954
+ name: scope ? scope + ":" + "TCPA_Opt_In" : "TCPA_Opt_In",
955
+ "data-tf-sensitive": "false",
956
+ validation: "required|accepted",
672
957
  validationMessages: {
673
- required: 'Consent is required',
674
- accepted: 'Consent is required'
958
+ required: "Consent is required",
959
+ accepted: "Consent is required",
675
960
  },
676
961
  classes: {
677
- label: "t-text-xs t-text-slate-500 t-font-normal"
678
- }
962
+ label: "t-text-xs t-text-slate-500 t-font-normal",
963
+ },
679
964
  });
680
965
 
681
- const typeOfAlcoholTest = (scope) => sbsSelect({
682
- name: scope ? scope + ':' + 'Type_Of_Alcohol_Test' : 'Type_Of_Alcohol_Test',
683
- label: 'Type of Alcohol Test Performed?',
684
- options: [
685
- "No Test",
686
- "Refused Test",
687
- "Breath Test",
688
- "Blood Test",
689
- "Urine Test",
690
- "Don't Know"
691
- ]
692
- });
966
+ const typeOfAlcoholTest = (scope, vertical, updates = {}) => {
967
+ const func = vertical ? col2RadioCenter : sbsSelect;
968
+ const label = vertical ? updates.label : "Type of Alcohol Test Performed?";
969
+ return func(
970
+ merge(
971
+ {
972
+ label,
973
+ name: scope ? scope + ":" + "Type_Of_Alcohol_Test" : "Type_Of_Alcohol_Test",
974
+ options: ["No Test", "Refused Test", "Breath Test", "Blood Test", "Urine Test", "Don't Know"],
975
+ },
976
+ updates
977
+ )
978
+ )
979
+ };
693
980
 
694
- const typeOfAssets = (scope) => col2Checkbox({
695
- name: scope ? scope + ':' + 'Type_Of_Assets' : 'Type_Of_Assets',
696
- label: 'Type of Assets:',
697
- options: [
698
- "Business Interests",
699
- "Cash",
700
- "Life Insurance Policies",
701
- "Pensions/Retirement",
702
- "Personal Possessions",
703
- "Property",
704
- "Stock/Bonds"
705
- ]
706
- });
981
+ const typeOfAssets = (scope, vertical, updates = {}) => {
982
+ const func = vertical ? verticalCol2Checkbox : col2Checkbox;
983
+ const label = vertical ? updates.label : "Type of Assets:";
984
+ return func(
985
+ merge(
986
+ {
987
+ label,
988
+ name: scope ? scope + ":" + "Type_Of_Assets" : "Type_Of_Assets",
989
+ options: [
990
+ "Business Interests",
991
+ "Cash",
992
+ "Life Insurance Policies",
993
+ "Pensions/Retirement",
994
+ "Personal Possessions",
995
+ "Property",
996
+ "Stock/Bonds",
997
+ ],
998
+ },
999
+ updates
1000
+ )
1001
+ )
1002
+ };
707
1003
 
708
- const valueOfAssets = (scope) => sbsSelect({
709
- name: scope ? scope + ':' + 'Value_Of_Assets' : 'Value_Of_Assets',
710
- label: 'Value of Your Assets?',
711
- options: [
712
- "Less than 50K",
713
- "50K to 100K",
714
- "100K to 250K",
715
- "250K to 500K",
716
- "500K to 1M",
717
- "More than 1M"
718
- ]
719
- });
1004
+ const valueOfAssets = (scope, vertical, updates = {}) => {
1005
+ const func = vertical ? col2RadioCenter : sbsSelect;
1006
+ const label = vertical ? updates.label : "Value of Your Assets?";
1007
+ return func(
1008
+ merge(
1009
+ {
1010
+ label,
1011
+ name: scope ? scope + ":" + "Value_Of_Assets" : "Value_Of_Assets",
1012
+ options: ["Less than 50K", "50K to 100K", "100K to 250K", "250K to 500K", "500K to 1M", "More than 1M"],
1013
+ },
1014
+ updates
1015
+ )
1016
+ )
1017
+ };
720
1018
 
721
- // ------ Question Groups
1019
+ // ------ Question Groups - TODO: move these go separate file groups.js
722
1020
 
723
1021
  // NOTE: name must be unique within a form!
724
1022
  const group = (name, updates) => {
725
- return merge({
726
- $cmp: 'FormKit',
727
- props: {
728
- type: 'group',
729
- key: name,
730
- id: name,
731
- name: name
732
- }
733
- }, updates)
1023
+ return merge(
1024
+ {
1025
+ $cmp: "FormKit",
1026
+ props: {
1027
+ type: "group",
1028
+ key: name,
1029
+ id: name,
1030
+ name: name,
1031
+ },
1032
+ },
1033
+ updates
1034
+ )
734
1035
  };
735
1036
 
736
- const AutoAndCarAccidentsQuestions = (condition, scope) => group(
737
- 'AutoAndCarAccidentsQuestions',
738
- {
739
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Auto and Car Accidents"'),
1037
+ const AutoAndCarAccidentsQuestions = (condition, scope) =>
1038
+ group("AutoAndCarAccidentsQuestions", {
1039
+ if: condition || '$get(Type_Of_Legal_Problem).value == "Auto and Car Accidents"',
740
1040
  children: [
741
1041
  haveAttorney$1(scope),
742
1042
  incidentDate(scope),
743
1043
  atFault(scope),
744
1044
  primaryInjury(scope),
745
1045
  doctorTreatment(scope),
746
- policeReportFiled(scope)
747
- ]
748
- }
749
- );
1046
+ policeReportFiled(scope),
1047
+ ],
1048
+ });
750
1049
 
751
- const ChildCustodyQuestions = (condition, scope) => group(
752
- 'ChildCustodyQuestions',
753
- {
754
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Child Custody"'),
1050
+ const ChildCustodyQuestions = (condition, scope) =>
1051
+ group("ChildCustodyQuestions", {
1052
+ if: condition || '$get(Type_Of_Legal_Problem).value == "Child Custody"',
755
1053
  children: [
756
1054
  haveAttorney$1(scope),
757
1055
  childRelationship(scope),
758
1056
  childHome(scope),
759
1057
  childPrimaryCaregiver(scope),
760
1058
  degreeOfInterest$1(scope),
761
- lawyerPaymentMethod(scope)
762
- ]
763
- }
764
- );
1059
+ lawyerPaymentMethod(scope),
1060
+ ],
1061
+ });
765
1062
 
766
- const DivorceQuestions = (condition, scope) => group(
767
- 'DivorceQuestions',
768
- {
769
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Divorce and Separation"'),
1063
+ const DivorceQuestions = (condition, scope) =>
1064
+ group("DivorceQuestions", {
1065
+ if: condition || '$get(Type_Of_Legal_Problem).value == "Divorce and Separation"',
770
1066
  children: [
771
1067
  haveAttorney$1(scope),
772
1068
  maritalStatus(scope),
773
1069
  haveChildren(scope),
774
1070
  degreeOfInterest$1(scope),
775
- lawyerPaymentMethod(scope)
776
- ]
777
- }
778
- );
1071
+ lawyerPaymentMethod(scope),
1072
+ ],
1073
+ });
779
1074
 
780
- const DUIAndDWIQuestions = (condition, scope) => group(
781
- 'DUIAndDWIQuestions',
782
- {
783
- if: (condition || '$get(Type_Of_Legal_Problem).value == "DUI and DWI"'),
1075
+ const DUIAndDWIQuestions = (condition, scope) =>
1076
+ group("DUIAndDWIQuestions", {
1077
+ if: condition || '$get(Type_Of_Legal_Problem).value == "DUI and DWI"',
784
1078
  children: [
785
1079
  haveAttorney$1(scope),
786
1080
  incidentDate(scope),
@@ -788,93 +1082,81 @@ const DUIAndDWIQuestions = (condition, scope) => group(
788
1082
  typeOfAlcoholTest(scope),
789
1083
  bloodContentAlcoholTest(scope),
790
1084
  pendingCharges(scope),
791
- degreeOfInterestHelp(scope)
792
- ]
793
- }
794
- );
1085
+ degreeOfInterestHelp(scope),
1086
+ ],
1087
+ });
795
1088
 
796
- const PersonalInjuryQuestions = (condition, scope) => group(
797
- 'PersonalInjuryQuestions',
798
- {
799
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Personal Injury"'),
1089
+ const PersonalInjuryQuestions = (condition, scope) =>
1090
+ group("PersonalInjuryQuestions", {
1091
+ if: condition || '$get(Type_Of_Legal_Problem).value == "Personal Injury"',
800
1092
  children: [
801
1093
  haveAttorney$1(scope),
802
1094
  incidentDate(scope),
803
1095
  claimStatus(scope),
804
1096
  atFault(scope),
805
1097
  primaryInjury(scope),
806
- doctorTreatment(scope)
807
- ]
808
- }
809
- );
1098
+ doctorTreatment(scope),
1099
+ ],
1100
+ });
810
1101
 
811
- const PowerofAttorneyQuestions = (condition, scope) => group(
812
- 'PowerofAttorneyQuestions',
813
- {
814
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Power of Attorney"'),
815
- children: [
816
- haveAttorney$1(scope),
817
- degreeOfInterestHelp(scope)
818
- ]
819
- }
820
- );
1102
+ const PowerofAttorneyQuestions = (condition, scope) =>
1103
+ group("PowerofAttorneyQuestions", {
1104
+ if: condition || '$get(Type_Of_Legal_Problem).value == "Power of Attorney"',
1105
+ children: [haveAttorney$1(scope), degreeOfInterestHelp(scope)],
1106
+ });
821
1107
 
822
- const SocialSecurityDisabilityAndInsuranceQuestions = (condition, scope) => group(
823
- 'SocialSecurityDisabilityAndInsuranceQuestions',
824
- {
825
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Social Security Disability and Insurance"'),
1108
+ const SocialSecurityDisabilityAndInsuranceQuestions = (condition, scope) =>
1109
+ group("SocialSecurityDisabilityAndInsuranceQuestions", {
1110
+ if: condition || '$get(Type_Of_Legal_Problem).value == "Social Security Disability and Insurance"',
826
1111
  children: [
827
1112
  haveAttorney$1(scope),
828
1113
  applicantAge(scope),
829
1114
  disabilityConditionStopWork(scope),
830
1115
  disabilityWorkHistory(scope),
831
1116
  socialSecurityDisabilityReceivingBenefits(scope),
832
- doctorTreatment(scope)
833
- ]
834
- }
835
- );
1117
+ doctorTreatment(scope),
1118
+ ],
1119
+ });
836
1120
 
837
- const WillsAndTrustsQuestions = (condition, scope) => group(
838
- 'WillsAndTrustsQuestions',
839
- {
840
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Wills and Trusts"'),
1121
+ const WillsAndTrustsQuestions = (condition, scope) =>
1122
+ group("WillsAndTrustsQuestions", {
1123
+ if: condition || '$get(Type_Of_Legal_Problem).value == "Wills and Trusts"',
841
1124
  children: [
842
1125
  haveAttorney$1(scope),
843
1126
  valueOfAssets(scope),
844
1127
  typeOfAssets(scope),
845
1128
  roleInMatterProbate(scope),
846
1129
  estateLegalServicesNeeded(scope),
847
- degreeOfInterestHelp(scope)
848
- ]
849
- }
850
- );
1130
+ degreeOfInterestHelp(scope),
1131
+ ],
1132
+ });
851
1133
 
852
- const WorkersCompensationQuestions = (condition, scope) => group(
853
- 'WorkersCompensationQuestions',
854
- {
855
- if: (condition || '$get(Type_Of_Legal_Problem).value == "Workers Compensation"'),
1134
+ const WorkersCompensationQuestions = (condition, scope) =>
1135
+ group("WorkersCompensationQuestions", {
1136
+ if: condition || '$get(Type_Of_Legal_Problem).value == "Workers Compensation"',
856
1137
  children: [
857
1138
  haveAttorney$1(scope),
858
1139
  incidentDate(scope),
859
1140
  claimStatus(scope),
860
1141
  primaryInjury(scope),
861
1142
  causeOfInjury(scope),
862
- doctorTreatment(scope)
863
- ]
864
- }
865
- );
1143
+ doctorTreatment(scope),
1144
+ ],
1145
+ });
866
1146
 
867
- const NEXT_ON_ENTER = '$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
868
- const NEXT_ON_INPUT = '$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))';
1147
+ const NEXT_ON_ENTER = "$onEnter($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))";
1148
+ const NEXT_ON_INPUT = "$onInput($setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form))))";
869
1149
 
870
- const isInput = (n) => { return (n.type !== 'group' && n.type !== 'section' && n.type !== 'form' && n.$formkit !== 'hidden' && !n.children) };
1150
+ const isInput = (n) => {
1151
+ return n.type !== "group" && n.type !== "section" && n.type !== "form" && n.$formkit !== "hidden" && !n.children
1152
+ };
871
1153
 
872
1154
  const findLastInput = (n) => {
873
1155
  if (isInput(n)) {
874
1156
  return n
875
1157
  }
876
1158
  for (var i = n.children.length - 1; i >= 0; i--) {
877
- if (typeof n.children === 'string') {
1159
+ if (typeof n.children === "string") {
878
1160
  continue
879
1161
  }
880
1162
  const child = n.children[i];
@@ -890,136 +1172,154 @@ const findLastInput = (n) => {
890
1172
  };
891
1173
 
892
1174
  const secureIconDefault = {
893
- $el: 'div',
894
- if: '$activeStep === $lastStep()',
1175
+ $el: "div",
1176
+ if: "$activeStep === $lastStep()",
895
1177
  attrs: {
896
- class: 't-flex t-justify-center t-items-center t-text-sm t-text-gray-500'
1178
+ class: "t-flex t-justify-center t-items-center t-text-sm t-text-gray-500",
897
1179
  },
898
1180
  children: [
899
1181
  {
900
- $el: 'img',
1182
+ $el: "img",
901
1183
  attrs: {
902
- loading: 'lazy',
903
- alt: '',
1184
+ loading: "lazy",
1185
+ alt: "",
904
1186
  style: {
905
- border: 0
1187
+ border: 0,
906
1188
  },
907
- width: '25',
908
- height: '25',
909
- src: 'https://d27hmee62k45vz.cloudfront.net/lock_icon_1.jpeg',
910
- }
1189
+ width: "25",
1190
+ height: "25",
1191
+ src: "https://d27hmee62k45vz.cloudfront.net/lock_icon_1.jpeg",
1192
+ },
911
1193
  },
912
1194
  {
913
- $el: 'span',
914
- children: 'Secure & Encrypted',
1195
+ $el: "span",
1196
+ children: "Secure & Encrypted",
915
1197
  attrs: {
916
- class: 't-pl-2 t-pt-1 t-font-medium'
917
- }
918
- }
919
- ]
1198
+ class: "t-pl-2 t-pt-1 t-font-medium",
1199
+ },
1200
+ },
1201
+ ],
920
1202
  };
921
1203
 
922
1204
  function secureIcon(updates) {
923
- return merge(
924
- secureIconDefault,
925
- updates
926
- )
1205
+ return merge(secureIconDefault, updates)
927
1206
  }
928
1207
 
929
1208
  function crossSellQuestionsStepHeadline(updates) {
930
1209
  return {
931
- $el: 'h3',
932
- children: updates.headline || 'Tell Us About Your Situation',
1210
+ $el: "h3",
1211
+ children: updates.headline || "Tell Us About Your Situation",
933
1212
  attrs: {
934
- 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'
935
- }
1213
+ 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",
1214
+ },
936
1215
  }
937
1216
  }
938
1217
 
939
1218
  function crossSellQuestionsStepSubHeadline(updates) {
940
1219
  return {
941
- $el: 'h5',
942
- children: updates.subheadline || 'Tell us about your situation:',
1220
+ $el: "h5",
1221
+ children: updates.subheadline || "Tell us about your situation:",
943
1222
  attrs: {
944
- 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'
945
- }
1223
+ 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",
1224
+ },
946
1225
  }
947
1226
  }
948
1227
 
949
1228
  function verticalStepHeadline(updates) {
950
1229
  return {
951
- $el: 'h3',
952
- children: updates.headline || 'Tell Us About Your Situation',
1230
+ $el: "h3",
1231
+ children: updates.headline || "Tell Us About Your Situation",
953
1232
  attrs: {
954
- 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 || '')
955
- }
1233
+ class:
1234
+ "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" +
1235
+ " " +
1236
+ (updates.headlineClass || ""),
1237
+ },
956
1238
  }
957
1239
  }
958
1240
 
959
1241
  function verticalStepSubHeadline(updates) {
960
1242
  return {
961
- $el: 'h5',
962
- children: updates.subheadline || '',
1243
+ $el: "h5",
1244
+ children: updates.subheadline || "",
963
1245
  attrs: {
964
- 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 || '')
965
- }
1246
+ class:
1247
+ "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" +
1248
+ " " +
1249
+ (updates.subheadlineClass || ""),
1250
+ },
966
1251
  }
967
1252
  }
968
1253
 
969
1254
  function commentsStepHeadline(updates) {
970
1255
  return {
971
- $el: 'h3',
972
- children: updates.headline || 'Additional Details',
1256
+ $el: "h3",
1257
+ children: updates.headline || "Additional Details",
973
1258
  attrs: {
974
- 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 || '')
975
- }
1259
+ class:
1260
+ "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" +
1261
+ " " +
1262
+ (updates.headlineClass || ""),
1263
+ },
976
1264
  }
977
1265
  }
978
1266
 
979
1267
  function commentsStepHeadlineLegal(updates) {
980
1268
  return commentsStepHeadline({
981
- headline: updates.headline || 'Additional Case Details',
982
- headlineClass: updates.headlineClass
1269
+ headline: updates.headline || "Additional Case Details",
1270
+ headlineClass: updates.headlineClass,
983
1271
  })
984
1272
  }
985
1273
 
986
1274
  function firstAndLastStepHeadline(updates) {
987
1275
  return {
988
- $el: 'h3',
989
- children: updates.headline || 'Please Provide a Contact Name',
1276
+ $el: "h3",
1277
+ children: updates.headline || "Please Provide a Contact Name",
990
1278
  attrs: {
991
- 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 || '')
992
- }
1279
+ class:
1280
+ "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" +
1281
+ " " +
1282
+ (updates.headlineClass || ""),
1283
+ },
993
1284
  }
994
1285
  }
995
1286
 
996
1287
  function legalCrossSellsStepHeadline(updates) {
997
1288
  return {
998
- $el: 'h3',
999
- children: updates.headline || 'Do any of the following situations apply?',
1289
+ $el: "h3",
1290
+ children: updates.headline || "Do any of the following situations apply?",
1000
1291
  attrs: {
1001
- 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 || '')
1002
- }
1292
+ class:
1293
+ "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" +
1294
+ " " +
1295
+ (updates.headlineClass || ""),
1296
+ },
1003
1297
  }
1004
1298
  }
1005
1299
 
1006
1300
  function contactStepHeadline(updates) {
1007
1301
  return {
1008
- $el: 'h3',
1302
+ $el: "h3",
1009
1303
  children: updates.headline || DEFAULT_FINAL_HEADLINE_DYNAMIC_LEGAL,
1010
1304
  attrs: {
1011
- 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 || '')
1012
- }
1305
+ class:
1306
+ "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" +
1307
+ " " +
1308
+ (updates.headlineClass || ""),
1309
+ },
1013
1310
  }
1014
1311
  }
1015
1312
 
1016
1313
  function contactStepSubHeadline(updates) {
1017
1314
  return {
1018
- $el: 'h5',
1315
+ $el: "h5",
1019
1316
  children: updates.subheadline || DEFAULT_FINAL_SUBHEADLINE_DYNAMIC_LEGAL,
1020
1317
  attrs: {
1021
- 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 || '')
1022
- }
1318
+ class:
1319
+ "t-flex t-justify-center t-text-center !t-text-lg t-font-semibold t-pb-7 t-pt-0 t-px-3" +
1320
+ " " +
1321
+ (updates.subheadlineClass || ""),
1322
+ },
1023
1323
  }
1024
1324
  }
1025
1325
 
@@ -1041,19 +1341,19 @@ const TRUSTED_FORM_JS = `(function() {
1041
1341
 
1042
1342
  function trustedFormScript() {
1043
1343
  return {
1044
- $el: 'script',
1045
- if: '$activeStep === $lastStep()',
1046
- children: TRUSTED_FORM_JS
1344
+ $el: "script",
1345
+ if: "$activeStep === $lastStep()",
1346
+ children: TRUSTED_FORM_JS,
1047
1347
  }
1048
1348
  }
1049
1349
 
1050
1350
  const stepDefaults = (step, stepKey) => ({
1051
- $el: 'section',
1351
+ $el: "section",
1052
1352
  if: '$stepEnabled("' + step + '")',
1053
1353
  attrs: {
1054
1354
  hidden: '$activeStep !== "' + step + '"',
1055
- key: stepKey ? stepKey : step
1056
- }
1355
+ key: stepKey ? stepKey : step,
1356
+ },
1057
1357
  });
1058
1358
 
1059
1359
  function step(name, inputs, updates = {}) {
@@ -1076,35 +1376,35 @@ function step(name, inputs, updates = {}) {
1076
1376
  }
1077
1377
  }
1078
1378
 
1079
- return merge(
1080
- stepDefaults(name, stepKey),
1081
- {
1082
- children: [
1083
- {
1084
- $formkit: 'group',
1085
- id: name,
1086
- name: name,
1087
- nextStepMap: nextStepMap,
1088
- triggerRedirectMap: triggerRedirectMap,
1089
- autoFocus: autoFocus,
1090
- children: inputs
1091
- }
1092
- ]
1093
- }
1094
- )
1379
+ return merge(stepDefaults(name, stepKey), {
1380
+ children: [
1381
+ {
1382
+ $formkit: "group",
1383
+ id: name,
1384
+ name: name,
1385
+ nextStepMap: nextStepMap,
1386
+ triggerRedirectMap: triggerRedirectMap,
1387
+ autoFocus: autoFocus,
1388
+ children: inputs,
1389
+ },
1390
+ ],
1391
+ })
1095
1392
  }
1096
1393
 
1097
1394
  // Single question step
1098
1395
  function sqstep(name, input, defaultHeadline, updates = {}) {
1099
- if (typeof updates.nextOnInput === 'undefined') {
1396
+ if (typeof updates.nextOnInput === "undefined") {
1100
1397
  updates.nextOnInput = true;
1101
1398
  }
1102
-
1399
+
1103
1400
  return step(
1104
1401
  name,
1105
1402
  [
1106
- verticalStepHeadline({ headline: updates.headline ?? defaultHeadline, headlineClass: updates.headlineClass }),
1107
- ...Array.isArray(input) ? input : [input],
1403
+ verticalStepHeadline({
1404
+ headline: updates.headline ?? defaultHeadline,
1405
+ headlineClass: updates.headlineClass,
1406
+ }),
1407
+ ...(Array.isArray(input) ? input : [input]),
1108
1408
  ],
1109
1409
  updates
1110
1410
  )
@@ -1112,7 +1412,7 @@ function sqstep(name, input, defaultHeadline, updates = {}) {
1112
1412
 
1113
1413
  function contactInfo(updates = {}) {
1114
1414
  return step(
1115
- 'contactInfo',
1415
+ "contactInfo",
1116
1416
  [
1117
1417
  contactStepHeadline(updates),
1118
1418
  contactStepSubHeadline(updates),
@@ -1120,63 +1420,58 @@ function contactInfo(updates = {}) {
1120
1420
  email(updates.scope),
1121
1421
  phone(updates.scope),
1122
1422
  TCPAConsent(updates.scope),
1123
- secureIcon()
1423
+ secureIcon(),
1124
1424
  ],
1125
1425
  { nextOnEnter: false }
1126
1426
  )
1127
1427
  }
1128
1428
 
1129
- function firstAndLastV3(updates = {}, scope) {
1429
+ function firstAndLastV3(updates = {}) {
1130
1430
  return step(
1131
- 'firstAndLast',
1431
+ "firstAndLast",
1132
1432
  [
1133
1433
  firstAndLastStepHeadline({
1134
- headline: updates.headline ?? 'Who is looking for help?',
1135
- headlineClass: updates.headlineClass
1434
+ headline: updates.headline ?? "Who is looking for help?",
1435
+ headlineClass: updates.headlineClass,
1136
1436
  }),
1137
1437
  verticalStepSubHeadline({
1138
- subheadline: updates.subheadline ?? 'Note: we never share info without consent',
1139
- subheadlineClass: '!t-text-sm !t-text-gray-500'
1438
+ subheadline: updates.subheadline ?? "Note: we never share info without consent",
1439
+ subheadlineClass: "!t-text-sm !t-text-gray-500",
1140
1440
  }),
1141
- firstName(scope),
1142
- lastName(scope)
1441
+ firstName(updates.scope),
1442
+ lastName(updates.scope),
1143
1443
  ],
1144
1444
  updates
1145
1445
  )
1146
1446
  }
1147
1447
 
1148
1448
  function zipcode(updates = {}) {
1149
- return sqstep(
1150
- 'zipcode',
1151
- zipcode$1(updates.scope, true, updates),
1152
- 'Please verify your Zip Code',
1153
- updates
1154
- )
1449
+ return sqstep("zipcode", zipcode$1(updates.scope, true, updates.input), "Please verify your Zip Code", updates)
1155
1450
  }
1156
1451
 
1157
1452
  function commentsWithBankruptcy(updates = {}) {
1158
1453
  return step(
1159
- 'commentsWithBankruptcy',
1454
+ "commentsWithBankruptcy",
1160
1455
  [
1161
1456
  commentsStepHeadlineLegal(updates),
1162
- comments({
1163
- label: typeof updates.label === 'undefined' ? DEFAULT_COMMENTS_LABEL_LEGAL : updates.label,
1457
+ comments(updates.scope, false, {
1458
+ label: typeof updates.label === "undefined" ? DEFAULT_COMMENTS_LABEL_LEGAL : updates.label,
1164
1459
  placeholder: updates.placeholder || DEFAULT_COMMENTS_PLACEHOLDER_DYNAMIC_LEGAL,
1165
- inputClass: typeof updates.inputClass === 'undefined' ? '!t-h-32' : updates.inputClass,
1166
- }, updates.scope),
1460
+ inputClass: typeof updates.inputClass === "undefined" ? "!t-h-32" : updates.inputClass,
1461
+ }),
1167
1462
  // TODO: needs scope support
1168
1463
  bankruptcyCrossSell(),
1169
1464
  {
1170
- $el: 'div',
1171
- if: '$get(CrossSell_Bankruptcy).value == true',
1465
+ $el: "div",
1466
+ if: "$get(CrossSell_Bankruptcy).value == true",
1172
1467
  children: [
1173
- comments({
1174
- label: 'Bankruptcy or debt details:',
1175
- placeholder: 'Please describe your bankrtupcy or debt situation in a few words...',
1176
- inputClass: '!t-h-16'
1177
- }, 'CrossSell:Bankruptcy')
1468
+ comments("CrossSell:Bankruptcy", false, {
1469
+ label: "Bankruptcy or debt details:",
1470
+ placeholder: "Please describe your bankrtupcy or debt situation in a few words...",
1471
+ inputClass: "!t-h-16",
1472
+ }),
1178
1473
  ],
1179
- }
1474
+ },
1180
1475
  ],
1181
1476
  { nextOnEnter: false }
1182
1477
  )
@@ -1184,19 +1479,20 @@ function commentsWithBankruptcy(updates = {}) {
1184
1479
 
1185
1480
  function autoAndCarAccidentCrossSellQuestions(updates = {}) {
1186
1481
  return step(
1187
- 'autoAndCarAccidentCrossSellQuestions',
1482
+ "autoAndCarAccidentCrossSellQuestions",
1188
1483
  [
1189
- crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Compensation' }),
1190
- crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your accident:' }),
1191
- AutoAndCarAccidentsQuestions("true", 'CrossSell:Auto_and_Car_Accidents'),
1192
- comments(
1193
- {
1194
- label: 'Accident Description:',
1195
- placeholder: 'Please describe your accident in a few words...',
1196
- inputClass: '!t-h-16'
1197
- },
1198
- 'CrossSell:Auto_and_Car_Accidents'
1199
- )
1484
+ crossSellQuestionsStepHeadline({
1485
+ headline: "You May Be Entitled To Compensation",
1486
+ }),
1487
+ crossSellQuestionsStepSubHeadline({
1488
+ subheadline: "Tell us about your accident:",
1489
+ }),
1490
+ AutoAndCarAccidentsQuestions("true", "CrossSell:Auto_and_Car_Accidents"),
1491
+ comments("CrossSell:Auto_and_Car_Accidents", false, {
1492
+ label: "Accident Description:",
1493
+ placeholder: "Please describe your accident in a few words...",
1494
+ inputClass: "!t-h-16",
1495
+ }),
1200
1496
  ],
1201
1497
  updates
1202
1498
  )
@@ -1204,18 +1500,15 @@ function autoAndCarAccidentCrossSellQuestions(updates = {}) {
1204
1500
 
1205
1501
  function childCustodyCrossSellQuestions(updates = {}) {
1206
1502
  return step(
1207
- 'childCustodyCrossSellQuestions',
1503
+ "childCustodyCrossSellQuestions",
1208
1504
  [
1209
- crossSellQuestionsStepHeadline({ headline: 'Child Custody Information' }),
1210
- ChildCustodyQuestions("true", 'CrossSell:Child_Custody'),
1211
- comments(
1212
- {
1213
- label: 'Description:',
1214
- placeholder: 'Please describe your situation in a few words...',
1215
- inputClass: '!t-h-16'
1216
- },
1217
- 'CrossSell:Child_Custody'
1218
- )
1505
+ crossSellQuestionsStepHeadline({ headline: "Child Custody Information" }),
1506
+ ChildCustodyQuestions("true", "CrossSell:Child_Custody"),
1507
+ comments("CrossSell:Child_Custody", false, {
1508
+ label: "Description:",
1509
+ placeholder: "Please describe your situation in a few words...",
1510
+ inputClass: "!t-h-16",
1511
+ }),
1219
1512
  ],
1220
1513
  updates
1221
1514
  )
@@ -1223,18 +1516,17 @@ function childCustodyCrossSellQuestions(updates = {}) {
1223
1516
 
1224
1517
  function divorceAndSeparationCrossSellQuestions(updates = {}) {
1225
1518
  return step(
1226
- 'divorceAndSeparationCrossSellQuestions',
1519
+ "divorceAndSeparationCrossSellQuestions",
1227
1520
  [
1228
- crossSellQuestionsStepHeadline({ headline: 'Divorce or Separation Information' }),
1229
- DivorceQuestions("true", 'CrossSell:Divorce_and_Separation'),
1230
- comments(
1231
- {
1232
- label: 'Description:',
1233
- placeholder: 'Please describe your situation in a few words...',
1234
- inputClass: '!t-h-16'
1235
- },
1236
- 'CrossSell:Divorce_and_Separation'
1237
- )
1521
+ crossSellQuestionsStepHeadline({
1522
+ headline: "Divorce or Separation Information",
1523
+ }),
1524
+ DivorceQuestions("true", "CrossSell:Divorce_and_Separation"),
1525
+ comments("CrossSell:Divorce_and_Separation", false, {
1526
+ label: "Description:",
1527
+ placeholder: "Please describe your situation in a few words...",
1528
+ inputClass: "!t-h-16",
1529
+ }),
1238
1530
  ],
1239
1531
  updates
1240
1532
  )
@@ -1242,18 +1534,15 @@ function divorceAndSeparationCrossSellQuestions(updates = {}) {
1242
1534
 
1243
1535
  function duiAndDWICrossSellQuestions(updates = {}) {
1244
1536
  return step(
1245
- 'duiAndDWICrossSellQuestions',
1537
+ "duiAndDWICrossSellQuestions",
1246
1538
  [
1247
- crossSellQuestionsStepHeadline({ headline: 'About Your DUI/DWI' }),
1248
- DUIAndDWIQuestions("true", 'CrossSell:DUI_and_DWI'),
1249
- comments(
1250
- {
1251
- label: 'Incident Description:',
1252
- placeholder: 'Please describe your incident in a few words...',
1253
- inputClass: '!t-h-16'
1254
- },
1255
- 'CrossSell:DUI_and_DWI'
1256
- )
1539
+ crossSellQuestionsStepHeadline({ headline: "About Your DUI/DWI" }),
1540
+ DUIAndDWIQuestions("true", "CrossSell:DUI_and_DWI"),
1541
+ comments("CrossSell:DUI_and_DWI", false, {
1542
+ label: "Incident Description:",
1543
+ placeholder: "Please describe your incident in a few words...",
1544
+ inputClass: "!t-h-16",
1545
+ }),
1257
1546
  ],
1258
1547
  updates
1259
1548
  )
@@ -1261,19 +1550,20 @@ function duiAndDWICrossSellQuestions(updates = {}) {
1261
1550
 
1262
1551
  function ssdiCrossSellQuestions(updates = {}) {
1263
1552
  return step(
1264
- 'ssdiCrossSellQuestions',
1553
+ "ssdiCrossSellQuestions",
1265
1554
  [
1266
- crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Benefits' }),
1267
- crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your disability:' }),
1268
- SocialSecurityDisabilityAndInsuranceQuestions("true", 'CrossSell:Social_Security_Disability_and_Insurance'),
1269
- comments(
1270
- {
1271
- label: 'Description:',
1272
- placeholder: 'Please describe your situation in a few words...',
1273
- inputClass: '!t-h-16'
1274
- },
1275
- 'CrossSell:Social_Security_Disability_and_Insurance'
1276
- )
1555
+ crossSellQuestionsStepHeadline({
1556
+ headline: "You May Be Entitled To Benefits",
1557
+ }),
1558
+ crossSellQuestionsStepSubHeadline({
1559
+ subheadline: "Tell us about your disability:",
1560
+ }),
1561
+ SocialSecurityDisabilityAndInsuranceQuestions("true", "CrossSell:Social_Security_Disability_and_Insurance"),
1562
+ comments("CrossSell:Social_Security_Disability_and_Insurance", false, {
1563
+ label: "Description:",
1564
+ placeholder: "Please describe your situation in a few words...",
1565
+ inputClass: "!t-h-16",
1566
+ }),
1277
1567
  ],
1278
1568
  updates
1279
1569
  )
@@ -1281,19 +1571,20 @@ function ssdiCrossSellQuestions(updates = {}) {
1281
1571
 
1282
1572
  function personalInjuryCrossSellQuestions(updates = {}) {
1283
1573
  return step(
1284
- 'personalInjuryCrossSellQuestions',
1574
+ "personalInjuryCrossSellQuestions",
1285
1575
  [
1286
- crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Compensation' }),
1287
- crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your injury:' }),
1288
- PersonalInjuryQuestions("true", 'CrossSell:Personal_Injury'),
1289
- comments(
1290
- {
1291
- label: 'Injury Description:',
1292
- placeholder: 'Please describe your injury in a few words...',
1293
- inputClass: '!t-h-16'
1294
- },
1295
- 'CrossSell:Personal_Injury'
1296
- )
1576
+ crossSellQuestionsStepHeadline({
1577
+ headline: "You May Be Entitled To Compensation",
1578
+ }),
1579
+ crossSellQuestionsStepSubHeadline({
1580
+ subheadline: "Tell us about your injury:",
1581
+ }),
1582
+ PersonalInjuryQuestions("true", "CrossSell:Personal_Injury"),
1583
+ comments("CrossSell:Personal_Injury", false, {
1584
+ label: "Injury Description:",
1585
+ placeholder: "Please describe your injury in a few words...",
1586
+ inputClass: "!t-h-16",
1587
+ }),
1297
1588
  ],
1298
1589
  updates
1299
1590
  )
@@ -1301,18 +1592,17 @@ function personalInjuryCrossSellQuestions(updates = {}) {
1301
1592
 
1302
1593
  function powerOfAttorneyCrossSellQuestions(updates = {}) {
1303
1594
  return step(
1304
- 'powerOfAttorneyCrossSellQuestions',
1595
+ "powerOfAttorneyCrossSellQuestions",
1305
1596
  [
1306
- crossSellQuestionsStepHeadline({ headline: 'Power of Attorney Information' }),
1307
- PowerofAttorneyQuestions("true", 'CrossSell:Power_of_Attorney'),
1308
- comments(
1309
- {
1310
- label: 'Description:',
1311
- placeholder: 'Please describe your situation in a few words...',
1312
- inputClass: '!t-h-16'
1313
- },
1314
- 'CrossSell:Power_of_Attorney'
1315
- )
1597
+ crossSellQuestionsStepHeadline({
1598
+ headline: "Power of Attorney Information",
1599
+ }),
1600
+ PowerofAttorneyQuestions("true", "CrossSell:Power_of_Attorney"),
1601
+ comments("CrossSell:Power_of_Attorney", false, {
1602
+ label: "Description:",
1603
+ placeholder: "Please describe your situation in a few words...",
1604
+ inputClass: "!t-h-16",
1605
+ }),
1316
1606
  ],
1317
1607
  updates
1318
1608
  )
@@ -1320,18 +1610,15 @@ function powerOfAttorneyCrossSellQuestions(updates = {}) {
1320
1610
 
1321
1611
  function willsAndTrustsCrossSellQuestions(updates = {}) {
1322
1612
  return step(
1323
- 'willsAndTrustsCrossSellQuestions',
1613
+ "willsAndTrustsCrossSellQuestions",
1324
1614
  [
1325
- crossSellQuestionsStepHeadline({ headline: 'Will or Trust Information' }),
1326
- WillsAndTrustsQuestions("true", 'CrossSell:Wills_and_Trusts'),
1327
- comments(
1328
- {
1329
- label: 'Description:',
1330
- placeholder: 'Please describe your situation in a few words...',
1331
- inputClass: '!t-h-16'
1332
- },
1333
- 'CrossSell:Wills_and_Trusts'
1334
- )
1615
+ crossSellQuestionsStepHeadline({ headline: "Will or Trust Information" }),
1616
+ WillsAndTrustsQuestions("true", "CrossSell:Wills_and_Trusts"),
1617
+ comments("CrossSell:Wills_and_Trusts", false, {
1618
+ label: "Description:",
1619
+ placeholder: "Please describe your situation in a few words...",
1620
+ inputClass: "!t-h-16",
1621
+ }),
1335
1622
  ],
1336
1623
  updates
1337
1624
  )
@@ -1339,19 +1626,20 @@ function willsAndTrustsCrossSellQuestions(updates = {}) {
1339
1626
 
1340
1627
  function workersCompensationCrossSellQuestions(updates = {}) {
1341
1628
  return step(
1342
- 'workersCompensationCrossSellQuestions',
1629
+ "workersCompensationCrossSellQuestions",
1343
1630
  [
1344
- crossSellQuestionsStepHeadline({ headline: 'You May Be Entitled To Benefits' }),
1345
- crossSellQuestionsStepSubHeadline({ subheadline: 'Tell us about your injury:' }),
1346
- WorkersCompensationQuestions("true", 'CrossSell:Workers_Compensation'),
1347
- comments(
1348
- {
1349
- label: 'Injury Description:',
1350
- placeholder: 'Please describe your injury in a few words...',
1351
- inputClass: '!t-h-16'
1352
- },
1353
- 'CrossSell:Workers_Compensation'
1354
- )
1631
+ crossSellQuestionsStepHeadline({
1632
+ headline: "You May Be Entitled To Benefits",
1633
+ }),
1634
+ crossSellQuestionsStepSubHeadline({
1635
+ subheadline: "Tell us about your injury:",
1636
+ }),
1637
+ WorkersCompensationQuestions("true", "CrossSell:Workers_Compensation"),
1638
+ comments("CrossSell:Workers_Compensation", false, {
1639
+ label: "Injury Description:",
1640
+ placeholder: "Please describe your injury in a few words...",
1641
+ inputClass: "!t-h-16",
1642
+ }),
1355
1643
  ],
1356
1644
  updates
1357
1645
  )
@@ -1359,28 +1647,21 @@ function workersCompensationCrossSellQuestions(updates = {}) {
1359
1647
 
1360
1648
  function legalCrossSells(updates = {}) {
1361
1649
  updates.nextOnInput = false;
1362
- updates.stepKey = '$get(Type_Of_Legal_Problem).value';
1363
- return step(
1364
- 'legalCrossSells',
1365
- [
1366
- legalCrossSellsStepHeadline(updates),
1367
- legalCrossSells$1(),
1368
- ],
1369
- updates
1370
- )
1650
+ updates.stepKey = "$get(Type_Of_Legal_Problem).value";
1651
+ return step("legalCrossSells", [legalCrossSellsStepHeadline(updates), legalCrossSells$1()], updates)
1371
1652
  }
1372
1653
 
1373
1654
  function landlordTenantIssueTOLP(updates = {}) {
1374
1655
  return step(
1375
- 'landlordTenantIssue',
1656
+ "landlordTenantIssue",
1376
1657
  [
1377
1658
  {
1378
- $formkit: 'hidden',
1659
+ $formkit: "hidden",
1379
1660
  name: "Type_Of_Legal_Problem",
1380
1661
  id: "Type_Of_Legal_Problem",
1381
- value: "Landlord and Tenant"
1662
+ value: "Landlord and Tenant",
1382
1663
  },
1383
- landlordTenantIssueRadioCenter(),
1664
+ landlordTenantIssueRadio(updates.scope, true, updates.input),
1384
1665
  ],
1385
1666
  updates
1386
1667
  )
@@ -1388,137 +1669,137 @@ function landlordTenantIssueTOLP(updates = {}) {
1388
1669
 
1389
1670
  function haveAttorney(updates = {}) {
1390
1671
  return sqstep(
1391
- 'haveAttorney',
1392
- haveAttorneyCenter(updates.scope),
1393
- 'Already working with an attorney?',
1672
+ "haveAttorney",
1673
+ haveAttorney$1(updates.scope, true, updates.input),
1674
+ "Already working with an attorney?",
1394
1675
  updates
1395
1676
  )
1396
1677
  }
1397
1678
 
1398
1679
  function degreeOfInterest(updates = {}) {
1399
1680
  return sqstep(
1400
- 'degreeOfInterest',
1401
- degreeOfInterestCenter(),
1402
- 'Could you pay if your issue could be resolved?',
1681
+ "degreeOfInterest",
1682
+ degreeOfInterest$1(updates.scope, true, updates.input),
1683
+ "Could you pay if your issue could be resolved?",
1403
1684
  updates
1404
1685
  )
1405
1686
  }
1406
1687
 
1407
1688
  function landlordTenantParty(updates = {}) {
1408
1689
  return sqstep(
1409
- 'landlordTenantParty',
1410
- landlordTenantPartyCenter(),
1411
- 'I am the:',
1690
+ "landlordTenantParty",
1691
+ landlordTenantParty$1(updates.scope, true, updates.input),
1692
+ "I am the:",
1412
1693
  updates
1413
1694
  )
1414
1695
  }
1415
1696
 
1416
1697
  const formNavigation = (updates = {}) => ({
1417
- $el: 'div',
1698
+ $el: "div",
1418
1699
  attrs: {
1419
- class: 'step-nav'
1700
+ class: "step-nav",
1420
1701
  },
1421
1702
  children: [
1422
1703
  {
1423
- $formkit: 'button',
1424
- name: 'back_button',
1425
- onClick: '$setPreviousStep($prevStepFunc($get(form)))',
1426
- children: 'Back',
1704
+ $formkit: "button",
1705
+ name: "back_button",
1706
+ onClick: "$setPreviousStep($prevStepFunc($get(form)))",
1707
+ children: "Back",
1427
1708
  style: {
1428
- if: '$activeStep === $firstStep()',
1429
- then: 'visibility: hidden;'
1430
- }
1709
+ if: "$activeStep === $firstStep()",
1710
+ then: "visibility: hidden;",
1711
+ },
1431
1712
  },
1432
1713
  {
1433
- $formkit: 'button',
1434
- name: 'next_button',
1435
- onClick: '$setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form)))',
1714
+ $formkit: "button",
1715
+ name: "next_button",
1716
+ onClick: "$setNextStep($fireStepEvent($get(form)), $preStepFunc($get(form)))",
1436
1717
  children: {
1437
- if: '$activeStep === $firstStep()',
1438
- then: 'Start',
1439
- else: 'Next'
1718
+ if: "$activeStep === $firstStep()",
1719
+ then: "Start",
1720
+ else: "Next",
1440
1721
  },
1441
1722
  outerClass: {
1442
- if: '$activeStep === $lastStep()',
1443
- then: 't-hidden',
1444
- else: ''
1723
+ if: "$activeStep === $lastStep()",
1724
+ then: "t-hidden",
1725
+ else: "",
1445
1726
  },
1446
1727
  style: {
1447
- if: '$activeStep === $lastStep()',
1448
- then: 'display: none;'
1449
- }
1728
+ if: "$activeStep === $lastStep()",
1729
+ then: "display: none;",
1730
+ },
1450
1731
  },
1451
1732
  {
1452
- $formkit: 'submit',
1453
- name: 'submit_button',
1454
- label: updates.submitLabel || 'Submit',
1455
- if: '$activeStep === $lastStep()',
1733
+ $formkit: "submit",
1734
+ name: "submit_button",
1735
+ label: updates.submitLabel || "Submit",
1736
+ if: "$activeStep === $lastStep()",
1456
1737
  style: {
1457
- if: '$activeStep !== $lastStep()',
1458
- then: 'display: none;'
1459
- }
1460
- }
1461
- ]
1738
+ if: "$activeStep !== $lastStep()",
1739
+ then: "display: none;",
1740
+ },
1741
+ },
1742
+ ],
1462
1743
  });
1463
1744
 
1464
1745
  const formDetails = () => ({
1465
- $el: 'pre',
1746
+ $el: "pre",
1466
1747
  if: '$urlParam("fdbg", "") == 1',
1467
1748
  children: [
1468
1749
  {
1469
- $el: 'pre',
1470
- children: '$stringify( $get(form).value )',
1750
+ $el: "pre",
1751
+ children: "$stringify( $get(form).value )",
1471
1752
  attrs: {
1472
- class: 't-text-xs',
1473
- style: 'overflow: scroll'
1474
- }
1753
+ class: "t-text-xs",
1754
+ style: "overflow: scroll",
1755
+ },
1475
1756
  },
1476
1757
  {
1477
- $el: 'pre',
1478
- children: ['activeStep: ', '$activeStep'],
1758
+ $el: "pre",
1759
+ children: ["activeStep: ", "$activeStep"],
1479
1760
  attrs: {
1480
- class: 't-text-xs',
1481
- style: 'overflow: scroll'
1482
- }
1761
+ class: "t-text-xs",
1762
+ style: "overflow: scroll",
1763
+ },
1483
1764
  },
1484
1765
  {
1485
- $el: 'pre',
1486
- children: ['stepHistory: ', '$stepHistory'],
1766
+ $el: "pre",
1767
+ children: ["stepHistory: ", "$stepHistory"],
1487
1768
  attrs: {
1488
- class: 't-text-xs',
1489
- style: 'overflow: scroll'
1490
- }
1769
+ class: "t-text-xs",
1770
+ style: "overflow: scroll",
1771
+ },
1491
1772
  },
1492
1773
  {
1493
- $el: 'pre',
1494
- children: ['stepQueue: ', '$stepQueue'],
1774
+ $el: "pre",
1775
+ children: ["stepQueue: ", "$stepQueue"],
1495
1776
  attrs: {
1496
- class: 't-text-xs',
1497
- style: 'overflow: scroll'
1498
- }
1777
+ class: "t-text-xs",
1778
+ style: "overflow: scroll",
1779
+ },
1499
1780
  },
1500
1781
  {
1501
- $el: 'pre',
1502
- children: ['steps: ', '$stepKeys()'],
1782
+ $el: "pre",
1783
+ children: ["steps: ", "$stepKeys()"],
1503
1784
  attrs: {
1504
- class: 't-text-xs',
1505
- style: 'overflow: scroll'
1506
- }
1507
- }
1508
- ]
1785
+ class: "t-text-xs",
1786
+ style: "overflow: scroll",
1787
+ },
1788
+ },
1789
+ ],
1509
1790
  });
1510
1791
 
1511
1792
  const formPropDefaults = {
1512
- type: 'form',
1513
- id: 'form',
1514
- config: { validationVisibility: 'submit' },
1793
+ type: "form",
1794
+ id: "form",
1795
+ config: { validationVisibility: "submit" },
1515
1796
  onSubmit: '$submit($submitUrl, $prepData, $handleRedirect, "text/plain; charset=UTF-8")',
1516
- plugins: '$plugins',
1797
+ plugins: "$plugins",
1517
1798
  actions: false,
1518
- anchorElement: 'form-anchor',
1799
+ anchorElement: "form-anchor",
1519
1800
  useLocalStorage: true,
1520
1801
  prepop: {
1521
- fromURL: true
1802
+ fromURL: true,
1522
1803
  },
1523
1804
  errorCodes: {
1524
1805
  403: { message: "An Error Occurred", abort: false },
@@ -1526,13 +1807,11 @@ const formPropDefaults = {
1526
1807
  429: "An Error Occurred",
1527
1808
  504: { message: "An Error Occurred", abort: false },
1528
1809
  },
1529
- formClass: '!t-max-w-[40rem]'
1810
+ formClass: "!t-max-w-[40rem]",
1530
1811
  };
1531
1812
 
1532
1813
  function filterMapByKey(obj, keyList) {
1533
- return Object.fromEntries(
1534
- Object.entries(obj).filter(([key]) => keyList.includes(key))
1535
- );
1814
+ return Object.fromEntries(Object.entries(obj).filter(([key]) => keyList.includes(key)))
1536
1815
  }
1537
1816
 
1538
1817
  // export function filteredNextStepsMapLegal(keyList) {
@@ -1542,10 +1821,7 @@ function filterMapByKey(obj, keyList) {
1542
1821
  // }
1543
1822
 
1544
1823
  function formProps(updates) {
1545
- const props = merge(
1546
- formPropDefaults,
1547
- updates
1548
- );
1824
+ const props = merge(formPropDefaults, updates);
1549
1825
  if (props.formId && !props.name) {
1550
1826
  props.name = props.formId;
1551
1827
  }
@@ -1555,13 +1831,10 @@ function formProps(updates) {
1555
1831
  const metaDefaults = {};
1556
1832
 
1557
1833
  function metaProps(updates) {
1558
- const data = merge(
1559
- metaDefaults,
1560
- updates
1561
- );
1834
+ const data = merge(metaDefaults, updates);
1562
1835
  return {
1563
- type: 'meta',
1564
- data
1836
+ type: "meta",
1837
+ data,
1565
1838
  }
1566
1839
  }
1567
1840
 
@@ -1581,233 +1854,232 @@ function defaultMetaPropsLegal(tolps = null) {
1581
1854
  defaultFinalHeadline: DEFAULT_FINAL_HEADLINE_LEGAL,
1582
1855
  finalHeadlines: finalHeadlines,
1583
1856
  defaultFinalSubHeadline: DEFAULT_FINAL_SUBHEADLINE_LEGAL,
1584
- finalSubHeadlines: finalSubHeadlines
1857
+ finalSubHeadlines: finalSubHeadlines,
1585
1858
  })
1586
1859
  }
1587
1860
 
1588
- function dynamicSchemaNode(field = 'Type_Of_Legal_Problem') {
1861
+ function dynamicSchemaNode(field = "Type_Of_Legal_Problem") {
1589
1862
  return {
1590
- $cmp: 'FormKitSchema',
1591
- if: '$get(' + field + ').value',
1863
+ $cmp: "FormKitSchema",
1864
+ if: "$get(" + field + ").value",
1592
1865
  props: {
1593
- schema: '$meta.dynamicSchema',
1594
- data: '$buildData($meta)'
1595
- }
1866
+ schema: "$meta.dynamicSchema",
1867
+ data: "$buildData($meta)",
1868
+ },
1596
1869
  }
1597
1870
  }
1598
1871
 
1599
1872
  const formAnchorDefaults = {
1600
- $el: 'div',
1873
+ $el: "div",
1601
1874
  children: [
1602
1875
  {
1603
- $el: 'div',
1876
+ $el: "div",
1604
1877
  attrs: {
1605
- id: 'form-anchor',
1606
- class: 't-absolute',
1607
- style: { top: '-30px', left: 0 }
1608
- }
1609
- }
1878
+ id: "form-anchor",
1879
+ class: "t-absolute",
1880
+ style: { top: "-30px", left: 0 },
1881
+ },
1882
+ },
1610
1883
  ],
1611
1884
  attrs: {
1612
- class: 't-relative'
1613
- }
1885
+ class: "t-relative",
1886
+ },
1614
1887
  };
1615
1888
 
1616
1889
  function formAnchor(updates) {
1617
- return merge(
1618
- formAnchorDefaults,
1619
- updates
1620
- )
1890
+ return merge(formAnchorDefaults, updates)
1621
1891
  }
1622
1892
 
1623
1893
  const progressBarDefaults = {
1624
- $el: 'div',
1894
+ $el: "div",
1625
1895
  attrs: {
1626
- class: 't-mt-7 t-mb-5 t-w-full t-flex t-flex-col t-justify-center t-items-center',
1896
+ class: "t-mt-7 t-mb-5 t-w-full t-flex t-flex-col t-justify-center t-items-center",
1627
1897
  style: {
1628
- if: '$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())',
1629
- then: 'display: none'
1898
+ if: "$fns.eq($activeStep, $firstStep()) || $fns.eq($activeStep, $lastStep())",
1899
+ then: "display: none",
1630
1900
  },
1631
1901
  },
1632
1902
  children: [
1633
1903
  {
1634
- $el: 'div',
1904
+ $el: "div",
1635
1905
  attrs: {
1636
- class: 't-flex t-justify-center'
1906
+ class: "t-flex t-justify-center",
1637
1907
  },
1638
1908
  children: [
1639
1909
  {
1640
- $el: 'span',
1910
+ $el: "span",
1641
1911
  attrs: {
1642
- id: 'progress-bar-text',
1643
- class: 't-text-sm t-mb-1'
1912
+ id: "progress-bar-text",
1913
+ class: "t-text-sm t-mb-1",
1644
1914
  },
1645
- children: [
1646
- "0% Complete"
1647
- ]
1915
+ children: ["0% Complete"],
1648
1916
  },
1649
- ]
1917
+ ],
1650
1918
  },
1651
1919
  {
1652
- $el: 'div',
1920
+ $el: "div",
1653
1921
  attrs: {
1654
- class: 't-bg-gray-100 t-w-9/12 t-rounded'
1922
+ class: "t-bg-gray-100 t-w-9/12 t-rounded",
1655
1923
  },
1656
1924
  children: [
1657
1925
  {
1658
- $el: 'div',
1926
+ $el: "div",
1659
1927
  attrs: {
1660
- id: 'progress-bar',
1661
- 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]',
1928
+ id: "progress-bar",
1929
+ class:
1930
+ "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]",
1662
1931
  style: {
1663
- transition: 'width 0.5s ease'
1932
+ transition: "width 0.5s ease",
1664
1933
  },
1665
1934
  },
1666
- }
1667
- ]
1668
- }
1669
- ]
1935
+ },
1936
+ ],
1937
+ },
1938
+ ],
1670
1939
  };
1671
1940
 
1672
1941
  function progressBar(updates) {
1673
- return merge(
1674
- progressBarDefaults,
1675
- updates
1676
- )
1942
+ return merge(progressBarDefaults, updates)
1677
1943
  }
1678
1944
 
1679
1945
  function headlineDefaults(updates = {}) {
1680
1946
  return {
1681
- $el: 'h1',
1947
+ $el: "h1",
1682
1948
  attrs: {
1683
- class: 't-flex t-justify-center t-text-center !t-text-[2rem] t-font-semibold t-pt-5 t-px-7 md:t-px-3' + ' ' + (updates.headlineClass || '')
1684
- }
1949
+ class:
1950
+ "t-flex t-justify-center t-text-center !t-text-[2rem] t-font-semibold t-pt-5 t-px-7 md:t-px-3" +
1951
+ " " +
1952
+ (updates.headlineClass || ""),
1953
+ },
1685
1954
  }
1686
1955
  }
1687
1956
 
1688
1957
  function headline(updates = {}) {
1689
- return merge(
1690
- headlineDefaults(updates),
1691
- updates
1692
- )
1958
+ return merge(headlineDefaults(updates), updates)
1693
1959
  }
1694
1960
 
1695
1961
  function subHeadlineDefaults(updates = {}) {
1696
1962
  return {
1697
- $el: 'h3',
1963
+ $el: "h3",
1698
1964
  attrs: {
1699
- class: 't-flex t-justify-center t-text-center !t-text-[1.2rem] t-font-medium t-text-blue-500 t-px-10' + ' ' + (updates.subheadlineClass || '')
1700
- }
1965
+ class:
1966
+ "t-flex t-justify-center t-text-center !t-text-[1.2rem] t-font-medium t-text-blue-500 t-px-10" +
1967
+ " " +
1968
+ (updates.subheadlineClass || ""),
1969
+ },
1701
1970
  }
1702
1971
  }
1703
1972
 
1704
1973
  function subHeadline(updates = {}) {
1705
- return merge(
1706
- subHeadlineDefaults(updates),
1707
- updates
1708
- )
1974
+ return merge(subHeadlineDefaults(updates), updates)
1709
1975
  }
1710
1976
 
1711
1977
  const hiddenInputsBase = [
1712
1978
  {
1713
- $formkit: 'hidden',
1979
+ $formkit: "hidden",
1714
1980
  name: "gclid",
1715
- value: null
1981
+ value: null,
1716
1982
  },
1717
1983
  {
1718
- $formkit: 'hidden',
1984
+ $formkit: "hidden",
1719
1985
  name: "campaignid",
1720
- value: null
1986
+ value: null,
1721
1987
  },
1722
1988
  {
1723
- $formkit: 'hidden',
1989
+ $formkit: "hidden",
1724
1990
  name: "s",
1725
- value: null
1726
- }
1991
+ value: null,
1992
+ },
1727
1993
  ];
1728
1994
 
1729
1995
  const hiddenInputsLegal = [
1730
1996
  {
1731
- $formkit: 'hidden',
1997
+ $formkit: "hidden",
1732
1998
  name: "vertical",
1733
- value: "Legal"
1999
+ value: "Legal",
1734
2000
  },
1735
2001
  {
1736
- $formkit: 'hidden',
2002
+ $formkit: "hidden",
1737
2003
  name: "TCPA_Language",
1738
- value: "$meta.tcpaLanguage"
2004
+ value: "$meta.tcpaLanguage",
1739
2005
  },
1740
- ...hiddenInputsBase
2006
+ ...hiddenInputsBase,
1741
2007
  ];
1742
2008
 
1743
2009
  const legalRedirectMapDefaults = {
1744
- '*': LegalRedirectUrl()
2010
+ "*": LegalRedirectUrl(),
1745
2011
  };
1746
2012
 
1747
-
1748
2013
  function legalRedirectMap(updates) {
1749
- return merge(
1750
- legalRedirectMapDefaults,
1751
- updates
1752
- )
2014
+ return merge(legalRedirectMapDefaults, updates)
1753
2015
  }
1754
2016
 
1755
2017
  const TOLPCommentsPlaceholders = {
1756
- 'Adoption': 'Example: "I need help with adoption forms"',
1757
- 'Asbestos and Mesothelioma': 'Example: "I was exposed to asbestos at work and would like to file a claim"',
1758
- 'Auto and Car Accidents': 'Example: "A truck crashed into my car on the highway" or "I\'ve been involved in a hit and run accident"',
1759
- 'Bankruptcy': 'Example: "I need help filing for bankruptcy"',
1760
- 'Birth Certificate and Name Change': 'Example: "Just married and would like to change my last name"',
1761
- 'Business Lawyers': 'Example: "I need help incorporating a business" or "I would like a legal contract reviewed"',
1762
- 'Child Custody and Support': 'Example: "Need help getting custody" or "Issues with child support payments"',
1763
- 'Child Custody': 'Example: "Need help getting custody"',
1764
- 'Child Support': 'Example: "Issues with child support payments"',
1765
- 'Civil Rights and Discrimination': 'Example: "Police brutality" or "Coworker keeps harassing me"',
1766
- 'Civil Lawsuit': 'Example: "A contractor took my money and never completed the job" or "I am being sued by a neighbor"',
1767
- 'File a Lawsuit': 'Example: "A contractor took my money and never completed the job"',
1768
- 'Defend a Lawsuit': 'Example: "I am being sued by a neighbor"',
1769
- 'Consumer Lawyers': 'Example: "Someone committed fraud against me" or "A contractor took my money and never completed the job"',
1770
- 'Copyrights and Trademarks': 'Example: "I would like to register a trademark or copyright a name"',
1771
- 'Criminal and Felony': 'Example: "I was arrested for DUI and need legal defense" or "I am being charged with assault"',
1772
- 'Debt and Collections': 'Example: "I would like to consolidate my debt" or "A collection agency is harassing me"',
1773
- 'Divorce and Separation': 'Example: "I would like to file for an uncontested divorce"',
1774
- 'DUI and DWI': 'Example: "I was arrested for DUI and need legal defense"',
1775
- 'Elder Law': 'Example: "I would like help with Estate Planning" or "I need help with a guardianship"',
1776
- 'Employment and Workplace': 'Example: "I was injured while on the job" or "My company is discriminating against me"',
1777
- 'Expungement': 'Example: "I would like to file for an expungement and clear my record"',
1778
- 'Family Issues': 'Example: "I need help with guardianship" or "I need a simple will created"',
1779
- 'Foreclosure': 'Example: "I need help to avoid foreclosure on my house"',
1780
- 'Guardianship': 'Example: "I need help with guardianship documents"',
1781
- 'Harassment and Discrimination': 'Example: "I am being discriminated at work" or "My neighbor is harassing me"',
1782
- 'Sexual Harassment': 'Example: "I am being sexually harassed by a coworker"',
1783
- 'Workplace Harassment': 'Example: "My coworker is being aggressive towards me"',
1784
- 'Non-Workplace Harassment': 'Example: "My neighbor is harassing me"',
1785
- 'Workplace Discrimination': 'Example: "I am being discriminated at work based on my age"',
1786
- 'Non-Workplace Discrimination': 'Example: "I am being discriminated against by a local official"',
1787
- 'Identity Theft': 'Example: "Someone stole my identity and I need help fixing the issue"',
1788
- 'Immigration and Visas': 'Example: "I need help filing for a visa" or "Help with a green card"',
1789
- 'Insurance': 'Example: "I need help filing an insurance claim for damage to my house"',
1790
- 'Landlord and Tenant': 'Example: "I need help to fight an eviction" or "I would like a lawyer to review a rental contract"',
1791
- 'Lemon Law': 'Example: "I purchased a new vehicle that broke down already and seller will not assist"',
1792
- 'Long Term Disability': 'Example: "I was injured on the job and would like to file for benefits" or "I need help filing for disability benefits"',
1793
- 'Medical Malpractice': 'Example: "A doctor performed surgery on the wrong limb and I would like to file a lawsuit"',
1794
- 'Patents and Intellectual Property': 'Example: "I would like to file for a patent" or "I need to copyright a name"',
1795
- 'Personal Injury': 'Example: "I was bit by the neighbor\'s dog" or "I fell in the icy grocery store parking lot"',
1796
- 'Power of Attorney': 'Example: "I need help with a limited or general power of attorney"',
1797
- 'Probate and Estates': 'Example: "I need help with planning for my estate" or "A family member passed without a will in place"',
1798
- 'Product Liability': 'Example: "My car battery caught on fire" or "I purchased a faulty product"',
1799
- 'Property Damage': 'Example: "The neighbor\'s tree fell on my fence" or "My car was hit in the parking lot"',
1800
- 'Real Estate': 'Example: "I need help with a quitclaim deed" or "I need a lawyer to review a purchase and sales agreement"',
1801
- 'Social Security Disability and Insurance': 'Example: "I would like help filing for disability benefits" or "I\'ve been denied for SSDI and would like to appeal"',
1802
- 'Tax and IRS': 'Example: "I need help fighting an IRS tax claim" or "I need audit defense"',
1803
- 'Traffic and Tickets': 'Example: "I need help reinstating a supsended license" or "I would like to fight a traffic ticket"',
1804
- 'Unemployment': 'Example: "I need help filing for unemployment benefits"',
1805
- 'Victim of a Crime': 'Example: "I was assaulted in the store" or "I am being discriminated against at work"',
1806
- 'Wills and Trusts': 'Example: "I need a simple will created" or "I would like guidance on creating a trust fund"',
1807
- 'Workers Compensation': 'Example: "I was injured at work and would like to file for workers compensation benefits"',
1808
- 'Wrongful Death': 'Example: "A family member was killed on the job and we need legal representation"',
1809
- 'Wrongful Termination': 'Example: "I was fired by my employer without cause"',
1810
- 'Not Sure or Other': 'Example: "I was involved in a car accident" or "I need help setting up power of attorney"'
2018
+ Adoption: 'Example: "I need help with adoption forms"',
2019
+ "Asbestos and Mesothelioma": 'Example: "I was exposed to asbestos at work and would like to file a claim"',
2020
+ "Auto and Car Accidents":
2021
+ 'Example: "A truck crashed into my car on the highway" or "I\'ve been involved in a hit and run accident"',
2022
+ Bankruptcy: 'Example: "I need help filing for bankruptcy"',
2023
+ "Birth Certificate and Name Change": 'Example: "Just married and would like to change my last name"',
2024
+ "Business Lawyers": 'Example: "I need help incorporating a business" or "I would like a legal contract reviewed"',
2025
+ "Child Custody and Support": 'Example: "Need help getting custody" or "Issues with child support payments"',
2026
+ "Child Custody": 'Example: "Need help getting custody"',
2027
+ "Child Support": 'Example: "Issues with child support payments"',
2028
+ "Civil Rights and Discrimination": 'Example: "Police brutality" or "Coworker keeps harassing me"',
2029
+ "Civil Lawsuit":
2030
+ 'Example: "A contractor took my money and never completed the job" or "I am being sued by a neighbor"',
2031
+ "File a Lawsuit": 'Example: "A contractor took my money and never completed the job"',
2032
+ "Defend a Lawsuit": 'Example: "I am being sued by a neighbor"',
2033
+ "Consumer Lawyers":
2034
+ 'Example: "Someone committed fraud against me" or "A contractor took my money and never completed the job"',
2035
+ "Copyrights and Trademarks": 'Example: "I would like to register a trademark or copyright a name"',
2036
+ "Criminal and Felony":
2037
+ 'Example: "I was arrested for DUI and need legal defense" or "I am being charged with assault"',
2038
+ "Debt and Collections": 'Example: "I would like to consolidate my debt" or "A collection agency is harassing me"',
2039
+ "Divorce and Separation": 'Example: "I would like to file for an uncontested divorce"',
2040
+ "DUI and DWI": 'Example: "I was arrested for DUI and need legal defense"',
2041
+ "Elder Law": 'Example: "I would like help with Estate Planning" or "I need help with a guardianship"',
2042
+ "Employment and Workplace": 'Example: "I was injured while on the job" or "My company is discriminating against me"',
2043
+ Expungement: 'Example: "I would like to file for an expungement and clear my record"',
2044
+ "Family Issues": 'Example: "I need help with guardianship" or "I need a simple will created"',
2045
+ Foreclosure: 'Example: "I need help to avoid foreclosure on my house"',
2046
+ Guardianship: 'Example: "I need help with guardianship documents"',
2047
+ "Harassment and Discrimination": 'Example: "I am being discriminated at work" or "My neighbor is harassing me"',
2048
+ "Sexual Harassment": 'Example: "I am being sexually harassed by a coworker"',
2049
+ "Workplace Harassment": 'Example: "My coworker is being aggressive towards me"',
2050
+ "Non-Workplace Harassment": 'Example: "My neighbor is harassing me"',
2051
+ "Workplace Discrimination": 'Example: "I am being discriminated at work based on my age"',
2052
+ "Non-Workplace Discrimination": 'Example: "I am being discriminated against by a local official"',
2053
+ "Identity Theft": 'Example: "Someone stole my identity and I need help fixing the issue"',
2054
+ "Immigration and Visas": 'Example: "I need help filing for a visa" or "Help with a green card"',
2055
+ Insurance: 'Example: "I need help filing an insurance claim for damage to my house"',
2056
+ "Landlord and Tenant":
2057
+ 'Example: "I need help to fight an eviction" or "I would like a lawyer to review a rental contract"',
2058
+ "Lemon Law": 'Example: "I purchased a new vehicle that broke down already and seller will not assist"',
2059
+ "Long Term Disability":
2060
+ 'Example: "I was injured on the job and would like to file for benefits" or "I need help filing for disability benefits"',
2061
+ "Medical Malpractice": 'Example: "A doctor performed surgery on the wrong limb and I would like to file a lawsuit"',
2062
+ "Patents and Intellectual Property": 'Example: "I would like to file for a patent" or "I need to copyright a name"',
2063
+ "Personal Injury": 'Example: "I was bit by the neighbor\'s dog" or "I fell in the icy grocery store parking lot"',
2064
+ "Power of Attorney": 'Example: "I need help with a limited or general power of attorney"',
2065
+ "Probate and Estates":
2066
+ 'Example: "I need help with planning for my estate" or "A family member passed without a will in place"',
2067
+ "Product Liability": 'Example: "My car battery caught on fire" or "I purchased a faulty product"',
2068
+ "Property Damage": 'Example: "The neighbor\'s tree fell on my fence" or "My car was hit in the parking lot"',
2069
+ "Real Estate":
2070
+ 'Example: "I need help with a quitclaim deed" or "I need a lawyer to review a purchase and sales agreement"',
2071
+ "Social Security Disability and Insurance":
2072
+ 'Example: "I would like help filing for disability benefits" or "I\'ve been denied for SSDI and would like to appeal"',
2073
+ "Tax and IRS": 'Example: "I need help fighting an IRS tax claim" or "I need audit defense"',
2074
+ "Traffic and Tickets":
2075
+ 'Example: "I need help reinstating a supsended license" or "I would like to fight a traffic ticket"',
2076
+ Unemployment: 'Example: "I need help filing for unemployment benefits"',
2077
+ "Victim of a Crime": 'Example: "I was assaulted in the store" or "I am being discriminated against at work"',
2078
+ "Wills and Trusts": 'Example: "I need a simple will created" or "I would like guidance on creating a trust fund"',
2079
+ "Workers Compensation": 'Example: "I was injured at work and would like to file for workers compensation benefits"',
2080
+ "Wrongful Death": 'Example: "A family member was killed on the job and we need legal representation"',
2081
+ "Wrongful Termination": 'Example: "I was fired by my employer without cause"',
2082
+ "Not Sure or Other": 'Example: "I was involved in a car accident" or "I need help setting up power of attorney"',
1811
2083
  };
1812
2084
 
1813
2085
  const TOLPFinalHeadlines = {
@@ -1815,49 +2087,64 @@ const TOLPFinalHeadlines = {
1815
2087
  };
1816
2088
 
1817
2089
  const TOLPFinalSubHeadlines = {
1818
- 'Adoption': 'You may benefit from speaking with an adoption professional. Please verify your contact information.',
2090
+ Adoption: "You may benefit from speaking with an adoption professional. Please verify your contact information.",
1819
2091
  // 'Asbestos and Mesothelioma': '',
1820
- 'Auto and Car Accidents': 'You may benefit from speaking with an accident professional. Please verify your contact information.',
1821
- 'Bankruptcy': 'You may benefit from speaking with a bankruptcy professional. Please verify your contact information.',
2092
+ "Auto and Car Accidents":
2093
+ "You may benefit from speaking with an accident professional. Please verify your contact information.",
2094
+ Bankruptcy: "You may benefit from speaking with a bankruptcy professional. Please verify your contact information.",
1822
2095
  // 'Birth Certificate and Name Change': '',
1823
2096
  // 'Business Lawyers': '',
1824
2097
  // 'Child Custody and Support': '',
1825
2098
  // 'Civil Rights and Discrimination': '',
1826
2099
  // 'Civil Lawsuit': '',
1827
2100
  // 'Consumer Lawyers': '',
1828
- 'Copyrights and Trademarks': 'You may benefit from speaking with a copyright and trademark professional. Please verify your contact information.',
2101
+ "Copyrights and Trademarks":
2102
+ "You may benefit from speaking with a copyright and trademark professional. Please verify your contact information.",
1829
2103
  // 'Criminal and Felony': '',
1830
2104
  // 'Debt and Collections': '',
1831
- 'Divorce and Separation': 'You may benefit from speaking with a divorce professional. Please verify your contact information.',
1832
- 'DUI and DWI': 'You may benefit from speaking with a DUI professional. Please verify your contact information.',
1833
- 'Elder Law': 'You may benefit from speaking with an elder law professional. Please verify your contact information.',
2105
+ "Divorce and Separation":
2106
+ "You may benefit from speaking with a divorce professional. Please verify your contact information.",
2107
+ "DUI and DWI": "You may benefit from speaking with a DUI professional. Please verify your contact information.",
2108
+ "Elder Law": "You may benefit from speaking with an elder law professional. Please verify your contact information.",
1834
2109
  // 'Employment and Workplace': '',
1835
2110
  // 'Expungement': '',
1836
2111
  // 'Family Issues': '',
1837
- 'Foreclosure': 'You may benefit from speaking with a foreclosure professional. Please verify your contact information.',
1838
- 'Guardianship': 'You may benefit from speaking with a guardianship professional. Please verify your contact information.',
2112
+ Foreclosure: "You may benefit from speaking with a foreclosure professional. Please verify your contact information.",
2113
+ Guardianship:
2114
+ "You may benefit from speaking with a guardianship professional. Please verify your contact information.",
1839
2115
  // 'Harassment and Discrimination': '',
1840
2116
  // 'Identity Theft': '',
1841
- 'Immigration and Visas': 'You may benefit from speaking with a immigration professional. Please verify your contact information.',
2117
+ "Immigration and Visas":
2118
+ "You may benefit from speaking with a immigration professional. Please verify your contact information.",
1842
2119
  // 'Insurance': '',
1843
- 'Landlord and Tenant': 'You may benefit from speaking with a landlord and tenant legal professional. Please verify your contact information.',
2120
+ "Landlord and Tenant":
2121
+ "You may benefit from speaking with a landlord and tenant legal professional. Please verify your contact information.",
1844
2122
  // 'Lemon Law': '',
1845
- 'Long Term Disability': 'You may benefit from speaking with a disability legal professional. Please verify your contact information.',
1846
- 'Medical Malpractice': 'You may benefit from speaking with a malpractice professional. Please verify your contact information.',
1847
- 'Patents and Intellectual Property': 'You may benefit from speaking with a patent professional. Please verify your contact information.',
1848
- 'Personal Injury': 'You may benefit from speaking with a personal injury professional. Please verify your contact information.',
2123
+ "Long Term Disability":
2124
+ "You may benefit from speaking with a disability legal professional. Please verify your contact information.",
2125
+ "Medical Malpractice":
2126
+ "You may benefit from speaking with a malpractice professional. Please verify your contact information.",
2127
+ "Patents and Intellectual Property":
2128
+ "You may benefit from speaking with a patent professional. Please verify your contact information.",
2129
+ "Personal Injury":
2130
+ "You may benefit from speaking with a personal injury professional. Please verify your contact information.",
1849
2131
  // 'Power of Attorney': '',
1850
- 'Probate and Estates': 'You may benefit from speaking with a probate and estate professional. Please verify your contact information.',
2132
+ "Probate and Estates":
2133
+ "You may benefit from speaking with a probate and estate professional. Please verify your contact information.",
1851
2134
  // 'Product Liability': '',
1852
2135
  // 'Property Damage': '',
1853
- 'Real Estate': 'You may benefit from speaking with a real estate professional. Please verify your contact information.',
1854
- 'Social Security Disability and Insurance': 'You may benefit from speaking with an SSDI professional. Please verify your contact information.',
1855
- 'Tax and IRS': 'You may benefit from speaking with a tax professional. Please verify your contact information.',
2136
+ "Real Estate":
2137
+ "You may benefit from speaking with a real estate professional. Please verify your contact information.",
2138
+ "Social Security Disability and Insurance":
2139
+ "You may benefit from speaking with an SSDI professional. Please verify your contact information.",
2140
+ "Tax and IRS": "You may benefit from speaking with a tax professional. Please verify your contact information.",
1856
2141
  // 'Traffic and Tickets': '',
1857
- 'Unemployment': 'You may benefit from speaking with an unemployment professional. Please verify your contact information.',
2142
+ Unemployment:
2143
+ "You may benefit from speaking with an unemployment professional. Please verify your contact information.",
1858
2144
  // 'Victim of a Crime': '',
1859
2145
  // 'Wills and Trusts': '',
1860
- 'Workers Compensation': 'You may benefit from speaking with a workers compensation professional. Please verify your contact information.',
2146
+ "Workers Compensation":
2147
+ "You may benefit from speaking with a workers compensation professional. Please verify your contact information.",
1861
2148
  // 'Wrongful Death': '',
1862
2149
  // 'Wrongful Termination': '',
1863
2150
  // 'Not Sure or Other': ''
@@ -1870,25 +2157,25 @@ const TOLPFinalSubHeadlines = {
1870
2157
 
1871
2158
  const nextStepsMapLegalCrossSells = {
1872
2159
  values: {
1873
- 'Legal_CrossSells': {
1874
- 'Auto and Car Accidents': ['autoAndCarAccidentCrossSellQuestions'],
1875
- 'Personal Injury': ['personalInjuryCrossSellQuestions'],
1876
- 'Workers Compensation': ['workersCompensationCrossSellQuestions'],
1877
- 'DUI and DWI': ['duiAndDWICrossSellQuestions'],
1878
- 'Long Term Disability': ['longTermDisabilityCrossSellQuestions'],
1879
- 'Social Security Disability and Insurance': ['ssdiCrossSellQuestions'],
1880
- 'Bankruptcy': ['bankruptcyCrossSellQuestions'],
1881
- 'Power of Attorney': ['powerOfAttorneyCrossSellQuestions'],
1882
- 'Wills and Trusts': ['willsAndTrustsCrossSellQuestions'],
1883
- 'Divorce and Separation': ['divorceAndSeparationCrossSellQuestions'],
1884
- 'Child Custody': ['childCustodyCrossSellQuestions'],
2160
+ Legal_CrossSells: {
2161
+ "Auto and Car Accidents": ["autoAndCarAccidentCrossSellQuestions"],
2162
+ "Personal Injury": ["personalInjuryCrossSellQuestions"],
2163
+ "Workers Compensation": ["workersCompensationCrossSellQuestions"],
2164
+ "DUI and DWI": ["duiAndDWICrossSellQuestions"],
2165
+ "Long Term Disability": ["longTermDisabilityCrossSellQuestions"],
2166
+ "Social Security Disability and Insurance": ["ssdiCrossSellQuestions"],
2167
+ Bankruptcy: ["bankruptcyCrossSellQuestions"],
2168
+ "Power of Attorney": ["powerOfAttorneyCrossSellQuestions"],
2169
+ "Wills and Trusts": ["willsAndTrustsCrossSellQuestions"],
2170
+ "Divorce and Separation": ["divorceAndSeparationCrossSellQuestions"],
2171
+ "Child Custody": ["childCustodyCrossSellQuestions"],
1885
2172
  },
1886
- '*': ['firstAndLast', 'contactInfo'],
2173
+ "*": ["firstAndLast", "contactInfo"],
1887
2174
  },
1888
-
2175
+
1889
2176
  // NOTE: this assumes a certain placement of the cross sell question
1890
2177
  // in the form flow.
1891
- appendSteps: ['firstAndLast', 'contactInfo'],
2178
+ appendSteps: ["firstAndLast", "contactInfo"],
1892
2179
  matchesAllowed: 1,
1893
2180
  };
1894
2181