@planning-inspectorate/data-model 2.23.0 → 2.24.0

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 (36) hide show
  1. package/docs/appeal-has.md +29 -0
  2. package/docs/appeal-s78.md +60 -0
  3. package/package.json +1 -1
  4. package/pins_data_model/models/model_appeal_document.py +1 -1
  5. package/pins_data_model/models/model_appeal_event.py +1 -1
  6. package/pins_data_model/models/model_appeal_event_estimate.py +1 -1
  7. package/pins_data_model/models/model_appeal_has.py +14 -1
  8. package/pins_data_model/models/model_appeal_representation.py +1 -1
  9. package/pins_data_model/models/model_appeal_s78.py +26 -1
  10. package/pins_data_model/models/model_dart_response.py +1 -1
  11. package/pins_data_model/models/model_entraid.py +1 -1
  12. package/pins_data_model/models/model_folder.py +1 -1
  13. package/pins_data_model/models/model_gettimesheets_response.py +1 -1
  14. package/pins_data_model/models/model_listed_building.py +1 -1
  15. package/pins_data_model/models/model_listed_buildings.py +1 -1
  16. package/pins_data_model/models/model_nsip_document.py +1 -1
  17. package/pins_data_model/models/model_nsip_exam_timetable.py +1 -1
  18. package/pins_data_model/models/model_nsip_invoice.py +1 -1
  19. package/pins_data_model/models/model_nsip_meeting.py +1 -1
  20. package/pins_data_model/models/model_nsip_project.py +1 -1
  21. package/pins_data_model/models/model_nsip_project_update.py +1 -1
  22. package/pins_data_model/models/model_nsip_representation.py +1 -1
  23. package/pins_data_model/models/model_nsip_subscription.py +1 -1
  24. package/pins_data_model/models/model_pins_inspector.py +1 -1
  25. package/pins_data_model/models/model_pins_lpa.py +1 -1
  26. package/pins_data_model/models/model_s51_advice.py +1 -1
  27. package/pins_data_model/models/model_service_user.py +1 -1
  28. package/schemas/appeal-has.schema.json +7 -1
  29. package/schemas/appeal-s78.schema.json +14 -1
  30. package/src/enums.cjs +1 -0
  31. package/src/enums.d.ts +1 -0
  32. package/src/enums.js +1 -0
  33. package/src/index.cjs +1 -0
  34. package/src/schemas.d.ts +14 -2
  35. package/tests/appeals/appeal-has.test.js +1 -0
  36. package/tests/appeals/appeal-s78.test.js +2 -0
