@pdtf/schemas 3.6.0-36 → 3.6.0-38

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 (39) hide show
  1. package/README.md +52 -33
  2. package/docs/sef25-extensions-ui-spec.md +258 -49
  3. package/index.js +9 -0
  4. package/package.json +1 -1
  5. package/src/schemas/v3/combined.json +271 -27
  6. package/src/schemas/v3/compactSkeleton.txt +16 -2
  7. package/src/schemas/v3/overlays/extensions/as.json +4 -2
  8. package/src/schemas/v3/overlays/extensions/dk.json +32 -0
  9. package/src/schemas/v3/overlays/extensions/dr.json +4 -2
  10. package/src/schemas/v3/overlays/extensions/er.json +4 -2
  11. package/src/schemas/v3/overlays/extensions/fd.json +6 -3
  12. package/src/schemas/v3/overlays/extensions/hi.json +6 -3
  13. package/src/schemas/v3/overlays/extensions/hs.json +4 -2
  14. package/src/schemas/v3/overlays/extensions/ic.json +59 -0
  15. package/src/schemas/v3/overlays/extensions/jk.json +4 -2
  16. package/src/schemas/v3/overlays/extensions/la.json +4 -2
  17. package/src/schemas/v3/overlays/extensions/lc.json +64 -0
  18. package/src/schemas/v3/overlays/extensions/ma.json +6 -3
  19. package/src/schemas/v3/overlays/extensions/mc.json +4 -2
  20. package/src/schemas/v3/overlays/extensions/mi.json +55 -0
  21. package/src/schemas/v3/overlays/extensions/nd.json +43 -0
  22. package/src/schemas/v3/overlays/extensions/oa.json +4 -2
  23. package/src/schemas/v3/overlays/extensions/oc.json +4 -2
  24. package/src/schemas/v3/overlays/extensions/pc.json +2 -1
  25. package/src/schemas/v3/overlays/extensions/ph.json +11 -14
  26. package/src/schemas/v3/overlays/extensions/rw.json +68 -0
  27. package/src/schemas/v3/overlays/extensions/sb.json +4 -2
  28. package/src/schemas/v3/overlays/extensions/sc.json +34 -10
  29. package/src/schemas/v3/overlays/extensions/sd.json +63 -0
  30. package/src/schemas/v3/overlays/extensions/sf.json +4 -2
  31. package/src/schemas/v3/overlays/extensions/sl.json +4 -2
  32. package/src/schemas/v3/overlays/extensions/tf.json +6 -3
  33. package/src/schemas/v3/overlays/extensions/tr.json +73 -0
  34. package/src/schemas/v3/overlays/extensions/wg.json +250 -0
  35. package/src/schemas/v3/overlays/sef25.json +717 -10
  36. package/src/schemas/v3/pdtf-transaction.json +232 -10
  37. package/src/schemas/v3/skeleton.json +24 -5
  38. package/src/tests/v3/extensionOverlays.test.js +411 -3
  39. package/src/utils/extractExtensionOverlays.js +116 -4
