mod-build 3.7.12 → 3.7.14

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 (32) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/gulp-tasks/build.js +4 -4
  3. package/gulp-tasks/get-default-trade-questions.js +155 -0
  4. package/gulp-tasks/serve.js +5 -5
  5. package/gulp-tasks/tasks.js +11 -0
  6. package/gulp-tasks/templates.js +6 -6
  7. package/package.json +1 -1
  8. package/src/trade-questions/alerts_medical.js +111 -0
  9. package/src/trade-questions/bathroom_refacing.js +96 -0
  10. package/src/trade-questions/cabinet_refacing.js +251 -0
  11. package/src/trade-questions/cabinets.js +35 -0
  12. package/src/trade-questions/concrete_foundation.js +57 -0
  13. package/src/trade-questions/door.js +143 -0
  14. package/src/trade-questions/flooring.js +185 -0
  15. package/src/trade-questions/garage_door.js +89 -0
  16. package/src/trade-questions/gutters.js +45 -0
  17. package/src/trade-questions/home_security.js +130 -0
  18. package/src/trade-questions/home_warranty.js +57 -0
  19. package/src/trade-questions/hot_tubs.js +92 -0
  20. package/src/trade-questions/hvac.js +179 -0
  21. package/src/trade-questions/index.js +26 -0
  22. package/src/trade-questions/insulation.js +118 -0
  23. package/src/trade-questions/plumbing.js +260 -0
  24. package/src/trade-questions/roofing.js +118 -0
  25. package/src/trade-questions/siding.js +147 -0
  26. package/src/trade-questions/solar.js +69 -0
  27. package/src/trade-questions/stair_lifts.js +47 -0
  28. package/src/trade-questions/tree_services.js +161 -0
  29. package/src/trade-questions/walk_in_tubs.js +47 -0
  30. package/src/trade-questions/water_treatment.js +46 -0
  31. package/src/trade-questions/windows.js +132 -0
  32. package/src/trade-questions-config.js +139 -0