@@ -57,6 +57,7 @@ any of
57
57
  | [applicationDate](#applicationdate) | `string` | Required | cannot be null | [Appeal HAS Case](appeal-has-properties-applicationdate.md "appeal-has.schema.json#/properties/applicationDate") |
58
58
  | [applicationDecision](#applicationdecision) | `string` | Required | cannot be null | [Appeal HAS Case](appeal-has-properties-applicationdecision.md "appeal-has.schema.json#/properties/applicationDecision") |
59
59
  | [applicationDecisionDate](#applicationdecisiondate) | `string` | Required | can be null | [Appeal HAS Case](appeal-has-properties-applicationdecisiondate.md "appeal-has.schema.json#/properties/applicationDecisionDate") |
60
+ | [applicationDecisionDueDate](#applicationdecisionduedate) | `string` | Optional | can be null | [Appeal HAS Case](appeal-has-properties-applicationdecisionduedate.md "appeal-has.schema.json#/properties/applicationDecisionDueDate") |
60
61
  | [caseSubmissionDueDate](#casesubmissionduedate) | `string` | Required | can be null | [Appeal HAS Case](appeal-has-properties-casesubmissionduedate.md "appeal-has.schema.json#/properties/caseSubmissionDueDate") |
61
62
  | [siteAddressLine1](#siteaddressline1) | `string` | Optional | can be null | [Appeal HAS Case](appeal-has-properties-siteaddressline1.md "appeal-has.schema.json#/properties/siteAddressLine1") |
62
63
  | [siteAddressLine2](#siteaddressline2) | `string` | Optional | can be null | [Appeal HAS Case](appeal-has-properties-siteaddressline2.md "appeal-has.schema.json#/properties/siteAddressLine2") |
@@ -1345,6 +1346,34 @@ The date of the original LPA decision
1345
1346
  "2023-07-27T20:30:00.000Z"
1346
1347
  ```
1347
1348
 
1349
+ ## applicationDecisionDueDate
1350
+
1351
+ The date that an application decision is due
1352
+
1353
+ `applicationDecisionDueDate`
1354
+
1355
+ * is optional
1356
+
1357
+ * Type: `string`
1358
+
1359
+ * can be null
1360
+
1361
+ * defined in: [Appeal HAS Case](appeal-has-properties-applicationdecisionduedate.md "appeal-has.schema.json#/properties/applicationDecisionDueDate")
1362
+
1363
+ ### applicationDecisionDueDate Type
1364
+
1365
+ `string`
1366
+
1367
+ ### applicationDecisionDueDate Constraints
1368
+
1369
+ **date time**: the string must be a date time string, according to [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339 "check the specification")
1370
+
1371
+ ### applicationDecisionDueDate Examples
1372
+
1373
+ ```json
1374
+ "2023-07-27T20:30:00.000Z"
1375
+ ```
1376
+
1348
1377
  ## caseSubmissionDueDate
1349
1378
 
1350
1379
  The statutory deadline for submitting an appeal from the original LPA decision date
@@ -57,6 +57,7 @@ any of
57
57
  | [applicationDate](#applicationdate) | `string` | Required | can be null | [Appeal S78 Case](appeal-s78-properties-applicationdate.md "appeal-s78.schema.json#/properties/applicationDate") |
58
58
  | [applicationDecision](#applicationdecision) | `string` | Required | can be null | [Appeal S78 Case](appeal-s78-properties-applicationdecision.md "appeal-s78.schema.json#/properties/applicationDecision") |
59
59
  | [applicationDecisionDate](#applicationdecisiondate) | `string` | Required | can be null | [Appeal S78 Case](appeal-s78-properties-applicationdecisiondate.md "appeal-s78.schema.json#/properties/applicationDecisionDate") |
60
+ | [applicationDecisionDueDate](#applicationdecisionduedate) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-applicationdecisionduedate.md "appeal-s78.schema.json#/properties/applicationDecisionDueDate") |
60
61
  | [caseSubmissionDueDate](#casesubmissionduedate) | `string` | Required | can be null | [Appeal S78 Case](appeal-s78-properties-casesubmissionduedate.md "appeal-s78.schema.json#/properties/caseSubmissionDueDate") |
61
62
  | [siteAddressLine1](#siteaddressline1) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-siteaddressline1.md "appeal-s78.schema.json#/properties/siteAddressLine1") |
62
63
  | [siteAddressLine2](#siteaddressline2) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-siteaddressline2.md "appeal-s78.schema.json#/properties/siteAddressLine2") |
@@ -142,6 +143,7 @@ any of
142
143
  | [proofsOfEvidenceDueDate](#proofsofevidenceduedate) | `string` | Required | can be null | [Appeal S78 Case](appeal-s78-properties-proofsofevidenceduedate.md "appeal-s78.schema.json#/properties/proofsOfEvidenceDueDate") |
143
144
  | [siteNoticesSentDate](#sitenoticessentdate) | `string` | Required | can be null | [Appeal S78 Case](appeal-s78-properties-sitenoticessentdate.md "appeal-s78.schema.json#/properties/siteNoticesSentDate") |
144
145
  | [statementDueDate](#statementduedate) | `string` | Required | can be null | [Appeal S78 Case](appeal-s78-properties-statementduedate.md "appeal-s78.schema.json#/properties/statementDueDate") |
146
+ | [caseManagementConferenceDate](#casemanagementconferencedate) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-casemanagementconferencedate.md "appeal-s78.schema.json#/properties/caseManagementConferenceDate") |
145
147
  | [numberOfResidencesNetChange](#numberofresidencesnetchange) | `number` | Required | can be null | [Appeal S78 Case](appeal-s78-properties-numberofresidencesnetchange.md "appeal-s78.schema.json#/properties/numberOfResidencesNetChange") |
146
148
  | [siteGridReferenceEasting](#sitegridreferenceeasting) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-sitegridreferenceeasting.md "appeal-s78.schema.json#/properties/siteGridReferenceEasting") |
147
149
  | [siteGridReferenceNorthing](#sitegridreferencenorthing) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-sitegridreferencenorthing.md "appeal-s78.schema.json#/properties/siteGridReferenceNorthing") |
@@ -1514,6 +1516,36 @@ The date of the original LPA decision
1514
1516
  "2023-07-27T20:30:00.000Z"
1515
1517
  ```
1516
1518
 
1519
+ ## applicationDecisionDueDate
1520
+
1521
+ The date that an application decision is due
1522
+
1523
+ > Also available on HAS cases
1524
+
1525
+ `applicationDecisionDueDate`
1526
+
1527
+ * is optional
1528
+
1529
+ * Type: `string`
1530
+
1531
+ * can be null
1532
+
1533
+ * defined in: [Appeal S78 Case](appeal-s78-properties-applicationdecisionduedate.md "appeal-s78.schema.json#/properties/applicationDecisionDueDate")
1534
+
1535
+ ### applicationDecisionDueDate Type
1536
+
1537
+ `string`
1538
+
1539
+ ### applicationDecisionDueDate Constraints
1540
+
1541
+ **date time**: the string must be a date time string, according to [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339 "check the specification")
1542
+
1543
+ ### applicationDecisionDueDate Examples
1544
+
1545
+ ```json
1546
+ "2023-07-27T20:30:00.000Z"
1547
+ ```
1548
+
1517
1549
  ## caseSubmissionDueDate
1518
1550
 
1519
1551
  The statutory deadline for submitting an appeal from the original LPA decision date
@@ -3448,6 +3480,34 @@ The date of the cost report
3448
3480
  "2023-07-27T20:30:00.000Z"
3449
3481
  ```
3450
3482
 
3483
+ ## caseManagementConferenceDate
3484
+
3485
+ The date of the Case Management Conference (CMC)
3486
+
3487
+ `caseManagementConferenceDate`
3488
+
3489
+ * is optional
3490
+
3491
+ * Type: `string`
3492
+
3493
+ * can be null
3494
+
3495
+ * defined in: [Appeal S78 Case](appeal-s78-properties-casemanagementconferencedate.md "appeal-s78.schema.json#/properties/caseManagementConferenceDate")
3496
+
3497
+ ### caseManagementConferenceDate Type
3498
+
3499
+ `string`
3500
+
3501
+ ### caseManagementConferenceDate Constraints
3502
+
3503
+ **date time**: the string must be a date time string, according to [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339 "check the specification")
3504
+
3505
+ ### caseManagementConferenceDate Examples
3506
+
3507
+ ```json
3508
+ "2023-07-27T20:30:00.000Z"
3509
+ ```
3510
+
3451
3511
  ## numberOfResidencesNetChange
3452
3512
 
3453
3513
  The net gain in residences of the proposed development
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@planning-inspectorate/data-model",
3
- "version": "2.23.0",
3
+ "version": "2.24.0",
4
4
  "description": "JSON Schemas for the Planning Inspectorate's Data Model",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-document.schema.json
3
- # timestamp: 2026-02-16T16:31:41+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-event.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-event-estimate.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-has.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -179,6 +179,7 @@ class NotificationMethodEnum(Enum):
179
179
  notice = "notice"
180
180
  letter = "letter"
181
181
  advert = "advert"
182
+ not_notified = "not_notified"
182
183
 
183
184
 
184
185
  class NeighbouringSiteAddress(BaseModel):
@@ -493,6 +494,12 @@ class AppealHasCase1(BaseModel):
493
494
  """
494
495
  The date of the original LPA decision
495
496
  """
497
+ applicationDecisionDueDate: AwareDatetime | None = Field(
498
+ None, examples=["2023-07-27T20:30:00.000Z"]
499
+ )
500
+ """
501
+ The date that an application decision is due
502
+ """
496
503
  caseSubmissionDueDate: AwareDatetime | None = Field(
497
504
  ..., examples=["2023-07-27T20:30:00.000Z"]
498
505
  )
@@ -992,6 +999,12 @@ class AppealHasCase2(BaseModel):
992
999
  """
993
1000
  The date of the original LPA decision
994
1001
  """
1002
+ applicationDecisionDueDate: AwareDatetime | None = Field(
1003
+ None, examples=["2023-07-27T20:30:00.000Z"]
1004
+ )
1005
+ """
1006
+ The date that an application decision is due
1007
+ """
995
1008
  caseSubmissionDueDate: AwareDatetime | None = Field(
996
1009
  ..., examples=["2023-07-27T20:30:00.000Z"]
997
1010
  )
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-representation.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: appeal-s78.schema.json
3
- # timestamp: 2026-02-16T16:31:41+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -179,6 +179,7 @@ class NotificationMethodEnum(Enum):
179
179
  notice = "notice"
180
180
  letter = "letter"
181
181
  advert = "advert"
182
+ not_notified = "not_notified"
182
183
 
183
184
 
184
185
  class NeighbouringSiteAddress(BaseModel):
@@ -645,6 +646,12 @@ class AppealS78Case1(BaseModel):
645
646
  """
646
647
  The date of the original LPA decision
647
648
  """
649
+ applicationDecisionDueDate: AwareDatetime | None = Field(
650
+ None, examples=["2023-07-27T20:30:00.000Z"]
651
+ )
652
+ """
653
+ The date that an application decision is due
654
+ """
648
655
  caseSubmissionDueDate: AwareDatetime | None = Field(
649
656
  ..., examples=["2023-07-27T20:30:00.000Z"]
650
657
  )
@@ -973,6 +980,12 @@ class AppealS78Case1(BaseModel):
973
980
  statementDueDate: AwareDatetime | None = Field(
974
981
  ..., examples=["2023-07-27T20:30:00.000Z"]
975
982
  )
983
+ caseManagementConferenceDate: AwareDatetime | None = Field(
984
+ None, examples=["2023-07-27T20:30:00.000Z"]
985
+ )
986
+ """
987
+ The date of the Case Management Conference (CMC)
988
+ """
976
989
  numberOfResidencesNetChange: float | None = None
977
990
  """
978
991
  The net gain in residences of the proposed development
@@ -1435,6 +1448,12 @@ class AppealS78Case2(BaseModel):
1435
1448
  """
1436
1449
  The date of the original LPA decision
1437
1450
  """
1451
+ applicationDecisionDueDate: AwareDatetime | None = Field(
1452
+ None, examples=["2023-07-27T20:30:00.000Z"]
1453
+ )
1454
+ """
1455
+ The date that an application decision is due
1456
+ """
1438
1457
  caseSubmissionDueDate: AwareDatetime | None = Field(
1439
1458
  ..., examples=["2023-07-27T20:30:00.000Z"]
1440
1459
  )
@@ -1763,6 +1782,12 @@ class AppealS78Case2(BaseModel):
1763
1782
  statementDueDate: AwareDatetime | None = Field(
1764
1783
  ..., examples=["2023-07-27T20:30:00.000Z"]
1765
1784
  )
1785
+ caseManagementConferenceDate: AwareDatetime | None = Field(
1786
+ None, examples=["2023-07-27T20:30:00.000Z"]
1787
+ )
1788
+ """
1789
+ The date of the Case Management Conference (CMC)
1790
+ """
1766
1791
  numberOfResidencesNetChange: float | None = None
1767
1792
  """
1768
1793
  The net gain in residences of the proposed development
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: dart-response.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: entraid.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: folder.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: gettimesheets-response.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: listed-building.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: listed-buildings.schema.json
3
- # timestamp: 2026-02-16T16:31:41+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-document.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-exam-timetable.schema.json
3
- # timestamp: 2026-02-16T16:31:41+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-invoice.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-meeting.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-project.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-project-update.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-representation.schema.json
3
- # timestamp: 2026-02-16T16:31:41+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: nsip-subscription.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: pins-inspector.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: pins-lpa.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: s51-advice.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: service-user.schema.json
3
- # timestamp: 2026-02-16T16:31:40+00:00
3
+ # timestamp: 2026-02-17T11:07:50+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -381,6 +381,12 @@
381
381
  "examples": ["2023-07-27T20:30:00.000Z"],
382
382
  "description": "The date of the original LPA decision"
383
383
  },
384
+ "applicationDecisionDueDate": {
385
+ "type": ["string", "null"],
386
+ "format": "date-time",
387
+ "examples": ["2023-07-27T20:30:00.000Z"],
388
+ "description": "The date that an application decision is due"
389
+ },
384
390
  "caseSubmissionDueDate": {
385
391
  "type": ["string", "null"],
386
392
  "format": "date-time",
@@ -582,7 +588,7 @@
582
588
  "type": ["array", "null"],
583
589
  "items": {
584
590
  "type": "string",
585
- "enum": ["notice", "letter", "advert"]
591
+ "enum": ["notice", "letter", "advert", "not_notified"]
586
592
  },
587
593
  "examples": [["notice", "letter"], ["advert"]],
588
594
  "description": "The methods used to notify relevant parties"
@@ -491,6 +491,13 @@
491
491
  "description": "The date of the original LPA decision",
492
492
  "$comment": "Also available on HAS cases"
493
493
  },
494
+ "applicationDecisionDueDate": {
495
+ "type": ["string", "null"],
496
+ "format": "date-time",
497
+ "examples": ["2023-07-27T20:30:00.000Z"],
498
+ "description": "The date that an application decision is due",
499
+ "$comment": "Also available on HAS cases"
500
+ },
494
501
  "caseSubmissionDueDate": {
495
502
  "type": ["string", "null"],
496
503
  "format": "date-time",
@@ -603,7 +610,7 @@
603
610
  "type": ["array", "null"],
604
611
  "items": {
605
612
  "type": "string",
606
- "enum": ["notice", "letter", "advert"]
613
+ "enum": ["notice", "letter", "advert", "not_notified"]
607
614
  },
608
615
  "examples": [["notice", "letter"], ["advert"]],
609
616
  "description": "The methods used to notify relevant parties",
@@ -989,6 +996,12 @@
989
996
  "format": "date-time",
990
997
  "examples": ["2023-07-27T20:30:00.000Z"]
991
998
  },
999
+ "caseManagementConferenceDate": {
1000
+ "type": ["string", "null"],
1001
+ "format": "date-time",
1002
+ "examples": ["2023-07-27T20:30:00.000Z"],
1003
+ "description": "The date of the Case Management Conference (CMC)"
1004
+ },
992
1005
  "numberOfResidencesNetChange": {
993
1006
  "type": ["number", "null"],
994
1007
  "description": "The net gain in residences of the proposed development"
package/src/enums.cjs CHANGED
@@ -312,6 +312,7 @@ const APPEAL_LPA_QUESTIONNAIRE_VALIDATION_OUTCOME = Object.freeze({
312
312
  const APPEAL_NOTIFICATION_METHOD = Object.freeze({
313
313
  ADVERT: 'advert',
314
314
  LETTER: 'letter',
315
+ NOT_NOTIFIED: 'not_notified',
315
316
  NOTICE: 'notice',
316
317
  });
317
318
 
package/src/enums.d.ts CHANGED
@@ -310,6 +310,7 @@ export const APPEAL_LPA_QUESTIONNAIRE_VALIDATION_OUTCOME = {
310
310
  export const APPEAL_NOTIFICATION_METHOD = {
311
311
  ADVERT: 'advert',
312
312
  LETTER: 'letter',
313
+ NOT_NOTIFIED: 'not_notified',
313
314
  NOTICE: 'notice',
314
315
  } as const;
315
316
 
package/src/enums.js CHANGED
@@ -310,6 +310,7 @@ export const APPEAL_LPA_QUESTIONNAIRE_VALIDATION_OUTCOME = Object.freeze({
310
310
  export const APPEAL_NOTIFICATION_METHOD = Object.freeze({
311
311
  ADVERT: 'advert',
312
312
  LETTER: 'letter',
313
+ NOT_NOTIFIED: 'not_notified',
313
314
  NOTICE: 'notice',
314
315
  });
315
316
 
package/src/index.cjs CHANGED
@@ -393,6 +393,7 @@ const APPEAL_LPA_QUESTIONNAIRE_VALIDATION_OUTCOME = Object.freeze({
393
393
  const APPEAL_NOTIFICATION_METHOD = Object.freeze({
394
394
  ADVERT: 'advert',
395
395
  LETTER: 'letter',
396
+ NOT_NOTIFIED: 'not_notified',
396
397
  NOTICE: 'notice',
397
398
  });
398
399
 
package/src/schemas.d.ts CHANGED
@@ -526,6 +526,10 @@ export type AppealHASCase = (GridReference | SiteAddress) & {
526
526
  * The date of the original LPA decision
527
527
  */
528
528
  applicationDecisionDate: string | null;
529
+ /**
530
+ * The date that an application decision is due
531
+ */
532
+ applicationDecisionDueDate?: string | null;
529
533
  /**
530
534
  * The statutory deadline for submitting an appeal from the original LPA decision date
531
535
  */
@@ -685,7 +689,7 @@ export type AppealHASCase = (GridReference | SiteAddress) & {
685
689
  /**
686
690
  * The methods used to notify relevant parties
687
691
  */
688
- notificationMethod: ('notice' | 'letter' | 'advert')[] | null;
692
+ notificationMethod: ('notice' | 'letter' | 'advert' | 'not_notified')[] | null;
689
693
  /**
690
694
  * Indicates if the appellant has informed other owners of the site
691
695
  */
@@ -1132,6 +1136,10 @@ export type AppealS78Case = (GridReference | SiteAddress) & {
1132
1136
  * The date of the original LPA decision
1133
1137
  */
1134
1138
  applicationDecisionDate: string | null;
1139
+ /**
1140
+ * The date that an application decision is due
1141
+ */
1142
+ applicationDecisionDueDate?: string | null;
1135
1143
  /**
1136
1144
  * The statutory deadline for submitting an appeal from the original LPA decision date
1137
1145
  */
@@ -1207,7 +1215,7 @@ export type AppealS78Case = (GridReference | SiteAddress) & {
1207
1215
  /**
1208
1216
  * The methods used to notify relevant parties
1209
1217
  */
1210
- notificationMethod: ('notice' | 'letter' | 'advert')[] | null;
1218
+ notificationMethod: ('notice' | 'letter' | 'advert' | 'not_notified')[] | null;
1211
1219
  /**
1212
1220
  * Indicates if the appellant has informed other owners of the site
1213
1221
  */
@@ -1458,6 +1466,10 @@ export type AppealS78Case = (GridReference | SiteAddress) & {
1458
1466
  proofsOfEvidenceDueDate: string | null;
1459
1467
  siteNoticesSentDate: string | null;
1460
1468
  statementDueDate: string | null;
1469
+ /**
1470
+ * The date of the Case Management Conference (CMC)
1471
+ */
1472
+ caseManagementConferenceDate?: string | null;
1461
1473
  /**
1462
1474
  * The net gain in residences of the proposed development
1463
1475
  */
@@ -58,6 +58,7 @@ const appealHas = {
58
58
  applicationDate: '1949-08-25T15:11:02.0Z',
59
59
  applicationDecision: 'refused',
60
60
  applicationDecisionDate: '1952-08-09T01:03:51.0Z',
61
+ applicationDecisionDueDate: null,
61
62
  caseSubmissionDueDate: '1942-02-09T21:03:07.0Z',
62
63
  siteAddressLine1: 'ullamco',
63
64
  siteAddressLine2: null,
@@ -52,6 +52,7 @@ const appealS78 = {
52
52
  applicationDate: '1910-07-16T04:24:14.0Z',
53
53
  applicationDecision: 'not_received',
54
54
  applicationDecisionDate: null,
55
+ applicationDecisionDueDate: '1952-08-09T01:03:51.0Z',
55
56
  caseSubmissionDueDate: null,
56
57
  siteAddressLine1: 'dolore mollit',
57
58
  siteAddressLine2: null,
@@ -145,6 +146,7 @@ const appealS78 = {
145
146
  proofsOfEvidenceDueDate: '1945-06-24T01:14:05.0Z',
146
147
  siteNoticesSentDate: '1904-03-09T08:52:39.0Z',
147
148
  statementDueDate: null,
149
+ caseManagementConferenceDate: '1904-03-09T08:52:39.0Z',
148
150
  numberOfResidencesNetChange: 59800248.893144846,
149
151
  siteGridReferenceEasting: '357144',
150
152
  siteGridReferenceNorthing: '400534',