@@ -4,7 +4,69 @@
4
4
  "properties": {
5
5
  "propertyPack": {
6
6
  "properties": {
7
+ "ownership": {
8
+ "sef25Ref": "T1",
9
+ "properties": {
10
+ "ownershipsToBeTransferred": {
11
+ "items": {
12
+ "oneOf": [
13
+ {
14
+ "required": [
15
+ "titleRestrictions"
16
+ ],
17
+ "properties": {
18
+ "titleRestrictions": {
19
+ "sef25Ref": "T1.1",
20
+ "discriminator": {
21
+ "propertyName": "yesNo"
22
+ },
23
+ "oneOf": [
24
+ {
25
+ "properties": {
26
+ "yesNo": {
27
+ "enum": [
28
+ "No"
29
+ ]
30
+ }
31
+ }
32
+ },
33
+ {
34
+ "properties": {
35
+ "yesNo": {
36
+ "enum": [
37
+ "Yes"
38
+ ]
39
+ },
40
+ "details": {
41
+ "sef25Ref": "T1.1.2"
42
+ }
43
+ },
44
+ "required": [
45
+ "details"
46
+ ]
47
+ }
48
+ ],
49
+ "required": [
50
+ "yesNo"
51
+ ],
52
+ "properties": {
53
+ "yesNo": {
54
+ "sef25Ref": "T1.1.1"
55
+ }
56
+ }
57
+ }
58
+ }
59
+ }
60
+ ]
61
+ }
62
+ }
63
+ }
64
+ },
7
65
  "parking": {
66
+ "sef25Ref": "K1",
67
+ "required": [
68
+ "droppedKerbAccess"
69
+ ],
8
70
  "properties": {
9
71
  "controlledParking": {
10
72
  "oneOf": [
@@ -24,6 +86,48 @@
24
86
  }
25
87
  }
26
88
  ]
89
+ },
90
+ "droppedKerbAccess": {
91
+ "sef25Ref": "K1.1",
92
+ "required": [
93
+ "yesNo"
94
+ ],
95
+ "properties": {
96
+ "yesNo": {
97
+ "sef25Ref": "K1.1.1"
98
+ }
99
+ }
100
+ }
101
+ }
102
+ },
103
+ "notices": {
104
+ "sef25Ref": "N1",
105
+ "properties": {
106
+ "neighbourDevelopment": {
107
+ "sef25Ref": "N1.1",
108
+ "discriminator": {
109
+ "propertyName": "yesNo"
110
+ },
111
+ "oneOf": [
112
+ {
113
+ "properties": {
114
+ "yesNo": {
115
+ "enum": [
116
+ "No"
117
+ ]
118
+ }
119
+ }
120
+ },
121
+ {
122
+ "properties": {
123
+ "yesNo": {
124
+ "enum": [
125
+ "Yes"
126
+ ]
127
+ }
128
+ }
129
+ }
130
+ ]
27
131
  }
28
132
  }
29
133
  },
@@ -197,6 +301,93 @@
197
301
  }
198
302
  }
199
303
  },
304
+ "electricity": {
305
+ "sef25Ref": "S1",
306
+ "properties": {
307
+ "solarPanels": {
308
+ "sef25Ref": "S1",
309
+ "discriminator": {
310
+ "propertyName": "yesNo"
311
+ },
312
+ "oneOf": [
313
+ {
314
+ "properties": {
315
+ "yesNo": {
316
+ "enum": [
317
+ "No"
318
+ ]
319
+ }
320
+ }
321
+ },
322
+ {
323
+ "properties": {
324
+ "yesNo": {
325
+ "enum": [
326
+ "Yes"
327
+ ]
328
+ },
329
+ "panelsOwnedOutright": {
330
+ "sef25Ref": "S1.1",
331
+ "discriminator": {
332
+ "propertyName": "yesNo"
333
+ },
334
+ "oneOf": [
335
+ {
336
+ "properties": {
337
+ "yesNo": {
338
+ "enum": [
339
+ "Yes"
340
+ ]
341
+ }
342
+ }
343
+ },
344
+ {
345
+ "properties": {
346
+ "yesNo": {
347
+ "enum": [
348
+ "No"
349
+ ]
350
+ },
351
+ "associatedCost": {
352
+ "sef25Ref": "S1.1",
353
+ "required": [
354
+ "frequency"
355
+ ],
356
+ "properties": {
357
+ "frequency": {
358
+ "sef25Ref": "S1.1.2"
359
+ }
360
+ },
361
+ "oneOf": [
362
+ null,
363
+ {
364
+ "properties": {
365
+ "amount": {
366
+ "sef25Ref": "S1.1.1"
367
+ }
368
+ }
369
+ }
370
+ ]
371
+ }
372
+ }
373
+ }
374
+ ]
375
+ }
376
+ }
377
+ },
378
+ {
379
+ "properties": {
380
+ "yesNo": {
381
+ "enum": [
382
+ "To be connected"
383
+ ]
384
+ }
385
+ }
386
+ }
387
+ ]
388
+ }
389
+ }
390
+ },
200
391
  "waterAndDrainage": {
201
392
  "properties": {
202
393
  "water": {
@@ -211,17 +402,23 @@
211
402
  "associatedCost": {
212
403
  "sef25Ref": "U1.1",
213
404
  "required": [
214
- "amount",
215
405
  "frequency"
216
406
  ],
217
407
  "properties": {
218
- "amount": {
219
- "sef25Ref": "U1.1.1"
220
- },
221
408
  "frequency": {
222
409
  "sef25Ref": "U1.1.2"
223
410
  }
224
- }
411
+ },
412
+ "oneOf": [
413
+ null,
414
+ {
415
+ "properties": {
416
+ "amount": {
417
+ "sef25Ref": "U1.1.1"
418
+ }
419
+ }
420
+ }
421
+ ]
225
422
  }
226
423
  }
227
424
  }
