@dynamatix/gb-schemas 2.3.253 → 2.3.254

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.
@@ -3,291 +3,291 @@ import { applyWorkflowPlugin } from "../shared/workflow.plugin";
3
3
  const propertyTypeSchema = new mongoose.Schema({
4
4
  detachedHouse: {
5
5
  type: String,
6
- default: ""
6
+ default: null
7
7
  },
8
8
  semiDetachedHouse: {
9
9
  type: String,
10
- default: ""
10
+ default: null
11
11
  },
12
12
  terracedHouse: {
13
13
  type: String,
14
- default: ""
14
+ default: null
15
15
  },
16
16
  bungalow: {
17
17
  type: String,
18
- default: ""
18
+ default: null
19
19
  },
20
20
  flat: {
21
21
  type: String,
22
- default: ""
22
+ default: null
23
23
  },
24
24
  maisonette: {
25
25
  type: String,
26
- default: ""
26
+ default: null
27
27
  },
28
28
  flatMaisonetteFloor: {
29
- type: String,
30
- default: ""
29
+ type: Number,
30
+ default: null
31
31
  },
32
32
  numberOfFloorsInBlock: {
33
- type: String,
34
- default: ""
33
+ type: Number,
34
+ default: null
35
35
  },
36
- builtOrOwnedByLocalAuthority: {
37
- type: String,
38
- default: ""
36
+ isBuiltOrOwnedByLocalAuthority: {
37
+ type: Boolean,
38
+ default: false
39
39
  },
40
40
  ownerOccupationPercentage: {
41
41
  type: String,
42
- default: ""
42
+ default: null
43
43
  },
44
- isFlatMaisonetteConverted: {
44
+ flatMaisonetteConverted: {
45
45
  type: String,
46
- default: ""
46
+ default: null
47
47
  },
48
48
  conversionYear: {
49
49
  type: String,
50
- default: ""
50
+ default: null
51
51
  },
52
- isPurposeBuilt: {
52
+ purposeBuilt: {
53
53
  type: String,
54
- default: ""
54
+ default: null
55
55
  },
56
56
  numberOfUnitsInBlock: {
57
- type: String,
58
- default: ""
57
+ type: Number,
58
+ default: null
59
59
  },
60
- aboveCommercial: {
61
- type: String,
62
- default: ""
60
+ isAboveCommercial: {
61
+ type: Boolean,
62
+ default: false
63
63
  },
64
64
  residentialNatureImpact: {
65
65
  type: String,
66
- default: ""
66
+ default: null
67
67
  },
68
68
  tenure: {
69
69
  type: String,
70
- default: ""
70
+ default: null
71
71
  },
72
- flyingFreehold: {
73
- type: String,
74
- default: ""
72
+ isFlyingFreehold: {
73
+ type: Boolean,
74
+ default: false
75
75
  },
76
76
  flyingFreeholdPercentage: {
77
- type: String,
78
- default: ""
77
+ type: Number,
78
+ default: null
79
79
  },
80
80
  maintenanceCharge: {
81
- type: String,
82
- default: ""
81
+ type: Number,
82
+ default: null
83
83
  },
84
84
  roadCharges: {
85
- type: String,
86
- default: ""
85
+ type: Number,
86
+ default: null
87
87
  },
88
88
  groundRent: {
89
- type: String,
90
- default: ""
89
+ type: Number,
90
+ default: null
91
91
  },
92
92
  remainingLeaseTermYears: {
93
- type: String,
94
- default: ""
93
+ type: Number,
94
+ default: null
95
95
  },
96
- partCommercialUse: {
97
- type: String,
98
- default: ""
96
+ isPartCommercialUse: {
97
+ type: Boolean,
98
+ default: false
99
99
  },
100
100
  commercialUsePercentage: {
101
- type: String,
102
- default: ""
101
+ type: Number,
102
+ default: null
103
103
  },
104
- purchasedUnderSharedOwnership: {
105
- type: String,
106
- default: ""
104
+ isPurchasedUnderSharedOwnership: {
105
+ type: Boolean,
106
+ default: false
107
107
  },
108
108
  yearBuilt: {
109
- type: String,
110
- default: ""
109
+ type: Number,
110
+ default: null
111
111
  }
112
112
  });
113
113
  const accommodationSchema = new mongoose.Schema({
114
114
  hall: {
115
- type: String,
116
- default: ""
115
+ type: Number,
116
+ default: null
117
117
  },
118
118
  livingRooms: {
119
- type: String,
120
- default: ""
119
+ type: Number,
120
+ default: null
121
121
  },
122
122
  kitchen: {
123
- type: String,
124
- default: ""
123
+ type: Number,
124
+ default: null
125
125
  },
126
- lift: {
127
- type: String,
128
- default: ""
126
+ isLiftPresent: {
127
+ type: Boolean,
128
+ default: false
129
129
  },
130
130
  utility: {
131
- type: String,
132
- default: ""
131
+ type: Number,
132
+ default: null
133
133
  },
134
134
  bedrooms: {
135
- type: String,
136
- default: ""
135
+ type: Number,
136
+ default: null
137
137
  },
138
138
  bathrooms: {
139
- type: String,
140
- default: ""
139
+ type: Number,
140
+ default: null
141
141
  },
142
142
  separateWc: {
143
- type: String,
144
- default: ""
143
+ type: Number,
144
+ default: null
145
145
  },
146
146
  basement: {
147
- type: String,
148
- default: ""
147
+ type: Number,
148
+ default: null
149
149
  },
150
150
  garage: {
151
- type: String,
152
- default: ""
151
+ type: Number,
152
+ default: null
153
153
  },
154
154
  parking: {
155
- type: String,
156
- default: ""
155
+ type: Number,
156
+ default: null
157
157
  },
158
158
  gardens: {
159
- type: String,
160
- default: ""
159
+ type: Boolean,
160
+ default: false
161
161
  },
162
162
  privateOrCommunal: {
163
163
  type: String,
164
- default: ""
164
+ default: null
165
165
  },
166
166
  numberOfOutbuildings: {
167
- type: String,
168
- default: ""
167
+ type: Number,
168
+ default: null
169
169
  },
170
170
  outbuildingDetails: {
171
171
  type: String,
172
- default: ""
172
+ default: null
173
173
  },
174
174
  grossFloorAreaOfDwelling: {
175
- type: String,
176
- default: ""
175
+ type: Number,
176
+ default: null
177
177
  }
178
178
  });
179
179
  const newBuildSchema = new mongoose.Schema({
180
180
  isNewBuildOrRecentlyConverted: {
181
- type: String,
182
- default: ""
181
+ type: Boolean,
182
+ default: false
183
183
  },
184
184
  newBuildStatus: {
185
185
  type: String,
186
- default: ""
186
+ default: null
187
187
  },
188
188
  isFinalInspectionRequired: {
189
- type: String,
190
- default: ""
189
+ type: Boolean,
190
+ default: false
191
191
  },
192
- hasNhbcCert: {
192
+ nhbcCert: {
193
193
  type: String,
194
- default: ""
194
+ default: null
195
195
  },
196
- hasBuildZone: {
196
+ buildZone: {
197
197
  type: String,
198
- default: ""
198
+ default: null
199
199
  },
200
- hasPremier: {
200
+ premier: {
201
201
  type: String,
202
- default: ""
202
+ default: null
203
203
  },
204
- hasProfessionalConsultant: {
204
+ professionalConsultant: {
205
205
  type: String,
206
- default: ""
206
+ default: null
207
207
  },
208
208
  otherCertDetails: {
209
209
  type: String,
210
- default: ""
210
+ default: null
211
211
  },
212
212
  isSelfBuildProject: {
213
- type: String,
214
- default: ""
213
+ type: Boolean,
214
+ default: false
215
215
  },
216
- involvesPartExchange: {
217
- type: String,
218
- default: ""
216
+ isInvolvesPartExchange: {
217
+ type: Boolean,
218
+ default: false
219
219
  },
220
- disclosureOfIncentivesSeen: {
221
- type: String,
222
- default: ""
220
+ isDisclosureOfIncentivesSeen: {
221
+ type: Boolean,
222
+ default: false
223
223
  },
224
224
  incentivesDetails: {
225
225
  type: String,
226
- default: ""
226
+ default: null
227
227
  },
228
228
  newBuildDeveloperName: {
229
229
  type: String,
230
- default: ""
230
+ default: null
231
231
  }
232
232
  });
233
233
  const currentOccupencySchema = new mongoose.Schema({
234
- everOccupied: {
235
- type: String,
236
- default: ""
234
+ isEverOccupied: {
235
+ type: Boolean,
236
+ default: false
237
237
  },
238
238
  numberOfAdultsInProperty: {
239
- type: String,
240
- default: ""
239
+ type: Number,
240
+ default: null
241
241
  },
242
242
  isHmoOrMultiUnitFreeholdBlock: {
243
- type: String,
244
- default: ""
243
+ type: Boolean,
244
+ default: false
245
245
  },
246
246
  isCurrentlyTenanted: {
247
- type: String,
248
- default: ""
247
+ type: Boolean,
248
+ default: false
249
249
  },
250
250
  hmoOrMultiUnitDetails: {
251
251
  type: String,
252
- default: ""
252
+ default: null
253
253
  },
254
254
  });
255
255
  const constructionSchema = new mongoose.Schema({
256
256
  isStandardConstruction: {
257
- type: String,
258
- default: ""
257
+ type: Boolean,
258
+ default: false
259
259
  },
260
260
  nonStandardConstructionType: {
261
261
  type: String,
262
- default: ""
262
+ default: null
263
263
  },
264
264
  mainWalls: {
265
265
  type: String,
266
- default: ""
266
+ default: null
267
267
  },
268
268
  mainRoof: {
269
269
  type: String,
270
- default: ""
270
+ default: null
271
271
  },
272
272
  garageConstruction: {
273
273
  type: String,
274
- default: ""
274
+ default: null
275
275
  },
276
276
  outbuildingsConstruction: {
277
277
  type: String,
278
- default: ""
278
+ default: null
279
279
  },
280
- hasAlterationsOrExtensions: {
281
- type: String,
282
- default: ""
280
+ isHasAlterationsOrExtensions: {
281
+ type: Boolean,
282
+ default: false
283
283
  },
284
- alterationsRequireConsents: {
285
- type: String,
286
- default: ""
284
+ isAlterationsRequireConsents: {
285
+ type: Boolean,
286
+ default: false
287
287
  },
288
288
  alterationsAge: {
289
- type: String,
290
- default: ""
289
+ type: Number,
290
+ default: null
291
291
  }
292
292
  });
293
293
  const localityAndDemandSchema = new mongoose.Schema({
@@ -311,37 +311,37 @@ const localityAndDemandSchema = new mongoose.Schema({
311
311
  type: String,
312
312
  default: ""
313
313
  },
314
- affectedByCompulsoryPurchase: {
315
- type: String,
316
- default: ""
314
+ isAffectedByCompulsoryPurchase: {
315
+ type: Boolean,
316
+ default: false
317
317
  },
318
318
  compulsoryPurchaseDetails: {
319
319
  type: String,
320
- default: ""
320
+ default: null
321
321
  },
322
- vacantOrBoardedPropertiesNearby: {
323
- type: String,
324
- default: ""
322
+ isVacantOrBoardedPropertiesNearby: {
323
+ type: Boolean,
324
+ default: false
325
325
  },
326
326
  vacantOrBoardedDetails: {
327
327
  type: String,
328
- default: ""
328
+ default: null
329
329
  },
330
- occupancyRestrictionPossible: {
331
- type: String,
332
- default: ""
330
+ isOccupancyRestrictionPossible: {
331
+ type: Boolean,
332
+ default: false
333
333
  },
334
334
  occupancyRestrictionDetails: {
335
335
  type: String,
336
- default: ""
336
+ default: null
337
337
  },
338
- closeToHighVoltageEquipment: {
339
- type: String,
340
- default: ""
338
+ isCloseToHighVoltageEquipment: {
339
+ type: Boolean,
340
+ default: false
341
341
  },
342
342
  highVoltageEquipmentDetails: {
343
343
  type: String,
344
- default: ""
344
+ default: null
345
345
  }
346
346
  });
347
347
  const servicesSchema = new mongoose.Schema({
@@ -389,13 +389,13 @@ const servicesSchema = new mongoose.Schema({
389
389
  type: String,
390
390
  default: ""
391
391
  },
392
- hasEasementsOrRightsOfWay: {
393
- type: String,
394
- default: ""
392
+ isHasEasementsOrRightsOfWay: {
393
+ type: Boolean,
394
+ default: false
395
395
  },
396
396
  easementsOrRightsDetails: {
397
397
  type: String,
398
- default: ""
398
+ default: null
399
399
  },
400
400
  servicesSeparateForFlats: {
401
401
  type: String,
@@ -409,25 +409,25 @@ const servicesSchema = new mongoose.Schema({
409
409
  const energyEfficiencySchema = new mongoose.Schema({
410
410
  epcRating: {
411
411
  type: String,
412
- default: ""
412
+ default: null
413
413
  },
414
414
  epcScore: {
415
- type: String,
416
- default: ""
415
+ type: Number,
416
+ default: null
417
417
  }
418
418
  });
419
419
  const essentialRepairsSchema = new mongoose.Schema({
420
- essentialRepairsRequired: {
421
- type: String,
422
- default: ""
420
+ isEssentialRepairsRequired: {
421
+ type: Boolean,
422
+ default: false
423
423
  },
424
424
  essentialRepairsDetails: {
425
425
  type: String,
426
- default: ""
426
+ default: null
427
427
  },
428
- reinspectionRequired: {
429
- type: String,
430
- default: ""
428
+ isReinspectionRequired: {
429
+ type: Boolean,
430
+ default: false
431
431
  }
432
432
  });
433
433
  const reportsSchema = new mongoose.Schema({
@@ -507,122 +507,122 @@ const propertyProneToSchema = new mongoose.Schema({
507
507
  }
508
508
  });
509
509
  const conditionsOfPropertySchema = new mongoose.Schema({
510
- structuralMovement: {
511
- type: String,
512
- default: ""
510
+ isStructuralMovement: {
511
+ type: Boolean,
512
+ default: false
513
513
  },
514
- structuralMovementHistoricOrNonProgressive: {
515
- type: String,
516
- default: ""
514
+ isStructuralMovementHistoricOrNonProgressive: {
515
+ type: Boolean,
516
+ default: false
517
517
  },
518
518
  structuralMovementDetails: {
519
519
  type: String,
520
520
  default: ""
521
521
  },
522
- structuralModifications: {
523
- type: String,
524
- default: ""
522
+ isStructuralModifications: {
523
+ type: Boolean,
524
+ default: false
525
525
  },
526
526
  structuralModificationsDetails: {
527
527
  type: String,
528
- default: ""
528
+ default: null
529
529
  },
530
530
  communalAreasMaintained: {
531
531
  type: String,
532
532
  default: ""
533
533
  },
534
534
  propertyProneTo: [propertyProneToSchema],
535
- plotBoundariesDefinedUnderPointFourHectares: {
536
- type: String,
537
- default: ""
535
+ isPlotBoundariesDefinedUnderPointFourHectares: {
536
+ type: Boolean,
537
+ default: false
538
538
  },
539
- treesWithinInfluencingDistance: {
540
- type: String,
541
- default: ""
539
+ isTreesWithinInfluencingDistance: {
540
+ type: Boolean,
541
+ default: false
542
542
  },
543
543
  treesInfluenceDetails: {
544
544
  type: String,
545
- default: ""
545
+ default: null
546
546
  },
547
- builtOnSteepSlope: {
548
- type: String,
549
- default: ""
547
+ isBuiltOnSteepSlope: {
548
+ type: Boolean,
549
+ default: false
550
550
  },
551
551
  steepSlopeDetails: {
552
552
  type: String,
553
- default: ""
553
+ default: null
554
554
  }
555
555
  });
556
556
  const rentalInformationSchema = new mongoose.Schema({
557
- rentalDemandInLocality: {
558
- type: String,
559
- default: ""
557
+ isRentalDemandInLocality: {
558
+ type: Boolean,
559
+ default: false
560
560
  },
561
561
  rentalDemandDetails: {
562
562
  type: String,
563
- default: ""
563
+ default: null
564
564
  },
565
565
  monthlyMarketRentPresentCondition: {
566
- type: String,
567
- default: ""
566
+ type: Number,
567
+ default: null
568
568
  },
569
569
  monthlyMarketRentImprovedCondition: {
570
- type: String,
571
- default: ""
570
+ type: Number,
571
+ default: null
572
572
  },
573
- otherLettingDemandFactors: {
574
- type: String,
575
- default: ""
573
+ isOtherLettingDemandFactors: {
574
+ type: Boolean,
575
+ default: false
576
576
  },
577
577
  otherLettingDemandDetails: {
578
578
  type: String,
579
- default: ""
579
+ default: null
580
580
  },
581
- investorOnlyDemand: {
582
- type: String,
583
- default: ""
581
+ isInvestorOnlyDemand: {
582
+ type: Boolean,
583
+ default: false
584
584
  },
585
585
  investorOnlyDemandDetails: {
586
586
  type: String,
587
- default: ""
587
+ default: null
588
588
  }
589
589
  });
590
590
  const valuationForFinancePurposeSchema = new mongoose.Schema({
591
591
  valuationComparativeOnly: {
592
592
  type: String,
593
- default: ""
593
+ default: null
594
594
  },
595
- suitableForFinance: {
596
- type: String,
597
- default: ""
595
+ isSuitableForFinance: {
596
+ type: Boolean,
597
+ default: false
598
598
  },
599
599
  financeSuitabilityDetails: {
600
600
  type: String,
601
601
  default: ""
602
602
  },
603
603
  marketValuePresentCondition: {
604
- type: String,
605
- default: ""
604
+ type: Number,
605
+ default: null
606
606
  },
607
607
  marketValueAfterRepairs: {
608
- type: String,
609
- default: ""
608
+ type: Number,
609
+ default: null
610
610
  },
611
611
  purchasePriceOrBorrowerEstimate: {
612
- type: String,
613
- default: ""
612
+ type: Number,
613
+ default: null
614
614
  },
615
615
  buildingInsuranceReinstatementCost: {
616
- type: String,
617
- default: ""
616
+ type: Number,
617
+ default: null
618
618
  },
619
- insurancePremiumLoadingRisk: {
620
- type: String,
621
- default: ""
619
+ isInsurancePremiumLoadingRisk: {
620
+ type: Boolean,
621
+ default: false
622
622
  },
623
623
  insurancePremiumLoadingDetails: {
624
624
  type: String,
625
- default: ""
625
+ default: null
626
626
  }
627
627
  });
628
628
  const valuerQualificationsSchema = new mongoose.Schema({
@@ -641,8 +641,8 @@ const valuerQualificationsSchema = new mongoose.Schema({
641
641
  });
642
642
  const valuersDeclarationSchema = new mongoose.Schema({
643
643
  valuerSignature: {
644
- type: String,
645
- default: ""
644
+ type: Number,
645
+ default: null
646
646
  },
647
647
  valuerName: {
648
648
  type: String,
@@ -653,12 +653,12 @@ const valuersDeclarationSchema = new mongoose.Schema({
653
653
  default: ""
654
654
  },
655
655
  telephone: {
656
- type: String,
657
- default: ""
656
+ type: Number,
657
+ default: null
658
658
  },
659
659
  fax: {
660
- type: String,
661
- default: ""
660
+ type: Number,
661
+ default: null
662
662
  },
663
663
  email: {
664
664
  type: String,
@@ -666,8 +666,8 @@ const valuersDeclarationSchema = new mongoose.Schema({
666
666
  },
667
667
  valuerQualifications: [valuerQualificationsSchema],
668
668
  ricsNumber: {
669
- type: String,
670
- default: ""
669
+ type: Number,
670
+ default: null
671
671
  },
672
672
  valuerAddress: {
673
673
  type: String,