@planning-inspectorate/data-model 2.44.0 → 2.46.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.
@@ -13,14 +13,14 @@
13
13
  | [eventStatus](#eventstatus) | `string` | Required | cannot be null | [Appeal Event](appeal-event-properties-eventstatus.md "appeal-event.schema.json#/properties/eventStatus") |
14
14
  | [isUrgent](#isurgent) | `boolean` | Required | cannot be null | [Appeal Event](appeal-event-properties-isurgent.md "appeal-event.schema.json#/properties/isUrgent") |
15
15
  | [eventPublished](#eventpublished) | `boolean` | Required | can be null | [Appeal Event](appeal-event-properties-eventpublished.md "appeal-event.schema.json#/properties/eventPublished") |
16
- | [eventStartDateTime](#eventstartdatetime) | `string` | Required | cannot be null | [Appeal Event](appeal-event-properties-eventstartdatetime.md "appeal-event.schema.json#/properties/eventStartDateTime") |
17
- | [eventEndDateTime](#eventenddatetime) | `string` | Required | can be null | [Appeal Event](appeal-event-properties-eventenddatetime.md "appeal-event.schema.json#/properties/eventEndDateTime") |
18
- | [notificationOfSiteVisit](#notificationofsitevisit) | `string` | Required | can be null | [Appeal Event](appeal-event-properties-notificationofsitevisit.md "appeal-event.schema.json#/properties/notificationOfSiteVisit") |
19
- | [addressLine1](#addressline1) | `string` | Required | can be null | [Appeal Event](appeal-event-properties-addressline1.md "appeal-event.schema.json#/properties/addressLine1") |
20
- | [addressLine2](#addressline2) | `string` | Required | can be null | [Appeal Event](appeal-event-properties-addressline2.md "appeal-event.schema.json#/properties/addressLine2") |
21
- | [addressTown](#addresstown) | `string` | Required | can be null | [Appeal Event](appeal-event-properties-addresstown.md "appeal-event.schema.json#/properties/addressTown") |
22
- | [addressCounty](#addresscounty) | `string` | Required | can be null | [Appeal Event](appeal-event-properties-addresscounty.md "appeal-event.schema.json#/properties/addressCounty") |
23
- | [addressPostcode](#addresspostcode) | `string` | Required | can be null | [Appeal Event](appeal-event-properties-addresspostcode.md "appeal-event.schema.json#/properties/addressPostcode") |
16
+ | [eventStartDateTime](#eventstartdatetime) | `string` | Optional | can be null | [Appeal Event](appeal-event-properties-eventstartdatetime.md "appeal-event.schema.json#/properties/eventStartDateTime") |
17
+ | [eventEndDateTime](#eventenddatetime) | `string` | Optional | can be null | [Appeal Event](appeal-event-properties-eventenddatetime.md "appeal-event.schema.json#/properties/eventEndDateTime") |
18
+ | [notificationOfSiteVisit](#notificationofsitevisit) | `string` | Optional | can be null | [Appeal Event](appeal-event-properties-notificationofsitevisit.md "appeal-event.schema.json#/properties/notificationOfSiteVisit") |
19
+ | [addressLine1](#addressline1) | `string` | Optional | can be null | [Appeal Event](appeal-event-properties-addressline1.md "appeal-event.schema.json#/properties/addressLine1") |
20
+ | [addressLine2](#addressline2) | `string` | Optional | can be null | [Appeal Event](appeal-event-properties-addressline2.md "appeal-event.schema.json#/properties/addressLine2") |
21
+ | [addressTown](#addresstown) | `string` | Optional | can be null | [Appeal Event](appeal-event-properties-addresstown.md "appeal-event.schema.json#/properties/addressTown") |
22
+ | [addressCounty](#addresscounty) | `string` | Optional | can be null | [Appeal Event](appeal-event-properties-addresscounty.md "appeal-event.schema.json#/properties/addressCounty") |
23
+ | [addressPostcode](#addresspostcode) | `string` | Optional | can be null | [Appeal Event](appeal-event-properties-addresspostcode.md "appeal-event.schema.json#/properties/addressPostcode") |
24
24
  | Additional Properties | Any | Optional | can be null | |
25
25
 
26
26
  ## eventId
@@ -164,6 +164,7 @@ Status of the event
164
164
  | `"link_to_enforcement"` | |
165
165
  | `"offered"` | |
166
166
  | `"postponed"` | |
167
+ | `"pending"` | |
167
168
 
168
169
  ## isUrgent
169
170
 
@@ -207,11 +208,11 @@ Event start date and time
207
208
 
208
209
  `eventStartDateTime`
209
210
 
210
- * is required
211
+ * is optional
211
212
 
212
213
  * Type: `string`
213
214
 
214
- * cannot be null
215
+ * can be null
215
216
 
216
217
  * defined in: [Appeal Event](appeal-event-properties-eventstartdatetime.md "appeal-event.schema.json#/properties/eventStartDateTime")
217
218
 
@@ -235,7 +236,7 @@ Event end date and time
235
236
 
236
237
  `eventEndDateTime`
237
238
 
238
- * is required
239
+ * is optional
239
240
 
240
241
  * Type: `string`
241
242
 
@@ -263,7 +264,7 @@ The date third-parties were informed of the site visit event
263
264
 
264
265
  `notificationOfSiteVisit`
265
266
 
266
- * is required
267
+ * is optional
267
268
 
268
269
  * Type: `string`
269
270
 
@@ -291,7 +292,7 @@ First line of address for the event site
291
292
 
292
293
  `addressLine1`
293
294
 
294
- * is required
295
+ * is optional
295
296
 
296
297
  * Type: `string`
297
298
 
@@ -315,7 +316,7 @@ Second line of address for the event site
315
316
 
316
317
  `addressLine2`
317
318
 
318
- * is required
319
+ * is optional
319
320
 
320
321
  * Type: `string`
321
322
 
@@ -333,7 +334,7 @@ Town / City of the event address
333
334
 
334
335
  `addressTown`
335
336
 
336
- * is required
337
+ * is optional
337
338
 
338
339
  * Type: `string`
339
340
 
@@ -357,7 +358,7 @@ County of the event address
357
358
 
358
359
  `addressCounty`
359
360
 
360
- * is required
361
+ * is optional
361
362
 
362
363
  * Type: `string`
363
364
 
@@ -381,7 +382,7 @@ Postal code of the event address
381
382
 
382
383
  `addressPostcode`
383
384
 
384
- * is required
385
+ * is optional
385
386
 
386
387
  * Type: `string`
387
388
 
@@ -3172,13 +3172,17 @@ Project type
3172
3172
 
3173
3173
  | Value | Explanation |
3174
3174
  | :------------------------- | :---------- |
3175
+ | `"biomass"` | |
3176
+ | `"coal_power_station"` | |
3175
3177
  | `"energy_from_waste"` | |
3176
3178
  | `"gas_power_station"` | |
3179
+ | `"hydro_electric"` | |
3177
3180
  | `"hydrogen_power_station"` | |
3178
3181
  | `"nuclear"` | |
3179
3182
  | `"offshore_wind"` | |
3180
3183
  | `"onshore_wind"` | |
3181
3184
  | `"solar"` | |
3185
+ | `"tidal_barrage"` | |
3182
3186
  | `null` | |
3183
3187
 
3184
3188
  ### subProjectType Examples
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@planning-inspectorate/data-model",
3
- "version": "2.44.0",
3
+ "version": "2.46.0",
4
4
  "description": "JSON Schemas for the Planning Inspectorate's Data Model",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -38,7 +38,7 @@
38
38
  "@eslint/js": "^10.0.1",
39
39
  "ajv": "^8.17.1",
40
40
  "ajv-formats": "^3.0.1",
41
- "conventional-changelog-conventionalcommits": "^9.1.0",
41
+ "conventional-changelog-conventionalcommits": "^10.2.0",
42
42
  "eslint": "^10.0.0",
43
43
  "eslint-config-prettier": "^10.1.5",
44
44
  "globals": "^17.3.0",
@@ -38,6 +38,7 @@ class EventStatus(Enum):
38
38
  link_to_enforcement = "link_to_enforcement"
39
39
  offered = "offered"
40
40
  postponed = "postponed"
41
+ pending = "pending"
41
42
 
42
43
 
43
44
  class AppealEvent(BaseModel):
@@ -76,25 +77,25 @@ class AppealEvent(BaseModel):
76
77
  """
77
78
  Indicates if the event has been published
78
79
  """
79
- eventStartDateTime: AwareDatetime = Field(
80
- ..., examples=["2023-07-27T20:30:00.000Z"]
80
+ eventStartDateTime: AwareDatetime | None = Field(
81
+ None, examples=["2023-07-27T20:30:00.000Z"]
81
82
  )
82
83
  """
83
84
  Event start date and time
84
85
  """
85
86
  eventEndDateTime: AwareDatetime | None = Field(
86
- ..., examples=["2023-07-27T20:30:00.000Z"]
87
+ None, examples=["2023-07-27T20:30:00.000Z"]
87
88
  )
88
89
  """
89
90
  Event end date and time
90
91
  """
91
92
  notificationOfSiteVisit: AwareDatetime | None = Field(
92
- ..., examples=["2023-07-27T20:30:00.000Z"]
93
+ None, examples=["2023-07-27T20:30:00.000Z"]
93
94
  )
94
95
  """
95
96
  The date third-parties were informed of the site visit event
96
97
  """
97
- addressLine1: str | None = Field(..., examples=["96 The Avenue"])
98
+ addressLine1: str | None = Field(None, examples=["96 The Avenue"])
98
99
  """
99
100
  First line of address for the event site
100
101
  """
@@ -102,15 +103,15 @@ class AppealEvent(BaseModel):
102
103
  """
103
104
  Second line of address for the event site
104
105
  """
105
- addressTown: str | None = Field(..., examples=["Maidstone"])
106
+ addressTown: str | None = Field(None, examples=["Maidstone"])
106
107
  """
107
108
  Town / City of the event address
108
109
  """
109
- addressCounty: str | None = Field(..., examples=["Kent"])
110
+ addressCounty: str | None = Field(None, examples=["Kent"])
110
111
  """
111
112
  County of the event address
112
113
  """
113
- addressPostcode: str | None = Field(..., examples=["MD21 5XY"])
114
+ addressPostcode: str | None = Field(None, examples=["MD21 5XY"])
114
115
  """
115
116
  Postal code of the event address
116
117
  """
@@ -256,13 +256,17 @@ class SubProjectType(Enum):
256
256
  Project type
257
257
  """
258
258
 
259
+ biomass = "biomass"
260
+ coal_power_station = "coal_power_station"
259
261
  energy_from_waste = "energy_from_waste"
260
262
  gas_power_station = "gas_power_station"
263
+ hydro_electric = "hydro_electric"
261
264
  hydrogen_power_station = "hydrogen_power_station"
262
265
  nuclear = "nuclear"
263
266
  offshore_wind = "offshore_wind"
264
267
  onshore_wind = "onshore_wind"
265
268
  solar = "solar"
269
+ tidal_barrage = "tidal_barrage"
266
270
  NoneType_None = None
267
271
 
268
272
 
@@ -5,23 +5,7 @@
5
5
  "description": "Schema defining the metadata for appeal events, such as site visits, inquiries, hearings",
6
6
  "type": "object",
7
7
  "additionalProperties": true,
8
- "required": [
9
- "eventId",
10
- "caseReference",
11
- "eventType",
12
- "eventName",
13
- "eventStatus",
14
- "isUrgent",
15
- "eventPublished",
16
- "eventStartDateTime",
17
- "eventEndDateTime",
18
- "notificationOfSiteVisit",
19
- "addressLine1",
20
- "addressLine2",
21
- "addressTown",
22
- "addressCounty",
23
- "addressPostcode"
24
- ],
8
+ "required": ["eventId", "caseReference", "eventType", "eventName", "eventStatus", "isUrgent", "eventPublished"],
25
9
  "properties": {
26
10
  "eventId": {
27
11
  "type": "string",
@@ -65,7 +49,8 @@
65
49
  "confirmed",
66
50
  "link_to_enforcement",
67
51
  "offered",
68
- "postponed"
52
+ "postponed",
53
+ "pending"
69
54
  ],
70
55
  "description": "Status of the event"
71
56
  },
@@ -78,7 +63,7 @@
78
63
  "description": "Indicates if the event has been published"
79
64
  },
80
65
  "eventStartDateTime": {
81
- "type": "string",
66
+ "type": ["string", "null"],
82
67
  "format": "date-time",
83
68
  "examples": ["2023-07-27T20:30:00.000Z"],
84
69
  "description": "Event start date and time"
@@ -748,13 +748,17 @@
748
748
  "type": ["string", "null"],
749
749
  "description": "Project type",
750
750
  "enum": [
751
+ "biomass",
752
+ "coal_power_station",
751
753
  "energy_from_waste",
752
754
  "gas_power_station",
755
+ "hydro_electric",
753
756
  "hydrogen_power_station",
754
757
  "nuclear",
755
758
  "offshore_wind",
756
759
  "onshore_wind",
757
760
  "solar",
761
+ "tidal_barrage",
758
762
  null
759
763
  ],
760
764
  "examples": ["solar"]
package/src/enums.cjs CHANGED
@@ -309,6 +309,7 @@ const APPEAL_EVENT_STATUS = Object.freeze({
309
309
  LINK_TO_ENFORCEMENT: 'link_to_enforcement',
310
310
  NEW_RESCHEDULED: 'new_rescheduled',
311
311
  OFFERED: 'offered',
312
+ PENDING: 'pending',
312
313
  POSTPONED: 'postponed',
313
314
  WITHDRAWN: 'withdrawn',
314
315
  });
@@ -760,13 +761,17 @@ const NSIP_STATUS = Object.freeze({
760
761
  });
761
762
 
762
763
  const NSIP_SUB_PROJECT_TYPE = Object.freeze({
764
+ BIOMASS: 'biomass',
765
+ COAL_POWER_STATION: 'coal_power_station',
763
766
  ENERGY_FROM_WASTE: 'energy_from_waste',
764
767
  GAS_POWER_STATION: 'gas_power_station',
768
+ HYDRO_ELECTRIC: 'hydro_electric',
765
769
  HYDROGEN_POWER_STATION: 'hydrogen_power_station',
766
770
  NUCLEAR: 'nuclear',
767
771
  OFFSHORE_WIND: 'offshore_wind',
768
772
  ONSHORE_WIND: 'onshore_wind',
769
773
  SOLAR: 'solar',
774
+ TIDAL_BARRAGE: 'tidal_barrage',
770
775
  });
771
776
 
772
777
  const NSIP_SUBSCRIPTION_TYPE = Object.freeze({
package/src/enums.d.ts CHANGED
@@ -307,6 +307,7 @@ export const APPEAL_EVENT_STATUS = {
307
307
  LINK_TO_ENFORCEMENT: 'link_to_enforcement',
308
308
  NEW_RESCHEDULED: 'new_rescheduled',
309
309
  OFFERED: 'offered',
310
+ PENDING: 'pending',
310
311
  POSTPONED: 'postponed',
311
312
  WITHDRAWN: 'withdrawn',
312
313
  } as const;
@@ -758,13 +759,17 @@ export const NSIP_STATUS = {
758
759
  } as const;
759
760
 
760
761
  export const NSIP_SUB_PROJECT_TYPE = {
762
+ BIOMASS: 'biomass',
763
+ COAL_POWER_STATION: 'coal_power_station',
761
764
  ENERGY_FROM_WASTE: 'energy_from_waste',
762
765
  GAS_POWER_STATION: 'gas_power_station',
766
+ HYDRO_ELECTRIC: 'hydro_electric',
763
767
  HYDROGEN_POWER_STATION: 'hydrogen_power_station',
764
768
  NUCLEAR: 'nuclear',
765
769
  OFFSHORE_WIND: 'offshore_wind',
766
770
  ONSHORE_WIND: 'onshore_wind',
767
771
  SOLAR: 'solar',
772
+ TIDAL_BARRAGE: 'tidal_barrage',
768
773
  } as const;
769
774
 
770
775
  export const NSIP_SUBSCRIPTION_TYPE = {
package/src/enums.js CHANGED
@@ -307,6 +307,7 @@ export const APPEAL_EVENT_STATUS = Object.freeze({
307
307
  LINK_TO_ENFORCEMENT: 'link_to_enforcement',
308
308
  NEW_RESCHEDULED: 'new_rescheduled',
309
309
  OFFERED: 'offered',
310
+ PENDING: 'pending',
310
311
  POSTPONED: 'postponed',
311
312
  WITHDRAWN: 'withdrawn',
312
313
  });
@@ -758,13 +759,17 @@ export const NSIP_STATUS = Object.freeze({
758
759
  });
759
760
 
760
761
  export const NSIP_SUB_PROJECT_TYPE = Object.freeze({
762
+ BIOMASS: 'biomass',
763
+ COAL_POWER_STATION: 'coal_power_station',
761
764
  ENERGY_FROM_WASTE: 'energy_from_waste',
762
765
  GAS_POWER_STATION: 'gas_power_station',
766
+ HYDRO_ELECTRIC: 'hydro_electric',
763
767
  HYDROGEN_POWER_STATION: 'hydrogen_power_station',
764
768
  NUCLEAR: 'nuclear',
765
769
  OFFSHORE_WIND: 'offshore_wind',
766
770
  ONSHORE_WIND: 'onshore_wind',
767
771
  SOLAR: 'solar',
772
+ TIDAL_BARRAGE: 'tidal_barrage',
768
773
  });
769
774
 
770
775
  export const NSIP_SUBSCRIPTION_TYPE = Object.freeze({
package/src/index.cjs CHANGED
@@ -390,6 +390,7 @@ const APPEAL_EVENT_STATUS = Object.freeze({
390
390
  LINK_TO_ENFORCEMENT: 'link_to_enforcement',
391
391
  NEW_RESCHEDULED: 'new_rescheduled',
392
392
  OFFERED: 'offered',
393
+ PENDING: 'pending',
393
394
  POSTPONED: 'postponed',
394
395
  WITHDRAWN: 'withdrawn',
395
396
  });
@@ -841,13 +842,17 @@ const NSIP_STATUS = Object.freeze({
841
842
  });
842
843
 
843
844
  const NSIP_SUB_PROJECT_TYPE = Object.freeze({
845
+ BIOMASS: 'biomass',
846
+ COAL_POWER_STATION: 'coal_power_station',
844
847
  ENERGY_FROM_WASTE: 'energy_from_waste',
845
848
  GAS_POWER_STATION: 'gas_power_station',
849
+ HYDRO_ELECTRIC: 'hydro_electric',
846
850
  HYDROGEN_POWER_STATION: 'hydrogen_power_station',
847
851
  NUCLEAR: 'nuclear',
848
852
  OFFSHORE_WIND: 'offshore_wind',
849
853
  ONSHORE_WIND: 'onshore_wind',
850
854
  SOLAR: 'solar',
855
+ TIDAL_BARRAGE: 'tidal_barrage',
851
856
  });
852
857
 
853
858
  const NSIP_SUBSCRIPTION_TYPE = Object.freeze({
package/src/schemas.d.ts CHANGED
@@ -292,7 +292,8 @@ export interface AppealEvent {
292
292
  | 'confirmed'
293
293
  | 'link_to_enforcement'
294
294
  | 'offered'
295
- | 'postponed';
295
+ | 'postponed'
296
+ | 'pending';
296
297
  /**
297
298
  * Indicates if the event is urgent
298
299
  */
@@ -304,35 +305,35 @@ export interface AppealEvent {
304
305
  /**
305
306
  * Event start date and time
306
307
  */
307
- eventStartDateTime: string;
308
+ eventStartDateTime?: string | null;
308
309
  /**
309
310
  * Event end date and time
310
311
  */
311
- eventEndDateTime: string | null;
312
+ eventEndDateTime?: string | null;
312
313
  /**
313
314
  * The date third-parties were informed of the site visit event
314
315
  */
315
- notificationOfSiteVisit: string | null;
316
+ notificationOfSiteVisit?: string | null;
316
317
  /**
317
318
  * First line of address for the event site
318
319
  */
319
- addressLine1: string | null;
320
+ addressLine1?: string | null;
320
321
  /**
321
322
  * Second line of address for the event site
322
323
  */
323
- addressLine2: string | null;
324
+ addressLine2?: string | null;
324
325
  /**
325
326
  * Town / City of the event address
326
327
  */
327
- addressTown: string | null;
328
+ addressTown?: string | null;
328
329
  /**
329
330
  * County of the event address
330
331
  */
331
- addressCounty: string | null;
332
+ addressCounty?: string | null;
332
333
  /**
333
334
  * Postal code of the event address
334
335
  */
335
- addressPostcode: string | null;
336
+ addressPostcode?: string | null;
336
337
  [k: string]: unknown;
337
338
  }
338
339
 
@@ -1709,29 +1710,20 @@ export type AppealS78Case = (GridReference | SiteAddress) & {
1709
1710
  */
1710
1711
  pcnRestrictedDevelopmentRights?: boolean | null;
1711
1712
  applicationMadeUnderActSection?:
1712
- | 'existing-development'
1713
- | 'proposed-use-of-a-development'
1714
- | 'proposed-changes-to-a-listed-building'
1715
- | null;
1713
+ 'existing-development' | 'proposed-use-of-a-development' | 'proposed-changes-to-a-listed-building' | null;
1716
1714
  /**
1717
1715
  * Site use at time of application
1718
1716
  */
1719
1717
  siteUseAtTimeOfApplication?: string | null;
1720
1718
  appealUnderActSection?:
1721
- | 'existing-development'
1722
- | 'proposed-use-of-a-development'
1723
- | 'proposed-changes-to-a-listed-building'
1724
- | null;
1719
+ 'existing-development' | 'proposed-use-of-a-development' | 'proposed-changes-to-a-listed-building' | null;
1725
1720
  lpaConsiderAppealInvalid?: boolean | null;
1726
1721
  /**
1727
1722
  * Reason(s) why LPA consider the appeal invalid
1728
1723
  */
1729
1724
  lpaAppealInvalidReasons?: string | null;
1730
1725
  discontinuanceNoticeServedReason?:
1731
- | 'risk-of-injury-to-the-amenity-of-locality'
1732
- | 'danger-to-members-of-the-public'
1733
- | 'other'
1734
- | null;
1726
+ 'risk-of-injury-to-the-amenity-of-locality' | 'danger-to-members-of-the-public' | 'other' | null;
1735
1727
  /**
1736
1728
  * Other reason for serving a discontinuance notice, for discontinuanceNoticeServedReason: other
1737
1729
  */
@@ -2284,13 +2276,7 @@ export interface NSIPDocument {
2284
2276
  documentType: string | null;
2285
2277
  securityClassification: 'public' | 'official' | 'secret' | 'top-secret' | null;
2286
2278
  sourceSystem:
2287
- | 'back-office-appeals'
2288
- | 'back-office-applications'
2289
- | 'dco-portal'
2290
- | 'horizon'
2291
- | 'ni_file'
2292
- | 'sharepoint'
2293
- | null;
2279
+ 'back-office-appeals' | 'back-office-applications' | 'dco-portal' | 'horizon' | 'ni_file' | 'sharepoint' | null;
2294
2280
  origin: 'pins' | 'citizen' | 'lpa' | 'ogd' | null;
2295
2281
  owner: string | null;
2296
2282
  /**
@@ -2984,13 +2970,17 @@ export interface NSIPProject {
2984
2970
  * Project type
2985
2971
  */
2986
2972
  subProjectType?:
2973
+ | 'biomass'
2974
+ | 'coal_power_station'
2987
2975
  | 'energy_from_waste'
2988
2976
  | 'gas_power_station'
2977
+ | 'hydro_electric'
2989
2978
  | 'hydrogen_power_station'
2990
2979
  | 'nuclear'
2991
2980
  | 'offshore_wind'
2992
2981
  | 'onshore_wind'
2993
2982
  | 'solar'
2983
+ | 'tidal_barrage'
2994
2984
  | null;
2995
2985
  /**
2996
2986
  * New maturity
@@ -3512,13 +3502,7 @@ export interface ServiceUser {
3512
3502
  * Type or category of the service user.
3513
3503
  */
3514
3504
  serviceUserType:
3515
- | 'Applicant'
3516
- | 'Appellant'
3517
- | 'Agent'
3518
- | 'Rule6Party'
3519
- | 'InterestedParty'
3520
- | 'RepresentationContact'
3521
- | 'Subscriber';
3505
+ 'Applicant' | 'Appellant' | 'Agent' | 'Rule6Party' | 'InterestedParty' | 'RepresentationContact' | 'Subscriber';
3522
3506
  /**
3523
3507
  * Reference number for a particular case or incident.
3524
3508
  */
@@ -4392,10 +4376,7 @@ export interface LDCSpecificProperties {
4392
4376
  */
4393
4377
  siteUseAtTimeOfApplication: string | null;
4394
4378
  applicationMadeUnderActSection:
4395
- | 'existing-development'
4396
- | 'proposed-use-of-a-development'
4397
- | 'proposed-changes-to-a-listed-building'
4398
- | null;
4379
+ 'existing-development' | 'proposed-use-of-a-development' | 'proposed-changes-to-a-listed-building' | null;
4399
4380
  [k: string]: unknown;
4400
4381
  }
4401
4382
  /**
@@ -4784,10 +4765,7 @@ export type LPAQEnforcementSubmissionProperties = {
4784
4765
  */
4785
4766
  export type LPAQLDCSubmissionProperties = {
4786
4767
  appealUnderActSection?:
4787
- | 'existing-development'
4788
- | 'proposed-use-of-a-development'
4789
- | 'proposed-changes-to-a-listed-building'
4790
- | null;
4768
+ 'existing-development' | 'proposed-use-of-a-development' | 'proposed-changes-to-a-listed-building' | null;
4791
4769
  lpaConsiderAppealInvalid?: boolean | null;
4792
4770
  /**
4793
4771
  * Reason(s) why LPA consider the appeal invalid
@@ -53,6 +53,22 @@ describe(schema, () => {
53
53
  assert.strictEqual(validationResult, true);
54
54
  });
55
55
 
56
+ it('should allow eventStatus to be pending, eventStartDateTime to be null, and address fields to be omitted', () => {
57
+ const test = {
58
+ eventId: 'ipsum ut proident Ut',
59
+ caseReference: 'irure dolore in exercitation elit',
60
+ eventType: 'site_visit_accompanied',
61
+ eventName: 'minim anim',
62
+ eventStatus: 'pending',
63
+ isUrgent: true,
64
+ eventPublished: false,
65
+ eventStartDateTime: null
66
+ };
67
+
68
+ const validationResult = ajv.validate(schema, test);
69
+ assert.strictEqual(validationResult, true);
70
+ });
71
+
56
72
  it('should allow additional props', () => {
57
73
  const test = structuredClone(event);
58
74
  test.test = 1; // additional unknown prop allowed