@@ -243,17 +440,23 @@
243
440
  "associatedCost": {
244
441
  "sef25Ref": "U1.2",
245
442
  "required": [
246
- "amount",
247
443
  "frequency"
248
444
  ],
249
445
  "properties": {
250
- "amount": {
251
- "sef25Ref": "U1.2.1"
252
- },
253
446
  "frequency": {
254
447
  "sef25Ref": "U1.2.2"
255
448
  }
256
- }
449
+ },
450
+ "oneOf": [
451
+ null,
452
+ {
453
+ "properties": {
454
+ "amount": {
455
+ "sef25Ref": "U1.2.1"
456
+ }
457
+ }
458
+ }
459
+ ]
257
460
  }
258
461
  }
259
462
  }
@@ -262,6 +465,510 @@
262
465
  }
263
466
  }
264
467
  }
468
+ },
469
+ "insurance": {
470
+ "sef25Ref": "I1",
471
+ "discriminator": {
472
+ "propertyName": "isInsured"
473
+ },
474
+ "oneOf": [
475
+ {
476
+ "properties": {
477
+ "isInsured": {
478
+ "enum": [
479
+ "No"
480
+ ]
481
+ }
482
+ }
483
+ },
484
+ {
485
+ "properties": {
486
+ "isInsured": {
487
+ "enum": [
488
+ "Yes"
489
+ ]
490
+ },
491
+ "insuranceClaims": {
492
+ "sef25Ref": "I1.1",
493
+ "discriminator": {
494
+ "propertyName": "yesNo"
495
+ },
496
+ "oneOf": [
497
+ {
498
+ "properties": {
499
+ "yesNo": {
500
+ "enum": [
501
+ "No"
502
+ ]
503
+ }
504
+ }
505
+ },
506
+ {
507
+ "properties": {
508
+ "yesNo": {
509
+ "enum": [
510
+ "Yes"
511
+ ]
512
+ }
513
+ }
514
+ }
515
+ ],
516
+ "required": [
517
+ "yesNo"
518
+ ],
519
+ "properties": {
520
+ "yesNo": {
521
+ "sef25Ref": "I1.1.1"
522
+ }
523
+ }
524
+ }
525
+ },
526
+ "required": [
527
+ "insuranceClaims"
528
+ ]
529
+ }
530
+ ]
531
+ },
532
+ "rightsAndInformalArrangements": {
533
+ "sef25Ref": "R1",
534
+ "properties": {
535
+ "rightsOrArrangements": {
536
+ "sef25Ref": "R1",
537
+ "required": [
538
+ "privateRightOfWay"
539
+ ],
540
+ "properties": {
541
+ "privateRightOfWay": {
542
+ "sef25Ref": "R1.1",
543
+ "discriminator": {
544
+ "propertyName": "yesNo"
545
+ },
546
+ "oneOf": [
547
+ {
548
+ "properties": {
549
+ "yesNo": {
550
+ "enum": [
551
+ "No"
552
+ ]
553
+ }
554
+ }
555
+ },
556
+ {
557
+ "properties": {
558
+ "yesNo": {
559
+ "enum": [
560
+ "Yes"
561
+ ]
562
+ },
563
+ "details": {
564
+ "sef25Ref": "R1.1.2"
565
+ }
566
+ },
567
+ "required": [
568
+ "details"
569
+ ]
570
+ }
571
+ ],
572
+ "required": [
573
+ "yesNo"
574
+ ],
575
+ "properties": {
576
+ "yesNo": {
577
+ "sef25Ref": "R1.1.1"
578
+ }
579
+ }
580
+ }
581
+ }
582
+ }
583
+ }
584
+ },
585
+ "environmentalIssues": {
586
+ "sef25Ref": "E1",
587
+ "required": [
588
+ "stormFireFloodDamage"
589
+ ],
590
+ "properties": {
591
+ "flooding": {
592
+ "properties": {
593
+ "historicalFlooding": {
594
+ "properties": {
595
+ "hasBeenFlooded": {
596
+ "sef25Ref": "E1.2"
597
+ }
598
+ }
599
+ }
600
+ }
601
+ },
602
+ "stormFireFloodDamage": {
603
+ "sef25Ref": "E1.1",
604
+ "discriminator": {
605
+ "propertyName": "yesNo"
606
+ },
607
+ "oneOf": [
608
+ {
609
+ "properties": {
610
+ "yesNo": {
611
+ "enum": [
612
+ "No"
613
+ ]
614
+ }
615
+ }
616
+ },
617
+ {
618
+ "properties": {
619
+ "yesNo": {
620
+ "enum": [
621
+ "Yes"
622
+ ]
623
+ },
624
+ "details": {
625
+ "sef25Ref": "E1.1.2"
626
+ }
627
+ },
628
+ "required": [
629
+ "details"
630
+ ]
631
+ }
632
+ ],
633
+ "required": [
634
+ "yesNo"
635
+ ],
636
+ "properties": {
637
+ "yesNo": {
638
+ "sef25Ref": "E1.1.1"
639
+ }
640
+ }
641
+ }
642
+ }
643
+ },
644
+ "additionalInformation": {
645
+ "sef25Ref": "M1",
646
+ "required": [
647
+ "otherMaterialIssue"
648
+ ],
649
+ "properties": {
650
+ "otherMaterialIssue": {
651
+ "sef25Ref": "M1.1",
652
+ "discriminator": {
653
+ "propertyName": "yesNo"
654
+ },
655
+ "oneOf": [
656
+ {
657
+ "properties": {
658
+ "yesNo": {
659
+ "enum": [
660
+ "No"
661
+ ]
662
+ }
663
+ }
664
+ },
665
+ {
666
+ "properties": {
667
+ "yesNo": {
668
+ "enum": [
669
+ "Yes"
670
+ ]
671
+ },
672
+ "details": {
673
+ "sef25Ref": "M1.1.2"
674
+ }
675
+ },
676
+ "required": [
677
+ "details"
678
+ ]
679
+ }
680
+ ],
681
+ "required": [
682
+ "yesNo"
683
+ ],
684
+ "properties": {
685
+ "yesNo": {
686
+ "sef25Ref": "M1.1.1"
687
+ }
688
+ }
689
+ }
690
+ }
691
+ },
692
+ "guaranteesWarrantiesAndIndemnityInsurances": {
693
+ "sef25Ref": "W1",
694
+ "discriminator": {
695
+ "propertyName": "hasValidGuaranteesOrWarranties"
696
+ },
697
+ "oneOf": [
698
+ {
699
+ "properties": {
700
+ "hasValidGuaranteesOrWarranties": {
701
+ "enum": [
702
+ "No"
703
+ ]
704
+ }
705
+ }
706
+ },
707
+ {
708
+ "properties": {
709
+ "hasValidGuaranteesOrWarranties": {
710
+ "enum": [
711
+ "Yes"
712
+ ]
713
+ },
714
+ "newHomeWarranty": {
715
+ "sef25Ref": "W1.1",
716
+ "discriminator": {
717
+ "propertyName": "yesNo"
718
+ },
719
+ "oneOf": [
720
+ {
721
+ "properties": {
722
+ "yesNo": {
723
+ "enum": [
724
+ "No"
725
+ ]
726
+ }
727
+ }
728
+ },
729
+ {
730
+ "properties": {
731
+ "yesNo": {
732
+ "enum": [
733
+ "Yes"
734
+ ]
735
+ }
736
+ }
737
+ }
738
+ ],
739
+ "required": [
740
+ "yesNo"
741
+ ],
742
+ "properties": {
743
+ "yesNo": {
744
+ "sef25Ref": "W1.1.1"
745
+ }
746
+ }
747
+ },
748
+ "roofingWork": {
749
+ "sef25Ref": "W1.2",
750
+ "discriminator": {
751
+ "propertyName": "yesNo"
752
+ },
753
+ "oneOf": [
754
+ {
755
+ "properties": {
756
+ "yesNo": {
757
+ "enum": [
758
+ "No"
759
+ ]
760
+ }
761
+ }
762
+ },
763
+ {
764
+ "properties": {
765
+ "yesNo": {
766
+ "enum": [
767
+ "Yes"
768
+ ]
769
+ }
770
+ }
771
+ }
772
+ ],
773
+ "required": [
774
+ "yesNo"
775
+ ],
776
+ "properties": {
777
+ "yesNo": {
778
+ "sef25Ref": "W1.2.1"
779
+ }
780
+ }
781
+ },
782
+ "dampProofingTreatment": {
783
+ "sef25Ref": "W1.3",
784
+ "discriminator": {
785
+ "propertyName": "yesNo"
786
+ },
787
+ "oneOf": [
788
+ {
789
+ "properties": {
790
+ "yesNo": {
791
+ "enum": [
792
+ "No"
793
+ ]
794
+ }
795
+ }
796
+ },
797
+ {
798
+ "properties": {
799
+ "yesNo": {
800
+ "enum": [
801
+ "Yes"
802
+ ]
803
+ }
804
+ }
805
+ }
806
+ ],
807
+ "required": [
808
+ "yesNo"
809
+ ],
810
+ "properties": {
811
+ "yesNo": {
812
+ "sef25Ref": "W1.3.1"
813
+ }
814
+ }
815
+ },
816
+ "centralHeatingAndorPlumbing": {
817
+ "sef25Ref": "W1.4",
818
+ "discriminator": {
819
+ "propertyName": "yesNo"
820
+ },
821
+ "oneOf": [
822
+ {
823
+ "properties": {
824
+ "yesNo": {
825
+ "enum": [
826
+ "No"
827
+ ]
828
+ }
829
+ }
830
+ },
831
+ {
832
+ "properties": {
833
+ "yesNo": {
834
+ "enum": [
835
+ "Yes"
836
+ ]
837
+ }
838
+ }
839
+ }
840
+ ],
841
+ "required": [
842
+ "yesNo"
843
+ ],
844
+ "properties": {
845
+ "yesNo": {
846
+ "sef25Ref": "W1.4.1"
847
+ }
848
+ }
849
+ },
850
+ "electricalRepairOrInstallation": {
851
+ "sef25Ref": "W1.5",
852
+ "discriminator": {
853
+ "propertyName": "yesNo"
854
+ },
855
+ "oneOf": [
856
+ {
857
+ "properties": {
858
+ "yesNo": {
859
+ "enum": [
860
+ "No"
861
+ ]
862
+ }
863
+ }
864
+ },
865
+ {
866
+ "properties": {
867
+ "yesNo": {
868
+ "enum": [
869
+ "Yes"
870
+ ]
871
+ }
872
+ }
873
+ }
874
+ ],
875
+ "required": [
876
+ "yesNo"
877
+ ],
878
+ "properties": {
879
+ "yesNo": {
880
+ "sef25Ref": "W1.5.1"
881
+ }
882
+ }
883
+ },
884
+ "subsidenceWork": {
885
+ "sef25Ref": "W1.6",
886
+ "discriminator": {
887
+ "propertyName": "yesNo"
888
+ },
889
+ "oneOf": [
890
+ {
891
+ "properties": {
892
+ "yesNo": {
893
+ "enum": [
894
+ "No"
895
+ ]
896
+ }
897
+ }
898
+ },
899
+ {
900
+ "properties": {
901
+ "yesNo": {
902
+ "enum": [
903
+ "Yes"
904
+ ]
905
+ }
906
+ }
907
+ }
908
+ ],
909
+ "required": [
910
+ "yesNo"
911
+ ],
912
+ "properties": {
913
+ "yesNo": {
914
+ "sef25Ref": "W1.6.1"
915
+ }
916
+ }
917
+ },
918
+ "otherGuarantees": {
919
+ "sef25Ref": "W1.7",
920
+ "discriminator": {
921
+ "propertyName": "yesNo"
922
+ },
923
+ "oneOf": [
924
+ {
925
+ "properties": {
926
+ "yesNo": {
927
+ "enum": [
928
+ "No"
929
+ ]
930
+ }
931
+ }
932
+ },
933
+ {
934
+ "properties": {
935
+ "yesNo": {
936
+ "enum": [
937
+ "Yes"
938
+ ]
939
+ }
940
+ }
941
+ }
942
+ ],
943
+ "required": [
944
+ "yesNo"
945
+ ],
946
+ "properties": {
947
+ "yesNo": {
948
+ "sef25Ref": "W1.7.1"
949
+ }
950
+ }
951
+ }
952
+ },
953
+ "required": [
954
+ "newHomeWarranty",
955
+ "roofingWork",
956
+ "dampProofingTreatment",
957
+ "centralHeatingAndorPlumbing",
958
+ "electricalRepairOrInstallation",
959
+ "subsidenceWork",
960
+ "otherGuarantees"
961
+ ]
962
+ }
963
+ ],
964
+ "required": [
965
+ "hasValidGuaranteesOrWarranties"
966
+ ],
967
+ "properties": {
968
+ "hasValidGuaranteesOrWarranties": {
969
+ "sef25Ref": "W1.0"
970
+ }
971
+ }
265
972
  }
266
973
  }
267
974
  }