@@ -0,0 +1,118 @@
1
+ const insulation = {
2
+ InsulationLocation: {
3
+ fields: [
4
+ {
5
+ legend: {
6
+ text: 'What area of your home needs to be insulated?'
7
+ },
8
+ options: [
9
+ {
10
+ attributes: {
11
+ name: 'InsulationLocation',
12
+ value: 'Attic',
13
+ checked: '',
14
+ data: {
15
+ required: 'nonempty'
16
+ }
17
+ },
18
+ text: 'Attic'
19
+ },
20
+ {
21
+ attributes: {
22
+ name: 'InsulationLocation',
23
+ value: 'Walls',
24
+ data: {
25
+ required: 'nonempty'
26
+ }
27
+ },
28
+ text: 'Walls'
29
+ },
30
+ {
31
+ attributes: {
32
+ name: 'InsulationLocation',
33
+ value: 'Basement',
34
+ data: {
35
+ required: 'nonempty'
36
+ }
37
+ },
38
+ text: 'Basement'
39
+ },
40
+ {
41
+ attributes: {
42
+ name: 'InsulationLocation',
43
+ value: 'Crawl Space',
44
+ data: {
45
+ required: 'nonempty'
46
+ }
47
+ },
48
+ text: 'Crawl Space'
49
+ },
50
+ {
51
+ attributes: {
52
+ name: 'InsulationLocation',
53
+ value: 'Other',
54
+ data: {
55
+ required: 'nonempty'
56
+ }
57
+ },
58
+ text: 'Other'
59
+ }
60
+ ]
61
+ }
62
+ ]
63
+ },
64
+ SubProductService: {
65
+ fields: [
66
+ {
67
+ legend: {
68
+ text: 'What type of insulation do you need?'
69
+ },
70
+ options: [
71
+ {
72
+ attributes: {
73
+ name: 'SubProductService',
74
+ value: 'Blown',
75
+ checked: '',
76
+ data: {
77
+ required: 'nonempty'
78
+ }
79
+ },
80
+ text: 'Blown-In'
81
+ },
82
+ {
83
+ attributes: {
84
+ name: 'SubProductService',
85
+ value: 'Batts',
86
+ data: {
87
+ required: 'nonempty'
88
+ }
89
+ },
90
+ text: 'Batt, Rolled or Reflective'
91
+ },
92
+ {
93
+ attributes: {
94
+ name: 'SubProductService',
95
+ value: 'Spray',
96
+ data: {
97
+ required: 'nonempty'
98
+ }
99
+ },
100
+ text: 'Sprayfoam'
101
+ },
102
+ {
103
+ attributes: {
104
+ name: 'SubProductService',
105
+ value: 'NotSure',
106
+ data: {
107
+ required: 'nonempty'
108
+ }
109
+ },
110
+ text: 'Other/Unsure'
111
+ }
112
+ ]
113
+ }
114
+ ]
115
+ }
116
+ };
117
+
118
+ module.exports = insulation;
@@ -0,0 +1,260 @@
1
+ const plumbing = {
2
+ ServiceDetails: {
3
+ fields: [
4
+ {
5
+ legend: {
6
+ text: 'What is the nature of your project?'
7
+ },
8
+ options: [
9
+ {
10
+ attributes: {
11
+ name: 'ServiceDetails',
12
+ value: 'PLUMBING',
13
+ checked: '',
14
+ data: {
15
+ required: 'nonempty'
16
+ }
17
+ },
18
+ text: 'Plumbing'
19
+ },
20
+ {
21
+ attributes: {
22
+ name: 'ServiceDetails',
23
+ value: 'DRAINS',
24
+ data: {
25
+ required: 'nonempty'
26
+ }
27
+ },
28
+ text: 'Drainage'
29
+ },
30
+ {
31
+ attributes: {
32
+ name: 'ServiceDetails',
33
+ value: 'WATER_HEATERS',
34
+ data: {
35
+ required: 'nonempty'
36
+ }
37
+ },
38
+ text: 'Water Heater'
39
+ },
40
+ {
41
+ attributes: {
42
+ name: 'ServiceDetails',
43
+ value: 'WATER_TREATMENT',
44
+ data: {
45
+ required: 'nonempty'
46
+ }
47
+ },
48
+ text: 'Water Treatment'
49
+ },
50
+ {
51
+ attributes: {
52
+ name: 'ServiceDetails',
53
+ value: 'SEWER',
54
+ data: {
55
+ required: 'nonempty'
56
+ }
57
+ },
58
+ text: 'Sewer'
59
+ },
60
+ {
61
+ attributes: {
62
+ name: 'ServiceDetails',
63
+ value: 'WATER_MAIN',
64
+ data: {
65
+ required: 'nonempty'
66
+ }
67
+ },
68
+ text: 'Water Main'
69
+ },
70
+ {
71
+ attributes: {
72
+ name: 'ServiceDetails',
73
+ value: 'PLUMBING',
74
+ data: {
75
+ required: 'nonempty'
76
+ }
77
+ },
78
+ text: 'Other'
79
+ }
80
+ ]
81
+ }
82
+ ]
83
+ },
84
+ PlumbingProjectScope: {
85
+ fields: [
86
+ {
87
+ legend: {
88
+ text: 'What is nature of your plumbing project?'
89
+ },
90
+ options: [
91
+ {
92
+ attributes: {
93
+ name: 'PlumbingProjectScope',
94
+ value: 'Install',
95
+ data: {
96
+ required: 'nonempty'
97
+ }
98
+ },
99
+ text: 'Replacement'
100
+ },
101
+ {
102
+ attributes: {
103
+ name: 'PlumbingProjectScope',
104
+ value: 'Repair',
105
+ data: {
106
+ required: 'nonempty'
107
+ }
108
+ },
109
+ text: 'Repair'
110
+ },
111
+ {
112
+ attributes: {
113
+ name: 'PlumbingProjectScope',
114
+ value: 'Install',
115
+ data: {
116
+ required: 'nonempty'
117
+ }
118
+ },
119
+ text: 'Other'
120
+ }
121
+ ]
122
+ }
123
+ ]
124
+ },
125
+ DrainageIssue: {
126
+ fields: [
127
+ {
128
+ legend: {
129
+ text: 'What drain issues are you having?'
130
+ },
131
+ options: [
132
+ {
133
+ attributes: {
134
+ name: 'DrainageIssue',
135
+ value: 'SLOW_DRAINAGE',
136
+ data: {
137
+ required: 'nonempty'
138
+ }
139
+ },
140
+ text: 'Slow drainage'
141
+ },
142
+ {
143
+ attributes: {
144
+ name: 'DrainageIssue',
145
+ value: 'WATER_BACKING_UP_GURGLING',
146
+ data: {
147
+ required: 'nonempty'
148
+ }
149
+ },
150
+ text: 'Water backing up/gurgling'
151
+ },
152
+ {
153
+ attributes: {
154
+ name: 'DrainageIssue',
155
+ value: 'PUMPS',
156
+ data: {
157
+ required: 'nonempty'
158
+ }
159
+ },
160
+ text: 'Pumps'
161
+ },
162
+ {
163
+ attributes: {
164
+ name: 'DrainageIssue',
165
+ value: 'GARBAGE_DISPOSAL',
166
+ data: {
167
+ required: 'nonempty'
168
+ }
169
+ },
170
+ text: 'Garbage disposal'
171
+ },
172
+ {
173
+ attributes: {
174
+ name: 'DrainageIssue',
175
+ value: 'LEAK',
176
+ data: {
177
+ required: 'nonempty'
178
+ }
179
+ },
180
+ text: 'Leak'
181
+ }
182
+ ]
183
+ }
184
+ ]
185
+ },
186
+ ProjectScope: {
187
+ fields: [
188
+ {
189
+ legend: {
190
+ text: 'What type of work do you need completed?'
191
+ },
192
+ options: [
193
+ {
194
+ attributes: {
195
+ name: 'ProjectScope',
196
+ value: 'Install',
197
+ data: {
198
+ required: 'nonempty'
199
+ }
200
+ },
201
+ text: 'Replacement'
202
+ },
203
+ {
204
+ attributes: {
205
+ name: 'ProjectScope',
206
+ value: 'Repair',
207
+ data: {
208
+ required: 'nonempty'
209
+ }
210
+ },
211
+ text: 'Repair'
212
+ }
213
+ ]
214
+ }
215
+ ]
216
+ },
217
+ ServiceType: {
218
+ fields: [
219
+ {
220
+ legend: {
221
+ text: 'What type of water do you have?'
222
+ },
223
+ options: [
224
+ {
225
+ attributes: {
226
+ name: 'ServiceType',
227
+ value: 'CITY_WATER',
228
+ data: {
229
+ required: 'nonempty'
230
+ }
231
+ },
232
+ text: 'City Water'
233
+ },
234
+ {
235
+ attributes: {
236
+ name: 'ServiceType',
237
+ value: 'WELL_WATER',
238
+ data: {
239
+ required: 'nonempty'
240
+ }
241
+ },
242
+ text: 'Well Water'
243
+ },
244
+ {
245
+ attributes: {
246
+ name: 'ServiceType',
247
+ value: 'UNSURE',
248
+ data: {
249
+ required: 'nonempty'
250
+ }
251
+ },
252
+ text: 'Unsure'
253
+ }
254
+ ]
255
+ }
256
+ ]
257
+ }
258
+ };
259
+
260
+ module.exports = plumbing;
@@ -0,0 +1,118 @@
1
+ const roofing = {
2
+ RoofingProjectScope: {
3
+ fields: [
4
+ {
5
+ legend: {
6
+ text: 'What type of roofing work do you need?'
7
+ },
8
+ options: [
9
+ {
10
+ attributes: {
11
+ name: 'RoofingProjectScope',
12
+ value: 'Replace',
13
+ checked: '',
14
+ data: {
15
+ required: 'nonempty'
16
+ }
17
+ },
18
+ text: 'Replace'
19
+ },
20
+ {
21
+ attributes: {
22
+ name: 'RoofingProjectScope',
23
+ value: 'Repair',
24
+ data: {
25
+ required: 'nonempty'
26
+ }
27
+ },
28
+ text: 'Repair'
29
+ },
30
+ {
31
+ attributes: {
32
+ name: 'RoofingProjectScope',
33
+ value: 'Install',
34
+ data: {
35
+ required: 'nonempty'
36
+ }
37
+ },
38
+ text: 'Not Sure'
39
+ }
40
+ ]
41
+ }
42
+ ]
43
+ },
44
+ ProductService: {
45
+ fields: [
46
+ {
47
+ legend: {
48
+ text: 'What type of roofing material are you looking for?'
49
+ },
50
+ options: [
51
+ {
52
+ attributes: {
53
+ name: 'ProductService',
54
+ value: 'ROOFING_ASPHALT',
55
+ checked: '',
56
+ data: {
57
+ required: 'nonempty'
58
+ }
59
+ },
60
+ text: 'Asphalt'
61
+ },
62
+ {
63
+ attributes: {
64
+ name: 'ProductService',
65
+ value: 'ROOFING_COMPOSITE',
66
+ data: {
67
+ required: 'nonempty'
68
+ }
69
+ },
70
+ text: 'Composite'
71
+ },
72
+ {
73
+ attributes: {
74
+ name: 'ProductService',
75
+ value: 'ROOFING_NATURAL_SLATE',
76
+ data: {
77
+ required: 'nonempty'
78
+ }
79
+ },
80
+ text: 'Natural Slate'
81
+ },
82
+ {
83
+ attributes: {
84
+ name: 'ProductService',
85
+ value: 'ROOFING_TILE',
86
+ data: {
87
+ required: 'nonempty'
88
+ }
89
+ },
90
+ text: 'Tile'
91
+ },
92
+ {
93
+ attributes: {
94
+ name: 'ProductService',
95
+ value: 'ROOFING_CEDAR_SHAKE',
96
+ data: {
97
+ required: 'nonempty'
98
+ }
99
+ },
100
+ text: 'Wood Shake'
101
+ },
102
+ {
103
+ attributes: {
104
+ name: 'ProductService',
105
+ value: 'ROOFING_METAL',
106
+ data: {
107
+ required: 'nonempty'
108
+ }
109
+ },
110
+ text: 'Metal'
111
+ }
112
+ ]
113
+ }
114
+ ]
115
+ }
116
+ };
117
+
118
+ module.exports = roofing;
@@ -0,0 +1,147 @@
1
+ const siding = {
2
+ ProjectPlan: {
3
+ fields: [
4
+ {
5
+ legend: {
6
+ text: 'What type of service do you need?'
7
+ },
8
+ options: [
9
+ {
10
+ text: 'Replace',
11
+ attributes: {
12
+ name: 'ProjectPlan',
13
+ value: 'Replace existing siding',
14
+ checked: '',
15
+ data: {
16
+ required: 'nonempty'
17
+ }
18
+ }
19
+ },
20
+ {
21
+ text: 'Repair',
22
+ attributes: {
23
+ name: 'ProjectPlan',
24
+ value: 'Repair section(s) of siding',
25
+ data: {
26
+ required: 'nonempty'
27
+ }
28
+ }
29
+ }
30
+ ]
31
+ }
32
+ ]
33
+ },
34
+ ProductService: {
35
+ fields: [
36
+ {
37
+ legend: {
38
+ text: 'What type of siding are you looking for?'
39
+ },
40
+ options: [
41
+ {
42
+ text: 'Vinyl',
43
+ attributes: {
44
+ name: 'ProductService',
45
+ value: 'SIDING_VINYL',
46
+ checked: '',
47
+ data: {
48
+ required: 'nonempty'
49
+ }
50
+ }
51
+ },
52
+ {
53
+ text: 'Fiber cement',
54
+ attributes: {
55
+ name: 'ProductService',
56
+ value: 'SIDING_COMPOSITE_WOOD',
57
+ data: {
58
+ required: 'nonempty'
59
+ }
60
+ }
61
+ },
62
+ {
63
+ text: 'Aluminum',
64
+ attributes: {
65
+ name: 'ProductService',
66
+ value: 'SIDING_ALUMINIUM',
67
+ data: {
68
+ required: 'nonempty'
69
+ }
70
+ }
71
+ },
72
+ {
73
+ text: 'Brickface',
74
+ attributes: {
75
+ name: 'ProductService',
76
+ value: 'SIDING_BRICKFACE',
77
+ data: {
78
+ required: 'nonempty'
79
+ }
80
+ }
81
+ },
82
+ {
83
+ text: 'Stoneface',
84
+ attributes: {
85
+ name: 'ProductService',
86
+ value: 'SIDING_STONEFACE',
87
+ data: {
88
+ required: 'nonempty'
89
+ }
90
+ }
91
+ },
92
+ {
93
+ text: 'Stucco',
94
+ attributes: {
95
+ name: 'ProductService',
96
+ value: 'STUCCO_EXTERIOR',
97
+ data: {
98
+ required: 'nonempty'
99
+ }
100
+ }
101
+ }
102
+ ]
103
+ }
104
+ ]
105
+ },
106
+ stories: {
107
+ fields: [
108
+ {
109
+ legend: {
110
+ text: 'How many stories is your home?'
111
+ },
112
+ options: [
113
+ {
114
+ attributes: {
115
+ value: 'One story',
116
+ checked: '',
117
+ data: {
118
+ required: 'nonempty'
119
+ }
120
+ },
121
+ text: 'One story'
122
+ },
123
+ {
124
+ attributes: {
125
+ value: 'Two story',
126
+ data: {
127
+ required: 'nonempty'
128
+ }
129
+ },
130
+ text: 'Two story'
131
+ },
132
+ {
133
+ attributes: {
134
+ value: 'Three stories or more',
135
+ data: {
136
+ required: 'nonempty'
137
+ }
138
+ },
139
+ text: 'Three stories or more'
140
+ }
141
+ ]
142
+ }
143
+ ]
144
+ }
145
+ };
146
+
147
+ module.exports = siding;
@@ -0,0 +1,69 @@
1
+ const solar = {
2
+ ElectricBill: {
3
+ fields: [
4
+ {
5
+ legend: {
6
+ text: 'What\'s your monthly electric bill?'
7
+ },
8
+ options: [
9
+ {
10
+ text: '$300+',
11
+ attributes: {
12
+ name: 'ElectricBill',
13
+ value: '$300+',
14
+ data: {
15
+ required: 'nonempty'
16
+ }
17
+ }
18
+ },
19
+ {
20
+ text: '$200 - $300',
21
+ attributes: {
22
+ name: 'ElectricBill',
23
+ value: '$200 - $300',
24
+ checked: '',
25
+ data: {
26
+ required: 'nonempty'
27
+ }
28
+ }
29
+ },
30
+ {
31
+ text: '$100 - $200',
32
+ attributes: {
33
+ name: 'ElectricBill',
34
+ value: '$100 - $200',
35
+ data: {
36
+ required: 'nonempty'
37
+ }
38
+ }
39
+ },
40
+ {
41
+ text: 'Under $100',
42
+ attributes: {
43
+ name: 'ElectricBill',
44
+ value: 'Under $100',
45
+ data: {
46
+ required: 'nonempty'
47
+ }
48
+ }
49
+ }
50
+ ]
51
+ }
52
+ ]
53
+ },
54
+ UtilityProvider: {
55
+ fields: [
56
+ {
57
+ fieldType: 'select',
58
+ errorMessage: 'Please select a provider.',
59
+ attributes: {
60
+ data: {
61
+ required: 'nonempty'
62
+ }
63
+ }
64
+ }
65
+ ]
66
+ }
67
+ };
68
+
69
+ module.exports = solar;